Greasy Fork is available in English.

HLS, MPEG-DASH Player-viblast

using video.js and viblast.js to play *.m3u8, and *.mpd playlists

Этот скрипт недоступен для установки пользователем. Он является библиотекой, которая подключается к другим скриптам мета-ключом // @require https://update.greasyfork.org/scripts/371492/622908/HLS%2C%20MPEG-DASH%20Player-viblast.js

// ==UserScript==
// @name         HLS, MPEG-DASH Player-viblast
// @namespace    viblast-user
// @version      0.2.1
// @description  using video.js and viblast.js to play *.m3u8, and *.mpd playlists
// @run-at       document-start
// @grant        none
// ==/UserScript==

(function(){
var h=window.Viblast;
h||(h=function(b){return{u:"object"===typeof b?b:document.querySelector(b),setup:function(b){if(this.u.__viblast_ctx__)console.log("Player is already setup for ",this.u);else{aa()||console.warn("Your browser does not support MSE, which is necessary for HTML5 playback. Flash Fallback is provided only when Viblast is used in combination with video.js. For more info refer to http://viblast.com/player/docs/videojs-integration");for(var d in b)"autoplay"===d?this.u.setAttribute("autoplay",b[d]):"stream"===
d?this.u.src=b[d]:"key"===d&&(this.u.dataset.viblastKey=b[d]);this.u.__viblast_args__=b;ba(this.u,!0)}},stop:function(){if(this.u.__viblast_ctx__||this.u.__viblast_args__){var b=this.u.__viblast_args__||{},d;for(d in b)"autoplay"===d?this.u.removeAttribute("autoplay"):delete this.u.dataset["viblast"+d.charAt(0).toUpperCase()+d.slice(1)];this.u.removeAttribute("src");ca(this.u,!0)}}}});
var m={R:Array(100),h:function(b){var c;for(c=0;c<m.R.length;c++)if(void 0===m.R[c])return m.R[c]=b,c;m.R.push(b);return m.R.length-1},mb:function(b){delete m.R[b]},b:function(b){return m.R[b]},$b:function(b,c,d){for(var e=0,e=0;e<b.length;e++)c[d+e]=b.charCodeAt(e)},Ff:function(b){return"string"==typeof b||b instanceof String},j:function(b){b=p(String(b));for(var c=ea(b.length),d=0,d=0;d<b.length;d++)u[c+d]=b[d];return[c,b.length-1]},Va:function(){for(var b=document.getElementsByTagName("script"),
c=0,c=0;c<b.length;c++){var d=b[c].src,e=d.lastIndexOf("/"),f=d.substr(e),g=f.indexOf("?");0>g&&(g=void 0);f=f.substr(0,g);if(0<=f.indexOf("viblast.js"))return d.substring(0,e+1)}return null},jd:function(b,c){return b+(0<b.length&&"/"!==b[b.length-1]?"/":"")+c},Df:-1<navigator.userAgent.toLowerCase().indexOf("msie")||-1<navigator.userAgent.toLowerCase().indexOf("trident")};window.vblib=m;m.getScriptBaseUrl=m.Va;m.urlJoin=m.jd;
(function(){var b=window.Worker;h.Worker=function(c){this.Fa=[];this.worker=null;var d=this,e=new XMLHttpRequest;e.addEventListener("load",function(){d.worker=new b(window.URL.createObjectURL(new Blob([this.responseText])));d.worker.onmessage=function(b){d.onmessage(b)}.bind(d);d.worker.onerror=function(b){d.onerror&&d.onerror(b)}.bind(d);for(var c=0,c=0;c<d.Fa.length;c++)d.worker.postMessage(d.Fa[c]);d.Fa=[]},e);e.open("get",c,!0);e.send()};h.Worker.prototype.postMessage=function(){this.worker?this.worker.postMessage.apply(this.worker,
arguments):this.Fa.push(arguments[0])};h.Worker.prototype.terminate=function(){this.worker&&this.worker.terminate()}})();var Worker=h.Worker;
(function(b){h.qa={};h.qa.encode=function(b){if(!(b instanceof Uint8Array))throw"Base64 encoding is supported only for arguments of type Uint8Array";return btoa(String.fromCharCode.apply(null,b))};h.qa.Hf=function(b){for(var d="",e=b.byteLength,f=e%3,e=e-f,g,k,l,q,n=0;n<e;n+=3)q=b[n]<<16|b[n+1]<<8|b[n+2],g=(q&16515072)>>18,k=(q&258048)>>12,l=(q&4032)>>6,q&=63,d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[g]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[k]+
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[l]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[q];1==f?(q=b[e],d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&252)>>2]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&3)<<4]+"=="):2==f&&(q=b[e]<<8|b[e+1],d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&64512)>>10]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&1008)>>
4]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&15)<<2]+"=");return d};h.qa.decode=function(c){var d=.75*c.length,e=c.length,f=0,g,k,l,q;"="===c[c.length-1]&&(d--,"="===c[c.length-2]&&d--);for(var d=new ArrayBuffer(d),n=new Uint8Array(d),d=0;d<e;d+=4)g=b.indexOf(c[d]),k=b.indexOf(c[d+1]),l=b.indexOf(c[d+2]),q=b.indexOf(c[d+3]),n[f++]=g<<2|k>>4,n[f++]=(k&15)<<4|l>>2,n[f++]=(l&3)<<6|q&63;return n}})("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");h.ta={};
h.ta.Nc=function(b){function c(){for(var b=42,c="viblast_";--b;)c+="abcdefghijklmnopqrstuvwxyz-_1234567890".charAt(Math.floor(38*Math.random()));return c}function d(){var c,d=b.getBoundingClientRect();c=[d.top+window.pageYOffset,d.left+window.pageXOffset];d=c[0];c=c[1];if(d!==q||c!==n)q=d,n=c,k.innerHTML="span#"+e.id+" {\t\t\ttransform: none;\t\t\tpadding: 0;\t\t\tmargin: 0;\t\t\tborder: 0;\t\t\tposition: absolute;\t\t\twidth: 0px;\t\t\theight: 0px;\t\t\ttop: "+d+"px;\t\t\tleft: "+c+"px;\t\t\tz-index: 2147483647;\t\t}\t\ta#"+
f.id+" {\t\t\tposition: absolute;\t\t\ttop: 25px;\t\t\tright: -125px;\t\t\twidth: 100px;\t\t\theight: 100px;\t\t\tz-index: 2147483647;\t\t\topacity: 0.7;\t\t\tbackground-image: url('https://viblast.com/static/viblast_player/images/watermark.png');\t\t\tbackground-size: contain;\t\t\tbackground-repeat: no-repeat;\t\t\tbackground-position: initial;\t\t\tbackground-origin: initial;\t\t}"}var e=document.createElement("SPAN"),f=document.createElement("a");f.setAttribute("href","http://viblast.com/player/");
f.setAttribute("target","_blank");var g={Z:[]};b.__viblast__watermark_ctx__=g;f.id=c();e.id=c();e.appendChild(f);document.body.appendChild(e);g.Z.push(function(){document.body.removeChild(e)});var k=document.createElement("style"),l=document.head;l.appendChild(k);g.Z.push(function(){l.removeChild(k)});var q,n;d();window.setInterval(d,1E3);g.Z.push(function(){window.clearInterval(d)})};h.ta.bd=function(b){var c=b.__viblast__watermark_ctx__;if(c){for(var d=0;d<c.Z.length;d++)try{c.Z[c.Z.length-d-1]()}catch(e){console.log(e)}delete b.__viblast__watermark_ctx__}};
var ha,ia;
(function(b){var c=function(){for(var c=[],e=0;e<b.length;++e)c[b.charCodeAt(e)]=e;c[61]=0;return c}();ha=function(c){for(var e=[],f=0;f<c.length;++f){var g=c.charCodeAt(f);128>g?e.push(g):(2048>g?e.push(192|g>>6):(65536>g?e.push(224|g>>12):(e.push(240|g>>18),e.push(128|63&g>>12)),e.push(128|63&g>>6)),e.push(128|63&g))}c=0;f=[];for(g=0|e.length/3;0<g--;){var k=(e[c]<<16)+(e[c+1]<<8)+e[c+2];c+=3;f.push(b.charAt(63&k>>18));f.push(b.charAt(63&k>>12));f.push(b.charAt(63&k>>6));f.push(b.charAt(63&k))}2==
e.length-c?(k=(e[c]<<16)+(e[c+1]<<8),f.push(b.charAt(63&k>>18)),f.push(b.charAt(63&k>>12)),f.push(b.charAt(63&k>>6)),f.push("=")):1==e.length-c&&(k=e[c]<<16,f.push(b.charAt(63&k>>18)),f.push(b.charAt(63&k>>12)),f.push("=="));return f.join("")};ia=function(b){for(var e=0,f=[],g=0|b.length/4;0<g--;){var k=(c[b.charCodeAt(e)]<<18)+(c[b.charCodeAt(e+1)]<<12)+(c[b.charCodeAt(e+2)]<<6)+c[b.charCodeAt(e+3)];f.push(255&k>>16);f.push(255&k>>8);f.push(255&k);e+=4}f&&("="==b.charAt(e-2)?(f.pop(),f.pop()):"="==
b.charAt(e-1)&&f.pop());b=[];for(e=0;e<f.length;)g=f[e++],128>g||(224>g?g=(31&g)<<6:(240>g?g=(15&g)<<12:(g=(7&g)<<18,g|=(63&f[e++])<<12),g|=(63&f[e++])<<6),g|=63&f[e++]),b.push(String.fromCharCode(g));return b.join("")}})("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");if(void 0===btoa)var btoa=ha;if(void 0===atob)var atob=ia;h.Ka={};
h.Ka.wc=function(b,c,d,e,f,g,k){function l(){var b=new XMLHttpRequest,c="",d="GET";b.open=function(){d=arguments[0];c=arguments[1];return XMLHttpRequest.prototype.open.apply(this,arguments)};b.send=function(){f(b,c,d);return XMLHttpRequest.prototype.send.apply(this,arguments)};return b}function q(){function c(b){console.log("ms need key ",b);var d;d="msneedkey"!==b.type?b.type:'video/mp4;codecs="avc1.4d401f"';[].push({type:d,t:b.initData});if("webkitneedkey"!=b.type){console.log("DRM: Key required for - "+
d);if(X&&!fa)try{var e=null,g="WebKitMediaKeys"in window,k="MSMediaKeys"in window,e="MediaKeys"in window?new MediaKeys("com.microsoft.playready"):g?new WebKitMediaKeys("com.microsoft.playready"):k?new MSMediaKeys("com.microsoft.playready"):null;var l=document.getElementsByTagName("video")[0],g=e,t="WebKitSetMediaKeys"in l,q="msSetMediaKeys"in l;"SetMediaKeys"in l?l.SetMediaKeys(g):t?l.WebKitSetMediaKeys(g):q?l.msSetMediaKeys(g):console.log("no setmediakeys function in element");oa[0]={If:"7d4413fb-a250-47bf-934b-a943dc8ef314",
of:void 0,Kf:void 0,keys:e,t:null,Jf:[]};fa="7d4413fb-a250-47bf-934b-a943dc8ef314"}catch(n){pause.call(this),console.log(n),this.rf.Pf(n)}fa&&(e=fa,l=b.initData,b=null,console.log("event inti data",l),!b&&l?(b=l,console.log("DRM: Using initdata from needskey event. length: "+b.length)):b&&console.log("DRM: Using initdata from prheader in mpd. length: "+b.length),b?(t=b,console.log("add key session ",e,d,t),l=null,t=l=oa[0].keys.createSession(d,t),q=f,t.addEventListener("webkitkeymessage",q,!1),t.addEventListener("mskeymessage",
q,!1),t.addEventListener("keymessage",q,!1),console.log("DRM: Added Key Session ["+l.sessionId+"] for KID: "+e+" type: "+d+" initData length: "+b.length)):console.log("DRM: initdata is null."))}}function f(b){var c=null,d=null,e=d=null;console.log("DRM: Got a key message...");c=b.target;d=new Uint16Array(b.message.buffer);d=String.fromCharCode.apply(null,d);e=b.destinationURL;g(c,d,e)}function g(b,c,d){k(c,d,function(c){b.update(c)})}function k(b,c,d){q(b,c,d)}function q(b,c,f){null!=d&&d["licensing-server"]&&
(c=d["licensing-server"]);var g=null,k=[],t=(new DOMParser).parseFromString(b,"application/xml");if(t.getElementsByTagName("Challenge")[0])(b=t.getElementsByTagName("Challenge")[0].childNodes[0].nodeValue)&&(g=ia(b));else throw"DRM: playready update, can not find Challenge in keyMessage";b=t.getElementsByTagName("name");t=t.getElementsByTagName("value");if(b.length!=t.length)throw"DRM: playready update, invalid header name/value pair in keyMessage";for(var n=0;n<b.length;n++)k[n]={name:b[n].textContent,
value:t[n].textContent};var r=new l;r.onload=function(){200==r.status?f(new Uint8Array(r.response)):(e(c,r.status,r.response),console.error('DRM: playready update, XHR status is "'+r.statusText+'" ('+r.status+"), expected to be 200. readyState is "+r.readyState))};r.onabort=function(){throw'DRM: playready update, XHR aborted. status is "'+r.statusText+'" ('+r.status+"), readyState is "+r.readyState;};r.onerror=function(){e(c,0,r.response);console.error('DRM: playready update, XHR error. status is "'+
r.statusText+'" ('+r.status+"), readyState is "+r.readyState)};r.open("POST",c);r.responseType="arraybuffer";k&&k.forEach(function(b){r.setRequestHeader(b.name,b.value)});r.send(g)}function n(b){console.log("!!! ms key error",b)}function R(b){console.log("!!! ms key added",b)}function K(b){for(var c=0,d=0;d<b.initData.length;d++)c+=b.initData[d];c!=ga&&(ga=c,event.target.webkitGenerateKeyRequest("com.widevine.alpha",b.initData))}function Y(c){if(9<=da.length)for(var d=0;d<SESSIONS_TO_DELETE;d++){var f=
da.shift();c.target.webkitCancelKeyRequest("com.widevine.alpha",f)}da.push(c.sessionId);d=new l;b&&b["licensing-server"]||console.error("viblast-config.widevine.licensing-server is mandatory. Config=",b);d.open("POST",b["licensing-server"],!0);d.responseType="arraybuffer";d.onload=function(){if(200<=this.status&&300>this.status){var d=new Uint8Array(this.response);c.target.webkitAddKey("com.widevine.alpha",d,c.initData,c.sessionId);for(d=0;d<pendingSessionsWithInitData.length;d++){var f=pendingSessionsWithInitData[d].F,
g=pendingSessionsWithInitData[d].t;if(dataEquals(c.initData,g)){activeSessionsWithInitData.push({F:f,t:g});pendingSessionsWithInitData.splice(d,1);break}}}else{for(d=0;d<pendingSessionsWithInitData.length;d++)if(g=pendingSessionsWithInitData[d].t,dataEquals(c.initData,g)){pendingSessionsWithInitData.splice(d,1);break}e(b["licensing-server"],this.status,this.response)}};d.send(c.message)}var fa=null,oa=[],X=[],ga=0,da=[];return{Yb:function(b){b.o("msneedkey",c);b.o("mskeymessage",f);b.o("mskeyerror",
n);b.o("mskeyadded",R);b.o("webkitneedkey",K);b.o("webkitkeymessage",Y)}}}function n(){function f(b){if(null===b)return[];b=new DataView(b);for(var c={},d=0;;){var e,g,k=d;if(d>=b.buffer.byteLength)break;e=b.getUint32(d);e=d+e;d+=4;if(1886614376===b.getUint32(d)&&(d+=4,g=b.getUint8(d),0===g||1===g)){d++;d+=3;g="";var l,t;for(l=0;4>l;l++)t=b.getUint8(d+l).toString(16),g+=1===t.length?"0"+t:t;d+=4;g+="-";for(l=0;2>l;l++)t=b.getUint8(d+l).toString(16),g+=1===t.length?"0"+t:t;d+=2;g+="-";for(l=0;2>l;l++)t=
b.getUint8(d+l).toString(16),g+=1===t.length?"0"+t:t;d+=2;g+="-";for(l=0;2>l;l++)t=b.getUint8(d+l).toString(16),g+=1===t.length?"0"+t:t;d+=2;g+="-";for(l=0;6>l;l++)t=b.getUint8(d+l).toString(16),g+=1===t.length?"0"+t:t;d+=6;g=g.toLowerCase();b.getUint32(d);c[g]=b.buffer.slice(k,e)}d=e}return c}function q(b){var c=8,d=new DataView(b),e=d.getUint8(c),c=c+20;0<e&&(c+=4+16*d.getUint32(c));return b.slice(c+4)}function n(b){if(b)for(var c=new DataView(b),d=c.getUint16(4,!0),e=6,f=new DOMParser,g=0;g<d;g++){var k=
c.getUint16(e,!0),e=e+2,l=c.getUint16(e,!0),e=e+2;if(1!==k)e+=l;else{k=b.slice(e,e+l);k=String.fromCharCode.apply(null,new Uint16Array(k));k=f.parseFromString(k,"application/xml");if(k.getElementsByTagName("LA_URL")[0]&&(l=k.getElementsByTagName("LA_URL")[0].childNodes[0].nodeValue))return l;if(k.getElementsByTagName("LUI_URL")[0]&&(k=k.getElementsByTagName("LUI_URL")[0].childNodes[0].nodeValue))return k}}return null}function t(b){var c,d=null;c=new DOMParser;b=new Uint16Array(b);c=c.parseFromString(String.fromCharCode.apply(null,
b),"application/xml");c.getElementsByTagName("Challenge")[0]&&(c=c.getElementsByTagName("Challenge")[0].childNodes[0].nodeValue)&&(d=ia(c));return d}function I(b){var c={},d=new DOMParser;b=new Uint16Array(b);b=d.parseFromString(String.fromCharCode.apply(null,b),"application/xml");d=b.getElementsByTagName("name");b=b.getElementsByTagName("value");for(var e=0;e<d.length;e++)c[d[e].childNodes[0].nodeValue]=b[e].childNodes[0].nodeValue;c.hasOwnProperty("Content")&&(c["Content-Type"]=c.bc,delete c.bc);
return c}function L(b,c){if(b.byteLength===c.byteLength){for(var d=new Uint8Array(b),e=new Uint8Array(c),f=0;f<d.length;f++)if(d[f]!==e[f])return!1;return!0}return!1}function R(c){var d=c.target,e=c.initDataType;if("cenc"!==e)console.error("DRM: Only 'cenc' initData is supported! Ignoring initData of type: "+e);else{c=c.initData;ArrayBuffer.isView(c)&&(c=c.buffer);c=f(c);if(void 0===X){X=null;var g=[],k;for(k in oa)if(oa[k].Ra&&oa[k].ea in c){var l=oa[k];l.t=c[l.ea];g.push(l)}K(g).then(function(c){X=
c.Kc;ga=c.Oc;(c=b&&b["server-certificate"])&&ga.setServerCertificate(new Uint8Array(c));for(c=0;c<da.length;c++){var f=da[c][X.ea],g=Y(ga,f,e);J.push({F:g,t:f})}da=[];return d.setMediaKeys(ga)}).catch(console.error.bind(console,"DRM: Failed to create and initialize a MediaKeys object"))}if(void 0===ga)da=da||[],da.push(c);else{k=c[X.ea];for(c=0;c<J.length;c++)if(g=J[c].t,L(k,g))return;for(c=0;c<eb.length;c++)if(g=eb[c].t,L(k,g))return;c=Y(ga,k,e);J.push({F:c,t:k})}}}function K(b){function c(d){return navigator.requestMediaKeySystemAccess(d.name,
[{initDataTypes:["cenc"],audioCapabilities:[{contentType:k,robustness:""}],videoCapabilities:[{contentType:g,robustness:""}]}]).then(function(b){return b.createMediaKeys().then(function(b){return{Kc:d,Oc:b}}).catch(function(b){console.error("DRM: Failed to create media keys for "+d.name);throw b;})}).catch(function(d){var e=b.shift();if(e)return c(e);console.error("DRM: Unable to instantiate neither of the supported key systems");return d})}return c(b.shift())}function Y(b,c,d){b=b.createSession();
b.addEventListener("message",fa,!1);b.generateRequest(d,c).catch(console.error.bind(console,"DRM: Unable to create or initialize key session"));return b}function fa(b){var c=b.target;b=ArrayBuffer.isView(b.message)?b.message.buffer:b.message;X.lb(c,b)}var oa={uc:{ea:"1077efec-c0b2-4d02-ace3-3c1e52e2fb4b",name:"org.w3.clearkey",config:c,Ra:null!=c,lb:function(b,c){var d=JSON.parse(String.fromCharCode.apply(null,new Uint8Array(c))),e=oa.uc.config,f,g=null;for(f=0;f<d.kids.length;f++){var k=d.kids[f];
if(e[k]){g=k;break}}if(!g)throw Error("DRM: Neither of the provided Clear Key ID-s matches the stream's!");d=JSON.stringify({keys:[{kty:"oct",alg:"A128KW",kid:g,k:e[g]}]});e=d.length;g=new ArrayBuffer(e);k=new Uint8Array(g);for(f=0;f<e;f++)k[f]=d.charCodeAt(f);b.update(g).catch(function(b){console.error("DRM: session.update() filed, "+b)})}},Zf:{ea:"edef8ba9-79d6-4ace-a3c8-27dcd51d21ed",name:"com.widevine.alpha",config:b,Ra:null!=b,lb:function(b,c){var d=X?X.config:null;if(!d)throw Error("DRM: Needs a key system and its config to request a license");
var f=d["licensing-server"];if(!f)throw Error("DRM: License URL not found");var g=new l;g.open("POST",f);g.responseType="arraybuffer";g.onreadystatechange=function(){if(4==g.readyState)if(200<=g.status&&300>g.status){var c=new Uint8Array(g.response);b.update(c).catch(function(){console.error.bind(console,"DRM: "+this.name+" failed to update session!");for(var c=0;c<J.length;c++)if(J[c].F===b){J.splice(c,1);break}});for(c=0;c<J.length;c++){var d=J[c].F,k=J[c].t;if(d===b){eb.push({F:b,t:k});J.splice(c,
1);break}}}else{for(c=0;c<J.length;c++)if(d=J[c].F,d===b){J.splice(c,1);break}e(f,g.status,g.response)}};g.send(c)}},Tf:{ea:"9a04f079-9840-4286-ab92-e65be0885f95",name:"com.microsoft.playready",lb:function(b,c){var f=n(q(X.t)),g=t(c);null!=d&&d["licensing-server"]&&(f=d["licensing-server"]);var k=new l;k.open("POST",f);k.responseType="arraybuffer";k.onreadystatechange=function(){if(4==k.readyState)if(200<=k.status&&300>k.status){var c=new Uint8Array(k.response);b.update(c).catch(function(){console.error.bind(console,
"DRM: "+this.name+" failed to update session!");for(var c=0;c<J.length;c++)if(J[c].F===b){J.splice(c,1);break}});for(c=0;c<J.length;c++){var d=J[c].F;sessionInitData=J[c].t;if(d===b){eb.push({F:b,t:sessionInitData});J.splice(c,1);break}}}else{for(c=0;c<J.length;c++)if(d=J[c].F,d===b){J.splice(c,1);break}e(f,k.status,k.response)}};(function(b){var c;if(b)for(c in b)"authorization"===c.toLowerCase()&&(k.withCredentials=!0),k.setRequestHeader(c,b[c])})(I(c));k.send(g)},config:d,Ra:!0}},X,ga,da,eb=[],
J=[];return{Yb:function(b){b.o("encrypted",R)}}}e=e||function(){};f=f||function(){};return"function"===typeof navigator.requestMediaKeySystemAccess?n():q()};h.Pa=function(){this.Ea=null;this.kb=!1;this.Da=[]};h.Pa.prototype.start=function(b){var c=this,d=b.container,e=b.playerSWF||"JSSPlayback.swf";console.log("embeding channel="+b.channel+" in container="+d);ja(d,function(b){c.Ea=b},function(){},e)};
function ja(b,c,d,e){swfobject.embedSWF(e,b,"640","480","9.0.0",null,{src:"http://jss",autoPlay:!0,verbose:!0,controlBarAutoHide:!1,controlBarPosition:"bottom"},{allowFullScreen:!0,wmode:"direct"},{},function(b){b.success?(console.log("Successfuly embedded and obtained a flash reference"),c(b.ref)):(console.log("Error. Cannot embed Affovi player"),d())})}
h.Pa.prototype.consumePieceData=function(b){if(this.Ea&&b){for(b=new Uint8Array(b);4096<b.length;)this.Da.push(new Uint8Array(b.buffer,b.byteOffset,4096)),b=new Uint8Array(b.buffer,b.byteOffset+4096);0<b.length&&this.Da.push(b);this.kb||(this.kb=!0,ka(this))}};function ka(b){var c=b.Da.shift();if(c){var d=null,d=h.qa.encode(c);if(b.Ea.onProgress)b.Ea.onProgress(d)}0==b.Da.length?b.kb=!1:setTimeout(function(){ka(b)},5)}h.FlashPlayer=h.Pa;var v;v||(v=eval("(function() { try { return Module || {} } catch(e) { return {} } })()"));
var la={},ma;for(ma in v)v.hasOwnProperty(ma)&&(la[ma]=v[ma]);var na=!1,pa=!1,w=!1,qa=!1;
if(v.ENVIRONMENT)if("WEB"===v.ENVIRONMENT)na=!0;else if("WORKER"===v.ENVIRONMENT)pa=!0;else if("NODE"===v.ENVIRONMENT)w=!0;else if("SHELL"===v.ENVIRONMENT)qa=!0;else throw Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else na="object"===typeof window,pa="function"===typeof importScripts,w="object"===typeof process&&"function"===typeof require&&!na&&!pa,qa=!na&&!w&&!pa;
if(w){v.print||(v.print=console.log);v.printErr||(v.printErr=console.warn);var ra,sa;v.read=function(b,c){ra||(ra=require("fs"));sa||(sa=require("path"));b=sa.normalize(b);var d=ra.readFileSync(b);return c?d:d.toString()};v.readBinary=function(b){b=v.read(b,!0);b.buffer||(b=new Uint8Array(b));assert(b.buffer);return b};v.load=function(b){ta(read(b))};v.thisProgram||(v.thisProgram=1<process.argv.length?process.argv[1].replace(/\\/g,"/"):"unknown-program");v.arguments=process.argv.slice(2);"undefined"!==
typeof module&&(module.exports=v);process.on("uncaughtException",function(b){if(!(b instanceof ua))throw b;});v.inspect=function(){return"[Emscripten Module object]"}}else if(qa)v.print||(v.print=print),"undefined"!=typeof printErr&&(v.printErr=printErr),v.read="undefined"!=typeof read?read:function(){throw"no read() available";},v.readBinary=function(b){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(b));b=read(b,"binary");assert("object"===typeof b);return b},"undefined"!=typeof scriptArgs?
v.arguments=scriptArgs:"undefined"!=typeof arguments&&(v.arguments=arguments),eval("if (typeof gc === 'function' && gc.toString().indexOf('[native code]') > 0) var gc = undefined");else if(na||pa)v.read=function(b){var c=new XMLHttpRequest;c.open("GET",b,!1);c.send(null);return c.responseText},v.readAsync=function(b,c,d){var e=new XMLHttpRequest;e.open("GET",b,!0);e.responseType="arraybuffer";e.onload=function(){200==e.status||0==e.status&&e.response?c(e.response):d()};e.onerror=d;e.send(null)},"undefined"!=
typeof arguments&&(v.arguments=arguments),"undefined"!==typeof console?(v.print||(v.print=function(b){console.log(b)}),v.printErr||(v.printErr=function(b){console.warn(b)})):v.print||(v.print=function(){}),pa&&(v.load=importScripts),"undefined"===typeof v.setWindowTitle&&(v.setWindowTitle=function(b){document.title=b});else throw"Unknown runtime environment. Where are we?";function ta(b){eval.call(null,b)}!v.load&&v.read&&(v.load=function(b){ta(v.read(b))});v.print||(v.print=function(){});
v.printErr||(v.printErr=v.print);v.arguments||(v.arguments=[]);v.thisProgram||(v.thisProgram="./this.program");v.print=v.print;v.U=v.printErr;v.preRun=[];v.postRun=[];for(ma in la)la.hasOwnProperty(ma)&&(v[ma]=la[ma]);
var la=void 0,x={$c:function(b){tempRet0=b},Ec:function(){return tempRet0},Ha:function(){return va},pa:function(b){va=b},Mb:function(b){switch(b){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===b[b.length-1]?x.M:"i"===b[0]?(b=parseInt(b.substr(1)),assert(0===b%8),b/8):0}},Cc:function(b){return Math.max(x.Mb(b),x.M)},hf:16,Uf:function(b,c){"double"===c||"i64"===c?b&7&&(assert(4===(b&7)),b+=4):
assert(0===(b&3));return b},wf:function(b,c,d){return d||"i64"!=b&&"double"!=b?b?Math.min(c||(b?x.Cc(b):0),x.M):Math.min(c,8):8},p:function(b,c,d){return d&&d.length?v["dynCall_"+b].apply(null,[c].concat(d)):v["dynCall_"+b].call(null,c)},Ba:[],rc:function(b){for(var c=0;c<x.Ba.length;c++)if(!x.Ba[c])return x.Ba[c]=b,2*(1+c);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.";},Uc:function(b){x.Ba[(b-2)/2]=null},X:function(b){x.X.ib||(x.X.ib={});x.X.ib[b]||
(x.X.ib[b]=1,v.U(b))},Ta:{},d:function(b,c){assert(c);x.Ta[c]||(x.Ta[c]={});var d=x.Ta[c];d[b]||(d[b]=1===c.length?function(){return x.p(c,b)}:2===c.length?function(d){return x.p(c,b,[d])}:function(){return x.p(c,b,Array.prototype.slice.call(arguments))});return d[b]},xf:function(){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work";},Ga:function(b){var c=va;va=va+b|0;va=va+15&-16;return c},jb:function(b){var c=y;y=y+b|
0;y=y+15&-16;return c},Fb:function(b){var c=z[wa>>2];b=(c+b+15|0)&-16;z[wa>>2]=b;return b>=D&&!xa()?(z[wa>>2]=c,0):c},ub:function(b,c){return Math.ceil(b/(c?c:16))*(c?c:16)},Lf:function(b,c,d){return d?+(b>>>0)+4294967296*+(c>>>0):+(b>>>0)+4294967296*+(c|0)},D:8,M:4,jf:0};v.Runtime=x;x.addFunction=x.rc;x.removeFunction=x.Uc;var E=0;function assert(b,c){b||F("Assertion failed: "+c)}
function ya(b){var c=v["_"+b];if(!c)try{c=eval("_"+b)}catch(d){}assert(c,"Cannot call unknown function "+b+" (perhaps LLVM optimizations or closure removed it?)");return c}var za,Aa;
(function(){function b(b){b=b.toString().match(f).slice(1);return{arguments:b[0],body:b[1],returnValue:b[2]}}function c(){if(!g){g={};for(var c in d)d.hasOwnProperty(c)&&(g[c]=b(d[c]))}}var d={stackSave:function(){x.Ha()},stackRestore:function(){x.pa()},arrayToC:function(b){var c=x.Ga(b.length);Ba(b,c);return c},stringToC:function(b){var c=0;if(null!==b&&void 0!==b&&0!==b){var d=(b.length<<2)+1,c=x.Ga(d);Ca(b,c,d)}return c}},e={string:d.stringToC,array:d.arrayToC};Aa=function(b,c,d,f,g){b=ya(b);var B=
[],C=0;if(f)for(var t=0;t<f.length;t++){var I=e[d[t]];I?(0===C&&(C=x.Ha()),B[t]=I(f[t])):B[t]=f[t]}d=b.apply(null,B);"string"===c&&(d=G(d));if(0!==C){if(g&&g.async){EmterpreterAsync.lf.push(function(){x.pa(C)});return}x.pa(C)}return d};var f=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/,g=null;za=function(d,e,f){f=f||[];var n=ya(d);d=f.every(function(b){return"number"===b});var r="string"!==e;if(r&&d)return n;var B=f.map(function(b,c){return"$"+c});e="(function("+
B.join(",")+") {";var C=f.length;if(!d){c();e+="var stack = "+g.stackSave.body+";";for(var t=0;t<C;t++){var I=B[t],L=f[t];"number"!==L&&(L=g[L+"ToC"],e+="var "+L.arguments+" = "+I+";",e+=L.body+";",e+=I+"=("+L.returnValue+");")}}f=b(function(){return n}).returnValue;e+="var ret = "+f+"("+B.join(",")+");";r||(f=b(function(){return G}).returnValue,e+="ret = "+f+"(ret);");d||(c(),e+=g.stackRestore.body.replace("()","(stack)")+";");return eval(e+"return ret})")}})();v.ccall=Aa;v.cwrap=za;
function Da(b,c,d){d=d||"i8";"*"===d.charAt(d.length-1)&&(d="i32");switch(d){case "i1":H[b>>0]=c;break;case "i8":H[b>>0]=c;break;case "i16":Ea[b>>1]=c;break;case "i32":z[b>>2]=c;break;case "i64":tempI64=[c>>>0,(tempDouble=c,1<=+Fa(tempDouble)?0<tempDouble?(Ga(+Ha(tempDouble/4294967296),4294967295)|0)>>>0:~~+Ia((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)];z[b>>2]=tempI64[0];z[b+4>>2]=tempI64[1];break;case "float":Ja[b>>2]=c;break;case "double":Ka[b>>3]=c;break;default:F("invalid type for setValue: "+
d)}}v.setValue=Da;function La(b,c){c=c||"i8";"*"===c.charAt(c.length-1)&&(c="i32");switch(c){case "i1":return H[b>>0];case "i8":return H[b>>0];case "i16":return Ea[b>>1];case "i32":return z[b>>2];case "i64":return z[b>>2];case "float":return Ja[b>>2];case "double":return Ka[b>>3];default:F("invalid type for setValue: "+c)}return null}v.getValue=La;v.ALLOC_NORMAL=0;v.ALLOC_STACK=1;v.ALLOC_STATIC=2;v.ALLOC_DYNAMIC=3;v.ALLOC_NONE=4;
function M(b,c,d,e){var f,g;"number"===typeof b?(f=!0,g=b):(f=!1,g=b.length);var k="string"===typeof c?c:null;d=4==d?e:["function"===typeof ea?ea:x.jb,x.Ga,x.jb,x.Fb][void 0===d?2:d](Math.max(g,k?1:c.length));if(f){e=d;assert(0==(d&3));for(b=d+(g&-4);e<b;e+=4)z[e>>2]=0;for(b=d+g;e<b;)H[e++>>0]=0;return d}if("i8"===k)return b.subarray||b.slice?u.set(b,d):u.set(new Uint8Array(b),d),d;e=0;for(var l,q;e<g;){var n=b[e];"function"===typeof n&&(n=x.zf(n));f=k||c[e];0===f?e++:("i64"==f&&(f="i32"),Da(d+e,
n,f),q!==f&&(l=x.Mb(f),q=f),e+=l)}return d}v.allocate=M;v.getMemory=function(b){return Ma?Na?ea(b):x.Fb(b):x.jb(b)};function G(b,c){if(0===c||!b)return"";for(var d=0,e,f=0;;){e=u[b+f>>0];d|=e;if(0==e&&!c)break;f++;if(c&&f==c)break}c||(c=f);e="";if(128>d){for(;0<c;)d=String.fromCharCode.apply(String,u.subarray(b,b+Math.min(c,1024))),e=e?e+d:d,b+=1024,c-=1024;return e}return v.UTF8ToString(b)}v.Pointer_stringify=G;v.AsciiToString=function(b){for(var c="";;){var d=H[b++>>0];if(!d)return c;c+=String.fromCharCode(d)}};
v.stringToAscii=function(b,c){return Oa(b,c,!1)};var Pa="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function Qa(b,c){for(var d=c;b[d];)++d;if(16<d-c&&b.subarray&&Pa)return Pa.decode(b.subarray(c,d));for(var e,f,g,k,l,q,d="";;){e=b[c++];if(!e)return d;e&128?(f=b[c++]&63,192==(e&224)?d+=String.fromCharCode((e&31)<<6|f):(g=b[c++]&63,224==(e&240)?e=(e&15)<<12|f<<6|g:(k=b[c++]&63,240==(e&248)?e=(e&7)<<18|f<<12|g<<6|k:(l=b[c++]&63,248==(e&252)?e=(e&3)<<24|f<<18|g<<12|k<<6|l:(q=b[c++]&63,e=(e&1)<<30|f<<24|g<<18|k<<12|l<<6|q))),65536>e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>
10,56320|e&1023)))):d+=String.fromCharCode(e)}}v.UTF8ArrayToString=Qa;v.UTF8ToString=function(b){return Qa(u,b)};
function Ra(b,c,d,e){if(!(0<e))return 0;var f=d;e=d+e-1;for(var g=0;g<b.length;++g){var k=b.charCodeAt(g);55296<=k&&57343>=k&&(k=65536+((k&1023)<<10)|b.charCodeAt(++g)&1023);if(127>=k){if(d>=e)break;c[d++]=k}else{if(2047>=k){if(d+1>=e)break;c[d++]=192|k>>6}else{if(65535>=k){if(d+2>=e)break;c[d++]=224|k>>12}else{if(2097151>=k){if(d+3>=e)break;c[d++]=240|k>>18}else{if(67108863>=k){if(d+4>=e)break;c[d++]=248|k>>24}else{if(d+5>=e)break;c[d++]=252|k>>30;c[d++]=128|k>>24&63}c[d++]=128|k>>18&63}c[d++]=128|
k>>12&63}c[d++]=128|k>>6&63}c[d++]=128|k&63}}c[d]=0;return d-f}v.stringToUTF8Array=Ra;function Ca(b,c,d){return Ra(b,u,c,d)}v.stringToUTF8=Ca;function Sa(b){for(var c=0,d=0;d<b.length;++d){var e=b.charCodeAt(d);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|b.charCodeAt(++d)&1023);127>=e?++c:c=2047>=e?c+2:65535>=e?c+3:2097151>=e?c+4:67108863>=e?c+5:c+6}return c}v.lengthBytesUTF8=Sa;"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");
function Ta(b){return b.replace(/__Z[\w\d_]+/g,function(b){var d;a:{if(v.___cxa_demangle)try{var e=b.substr(1),f=Sa(e)+1,g=ea(f);Ca(e,g,f);var k=ea(4),l=v.___cxa_demangle(g,0,0,k);if(0===La(k,"i32")&&l){d=G(l);break a}}catch(q){}finally{g&&Ua(g),k&&Ua(k),l&&Ua(l)}else x.X("warning: build with  -s DEMANGLE_SUPPORT=1  to link in libcxxabi demangling");d=b}return b===d?b:b+" ["+d+"]"})}
function Va(){var b;a:{b=Error();if(!b.stack){try{throw Error(0);}catch(c){b=c}if(!b.stack){b="(no stack trace available)";break a}}b=b.stack.toString()}v.extraStackTrace&&(b+="\n"+v.extraStackTrace());return Ta(b)}v.stackTrace=Va;function Wa(b){0<b%4096&&(b+=4096-b%4096);return b}var buffer,H,u,Ea,Xa,z,Ya,Ja,Ka;
function Za(){v.HEAP8=H=new Int8Array(buffer);v.HEAP16=Ea=new Int16Array(buffer);v.HEAP32=z=new Int32Array(buffer);v.HEAPU8=u=new Uint8Array(buffer);v.HEAPU16=Xa=new Uint16Array(buffer);v.HEAPU32=Ya=new Uint32Array(buffer);v.HEAPF32=Ja=new Float32Array(buffer);v.HEAPF64=Ka=new Float64Array(buffer)}var $a,y,Ma,ab,va,bb,cb,wa;$a=y=ab=va=bb=cb=wa=0;Ma=!1;
v.reallocBuffer||(v.reallocBuffer=function(b){var c;try{if(ArrayBuffer.A)c=ArrayBuffer.A(buffer,b);else{var d=H;c=new ArrayBuffer(b);(new Int8Array(c)).set(d)}}catch(e){return!1}return db(c)?c:!1});function xa(){var b=Math.pow(2,31);if(z[wa>>2]>=b)return!1;for(;D<z[wa>>2];)if(D<b/2)D=Wa(2*D);else{var c=D;D=Wa((3*D+b)/4);if(D<=c)return!1}D=Math.max(D,16777216);if(D>=b)return!1;b=v.reallocBuffer(D);if(!b)return!1;v.buffer=buffer=b;Za();return!0}var fb;
try{fb=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),fb(new ArrayBuffer(4))}catch(gb){fb=function(b){return b.byteLength}}for(var hb=v.TOTAL_STACK||5242880,D=v.TOTAL_MEMORY||33554432,ib=65536;ib<D||ib<2*hb;)ib=16777216>ib?2*ib:ib+16777216;ib=Math.max(ib,16777216);ib!==D&&(D=ib);v.buffer?buffer=v.buffer:buffer=new ArrayBuffer(D);Za();z[0]=1668509029;Ea[1]=25459;
if(115!==u[2]||99!==u[3])throw"Runtime error: expected the system to be little-endian!";v.HEAP=void 0;v.buffer=buffer;v.HEAP8=H;v.HEAP16=Ea;v.HEAP32=z;v.HEAPU8=u;v.HEAPU16=Xa;v.HEAPU32=Ya;v.HEAPF32=Ja;v.HEAPF64=Ka;function jb(b){for(;0<b.length;){var c=b.shift();if("function"==typeof c)c();else{var d=c.I;"number"===typeof d?void 0===c.S?x.p("v",d):x.p("vi",d,[c.S]):d(void 0===c.S?null:c.S)}}}var kb=[],lb=[],mb=[],nb=[],ob=[],Na=!1;function pb(b){kb.unshift(b)}v.addOnPreRun=pb;v.addOnInit=function(b){lb.unshift(b)};
v.addOnPreMain=function(b){mb.unshift(b)};v.addOnExit=function(b){nb.unshift(b)};function qb(b){ob.unshift(b)}v.addOnPostRun=qb;function p(b,c,d){d=Array(0<d?d:Sa(b)+1);b=Ra(b,d,0,d.length);c&&(d.length=b);return d}v.intArrayFromString=p;v.intArrayToString=function(b){for(var c=[],d=0;d<b.length;d++){var e=b[d];255<e&&(e&=255);c.push(String.fromCharCode(e))}return c.join("")};
v.writeStringToMemory=function(b,c,d){x.X("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var e,f;d&&(f=c+Sa(b),e=H[f]);Ca(b,c,Infinity);d&&(H[f]=e)};function Ba(b,c){H.set(b,c)}v.writeArrayToMemory=Ba;function Oa(b,c,d){for(var e=0;e<b.length;++e)H[c++>>0]=b.charCodeAt(e);d||(H[c>>0]=0)}v.writeAsciiToMemory=Oa;Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(b,c){var d=b&65535,e=c&65535;return d*e+((b>>>16)*e+d*(c>>>16)<<16)|0});Math.Af=Math.imul;
Math.clz32||(Math.clz32=function(b){b=b>>>0;for(var c=0;32>c;c++)if(b&1<<31-c)return c;return 32});Math.nf=Math.clz32;Math.trunc||(Math.trunc=function(b){return 0>b?Math.ceil(b):Math.floor(b)});Math.trunc=Math.trunc;var Fa=Math.abs,Ia=Math.ceil,Ha=Math.floor,Ga=Math.min,rb=0,sb=null,tb=null;function ub(){rb++;v.monitorRunDependencies&&v.monitorRunDependencies(rb)}v.addRunDependency=ub;
function vb(){rb--;v.monitorRunDependencies&&v.monitorRunDependencies(rb);if(0==rb&&(null!==sb&&(clearInterval(sb),sb=null),tb)){var b=tb;tb=null;b()}}v.removeRunDependency=vb;v.preloadedImages={};v.preloadedAudios={};
var N=[function(b){window.clearTimeout(b);return-1},function(b,c,d){return window.setTimeout(function(){x.d(c,"vi")(d)},b)},function(b){m.mb(b);return 0},function(){var b=document.cookie.replace(/(?:(?:^|.*;\s*)vb_viewer_id\s*\=\s*([^;]*).*$)|^.*$/,"$1");return b?m.j(b)[0]:0},function(b){b=G(b);var c=new Date;c.setFullYear(c.getFullYear()+5);document.cookie="vb_viewer_id="+b+";domain="+window.location.hostname+";path=/;expires="+c.toUTCString()},function(b,c){var d=m.b(b);if(d.onError)d.onError(G(c))},
function(b){b=m.b(b);if(b.internalsObserver&&b.internalsObserver.onPlayer)b.internalsObserver.onPlayer()},function(){var b=document.createElement("video");return b.canPlayType&&0<b.canPlayType("application/vnd.apple.mpegURL").length},function(){return m.j(navigator.userAgent)[0]},function(){return/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor)},function(b){b=m.b(b);if(b.onSuccess)b.onSuccess()},function(b,c,d,e,f){if(b=m.b(b).transformKey){c=new Uint8Array(new Uint8Array(v.buffer,
c,d));d=G(e);if("string"===typeof b)try{b=eval(b)}catch(g){console.log(g)}e=void 0;if("function"===typeof b)try{e=b(c,d)}catch(k){console.log(k)}if(e)return e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),b=ea(e.length),u.set(e,b),Da(f,e.length,"i32"),b}return 0},function(b,c){var d=m.b(b).transformKeyUri;if(d){var e=G(c),f=e;if("string"===typeof d)try{d=eval(d)}catch(g){console.log(g)}if("function"===typeof d)try{f=d(e)}catch(k){console.log(k)}return m.j(f)[0]}return 0},function(b){try{return"AUDIO"===
m.b(b).container.tagName}catch(c){return 0}},function(){try{return-1!==navigator.userAgent.toLowerCase().indexOf("android")}catch(b){return 0}},function(b){b=m.b(b);b.onopen=null;b.onmessage=null;b.onclose=null;b.onerror=null;b.close()},function(b,c,d,e,f,g){c=G(c);c=new WebSocket(c);c.binaryType="arraybuffer";c.onopen=function(){x.d(d,"vi")(b)};c.onmessage=function(c){var d=0,f=0,g=0;c.data instanceof ArrayBuffer?(c=new Uint8Array(c.data),g=1,d=c.length,f=v._malloc(d),u.set(c,f)):(c=c.data,g=0,d=
c.length,f=v._malloc(d),m.$b(c,u,f));x.d(e,"viiii")(b,f,d,g)};c.onclose=function(){x.d(f,"vi")(b)};c.onerror=function(){var c=v._malloc(5);m.$b("error",u,c);x.d(g,"viii")(b,c,5)};return m.h(c)},function(b,c){var d=G(c);m.b(b).send(d);return 0},function(b){b=new ArrayBuffer(b);return m.h(b)},function(b,c,d){c=m.b(c);(new Uint8Array(m.b(b))).set(new Uint8Array(c),d)},function(b){m.mb(b)},function(b,c){var d=new ArrayBuffer(c);(new Uint8Array(d)).set(new Uint8Array(u.buffer,b,c));return m.h(d)},function(b,
c){var d=new Uint8Array(m.b(b)),e=v._malloc(c);u.set(d,e);return e},function(b){window.removeEventListener("blur",m.b(b));window.removeEventListener("focus",m.b(b))},function(b,c,d){try{var e="";viblast_listener_background=function(f){if(e!=f.type)switch(f.type){case "blur":x.d(c,"vi")(b);break;case "focus":x.d(d,"vi")(b)}e=f.type};window.addEventListener("blur",viblast_listener_background);window.addEventListener("focus",viblast_listener_background);return m.h(viblast_listener_background)}catch(f){console.error(f)}return 0},
function(){return m.j(window.location.hostname)[0]},function(){var b=m.Va();return b?m.j(b)[0]:0},function(b){return Date.parse(G(b))},function(b){return~~(Math.random()*b)},function(b){b=G(b);return m.j(encodeURIComponent(b))[0]},function(b,c,d){b=m.b(b);for(var e in b){var f=b[e];if("string"===typeof f||"number"===typeof f||"boolean"===typeof f){var g=m.j(e),f=m.j(f);x.p("viiiii",d,[c,g[0],g[1],f[0],f[1]])}}},function(b){h.l.va(G(b))},function(b){h.l.uf=b},function(b,c,d,e){b=m.b(b);var f=G(c);
c=b[f];e&&(c=b.getAttribute(f),c=null!==c?c:void 0);e=[];void 0!==c?e=m.j(c):e[0]=e[1]=0;Da(d,e[1],"i32");return e[0]},function(b,c,d,e){function f(b){var g=m.h(b);x.p("vii",d,[c,g]);for(g=0;g<b.childNodes.length;g++){var k=b.childNodes[g];1===k.nodeType&&f(k)}x.p("vi",e,[c])}b=G(b);b=(new DOMParser).parseFromString(b,"text/xml");for(var g=null,k=0;k<b.childNodes.length;k++){var l=b.childNodes[k];if(1===l.nodeType){g=l;break}}g&&f(g);return 1},function(b){return Date.parse(G(b))/1E3},function(b){if(b=
m.b(b))b.abort(),b.ha=!0,b.onload=null,b.onprogress=null,b.onerror=null,b.ontimeout=null},function(b,c,d,e){var f=new XMLHttpRequest;f.ka=function(d,e,f,q){var n=0,r=0;e&&0<e.byteLength&&!q&&(e=new Uint8Array(e),r=e.length,n=v._malloc(r),u.set(e,n));x.p("viiiiii",c,[b,d,n,r,f,q])};f.Fc=function(c,f,l,q,n){var r=0,B=0;f&&(0==l?(f=new Uint8Array(f),B=l+f.length,r=v._malloc(n),u.set(f,r)):(f=new Uint8Array(f),B=f.length,r=x.p("ii",e,[b]),u.set(f,r+l)));x.p("viiiiii",d,[b,c,r,B,q,n])};f.yc=function(b){this.overrideMimeType("text/plain; charset=x-user-defined");
1<=this.readyState&&(this.responseType="text");this.Db="text";this.onprogress=function(c){if(!b.ha){var d=this.responseText;if(d&&0<d.length&&c.lengthComputable&&0<c.total){try{var e=new ArrayBuffer(d.length-b.V),f=new Uint8Array(e)}catch(r){throw Error("str.length = "+d.length+" processed  = "+b.V);}for(var B=b.V;B<d.length;B++)f[B-b.V]=d.charCodeAt(B)&255;b.Fc(this.status,e,b.V,d.length,c.total);b.V=d.length}}};this.onload=function(c){if(!b.ha){var d=this.responseText;if(b.V!=d.length){var e=new ArrayBuffer(d.length),
f=new Uint8Array(e);if(d)for(var r=0;r<d.length;r++)f[r]=d.charCodeAt(r)&255;b.ka(this.status,e,c.total,!1)}else b.ka(this.status,null,c.total,!0)}}};f.Eb=function(b){1<=this.readyState&&(this.responseType="arraybuffer");this.Db="arraybuffer";this.onprogress=null;this.onload=function(c){b.ha||b.ka(this.status,this.response,c.total,!1)}};f.onerror=function(){f.ha||f.ka(this.status,this.response)};f.ontimeout=function(){f.ha||f.ka(-524,this.response)};return m.h(f)},function(b){b=m.b(b);b.Eb(b)},function(b,
c,d){b=m.b(b);c=G(c);d=G(d);b.V=0;b.open(c,d,!0);b.responseType=b.Db},function(b){b=m.b(b);navigator.userAgent.toLowerCase().indexOf("edge/")?b.Eb(b):b.yc(b)},function(b,c){m.b(b).timeout=c},function(b){m.b(b).send();return 0},function(b,c,d){b=m.b(b);c=G(c);d=G(d);b.setRequestHeader(c,d)},function(b,c){var d=m.b(b),e=G(c);return(d=d.getResponseHeader(e))?m.j(d)[0]:0},function(b){if(b=m.b(b)){var c=b.K;c&&(c.onnegotiationneeded=void 0,c.onicecandidate=void 0,c.onsignalingstatechange=void 0,c.onaddstream=
void 0,c.onremovestream=void 0,c.oniceconnectionstatechange=void 0,c.ondatachannel=void 0,b.G=!0)}},function(b,c,d,e,f,g,k){c=G(c);var l={};l.Sf=d?!0:!1;-1!==e&&(l.Nf=e);-1!==f&&(l.Of=f);g&&(l.Qf=!0);-1!==k&&(l.id=k);b=m.b(b).K.createDataChannel(c,l);return m.h(b)},function(b){m.b(b).K.close();return 0},function(b,c,d,e,f){var g=m.b(c),k=g.K;k.createOffer(function(c){if("closed"!=k.signalingState&&!g.G){var f=m.j(c.type);c=m.j(c.sdp);x.d(e,"viiiiii")(b,d,f[0],f[1],c[0],c[1])}},function(c){g.G||(c=
m.j(c.name+": "+c.message),x.d(f,"viiii")(b,d,c[0],c[1]))},{mandatory:{OfferToReceiveAudio:!1}});return 0},function(b,c,d,e,f){var g=m.b(c),k=g.K;k.createAnswer(function(c){if("closed"!=k.signalingState&&!g.G){var f=m.j(c.type);c=m.j(c.sdp);x.d(e,"viiiiii")(b,d,f[0],f[1],c[0],c[1])}},function(c){g.G||(c=m.j(c.name+": "+c.message),x.d(f,"viiii")(b,d,c[0],c[1]))},{mandatory:{OfferToReceiveAudio:!1}});return 0},function(b,c,d,e){b=m.b(b).K;var f={};f.sdpMLineIndex=c;f.sdpMid=G(d);f.candidate=G(e);try{b.addIceCandidate(new RTCIceCandidate(f))}catch(g){return 1}return 0},
function(b,c,d,e,f,g,k){var l=m.b(c);c=l.K;var q={};q.type=G(e);q.sdp=G(f);c.setRemoteDescription(new RTCSessionDescription(q),function(){l.G||x.d(g,"vii")(b,d)},function(c){l.G||(c=m.j(c),x.d(k,"viiii")(b,d,c[0],c[1]))});return 0},function(b,c,d,e,f,g,k){var l=m.b(c);c=l.K;var q={};q.type=G(e);q.sdp=G(f);c.setLocalDescription(new RTCSessionDescription(q),function(){l.G||x.d(g,"vii")(b,d)},function(c){l.G||(c=m.j(c),x.d(k,"viiii")(b,d,c[0],c[1]))});return 0},function(b){return m.j(m.b(b).K.iceConnectionState)[0]},
function(b,c,d,e,f,g,k,l,q,n,r){if(!window.RTCPeerConnection||!window.RTCPeerConnection.prototype.createDataChannel)return-1;for(var B={iceServers:[]},C=0,C=0;C<r;C++){var t={},I=La(q+(3*C+0)*n,"*"),L=La(q+(3*C+1)*n,"*"),R=La(q+(3*C+2)*n,"*");I&&(t.urls=G(I));L&&(t.username=G(L));R&&(t.credential=G(R));B.iceServers.push(t)}var K=null,K=new RTCPeerConnection(B,null);K.onnegotiationneeded=function(){x.d(c,"vi")(b)};K.onicecandidate=function(c){if("closed"!=K.signalingState&&!Y.G)if(c.candidate){var e=
m.j(c.candidate.sdpMid),f=m.j(c.candidate.candidate);x.d(d,"viiiiii")(b,c.candidate.sdpMLineIndex,e[0],e[1],f[0],f[1])}else x.d(d,"viiiiii")(b,0,0,0,0,0)};K.onsignalingstatechange=function(){x.d(e,"vi")(b)};K.onaddstream=function(c){c=m.h(c.stream);x.d(f,"vii")(b,c)};K.onremovestream=function(c){c=m.h(c.stream);x.d(g,"vii")(b,c)};K.oniceconnectionstatechange=function(){x.d(k,"vi")(b)};K.ondatachannel=function(c){c=m.h(c.channel);x.d(l,"vii")(b,c)};var Y={K:K,G:!1};return m.h(Y)},function(b){if(b=
m.b(b))b.onopen=void 0,b.onerror=void 0,b.onclose=void 0,b.onmessage=void 0},function(b,c,d,e,f,g){var k=null,k=m.b(c);k.onopen=function(){x.d(d,"vi")(b)};k.onerror=function(){var c=m.j("Unknown error");x.d(e,"viii")(b,c[0],c[1])};k.onclose=function(){x.d(f,"vi")(b)};k.onmessage=function(c){if("closing"!==k.readyState&&"closed"!==k.readyState)if(c.data instanceof ArrayBuffer){c=new Uint8Array(c.data);var d=c.length,e=v._malloc(d);u.set(c,e);x.d(g,"viiii")(b,1,e,d)}else"string"===typeof c.data&&(c=
m.j(c.data),x.d(g,"viiii")(b,0,c[0],c[1]))};k.binaryType="arraybuffer";return 0},function(b,c,d,e){b=m.b(b);var f=null;c?f=new Uint8Array(new Uint8Array(u.buffer,d,e)):f=G(d,e);try{b.send(f)}catch(g){return 1}return 0},function(b){m.b(b).close();return 0},function(b){return m.b(b).bufferedAmount},function(b,c){var d=m.b(b),e=G(c);return e in d?m.h(d[e]):-1},function(b,c){for(var d=new Uint32Array(u.buffer,b),e=0,f=[],g=0,g=0;g<c;g++){var k={};k.id=G(d[e++]);k.downloaded=d[e++];k.uploaded=d[e++];k.dwBandwidth=
d[e++];k.numRequestedChunks=d[e++];f.push(k)}return m.h(f)},function(b,c,d,e){url=G(c);c=new Worker(url);c.onmessage=function(c){E||(c=m.h(c.data),x.p("vii",d,[b,c]))};c.onerror=function(){E||x.p("vi",e,[b])};return m.h(c)},function(b){m.b(b).terminate()},function(b,c,d){m.b(b).postMessage(m.b(c),m.b(d))},function(){return m.h([])},function(){return m.h([])},function(b,c,d,e){b=m.b(b);c=(new Uint8Array(u.subarray(c,c+d))).buffer;b.push(c);m.b(e).push(c)},function(b,c){var d=m.b(b),e=new Uint8Array(m.b(c));
d.push(e)},function(b,c){m.b(b).push(c)},function(b,c){return m.b(b)[c]},function(b,c){return m.b(b)[c].byteLength},function(b,c,d,e){b=m.b(b)[c];assert(b.byteLength<=e);e=b instanceof ArrayBuffer?new Uint8Array(b):b;u.set(e,d)},function(b,c){var d=m.b(b)[c];d instanceof ArrayBuffer||(0===d.byteOffset&&d.byteLength===d.buffer.byteLength?d=d.buffer:(console.info("copying in order to converto to an array buffer. This is very slot"),d=(new Uint8Array(d)).buffer));return m.h(d)},function(b,c){var d;"undefined"!==
typeof VTTCue?"undefined"===typeof vttjs||VTTCue!==vttjs.VTTCue?d=VTTCue:-1<navigator.userAgent.toLowerCase().indexOf("msie")||-1<navigator.userAgent.toLowerCase().indexOf("trident")||-1<navigator.userAgent.toLowerCase().indexOf("edge/")?d=TextTrackCue:d=VTTCue:"undefined"!==typeof TextTrackCue&&(d=TextTrackCue);if(!d)return-1;d=new d(c,c+1,"ID3 Tag");d.frames=[];return m.h(d)},function(b,c){var d=m.b(b),e={};e.id=G(c);d.frames.push(e);return m.h(e)},function(b,c,d,e){b=m.b(b);b.owner=G(c);b.data=
new Uint8Array(new Uint8Array(u.buffer,d,e))},function(b,c,d){b=m.b(b);b.description=G(c);b.text=G(d)},function(b,c){m.b(b).text=G(c)},function(b,c,d){b=m.b(b);b.description=G(c);b.url=G(d)},function(b,c){m.b(b).url=G(c)},function(b,c,d,e){b=m.b(b);b.lang=G(c,4);b.description=G(d);b.text=G(e)},function(b,c,d){m.b(b).rawContent=new Uint8Array(new Uint8Array(u.buffer,c,d))},function(b,c){var d=m.b(b),e=m.b(c);e&&d&&d.addCue(e)},function(b){b=m.b(b);var c=b.n;b=b.vc;var d;for(d=0;d<c.Aa.length;d++)c.removeEventListener(c.Aa[d].type,
c.Aa[d].Mc);for(d=0;d<c.Ya.length;d++)window.clearInterval(c.Ya[d]);d=c.paused;c.src="";if(null!=c.mediaKeys){var e=c.setMediaKeys(null);void 0!==e&&null!==e&&(c.addAsyncWaitPromise(e),e.then(function(){c.removeAsyncWaitPromise(e)}).catch(function(){c.removeAsyncWaitPromise(e)}))}c.removeAttribute("src");c.load();d||(d=c.play(),void 0!==d&&d.then(function(){}).catch(function(){}));b.innerHTML=""},function(b,c,d,e,f,g,k,l,q,n,r,B){c=m.b(f);b=c.container;if(!b)return-1;var C="object"===typeof b&&("VIDEO"===
b.tagName||"AUDIO"===b.tagName),t,I;if(C)t=b,I={Qb:function(){},show:function(){}};else{var L=document.createElement("div");L.setAttribute("style","position: relative;");t=document.createElement("video");t.setAttribute("controls","");t.setAttribute("autoplay","");L.appendChild(t);I=document.createElement("div");I.Qb=function(){this.style.display="none"};I.show=function(){this.style.display=""};I.setAttribute("class","vb-spinner vb-center");L.appendChild(I);document.getElementById(b).appendChild(L)}C||
document.getElementById("vb-spinner-css")||(C=document.createElement("style"),C.id="vb-spinner-css",C.innerHTML=".vb-spinner {height: 30px;width: 30px;margin: 0;margin-top: -15px;margin-left: -15px;display: inline-block;vertical-align: top; -webkit-animation: vb-rotation .8s linear infinite; -moz-animation: vb-rotation .8s linear infinite;-o-animation: vb-rotation .8s linear infinite;animation: vb-rotation 0.8s linear infinite;border-left: 5px solid rgb(235, 235, 235);border-right: 5px solid rgb(235, 235, 235);border-bottom: 5px solid rgb(235, 235, 235);border-top: 5px solid rgb(120, 120, 120);border-radius: 100%;}@-webkit-keyframes vb-rotation {from {-webkit-transform: rotate(0deg);}to {-webkit-transform: rotate(360deg);}}@-moz-keyframes vb-rotation {from {-moz-transform: rotate(0deg);}to {-moz-transform: rotate(360deg);}}@-o-keyframes vb-rotation {from {-o-transform: rotate(0deg);}to {-o-transform: rotate(360deg);}}@keyframes vb-rotation {from {transform: rotate(0deg);}to {transform: rotate(360deg);}}.vb-center{margin: auto;position: absolute;top: 0; left: 0; bottom: 0; right: 0;}",
document.head.insertBefore(C,document.head.firstChild));t.Aa=[];t.o=function(b,c){this.addEventListener(b,c);this.Aa.push({type:b,Mc:c})};if(null==t.___async_wait___||void 0==t.___async_wait___)t.___async_wait___=[],t.addAsyncWaitPromise=function(b){t.___async_wait___.push(b)},t.removeAsyncWaitPromise=function(b){b=t.___async_wait___.indexOf(b);-1<b?t.___async_wait___.splice(b,1):console.log("Try to remove unknown promise")};C=null;"undefined"!==typeof MediaSource&&(C=new MediaSource);if(C){t.o("pause",
function(){x.d(k,"vi")(d)});if(!t.paused||t.autoplay)t.tb=!0;t.o("play",function(){x.d(l,"vi")(d)});t.o("playing",function(){x.d(q,"vi")(d)});t.o("fullscreenchange",function(b){x.d(n,"vii")(d,document.fullScreen);x.d(r,"viii")(d,b.target.clientWidth,b.target.clientHeight)});t.o("mozfullscreenchange",function(b){x.d(n,"vii")(d,document.mozFullScreen);x.d(r,"viii")(d,b.target.clientWidth,b.target.clientHeight)});t.o("webkitfullscreenchange",function(b){x.d(n,"vii")(d,document.webkitIsFullScreen);x.d(r,
"viii")(d,b.target.clientWidth,b.target.clientHeight)});t.o("resize",function(b){x.d(r,"viii")(d,b.target.clientWidth,b.target.clientHeight)});var R;R="function"===typeof Event?function(b){return new Event(b)}:function(b){var c=document.createEvent("Event");c.initEvent(b,!1,!1);return c};var K=!1,Y=!0;t.o("waiting",function(){Y=!0;I.show()});t.o("playing",function(){Y=!1;I.Qb()});t.o("timeupdate",function(b){for(var c=-1,e=0,f=b.target.buffered,k=b.target.currentTime,e=0;e<f.length;e++)if(f.start(e)<=
k&&k<=f.end(e)){c=e;break}x.d(g,"vidd")(d,b.target.currentTime,-1!=c?b.target.buffered.end(c):0)});var fa=t.currentTime;t.Ya=[];e=window.setInterval(function(){if(!t.paused)if(!t.ended&&.001>Math.abs(t.currentTime-fa)){if(!Y&&0!==t.currentTime&&!K&&!t.seeking){var b=R("waiting");t.dispatchEvent(b);K=!0}}else K&&(b=R("playing"),t.dispatchEvent(b),K=!1);fa=t.currentTime},500);t.Ya.push(e);t.o("seeking",function(b){var c=t.currentTime;x.d(B,"vid")(d,c);c=R("timeupdate");b.target.dispatchEvent(c)})}else x.d(e,
"viii")(d,m.h(null),-1);t.src=window.URL.createObjectURL(C);if(e=c.attributes)for(attr in e)L.setAttribute(attr,e[attr]);if(e=m.b(f)["video-attributes"])for(attr in e)"controls"==attr?t[attr]=e[attr]:t.setAttribute(attr,e[attr]);f={};f.n=t;f.Xa=L;f.na=C;f.vc=b;return m.h(f)},function(b){h.ta.Nc(m.b(b).n)},function(b){h.ta.bd(m.b(b).n)},function(b){b=m.b(b);b.Xa&&b.Xa.parentNode.removeChild(b.Xa);try{var c=b.na;"open"===c.readyState&&b.na.endOfStream();c.removeEventListener("sourceopen",c.pc)}catch(d){console.log("[vb] cannot signal end of stream in MSP::stop()")}},
function(b){return m.b(b).n.tb},function(b){return(b=m.b(b).n.getAttribute("preload"))?"auto"===b?2:"metadata"==b?1:0:-1<navigator.userAgent.toLowerCase().indexOf("msie")||-1<navigator.userAgent.toLowerCase().indexOf("trident")||-1<navigator.userAgent.toLowerCase().indexOf("edge/")?2:0},function(b,c,d){b=m.b(b);Da(c,parseInt(window.getComputedStyle(b.n).width),"i32");Da(d,parseInt(window.getComputedStyle(b.n).height),"i32")},function(b,c){var d=m.b(b).n;if(0<c)try{return d.currentTime=c,1}catch(e){}return 0},
function(b){return m.b(b).n.currentTime},function(b){return m.b(b).n.webkitDroppedFrameCount},function(b){var c=m.b(b).n;if(0<c.buffered.length){b=0;var d=c.buffered,c=c.currentTime;for(b=0;b<d.length;b++)if(d.start(b)<=c&&c<=d.end(b))return d.end(b)-c}return 0},function(b,c,d){var e=m.b(b).n;if(!(0>=e.buffered.length)){b=[];0<c&&b.push(c);0<d&&b.push(d);try{var f=e.buffered.start(0),g=e.buffered.end(e.buffered.length-1);for(c=0;c<b.length;c++){var k=b[c];if(!(0>k)){var l=m.b(k);l&&("open"===l.readyState&&
l.abort(),l.updating||l.remove(f,g))}}}catch(q){console.log("Error while clearing buffer ",q)}}},function(b,c,d,e,f){e=document.createElement("track");e.setAttribute("kind","subtitles");e.setAttribute("label",G(c));e.setAttribute("srclang",G(d));e.setAttribute("src",G(f));m.b(b).n.appendChild(e)},function(b){function c(){for(var d=m.b(b).na,e=d.sourceBuffers,f=e.length,g=0;g<f;g++)e[g].removeEventListener("updateend",c,!1);if("open"===d.readyState){for(g=0;g<f;g++)if(e[g].updating){e[g].addEventListener("updateend",
c,!1);return}d.endOfStream()}}c()},function(b,c){m.b(b).n.Cf=c},function(b){return 0>b?0:(b=m.b(b))&&b.updating?0:1},function(b,c,d,e,f){b=m.b(b);c=new Uint8Array(m.b(c));try{b.appendBuffer(c)}catch(g){c=m.j("object"===typeof g&&g.stack?g.stack:String(g))[0],x.d(e,"vii")(f,c)}return 0},function(b,c){var d=m.b(b).n;if(.5>=d.currentTime&&0<c)try{return d.currentTime=c,1}catch(e){}return 0},function(b,c){var d=m.b(b).na,e=isFinite(c)?(100*c|0)/100:c;try{d.duration=e}catch(f){if("InvalidStateError"==
f.name)return 0;console.log("Error while setting duration",f)}return 1},function(b,c){m.b(b).n.currentPlaylistDuration=c},function(b,c){try{m.b(b).abort()}catch(d){}0<=b&&(m.b(b).timestampOffset=c)},function(b,c){0<=b&&0!==c&&0===m.b(b).timestampOffset&&(m.b(b).timestampOffset=-c)},function(b,c,d,e,f,g){var k;b=m.b(b);g=m.b(g);e=G(e);f=G(f);h.Ka&&(k=h.Ka.wc(g.widevine,g.clearkey,g.playready,function(b,e,f){b=m.j(b)[0];var g="";f instanceof ArrayBuffer?g=String.fromCharCode.apply(null,new Uint8Array(f)):
g=f;g=m.j(g)[0];x.d(d,"viiii")(c,b,e,g)},g.internalsObserver&&g.internalsObserver.nb,e,f),k.Yb(b.n));k&&(b.qf=k)},function(b){b=m.b(b).n;return b.addTextTrack?(b=b.addTextTrack("metadata","Viblast Metadata Tags"))?m.h(b):-1:-1},function(b){b=G(b);return MediaSource.isTypeSupported(b)},function(b,c,d,e,f,g,k){var l=m.b(b).na;if(l){var q=function(b,c,d){try{return b.addSourceBuffer(c)}catch(e){return x.d(g,"vii")(f,d),null}},n=function(){var b=G(c),g=-1;if(b){g=q(l,b,c);if(!g)return;g.addEventListener("error",
function(b){console.log("append to video buffer reported error",b);b=m.j("append to video buffer failed")[0];x.d(k,"vii")(f,b)},!1);g=m.h(g)}var b=-1,C=G(d);if(C){b=q(l,C,d);if(!b)return;b.addEventListener("error",function(){var b=m.j("append to audio buffer failed")[0];x.d(k,"vii")(f,b)},!1);b=m.h(b)}l.removeEventListener("sourceopen",n,!1);x.d(e,"viii")(f,g,b)};l.pc=n;"open"===l.readyState?n():l.addEventListener("sourceopen",n,!1);b=m.b(b).n;b.tb&&(b=b.play(),void 0!==b&&b.then(function(){}).catch(function(){}))}},
function(b){console.error("Cannot create MSE source buffer for codec="+G(b))},function(b,c){var d=m.b(b).n;console.log("requested current time: "+c);for(var e=0;e<d.buffered.length;e++)console.log("Buffers start: "+d.buffered.start(e)+" buffers end: "+d.buffered.end(e));d.currentTime=c;return.01>Math.abs(d.currentTime-c)},function(b){return m.b(b).n.buffered.length},function(b,c){for(var d=m.b(b).n.buffered,e=0;e<d.length;e++)if(d.start(e)<=c&&c<=d.end(e))return 1;return 0},function(b,c,d){b=G(b);
var e=G(c);c=document.createElement("video");c.setAttribute("controls","");c.setAttribute("autoplay","");c.src=e;document.getElementById(b).appendChild(c);if(d=m.b(d).attributes)for(attr in d)"controls"==attr?c[attr]=d[attr]:c.setAttribute(attr,d[attr]);d={};d.htmlContent=c;return m.h(d)},function(b){(b=m.b(b).htmlContent)&&b.parentNode&&b.parentNode.removeChild(b)},function(b){return m.h(m.b(b))},function(b){return m.b(b).byteLength},function(b,c,d,e,f,g){var k=m.b(b),l=k.container.plugin,q=k.container.vjsFlashTech;
b=k.container.player;if(!l)return-1;l.mediaSource.vb_baseUrl=k.baseUrl||m.Va();l.mediaSource.addEventListener("sourceopen",function(){l.sourceBuffer=l.mediaSource.addSourceBuffer('video/flv; codecs="vp6,aac"');x.d(d,"vii")(c,m.h(l.sourceBuffer))},!1);var n=null;l.setCurrentTime=function(b){isNaN(b)||(l.Sc?(null!=n&&(window.clearTimeout(n),n=null),l.sourceBuffer&&l.sourceBuffer.updating?n=window.setTimeout(function(){l.setCurrentTime(b)},10):(this.sourceBuffer.abort(),x.d(e,"vid")(c,b),this.Lc=b)):
l.bb=b)};l.play=function(){this.trigger("durationchange");x.d(f,"vi")(c);return q.prototype.play.apply(this,arguments)};l.pause=function(){x.d(g,"vi")(c);return q.prototype.pause.apply(this,arguments)};k=b.options_||b.options();l.ec=!b.paused()||k.autoplay;l.fc=k.preload;return m.h(l)},function(b){return m.b(b).ec},function(b){b=m.b(b).fc;return"auto"===b?2:"metadata"===b?1:0},function(b){return m.b(b).currentTime()},function(b){var c=m.b(b);b=c.buffered();if(0<b.length)for(var d=0,c=c.currentTime(),
d=0;d<b.length;d++)if(b.start(d)<=c&&c<=b.end(d))return b.end(d)-c;return 0},function(b,c,d,e,f){b=m.b(b);b.addRemoteTextTrack&&b.addRemoteTextTrack({kind:"subtitles",label:G(c),language:G(d),src:G(f)})},function(b){console.log("STREAM END");m.b(b).mediaSource.endOfStream()},function(b){return-1==b?!0:m.b(b).updating},function(b,c,d,e){b=m.b(b);c=new Uint8Array(m.b(c));m.b(e).appendBuffer(c);b.Sc=!0;b.bb&&(e=b.bb,delete b.bb,b.setCurrentTime(e),b.play());return 0},function(b,c){m.b(b).setDuration(c)},
function(b,c){var d=m.b(b);d.el().vjs_setProperty("currentTime",c);d.Lc=null},function(b){b=m.b(b);return b.addTextTrack?(b=b.addTextTrack("metadata","Viblast Metadata Tags"))?m.h(b):-1:-1},function(b){b=m.b(b).videojs_api;return b&&b.addTextTrack?(b=b.addTextTrack("metadata","Viblast Metadata Tags"))?m.h(b):-1:-1},function(b){if(b=m.b(b))if(b.channelManager={},b.channelManager.totalUploadedToSwarm=0,b.channelManager.totalDownloadedFromSwarm=0,b.channelManager.totalDownloadedFromCdn=0,b.channelManager.blacklisted=
0,b.channelManager.permanentlyBlacklisted=0,b&&b.onInit)b.onInit()},function(b,c,d){if((b=m.b(b))&&b.onChunkDownloaded)b.onChunkDownloaded(c,{isCDNPeer:function(){return d}});return 0},function(b,c){var d=m.b(b);if(d&&d.onPeerStarted)d.onPeerStarted(c);return 0},function(b,c){var d=m.b(b);if(d&&d.onPeerStopped)d.onPeerStopped(c);return 0},function(b,c,d){if((b=m.b(b))&&b.onUpdateWindow)b.onUpdateWindow(c,d)},function(b,c,d,e){if((b=m.b(b))&&b.onHave)b.onHave({isCDNPeer:function(){return d}},c,e);
return 0},function(b,c){var d=m.b(b);if(d&&d.onChunkUploaded)d.onChunkUploaded(c)},function(b,c,d,e){if((b=m.b(b))&&b.onPeerBlacklisted){var f={};f.id=G(c);b.onPeerBlacklisted(f);b.channelManager.blacklisted=d;b.channelManager.permanentlyBlacklisted=e}},function(b){if((b=m.b(b))&&b.onCommJoined)b.onCommJoined()},function(b,c,d,e,f,g,k,l){function q(b){x.d(g,"vii")(f,b)}for(var n=[],r=0;r<4*e;r+=4){var B={};B.bitrate=La(c+(r+0)*d,"i32");B.horizontalResolution=La(c+(r+1)*d,"i32");B.verticalResolution=
La(c+(r+2)*d,"i32");B.video=La(c+(r+3)*d,"i32");n.push(B)}if((b=m.b(b))&&b.onAvailableVariantsUpdate)b.onAvailableVariantsUpdate(n,q,n[k],l)},function(b,c){var d=m.b(b);if(d&&d.onQualityChange)d.onQualityChange(c)},function(b,c,d,e,f,g){function k(b){b=m.j(b.id);x.d(g,"viii")(f,b[0],b[1])}b=m.b(b);var l=[];c=new Uint32Array(u.buffer,c,2*d);for(var q=0,n=0;n<d;n++){var r={};r.id=G(c[q]);r.bandwidth=c[q+1];q+=2;l.push(r)}if(b&&b.onAudioQualities)b.onAudioQualities(l,k,l[e])},function(b,c){var d=m.b(b);
if(d&&d.onAudioQualityChange)d.onAudioQualityChange(G(c))},function(b,c,d,e){(b=m.b(b))&&b.Xb&&(c=G(c),e=G(e),b.Xb(c,d,e))},function(b,c,d){(b=m.b(b))&&b.nb&&(c=m.b(c),d=G(d),b.nb(c,d))},function(b,c,d,e,f,g,k){(b=m.b(b))&&b.channelManager&&(b.channelManager.totalUploadedToSwarm=c,b.channelManager.totalDownloadedFromSwarm=d,b.channelManager.totalDownloadedFromCdn=e,b.channelManager.abi=f,b.channelManager.playedChunk=g,b.channelManager.lastOffsetOffer=k)},function(b,c){h.l.error(G(b,c))}];$a=8;
y=$a+115632;lb.push({I:function(){wb()}},{I:function(){xb()}},{I:function(){yb()}},{I:function(){zb()}},{I:function(){Ab()}});
M([0,0,0,0,0,0,240,63,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,128,255,255,255,255,255,255,255,255,96,103,0,0,105,158,1,0,72,0,0,0,0,0,0,0,56,103,0,0,87,158,1,0,96,103,0,0,147,158,1,0,72,0,0,0,0,0,0,0,56,103,0,0,189,158,1,0,56,103,0,0,238,158,1,0,136,103,0,0,31,159,1,0,0,0,0,0,1,0,0,0,56,0,0,0,3,244,255,255,136,103,0,0,78,159,1,0,0,0,0,0,1,0,0,0,80,0,0,0,3,244,255,255,136,103,0,0,125,159,1,0,0,0,0,0,1,0,0,0,56,0,0,0,3,244,255,255,136,103,0,0,172,159,1,0,0,0,0,0,1,0,0,0,80,0,0,
0,3,244,255,255,96,103,0,0,219,159,1,0,104,0,0,0,0,0,0,0,96,103,0,0,244,159,1,0,96,0,0,0,0,0,0,0,96,103,0,0,51,160,1,0,104,0,0,0,0,0,0,0,96,103,0,0,75,160,1,0,96,0,0,0,0,0,0,0,96,103,0,0,99,160,1,0,32,1,0,0,0,0,0,0,96,103,0,0,119,160,1,0,112,5,0,0,0,0,0,0,96,103,0,0,141,160,1,0,32,1,0,0,0,0,0,0,136,103,0,0,199,160,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,96,1,0,0,0,0,0,0,136,103,0,0,11,161,1,0,0,0,0,0,1,0,0,0,120,1,0,0,0,0,0,0,56,103,0,0,33,161,1,0,136,103,0,0,58,161,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,
0,0,160,1,0,0,0,0,0,0,136,103,0,0,126,161,1,0,0,0,0,0,1,0,0,0,120,1,0,0,0,0,0,0,136,103,0,0,167,161,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,216,1,0,0,0,0,0,0,136,103,0,0,235,161,1,0,0,0,0,0,1,0,0,0,240,1,0,0,0,0,0,0,56,103,0,0,1,162,1,0,136,103,0,0,26,162,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,24,2,0,0,0,0,0,0,136,103,0,0,94,162,1,0,0,0,0,0,1,0,0,0,240,1,0,0,0,0,0,0,136,103,0,0,180,163,1,0,0,0,0,0,3,0,0,0,32,1,0,0,2,0,0,0,88,2,0,0,2,0,0,0,96,2,0,0,0,8,0,0,56,103,0,0,27,164,1,0,56,103,0,0,249,163,1,0,136,
103,0,0,46,164,1,0,0,0,0,0,3,0,0,0,32,1,0,0,2,0,0,0,88,2,0,0,2,0,0,0,144,2,0,0,0,8,0,0,56,103,0,0,115,164,1,0,136,103,0,0,149,164,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,184,2,0,0,0,8,0,0,56,103,0,0,218,164,1,0,136,103,0,0,239,164,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,184,2,0,0,0,8,0,0,136,103,0,0,52,165,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,0,3,0,0,2,0,0,0,56,103,0,0,80,165,1,0,136,103,0,0,101,165,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,0,3,0,0,2,0,0,0,136,103,0,0,129,165,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,
0,0,0,0,3,0,0,2,0,0,0,136,103,0,0,157,165,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,0,3,0,0,2,0,0,0,136,103,0,0,200,165,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,136,3,0,0,0,0,0,0,56,103,0,0,14,166,1,0,136,103,0,0,50,166,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,176,3,0,0,0,0,0,0,56,103,0,0,120,166,1,0,136,103,0,0,151,166,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,216,3,0,0,0,0,0,0,56,103,0,0,221,166,1,0,136,103,0,0,246,166,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,0,4,0,0,0,0,0,0,56,103,0,0,60,167,1,0,136,103,0,0,85,167,
1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,40,4,0,0,2,0,0,0,56,103,0,0,106,167,1,0,136,103,0,0,1,168,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,40,4,0,0,2,0,0,0,96,103,0,0,130,167,1,0,96,4,0,0,0,0,0,0,136,103,0,0,165,167,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,128,4,0,0,2,0,0,0,56,103,0,0,200,167,1,0,96,103,0,0,223,167,1,0,96,4,0,0,0,0,0,0,136,103,0,0,22,168,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,128,4,0,0,2,0,0,0,136,103,0,0,56,168,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,128,4,0,0,2,0,0,0,136,103,0,0,90,168,1,0,0,0,
0,0,2,0,0,0,32,1,0,0,2,0,0,0,128,4,0,0,2,0,0,0,96,103,0,0,125,168,1,0,32,1,0,0,0,0,0,0,136,103,0,0,147,168,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,40,5,0,0,2,0,0,0,56,103,0,0,165,168,1,0,136,103,0,0,186,168,1,0,0,0,0,0,2,0,0,0,32,1,0,0,2,0,0,0,40,5,0,0,2,0,0,0,96,103,0,0,215,168,1,0,32,1,0,0,0,0,0,0,96,103,0,0,236,168,1,0,32,1,0,0,0,0,0,0,56,103,0,0,65,169,1,0,96,103,0,0,145,170,1,0,136,5,0,0,0,0,0,0,96,103,0,0,62,170,1,0,152,5,0,0,0,0,0,0,56,103,0,0,95,170,1,0,96,103,0,0,108,170,1,0,120,5,0,0,0,0,0,
0,96,103,0,0,179,170,1,0,120,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,248,255,255,255,0,0,0,0,16,0,0,0,17,0,0,0,1,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,20,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,56,0,0,0,248,255,255,255,0,0,0,0,23,0,0,0,24,0,0,0,192,255,255,255,192,255,
255,255,0,0,0,0,25,0,0,0,26,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,27,0,0,0,28,0,0,0,192,255,255,255,192,255,255,255,0,0,0,0,29,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,108,6,0,0,56,7,0,0,168,6,0,0,188,6,0,0,80,16,0,0,100,16,0,0,96,7,0,0,76,7,0,0,148,6,0,0,128,6,0,0,64,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,34,0,0,0,56,0,0,0,248,255,255,255,0,0,0,0,35,0,0,0,36,0,0,0,192,255,255,255,192,255,255,255,0,0,0,0,37,0,
0,0,38,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,252,255,255,255,0,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,46,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,48,0,0,0,49,0,0,0,41,0,0,0,252,255,255,255,0,0,0,0,50,0,0,0,51,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,52,0,0,0,53,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,57,0,0,0,58,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,6,0,0,0,0,0,0,0,0,0,
0,0,62,0,0,0,63,0,0,0,7,0,0,0,64,0,0,0,8,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,66,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,67,0,0,0,68,0,0,0,11,0,0,0,1,0,0,0,12,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,69,0,0,0,70,0,0,0,13,0,0,0,1,0,0,0,14,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,71,0,0,0,72,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,73,0,0,0,74,0,0,0,17,0,0,0,7,0,0,0,18,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,75,0,0,0,76,0,0,0,41,0,0,0,252,255,255,255,0,0,0,0,77,0,0,0,78,0,0,0,44,0,0,
0,45,0,0,0,236,255,255,255,0,0,0,0,79,0,0,0,80,0,0,0,0,0,0,0,0,0,0,0,81,0,0,0,82,0,0,0,8,0,0,0,2,0,0,0,252,255,255,255,0,0,0,0,83,0,0,0,84,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,86,0,0,0,9,0,0,0,3,0,0,0,252,255,255,255,0,0,0,0,87,0,0,0,88,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,89,0,0,0,90,0,0,0,10,0,0,0,4,0,0,0,252,255,255,255,0,0,0,0,91,0,0,0,92,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,93,0,0,0,94,0,0,0,11,0,0,0,5,0,0,0,252,255,255,255,0,0,0,0,95,0,0,0,96,0,0,0,44,0,0,0,45,0,0,0,0,0,0,
0,0,0,0,0,97,0,0,0,98,0,0,0,12,0,0,0,6,0,0,0,252,255,255,255,0,0,0,0,99,0,0,0,100,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,101,0,0,0,102,0,0,0,13,0,0,0,7,0,0,0,252,255,255,255,0,0,0,0,103,0,0,0,104,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,105,0,0,0,106,0,0,0,14,0,0,0,8,0,0,0,252,255,255,255,0,0,0,0,107,0,0,0,108,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,109,0,0,0,110,0,0,0,15,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,111,0,0,0,112,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,113,0,0,0,114,0,0,0,16,0,0,0,10,0,
0,0,252,255,255,255,0,0,0,0,115,0,0,0,116,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,118,0,0,0,17,0,0,0,11,0,0,0,252,255,255,255,0,0,0,0,119,0,0,0,120,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,121,0,0,0,122,0,0,0,18,0,0,0,12,0,0,0,252,255,255,255,0,0,0,0,123,0,0,0,124,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,125,0,0,0,126,0,0,0,19,0,0,0,13,0,0,0,252,255,255,255,0,0,0,0,127,0,0,0,128,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,129,0,0,0,130,0,0,0,20,0,0,0,14,0,0,0,252,255,255,255,0,0,0,0,131,0,0,0,
132,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,133,0,0,0,134,0,0,0,21,0,0,0,15,0,0,0,252,255,255,255,0,0,0,0,135,0,0,0,136,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,137,0,0,0,138,0,0,0,22,0,0,0,16,0,0,0,252,255,255,255,0,0,0,0,139,0,0,0,140,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,141,0,0,0,142,0,0,0,23,0,0,0,17,0,0,0,252,255,255,255,0,0,0,0,143,0,0,0,144,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,145,0,0,0,146,0,0,0,24,0,0,0,18,0,0,0,252,255,255,255,0,0,0,0,147,0,0,0,148,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,
0,0,0,149,0,0,0,150,0,0,0,25,0,0,0,19,0,0,0,252,255,255,255,0,0,0,0,151,0,0,0,152,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,149,0,0,0,153,0,0,0,25,0,0,0,19,0,0,0,252,255,255,255,0,0,0,0,154,0,0,0,155,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,81,0,0,0,156,0,0,0,8,0,0,0,2,0,0,0,252,255,255,255,0,0,0,0,157,0,0,0,158,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,145,0,0,0,159,0,0,0,24,0,0,0,18,0,0,0,252,255,255,255,0,0,0,0,160,0,0,0,161,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,141,0,0,0,162,0,0,0,23,0,0,0,17,0,
0,0,252,255,255,255,0,0,0,0,163,0,0,0,164,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,125,0,0,0,165,0,0,0,19,0,0,0,13,0,0,0,252,255,255,255,0,0,0,0,166,0,0,0,167,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,137,0,0,0,168,0,0,0,22,0,0,0,16,0,0,0,252,255,255,255,0,0,0,0,169,0,0,0,170,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,133,0,0,0,171,0,0,0,21,0,0,0,15,0,0,0,252,255,255,255,0,0,0,0,172,0,0,0,173,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,129,0,0,0,174,0,0,0,20,0,0,0,14,0,0,0,252,255,255,255,0,0,0,0,175,0,0,0,
176,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,121,0,0,0,177,0,0,0,18,0,0,0,12,0,0,0,252,255,255,255,0,0,0,0,178,0,0,0,179,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,180,0,0,0,17,0,0,0,11,0,0,0,252,255,255,255,0,0,0,0,181,0,0,0,182,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,113,0,0,0,183,0,0,0,16,0,0,0,10,0,0,0,252,255,255,255,0,0,0,0,184,0,0,0,185,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,109,0,0,0,186,0,0,0,15,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,187,0,0,0,188,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,
0,0,0,105,0,0,0,189,0,0,0,14,0,0,0,8,0,0,0,252,255,255,255,0,0,0,0,190,0,0,0,191,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,101,0,0,0,192,0,0,0,13,0,0,0,7,0,0,0,252,255,255,255,0,0,0,0,193,0,0,0,194,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,93,0,0,0,195,0,0,0,11,0,0,0,5,0,0,0,252,255,255,255,0,0,0,0,196,0,0,0,197,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,97,0,0,0,198,0,0,0,12,0,0,0,6,0,0,0,252,255,255,255,0,0,0,0,199,0,0,0,200,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,89,0,0,0,201,0,0,0,10,0,0,0,4,0,0,0,252,
255,255,255,0,0,0,0,202,0,0,0,203,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,204,0,0,0,9,0,0,0,3,0,0,0,252,255,255,255,0,0,0,0,205,0,0,0,206,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,207,0,0,0,208,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,209,0,0,0,210,0,0,0,0,0,0,0,0,0,0,0,211,0,0,0,212,0,0,0,26,0,0,0,20,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,213,0,0,0,214,0,0,0,200,255,255,255,200,255,255,255,0,0,0,0,215,0,0,0,216,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,217,0,0,0,218,0,0,0,200,255,255,255,200,255,255,
255,0,0,0,0,219,0,0,0,220,0,0,0,120,16,0,0,80,16,0,0,100,16,0,0,140,16,0,0,0,0,0,0,0,0,0,0,221,0,0,0,222,0,0,0,3,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,223,0,0,0,224,0,0,0,22,0,0,0,27,0,0,0,23,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,225,0,0,0,24,0,0,0,226,0,0,0,25,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,227,0,0,0,228,0,0,0,26,0,0,0,20,0,0,0,27,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,229,0,0,0,230,0,0,0,28,0,0,0,4,0,0,0,29,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,231,0,0,0,232,0,0,0,30,0,0,0,5,0,0,0,31,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,
73,0,0,0,233,0,0,0,32,0,0,0,28,0,0,0,33,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,71,0,0,0,234,0,0,0,34,0,0,0,6,0,0,0,35,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,235,0,0,0,236,0,0,0,36,0,0,0,21,0,0,0,37,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,237,0,0,0,238,0,0,0,29,0,0,0,22,0,0,0,252,255,255,255,0,0,0,0,239,0,0,0,240,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,237,0,0,0,241,0,0,0,29,0,0,0,22,0,0,0,252,255,255,255,0,0,0,0,242,0,0,0,243,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,244,0,0,0,245,0,0,0,30,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,246,
0,0,0,247,0,0,0,31,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,248,0,0,0,249,0,0,0,32,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,250,0,0,0,251,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,253,0,0,0,1,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,254,0,0,0,255,0,0,0,41,0,0,0,252,255,255,255,0,0,0,0,0,1,0,0,1,1,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,2,1,0,0,3,1,0,0,0,0,0,0,0,0,0,0,4,1,0,0,5,1,0,0,33,0,0,0,23,0,0,0,252,255,255,255,0,0,0,0,6,1,0,0,7,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,8,1,0,0,9,1,0,0,34,0,0,0,24,0,0,
0,252,255,255,255,0,0,0,0,10,1,0,0,11,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,12,1,0,0,13,1,0,0,35,0,0,0,25,0,0,0,252,255,255,255,0,0,0,0,14,1,0,0,15,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,16,1,0,0,17,1,0,0,18,1,0,0,0,0,0,0,0,0,0,0,12,1,0,0,19,1,0,0,35,0,0,0,25,0,0,0,252,255,255,255,0,0,0,0,20,1,0,0,21,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,8,1,0,0,22,1,0,0,34,0,0,0,24,0,0,0,252,255,255,255,0,0,0,0,23,1,0,0,24,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,4,1,0,0,25,1,0,0,33,0,0,0,23,0,0,0,252,255,255,
255,0,0,0,0,26,1,0,0,27,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,28,1,0,0,29,1,0,0,42,0,0,0,36,0,0,0,43,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,30,1,0,0,31,1,0,0,44,0,0,0,37,0,0,0,45,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,32,1,0,0,33,1,0,0,38,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,16,1,0,0,34,1,0,0,18,1,0,0,0,0,0,0,0,0,0,0,35,1,0,0,36,1,0,0,47,0,0,0,39,0,0,0,48,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,37,1,0,0,38,1,0,0,49,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,39,1,0,0,50,0,0,0,40,1,0,0,51,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,
0,0,0,41,1,0,0,42,1,0,0,41,0,0,0,252,255,255,255,0,0,0,0,43,1,0,0,44,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,45,1,0,0,46,1,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,73,0,0,0,47,1,0,0,52,0,0,0,42,0,0,0,53,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,48,1,0,0,49,1,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,50,1,0,0,51,1,0,0,41,0,0,0,252,255,255,255,0,0,0,0,52,1,0,0,53,1,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,54,1,0,0,55,1,0,0,0,0,0,0,0,0,0,0,56,1,0,0,57,1,0,0,43,0,0,0,26,0,0,0,252,255,255,255,0,0,0,0,58,1,0,0,59,1,0,
0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,60,1,0,0,61,1,0,0,44,0,0,0,27,0,0,0,252,255,255,255,0,0,0,0,62,1,0,0,63,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,60,1,0,0,64,1,0,0,44,0,0,0,27,0,0,0,252,255,255,255,0,0,0,0,65,1,0,0,66,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,56,1,0,0,67,1,0,0,43,0,0,0,26,0,0,0,252,255,255,255,0,0,0,0,68,1,0,0,69,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,70,1,0,0,71,1,0,0,45,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,72,1,0,0,54,0,0,0,73,1,0,0,55,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,74,1,0,0,75,1,0,
0,76,1,0,0,77,1,0,0,0,0,0,0,0,0,0,0,78,1,0,0,79,1,0,0,56,0,0,0,28,0,0,0,57,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,80,1,0,0,81,1,0,0,58,0,0,0,0,0,0,0,0,0,0,0,82,1,0,0,83,1,0,0,240,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,84,1,0,0,85,1,0,0,41,0,0,0,236,255,255,255,0,0,0,0,86,1,0,0,87,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,231,0,0,0,88,1,0,0,59,0,0,0,7,0,0,0,60,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,89,1,0,0,90,1,0,0,29,0,0,0,61,0,0,0,0,0,0,0,0,0,0,0,91,1,0,0,92,1,0,0,240,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,93,
1,0,0,94,1,0,0,41,0,0,0,236,255,255,255,0,0,0,0,95,1,0,0,96,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,97,1,0,0,98,1,0,0,99,1,0,0,0,0,0,0,0,0,0,0,100,1,0,0,101,1,0,0,99,1,0,0,46,0,0,0,248,255,255,255,0,0,0,0,102,1,0,0,103,1,0,0,47,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,104,1,0,0,105,1,0,0,0,0,0,0,0,0,0,0,106,1,0,0,107,1,0,0,0,0,0,0,0,0,0,0,89,1,0,0,108,1,0,0,30,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,109,1,0,0,110,1,0,0,49,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,71,0,0,0,111,1,0,0,64,0,0,0,8,0,0,0,65,0,0,0,25,0,0,0,
0,0,0,0,0,0,0,0,48,1,0,0,112,1,0,0,0,0,0,0,0,0,0,0,62,0,0,0,113,1,0,0,66,0,0,0,114,1,0,0,67,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,115,1,0,0,116,1,0,0,0,0,0,0,0,0,0,0,117,1,0,0,118,1,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,119,1,0,0,120,1,0,0,41,0,0,0,31,0,0,0,68,0,0,0,69,0,0,0,121,1,0,0,122,1,0,0,50,0,0,0,51,0,0,0,252,255,255,255,0,0,0,0,123,1,0,0,124,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,125,1,0,0,126,1,0,0,41,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,252,255,255,255,0,
0,0,0,127,1,0,0,128,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,129,1,0,0,130,1,0,0,41,0,0,0,252,255,255,255,0,0,0,0,131,1,0,0,132,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,133,1,0,0,70,0,0,0,134,1,0,0,71,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,67,0,0,0,135,1,0,0,72,0,0,0,32,0,0,0,73,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,136,1,0,0,137,1,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,138,1,0,0,139,1,0,0,41,0,0,0,33,0,0,0,74,0,0,0,75,0,0,0,140,1,0,0,141,1,0,0,52,0,0,0,53,0,0,0,252,255,255,255,0,0,
0,0,142,1,0,0,143,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,144,1,0,0,145,1,0,0,0,0,0,0,0,0,0,0,146,1,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,147,1,0,0,58,0,0,0,59,0,0,0,148,1,0,0,149,1,0,0,60,0,0,0,150,1,0,0,61,0,0,0,252,255,255,255,0,0,0,0,62,0,0,0,63,0,0,0,248,255,255,255,0,0,0,0,151,1,0,0,64,0,0,0,0,0,0,0,0,0,0,0,152,1,0,0,153,1,0,0,154,1,0,0,155,1,0,0,0,0,0,0,0,0,0,0,54,0,0,0,156,1,0,0,157,1,0,0,0,0,0,0,0,0,0,0,158,1,0,0,159,1,0,0,0,0,0,0,0,0,0,0,158,1,0,0,160,1,0,0,0,0,0,0,0,0,0,0,158,
1,0,0,161,1,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,162,1,0,0,163,1,0,0,41,0,0,0,252,255,255,255,0,0,0,0,164,1,0,0,165,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,166,1,0,0,167,1,0,0,65,0,0,0,34,0,0,0,252,255,255,255,0,0,0,0,168,1,0,0,169,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,170,1,0,0,171,1,0,0,66,0,0,0,35,0,0,0,252,255,255,255,0,0,0,0,172,1,0,0,173,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,170,1,0,0,174,1,0,0,66,0,0,0,35,0,0,0,252,255,255,255,0,0,0,0,175,1,0,0,176,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,
0,166,1,0,0,177,1,0,0,65,0,0,0,34,0,0,0,252,255,255,255,0,0,0,0,178,1,0,0,179,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,180,1,0,0,181,1,0,0,41,0,0,0,29,0,0,0,30,0,0,0,252,255,255,255,0,0,0,0,182,1,0,0,183,1,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,184,1,0,0,185,1,0,0,0,0,0,0,0,0,0,0,186,1,0,0,187,1,0,0,0,0,0,0,0,0,0,0,188,1,0,0,189,1,0,0,1,0,0,0,190,1,0,0,191,1,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,76,0,0,0,77,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,
1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,78,0,0,0,67,0,0,0,79,0,0,0,192,1,0,0,193,1,0,0,0,0,0,0,0,0,0,0,194,1,0,0,195,1,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,196,1,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,197,1,0,0,72,0,0,0,73,0,0,0,198,1,0,0,199,1,0,0,0,0,
0,0,0,0,0,0,74,0,0,0,75,0,0,0,80,0,0,0,81,0,0,0,200,1,0,0,201,1,0,0,0,0,0,0,0,0,0,0,76,0,0,0,77,0,0,0,82,0,0,0,83,0,0,0,200,1,0,0,202,1,0,0,0,0,0,0,0,0,0,0,203,1,0,0,78,0,0,0,84,0,0,0,85,0,0,0,204,1,0,0,205,1,0,0,0,0,0,0,0,0,0,0,206,1,0,0,207,1,0,0,0,0,0,0,0,0,0,0,208,1,0,0,209,1,0,0,210,1,0,0,0,0,0,0,0,0,0,0,211,1,0,0,212,1,0,0,210,1,0,0,79,0,0,0,248,255,255,255,0,0,0,0,213,1,0,0,214,1,0,0,80,0,0,0,81,0,0,0,0,0,0,0,0,0,0,0,48,1,0,0,215,1,0,0,0,0,0,0,0,0,0,0,216,1,0,0,217,1,0,0,0,0,0,0,0,0,0,0,218,
1,0,0,219,1,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,220,1,0,0,221,1,0,0,41,0,0,0,252,255,255,255,0,0,0,0,222,1,0,0,223,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,224,1,0,0,225,1,0,0,82,0,0,0,36,0,0,0,252,255,255,255,0,0,0,0,226,1,0,0,227,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,224,1,0,0,228,1,0,0,82,0,0,0,36,0,0,0,252,255,255,255,0,0,0,0,229,1,0,0,230,1,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,231,1,0,0,232,1,0,0,0,0,0,0,0,0,0,0,233,1,0,0,234,1,0,0,86,0,0,0,83,0,0,0,87,0,0,0,31,0,0,0,6,0,0,0,0,0,0,
0,0,0,0,0,235,1,0,0,236,1,0,0,0,0,0,0,0,0,0,0,237,1,0,0,238,1,0,0,32,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,239,1,0,0,240,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,241,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,242,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,243,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,244,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,245,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,246,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,247,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,248,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,249,1,0,0,0,0,0,0,0,0,0,0,250,1,0,0,251,1,0,0,0,0,0,0,0,0,0,0,239,1,
0,0,252,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,253,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,254,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,255,1,0,0,0,0,0,0,0,0,0,0,239,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1,2,0,0,2,2,0,0,0,0,0,0,0,0,0,0,3,2,0,0,4,2,0,0,0,0,0,0,0,0,0,0,54,0,0,0,5,2,0,0,6,2,0,0,0,0,0,0,0,0,0,0,88,0,0,0,84,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0,88,0,0,0,84,0,0,0,86,0,0,0,0,0,0,0,0,0,0,0,88,0,0,0,84,0,0,0,87,0,0,0,0,0,0,0,0,0,0,0,7,2,0,0,8,2,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,
1,0,0,0,1,0,0,0,1,0,0,0,89,0,0,0,90,0,0,0,2,0,0,0,91,0,0,0,9,2,0,0,92,0,0,0,10,2,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,11,2,0,0,12,2,0,0,13,2,0,0,0,0,0,0,0,0,0,0,10,0,0,0,14,2,0,0,12,0,0,0,0,0,0,0,0,0,0,0,11,2,0,0,15,2,0,0,13,2,0,0,0,0,0,0,0,0,0,0,16,2,0,0,17,2,0,0,88,0,0,0,89,0,0,0,18,2,0,0,19,2,0,0,20,2,0,0,93,0,0,0,94,0,0,0,90,0,0,0,95,0,0,0,1,0,0,0,37,0,0,0,1,0,0,0,1,0,0,0,89,0,0,0,90,0,0,0,3,0,0,0,91,0,0,0,9,2,0,0,92,0,0,0,10,2,0,
0,21,2,0,0,22,2,0,0,23,2,0,0,24,2,0,0,25,2,0,0,26,2,0,0,27,2,0,0,28,2,0,0,29,2,0,0,30,2,0,0,1,0,0,0,91,0,0,0,96,0,0,0,2,0,0,0,2,0,0,0,228,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,31,2,0,0,32,2,0,0,41,0,0,0,224,255,255,255,0,0,0,0,33,2,0,0,34,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,35,2,0,0,36,2,0,0,97,0,0,0,10,0,0,0,98,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,37,2,0,0,38,2,0,0,99,0,0,0,92,0,0,0,100,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,231,0,0,0,39,2,0,0,101,0,0,0,11,0,0,0,102,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,40,2,0,0,41,
2,0,0,103,0,0,0,93,0,0,0,104,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,235,0,0,0,42,2,0,0,105,0,0,0,38,0,0,0,106,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,43,2,0,0,44,2,0,0,95,0,0,0,39,0,0,0,252,255,255,255,0,0,0,0,45,2,0,0,46,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,43,2,0,0,47,2,0,0,95,0,0,0,39,0,0,0,252,255,255,255,0,0,0,0,48,2,0,0,49,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,50,2,0,0,51,2,0,0,1,0,0,0,52,2,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,53,2,0,0,54,
2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,1,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,55,2,0,0,56,2,0,0,57,2,0,0,52,2,0,0,98,0,0,0,41,0,0,0,99,0,0,0,12,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,100,0,0,0,53,2,0,0,54,2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,58,2,0,0,40,0,0,0,0,0,0,0,0,0,0,0,59,2,0,0,60,2,0,0,61,2,0,0,52,2,0,0,101,0,0,0,46,0,0,0,102,0,0,0,13,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,103,0,0,0,53,2,0,0,54,2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,
109,0,0,0,110,0,0,0,62,2,0,0,40,0,0,0,236,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,63,2,0,0,64,2,0,0,41,0,0,0,232,255,255,255,0,0,0,0,65,2,0,0,66,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,28,1,0,0,67,2,0,0,111,0,0,0,104,0,0,0,112,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,68,2,0,0,69,2,0,0,70,2,0,0,52,2,0,0,105,0,0,0,51,0,0,0,106,0,0,0,14,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,107,0,0,0,53,2,0,0,54,2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,71,2,0,0,40,0,0,0,113,0,0,0,108,0,0,0,0,0,0,0,0,0,0,
0,72,2,0,0,73,2,0,0,74,2,0,0,0,0,0,0,0,0,0,0,75,2,0,0,76,2,0,0,109,0,0,0,0,0,0,0,0,0,0,0,77,2,0,0,78,2,0,0,79,2,0,0,52,2,0,0,110,0,0,0,56,0,0,0,111,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,112,0,0,0,53,2,0,0,54,2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,80,2,0,0,40,0,0,0,0,0,0,0,0,0,0,0,75,2,0,0,81,2,0,0,113,0,0,0,0,0,0,0,0,0,0,0,82,2,0,0,83,2,0,0,84,2,0,0,52,2,0,0,114,0,0,0,61,0,0,0,115,0,0,0,16,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,116,0,0,0,53,2,0,0,54,2,0,0,
96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,85,2,0,0,40,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,75,2,0,0,86,2,0,0,117,0,0,0,0,0,0,0,0,0,0,0,87,2,0,0,88,2,0,0,84,2,0,0,52,2,0,0,114,0,0,0,61,0,0,0,115,0,0,0,16,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,116,0,0,0,53,2,0,0,54,2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,85,2,0,0,40,0,0,0,118,0,0,0,17,0,0,0,18,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,
0,0,0,0,0,0,0,0,0,68,2,0,0,89,2,0,0,70,2,0,0,52,2,0,0,105,0,0,0,72,0,0,0,119,0,0,0,19,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,120,0,0,0,53,2,0,0,90,2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,71,2,0,0,40,0,0,0,113,0,0,0,108,0,0,0,0,0,0,0,0,0,0,0,91,2,0,0,92,2,0,0,70,2,0,0,52,2,0,0,105,0,0,0,72,0,0,0,119,0,0,0,20,0,0,0,77,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,120,0,0,0,53,2,0,0,90,2,0,0,96,0,0,0,107,0,0,0,108,0,0,0,97,0,0,0,109,0,0,0,110,0,0,0,71,2,0,0,40,0,0,0,114,0,0,0,121,0,0,0,
2,0,0,0,176,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,93,2,0,0,94,2,0,0,41,0,0,0,172,255,255,255,0,0,0,0,95,2],"i8",4,x.D);
M([96,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,28,1,0,0,97,2,0,0,115,0,0,0,122,0,0,0,116,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,98,2,0,0,99,2,0,0,117,0,0,0,3,0,0,0,118,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,100,2,0,0,101,2,0,0,41,0,0,0,78,0,0,0,123,0,0,0,252,255,255,255,0,0,0,0,102,2,0,0,103,2,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,104,2,0,0,105,2,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,106,2,0,0,107,2,0,0,41,0,0,0,108,2,0,0,109,2,0,0,124,0,0,0,252,255,255,255,0,0,0,0,110,2,0,0,111,2,0,0,44,0,0,
0,45,0,0,0,236,255,255,255,0,0,0,0,112,2,0,0,113,2,0,0,114,2,0,0,115,2,0,0,125,0,0,0,0,0,0,0,0,0,0,0,221,0,0,0,116,2,0,0,21,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,117,2,0,0,118,2,0,0,126,0,0,0,120,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,119,2,0,0,120,2,0,0,41,0,0,0,42,0,0,0,30,0,0,0,252,255,255,255,0,0,0,0,121,2,0,0,122,2,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,123,2,0,0,124,2,0,0,0,0,0,0,0,0,0,0,28,1,0,0,125,2,0,0,121,0,0,0,127,0,0,0,122,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,126,2,0,0,127,2,0,0,128,2,0,0,
0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,129,2,0,0,130,2,0,0,41,0,0,0,1,0,0,0,252,255,255,255,0,0,0,0,131,2,0,0,132,2,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,133,2,0,0,134,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,117,2,0,0,135,2,0,0,128,0,0,0,123,0,0,0,0,0,0,0,0,0,0,0,136,2,0,0,137,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,126,2,0,0,138,2,0,0,128,2,0,0,0,0,0,0,0,0,0,0,139,2,0,0,140,2,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,141,2,0,0,142,2,0,0,143,2,0,0,0,0,0,0,0,0,0,0,144,2,0,0,145,2,0,0,146,2,0,0,0,0,0,0,0,0,0,0,147,
2,0,0,148,2,0,0,149,2,0,0,0,0,0,0,0,0,0,0,150,2,0,0,151,2,0,0,152,2,0,0,0,0,0,0,0,0,0,0,150,2,0,0,153,2,0,0,152,2,0,0,0,0,0,0,0,0,0,0,147,2,0,0,154,2,0,0,149,2,0,0,0,0,0,0,0,0,0,0,144,2,0,0,155,2,0,0,146,2,0,0,0,0,0,0,0,0,0,0,141,2,0,0,156,2,0,0,143,2,0,0,0,0,0,0,0,0,0,0,157,2,0,0,158,2,0,0,159,2,0,0,0,0,0,0,0,0,0,0,157,2,0,0,160,2,0,0,159,2,0,0,0,0,0,0,0,0,0,0,161,2,0,0,162,2,0,0,0,0,0,0,0,0,0,0,163,2,0,0,164,2,0,0,0,0,0,0,0,0,0,0,211,0,0,0,165,2,0,0,129,0,0,0,124,0,0,0,0,0,0,0,0,0,0,0,166,2,0,0,
167,2,0,0,0,0,0,0,0,0,0,0,89,1,0,0,168,2,0,0,79,0,0,0,125,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,150,48,7,119,44,97,14,238,186,81,9,153,25,196,109,7,143,244,106,112,53,165,99,233,163,149,100,158,50,136,219,14,164,184,220,121,30,233,213,224,136,217,210,151,43,76,182,9,189,124,177,126,7,45,184,231,145,29,191,144,100,16,183,29,242,32,176,106,72,113,185,243,222,65,190,132,125,212,218,26,235,228,221,109,81,181,212,244,199,133,211,131,86,152,108,19,192,168,107,100,122,249,98,253,236,201,101,138,79,92,1,20,217,108,
6,99,99,61,15,250,245,13,8,141,200,32,110,59,94,16,105,76,228,65,96,213,114,113,103,162,209,228,3,60,71,212,4,75,253,133,13,210,107,181,10,165,250,168,181,53,108,152,178,66,214,201,187,219,64,249,188,172,227,108,216,50,117,92,223,69,207,13,214,220,89,61,209,171,172,48,217,38,58,0,222,81,128,81,215,200,22,97,208,191,181,244,180,33,35,196,179,86,153,149,186,207,15,165,189,184,158,184,2,40,8,136,5,95,178,217,12,198,36,233,11,177,135,124,111,47,17,76,104,88,171,29,97,193,61,45,102,182,144,65,220,118,
6,113,219,1,188,32,210,152,42,16,213,239,137,133,177,113,31,181,182,6,165,228,191,159,51,212,184,232,162,201,7,120,52,249,0,15,142,168,9,150,24,152,14,225,187,13,106,127,45,61,109,8,151,108,100,145,1,92,99,230,244,81,107,107,98,97,108,28,216,48,101,133,78,0,98,242,237,149,6,108,123,165,1,27,193,244,8,130,87,196,15,245,198,217,176,101,80,233,183,18,234,184,190,139,124,136,185,252,223,29,221,98,73,45,218,21,243,124,211,140,101,76,212,251,88,97,178,77,206,81,181,58,116,0,188,163,226,48,187,212,65,165,
223,74,215,149,216,61,109,196,209,164,251,244,214,211,106,233,105,67,252,217,110,52,70,136,103,173,208,184,96,218,115,45,4,68,229,29,3,51,95,76,10,170,201,124,13,221,60,113,5,80,170,65,2,39,16,16,11,190,134,32,12,201,37,181,104,87,179,133,111,32,9,212,102,185,159,228,97,206,14,249,222,94,152,201,217,41,34,152,208,176,180,168,215,199,23,61,179,89,129,13,180,46,59,92,189,183,173,108,186,192,32,131,184,237,182,179,191,154,12,226,182,3,154,210,177,116,57,71,213,234,175,119,210,157,21,38,219,4,131,22,
220,115,18,11,99,227,132,59,100,148,62,106,109,13,168,90,106,122,11,207,14,228,157,255,9,147,39,174,0,10,177,158,7,125,68,147,15,240,210,163,8,135,104,242,1,30,254,194,6,105,93,87,98,247,203,103,101,128,113,54,108,25,231,6,107,110,118,27,212,254,224,43,211,137,90,122,218,16,204,74,221,103,111,223,185,249,249,239,190,142,67,190,183,23,213,142,176,96,232,163,214,214,126,147,209,161,196,194,216,56,82,242,223,79,241,103,187,209,103,87,188,166,221,6,181,63,75,54,178,72,218,43,13,216,76,27,10,175,246,74,
3,54,96,122,4,65,195,239,96,223,85,223,103,168,239,142,110,49,121,190,105,70,140,179,97,203,26,131,102,188,160,210,111,37,54,226,104,82,149,119,12,204,3,71,11,187,185,22,2,34,47,38,5,85,190,59,186,197,40,11,189,178,146,90,180,43,4,106,179,92,167,255,215,194,49,207,208,181,139,158,217,44,29,174,222,91,176,194,100,155,38,242,99,236,156,163,106,117,10,147,109,2,169,6,9,156,63,54,14,235,133,103,7,114,19,87,0,5,130,74,191,149,20,122,184,226,174,43,177,123,56,27,182,12,155,142,210,146,13,190,213,229,183,
239,220,124,33,223,219,11,212,210,211,134,66,226,212,241,248,179,221,104,110,131,218,31,205,22,190,129,91,38,185,246,225,119,176,111,119,71,183,24,230,90,8,136,112,106,15,255,202,59,6,102,92,11,1,17,255,158,101,143,105,174,98,248,211,255,107,97,69,207,108,22,120,226,10,160,238,210,13,215,84,131,4,78,194,179,3,57,97,38,103,167,247,22,96,208,77,71,105,73,219,119,110,62,74,106,209,174,220,90,214,217,102,11,223,64,240,59,216,55,83,174,188,169,197,158,187,222,127,207,178,71,233,255,181,48,28,242,189,189,
138,194,186,202,48,147,179,83,166,163,180,36,5,54,208,186,147,6,215,205,41,87,222,84,191,103,217,35,46,122,102,179,184,74,97,196,2,27,104,93,148,43,111,42,55,190,11,180,161,142,12,195,27,223,5,90,141,239,2,45,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,169,2,0,0,170,2,0,0,41,0,0,0,252,255,255,255,0,0,0,0,171,2,0,0,172,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,173,2,0,0,174,2,0,0,130,0,0,0,80,0,0,0,252,255,255,255,0,0,0,0,175,2,0,0,176,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,173,2,0,0,177,2,0,0,130,0,0,0,80,0,0,
0,252,255,255,255,0,0,0,0,178,2,0,0,179,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,180,2,0,0,181,2,0,0,88,0,0,0,131,0,0,0,18,2,0,0,19,2,0,0,20,2,0,0,93,0,0,0,94,0,0,0,90,0,0,0,95,0,0,0,132,0,0,0,37,0,0,0,1,0,0,0,1,0,0,0,89,0,0,0,126,0,0,0,3,0,0,0,91,0,0,0,9,2,0,0,92,0,0,0,10,2,0,0,21,2,0,0,22,2,0,0,23,2,0,0,24,2,0,0,25,2,0,0,26,2,0,0,27,2,0,0,28,2,0,0,29,2,0,0,30,2,0,0,133,0,0,0,91,0,0,0,96,0,0,0,2,0,0,0,2,0,0,0,228,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,182,2,0,0,183,2,0,0,41,0,0,0,224,255,255,255,0,0,
0,0,184,2,0,0,185,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,186,2,0,0,187,2,0,0,0,0,0,0,0,0,0,0,188,2,0,0,189,2,0,0,190,2,0,0,190,1,0,0,191,1,0,0,127,0,0,0,134,0,0,0,128,0,0,0,129,0,0,0,76,0,0,0,77,0,0,0,44,0,0,0,9,0,0,0,22,0,0,0,45,0,0,0,130,0,0,0,131,0,0,0,191,2,0,0,81,0,0,0,82,0,0,0,192,2,0,0,46,0,0,0,193,2,0,0,83,0,0,0,135,0,0,0,2,0,0,0,194,2,0,0,78,0,0,0,67,0,0,0,79,0,0,0,192,1,0,0,193,1,0,0,216,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,195,2,0,0,196,2,0,0,41,0,0,0,212,255,255,255,0,0,0,0,197,
2,0,0,198,2,0,0,44,0,0,0,45,0,0,0,196,255,255,255,0,0,0,0,199,2,0,0,200,2,0,0,0,0,0,0,0,0,0,0,106,1,0,0,201,2,0,0,0,0,0,0,0,0,0,0,89,1,0,0,202,2,0,0,84,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,203,2,0,0,204,2,0,0,133,0,0,0,0,0,0,0,0,0,0,0,205,2,0,0,206,2,0,0,134,0,0,0,136,0,0,0,135,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,207,2,0,0,208,2,0,0,0,0,0,0,0,0,0,0,89,1,0,0,209,2,0,0,85,0,0,0,136,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,210,2,0,0,211,2,0,0,137,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,212,2,0,0,213,2,0,0,0,0,0,0,0,0,0,
0,214,2,0,0,215,2,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,216,2,0,0,217,2,0,0,41,0,0,0,86,0,0,0,137,0,0,0,252,255,255,255,0,0,0,0,218,2,0,0,219,2,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,220,2,0,0,221,2,0,0,0,0,0,0,0,0,0,0,222,2,0,0,223,2,0,0,138,0,0,0,87,0,0,0,252,255,255,255,0,0,0,0,224,2,0,0,225,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,222,2,0,0,226,2,0,0,138,0,0,0,87,0,0,0,252,255,255,255,0,0,0,0,227,2,0,0,228,2,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,89,1,0,0,229,2,0,0,88,0,0,0,138,0,0,0,0,0,0,
0,0,0,0,0,54,0,0,0,230,2,0,0,231,2,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,232,2,0,0,233,2,0,0,41,0,0,0,234,2,0,0,235,2,0,0,139,0,0,0,252,255,255,255,0,0,0,0,236,2,0,0,237,2,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,238,2,0,0,239,2,0,0,240,2,0,0,241,2,0,0,140,0,0,0,0,0,0,0,0,0,0,0,205,2,0,0,242,2,0,0,139,0,0,0,141,0,0,0,140,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,243,2,0,0,244,2,0,0,41,0,0,0,49,0,0,0,30,0,0,0,252,255,255,255,0,0,0,0,245,2,0,0,246,2,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,
0,0,247,2,0,0,248,2,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,249,2,0,0,250,2,0,0,41,0,0,0,3,0,0,0,252,255,255,255,0,0,0,0,251,2,0,0,252,2,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,253,2,0,0,254,2,0,0,4,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,255,2,0,0,0,3,0,0,141,0,0,0,0,0,0,0,0,0,0,0,205,2,0,0,1,3,0,0,142,0,0,0,142,0,0,0,143,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,2,3,0,0,3,3,0,0,0,0,0,0,0,0,0,0,4,3,0,0,5,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,6,3,0,0,7,3,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,8,3,0,0,9,3,0,0,41,0,0,0,
252,255,255,255,0,0,0,0,10,3,0,0,11,3,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,12,3,0,0,13,3,0,0,0,0,0,0,0,0,0,0,54,0,0,0,14,3,0,0,15,3,0,0,0,0,0,0,0,0,0,0,57,0,0,0,16,3,0,0,143,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,17,3,0,0,18,3,0,0,145,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,19,3,0,0,146,0,0,0,20,3,0,0,147,0,0,0,51,0,0,0,0,0,0,0,0,0,0,0,21,3,0,0,22,3,0,0,23,3,0,0,24,3,0,0,25,3,0,0,148,0,0,0,144,0,0,0,149,0,0,0,150,0,0,0,76,0,0,0,77,0,0,0,52,0,0,0,9,0,0,0,23,0,0,0,53,0,0,0,151,0,0,0,152,0,0,0,26,
3,0,0,89,0,0,0,90,0,0,0,27,3,0,0,54,0,0,0,28,3,0,0,91,0,0,0,145,0,0,0,3,0,0,0,29,3,0,0,78,0,0,0,67,0,0,0,79,0,0,0,192,1,0,0,193,1,0,0,216,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,30,3,0,0,31,3,0,0,41,0,0,0,212,255,255,255,0,0,0,0,32,3,0,0,33,3,0,0,44,0,0,0,45,0,0,0,196,255,255,255,0,0,0,0,34,3,0,0,35,3,0,0,0,0,0,0,0,0,0,0,89,1,0,0,36,3,0,0,92,0,0,0,153,0,0,0,0,0,0,0,0,0,0,0,106,1,0,0,37,3,0,0,0,0,0,0,0,0,0,0,38,3,0,0,39,3,0,0,146,0,0,0,93,0,0,0,252,255,255,255,0,0,0,0,40,3,0,0,41,3,0,0,44,0,0,0,45,0,0,
0,0,0,0,0,0,0,0,0,38,3,0,0,42,3,0,0,146,0,0,0,93,0,0,0,252,255,255,255,0,0,0,0,43,3,0,0,44,3,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,117,2,0,0,45,3,0,0,147,0,0,0,154,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,100,2,0,0,46,3,0,0,41,0,0,0,94,0,0,0,148,0,0,0,252,255,255,255,0,0,0,0,47,3,0,0,48,3,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,49,3,0,0,50,3,0,0,0,0,0,0,0,0,0,0,51,3,0,0,52,3,0,0,53,3,0,0,0,0,0,0,0,0,0,0,51,3,0,0,54,3,0,0,53,3,0,0,0,0,0,0,0,0,0,0,89,1,0,0,55,3,0,0,95,0,0,0,155,0,0,0,0,0,0,0,0,0,
0,0,54,0,0,0,56,3,0,0,57,3,0,0,0,0,0,0,0,0,0,0,58,3,0,0,59,3,0,0,60,3,0,0,190,1,0,0,191,1,0,0,156,0,0,0,149,0,0,0,157,0,0,0,158,0,0,0,76,0,0,0,77,0,0,0,55,0,0,0,9,0,0,0,24,0,0,0,56,0,0,0,159,0,0,0,160,0,0,0,61,3,0,0,96,0,0,0,97,0,0,0,62,3,0,0,57,0,0,0,63,3,0,0,98,0,0,0,150,0,0,0,1,0,0,0,64,3,0,0,78,0,0,0,67,0,0,0,79,0,0,0,192,1,0,0,193,1,0,0,65,3,0,0,66,3,0,0,161,0,0,0,216,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,67,3,0,0,68,3,0,0,41,0,0,0,212,255,255,255,0,0,0,0,69,3,0,0,70,3,0,0,44,0,0,0,45,0,0,0,196,
255,255,255,0,0,0,0,71,3,0,0,72,3,0,0,0,0,0,0,0,0,0,0,196,1,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,197,1,0,0,72,0,0,0,73,0,0,0,198,1,0,0,73,3,0,0,162,0,0,0,163,0,0,0,0,0,0,0,0,0,0,0,32,1,0,0,74,3,0,0,151,0,0,0,164,0,0,0,0,0,0,0,0,0,0,0,75,2,0,0,75,3,0,0,152,0,0,0,0,0,0,0,0,0,0,0,35,1,0,0,76,3,0,0,165,0,0,0,153,0,0,0,166,0,0,0,58,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,77,3,0,0,167,0,0,0,78,3,0,0,168,0,0,0,59,0,0,0,0,0,0,0,0,0,0,0,79,3,0,0,80,3,0,0,169,0,0,0,154,0,0,0,170,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,54,
0,0,0,81,3,0,0,82,3,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,83,3,0,0,84,3,0,0,41,0,0,0,252,255,255,255,0,0,0,0,85,3,0,0,86,3,0,0,44,0,0,0,45,0,0,0,236,255,255,255,0,0,0,0,87,3,0,0,88,3,0,0,0,0,0,0,0,0,0,0,54,0,0,0,89,3,0,0,90,3,0,0,0,0,0,0,0,0,0,0,32,1,0,0,91,3,0,0,155,0,0,0,171,0,0,0,0,0,0,0,0,0,0,0,106,1,0,0,92,3,0,0,0,0,0,0,0,0,0,0,93,3,0,0,94,3,0,0,95,3,0,0,0,0,0,0,0,0,0,0,93,3,0,0,96,3,0,0,95,3,0,0,0,0,0,0,0,0,0,0,97,3,0,0,98,3,0,0,156,0,0,0,172,0,0,0,244,253,255,255,0,0,0,0,0,0,0,0,99,3,0,0,100,
3,0,0,0,0,0,0,0,0,0,0,101,3,0,0,102,3,0,0,103,3,0,0,0,0,0,0,0,0,0,0,101,3,0,0,104,3,0,0,103,3,0,0,0,0,0,0,0,0,0,0,70,1,0,0,105,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,106,3,0,0,107,3,0,0,0,0,0,0,0,0,0,0,108,3,0,0,157,0,0,0,109,3,0,0,110,3,0,0,0,0,0,0,0,0,0,0,111,3,0,0,112,3,0,0,158,0,0,0,99,0,0,0,252,255,255,255,0,0,0,0,113,3,0,0,114,3,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,111,3,0,0,115,3,0,0,158,0,0,0,99,0,0,0,252,255,255,255,0,0,0,0,116,3,0,0,117,3,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,119,3,0,
0,120,3,0,0,159,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,121,3,0,0,122,3,0,0,161,0,0,0,162,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,123,3,0,0,124,3,0,0,163,0,0,0,164,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,125,3,0,0,126,3,0,0,165,0,0,0,166,0,0,0,0,0,0,0,0,0,0,0,127,3,0,0,128,3,0,0,129,3,0,0,167,0,0,0,168,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,130,3,0,0,131,3,0,0,169,0,0,0,170,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,132,3,0,0,133,3,0,0,171,0,0,0,172,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,134,3,0,0,135,3,0,0,173,0,0,0,174,0,0,0,0,0,0,0,
0,0,0,0,118,3,0,0,136,3,0,0,137,3,0,0,175,0,0,0,176,0,0,0,0,0,0,0,0,0,0,0,138,3,0,0,139,3,0,0,140,3,0,0,177,0,0,0,178,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,141,3,0,0,142,3,0,0,179,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0,143,3,0,0,144,3,0,0,145,3,0,0,181,0,0,0,182,0,0,0,0,0,0,0,0,0,0,0,146,3,0,0,147,3,0,0,148,3,0,0,183,0,0,0,184,0,0,0,0,0,0,0,0,0,0,0,149,3,0,0,150,3,0,0,151,3,0,0,185,0,0,0,186,0,0,0,0,0,0,0,0,0,0,0,152,3,0,0,153,3,0,0,154,3,0,0,187,0,0,0,188,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,155,3,0,0,156,3,0,0,189,
0,0,0,190,0,0,0,0,0,0,0,0,0,0,0,157,3,0,0,158,3,0,0,159,3,0,0,191,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,160,3,0,0,161,3,0,0,193,0,0,0,194,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,162,3,0,0,163,3,0,0,195,0,0,0,196,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,164,3,0,0,165,3,0,0,197,0,0,0,198,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,166,3,0,0,167,3,0,0,199,0,0,0,200,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,168,3,0,0,169,3,0,0,201,0,0,0,202,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,170,3,0,0,171,3,0,0,203,0,0,0,204,0,0,0,0,0,0,0,0,0,0,0,118,3,0,
0,172,3,0,0,173,3,0,0,205,0,0,0,206,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,174,3,0,0,175,3,0,0,207,0,0,0,208,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,176,3,0,0,177,3,0,0,209,0,0,0,210,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,178,3,0,0,179,3,0,0,211,0,0,0,212,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,180,3,0,0,120,3,0,0,159,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,181,3,0,0,182,3,0,0,183,3,0,0,213,0,0,0,214,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,184,3,0,0,185,3,0,0,215,0,0,0,216,0,0,0,0,0,0,0,0,0,0,0,186,3,0,0,187,3,0,0,188,3,0,0,217,0,0,0,218,0,0,
0,0,0,0,0,0,0,0,0,118,3,0,0,189,3,0,0,137,3,0,0,175,0,0,0,219,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,190,3,0,0,191,3,0,0,220,0,0,0,221,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,192,3,0,0,193,3,0,0,222,0,0,0,223,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,194,3,0,0,195,3,0,0,224,0,0,0,225,0,0,0,0,0,0,0,0,0,0,0,196,3,0,0,197,3,0,0,198,3,0,0,226,0,0,0,227,0,0,0,0,0,0,0,0,0,0,0,199,3,0,0,200,3,0,0,201,3,0,0,228,0,0,0,229,0,0,0,0,0,0,0,0,0,0,0,202,3,0,0,203,3,0,0,204,3,0,0,230,0,0,0,231,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,4,0,0,0,205,
3,0,0,206,3,0,0,207,3,0,0,0,0,0,0,0,0,0,0,118,3,0,0,208,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,210,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,211,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,212,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,213,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,214,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,215,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,
0,118,3,0,0,216,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,181,3,0,0,217,3,0,0,183,3,0,0,213,0,0,0,214,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,218,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,219,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,118,3,0,0,220,3,0,0,209,3,0,0,232,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,221,3,0,0,222,3,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,223,3,0,0,224,3,0,0,225,3,0,0,0,0,0,0,0,0,0,0,223,3,0,0,226,3,0,0,225,3,0,0,0,0,0,0,0,0,0,0,227,3,0,0,228,3,0,
0,233,0,0,0,234,0,0,0,235,0,0,0,229,3,0,0,252,255,255,255,0,0,0,0,230,3,0,0,231,3,0,0,236,0,0,0,237,0,0,0,232,3,0,0,0,0,0,0,0,0,0,0,233,3,0,0,234,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,235,3,0,0,236,3,0,0,238,0,0,0,89,0,0,0,237,3,0,0,19,2,0,0,20,2,0,0,93,0,0,0,94,0,0,0,90,0,0,0,95,0,0,0,1,0,0,0,37,0,0,0,1,0,0,0,1,0,0,0,89,0,0,0,90,0,0,0,3,0,0,0,91,0,0,0,238,3,0,0,92,0,0,0,10,2,0,0,21,2,0,0,22,2,0,0,23,2,0,0,24,2,0,0,25,2,0,0,26,2,0,0,27,2,0,0,28,2,0,0,29,2,0,0,30,2,0,0,239,0,0,0,240,0,0,0,173,0,0,0,3,0,0,
0,2,0,0,0,239,3,0,0,1,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,241,0,0,0,242,0,0,0,174,0,0,0,243,0,0,0,175,0,0,0,176,0,0,0,177,0,0,0,178,0,0,0,179,0,0,0,4,0,0,0,240,3,0,0,228,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,241,3,0,0,242,3,0,0,41,0,0,0,224,255,255,255,0,0,0,0,243,3,0,0,244,3,0,0,44,0,0,0,45,0,0,0,48,255,255,255,0,0,0,0,245,3,0,0,246,3,0,0,0,0,0,0,0,0,0,0,247,3,0,0,248,3,0,0,180,0,0,0,1,0,0,0,181,0,0,0,61,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,249,3,0,0,250,3,0,0,182,0,0,0,0,0,0,0,
0,0,0,0,251,3,0,0,252,3,0,0,244,0,0,0,183,0,0,0,0,0,0,0,0,0,0,0,253,3,0,0,254,3,0,0,245,0,0,0,184,0,0,0,0,0,0,0,0,0,0,0,255,3,0,0,0,4,0,0,246,0,0,0,185,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,1,4,0,0,186,0,0,0,2,4,0,0,187,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,30,1,0,0,3,4,0,0,188,0,0,0,247,0,0,0,189,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,4,4,0,0,5,4,0,0,6,4,0,0,0,0,0,0,0,0,0,0,7,4,0,0,8,4,0,0,248,0,0,0,0,0,0,0,0,0,0,0,9,4,0,0,10,4,0,0,238,0,0,0,249,0,0,0,11,4,0,0,19,2,0,0,20,2,0,0,190,0,0,0,191,0,0,0,90,0,0,0,95,0,0,0,250,
0,0,0,101,0,0,0,6,0,0,0,5,0,0,0,192,0,0,0,193,0,0,0,3,0,0,0,194,0,0,0,12,4,0,0,195,0,0,0,13,4,0,0,21,2,0,0,22,2,0,0,23,2,0,0,24,2,0,0,25,2,0,0,26,2,0,0,27,2,0,0,28,2,0,0,29,2,0,0,30,2,0,0,239,0,0,0,240,0,0,0,173,0,0,0,3,0,0,0,3,0,0,0,14,4,0,0,5,0,0,0,1,0,0,0,7,0,0,0,8,0,0,0,196,0,0,0,3,0,0,0,9,0,0,0,251,0,0,0,252,0,0,0,242,0,0,0,197,0,0,0,253,0,0,0,198,0,0,0,199,0,0,0,200,0,0,0,178,0,0,0,201,0,0,0,4,0,0,0,240,3,0,0,228,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,15,4,0,0,16,4,0,0,41,0,0,0,224,255,255,255,
0,0,0,0,17,4,0,0,18,4,0,0,44,0,0,0,45,0,0,0,48,255,255,255,0,0,0,0,19,4,0,0,20,4,0,0,0,0,0,0,0,0,0,0,62,0,0,0,21,4,0,0,202,0,0,0,22,4,0,0,203,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,75,2,0,0,23,4,0,0,254,0,0,0,0,0,0,0,0,0,0,0,24,4,0,0,25,4,0,0,255,0,0,0,0,1,0,0,26,4,0,0,27,4,0,0,28,4,0,0,204,0,0,0,205,0,0,0,1,1,0,0,206,0,0,0,2,1,0,0,102,0,0,0,1,0,0,0,1,0,0,0,89,0,0,0,90,0,0,0,2,0,0,0,91,0,0,0,9,2,0,0,92,0,0,0,10,2,0,0,29,4,0,0,30,4,0,0,31,4,0,0,32,4,0,0,33,4,0,0,34,4,0,0,35,4,0,0,36,4,0,0,37,4,0,0,38,4,0,
0,0,0,0,0,0,0,0,0,39,4,0,0,40,4,0,0,103,0,0,0,41,4,0,0,4,0,0,0,25,0,0,0,1,0,0,0,42,4,0,0,168,255,255,255,0,0,0,0,43,4,0,0,44,4,0,0,0,0,0,0,0,0,0,0,59,0,0,0,45,4,0,0,46,4,0,0,207,0,0,0,0,0,0,0,0,0,0,0,47,4,0,0,48,4,0,0,3,1,0,0,208,0,0,0,0,0,0,0,0,0,0,0,49,4,0,0,50,4,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,51,4,0,0,52,4,0,0,53,4,0,0,0,0,0,0,0,0,0,0,54,4,0,0,55,4,0,0,56,4,0,0,0,0,0,0,0,0,0,0,57,4,0,0,58,4,0,0,59,4,0,0,0,0,0,0,0,0,0,0,57,4,0,0,60,4,0,0,59,4,0,0,0,0,0,0,0,0,
0,0,54,4,0,0,61,4,0,0,56,4,0,0,0,0,0,0,0,0,0,0,51,4,0,0,62,4,0,0,53,4,0,0,0,0,0,0,0,0,0,0,63,4,0,0,64,4,0,0,104,0,0,0,65,4,0,0,5,0,0,0,26,0,0,0,2,0,0,0,66,4,0,0,0,0,0,0,0,0,0,0,67,4,0,0,68,4,0,0,238,0,0,0,4,1,0,0,69,4,0,0,19,2,0,0,20,2,0,0,209,0,0,0,210,0,0,0,90,0,0,0,95,0,0,0,5,1,0,0,105,0,0,0,1,0,0,0,6,0,0,0,211,0,0,0,212,0,0,0,3,0,0,0,91,0,0,0,238,3,0,0,92,0,0,0,10,2,0,0,70,4,0,0,71,4,0,0,23,2,0,0,24,2,0,0,25,2,0,0,26,2,0,0,27,2,0,0,28,2,0,0,29,2,0,0,30,2,0,0,239,0,0,0,240,0,0,0,173,0,0,0,3,0,
0,0,6,0,0,0,72,4,0,0,6,0,0,0,2,0,0,0,4,0,0,0,10,0,0,0,213,0,0,0,4,0,0,0,5,0,0,0,6,1,0,0,241,0,0,0,242,0,0,0,214,0,0,0,243,0,0,0,175,0,0,0,176,0,0,0,177,0,0,0,178,0,0,0,179,0,0,0,4,0,0,0,240,3,0,0,228,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,73,4,0,0,74,4,0,0,41,0,0,0,224,255,255,255,0,0,0,0,75,4,0,0,76,4,0,0,44,0,0,0,45,0,0,0,48,255,255,255,0,0,0,0,77,4,0,0,78,4,0,0,0,0,0,0,0,0,0,0,9,4,0,0,79,4,0,0,238,0,0,0,249,0,0,0,11,4,0,0,19,2,0,0,20,2,0,0,190,0,0,0,191,0,0,0,90,0,0,0,95,0,0,0,250,0,0,0,101,0,0,0,
6,0,0,0,5,0,0,0,192,0,0,0,193,0,0,0,3,0,0,0,194,0,0,0,12,4,0,0,195,0,0,0,13,4,0,0,21,2,0,0,22,2,0,0,23,2,0,0,24,2,0,0,25,2,0,0,26,2,0,0,27,2,0,0,28,2,0,0,29,2,0,0,30,2,0,0,239,0,0,0,240,0,0,0,173,0,0,0,3,0,0,0,3,0,0,0,14,4,0,0,5,0,0,0,1,0,0,0,7,0,0,0,8,0,0,0,196,0,0,0,3,0,0,0,9,0,0,0,251,0,0,0,252,0,0,0,242,0,0,0,215,0,0,0,253,0,0,0,198,0,0,0,199,0,0,0,200,0,0,0,178,0,0,0,201,0,0,0,4,0,0,0,240,3,0,0,228,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,80,4,0,0,81,4,0,0,41,0,0,0,224,255,255,255,0,0,0,0,82,4,0,
0,83,4,0,0,44,0,0,0,45,0,0,0,48,255,255,255,0,0,0,0,84,4,0,0,85,4,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,86,4,0,0,87,4,0,0,41,0,0,0,252,255,255,255,0,0,0,0,88,4,0,0,89,4,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,90,4,0,0,91,4,0,0,216,0,0,0,7,1,0,0,217,0,0,0,65,0,0,0,0,0,0,0,0,0,0,0,92,4,0,0,93,4,0,0,218,0,0,0,27,0,0,0,219,0,0,0,66,0,0,0,0,0,0,0,0,0,0,0,35,1,0,0,94,4,0,0,220,0,0,0,8,1,0,0,221,0,0,0,67,0,0,0,0,0,0,0,0,0,0,0,37,2,0,0,95,4,0,0,222,0,0,0,9,1,0,0,223,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,96,
4,0,0,224,0,0,0,10,1,0,0,225,0,0,0,69,0,0,0,0,0,0,0,0,0,0,0,97,4,0,0,98,4,0,0,226,0,0,0,106,0,0,0,227,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,99,4,0,0,228,0,0,0,100,4,0,0,229,0,0,0,71,0,0,0,0,0,0,0,0,0,0,0,227,0,0,0,101,4,0,0,230,0,0,0,107,0,0,0,231,0,0,0,72,0,0,0,0,0,0,0,0,0,0,0,229,0,0,0,102,4,0,0,232,0,0,0,28,0,0,0,233,0,0,0,73,0,0,0,0,0,0,0,0,0,0,0,231,0,0,0,103,4,0,0,234,0,0,0,29,0,0,0,235,0,0,0,74,0,0,0,0,0,0,0,0,0,0,0,73,0,0,0,104,4,0,0,236,0,0,0,11,1,0,0,237,0,0,0,75,0,0,0,0,0,0,0,0,0,0,0,
71,0,0,0,105,4,0,0,238,0,0,0,30,0,0,0,239,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,106,4,0,0,107,4,0,0,240,0,0,0,1,0,0,0,2,0,0,0,108,4,0,0,77,0,0,0,12,1,0,0,78,0,0,0,13,1,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,241,0,0,0,84,0,0,0,0,0,0,0,0,0,0,0,109,4,0,0,110,4,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,77,0,0,0,12,1,0,0,78,0,0,0,13,1,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,241,0,0,0,84,0,0,0,0,0,0,0,0,0,0,0,111,4,0,0,112,4,0,0,14,1,0,0,108,0,0,0,252,255,255,255,0,0,0,0,113,4,0,0,114,4,0,0,44,0,
0,0,45,0,0,0,0,0,0,0,0,0,0,0,111,4,0,0,115,4,0,0,14,1,0,0,108,0,0,0,252,255,255,255,0,0,0,0,116,4,0,0,117,4,0,0,44,0,0,0,45,0,0,0,255,255,255,127,0,0,0,0,0,0,0,0,118,4,0,0,119,4,0,0,109,0,0,0,104,75,0,0,9,0,0,0,0,0,0,0,0,0,0,0,242,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,156,187,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,75,0,0,5,0,0,0,0,0,0,0,0,0,0,0,242,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,164,191,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,76,0,0,5,0,0,0,0,0,0,0,0,0,0,0,242,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,8,0,0,0,172,191,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,76,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,
0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,168,104,0,
0,152,79,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27],"i8",4,x.D+10240);
M([28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,
0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,156,85,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,
0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,
80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,95,112,137,
0,255,9,47,15,0,0,0,0,72,0,0,0,120,4,0,0,121,4,0,0,0,0,0,0,96,0,0,0,122,4,0,0,123,4,0,0,2,0,0,0,1,0,0,0,2,0,0,0,31,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,243,0,0,0,4,0,0,0,85,0,0,0,3,0,0,0,86,0,0,0,0,0,0,0,104,0,0,0,124,4,0,0,125,4,0,0,15,1,0,0,12,0,0,0,3,0,0,0,32,0,0,0,244,0,0,0,245,0,0,0,13,0,0,0,246,0,0,0,247,0,0,0,87,0,0,0,14,0,0,0,88,0,0,0,8,0,0,0,0,0,0,0,112,0,0,0,27,0,0,0,28,0,0,0,248,255,255,255,248,255,255,255,112,0,0,0,29,0,0,0,30,0,0,0,8,0,0,0,0,0,0,0,136,0,0,0,126,4,0,0,127,4,0,0,248,255,255,255,
248,255,255,255,136,0,0,0,128,4,0,0,129,4,0,0,4,0,0,0,0,0,0,0,160,0,0,0,213,0,0,0,214,0,0,0,252,255,255,255,252,255,255,255,160,0,0,0,215,0,0,0,216,0,0,0,4,0,0,0,0,0,0,0,184,0,0,0,130,4,0,0,131,4,0,0,252,255,255,255,252,255,255,255,184,0,0,0,132,4,0,0,133,4,0,0,0,0,0,0,208,0,0,0,124,4,0,0,134,4,0,0,16,1,0,0,12,0,0,0,3,0,0,0,32,0,0,0,248,0,0,0,245,0,0,0,13,0,0,0,246,0,0,0,247,0,0,0,87,0,0,0,15,0,0,0,89,0,0,0,0,0,0,0,224,0,0,0,122,4,0,0,135,4,0,0,17,1,0,0,1,0,0,0,2,0,0,0,31,0,0,0,249,0,0,0,2,0,0,0,
2,0,0,0,243,0,0,0,4,0,0,0,85,0,0,0,16,0,0,0,90,0,0,0,0,0,0,0,240,0,0,0,124,4,0,0,136,4,0,0,18,1,0,0,12,0,0,0,3,0,0,0,32,0,0,0,244,0,0,0,245,0,0,0,13,0,0,0,250,0,0,0,251,0,0,0,91,0,0,0,14,0,0,0,88,0,0,0,0,0,0,0,0,1,0,0,122,4,0,0,137,4,0,0,19,1,0,0,1,0,0,0,2,0,0,0,31,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,252,0,0,0,253,0,0,0,92,0,0,0,3,0,0,0,86,0,0,0,0,0,0,0,16,1,0,0,138,4,0,0,139,4,0,0,140,4,0,0,3,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,48,1,0,0,141,4,0,0,142,4,0,0,140,4,0,0,4,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,64,1,
0,0,143,4,0,0,144,4,0,0,140,4,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,128,1,0,0,145,4,0,0,146,4,0,0,140,4,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,184,1,0,0,147,4,0,0,148,4,0,0,140,4,0,0,5,0,0,0,6,0,0,0,23,0,0,0,7,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,8,0,0,0,0,0,0,0,248,1,0,0,149,4,0,0,150,4,0,0,140,4,0,0,9,0,0,0,10,0,0,0,25,0,0,0,11,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,
0,0,0,0,48,2,0,0,151,4,0,0,152,4,0,0,140,4,0,0,254,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,48,2,0,0,255,0,0,0,0,1,0,0,1,1,0,0,2,1,0,0,3,1,0,0,4,1,0,0,5,1,0,0,0,0,0,0,104,2,0,0,153,4,0,0,154,4,0,0,140,4,0,0,6,1,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,104,2,0,0,7,1,0,0,8,1,0,0,9,1,0,0,10,1,0,0,11,1,0,0,12,1,0,0,13,1,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,
0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,
114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,
0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,
0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,
0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,
0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,152,2,0,0,155,4,0,0,156,4,0,0,140,4,0,0,1,0,0,0,0,0,0,0,192,2,0,0,157,4,0,0,158,4,0,0,140,4,0,0,2,0,0,0,0,0,0,0,224,2,0,0,159,4,0,0,160,4,0,0,140,4,0,0,14,
1,0,0,15,1,0,0,20,1,0,0,21,1,0,0,22,1,0,0,23,1,0,0,16,1,0,0,24,1,0,0,25,1,0,0,0,0,0,0,8,3,0,0,161,4,0,0,162,4,0,0,140,4,0,0,17,1,0,0,18,1,0,0,26,1,0,0,27,1,0,0,28,1,0,0,29,1,0,0,19,1,0,0,30,1,0,0,31,1,0,0,0,0,0,0,40,3,0,0,163,4,0,0,164,4,0,0,140,4,0,0,20,1,0,0,21,1,0,0,32,1,0,0,33,1,0,0,34,1,0,0,35,1,0,0,22,1,0,0,36,1,0,0,37,1,0,0,0,0,0,0,72,3,0,0,165,4,0,0,166,4,0,0,140,4,0,0,23,1,0,0,24,1,0,0,38,1,0,0,39,1,0,0,40,1,0,0,41,1,0,0,25,1,0,0,42,1,0,0,43,1,0,0,0,0,0,0,104,3,0,0,167,4,0,0,168,4,0,0,140,
4,0,0,3,0,0,0,4,0,0,0,0,0,0,0,144,3,0,0,169,4,0,0,170,4,0,0,140,4,0,0,5,0,0,0,6,0,0,0,0,0,0,0,184,3,0,0,171,4,0,0,172,4,0,0,140,4,0,0,1,0,0,0,37,0,0,0,0,0,0,0,224,3,0,0,173,4,0,0,174,4,0,0,140,4,0,0,2,0,0,0,38,0,0,0,0,0,0,0,8,4,0,0,175,4,0,0,176,4,0,0,140,4,0,0,19,0,0,0,4,0,0,0,44,1,0,0,0,0,0,0,48,4,0,0,177,4,0,0,178,4,0,0,140,4,0,0,20,0,0,0,5,0,0,0,45,1,0,0,0,0,0,0,136,4,0,0,179,4,0,0,180,4,0,0,140,4,0,0,3,0,0,0,4,0,0,0,13,0,0,0,26,1,0,0,27,1,0,0,14,0,0,0,28,1,0,0,0,0,0,0,80,4,0,0,179,4,0,0,181,
4,0,0,140,4,0,0,3,0,0,0,4,0,0,0,13,0,0,0,26,1,0,0,27,1,0,0,14,0,0,0,28,1,0,0,0,0,0,0,184,4,0,0,182,4,0,0,183,4,0,0,140,4,0,0,5,0,0,0,6,0,0,0,15,0,0,0,29,1,0,0,30,1,0,0,16,0,0,0,31,1,0,0,0,0,0,0,248,4,0,0,184,4,0,0,185,4,0,0,140,4,0,0,0,0,0,0,8,5,0,0,186,4,0,0,187,4,0,0,140,4,0,0,93,0,0,0,21,0,0,0,94,0,0,0,22,0,0,0,95,0,0,0,5,0,0,0,23,0,0,0,17,0,0,0,0,0,0,0,80,5,0,0,188,4,0,0,189,4,0,0,140,4,0,0,32,1,0,0,33,1,0,0,46,1,0,0,47,1,0,0,48,1,0,0,0,0,0,0,96,5,0,0,190,4,0,0,191,4,0,0,140,4,0,0,34,1,0,0,35,
1,0,0,49,1,0,0,50,1,0,0,51,1,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,32,1,0,0,179,4,0,0,192,4,0,0,140,4,0,0,0,0,0,0,48,5,0,0,179,4,0,0,193,4,0,0,140,4,0,0,24,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,96,0,0,0,25,0,0,0,97,0,0,0,26,0,0,0,98,0,0,0,9,0,0,0,27,0,0,0,18,0,0,0,0,0,0,0,152,4,0,0,179,4,0,0,194,4,0,0,140,4,0,0,7,0,0,0,8,0,0,0,19,0,0,0,36,1,0,0,37,1,0,0,20,0,0,0,38,1,0,0,0,0,0,0,216,4,0,0,179,4,0,0,195,4,0,0,140,4,0,0,9,0,0,0,
10,0,0,0,21,0,0,0,39,1,0,0,40,1,0,0,22,0,0,0,41,1,0,0,0,0,0,0,96,4,0,0,179,4,0,0,196,4,0,0,140,4,0,0,3,0,0,0,4,0,0,0,13,0,0,0,26,1,0,0,27,1,0,0,14,0,0,0,28,1,0,0,0,0,0,0,120,5,0,0,197,4,0,0,198,4,0,0,199,4,0,0,200,4,0,0,28,0,0,0,6,0,0,0,7,0,0,0,35,0,0,0,0,0,0,0,160,5,0,0,197,4,0,0,201,4,0,0,199,4,0,0,200,4,0,0,28,0,0,0,7,0,0,0,8,0,0,0,36,0,0,0,0,0,0,0,176,5,0,0,197,4,0,0,202,4,0,0,199,4,0,0,200,4,0,0,28,0,0,0,8,0,0,0,9,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,
32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,
214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,114,114,111,114,0,119,97,114,110,105,110,103,0,105,110,102,111,0,118,101,114,98,111,115,101,0,85,110,107,110,111,119,110,32,108,111,103,32,115,101,118,101,114,105,116,121,32,0,110,97,109,101,0,99,111,109,109,83,116,97,116,105,111,110,0,99,100,110,83,116,114,101,97,109,0,95,0,123,32,102,117,110,99,116,105,111,110,32,119,114,97,112,112,
101,114,40,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,44,32,39,118,105,39,41,40,36,50,41,59,32,125,32,114,101,116,117,114,110,32,119,105,110,100,111,119,46,115,101,116,84,105,109,101,111,117,116,40,119,114,97,112,112,101,114,44,32,36,48,41,59,32,125,0,84,114,121,105,110,103,32,116,111,32,119,105,110,100,32,116,104,101,32,115,97,109,101,32,116,105,109,101,114,32,116,119,105,99,101,0,98,117,102,102,101,114,83,105,122,101,0,99,111,117,110,
116,0,115,114,99,47,82,101,97,108,116,105,109,101,76,111,103,103,101,114,46,99,99,0,82,101,99,101,105,118,101,100,32,117,110,101,120,112,101,99,116,101,100,32,109,101,115,115,97,103,101,0,106,111,105,110,84,121,112,101,0,112,0,115,116,114,101,97,109,85,82,76,0,97,98,114,112,0,115,116,97,108,108,101,100,111,117,116,0,100,101,115,105,103,110,97,116,101,100,85,112,100,97,116,101,0,118,97,108,117,101,0,115,116,97,108,108,101,100,105,110,0,115,107,105,112,0,99,104,117,110,107,70,97,105,108,101,100,0,99,
104,117,110,107,73,100,0,99,104,117,110,107,68,111,119,110,108,111,97,100,101,100,0,115,105,122,101,0,99,104,117,110,107,82,101,113,117,101,115,116,101,100,0,99,111,110,110,101,99,116,101,100,84,111,0,99,111,110,110,101,99,116,105,110,103,84,111,0,97,112,112,108,105,99,97,116,105,111,110,47,106,115,111,110,0,67,97,110,110,111,116,32,103,101,116,32,116,104,101,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,46,32,85,114,108,61,0,46,32,69,114,114,111,114,61,32,83,101,114,
118,101,114,32,114,101,115,112,111,110,100,101,100,32,119,105,116,104,32,99,111,100,101,32,0,32,82,101,116,114,121,105,110,103,32,105,110,32,0,32,115,101,99,111,110,100,115,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,115,114,99,47,77,117,108,116,105,67,104,97,110,110,101,108,77,97,110,97,103,101,114,46,99,99,0,91,109,99,109,93,32,0,82,101,99,101,105,118,101,100,32,98,
97,100,32,106,115,111,110,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,58,32,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,102,114,111,109,32,114,101,115,112,111,110,115,101,58,32,0,73,110,118,97,108,105,100,101,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,46,32,82,101,115,112,111,110,115,101,58,32,0,68,105,100,32,110,111,116,32,101,120,112,101,99,116,32,116,
111,32,114,101,99,101,105,118,101,32,115,117,98,116,105,116,108,101,32,115,116,114,101,97,109,115,32,109,111,114,101,32,116,104,97,110,32,111,110,99,101,44,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,109,33,0,68,105,100,32,110,111,116,32,101,120,112,101,99,116,32,116,111,32,114,101,99,101,105,118,101,32,97,117,100,105,111,32,115,116,114,101,97,109,115,32,109,111,114,101,32,116,104,97,110,32,111,110,99,101,44,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,109,33,0,73,
103,110,111,114,105,110,103,32,116,104,101,32,97,117,100,105,111,32,98,117,116,32,97,116,32,116,104,101,32,115,97,109,101,32,116,105,109,101,32,116,104,101,114,101,32,105,115,32,110,111,32,118,105,100,101,111,46,46,46,0,73,103,110,111,114,105,110,103,32,116,104,101,32,97,117,100,105,111,32,111,102,32,97,117,100,105,111,45,111,110,108,121,32,115,101,115,115,105,111,110,46,46,46,0,83,116,114,101,97,109,115,32,116,104,97,116,32,104,97,118,101,32,97,117,100,105,111,47,118,105,100,101,111,32,97,110,100,
32,97,117,100,105,111,45,111,110,108,121,32,118,97,114,105,97,110,116,115,32,97,114,101,32,110,111,116,32,121,101,116,32,105,109,112,108,101,109,101,110,116,101,100,46,32,73,103,110,111,114,105,110,103,32,116,104,101,32,97,117,100,105,111,32,111,110,108,121,32,115,116,114,101,97,109,115,46,0,84,114,97,110,115,102,101,114,32,102,97,105,108,101,100,46,32,83,119,105,116,99,104,105,110,103,32,116,111,32,108,111,119,101,115,116,32,113,117,97,108,105,116,121,58,32,0,67,97,110,39,116,32,102,105,110,100,
32,115,116,114,101,97,109,32,102,111,114,32,114,101,113,117,101,115,116,101,100,32,113,117,97,108,105,116,121,61,0,83,119,105,116,99,104,105,110,103,32,117,112,32,113,117,97,108,105,116,121,0,32,102,114,111,109,32,58,32,0,32,116,111,32,0,83,119,105,116,99,104,105,110,103,32,100,111,119,110,32,113,117,97,108,105,116,121,0,32,102,114,111,109,58,32,0,32,116,111,58,32,0,84,114,121,105,110,103,32,116,111,32,115,116,111,112,32,97,110,32,97,117,100,105,111,32,100,111,119,110,108,111,97,100,101,114,32,116,
104,97,116,32,105,115,32,110,111,116,32,105,110,32,116,104,101,32,108,105,115,116,32,111,102,32,97,117,100,105,111,32,100,111,119,110,108,111,97,100,101,114,115,0,68,105,100,32,110,111,116,32,101,120,112,101,99,116,32,116,111,32,114,101,99,101,105,118,101,32,118,105,100,101,111,32,115,116,114,101,97,109,115,32,109,111,114,101,32,116,104,97,110,32,111,110,99,101,44,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,109,33,0,109,51,117,56,0,109,112,100,0,100,97,115,104,0,46,109,112,52,0,67,
104,97,110,103,105,110,103,32,113,117,97,108,105,116,121,32,105,109,109,101,100,105,97,116,101,108,121,32,116,111,32,0,73,109,109,101,100,105,97,116,101,32,113,117,97,108,105,116,121,32,99,104,97,110,103,101,32,102,111,114,32,76,105,118,101,32,115,116,114,101,97,109,32,105,115,32,78,89,73,46,32,70,97,108,108,105,110,103,32,98,97,99,107,32,116,111,32,115,109,111,111,116,104,0,80,108,97,121,101,114,32,100,111,101,115,32,110,111,116,32,115,117,112,112,111,114,116,32,98,117,102,102,101,114,32,101,118,
105,99,116,105,111,110,46,32,70,97,108,108,105,110,103,32,98,97,99,107,32,116,111,32,115,109,111,111,116,104,0,66,117,102,102,101,114,32,70,108,117,115,104,101,100,32,98,117,116,32,110,111,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,0,83,119,105,116,99,104,105,110,103,32,65,66,82,32,0,82,101,113,117,101,115,116,101,100,32,117,110,107,110,111,119,110,32,115,116,114,101,97,109,32,105,100,61,0,67,104,97,110,103,105,110,103,32,97,117,100,105,111,32,113,117,97,108,105,116,121,32,105,109,
109,101,100,105,97,116,101,108,121,0,67,97,110,110,111,116,32,100,101,116,101,114,109,105,110,101,32,118,105,100,101,111,32,113,117,97,108,105,116,121,46,32,65,98,111,114,116,105,110,103,32,97,117,100,105,111,32,99,104,97,110,103,101,46,46,46,0,78,111,32,99,104,97,110,110,101,108,32,109,97,110,97,103,101,114,115,46,32,67,97,110,110,111,116,32,115,101,101,107,0,115,101,101,107,105,110,103,32,116,111,32,99,104,117,110,107,61,0,32,116,105,109,101,61,0,99,97,110,110,111,116,32,115,101,101,107,32,116,
111,32,116,105,109,101,61,0,115,114,99,47,67,104,97,110,110,101,108,77,97,110,97,103,101,114,46,99,99,0,91,99,109,32,0,85,110,107,110,111,119,110,32,114,101,113,117,101,115,116,32,97,108,103,111,114,105,116,104,109,40,0,41,32,102,97,108,108,105,110,103,32,98,97,99,107,32,111,110,32,114,101,113,117,101,115,116,32,108,105,107,101,32,112,108,97,121,101,114,0,79,117,114,73,100,61,0,84,114,121,105,110,103,32,116,111,32,114,101,103,105,115,116,101,114,32,109,111,114,101,32,116,104,97,110,32,111,110,101,
32,114,101,99,101,105,118,101,114,32,102,111,114,32,109,101,115,115,97,103,101,115,32,111,102,32,116,121,112,101,32,0,113,117,111,116,97,0,65,110,32,69,114,114,111,114,32,111,99,99,117,114,101,100,32,119,104,105,108,101,32,99,111,109,109,117,110,105,99,97,116,105,110,103,32,119,105,116,104,32,116,104,101,32,99,111,109,109,32,115,116,97,116,105,111,110,58,32,0,67,111,109,109,32,115,116,97,116,105,111,110,32,119,97,115,32,99,108,111,115,101,100,0,91,99,109,93,32,67,111,109,109,32,83,116,97,116,105,
111,110,32,114,101,112,111,114,116,101,100,32,100,105,115,99,111,110,110,101,99,116,46,32,83,116,111,112,112,105,110,103,32,84,114,97,99,107,101,114,0,87,101,32,115,117,99,99,101,115,115,102,117,108,108,121,32,106,111,105,110,101,100,0,66,85,71,58,32,116,114,121,105,110,103,32,116,111,32,115,116,97,114,116,32,97,32,116,114,97,99,107,101,114,32,98,117,116,32,116,104,101,114,101,32,105,115,32,111,110,101,32,115,116,105,108,108,32,114,117,110,110,105,110,103,46,32,83,116,111,112,112,105,110,103,32,116,
104,101,32,112,114,101,118,105,111,117,115,32,116,114,97,99,107,101,114,46,0,111,102,102,115,101,116,0,84,114,97,99,107,101,114,32,114,101,115,112,111,110,100,101,100,32,119,105,116,104,32,105,110,118,97,108,105,100,101,32,111,102,102,115,101,116,40,0,41,46,32,73,103,110,111,114,105,110,103,46,0,84,114,97,99,107,101,114,32,114,101,115,112,111,110,115,101,32,100,111,101,110,115,39,116,32,99,111,110,116,97,105,110,32,97,110,121,32,112,101,101,114,115,0,111,112,116,105,111,110,115,0,82,101,99,101,105,
118,101,100,32,111,112,116,105,111,110,115,32,102,114,111,109,32,116,114,97,99,107,101,114,32,61,32,0,83,116,111,112,112,105,110,103,32,97,108,108,32,112,101,101,114,115,32,98,101,99,97,117,115,101,32,116,114,97,99,107,101,114,32,115,101,110,116,32,99,111,110,110,101,99,116,45,116,111,45,115,119,97,114,109,61,110,111,0,67,97,110,110,111,116,32,103,101,116,32,112,101,101,114,32,105,100,32,97,116,32,105,110,100,101,120,32,0,87,101,32,97,114,101,32,116,111,111,32,102,97,114,32,98,101,104,105,110,100,
32,111,114,32,105,110,102,114,111,110,116,46,32,70,111,114,99,101,102,117,108,108,121,32,109,111,118,105,110,103,32,116,104,101,32,119,105,110,100,111,119,32,116,111,32,112,111,115,105,116,105,111,110,61,32,0,32,112,114,101,118,105,111,117,115,32,97,98,105,61,32,0,32,100,105,115,116,97,110,99,101,61,0,32,109,111,118,101,84,104,114,101,115,104,111,108,100,73,110,102,114,111,110,116,61,32,0,32,109,111,118,101,84,104,114,101,115,104,111,108,100,66,101,104,105,110,100,61,32,0,65,98,111,114,116,105,110,
103,32,99,104,117,110,107,32,119,101,32,99,111,117,110,100,39,116,32,100,111,119,110,108,111,97,100,32,105,110,32,116,105,109,101,46,32,67,104,117,110,107,73,100,120,61,0,71,111,116,32,102,105,114,115,116,32,0,32,115,101,103,109,101,110,116,115,0,75,101,121,32,114,101,97,100,121,32,102,111,114,32,104,108,115,32,115,101,103,109,101,110,116,61,0,32,98,117,116,32,119,101,32,100,111,110,39,116,32,104,97,118,101,32,99,104,117,110,107,61,0,79,117,116,103,111,105,110,103,32,112,101,101,114,115,32,40,0,41,
32,0,101,120,99,101,101,100,32,109,97,120,105,109,117,109,32,40,0,111,110,83,101,103,109,101,110,116,83,105,122,101,32,99,97,108,108,101,100,32,119,105,116,104,32,105,110,118,97,108,105,100,101,32,115,105,122,101,32,61,32,0,115,114,99,47,80,101,101,114,115,77,97,110,97,103,101,114,46,99,99,0,91,112,109,32,0,93,32,32,0,84,114,121,105,110,103,32,116,111,32,100,101,108,101,116,101,32,97,32,112,101,101,114,40,105,100,61,0,41,32,98,117,116,32,105,116,32,119,97,115,32,110,111,116,32,102,111,117,110,100,
32,105,110,32,116,104,101,32,108,105,115,116,32,111,102,32,112,101,101,114,115,40,115,105,122,101,61,0,115,116,111,112,32,112,101,101,114,115,0,84,114,121,105,110,103,32,116,111,32,114,101,109,111,118,101,32,97,32,112,101,101,114,115,40,105,100,61,0,41,32,98,117,116,32,105,116,32,119,97,115,32,110,111,116,32,102,111,117,110,100,32,116,104,101,32,116,104,101,32,108,105,115,116,32,111,102,32,112,101,101,114,115,40,115,105,122,101,61,0,78,111,116,32,99,111,110,110,101,99,116,105,110,103,32,116,111,32,
0,32,98,101,99,97,117,115,101,32,105,116,32,105,115,32,98,108,97,99,107,108,105,115,116,101,100,0,83,116,97,114,116,105,110,103,32,112,101,101,114,32,0,32,98,101,99,97,117,115,101,32,116,104,101,32,109,97,120,105,109,117,109,32,110,117,109,98,101,114,32,111,102,32,111,117,116,103,111,105,110,103,32,112,101,101,114,115,32,104,97,115,32,98,101,101,110,32,114,101,97,99,104,101,100,46,0,32,98,101,99,97,117,115,101,32,99,111,110,110,101,99,116,45,116,111,45,115,119,97,114,109,32,105,115,32,116,117,114,
110,101,100,32,111,102,102,46,0,32,98,101,99,97,117,115,101,32,116,104,101,32,109,97,120,105,109,117,109,32,110,117,109,98,101,114,32,111,102,32,105,110,99,111,109,105,110,103,32,112,101,101,114,115,32,104,97,115,32,98,101,101,110,32,114,101,97,99,104,101,100,46,0,116,111,111,32,115,108,111,119,0,115,114,99,47,67,111,110,116,101,120,116,46,99,99,0,73,110,118,97,108,105,100,32,108,105,99,101,110,115,101,46,32,84,117,114,110,105,110,103,32,111,102,102,32,112,100,110,46,0,95,115,116,114,101,97,109,0,
99,100,110,45,115,116],"i8",4,x.D+20480);
M([114,101,97,109,0,78,111,116,32,115,116,97,114,116,105,110,103,32,98,101,99,97,117,115,101,32,111,102,32,97,114,103,117,109,101,110,116,115,32,101,114,114,111,114,115,0,66,97,100,32,105,110,112,117,116,32,97,114,103,117,109,101,110,116,115,46,10,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,111,98,106,91,39,111,110,69,114,114,111,114,39,93,41,32,123,32,111,98,106,91,39,111,110,69,114,114,111,114,39,93,40,80,111,105,110,
116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,41,59,32,125,32,125,0,85,110,115,117,112,112,111,114,116,101,100,32,69,110,118,105,114,111,110,109,101,110,116,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,112,108,97,121,101,114,46,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,111,98,106,91,39,105,110,116,101,114,110,97,108,115,79,98,115,101,114,118,101,114,39,93,32,38,38,32,111,98,106,91,39,105,110,
116,101,114,110,97,108,115,79,98,115,101,114,118,101,114,39,93,91,39,111,110,80,108,97,121,101,114,39,93,41,32,123,32,111,98,106,91,39,105,110,116,101,114,110,97,108,115,79,98,115,101,114,118,101,114,39,93,91,39,111,110,80,108,97,121,101,114,39,93,40,41,59,32,125,32,125,0,114,101,115,117,109,101,0,112,108,97,121,101,114,32,114,101,115,117,109,101,100,32,97,102,116,101,114,32,0,76,111,110,103,32,112,97,117,115,101,46,32,82,101,115,116,97,114,116,105,110,103,32,112,108,97,121,101,114,32,97,110,100,
32,67,68,78,32,100,111,119,110,108,111,97,100,0,112,97,117,115,101,0,123,32,118,97,114,32,118,105,100,101,111,69,108,101,109,101,110,116,32,61,32,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,39,118,105,100,101,111,39,41,59,32,114,101,116,117,114,110,32,118,105,100,101,111,69,108,101,109,101,110,116,46,99,97,110,80,108,97,121,84,121,112,101,32,38,38,32,40,118,105,100,101,111,69,108,101,109,101,110,116,46,99,97,110,80,108,97,121,84,121,112,101,40,39,97,112,112,
108,105,99,97,116,105,111,110,47,118,110,100,46,97,112,112,108,101,46,109,112,101,103,85,82,76,39,41,46,108,101,110,103,116,104,32,62,32,48,41,59,32,125,0,78,101,105,116,104,101,114,32,77,83,69,32,110,111,114,32,72,76,83,32,105,115,32,115,117,112,112,111,114,116,101,100,46,32,67,97,110,110,111,116,32,99,114,101,97,116,101,32,112,108,97,121,101,114,0,91,66,85,71,93,32,85,110,107,110,111,119,110,32,118,97,108,117,101,32,102,111,114,32,112,97,114,97,109,115,46,112,108,97,121,101,114,46,32,85,115,105,
110,103,32,72,84,77,76,53,32,80,108,97,121,101,114,46,0,82,101,115,116,97,114,116,105,110,103,32,112,108,97,121,101,114,32,98,101,99,97,117,115,101,32,111,102,32,101,114,114,111,114,115,0,86,105,98,108,97,115,116,32,105,115,32,116,117,114,110,101,100,32,111,102,102,0,115,116,111,112,112,105,110,103,32,99,111,110,116,101,120,116,32,0,108,111,103,0,111,110,101,32,111,102,32,101,114,114,111,114,44,32,119,97,114,110,105,110,103,44,32,105,110,102,111,44,32,118,101,114,98,111,115,101,46,0,85,82,76,32,111,
102,32,116,104,101,32,99,104,97,110,110,101,108,32,116,111,32,112,108,97,121,46,0,78,111,32,67,104,97,110,110,101,108,32,78,97,109,101,0,99,104,117,110,107,115,45,112,101,114,45,104,108,115,45,101,110,116,114,121,0,99,104,117,110,107,115,45,112,101,114,45,104,108,115,45,101,110,116,114,121,32,105,115,32,110,111,32,108,111,110,103,101,114,32,115,117,112,112,111,114,116,101,100,32,97,110,100,32,119,105,108,108,32,98,101,32,114,101,109,111,118,101,100,32,105,110,32,102,117,116,117,114,101,32,118,101,
114,115,105,111,110,115,0,32,32,32,118,105,98,108,97,115,116,32,60,99,104,97,110,110,101,108,45,117,114,108,62,32,91,97,100,100,105,116,105,111,110,97,108,32,97,114,103,117,109,101,110,116,115,93,10,32,32,32,118,105,98,108,97,115,116,32,45,45,104,101,108,112,32,102,111,114,32,109,111,114,101,32,105,110,102,111,0,123,32,118,97,114,32,118,105,101,119,101,114,73,100,32,61,32,100,111,99,117,109,101,110,116,46,99,111,111,107,105,101,46,114,101,112,108,97,99,101,40,110,101,119,32,82,101,103,69,120,112,
40,34,40,63,58,40,63,58,94,124,46,42,59,92,92,92,92,115,42,41,118,98,95,118,105,101,119,101,114,95,105,100,92,92,92,92,115,42,92,92,92,92,61,92,92,92,92,115,42,40,91,94,59,93,42,41,46,42,36,41,124,94,46,42,36,34,41,44,32,34,36,49,34,41,59,32,105,102,32,40,118,105,101,119,101,114,73,100,41,32,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,118,105,101,119,101,114,73,100,41,91,48,93,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,
114,110,32,48,59,32,125,32,125,0,123,32,118,97,114,32,118,105,101,119,101,114,73,100,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,59,32,118,97,114,32,101,120,112,68,97,116,101,32,61,32,110,101,119,32,68,97,116,101,40,41,59,32,101,120,112,68,97,116,101,46,115,101,116,70,117,108,108,89,101,97,114,40,101,120,112,68,97,116,101,46,103,101,116,70,117,108,108,89,101,97,114,40,41,32,43,32,53,41,59,32,100,111,99,117,109,101,110,116,46,99,111,111,107,105,101,32,61,
32,34,118,98,95,118,105,101,119,101,114,95,105,100,61,34,32,43,32,118,105,101,119,101,114,73,100,32,43,32,34,59,100,111,109,97,105,110,61,34,32,43,32,119,105,110,100,111,119,46,108,111,99,97,116,105,111,110,46,104,111,115,116,110,97,109,101,32,43,32,34,59,112,97,116,104,61,47,59,101,120,112,105,114,101,115,61,34,32,43,32,101,120,112,68,97,116,101,46,116,111,85,84,67,83,116,114,105,110,103,40,41,59,32,125,0,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,
67,83,116,114,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,41,91,48,93,59,32,125,0,54,46,53,53,46,53,48,97,51,52,100,57,56,0,118,105,98,108,97,115,116,124,0,123,32,114,101,116,117,114,110,32,47,67,104,114,111,109,101,47,46,116,101,115,116,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,41,32,38,38,32,47,71,111,111,103,108,101,32,73,110,99,47,46,116,101,115,116,40,110,97,118,105,103,97,116,111,114,46,118,101,110,100,111,114,41,59,32,125,0,123,
32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,111,98,106,91,39,111,110,83,117,99,99,101,115,115,39,93,41,32,123,32,111,98,106,91,39,111,110,83,117,99,99,101,115,115,39,93,40,41,59,32,125,32,125,0,123,32,118,97,114,32,97,114,103,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,116,114,97,110,115,102,111,114,109,75,101,121,70,117,110,99,32,61,32,97,114,103,115,91,39,116,114,97,110,115,
102,111,114,109,75,101,121,39,93,59,32,105,102,32,40,116,114,97,110,115,102,111,114,109,75,101,121,70,117,110,99,41,32,123,32,118,97,114,32,107,101,121,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,77,111,100,117,108,101,46,98,117,102,102,101,114,44,32,36,49,44,32,36,50,41,41,59,32,118,97,114,32,107,101,121,85,114,105,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,51,41,59,32,105,102,32,40,116,
121,112,101,111,102,32,116,114,97,110,115,102,111,114,109,75,101,121,70,117,110,99,32,61,61,61,32,39,115,116,114,105,110,103,39,41,32,123,32,116,114,121,32,123,32,116,114,97,110,115,102,111,114,109,75,101,121,70,117,110,99,32,61,32,101,118,97,108,40,116,114,97,110,115,102,111,114,109,75,101,121,70,117,110,99,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,101,41,59,32,125,32,125,32,118,97,114,32,116,114,97,110,115,102,111,114,109,101,100,75,101,
121,32,61,32,117,110,100,101,102,105,110,101,100,59,32,105,102,32,40,116,121,112,101,111,102,32,116,114,97,110,115,102,111,114,109,75,101,121,70,117,110,99,32,61,61,61,32,39,102,117,110,99,116,105,111,110,39,41,32,123,32,116,114,121,32,123,32,116,114,97,110,115,102,111,114,109,101,100,75,101,121,32,61,32,116,114,97,110,115,102,111,114,109,75,101,121,70,117,110,99,40,107,101,121,44,32,107,101,121,85,114,105,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,99,111,110,115,111,108,101,46,108,111,
103,40,101,41,59,32,125,32,125,32,105,102,32,40,116,114,97,110,115,102,111,114,109,101,100,75,101,121,41,32,123,32,116,114,97,110,115,102,111,114,109,101,100,75,101,121,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,116,114,97,110,115,102,111,114,109,101,100,75,101,121,46,98,117,102,102,101,114,44,32,116,114,97,110,115,102,111,114,109,101,100,75,101,121,46,98,121,116,101,79,102,102,115,101,116,44,32,116,114,97,110,115,102,111,114,109,101,100,75,101,121,46,98,121,116,101,76,101,110,
103,116,104,41,59,32,118,97,114,32,114,101,115,32,61,32,95,109,97,108,108,111,99,40,116,114,97,110,115,102,111,114,109,101,100,75,101,121,46,108,101,110,103,116,104,41,59,32,72,69,65,80,85,56,46,115,101,116,40,116,114,97,110,115,102,111,114,109,101,100,75,101,121,44,32,114,101,115,41,59,32,115,101,116,86,97,108,117,101,40,36,52,44,32,116,114,97,110,115,102,111,114,109,101,100,75,101,121,46,108,101,110,103,116,104,44,32,39,105,51,50,39,41,59,32,114,101,116,117,114,110,32,114,101,115,59,32,125,32,101,
108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,0,123,32,118,97,114,32,97,114,103,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,116,114,97,110,115,102,111,114,109,70,117,110,99,32,61,32,97,114,103,115,91,39,116,114,97,110,115,102,111,114,109,75,101,121,85,114,105,39,93,59,32,105,102,32,40,116,114,97,110,115,102,111,114,109,70,117,110,99,41,32,123,32,118,
97,114,32,107,101,121,85,114,105,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,116,114,97,110,115,102,111,114,109,101,100,32,61,32,107,101,121,85,114,105,59,32,105,102,32,40,116,121,112,101,111,102,32,116,114,97,110,115,102,111,114,109,70,117,110,99,32,61,61,61,32,39,115,116,114,105,110,103,39,41,32,123,32,116,114,121,32,123,32,116,114,97,110,115,102,111,114,109,70,117,110,99,32,61,32,101,118,97,108,40,116,114,97,110,115,102,111,114,109,
70,117,110,99,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,101,41,59,32,125,32,125,32,105,102,32,40,116,121,112,101,111,102,32,116,114,97,110,115,102,111,114,109,70,117,110,99,32,61,61,61,32,39,102,117,110,99,116,105,111,110,39,41,32,123,32,116,114,121,32,123,32,116,114,97,110,115,102,111,114,109,101,100,32,61,32,116,114,97,110,115,102,111,114,109,70,117,110,99,40,107,101,121,85,114,105,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,
99,111,110,115,111,108,101,46,108,111,103,40,101,41,59,32,125,32,125,32,114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,116,114,97,110,115,102,111,114,109,101,100,41,91,48,93,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,0,65,69,83,45,49,50,56,0,83,65,77,80,76,69,45,65,69,83,0,115,114,99,47,69,110,99,114,121,112,116,105,111,110,77,97,110,97,103,101,114,46,99,99,0,85,110,107,110,111,119,110,32,101,110,99,
114,121,112,116,105,111,110,32,109,101,116,104,111,100,32,0,115,114,99,47,75,101,121,68,101,99,114,121,112,116,111,114,46,99,99,0,82,101,99,101,105,118,101,100,32,98,97,100,32,118,105,98,108,97,115,116,45,107,101,121,0,115,114,99,47,109,101,100,105,97,47,46,46,47,104,116,116,112,47,46,46,47,106,115,47,46,46,47,117,116,105,108,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,115,114,99,47,65,117,100,105,111,68,111,119,110,108,111,97,100,101,114,46,99,99,0,67,97,110,110,111,116,
32,102,105,110,100,32,109,97,116,99,104,105,110,103,32,97,117,100,105,111,32,115,101,103,109,101,110,116,115,32,102,111,114,32,0,32,118,105,100,101,111,32,115,101,103,109,101,110,116,115,0,115,114,99,47,109,101,100,105,97,47,46,46,47,104,116,116,112,47,46,46,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,91,65,117,100,105,111,68,111,119,110,108,111,97,100,101,114,124,0,80,114,101,112,97,114,101,100,32,102,111,114,32,115,116,111,112,0,67,104,117,110,107,32,105,110,100,101,120,61,0,32,99,
97,110,110,111,116,32,98,101,32,109,97,112,112,101,100,32,116,111,32,97,32,116,105,109,101,115,116,97,109,112,33,0,34,39,0,123,32,116,114,121,32,123,32,114,101,116,117,114,110,32,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,100,101,120,79,102,40,39,97,110,100,114,111,105,100,39,41,32,33,61,61,32,45,49,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,0,115,114,
99,47,76,111,99,97,108,73,112,68,105,115,99,111,118,101,114,101,114,46,99,99,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,100,97,116,97,32,99,104,97,110,110,101,108,46,32,67,97,110,110,111,116,32,103,101,116,32,108,111,99,97,108,32,73,80,0,115,114,99,47,112,111,108,105,99,105,101,115,47,46,46,47,109,101,100,105,97,47,46,46,47,104,116,116,112,47,46,46,47,106,115,47,46,46,47,117,116,105,108,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,123,105,100,61,39,0,44,98,97,110,
100,119,105,100,116,104,61,0,44,99,111,100,101,99,115,61,39,0,123,73,78,86,65,76,73,68,125,0,123,73,78,70,73,78,73,84,89,125,0,47,0,61,0,115,125,0,123,110,117,109,61,0,44,115,116,97,114,116,61,0,44,100,117,114,61,0,115,114,99,47,65,98,115,116,114,97,99,116,80,101,101,114,46,99,99,0,105,110,118,97,108,105,100,32,117,112,100,97,116,101,32,100,111,119,110,108,111,97,100,32,98,97,110,100,119,105,100,116,104,32,99,97,108,108,32,40,101,108,97,112,115,101,100,84,105,109,101,73,110,77,115,61,0,32,98,121,
116,101,115,68,111,119,110,108,111,97,100,101,100,61,0,115,114,99,47,87,101,98,82,116,99,72,97,110,100,108,101,114,46,99,99,0,79,110,73,99,101,67,97,110,100,105,100,97,116,101,32,99,97,110,100,105,100,97,116,101,0,78,101,119,32,68,97,116,97,32,67,104,97,110,110,101,108,32,65,100,100,101,100,0,77,101,100,105,97,32,115,116,114,101,97,109,32,114,101,109,111,118,101,100,32,102,114,111,109,32,112,101,101,114,32,99,111,110,110,101,99,116,105,111,110,0,78,101,119,32,109,101,100,105,97,32,115,116,114,101,
97,109,32,97,100,100,101,100,32,116,111,32,112,101,101,114,32,99,111,110,110,101,99,116,105,111,110,0,69,114,114,111,114,32,105,110,32,87,101,98,82,116,99,80,101,101,114,67,111,110,110,101,99,116,105,111,110,0,111,110,70,97,105,108,117,114,101,0,111,110,83,117,99,99,101,115,115,0,79,110,32,83,68,80,32,65,78,83,87,69,82,0,79,110,32,83,68,80,32,79,70,70,69,82,0,123,32,118,97,114,32,119,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,119,115,46,111,110,111,112,101,110,
32,61,32,110,117,108,108,59,32,119,115,46,111,110,109,101,115,115,97,103,101,32,61,32,110,117,108,108,59,32,119,115,46,111,110,99,108,111,115,101,32,61,32,110,117,108,108,59,32,119,115,46,111,110,101,114,114,111,114,32,61,32,110,117,108,108,59,32,119,115,46,99,108,111,115,101,40,41,59,32,125,0,123,32,118,97,114,32,116,104,105,122,32,61,32,36,48,59,32,118,97,114,32,117,114,108,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,111,110,79,112,
101,110,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,50,44,32,39,118,105,39,41,40,116,104,105,122,41,59,32,125,59,32,118,97,114,32,111,110,77,101,115,115,97,103,101,32,61,32,102,117,110,99,116,105,111,110,40,101,118,116,41,32,123,32,118,97,114,32,108,101,110,32,61,32,48,59,32,118,97,114,32,98,117,102,32,61,32,48,59,32,118,97,114,32,98,105,110,97,114,121,32,61,32,48,59,32,105,102,32,40,101,118,116,46,
100,97,116,97,32,105,110,115,116,97,110,99,101,111,102,32,65,114,114,97,121,66,117,102,102,101,114,41,32,123,32,118,97,114,32,110,97,116,105,118,101,66,117,102,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,101,118,116,46,100,97,116,97,41,59,32,98,105,110,97,114,121,32,61,32,49,59,32,108,101,110,32,61,32,110,97,116,105,118,101,66,117,102,46,108,101,110,103,116,104,59,32,98,117,102,32,61,32,77,111,100,117,108,101,91,39,95,109,97,108,108,111,99,39,93,40,108,101,110,41,59,32,72,69,65,
80,85,56,46,115,101,116,40,110,97,116,105,118,101,66,117,102,44,32,98,117,102,41,59,32,125,32,101,108,115,101,32,123,32,118,97,114,32,115,116,114,32,61,32,101,118,116,46,100,97,116,97,59,32,98,105,110,97,114,121,32,61,32,48,59,32,108,101,110,32,61,32,115,116,114,46,108,101,110,103,116,104,59,32,98,117,102,32,61,32,77,111,100,117,108,101,91,39,95,109,97,108,108,111,99,39,93,40,108,101,110,41,59,32,118,98,108,105,98,46,118,98,87,114,105,116,101,83,116,114,84,111,66,117,102,40,115,116,114,44,32,72,69,
65,80,85,56,44,32,98,117,102,41,59,32,125,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,105,105,105,39,41,40,116,104,105,122,44,32,98,117,102,44,32,108,101,110,44,32,98,105,110,97,114,121,41,59,32,125,59,32,118,97,114,32,111,110,67,108,111,115,101,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,52,44,32,39,118,105,39,41,40,116,104,105,122,
41,59,32,125,59,32,118,97,114,32,111,110,69,114,114,111,114,32,61,32,102,117,110,99,116,105,111,110,40,101,118,116,41,32,123,32,118,97,114,32,115,116,114,32,61,32,39,101,114,114,111,114,39,59,32,118,97,114,32,108,101,110,32,61,32,115,116,114,46,108,101,110,103,116,104,59,32,118,97,114,32,98,117,102,32,61,32,77,111,100,117,108,101,91,39,95,109,97,108,108,111,99,39,93,40,108,101,110,41,59,32,118,98,108,105,98,46,118,98,87,114,105,116,101,83,116,114,84,111,66,117,102,40,115,116,114,44,32,72,69,65,80,
85,56,44,32,98,117,102,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,105,39,41,40,116,104,105,122,44,32,98,117,102,44,32,108,101,110,41,59,32,125,59,32,118,97,114,32,119,115,32,61,32,110,101,119,32,87,101,98,83,111,99,107,101,116,40,117,114,108,41,59,32,119,115,46,98,105,110,97,114,121,84,121,112,101,32,61,32,39,97,114,114,97,121,98,117,102,102,101,114,39,59,32,119,115,46,111,110,111,112,101,110,32,61,32,111,110,79,112,101,
110,59,32,119,115,46,111,110,109,101,115,115,97,103,101,32,61,32,111,110,77,101,115,115,97,103,101,59,32,119,115,46,111,110,99,108,111,115,101,32,61,32,111,110,67,108,111,115,101,59,32,119,115,46,111,110,101,114,114,111,114,32,61,32,111,110,69,114,114,111,114,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,119,115,41,59,32,125,0,123,32,118,97,114,32,109,115,103,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,98,
108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,115,101,110,100,40,109,115,103,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,49,50,55,46,48,46,48,46,49,0,119,115,115,58,47,47,99,115,46,118,105,98,108,97,115,116,46,99,111,109,47,99,111,109,109,0,119,115,115,58,47,47,114,116,108,46,118,105,98,108,97,115,116,46,99,111,109,47,114,116,0,115,116,117,110,58,115,116,117,110,46,108,46,103,111,111,103,108,101,46,99,111,109,58,49,57,51,48,50,0,118,105,98,108,97,115,116,0,112,111,114,116,0,65,32,
112,111,114,116,32,116,111,32,98,105,110,100,32,116,104,101,32,112,108,97,121,101,114,32,111,110,46,32,73,103,110,111,114,101,100,32,105,102,32,116,104,101,32,112,108,97,121,101,114,32,100,111,101,115,110,39,116,32,117,115,101,32,110,101,116,119,111,114,107,105,110,103,46,0,104,111,115,116,0,65,32,104,111,115,116,32,116,111,32,98,105,110,100,32,116,104,101,32,112,108,97,121,101,114,32,111,110,46,32,73,103,110,111,114,101,100,32,105,102,32,116,104,101,32,112,108,97,121,101,114,32,100,111,101,115,110,
39,116,32,117,115,101,32,110,101,116,119,111,114,107,105,110,103,46,0,112,108,97,121,108,105,115,116,45,115,116,97,114,116,105,110,103,45,111,102,102,115,101,116,0,83,116,97,114,116,32,112,108,97,121,105,110,103,32,102,114,111,109,32,116,104,105,115,32,111,102,102,115,101,116,46,32,69,120,97,109,112,108,101,58,32,105,102,32,115,101,116,32,116,111,32,48,46,50,32,116,104,101,110,32,112,108,97,121,98,97,99,107,32,119,105,108,108,32,115,116,97,114,116,32,50,48,37,32,105,110,115,105,100,101,32,116,104,
101,32,67,68,78,32,112,108,97,121,108,105,115,116,46,0,104,108,115,45,99,111,110,115,117,109,101,114,45,99,104,117,110,107,115,45,112,101,114,45,115,101,103,109,101,110,116,0,84,104,101,32,110,117,109,98,101,114,32,111,102,32,99,104,117,110,107,115,32,116,111,32,103,114,111,117,112,32,105,110,32,97,32,72,76,83,32,83,101,103,109,101,110,116,32,102,111,114,32,116,104,101,32,72,76,83,32,99,111,110,115,117,109,101,114,46,32,66,121,32,68,101,102,97,117,108,116,32,101,113,117,97,108,115,32,116,111,32,116,
104,101,32,118,97,108,117,101,32,112,114,111,118,105,100,101,100,32,102,111,114,32,99,104,117,110,107,115,45,112,101,114,45,104,108,115,45,101,110,116,114,121,0,119,105,110,100,111,119,45,115,105,122,101,0,84,104,101,32,110,117,109,98,101,114,32,111,102,32,99,104,117,110,107,115,32,116,111,32,107,101,101,112,32,105,110,32,116,104,101,32,99,117,114,114,101,110,116,32,119,105,110,100,111,119,46,0,97,112,112,101,110,100,45,116,105,109,101,115,116,97,109,112,115,0,65,112,112,101,110,100,32,111,114,32,
110,111,116,32,116,105,109,101,115,116,97,109,112,61,39,116,105,109,101,115,116,97,109,112,39,32,116,111,32,101,118,101,114,121,32,114,101,113,117,101,115,116,46,32,72,101,108,112,115,32,119,105,116,104,32,98,114,111,119,115,101,114,32,99,97,99,104,101,115,32,119,104,101,110,32,116,104,101,32,115,97,109,101,32,110,97,109,101,115,32,97,114,101,32,114,101,117,115,101,100,32,102,111,114,32,100,105,102,102,101,114,101,110,116,32,99,104,117,110,107,115,46,0,115,104,97,114,101,45,115,101,103,109,101,110,
116,45,115,105,122,101,0,83,104,97,114,101,32,115,101,103,109,101,110,116,32,115,105,122,101,115,46,32,83,112,101,101,100,115,32,117,112,32,114,97,110,103,101,32,114,101,113,117,101,115,116,115,46,0,104,108,115,45,99,111,110,115,117,109,101,114,45,98,117,102,102,101,114,45,98,101,102,111,114,101,45,115,105,103,110,97,108,0,84,104,101,32,110,117,109,98,101,114,32,111,102,32,115,101,103,109,101,110,116,115,32,116,111,32,99,111,108,108,101,99,116,32,105,110,32,116,104,101,32,104,108,115,32,99,111,110,
115,117,109,101,114,32,112,108,97,121,108,105,115,116,32,98,101,102,111,114,101,32,112,108,97,121,98,97,99,107,32,114,101,97,100,105,110,101,115,115,32,105,115,32,115,105,103,110,97,108,101,100,46,0,104,108,115,45,99,111,110,115,117,109,101,114,45,112,108,97,121,108,105,115,116,45,108,101,110,0,84,104,101,32,108,101,110,103,116,104,32,111,102,32,116,104,101,32,104,108,115,32,99,111,110,115,117,109,101,114,32,103,101,110,101,114,97,116,101,100,32,112,108,97,121,108,105,115,116,0,105,110,105,116,105,
97,108,105,122,101,45,97,115,45,116,114,97,110,115,112,111,114,116,45,111,110,108,121,0,73,110,116,101,114,110,97,108,32,117,115,101,32,111,110,108,121,46,32,73,116,32,105,115,32,115,101,116,32,98,121,32,102,108,97,115,104,32,112,108,97,121,101,114,115,32,119,104,111,32,99,111,110,116,114,111,108,32,118,105,98,108,97,115,116,32,40,116,104,101,32,100,101,102,97,117,108,116,32,105,115,32,45,32,118,105,98,108,97,115,116,32,105,115,32,99,111,110,116,114,111,108,108,105,110,103,32,116,104,101,32,102,108,
97,115,104,32,112,108,97,121,101,114,41,0,117,115,101,114,45,97,103,101,110,116,0,104,116,116,112,32,112,114,111,116,111,99,111,108,32,117,115,101,114,32,97,103,101,110,116,32,116,111,32,98,101,32,117,115,101,100,44,32,116,104,101,32,100,101,102,97,117,108,116,32,105,115,32,39,118,105,98,108,97,115,116,39,32,0,105,110,105,116,105,97,108,45,115,101,101,107,45,116,105,109,101,0,115,116,97,114,116,32,116,104,101,32,112,108,97,121,98,97,99,107,32,102,114,111,109,32,116,104,101,32,115,112,101,99,105,102,
105,101,100,32,112,111,115,105,116,105,111,110,32,105,110,32,115,101,99,111,110,100,115,0,84,104,101,32,112,108,97,121,101,114,32,116,111,32,98,101,32,117,115,101,100,32,102,111,114,32,118,105,100,101,111,32,112,108,97,121,98,97,99,107,46,32,79,110,101,32,111,102,32,97,117,116,111,44,32,109,115,112,44,32,102,108,97,115,104,44,32,104,108,115,44,32,102,105,108,101,0,102,108,111,119,112,108,97,121,101,114,0,106,119,112,108,97,121,101,114,54,0,118,105,100,101,111,106,115,0,118,105,100,101,111,106,115,
45,109,115,112,0,109,115,112,0,97,117,116,111,0,105,110,45,109,101,109,0,105,110,45,109,101,109,45,105,115,111,0,100,117,109,109,121,0,85,110,107,110,111,119,110,32,118,97,108,117,101,32,102,111,114,32,97,114,103,117,109,101,110,116,32,112,108,97,121,101,114,61,32,0,102,111,114,99,101,77,80,69,71,0,70,111,114,99,101,32,117,115,97,103,101,32,111,102,32,77,80,69,71,46,0,109,112,101,103,0,115,107,105,112,70,105,114,115,116,78,111,110,73,100,114,0,70,111,114,99,101,32,114,101,109,117,120,101,114,32,116,
111,32,115,107,105,112,32,102,105,114,115,116,32,110,111,110,32,73,68,82,32,72,50,54,52,32,102,114,97,109,101,115,46,0,115,107,105,112,85,110,107,110,111,119,110,78,97,108,85,110,105,116,115,0,70,111,114,99,101,32,114,101,109,117,120,101,114,32,116,111,32,105,103,110,111,114,101,32,110,111,110,45,100,101,102,105,110,101,100,32,78,65,76,32,85,110,105,116,115,46,0,102,111,114,99,101,72,69,65,65,67,0,70,111,114,99,101,32,117,115,97,103,101,32,111,102,32,72,69,45,65,65,67,46,0,104,101,65,97,99,0,114,
101,109,117,120,101,114,83,101,116,83,97,109,112,108,101,70,108,97,103,0,115,101,116,32,115,97,109,112,108,101,32,102,108,97,103,32,105,110,32,116,114,117,110,32,115,97,109,112,108,101,32,98,111,120,101,115,46,0,114,101,113,117,101,115,116,0,84,104,101,32,114,101,113,117,101,115,116,32,97,108,103,111,114,105,116,104,109,32,116,111,32,117,115,101,46,32,79,110,101,32,111,102,32,39,105,109,109,101,100,105,97,116,101,39,44,32,39,112,108,97,121,101,114,39,44,32,39,115,116,97,108,108,39,32,97,110,100,32,
39,111,110,101,45,111,118,101,114,45,112,101,101,114,115,39,0,105,109,109,101,100,105,97,116,101,0,97,110,121,45,105,109,109,101,100,105,97,116,101,0,115,116,97,108,108,0,111,110,101,45,111,118,101,114,45,112,101,101,114,115,0,118,111,100,0,85,110,107,110,111,119,110,32,118,97,108,117,101,32,102,111,114,32,97,114,103,117,109,101,110,116,32,114,101,113,117,101,115,116,61,32,0,112,101,101,114,45,105,110,0,83,101,116,115,32,109,97,120,105,109,97,108,32,110,117,109,98,101,114,32,111,102,32,105,110,99,
111,109,109,105,110,103,32,99,111,110,110,101,99,116,105,111,110,115,32,112,101,114,32,112,101,101,114,0,112,101,101,114,45,111,117,116,0,83,101,116,115,32,109,97,120,105,109,97,108,32,110,117,109,98,101,114,32,111,102,32,111,117,116,103,111,105,110,103,32,99,111,110,110,101,99,116,105,111,110,115,32,112,101,114,32,112,101,101,114,0,97,99,116,105,118,101,45,99,104,117,110,107,45,114,101,113,117,101,115,116,115,45,112,101,114,45,112,101,101,114,0,83,101,116,32,116,104,101,32,109,97,120,105,109,97,
108,32,110,117,109,98,101,114,32,111,102,32,97,99,116,105,118,101,32,99,104,117,110,107,32,114,101,113,117,101,115,116,32,112,101,114,32,112,101,101,114,0,99,111,110,110,101,99,116,45,116,111,45,115,119,97,114,109,0,84,111,103,103,108,101,115,32,119,104,101,116,104,101,114,32,116,104,105,115,32,112,101,101,114,32,115,104,111,117,108,100,32,99,111,110,110,101,99,116,32,116,111,32,111,116,104,101,114,32,112,101,101,114,115,32,111,114,32,110,111,116,0,109,97,120,45,114,101,113,117,101,115,116,101,100,
45,99,104,117,110,107,115,45,102,114,111,109,45,99,100,110,0,84,104,101,32,109,97,120,105,109,117,109,32,110,117,109,98,101,114,32,111,102,32,111,112,101,110,32,99,104,117,110,107,32,114,101,113,117,101,115,116,32,102,114,111,109,32,116,104,101,32,67,68,78,0,112,105,101,99,101,45,115,105,122,101,0,84,104,101,32,115,105,122,101,32,111,102,32,116,104,101,32,112,105,101,99,101,46,32,84,104,105,115,32,118,97,108,117,101,32,105,115,32,117,115,101,100,32,116,111,32,115,112,108,105,116,32,97,32,99,104,117,
110,107,32,105,110,112,117,116,32,109,117,108,116,105,112,108,101,32,112,105,101,99,101,115,32,115,111,32,116,104,97,116,32,105,116,32,99,97,110,32,98,101,32,115,101,110,116,32,117,115,105,110,103,32,119,101,98,114,116,99,32,100,97,116,97,99,104,97,110,110,101,108,0,117,115,101,45,99,104,101,99,107,115,117,109,115,0,100,111,32,99,104,101,99,107,115,117,109,109,105,110,103,32,97,115,32,97,32,112,114,111,116,101,99,116,105,111,110,32,109,101,99,104,97,110,105,115,109,32,97,103,97,105,110,115,116,32,
98,97,100,32,112,101,101,114,115,32,97,110,100,32,99,111,110,110,101,99,116,105,111,110,115,0,112,101,101,114,45,98,108,97,99,107,108,105,115,116,45,108,101,110,0,84,104,101,32,109,97,120,105,109,117,109,32,110,117,109,98,101,114,32,111,102,32,112,101,101,114,115,32,116,104,97,116,32,99,97,110,32,98,101,32,98,108,97,99,107,32,108,105,115,116,101,100,46,0,112,108,97,121,108,105,115,116,45,116,105,109,101,111,117,116,0,80,108,97,121,108,105,115,116,32,100,111,119,110,108,111,97,100,32,116,105,109,101,
111,117,116,0,109,105,110,105,109,97,108,45,115,101,103,109,101,110,116,45,114,101,113,117,101,115,116,45,116,105,109,101,111,117,116,0,77,105,110,105,109,97,108,32,115,101,103,109,101,110,116,32,114,101,113,117,101,115,116,32,116,105,109,101,111,117,116,0,111,110,108,121,45,102,117,108,108,121,45,115,117,112,112,111,114,116,101,100,45,101,110,118,115,0,82,117,110,32,111,110,108,121,32,117,110,100,101,114,32,102,117,108,108,121,32,115,117,112,112,111,114,116,101,100,32,101,110,118,105,114,111,110,
109,101,110,116,115,0,99,104,101,99,107,45,99,104,117,110,107,45,100,111,119,110,108,111,97,100,45,116,105,109,101,111,117,116,45,114,97,116,105,111,0,84,104,101,32,116,105,109,101,111,117,116,32,116,111,32,119,97,105,116,32,98,101,102,111,114,101,32,99,104,101,99,107,105,110,103,32,105,102,32,116,104,101,32,99,104,117,110,107,32,100,111,119,110,108,111,97,100,32,112,114,111,99,101,115,115,32,105,115,32,103,111,105,110,103,32,119,101,108,108,0,99,104,101,99,107,45,102,111,114,45,102,105,114,115,116,
45,112,105,101,99,101,45,116,105,109,101,111,117,116,0,84,104,101,32,116,105,109,101,111,117,116,32,116,111,32,119,97,105,116,32,98,101,102,111,114,101,32,99,104,101,99,107,105,110,103,32,105,102,32,119,101,39,118,101,32,114,101,99,101,105,118,101,100,32,97,32,112,105,101,99,101,0,114,101,109,117,120,101,114,45,108,111,103,0,84,104,101,32,108,111,103,32,108,101,118,101,108,32,102,111,114,32,116,104,101,32,114,101,109,117,120,101,114,0,99,111,109,109,45,115,116,97,116,105,111,110,0,68,101,102,97,117,
108,116,32,67,111,109,109,32,115,116,97,116,105,111,110,32,117,114,108,0,100,101,98,108,97,99,107,108,105,115,116,45,112,101,101,114,115,45,116,105,109,101,111,117,116,0,116,105,109,101,111,117,116,32,98,101,102,111,114,101,32,119,101,32,103,101,116,32,112,101,101,114,115,32,102,114,111,109,32,116,104,101,32,98,108,97,99,107,108,105,115,116,0,112,97,110,105,99,0,116,117,114,110,32,118,105,98,108,97,115,116,32,111,110,47,111,102,102,0,115,101,110,100,45,102,105,110,45,102,111,114,45,102,105,110,0,
73,102,32,116,114,117,101,32,119,104,101,110,32,97,32,39,102,105,110,39,32,109,101,115,115,97,103,101,32,105,115,32,114,101,99,101,105,118,101,100,32,97,32,39,102,105,110,39,32,109,101,115,115,97,103,101,32,105,115,32,115,101,110,100,32,105,110,32,114,101,115,112,111,110,115,101,46,0,117,115,101,45,110,97,116,105,118,101,45,104,108,115,0,85,115,101,32,116,104,101,32,110,97,116,105,118,101,32,72,76,83,32,112,108,97,121,101,114,32,105,102,32,115,117,112,112,111,114,116,101,100,32,111,110,32,116,104,
101,32,112,108,97,116,102,111,114,109,46,0,105,110,105,116,105,97,108,45,97,98,114,45,105,110,100,101,120,0,84,104,101,32,105,110,100,101,120,32,111,102,32,116,104,101,32,115,117,98,45,112,108,97,121,108,105,115,116,32,116,111,32,98,101,32,117,115,101,100,32,97,115,32,116,104,101,32,105,110,105,116,105,97,108,32,112,108,97,121,108,105,115,116,32,119,104,101,110,32,97,32,118,97,114,105,97,110,116,32,112,108,97,121,108,105,115,116,32,105,115,32,112,114,111,118,105,100,101,100,0,97,98,114,0,69,110,97,
98,108,101,115,47,68,105,115,97,98,108,101,115,32,97,117,116,111,32,97,100,97,112,116,105,118,101,32,98,105,116,114,97,116,101,32,115,117,112,112,111,114,116,0,97,98,114,45,99,111,110,115,105,100,101,114,45,100,105,109,101,110,115,105,111,110,115,0,84,97,107,101,32,105,110,116,111,32,99,111,110,115,105,100,101,114,97,116,105,111,110,32,116,104,101,32,99,117,114,114,101,110,116,32,112,108,97,121,101,114,32,119,105,100,116,104,32,97,110,100,32,104,105,103,104,116,32,119,104,101,110,32,99,104,111,111,
115,105,110,103,32,116,104,101,32,98,101,115,116,32,115,116,114,101,97,109,32,97,108,116,101,114,110,97,116,105,118,101,0,105,110,105,116,105,97,108,45,115,101,103,109,101,110,116,45,115,104,105,102,116,0,84,104,101,32,105,110,105,116,105,97,108,83,101,103,109,101,110,116,83,104,105,102,116,32,105,110,32,115,101,103,109,101,110,116,115,0,101,110,97,98,108,101,45,114,101,97,108,116,105,109,101,45,108,111,103,103,103,101,114,0,69,110,97,98,108,101,115,47,68,105,115,97,98,108,101,115,32,114,101,97,108,
116,105,109,101,32,108,111,103,103,105,110,103,0,101,110,97,98,108,101,45,114,101,97,108,116,105,109,101,45,108,111,103,103,101,114,0,114,101,97,108,116,105,109,101,45,108,111,103,103,101,114,45,115,101,114,118,101,114,0,83,101,114,118,101,114,32,85,82,76,32,102,111,114,32,114,101,97,108,116,105,109,101,32,108,111,103,103,105,110,103,0,112,100,110,45,115,105,103,110,97,108,105,110,103,45,115,101,114,118,101,114,0,111,118,101,114,114,105,100,101,32,116,104,101,32,100,101,102,97,117,108,116,32,103,
111,111,103,108,101,32,115,105,103,110,97,108,105,110,103,32,115,101,114,118,101,114,0,118,111,100,45,98,117,102,102,101,114,45,115,105,122,101,0,118,111,100,32,98,117,102,102,101,114,32,115,105,122,101,0,116,114,97,99,107,101,114,45,117,115,101,114,45,100,97,116,97,0,84,104,105,115,32,100,97,116,97,32,105,115,32,115,101,110,100,32,100,105,114,101,99,116,108,121,32,116,111,32,116,104,101,32,116,114,97,99,107,101,114,32,97,110,100,32,105,116,39,115,32,109,101,97,110,105,110,103,32,105,115,32,108,101,
102,116,32,111,112,101,110,0,107,101,121,0,76,105,99,101,110,115,101,32,75,101,121,0,100,101,109,117,120,0,100,101,109,117,120,32,116,115,32,116,111,32,115,101,112,97,114,97,116,101,32,105,115,111,32,115,116,114,101,97,109,115,0,102,111,114,99,101,45,100,101,109,117,120,45,111,110,45,109,112,101,103,45,97,117,100,105,111,0,99,111,110,115,117,109,101,45,105,110,99,111,109,112,108,101,116,101,45,97,117,100,105,111,45,112,97,99,107,101,116,115,0,99,111,110,115,117,109,101,45,105,110,99,111,109,112,108,
101,116,101,45,118,105,100,101,111,45,112,97,99,107,101,116,115,0,97,110,100,114,111,105,100,45,117,115,101,45,118,105,98,108,97,115,116,45,116,115,45,114,101,109,117,120,101,114,0,108,111,110,103,45,112,97,117,115,101,45,116,105,109,101,111,117,116,0,101,110,97,98,108,101,45,112,100,110,0,69,110,97,98,108,101,115,47,68,105,115,97,98,108,101,115,32,80,68,78,32,111,112,116,105,109,105,122,97,116,105,111,110,0,101,110,97,98,108,101,45,97,110,97,108,121,116,105,99,115,0,69,110,97,98,108,101,115,47,68,
105,115,97,98,108,101,115,32,65,110,97,108,121,116,105,99,115,0,115,101,108,102,45,99,111,110,116,97,105,110,101,100,45,115,101,103,109,101,110,116,115,0,73,102,32,116,114,117,101,32,97,118,32,103,97,112,32,99,111,114,114,101,99,116,105,111,110,32,105,115,32,112,101,114,102,111,114,109,101,100,32,98,97,115,101,100,32,111,110,32,115,101,103,109,101,110,116,32,98,111,117,110,100,97,114,121,46,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,115,0,68,101,115,105,103,110,97,116,101,100,32,
112,101,101,114,115,32,101,110,97,98,108,101,47,100,105,115,97,98,108,101,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,115,45,112,114,105,111,114,105,116,121,0,68,101,115,105,103,110,97,116,101,100,32,112,101,101,114,115,32,112,114,105,111,114,105,116,121,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,115,45,99,111,117,110,116,0,68,101,115,105,103,110,97,116,101,100,32,112,101,101,114,115,32,99,111,117,110,116,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,
115,45,97,108,108,45,116,105,109,101,111,117,116,0,72,111,119,32,108,111,110,103,32,119,101,32,119,97,105,116,32,98,101,102,111,114,101,32,115,116,97,114,116,105,110,103,32,116,104,101,32,67,68,78,32,99,111,110,110,101,99,116,105,111,110,32,97,102,116,101,114,32,119,101,32,114,101,99,101,105,118,101,32,100,101,115,105,103,110,97,116,101,100,32,112,101,101,114,115,32,117,112,100,97,116,101,32,102,114,111,109,32,97,108,108,32,112,101,101,114,115,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,
114,115,45,111,110,101,45,116,104,105,114,100,45,116,105,109,101,111,117,116,0,72,111,119,32,108,111,110,103,32,119,101,32,119,97,105,116,32,98,101,102,111,114,101,32,115,116,97,114,116,105,110,103,32,116,104,101,32,67,68,78,32,99,111,110,110,101,99,116,105,111,110,32,97,102,116,101,114,32,119,101,32,114,101,99,101,105,118,101,32,100,101,115,105,103,110,97,116,101,100,32,112,101,101,114,115,32,117,112,100,97,116,101,32,102,114,111,109,32,49,47,51,32,111,102,32,116,104,101,32,112,101,101,114,115,0,
100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,115,45,110,111,45,112,101,101,114,115,45,116,105,109,101,111,117,116,0,72,111,119,32,108,111,110,103,32,119,101,32,119,97,105,116,32,98,101,102,111,114,101,32,115,116,97,114,116,105,110,103,32,116,104,101,32,67,68,78,32,99,111,110,110,101,99,116,105,111,110,32,97,102,116,101,114,32,119,104],"i8",4,x.D+30720);
M([101,110,32,119,101,32,99,97,110,110,111,116,32,99,111,110,110,101,99,116,32,116,111,32,101,118,101,110,32,49,47,51,32,111,102,32,116,104,101,32,112,101,101,114,115,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,115,45,114,101,115,117,109,101,45,116,105,109,101,111,117,116,0,72,111,119,32,108,111,110,103,32,116,111,32,119,97,105,116,32,98,101,102,111,114,101,32,115,116,97,114,116,105,110,103,32,100,111,119,110,108,111,97,100,115,32,102,114,111,109,32,67,68,78,32,119,104,101,110,32,
116,104,101,32,99,117,114,114,101,110,116,32,100,101,115,105,103,110,97,116,101,100,32,112,101,101,114,115,32,116,105,109,101,111,117,116,115,32,97,110,100,32,116,104,101,32,99,117,114,114,101,110,116,32,112,101,101,114,32,105,115,32,115,101,108,101,99,116,101,100,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,115,45,109,97,120,45,97,103,101,0,72,111,119,32,108,111,110,103,32,116,111,32,119,97,105,116,32,102,111,114,32,117,112,100,97,116,101,32,102,114,111,109,32,100,101,115,105,103,
110,97,116,101,100,32,112,101,101,114,32,98,101,102,111,114,101,32,114,101,109,111,118,105,110,103,32,105,116,32,102,114,111,109,32,100,101,115,105,103,110,97,116,101,100,0,100,101,115,105,103,110,97,116,101,100,45,112,101,101,114,115,45,117,112,100,97,116,101,45,105,110,116,101,114,118,97,108,0,72,111,119,32,111,102,116,101,110,32,116,111,32,115,101,110,100,32,100,101,115,105,103,110,97,116,101,100,32,112,101,101,114,115,32,117,112,100,97,116,101,32,109,101,115,115,97,103,101,0,100,101,108,97,121,
101,100,45,115,116,97,114,116,45,101,110,97,98,108,101,100,0,69,110,97,98,108,101,47,100,105,115,97,98,108,101,32,100,101,108,97,121,101,100,32,115,116,97,114,116,0,100,101,108,97,121,101,100,45,115,116,97,114,116,45,116,105,109,101,111,117,116,0,72,111,119,32,108,111,110,103,32,116,111,32,119,97,105,116,32,98,101,102,111,114,101,32,115,116,97,114,116,105,110,103,32,100,111,119,110,108,111,97,100,32,102,114,111,109,32,67,68,78,32,105,102,32,116,104,101,114,101,32,97,114,101,32,100,101,108,97,121,
101,100,83,116,97,114,116,77,105,110,80,101,101,114,115,32,111,110,32,116,104,105,115,32,99,104,97,110,110,101,108,0,100,101,108,97,121,101,100,45,115,116,97,114,116,45,109,105,110,45,112,101,101,114,115,0,72,111,119,32,109,97,110,121,32,112,101,101,114,115,32,97,114,101,32,114,101,113,117,105,114,101,100,32,111,110,32,116,104,105,115,32,99,104,97,110,110,101,108,32,116,111,32,116,114,105,103,103,101,114,32,100,101,108,97,121,101,100,32,115,116,97,114,116,0,105,110,105,116,105,97,108,45,109,97,120,
45,97,99,116,105,118,101,45,117,112,108,111,97,100,115,0,72,111,119,32,109,97,110,121,32,97,99,116,105,118,101,32,117,112,108,111,97,100,115,32,97,114,101,32,97,108,108,111,119,101,100,32,105,110,105,116,105,97,108,108,121,0,108,111,119,45,98,117,102,102,101,114,45,108,101,118,101,108,0,73,102,32,116,104,101,32,98,117,102,102,101,114,32,108,101,118,101,108,32,40,105,110,32,115,101,99,111,110,100,115,41,32,100,114,111,112,32,98,101,108,111,119,32,116,104,105,115,32,108,101,118,101,108,44,32,86,105,
98,108,97,115,116,32,119,105,108,108,32,115,116,97,114,116,32,114,101,113,117,101,115,116,105,110,103,32,97,100,100,105,116,105,111,110,97,108,32,99,104,117,110,107,115,0,98,117,102,102,101,114,45,119,104,105,108,101,45,112,97,117,115,101,100,0,73,102,32,111,110,44,32,86,105,98,108,97,115,116,32,119,105,108,108,32,99,111,110,116,105,110,117,101,32,100,111,119,110,108,111,97,100,105,110,103,32,99,104,117,110,107,115,32,119,104,105,108,101,32,116,104,101,32,112,108,97,121,101,114,32,105,115,32,112,
97,117,115,101,100,32,117,110,116,105,108,32,105,116,115,32,98,117,102,102,101,114,32,105,115,32,102,105,108,108,101,100,46,0,98,97,115,101,45,117,114,108,0,84,104,101,32,98,97,115,101,32,117,114,108,32,116,111,32,117,115,101,32,102,111,114,32,114,101,115,111,117,114,99,101,115,32,116,104,97,116,32,97,114,101,32,108,111,97,100,101,100,32,111,110,32,100,101,109,97,110,100,0,105,110,105,116,105,97,108,45,116,116,108,0,73,110,105,116,105,97,108,32,84,84,76,32,102,111,114,32,87,105,108,108,32,72,97,118,
101,32,109,101,115,115,97,103,101,115,0,101,110,97,98,108,101,45,117,110,105,113,117,101,45,118,105,101,119,101,114,45,116,114,97,99,107,105,110,103,0,69,110,97,98,108,101,115,32,116,114,97,99,107,105,110,103,32,111,102,32,118,105,101,119,101,114,115,32,98,121,32,115,101,110,100,105,110,103,32,97,32,118,105,119,101,114,45,105,100,32,116,111,32,116,104,101,32,116,114,97,99,107,101,114,0,118,105,101,119,101,114,45,105,100,0,84,104,101,32,118,105,101,119,101,114,32,105,100,32,116,111,32,116,104,101,
32,115,101,110,100,32,116,111,32,116,104,101,32,116,114,97,99,107,101,114,46,32,73,102,32,101,109,112,116,121,32,118,105,98,108,97,115,116,32,119,105,108,108,32,97,117,116,111,32,103,101,110,101,114,97,116,101,32,111,110,101,0,105,110,105,116,105,97,108,45,115,112,101,101,100,45,109,101,97,115,117,114,101,109,101,110,116,45,112,105,101,99,101,115,45,99,111,117,110,116,0,72,111,119,32,109,97,110,121,32,112,105,101,99,101,115,32,116,111,32,117,115,101,32,119,104,101,110,32,109,101,97,115,117,114,105,
110,103,32,116,104,101,32,115,112,101,101,100,32,98,101,116,119,101,101,110,32,115,112,101,101,100,115,0,113,117,97,108,105,116,121,45,99,104,97,110,103,101,45,112,111,108,105,99,121,0,72,111,119,32,115,104,111,117,108,100,32,86,105,98,108,97,115,116,32,116,114,97,110,115,105,116,105,111,110,32,116,111,32,97,32,110,101,119,32,113,117,97,108,105,116,121,46,32,79,110,101,32,111,102,32,39,115,109,111,111,116,104,39,32,111,114,32,39,105,109,109,101,100,105,97,116,101,39,0,115,109,111,111,116,104,0,85,
110,107,110,111,119,110,32,118,97,108,117,101,32,102,111,114,32,97,114,103,117,109,101,110,116,32,113,117,97,108,105,116,121,32,99,104,97,110,103,101,32,112,111,108,105,99,121,0,115,114,99,47,87,101,98,114,116,99,80,101,101,114,67,111,110,110,101,99,116,105,111,110,70,97,99,116,111,114,121,46,99,99,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32,100,97,116,97,32,99,104,97,110,110,101,108,32,119,105,116,104,111,117,116,32,97,32,112,101,101,114,32,99,111,110,110,101,99,116,105,111,110,0,115,
114,99,47,67,104,97,110,110,101,108,87,105,110,100,111,119,46,99,99,0,97,100,100,80,105,101,99,101,40,0,41,32,99,97,108,108,101,100,32,119,105,116,104,32,99,104,117,110,107,32,111,117,116,32,111,102,32,119,105,110,100,111,119,32,40,111,102,102,115,101,116,61,0,115,114,99,47,67,104,117,110,107,46,99,99,0,112,105,101,99,101,40,105,110,100,101,120,61,0,41,32,105,115,32,115,101,116,32,116,119,105,99,101,0,112,105,101,99,101,40,112,105,101,99,101,73,100,120,61,0,41,32,105,115,32,111,117,116,32,111,102,
32,98,111,117,110,100,32,111,102,32,99,104,117,110,107,40,115,105,122,101,61,0,67,97,110,110,111,116,32,115,101,110,100,32,100,97,116,97,32,98,117,102,102,101,114,40,98,105,110,97,114,121,61,0,41,32,98,117,102,102,101,114,101,100,65,109,111,117,110,116,61,0,115,114,99,47,80,114,111,116,111,67,104,97,110,110,101,108,46,99,99,0,91,112,114,111,116,111,99,93,32,117,110,107,110,111,119,110,32,109,101,115,115,97,103,101,40,98,105,110,97,114,121,61,0,41,32,114,101,99,101,105,118,101,100,46,32,68,105,115,
99,97,114,100,105,110,103,46,0,99,97,110,110,111,116,32,112,97,99,107,32,109,101,115,115,97,103,101,46,32,73,103,110,111,114,105,110,103,46,0,115,114,99,47,80,114,111,116,111,46,99,99,0,91,98,105,110,112,114,111,116,111,93,32,68,111,110,39,116,32,107,110,111,119,32,104,111,119,32,116,111,32,117,110,112,97,99,107,32,109,101,115,115,97,103,101,32,111,102,32,116,121,112,101,32,0,73,110,118,97,108,105,100,32,98,105,116,102,105,101,108,100,32,109,101,115,115,97,103,101,46,32,84,104,101,32,110,117,109,
98,101,114,32,111,102,32,98,105,116,115,32,100,111,101,115,110,39,116,32,99,111,114,114,101,115,112,111,110,100,101,110,116,32,116,111,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,104,117,110,107,32,115,105,122,101,115,32,115,101,110,116,46,32,73,103,110,111,114,105,110,103,32,97,108,108,32,99,104,117,110,107,32,115,105,122,101,115,46,0,32,98,121,116,101,115,32,114,101,113,117,114,101,100,61,0,32,105,110,32,109,101,115,115,97,103,101,61,0,99,104,117,110,107,73,110,100,101,120,0,116,105,
109,101,0,115,114,99,47,112,108,97,121,101,114,115,47,65,98,115,116,114,97,99,116,80,108,97,121,101,114,46,99,99,0,67,104,117,110,107,32,105,100,120,61,0,32,100,101,99,114,121,112,116,101,100,0,112,108,97,121,101,114,32,114,101,115,117,109,101,100,0,112,108,97,121,101,114,32,112,97,117,115,101,100,0,114,101,97,115,115,101,109,98,108,101,45,99,100,110,45,99,104,117,110,107,115,0,83,107,105,112,112,101,100,32,109,105,115,115,105,110,103,32,84,83,32,40,105,100,120,61,0,41,32,65,66,73,32,105,115,32,0,
32,119,105,110,100,111,119,32,0,83,107,105,112,112,101,100,32,110,111,116,32,102,117,108,108,32,84,83,32,102,111,114,32,0,65,66,73,32,105,115,32,0,75,101,121,32,105,115,32,116,111,111,32,115,104,111,114,116,46,32,69,120,112,101,99,116,101,100,61,49,54,32,65,99,116,117,97,108,61,0,123,32,118,97,114,32,110,97,116,105,118,101,68,97,116,97,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,41,59,32,118,97,114,32,98,117,102,32,61,
32,77,111,100,117,108,101,91,39,95,109,97,108,108,111,99,39,93,40,36,49,41,59,32,72,69,65,80,85,56,46,115,101,116,40,110,97,116,105,118,101,68,97,116,97,44,32,98,117,102,41,59,32,114,101,116,117,114,110,32,98,117,102,59,32,125,0,123,32,119,105,110,100,111,119,46,114,101,109,111,118,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,98,108,117,114,39,44,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,41,59,32,119,105,110,100,111,119,46,114,101,109,111,118,101,69,118,101,110,
116,76,105,115,116,101,110,101,114,40,39,102,111,99,117,115,39,44,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,41,59,32,125,0,123,32,116,114,121,32,123,32,118,97,114,32,112,114,101,118,84,121,112,101,32,61,32,34,34,59,32,118,105,98,108,97,115,116,95,108,105,115,116,101,110,101,114,95,98,97,99,107,103,114,111,117,110,100,32,61,32,102,117,110,99,116,105,111,110,32,118,105,98,108,97,115,116,95,108,105,115,116,101,110,101,114,95,98,97,99,107,103,114,111,117,110,100,40,101,41,32,123,
32,105,102,32,40,112,114,101,118,84,121,112,101,32,33,61,32,101,46,116,121,112,101,41,32,123,32,115,119,105,116,99,104,32,40,101,46,116,121,112,101,41,32,123,32,99,97,115,101,32,34,98,108,117,114,34,58,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,44,32,39,118,105,39,41,40,36,48,41,59,32,98,114,101,97,107,59,32,99,97,115,101,32,34,102,111,99,117,115,34,58,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,50,44,
32,39,118,105,39,41,40,36,48,41,59,32,98,114,101,97,107,59,32,125,32,125,32,112,114,101,118,84,121,112,101,32,61,32,101,46,116,121,112,101,59,32,125,59,32,119,105,110,100,111,119,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,98,108,117,114,39,44,32,118,105,98,108,97,115,116,95,108,105,115,116,101,110,101,114,95,98,97,99,107,103,114,111,117,110,100,41,59,32,119,105,110,100,111,119,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,102,111,99,117,115,39,44,
32,118,105,98,108,97,115,116,95,108,105,115,116,101,110,101,114,95,98,97,99,107,103,114,111,117,110,100,41,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,118,105,98,108,97,115,116,95,108,105,115,116,101,110,101,114,95,98,97,99,107,103,114,111,117,110,100,41,59,32,125,32,99,97,116,99,104,40,101,41,32,123,32,99,111,110,115,111,108,101,46,101,114,114,111,114,40,101,41,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,118,105,98,108,97,115,116,46,99,114,121,
112,116,111,46,106,115,0,115,114,99,47,99,114,121,112,116,111,47,86,101,99,114,121,112,116,101,114,65,100,97,112,116,101,114,46,99,99,0,68,101,99,114,121,112,116,105,110,103,32,109,117,108,116,105,112,108,101,32,99,104,117,110,107,115,32,97,116,32,116,104,101,32,115,97,109,101,32,116,105,109,101,32,105,115,32,78,89,73,46,32,68,105,115,99,97,114,100,105,110,103,32,116,104,101,32,110,101,119,32,111,110,101,46,0,118,105,98,108,97,115,116,95,118,101,99,114,121,112,116,101,114,95,98,101,103,105,110,95,
99,104,117,110,107,0,118,105,98,108,97,115,116,95,118,101,99,114,121,112,116,101,114,95,102,101,101,100,0,118,105,98,108,97,115,116,95,118,101,99,114,121,112,116,101,114,95,101,110,100,95,99,104,117,110,107,0,115,114,99,47,114,101,113,97,108,103,111,115,47,65,98,115,116,114,97,99,116,82,101,113,117,101,115,116,65,108,103,111,46,99,99,0,91,65,98,115,82,101,113,65,108,103,111,93,32,0,66,97,100,32,118,97,108,117,101,32,102,111,114,32,98,101,115,116,80,101,101,114,70,111,114,67,104,117,110,107,83,116,
114,97,116,101,103,121,0,115,114,99,47,114,101,113,97,108,103,111,115,47,82,101,113,117,101,115,116,80,108,97,121,101,114,65,108,103,111,46,99,99,0,91,114,112,97,93,32,109,111,118,105,110,103,32,116,104,101,32,99,114,105,116,105,99,97,108,32,122,111,110,101,32,102,111,114,119,97,114,100,32,116,111,32,112,111,115,32,0,32,100,105,115,116,97,110,99,101,40,0,91,114,112,97,93,32,109,111,118,105,110,103,32,116,104,101,32,99,114,105,116,105,99,97,108,32,122,111,110,101,32,98,97,99,107,119,97,114,100,32,
116,111,32,112,111,115,32,0,115,114,99,47,114,101,113,97,108,103,111,115,47,83,116,97,108,108,82,101,113,117,101,115,116,65,108,103,111,46,99,99,0,91,115,116,97,108,108,32,97,108,103,111,93,32,99,97,110,110,111,116,32,115,116,97,108,108,32,112,105,101,99,101,32,116,104,97,116,32,105,115,32,111,117,116,32,105,102,32,116,104,101,32,119,105,110,100,111,119,0,91,115,116,97,108,108,32,97,103,108,111,93,32,91,98,117,103,93,32,115,116,97,108,108,32,116,105,109,101,111,117,116,32,99,97,108,108,98,97,99,107,
32,99,97,108,108,101,100,32,102,111,114,32,99,104,117,110,107,32,116,104,97,116,32,119,101,32,100,111,110,39,116,32,104,97,118,101,32,97,32,116,105,109,101,114,32,115,101,116,32,102,111,114,46,0,32,115,116,97,108,108,32,119,105,110,100,111,119,40,111,102,102,115,101,116,61,0,115,114,99,47,114,101,113,97,108,103,111,115,47,65,98,115,116,114,97,99,116,67,114,105,116,105,99,97,108,90,111,110,101,65,108,103,111,46,99,99,0,67,97,110,110,111,116,32,119,105,110,100,32,112,108,97,121,101,114,32,116,105,109,
101,114,32,40,116,105,109,101,111,117,116,73,110,77,115,61,0,91,114,112,97,93,32,67,111,114,114,101,99,116,105,110,103,32,99,104,117,110,107,32,116,105,109,101,114,32,116,111,32,0,109,115,46,32,112,114,101,118,32,100,117,114,97,116,105,111,110,61,32,0,32,110,101,119,32,100,117,114,97,116,105,111,110,61,0,115,114,99,47,114,101,113,97,108,103,111,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,115,114,99,47,104,108,115,47,72,108,115,73,110,105,116,105,97,108,80,108,97,121,108,
105,115,116,77,97,110,97,103,101,114,46,99,99,0,34,32,0,10,11,12,13,0,32,9,13,0,115,114,99,47,104,108,115,47,72,108,115,80,108,97,121,108,105,115,116,82,101,97,100,101,114,46,99,99,0,91,72,108,115,80,108,97,121,108,105,115,116,82,101,97,100,101,114,93,32,0,69,109,112,116,121,32,112,108,97,121,108,105,115,116,0,35,69,88,84,77,51,85,0,70,111,114,109,97,116,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,35,69,88,84,73,78,70,0,35,69,88,84,45,88,45,66,89,84,69,82,65,78,71,69,58,0,35,69,88,84,
45,88,45,84,65,82,71,69,84,68,85,82,65,84,73,79,78,0,35,69,88,84,45,88,45,69,78,68,76,73,83,84,0,35,69,88,84,45,88,45,77,69,68,73,65,45,83,69,81,85,69,78,67,69,0,35,69,88,84,45,88,45,83,84,82,69,65,77,45,73,78,70,58,0,35,69,88,84,45,88,45,75,69,89,58,0,35,69,88,84,45,88,45,80,82,79,71,82,65,77,45,68,65,84,69,45,84,73,77,69,58,0,35,69,88,84,45,88,45,77,69,68,73,65,58,0,35,69,88,84,45,88,45,77,69,68,73,65,0,85,82,73,0,84,89,80,69,0,71,82,79,85,80,45,73,68,0,78,65,77,69,0,76,65,78,71,85,65,71,69,0,68,
69,70,65,85,76,84,0,65,85,84,79,83,69,76,69,67,84,0,58,32,82,101,113,117,105,114,101,100,32,97,116,116,114,105,98,117,116,101,32,34,0,34,32,105,115,32,109,105,115,115,105,110,103,0,89,69,83,0,65,85,68,73,79,0,86,73,68,69,79,0,83,85,66,84,73,84,76,69,83,0,67,76,79,83,69,68,45,67,65,80,84,73,79,78,83,0,69,88,84,45,88,45,77,69,68,73,65,58,32,85,110,107,110,111,119,110,32,116,121,112,101,32,34,0,69,114,114,111,114,32,112,97,114,115,105,110,103,32,101,110,99,114,121,112,116,105,111,110,32,100,97,116,97,
46,32,115,116,114,105,110,103,40,0,41,32,112,97,105,114,32,100,111,101,115,110,39,116,32,99,111,110,116,97,105,110,32,97,110,32,101,113,117,97,108,32,115,105,103,110,46,0,77,69,84,72,79,68,0,78,79,78,69,0,73,86,0,85,110,114,101,99,111,103,110,105,122,101,100,32,101,110,99,114,121,112,116,105,111,110,32,100,97,116,97,32,107,101,121,61,0,32,118,97,108,117,101,61,0,80,82,79,71,82,65,77,45,73,68,0,66,65,78,68,87,73,68,84,72,0,67,79,68,69,67,83,0,82,69,83,79,76,85,84,73,79,78,0,115,114,99,47,104,108,115,
47,72,108,115,83,101,115,115,105,111,110,46,99,99,0,77,117,108,116,105,112,108,101,32,72,83,76,32,65,117,100,105,111,32,82,101,110,100,105,116,105,111,110,115,32,102,111,117,110,100,46,32,67,104,97,110,103,105,110,103,32,116,111,32,105,109,109,101,100,105,97,116,101,32,97,117,100,105,111,32,81,67,80,0,100,101,102,97,117,108,116,0,91,72,108,115,83,101,115,115,105,111,110,93,32,0,83,107,105,112,112,105,110,103,32,118,105,100,101,111,32,111,110,108,121,32,118,97,114,105,97,110,116,32,0,65,112,112,97,
114,101,110,116,108,121,32,116,104,101,32,77,97,115,116,101,114,32,80,108,97,121,108,105,115,116,32,99,111,110,116,97,105,110,115,32,115,101,118,101,114,97,108,32,97,117,100,105,111,32,114,101,110,100,105,116,105,111,110,32,103,114,111,117,112,115,32,97,110,100,32,116,104,101,114,101,32,105,115,32,97,32,118,97,114,105,97,110,116,32,39,0,39,32,114,101,102,101,114,101,110,99,105,110,103,32,103,114,111,117,112,32,39,0,39,32,119,104,105,99,104,32,119,101,32,100,101,108,105,98,101,114,97,116,101,108,121,
32,110,101,103,108,101,99,116,101,100,46,46,46,0,91,72,108,115,83,101,115,115,105,111,110,124,0,84,114,121,105,110,103,32,116,111,32,114,101,113,117,101,115,116,32,105,110,118,97,108,105,100,32,109,101,100,105,97,32,115,101,113,117,101,110,99,101,61,0,76,105,99,101,110,115,101,32,105,115,32,0,65,99,99,101,112,116,0,42,47,42,0,104,116,116,112,115,58,47,47,108,105,99,101,110,115,105,110,103,46,118,105,98,108,97,115,116,46,99,111,109,47,108,105,99,101,110,115,105,110,103,47,114,101,115,116,47,99,104,
101,99,107,47,0,115,116,114,101,97,109,61,0,112,100,110,61,116,114,117,101,0,115,114,99,47,108,105,99,101,110,115,105,110,103,47,46,46,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,115,114,99,47,108,105,99,101,110,115,105,110,103,47,76,105,99,101,110,115,101,67,104,101,99,107,46,99,99,0,91,76,105,99,101,110,115,101,67,104,101,99,107,93,32,0,67,97,110,110,111,116,32,118,97,108,105,100,97,116,101,32,108,105,99,101,110,115,101,46,32,115,116,97,116,117,115,61,0,73,110,118,97,108,105,100,
32,76,105,99,101,110,115,101,46,32,0,32,83,104,111,119,105,110,103,32,119,97,116,101,114,109,97,114,107,32,97,110,100,32,100,105,115,97,98,108,105,110,103,32,80,68,78,46,0,118,97,108,105,100,0,110,111,116,32,118,97,108,105,100,0,73,110,118,97,108,105,100,32,76,111,99,97,108,32,75,101,121,0,85,110,97,108,108,111,119,101,100,32,100,111,109,97,105,110,0,76,105,99,101,110,115,101,32,104,97,115,32,101,120,112,105,114,101,100,0,123,32,118,97,114,32,100,111,109,97,105,110,32,61,32,119,105,110,100,111,119,
46,108,111,99,97,116,105,111,110,46,104,111,115,116,110,97,109,101,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,100,111,109,97,105,110,41,91,48,93,59,32,125,0,123,32,118,97,114,32,98,97,115,101,85,114,108,32,61,32,118,98,108,105,98,46,103,101,116,83,99,114,105,112,116,66,97,115,101,85,114,108,40,41,59,32,105,102,32,40,98,97,115,101,85,114,108,41,32,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,
84,111,67,83,116,114,40,98,97,115,101,85,114,108,41,91,48,93,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,0,115,114,99,47,117,116,105,108,115,47,98,105,110,95,117,116,105,108,115,46,99,99,0,79,110,108,121,32,115,116,114,105,110,103,115,32,108,101,115,115,32,116,104,97,110,32,50,53,53,32,98,121,116,101,115,32,97,114,101,32,115,117,112,112,111,114,116,101,100,32,98,117,116,32,115,116,114,105,110,103,32,119,105,116,104,32,108,101,110,32,61,0,32,103,105,118,101,
110,46,32,84,114,117,110,99,97,116,105,110,103,46,0,123,32,114,101,116,117,114,110,32,68,97,116,101,46,112,97,114,115,101,40,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,41,59,32,125,0,91,118,98,93,32,0,60,117,110,107,110,111,119,110,62,0,69,114,114,111,114,0,87,97,114,110,105,110,103,0,73,110,102,111,0,86,101,114,98,111,115,101,0,83,101,110,115,105,116,105,118,101,0,41,58,32,0,91,48,120,0,37,89,58,37,109,58,37,100,32,37,72,58,37,77,58,37,83,0,123,32,114,101,116,117,
114,110,32,126,126,40,77,97,116,104,46,114,97,110,100,111,109,40,41,32,42,32,36,48,41,59,32,125,0,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57,58,47,47,0,123,32,118,97,114,32,112,108,97,105,110,84,101,120,116,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,59,32,118,97,114,32,101,110,99,111,100,101,
100,32,61,32,101,110,99,111,100,101,85,82,73,67,111,109,112,111,110,101,110,116,40,112,108,97,105,110,84,101,120,116,41,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,110,99,111,100,101,100,41,91,48,93,59,32,125,0,78,111,32,101,113,117,97,108,32,115,105,103,110,32,102,111,114,32,107,101,121,32,0,78,79,32,118,97,108,117,101,32,102,111,114,32,107,101,121,32,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,
116,79,98,106,40,36,48,41,59,32,102,111,114,32,40,118,97,114,32,112,114,111,112,32,105,110,32,111,98,106,41,32,123,32,118,97,114,32,118,97,108,32,61,32,111,98,106,91,112,114,111,112,93,59,32,105,102,32,40,116,121,112,101,111,102,32,118,97,108,32,61,61,61,32,39,115,116,114,105,110,103,39,32,124,124,32,116,121,112,101,111,102,32,118,97,108,32,61,61,61,32,39,110,117,109,98,101,114,39,32,124,124,32,116,121,112,101,111,102,32,118,97,108,32,61,61,61,32,39,98,111,111,108,101,97,110,39,41,32,123,32,118,97,
114,32,99,107,101,121,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,112,114,111,112,41,59,32,118,97,114,32,99,118,97,108,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,118,97,108,41,59,32,82,117,110,116,105,109,101,46,100,121,110,67,97,108,108,40,39,118,105,105,105,105,105,39,44,32,36,50,44,32,91,36,49,44,32,99,107,101,121,91,48,93,44,32,99,107,101,121,91,49,93,44,32,99,118,97,108,91,48,93,44,32,99,118,97,108,91,49,93,93,
41,59,32,125,32,125,32,125,0,32,115,104,111,117,108,100,32,98,101,32,105,110,32,105,110,116,101,114,118,97,108,32,91,0,32,115,104,111,117,108,100,32,98,101,32,97,110,32,105,110,116,101,103,101,114,32,110,117,109,98,101,114,0,32,115,104,111,117,108,100,32,98,101,32,97,32,102,108,111,97,116,105,110,103,32,112,111,105,110,116,32,110,117,109,98,101,114,0,111,110,0,121,101,115,0,111,102,102,0,110,111,0,32,115,104,111,117,108,100,32,98,101,32,97,32,111,110,47,111,102,102,32,115,119,105,116,99,104,32,98,
117,116,32,103,105,118,101,110,32,118,97,108,117,101,32,0,85,115,97,103,101,58,0,123,32,86,105,98,108,97,115,116,46,100,101,98,117,103,73,110,102,111,46,110,111,116,105,99,101,40,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,41,59,32,125,0,123,32,86,105,98,108,97,115,116,46,100,101,98,117,103,73,110,102,111,46,116,111,116,97,108,68,111,119,110,108,111,97,100,101,100,70,114,111,109,67,100,110,32,61,32,36,48,59,32,125,0,68,117,109,109,121,80,108,97,121,101,114,0,115,
114,99,47,112,108,97,121,101,114,115,47,46,46,47,99,109,100,97,114,103,115,47,46,46,47,106,115,47,46,46,47,117,116,105,108,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,115,114,99,47,68,97,115,104,80,101,101,114,46,99,99,0,91,68,97,115,104,80,101,101,114,32,0,114,101,113,117,101,115,116,32,111,102,32,117,110,107,110,111,119,110,32,99,104,117,110,107,73,100,120,61,0,82,101,113,117,101,115,116,105,110,103,32,111,102,32,99,104,117,110,107,32,116,104,97,116,32,119,101,32,100,
111,110,39,116,32,104,97,118,101,32,105,100,120,61,0,32,114,101,108,97,116,105,118,101,73,100,120,61,0,32,99,97,110,110,111,116,32,114,101,113,117,101,115,116,32,99,104,117,110,107,73,100,120,61,0,32,102,114,111,109,32,117,108,114,61,0,67,97,110,110,111,116,32,100,111,119,110,108,111,97,100,32,99,104,117,110,107,32,105,100,61,0,46,32,83,101,114,118,101,114,32,114,101,115,112,111,110,100,101,100,32,119,105,116,104,32,0,82,101,99,101,105,118,101,100,32,99,104,117,110,107,32,116,104,97,116,32,105,115,
32,110,111,116,32,105,110,32,111,117,114,32,119,105,110,100,111,119,40,0,41,46,32,73,100,61,0,68,65,83,72,0,118,105,100,101,111,47,109,112,50,116,0,115,114,99,47,68,97,115,104,77,97,110,97,103,101,114,46,99,99,0,91,68,97,115,104,77,97,110,97,103,101,114,124,0,65,117,100,105,111,0,86,105,100,101,111,0,67,97,110,110,111,116,32,109,97,112,32,113,117,97,108,105,116,73,100,61,0,32,115,116,114,101,97,109,32,114,101,112,32,105,100,46,32,65,66,82,32,119,105,108,108,32,110,111,116,32,119,111,114,107,46,0,
73,110,105,116,105,97,108,105,122,97,116,105,111,110,32,85,82,76,32,110,111,116,32,102,111,117,110,100,32,111,114,32,110,111,116,32,114,101,115,111,108,118,101,100,44,32,115,101,116,116,105,110,103,32,101,109,112,116,121,32,104,101,97,100,101,114,46,0,67,97,110,110,111,116,32,98,117,105,108,100,32,115,101,103,109,101,110,116,32,105,110,100,101,120,0,67,97,110,110,111,116,32,100,111,119,110,108,111,97,100,32,105,110,105,116,105,97,108,105,122,97,116,105,111,110,46,32,82,101,116,114,121,105,110,103,
32,105,115,32,49,32,115,101,99,46,0,48,45,56,48,48,48,0,65,32,115,101,103,109,101,110,116,32,119,105,116,104,32,48,32,100,117,114,97,116,105,111,110,0,78,111,32,65,83,0,78,101,105,116,104,101,114,32,83,101,103,109,101,110,116,84,101,109,112,108,97,116,101,32,110,111,116,32,83,101,103,109,101,116,110,76,105,115,116,32,110,111,116,32,102,111,117,110,100,44,32,98,117,116,32,101,120,112,101,99,116,101,100,33,0,48,45,49,53,48,48,0,78,111,32,114,101,112,114,101,115,101,110,116,97,116,105,111,110,32,102,
111,117,110,100,46,32,81,117,97,108,105,116,121,73,100,61,0,32,85,115,105,110,103,32,116,104,101,32,102,105,114,115,116,32,111,110,101,0,85,110,107,110,111,119,110,32,117,114,108,32,102,111,114,32,123,110,117,109,98,101,114,61,0,44,115,116,97,114,116,116,105,109,101,61,0,116,97,103,78,97,109,101,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,97,116,116,114,78,97,109,101,32,61,32,80,111,105,110,116,101,114,95,115,116,114,
105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,97,116,116,114,86,97,108,117,101,32,61,32,111,98,106,91,97,116,116,114,78,97,109,101,93,59,32,105,102,32,40,36,51,41,32,123,32,97,116,116,114,86,97,108,117,101,32,61,32,111,98,106,46,103,101,116,65,116,116,114,105,98,117,116,101,40,97,116,116,114,78,97,109,101,41,59,32,97,116,116,114,86,97,108,117,101,32,61,32,40,97,116,116,114,86,97,108,117,101,33,61,61,110,117,108,108,41,32,63,32,97,116,116,114,86,97,108,117,101,32,58,32,117,110,100,101,102,
105,110,101,100,59,32,125,32,118,97,114,32,115,116,114,82,101,115,32,61,32,91,93,59,32,105,102,32,40,97,116,116,114,86,97,108,117,101,32,33,61,61,32,117,110,100,101,102,105,110,101,100,41,32,123,32,115,116,114,82,101,115,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,97,116,116,114,86,97,108,117,101,41,59,32,125,32,101,108,115,101,32,123,32,115,116,114,82,101,115,91,48,93,32,61,32,115,116,114,82,101,115,91,49,93,32,61,32,48,59,32,125,32,115,101,116,86,97,108,
117,101,40,36,50,44,32,115,116,114,82,101,115,91,49,93,44,32,39,105,51,50,39,41,59,32,114,101,116,117,114,110,32,115,116,114,82,101,115,91,48,93,59,32,125,0,116,101,120,116,67,111,110,116,101,110,116,0,123,32,118,97,114,32,99,114,101,97,116,101,78,111,100,101,115,32,61,32,102,117,110,99,116,105,111,110,40,101,108,101,109,101,110,116,41,32,123,32,118,97,114,32,105,100,120,32,61,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,101,108,101,109,101,110,116,41,59,32,82,117,110,116,105,109,101,46,
100,121,110,67,97,108,108,40,39,118,105,105,39,44,32,36,50,44,32,91,36,49,44,32,105,100,120,93,41,59,32,102,111,114,32,40,118,97,114,32,99,104,105,108,100,73,100,120,32,61,32,48,59,32,99,104,105,108,100,73,100,120,60,101,108,101,109,101,110,116,46,99,104,105,108,100,78,111,100,101,115,46,108,101,110,103,116,104,59,32,99,104,105,108,100,73,100,120,43,43,41,32,123,32,118,97,114,32,99,104,105,108,100,32,61,32,101,108,101,109,101,110,116,46,99,104,105,108,100,78,111,100,101,115,91,99,104,105,108,100,
73,100,120,93,59,32,105,102,32,40,99,104,105,108,100,46,110,111,100,101,84,121,112,101,32,33,61,61,32,49,32,41,32,99,111,110,116,105,110,117,101,59,32,99,114,101,97,116,101,78,111,100,101,115,40,99,104,105,108,100,41,59,32,125,32,82,117,110,116,105,109,101,46,100,121,110,67,97,108,108,40,39,118,105,39,44,32,36,51,44,32,91,36,49,93,41,59,32,125,59,32,118,97,114,32,100,97,116,97,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,59,32,118,97,114,32,112,97,114,115,
101,114,32,61,32,110,101,119,32,68,79,77,80,97,114,115,101,114,40,41,59,32,118,97,114,32,120,109,108,68,111,99,32,61,32,112,97,114,115,101,114,46,112,97,114,115,101,70,114,111,109,83,116,114,105,110,103,40,100,97,116,97,44,32,39,116,101,120,116,47,120,109,108,39,41,59,32,118,97,114,32,114,111,111,116,69,108,101,109,101,110,116,32,61,32,110,117,108,108,59,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,60,120,109,108,68,111,99,46,99,104,105,108,100,78,111,100,101,115,46,108,101,110,103,
116,104,59,32,105,43,43,41,32,123,32,118,97,114,32,99,104,105,108,100,32,61,32,120,109,108,68,111,99,46,99,104,105,108,100,78,111,100,101,115,91,105,93,59,32,105,102,32,40,99,104,105,108,100,46,110,111,100,101,84,121,112,101,32,61,61,61,32,49,32,41,32,123,32,114,111,111,116,69,108,101,109,101,110,116,32,61,32,99,104,105,108,100,59,32,98,114,101,97,107,59,32,125,32,125,32,105,102,32,40,114,111,111,116,69,108,101,109,101,110,116,41,32,123,32,99,114,101,97,116,101,78,111,100,101,115,40,114,111,111,116,
69,108,101,109,101,110,116,41,59,32,125,32,114,101,116,117,114,110,32,49,59,32,125,0,84,105,109,101,0,78,117,109,98,101,114,0,82,101,112,114,101,115,101,110,116,97,116,105,111,110,73,68,0,69,82,82,0,66,97,110,100,119,105,100,116,104,0,77,80,68,0,80,101,114,105,111,100,0,97,118,97,105,108,97,98,105,108,105,116,121,83,116,97,114,116,84,105,109,101,0,109,105,110,105,109,117,109,85,112,100,97,116,101,80,101,114,105,111,100,0,109,101,100,105,97,80,114,101,115,101,110,116,97,116,105,111,110,68,117,114,
97,116,105,111,110,0,100,121,110,97,109,105,99,0,123,32,114,101,116,117,114,110,32,68,97,116,101,46,112,97,114,115,101,40,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,41,32,47,32,49,48,48,48,46,48,59,32,125,0,66,97,115,101,85,114,108,0,76,111,99,97,116,105,111,110,0,100,117,114,97,116,105,111,110,0,65,100,97,112,116,97,116,105,111,110,83,101,116,0,108,97,110,103,0,67,111,110,116,101,110,116,67,111,109,112,111,110,101,110,116,0,83,101,103,109,101,110,116,66,97,115,
101,0,83,101,103,109,101,110,116,84,101,109,112,108,97,116,101,0,83,101,103,109,101,110,116,76,105,115,116,0,82,101,112,114,101,115,101,110,116,97,116,105,111,110,0,98,97,110,100,119,105,100,116,104,0,83,101,103,109,101,110,116,85,82,76,0,109,101,100,105,97,0,109,101,100,105,97,82,97,110,103,101,0,105,110,100,101,120,0,105,110,100,101,120,82,97,110,103,101,0,115,116,97,114,116,78,117,109,98,101,114,0,83,101,103,109,101,110,116,84,105,109,101,108,105,110,101,0,83,0,116,0,100,0,114,0,105,110,105,116,
105,97,108,105,122,97,116,105,111,110,0,116,105,109,101,115,99,97,108,101,0,112,114,101,115,101,110,116,97,116,105,111,110,84,105,109,101,79,102,102,115,101,116,0,105,110,100,101,120,82,97,110,103,101,69,120,97,99,116,0,73,110,105,116,105,97,108,105,122,97,116,105,111,110,0,115,111,117,114,99,101,85,82,76,0,114,97,110,103,101,0,99,111,110,116,101,110,116,84,121,112,101,0,109,105,109,101,84,121,112,101,0,99,111,100,101,99,115,0,119,105,100,116,104,0,104,101,105,103,104,116,0,115,114,99,47,100,97,115,
104,47,68,97,115,104,77,112,100,77,97,110,97,103,101,114,46,99,99,0,67,97,110,110,111,116,32,100,101,116,101,114,109,105,110,101,32,117,112,100,97,116,101,32,112,101,114,105,111,100,0,87,114,111,110,103,32,118,97,108,117,101,32,102,111,114,32,109,105,110,105,109,117,109,85,112,100,97,116,101,80,101,114,105,111,100,61,0,46,32,73,116,32,105,115,32,108,97,114,103,101,114,32,116,104,97,110,32,116,104,101,32,100,117,114,97,116,105,111,110,61,0,67,97,110,110,111,116,32,103,101,116,32,77,80,68,46,32,82,
101,115,112,111,110,115,101,32,99,111,100,101,32,61,32,0,71,101,116,116,105,110,103,32,116,104,101,32,109,97,110,105,102,101,115,116,32,119,105,108,108,32,98,101,32,114,101,116,114,105,101,100,32,105,110,32,0,73,110,118,97,108,105,100,32,111,114,32,101,109,112,116,121,32,77,80,68,58,32,0,115,114,99,47,100,97,115,104,47,46,46,47,117,116,105,108,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,82,101,116,114,121,105,110,103,32,77,80,68,32,0,116,101,120,116,47,118,116,116,0,115,
114,99,47,100,97,115,104,47,46,46,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,115,114,99,47,100,97,115,104,47,68,97,115,104,83,101,115,115,105,111,110,46,99,99,0,91,68,97,115,104,83,101,115,115,105,111,110,124,0,64,0,32,84,114,121,105,110,103,32,116,111,32,114,101,113,117,101,115,116,32,115,101,103,109,101,110,116,32,0,32,98,117,116,32,116,104,101,114,101,32,97,114,101,32,110,111,32,115,101,103,109,101,110,116,115,33,0,84,114,121,105,110,103,32,116,111,32,114,101,113,117,101,115,116,
32,105,110,118,97,108,105,100,32,115,101,103,109,101,110,116,32,110,117,109,98,101,114,61,0,44,32,97,118,97,105,108,97,98,108,101,32,114,97,110,103,101,61,91,0,82,101,113,117,101,115,116,32,102,97,105,108,101,100,32,102,111,114,32,115,101,103,109,101,110,116,58,0,118,105,100,101,111,0,97,117,100,105,111,0,47,47,0,109,112,50,116,0,115,114,99,47,117,116,105,108,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,115,114,99,47,67,111,109,109,83,116,97,116,105,111,110,46,99,99,0,82,
101,99,101,105,118,101,100,32,117,110,107,110,111,119,110,32,109,101,115,115,97,103,101,58,32,0,106,111,105,110,95,114,101,115,0,115,116,97,116,117,115,0,111,107,0,112,100,110,69,110,97,98,108,101,100,0,67,97,110,110,111,116,32,106,111,105,110,46,32,114,101,97,115,111,110,61,0,67,97,110,110,111,116,32,74,111,105,110,0,85,110,107,110,111,119,110,32,109,101,115,115,97,103,101,58,32,0,101,114,114,77,115,103,0,102,114,111,109,0,82,101,99,101,105,118,101,100,32,97,32,109,101,115,115,97,103,101,32,110,
111,32,111,110,101,32,105,115,32,105,110,116,101,114,101,115,116,101,100,32,105,110,46,32,77,101,115,115,97,103,101,61,0,106,111,105,110,0,118,105,101,119,101,114,73,100,0,112,100,110,0,97,110,97,108,121,116,105,99,115,0,105,115,86,111,100,0,108,111,99,97,108,73,112,115,0,117,115,101,114,65,103,101,110,116,0,118,105,98,108,97,115,116,86,101,114,115,105,111,110,0,112,108,97,121,101,114,0,110,117,108,108,32,112,108,97,121,101,114,0,117,115,101,114,68,97,116,97,0,113,117,97,108,105,116,121,95,99,104,
97,110,103,101,0,110,101,119,95,113,117,97,108,105,116,121,0,116,111,0,84,114,121,105,110,103,32,116,111,32,115,101,110,100,32,97,32,109,101,115,115,97,103,101,32,98,101,102,111,114,101,32,119,101,32,104,97,118,101,32,74,111,105,110,101,100,32,116,104,101,32,99,111,109,109,32,115,116,97,116,105,111,110,46,32,77,101,115,115,97,103,101,32,61,32,0,115,114,99,47,72,108,115,80,101,101,114,46,99,99,0,72,76,83,58,32,82,101,99,101,105,118,101,100,32,97,32,112,105,101,99,101,32,116,104,97,116,32,105,115,32,
110,111,116,32,105,110,32,116,104,101,32,108,105,115,116,32,111,102,32,114,101,113,117,101,115,116,101,100,32,112,105,101,99,101,115,46,32,80,114,111,98,97,98,108,121,32,97,32,108,97,116,101,32,112,105,101,99,101,32,102,114,111,109,32,97,98,111,114,116,101,100,32,99,104,117,110,107,46,32,40,67,104,117,110,107,73,100,120,61,0,70,97,105,108,101,100,32,116,111,32,115,101,116,32,99,104,117,110,107,32,0,46,32,84,104,97,116,32,115,104,111,117,108,100,110,39,116,32,104,97,112,112,101,110,46,0,69,114,114,
111,114,32,119,104,105,108,101,32,114,101,113,117,101,115,116,105,110,103,32,99,104,117,110,107,40,99,104,117,110,107,73,100,120,61,0,45,0,41,46,0,66,85,71,33,32,109,111,114,101,32,114,101,113,117,101,115,116,115,32,115,101,110,116,32,116,111,32,0,32,116,104,101,110,32,97,108,108,111,119,101,100,0,67,111,110,116,101,110,116,45,76,101,110,103,116,104,0,78,111,32,111,114,32,105,110,118,97,108,105,100,32,67,111,110],"i8",4,x.D+40960);
M([116,101,110,116,45,76,101,110,103,116,104,32,104,101,97,100,101,114,61,32,0,67,97,110,110,111,116,32,109,97,107,101,32,104,101,97,100,32,114,101,113,117,101,115,116,32,102,111,114,32,117,114,108,32,0,32,115,99,111,100,101,61,0,67,97,110,110,111,116,32,103,101,116,32,99,104,117,110,107,40,99,104,117,110,107,73,100,120,61,0,41,46,32,0,83,101,114,118,101,114,32,114,101,115,112,111,110,100,101,100,32,119,105,116,104,32,0,82,101,113,117,101,115,116,32,116,105,109,101,100,111,117,116,32,40,116,105,109,
101,111,117,116,61,0,84,114,121,105,110,103,32,116,111,32,114,101,113,117,101,115,116,32,97,32,99,104,117,110,107,32,116,104,97,116,32,105,115,32,110,111,116,32,105,110,32,116,104,101,32,99,117,114,114,101,110,116,32,112,108,97,121,108,105,115,116,40,99,104,117,110,107,73,100,120,61,0,32,114,101,108,97,116,105,118,101,80,108,73,100,120,0,32,98,121,116,101,82,97,110,103,101,76,111,119,61,0,32,98,121,116,101,82,97,110,103,101,72,105,103,104,61,0,98,121,116,101,115,61,0,82,97,110,103,101,0,82,101,99,
101,105,118,101,100,32,97,32,99,104,117,110,107,32,119,105,116,104,111,117,116,32,97,32,116,111,116,97,108,32,115,105,122,101,0,69,82,82,79,82,33,32,115,101,114,118,101,114,39,115,32,114,101,115,112,111,110,115,101,32,99,111,110,116,97,105,110,115,32,110,111,32,100,97,116,97,46,32,99,104,117,110,107,73,100,120,61,0,117,114,108,61,0,66,97,100,32,114,101,115,112,111,110,115,101,32,116,111,32,97,32,114,97,110,103,101,32,114,101,113,117,101,115,116,46,32,82,101,113,117,101,115,116,32,0,32,98,121,116,
101,115,32,98,117,116,32,115,101,114,118,101,114,32,114,101,115,112,111,110,115,101,32,99,111,110,116,97,105,110,115,32,0,32,98,121,116,101,115,0,82,101,99,101,105,118,101,100,32,99,104,117,110,107,32,116,104,97,116,32,105,115,32,110,111,116,32,105,110,32,111,117,114,32,119,105,110,100,111,119,0,91,66,85,71,93,32,99,97,110,110,111,116,32,100,101,116,101,114,109,105,110,101,32,116,105,109,101,111,117,116,32,102,111,114,32,99,104,117,110,107,115,32,116,104,97,116,32,105,115,32,111,117,116,115,105,100,
101,32,111,102,32,97,32,99,104,117,110,107,32,112,108,97,121,108,105,115,116,0,72,108,115,32,114,101,99,101,105,118,101,100,32,117,110,101,120,112,101,99,116,101,100,32,109,101,115,115,97,103,101,32,102,114,111,109,32,99,111,109,109,32,115,116,97,116,105,111,110,32,0,72,76,83,0,115,114,99,47,104,108,115,47,72,108,115,80,108,97,121,108,105,115,116,77,97,110,97,103,101,114,46,99,99,0,73,103,110,111,114,105,110,103,32,114,101,99,101,105,118,101,100,32,69,78,68,76,73,83,84,0,83,116,111,112,112,105,110,
103,32,114,101,102,114,101,115,104,105,110,103,32,116,104,101,32,112,108,97,121,108,105,115,116,32,98,101,99,97,117,115,101,32,69,78,68,76,73,83,84,32,119,97,115,32,114,101,99,101,105,118,101,100,0,85,110,101,120,112,101,99,116,101,100,32,118,97,114,105,97,110,116,32,112,108,97,121,108,105,115,116,0,69,109,112,116,121,32,112,108,97,121,108,105,115,116,58,32,0,71,101,116,116,105,110,103,32,116,104,101,32,112,108,97,121,108,105,115,116,32,119,105,108,108,32,98,101,32,114,101,116,114,105,101,100,32,
105,110,32,0,32,115,46,0,115,114,99,47,104,108,115,47,46,46,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,73,110,118,97,108,105,100,101,32,111,114,32,101,109,112,116,121,32,112,108,97,121,108,105,115,116,58,32,0,70,111,108,108,111,119,32,114,101,100,105,114,101,99,116,32,102,111,114,32,117,114,108,58,32,0,67,97,110,110,111,116,32,103,101,116,32,112,108,97,121,108,105,115,116,46,32,82,101,115,112,111,110,115,101,32,99,111,100,101,32,61,32,0,115,114,99,47,104,108,115,47,46,46,47,116,105,
109,101,114,115,47,84,105,109,101,114,46,104,0,82,101,116,114,121,105,110,103,32,112,108,97,121,108,105,115,116,32,0,115,114,99,47,87,101,98,114,116,99,80,101,101,114,46,99,99,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,112,101,101,114,32,99,111,110,110,101,99,116,105,111,110,46,32,83,116,111,112,112,105,110,103,32,112,101,101,114,32,0,99,97,110,110,111,116,32,99,111,110,110,101,99,116,0,99,111,110,110,95,114,101,113,0,99,111,109,109,32,115,116,97,116,105,111,110,32,105,115,32,110,117,108,
108,0,84,114,121,105,110,103,32,116,111,32,112,117,114,103,101,32,97,32,99,104,117,110,107,32,40,105,100,120,61,0,41,32,116,104,97,116,32,105,115,32,110,111,116,32,105,110,32,116,104,101,32,108,105,115,116,32,111,102,32,114,101,113,117,101,115,116,101,100,32,99,104,117,110,107,115,0,84,114,121,105,110,103,32,116,111,32,115,101,110,100,32,114,101,113,117,101,115,116,32,116,111,32,97,32,112,101,101,114,32,98,101,102,111,114,101,32,116,104,101,32,104,97,110,100,115,104,97,107,101,32,104,97,115,32,99,
111,109,112,108,101,116,101,100,46,32,73,103,110,111,114,105,110,103,32,116,104,101,32,114,101,113,117,101,115,116,46,0,91,119,112,93,32,91,66,85,71,93,32,116,114,121,105,110,103,32,116,111,32,114,101,113,117,101,115,116,32,97,32,99,104,117,110,107,32,119,105,116,104,32,117,110,107,110,111,119,110,32,115,105,122,101,0,66,85,71,58,32,114,101,113,117,101,115,116,105,110,103,32,116,104,101,32,115,97,109,101,32,99,104,117,110,107,40,0,32,116,119,105,99,101,32,102,114,111,109,32,112,101,101,114,40,0,66,
85,71,58,32,109,111,114,101,32,114,101,113,117,101,115,116,32,115,101,110,100,32,116,111,32,0,32,116,104,97,110,32,97,108,108,111,119,101,100,46,0,115,114,99,47,119,101,98,114,116,99,47,46,46,47,106,115,47,46,46,47,117,116,105,108,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,65,98,111,114,116,105,110,103,32,99,104,117,110,107,33,32,70,105,114,115,116,32,112,105,101,99,101,32,102,111,114,32,99,104,117,110,107,40,0,41,32,100,105,100,110,39,116,32,97,114,114,105,118,101,32,
119,105,116,104,105,110,32,97,32,0,109,115,0,102,105,114,115,116,32,112,105,101,99,101,32,102,97,105,108,101,100,0,91,66,85,71,93,32,115,101,116,117,112,67,104,101,99,107,70,111,114,70,105,114,115,116,80,105,101,99,101,84,105,109,101,114,40,99,104,117,110,107,73,100,120,61,0,41,32,99,97,108,108,101,100,32,98,117,116,32,116,104,105,115,32,99,104,117,110,107,115,32,105,115,32,110,111,116,32,114,101,113,117,101,115,116,101,100,0,65,98,111,114,116,105,110,103,32,99,104,117,110,107,33,32,68,111,119,110,
108,111,97,100,32,111,102,32,99,104,117,110,107,40,0,41,32,102,114,111,109,32,112,101,101,114,40,0,41,32,105,115,32,116,111,111,32,115,108,111,119,46,32,65,98,111,114,116,105,110,103,32,100,111,119,110,108,111,97,100,46,0,99,104,117,110,107,32,100,111,119,110,108,111,97,100,32,105,115,32,116,111,111,32,115,108,111,119,0,91,66,85,71,93,32,99,104,101,99,107,67,104,117,110,107,68,111,119,110,108,97,111,100,40,99,104,117,110,107,73,100,120,61,0,117,115,105,110,103,32,116,104,101,32,100,101,102,97,117,
108,116,32,116,105,109,101,111,117,116,40,0,32,109,115,41,32,102,111,114,32,99,104,117,110,107,40,105,100,120,61,0,67,104,117,110,107,40,105,100,120,61,0,41,32,116,105,109,101,100,111,117,116,32,102,114,111,109,32,112,101,101,114,40,0,111,102,102,101,114,0,105,99,101,95,99,97,110,100,105,100,97,116,101,0,97,110,115,119,101,114,0,102,105,110,0,99,111,110,110,95,114,101,115,112,111,110,115,101,0,82,101,99,101,105,118,101,100,32,105,110,32,112,101,101,114,40,0,41,32,117,110,107,110,111,119,110,32,109,
101,115,115,97,103,101,32,102,114,111,109,32,99,111,109,109,32,115,116,97,116,105,111,110,58,32,0,114,101,115,112,111,110,115,101,0,121,111,117,0,118,105,98,108,97,115,116,68,97,116,97,67,104,97,110,110,101,108,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,100,97,116,97,32,99,104,97,110,110,101,108,46,32,83,116,111,112,112,105,110,103,32,112,101,101,114,32,0,99,114,101,97,116,105,110,103,32,100,99,32,102,97,105,108,101,100,0,68,97,116,97,32,99,104,97,110,110,101,108,32,101,114,114,111,114,32,
0,46,32,83,116,111,112,112,105,110,103,32,112,101,101,114,32,0,100,99,32,101,114,114,111,114,0,99,104,97,110,110,101,108,32,115,116,97,116,101,32,105,115,32,0,32,105,110,32,112,101,101,114,32,40,0,111,112,101,110,0,83,116,111,112,112,105,110,103,32,112,101,101,114,32,40,0,41,32,98,101,99,97,117,115,101,32,115,116,97,116,101,32,40,0,41,32,105,115,32,110,111,116,32,39,111,112,101,110,39,0,100,99,32,115,116,97,116,101,32,99,104,97,110,103,101,100,0,111,110,68,67,79,112,101,110,32,105,110,118,111,107,
101,100,32,97,102,116,101,114,32,104,97,110,100,115,104,97,107,101,32,105,115,32,97,108,114,101,97,100,121,32,115,101,110,116,32,105,110,32,112,101,101,114,32,40,0,82,101,99,101,105,118,101,100,32,97,110,32,117,110,107,110,111,119,110,32,109,101,115,115,97,103,101,58,32,0,32,102,114,111,109,32,40,0,82,101,99,101,105,118,101,100,32,97,32,112,105,101,99,101,32,116,104,97,116,32,105,115,32,110,111,116,32,105,110,32,116,104,101,32,108,105,115,116,32,111,102,32,114,101,113,117,101,115,116,101,100,32,112,
105,101,99,101,115,46,32,80,114,111,98,97,98,108,121,32,97,32,108,97,116,101,32,112,105,101,99,101,32,102,114,111,109,32,97,98,111,114,116,101,100,32,99,104,117,110,107,46,0,40,67,104,117,110,107,73,100,120,61,0,115,101,103,109,101,110,116,32,115,105,122,101,32,114,101,99,101,105,118,101,100,32,109,111,114,101,32,116,104,97,110,32,111,110,99,101,32,102,111,114,32,115,101,103,109,101,110,116,40,105,100,120,61,0,115,101,103,109,101,110,116,32,115,105,122,101,32,114,101,99,101,105,118,101,100,32,102,
111,114,32,97,32,115,101,103,109,101,110,116,32,116,104,97,116,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,112,101,101,114,39,115,32,119,105,110,100,111,119,32,40,105,100,120,61,0,91,119,112,93,32,82,101,99,101,105,118,101,100,32,100,111,110,116,32,104,97,118,101,32,102,111,114,32,97,32,99,104,117,110,107,40,105,100,120,61,0,41,32,119,101,32,104,97,118,101,110,39,116,32,114,101,113,117,101,115,116,101,100,46,32,112,101,101,114,40,0,82,101,99,101,105,118,101,100,32,112,105,101,99,101,
40,99,104,117,110,107,73,100,120,61,0,44,32,112,105,101,99,101,73,100,120,61,0,41,32,102,114,111,109,32,112,101,101,114,40,105,100,61,0,41,32,119,105,116,104,111,117,116,32,98,101,105,110,103,32,114,101,113,117,101,115,116,101,100,46,32,68,105,115,99,97,114,100,105,110,103,32,116,104,101,32,112,105,101,99,101,46,0,67,104,101,99,107,115,117,109,32,109,105,115,109,97,116,99,104,32,40,99,104,117,110,107,73,100,120,61,0,32,112,105,101,99,101,73,100,120,61,0,32,101,120,112,67,83,117,109,61,0,32,97,99,
116,117,97,108,67,115,117,109,61,0,83,116,111,112,112,105,110,103,32,112,101,101,114,32,98,101,99,97,117,115,101,32,111,102,32,99,104,101,99,107,115,117,109,32,109,105,115,109,97,116,99,104,46,0,99,104,101,99,107,115,117,109,32,101,114,114,111,114,0,80,101,101,114,32,40,0,41,32,115,101,110,116,32,97,32,72,65,86,69,32,102,111,114,32,97,32,99,104,117,110,107,32,116,104,97,116,32,105,115,32,110,111,116,32,105,110,32,105,116,115,32,119,105,110,100,111,119,32,40,111,102,102,115,101,116,61,0,85,110,99,
104,111,107,101,32,109,101,115,115,97,103,101,32,114,101,99,101,105,118,101,100,32,116,119,105,99,101,32,102,114,111,109,32,0,46,32,73,71,78,79,82,73,78,71,32,116,104,101,32,115,101,115,111,110,99,32,111,110,101,46,0,66,105,116,102,105,101,108,100,32,114,101,99,101,105,118,101,100,32,98,101,102,111,114,101,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,104,97,110,100,115,104,97,107,101,46,32,83,116,111,112,112,105,110,103,32,112,101,101,114,32,0,98,97,100,32,104,97,110,100,115,104,97,107,101,
0,80,101,101,114,32,115,112,101,99,105,102,105,101,100,32,98,97,100,32,99,104,97,110,110,101,108,32,110,97,109,101,32,105,110,32,104,97,110,100,115,104,97,107,101,46,32,80,101,101,114,73,100,61,0,32,114,101,109,111,116,101,32,99,104,97,110,110,101,108,61,0,32,109,121,32,99,104,97,110,110,101,108,61,0,78,111,116,32,99,111,110,110,101,99,116,101,100,32,98,101,99,97,117,115,101,32,111,102,32,105,110,99,111,109,112,97,116,105,98,108,101,32,112,114,111,116,111,32,118,101,114,115,105,111,110,115,32,111,
117,114,115,61,0,32,114,101,109,111,116,101,115,61,0,80,101,101,114,32,73,100,32,114,101,112,111,114,116,101,100,32,98,121,32,116,104,101,32,116,114,97,99,107,101,114,32,97,110,100,32,80,101,101,114,32,73,100,32,114,101,112,111,114,116,101,100,32,100,117,114,105,110,103,32,104,97,110,100,115,104,97,107,101,32,100,105,102,102,101,114,32,40,116,114,97,99,107,101,114,32,105,100,61,0,32,104,97,110,100,115,104,97,107,101,32,105,100,61,0,80,101,101,114,115,32,102,111,114,32,115,101,112,97,114,97,116,101,
32,99,104,97,110,110,101,108,115,32,99,111,110,110,101,99,116,101,100,32,116,111,103,101,116,104,101,114,33,32,84,104,105,115,32,105,115,32,97,32,98,117,103,32,97,110,100,32,109,117,115,116,32,78,79,84,32,104,97,112,112,101,110,46,32,111,117,114,83,116,114,101,97,109,61,0,32,114,101,109,111,116,101,83,116,114,101,97,109,61,0,65,118,111,105,100,105,110,103,32,115,117,112,101,114,112,101,101,114,32,0,65,118,111,105,100,105,110,103,32,112,101,101,114,32,40,105,100,61,0,41,32,116,104,97,116,32,117,115,
101,115,32,100,105,102,102,101,114,101,110,116,32,112,105,101,99,101,32,115,105,122,101,32,40,109,105,110,101,61,0,32,112,101,101,114,39,115,61,0,41,32,116,104,97,116,32,117,115,101,115,32,97,32,100,105,102,102,101,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,99,104,117,110,107,115,32,112,101,114,32,104,108,115,32,101,110,116,114,121,32,40,109,105,110,101,61,0,32,112,101,101,114,115,39,115,61,0,78,111,116,32,78,111,116,32,67,111,110,110,101,99,116,105,110,103,32,116,111,32,112,101,101,
114,32,105,100,61,0,32,98,101,99,97,117,115,101,32,117,115,101,84,105,109,101,115,116,97,109,112,115,70,111,114,80,100,110,32,100,111,101,115,110,39,116,32,109,97,116,99,104,46,32,79,117,114,61,0,32,82,114,101,109,111,116,101,115,61,0,32,98,101,99,97,117,115,101,32,101,110,97,98,108,101,68,101,115,105,103,110,97,116,101,100,80,101,101,114,115,32,100,111,101,115,110,39,116,32,109,97,116,99,104,46,32,79,117,114,61,0,113,117,97,108,105,116,105,73,100,32,105,115,32,110,111,116,32,101,113,117,97,108,0,
109,101,0,82,101,99,101,105,118,101,100,32,70,73,78,32,102,114,111,109,32,0,46,32,83,116,111,112,112,105,110,103,32,112,101,101,114,32,40,0,102,105,110,32,114,99,118,100,0,100,101,115,99,114,105,112,116,105,111,110,0,115,100,112,0,116,121,112,101,0,78,111,32,100,101,115,99,114,105,112,116,105,111,110,32,105,110,32,97,110,115,119,101,114,32,109,101,115,115,97,103,101,32,115,101,110,100,32,102,114,111,109,32,0,87,97,114,110,105,110,103,32,67,97,110,116,39,32,112,97,114,115,101,32,114,101,99,101,105,
118,101,100,32,115,101,115,115,105,111,110,32,100,101,115,99,114,105,112,116,105,111,110,32,109,101,115,115,97,103,101,46,0,99,97,110,100,105,100,97,116,101,0,115,100,112,77,105,100,0,115,100,112,77,76,105,110,101,73,110,100,101,120,0,87,97,114,110,105,110,103,32,67,97,110,39,116,32,112,97,114,115,101,32,114,101,99,101,105,118,101,100,32,109,101,115,115,97,103,101,46,0,87,97,114,110,105,110,103,32,67,97,110,39,116,32,112,97,114,115,101,32,114,101,99,101,105,118,101,100,32,99,97,110,100,105,100,97,
116,101,32,109,101,115,115,97,103,101,46,0,87,97,114,110,105,110,103,32,70,97,105,108,101,100,32,116,111,32,97,112,112,108,121,32,116,104,101,32,114,101,99,101,105,118,101,100,32,99,97,110,100,105,100,97,116,101,0,87,97,114,110,105,110,103,32,67,97,110,39,116,32,112,97,114,115,101,32,114,101,99,101,105,118,101,100,32,115,101,115,115,105,111,110,32,100,101,115,99,114,105,112,116,105,111,110,32,109,101,115,115,97,103,101,46,0,114,101,97,115,111,110,0,115,116,111,112,112,101,100,0,75,101,101,112,32,
65,108,105,118,101,32,84,105,109,101,111,117,116,46,32,75,101,101,112,105,110,103,32,112,101,101,114,40,0,41,32,97,108,105,118,101,32,98,121,32,115,101,110,100,105,110,103,32,97,32,107,101,101,112,32,97,108,105,118,101,32,109,101,115,115,97,103,101,46,0,80,101,101,114,32,65,108,105,118,101,32,84,105,109,101,111,117,116,46,32,72,97,118,101,110,39,116,32,104,101,97,114,100,32,102,114,111,109,32,0,32,102,111,114,32,97,32,108,111,110,103,32,116,105,109,101,32,40,0,115,41,32,115,116,111,112,112,105,110,
103,32,112,101,101,114,0,107,101,101,112,32,97,108,105,118,101,32,108,111,115,116,0,107,101,101,112,32,97,108,105,118,101,32,108,111,115,116,32,98,101,102,111,114,101,32,104,97,110,100,115,104,97,107,101,100,0,111,110,76,111,99,97,108,73,99,101,67,97,110,100,105,100,97,116,101,0,32,73,67,69,32,67,65,78,68,73,68,65,84,69,61,32,0,67,97,110,110,111,116,32,115,101,110,100,32,99,114,105,116,105,99,97,108,32,99,111,109,109,32,115,116,97,116,105,111,110,32,109,101,115,115,97,103,101,32,116,111,32,0,111,
110,65,110,115,119,101,114,0,103,111,116,32,97,110,115,119,101,114,0,83,101,116,32,115,101,115,115,105,111,110,32,100,101,115,99,114,105,112,116,105,111,110,32,102,97,105,108,101,100,32,40,101,114,114,111,114,61,0,41,32,83,116,111,112,112,105,110,103,32,112,101,101,114,32,40,0,83,101,116,32,115,101,115,115,105,111,110,32,100,101,115,99,32,102,97,105,108,101,100,0,99,114,101,97,116,101,32,108,111,99,97,108,32,111,102,102,101,114,32,102,97,105,108,101,100,32,40,101,114,114,111,114,61,0,99,114,101,97,
116,101,32,111,102,102,101,114,32,102,97,105,108,101,100,0,99,114,101,97,116,101,32,97,110,115,119,101,114,32,102,97,105,108,101,100,32,40,101,114,114,111,114,61,0,99,114,101,97,116,101,32,97,110,115,119,101,114,32,102,97,105,108,101,100,0,116,114,97,99,107,101,114,0,115,114,99,47,84,114,97,99,107,101,114,46,99,99,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32,116,114,97,99,107,101,114,32,119,105,116,104,111,117,116,32,99,111,109,109,32,115,116,97,116,105,111,110,0,115,114,99,47,116,105,
109,101,114,115,47,84,105,109,101,114,46,104,0,99,108,105,101,110,116,73,100,0,99,117,114,114,101,110,116,80,108,97,121,108,105,115,116,0,109,97,115,116,101,114,80,108,97,121,108,105,115,116,0,99,108,105,101,110,116,67,104,97,110,110,101,108,78,97,109,101,0,113,117,97,108,105,116,121,0,112,101,101,114,73,100,0,112,101,101,114,84,121,112,101,0,101,118,101,110,116,0,97,98,105,0,115,116,97,114,116,79,102,102,115,101,116,0,119,105,110,100,111,119,83,105,122,101,0,100,111,119,110,108,111,97,100,101,100,
0,100,111,119,110,108,111,97,100,101,100,83,119,97,114,109,68,105,102,102,0,117,112,108,111,97,100,101,100,0,117,112,108,111,97,100,101,100,83,119,97,114,109,68,105,102,102,0,100,111,119,110,108,111,97,100,101,100,67,100,110,0,100,111,119,110,108,111,97,100,101,100,67,100,110,68,105,102,102,0,110,117,109,119,97,110,116,0,114,101,98,117,102,102,115,0,119,101,98,114,116,99,0,109,115,103,0,97,110,110,111,117,110,99,101,0,114,101,98,117,102,102,115,68,105,102,102,0,113,111,101,0,115,116,97,114,116,68,
101,108,97,121,0,100,114,111,112,112,101,100,70,114,97,109,101,115,0,116,105,109,101,115,80,97,117,115,101,100,0,116,105,109,101,115,83,116,97,108,108,101,100,0,100,117,114,97,116,105,111,110,73,110,80,108,97,121,98,97,99,107,0,100,117,114,97,116,105,111,110,73,110,70,117,108,108,115,99,114,101,101,110,0,100,117,114,97,116,105,111,110,73,110,66,97,99,107,103,114,111,117,110,100,0,100,117,114,97,116,105,111,110,73,110,80,97,117,115,101,0,100,117,114,97,116,105,111,110,73,110,83,116,97,108,108,0,116,
105,109,101,115,83,116,97,108,108,101,100,68,105,102,102,0,113,111,115,0,105,100,0,100,111,119,110,66,119,75,98,105,116,0,99,100,110,66,119,75,98,105,116,0,112,101,101,114,115,0,115,119,97,114,109,66,119,75,98,105,116,0,98,108,97,99,107,108,105,115,116,0,112,101,114,109,97,110,101,110,116,66,108,97,99,107,108,105,115,116,0,101,118,101,110,116,115,0,118,101,114,115,105,111,110,0,124,0,124,110,117,108,108,32,112,108,97,121,101,114,0,115,114,99,47,67,111,109,109,83,116,97,116,105,111,110,46,104,0,84,
114,121,105,110,103,32,116,111,32,114,101,103,105,115,116,101,114,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,114,101,99,101,105,118,101,114,32,102,111,114,32,109,101,115,115,97,103,101,115,32,102,114,111,109,32,0,46,32,68,114,111,112,112,105,110,103,32,112,114,101,118,105,111,117,115,32,114,101,99,101,105,118,101,114,33,0,115,114,99,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,101,114,114,111,114,77,115,103,0,105,110,116,101,114,118,97,108,0,115,101,110,100,81,111,83,0,115,
101,110,100,81,111,69,0,115,101,110,100,69,118,101,110,116,76,111,103,0,84,114,97,99,107,101,114,32,114,101,115,112,111,110,115,101,32,100,111,101,115,110,39,116,32,99,111,110,116,97,105,110,32,97,110,100,32,105,110,116,101,114,118,97,108,46,32,82,101,116,114,121,105,110,103,46,0,84,114,97,99,107,101,114,32,114,101,115,112,111,110,100,101,100,32,119,105,116,104,32,101,114,114,111,114,32,0,82,101,116,114,121,105,110,103,32,97,110,110,111,117,110,99,101,32,97,102,116,101,114,32,100,101,102,97,117,108,
116,32,105,110,116,101,114,118,97,108,32,40,0,32,115,41,0,104,116,116,112,58,47,47,0,104,116,116,112,115,58,47,47,0,115,114,99,47,104,116,116,112,47,46,46,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,120,104,114,41,32,123,32,120,104,114,46,97,98,111,114,116,40,41,59,32,120,104,114,46,95,118,98,95,100,101,108,101,116,101,100,32,61,32,116,114,117,101,59,32,120,104,
114,46,111,110,108,111,97,100,32,61,32,110,117,108,108,59,32,120,104,114,46,111,110,112,114,111,103,114,101,115,115,32,61,32,110,117,108,108,59,32,120,104,114,46,111,110,101,114,114,111,114,32,61,32,110,117,108,108,59,32,120,104,114,46,111,110,116,105,109,101,111,117,116,32,61,32,110,117,108,108,59,32,125,32,125,0,123,32,118,97,114,32,120,104,114,32,61,32,110,101,119,32,88,77,76,72,116,116,112,82,101,113,117,101,115,116,40,41,59,32,120,104,114,46,104,97,110,100,108,101,82,101,115,112,111,110,115,
101,32,61,32,102,117,110,99,116,105,111,110,40,115,116,97,116,117,115,44,32,114,101,115,112,111,110,115,101,44,32,116,111,116,97,108,44,32,114,101,117,115,101,79,108,100,68,97,116,97,41,32,123,32,118,97,114,32,101,109,66,117,102,102,101,114,32,61,32,48,59,32,118,97,114,32,101,109,66,117,102,102,101,114,76,101,110,103,116,104,32,61,32,48,59,32,105,102,32,40,114,101,115,112,111,110,115,101,32,38,38,32,40,114,101,115,112,111,110,115,101,46,98,121,116,101,76,101,110,103,116,104,32,62,32,48,41,32,38,38,
32,33,114,101,117,115,101,79,108,100,68,97,116,97,41,32,123,32,118,97,114,32,106,115,66,117,102,102,101,114,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,114,101,115,112,111,110,115,101,41,59,32,101,109,66,117,102,102,101,114,76,101,110,103,116,104,32,61,32,106,115,66,117,102,102,101,114,46,108,101,110,103,116,104,59,32,101,109,66,117,102,102,101,114,32,61,32,77,111,100,117,108,101,91,39,95,109,97,108,108,111,99,39,93,40,101,109,66,117,102,102,101,114,76,101,110,103,116,104,41,59,
32,72,69,65,80,85,56,46,115,101,116,40,106,115,66,117,102,102,101,114,44,32,101,109,66,117,102,102,101,114,41,59,32,125,32,82,117,110,116,105,109,101,46,100,121,110,67,97,108,108,40,39,118,105,105,105,105,105,105,39,44,32,36,49,44,32,91,36,48,44,32,115,116,97,116,117,115,44,32,101,109,66,117,102,102,101,114,44,32,101,109,66,117,102,102,101,114,76,101,110,103,116,104,44,32,116,111,116,97,108,44,32,114,101,117,115,101,79,108,100,68,97,116,97,93,41,59,32,125,59,32,120,104,114,46,104,97,110,100,108,101,
80,114,111,103,114,101,115,115,32,61,32,102,117,110,99,116,105,111,110,40,115,116,97,116,117,115,44,32,114,101,115,112,111,110,115,101,44,32,112,114,111,99,101,115,115,101,100,44,32,100,111,119,110,108,111,97,100,101,100,44,32,116,111,116,97,108,41,32,123,32,118,97,114,32,101,109,66,117,102,102,101,114,32,61,32,48,59,32,118,97,114,32,101,109,66,117,102,102,101,114,76,101,110,103,116,104,32,61,32,48,59,32,105,102,32,40,114,101,115,112,111,110,115,101,41,32,123,32,105,102,32,40,112,114,111,99,101,115,
115,101,100,32,61,61,32,48,41,123,32,118,97,114,32,106,115,66,117,102,102,101,114,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,114,101,115,112,111,110,115,101,41,59,32,101,109,66,117,102,102,101,114,76,101,110,103,116,104,32,61,32,112,114,111,99,101,115,115,101,100,32,43,32,106,115,66,117,102,102,101,114,46,108,101,110,103,116,104,59,32,101,109,66,117,102,102,101,114,32,61,32,77,111,100,117,108,101,91,39,95,109,97,108,108,111,99,39,93,40,116,111,116,97,108,41,59,32,72,69,65,80,85,
56,46,115,101,116,40,106,115,66,117,102,102,101,114,44,32,101,109,66,117,102,102,101,114,41,59,32,125,32,101,108,115,101,32,123,32,118,97,114,32,106,115,66,117,102,102,101,114,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,114,101,115,112,111,110,115,101,41,59,32,101,109,66,117,102,102,101,114,76,101,110,103,116,104,32,61,32,106,115,66,117,102,102,101,114,46,108,101,110,103,116,104,59,32,101,109,66,117,102,102,101,114,32,61,32,82,117,110,116,105,109,101,46,100,121,110,67,97,108,108,
40,39,105,105,39,44,32,36,51,44,32,91,36,48,93,41,59,32,72,69,65,80,85,56,46,115,101,116,40,106,115,66,117,102,102,101,114,44,32,101,109,66,117,102,102,101,114,32,43,32,112,114,111,99,101,115,115,101,100,41,59,32,125,32,125,32,82,117,110,116,105,109,101,46,100,121,110,67,97,108,108,40,39,118,105,105,105,105,105,105,39,44,32,36,50,44,32,91,36,48,44,32,115,116,97,116,117,115,44,32,101,109,66,117,102,102,101,114,44,32,101,109,66,117,102,102,101,114,76,101,110,103,116,104,44,32,100,111,119,110,108,111,
97,100,101,100,44,32,116,111,116,97,108,93,41,59,32,125,59,32,120,104,114,46,101,110,97,98,108,101,79,110,80,114,111,103,114,101,115,115,32,61,32,102,117,110,99,116,105,111,110,40,120,104,114,41,32,123,32,116,104,105,115,46,111,118,101,114,114,105,100,101,77,105,109,101,84,121,112,101,40,39,116,101,120,116,92,47,112,108,97,105,110,59,32,99,104,97,114,115,101,116,61,120,45,117,115,101,114,45,100,101,102,105,110,101,100,39,41,59,32,105,102,40,116,104,105,115,46,114,101,97,100,121,83,116,97,116,101,
32,62,61,32,49,41,123,32,116,104,105,115,46,114,101,115,112,111,110,115,101,84,121,112,101,32,61,32,39,116,101,120,116,39,59,32,125,32,116,104,105,115,46,100,101,115,105,114,101,100,82,101,115,112,111,110,115,101,84,121,112,101,32,61,32,39,116,101,120,116,39,59,32,116,104,105,115,46,111,110,112,114,111,103,114,101,115,115,32,61,32,102,117,110,99,116,105,111,110,40,111,69,118,101,110,116,41,32,123,32,105,102,32,40,120,104,114,46,95,118,98,95,100,101,108,101,116,101,100,41,32,114,101,116,117,114,110,
59,32,118,97,114,32,115,116,114,32,61,32,116,104,105,115,46,114,101,115,112,111,110,115,101,84,101,120,116,59,32,105,102,32,40,115,116,114,32,38,38,32,40,115,116,114,46,108,101,110,103,116,104,32,62,32,48,41,32,38,38,32,111,69,118,101,110,116,46,108,101,110,103,116,104,67,111,109,112,117,116,97,98,108,101,32,38,38,32,40,111,69,118,101,110,116,46,116,111,116,97,108,32,62,32,48,41,41,123,32,116,114,121,32,123,32,118,97,114,32,97,114,114,97,121,66,117,102,102,101,114,32,61,32,110,101,119,32,65,114,114,
97,121,66,117,102,102,101,114,40,115,116,114,46,108,101,110,103,116,104,32,45,32,120,104,114,46,112,114,111,99,101,115,115,101,100,41,59,32,118,97,114,32,98,121,116,101,65,114,114,97,121,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,97,114,114,97,121,66,117,102,102,101,114,41,59,32,125,32,99,97,116,99,104,40,101,41,32,123,32,116,104,114,111,119,32,110,101,119,32,69,114,114,111,114,40,34,115,116,114,46,108,101,110,103,116,104,32,61,32,34,32,43,32,115,116,114,46,108,101,110,103,116,
104,32,43,32,34,32,112,114,111,99,101,115,115,101,100,32,32,61,32,34,32,43,32,120,104,114,46,112,114,111,99,101,115,115,101,100,41,32,125,32,102,111,114,32,40,118,97,114,32,105,32,61,32,120,104,114,46,112,114,111,99,101,115,115,101,100,59,32,105,32,60,32,115,116,114,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,98,121,116,101,65,114,114,97,121,91,105,32,45,32,120,104,114,46,112,114,111,99,101,115,115,101,100,93,32,61,32,115,116,114,46,99,104,97,114,67,111,100,101,65,116,40,105,41,32,38,
32,48,120,102,102,59,32,125,32,120,104,114,46,104,97,110,100,108,101,80,114,111,103,114,101,115,115,40,116,104,105,115,46,115,116,97,116,117,115,44,32,97,114,114,97,121,66,117,102,102,101,114,44,32,120,104,114,46,112,114,111,99,101,115,115,101,100,44,32,115,116,114,46,108,101,110,103,116,104,44,32,111,69,118,101,110,116,46,116,111,116,97,108,41,59,32,120,104,114,46,112,114,111,99,101,115,115,101,100,32,61,32,115,116,114,46,108,101,110,103,116,104,59,32,125,32,125,59,32,116,104,105,115,46,111,110,
108,111,97,100,32,61,32,102,117,110,99,116,105,111,110,40,111,69,118,101,110,116,41,32,123,32,105,102,32,40,120,104,114,46,95,118,98,95,100,101,108,101,116,101,100,41,32,114,101,116,117,114,110,59,32,118,97,114,32,115,116,114,32,61,32,116,104,105,115,46,114,101,115,112,111,110,115,101,84,101,120,116,59,32,105,102,32,40,120,104,114,46,112,114,111,99,101,115,115,101,100,32,33,61,32,115,116,114,46,108,101,110,103,116,104,41,123,32,118,97,114,32,97,114,114,97,121,66,117,102,102,101,114,32,61,32,110,101,
119,32,65,114,114,97,121,66,117,102,102,101,114,40,115,116,114,46,108,101,110,103,116,104,41,59,32,118,97,114,32,98,121,116,101,65,114,114,97,121,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,97,114,114,97,121,66,117,102,102,101,114,41,59,32,105,102,32,40,115,116,114,41,123,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,32,60,32,115,116,114,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,98,121,116,101,65,114,114,97,121,91,105,93,32,61,32,115,116,114,46,99,104,
97,114,67,111,100,101,65,116,40,105,41,32,38,32,48,120,102,102,59,32,125,32,125,32,120,104,114,46,104,97,110,100,108,101,82,101,115,112,111,110,115,101,40,116,104,105,115,46,115,116,97,116,117,115,44,32,97,114,114,97,121,66,117,102,102,101,114,44,32,111,69,118,101,110,116,46,116,111,116,97,108,44,32,102,97,108,115,101,41,59,32,125,32,101,108,115,101,123,32,120,104,114,46,104,97,110,100,108,101,82,101,115,112,111,110,115,101,40,116,104,105,115,46,115,116,97,116,117,115,44,32,110,117,108,108,44,32,
111,69,118,101,110,116,46,116,111,116,97,108,44,32,116,114,117,101,41,59,32,125,32,125,59,32,125,59,32,120,104,114,46,100,105,115,97,98,108,101,79,110,80,114,111,103,114,101,115,115,32,61,32,102,117,110,99,116,105,111,110,40,120,104,114,41,123,32,105,102,40,116,104,105,115,46,114,101,97,100,121,83,116,97,116,101,32,62,61,32,49,41,123,32,116,104,105,115,46,114,101,115,112,111,110,115,101,84,121,112,101,32,61,32,39,97,114,114,97,121,98,117,102,102,101,114,39,59,32,125,32,116,104,105,115,46,100,101,
115,105,114,101,100,82,101,115,112,111,110,115,101,84,121,112,101,32,61,32,39,97,114,114,97,121,98,117,102,102,101,114,39,59,32,116,104,105,115,46,111,110,112,114,111,103,114,101,115,115,32,61,32,110,117,108,108,59,32,116,104,105,115,46,111,110,108,111,97,100,32,61,32,102,117,110,99,116,105,111,110,40,111,69,118,101,110,116,41,32,123,32,105,102,32,40,120,104,114,46,95,118,98,95,100,101,108,101,116,101,100,41,32,114,101,116,117,114,110,59,32,120,104,114,46,104,97,110,100,108,101,82,101,115,112,111,
110,115,101,40,116,104,105,115,46,115,116,97,116,117,115,44,32,116,104,105,115,46,114,101,115,112,111,110,115,101,44,32,111,69,118,101,110,116,46,116,111,116,97,108,44,32,102,97,108,115,101,41,59,32,125,59,32,125,59,32,120,104,114,46,111,110,101,114,114,111,114,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,105,102,32,40,120,104,114,46,95,118,98,95,100,101,108,101,116,101,100,41,32,114,101,116,117,114,110,59,32,120,104,114,46,104,97,110,100,108,101,82,101,115,112,111,110,115,101,40,116,104,
105,115,46,115,116,97,116,117,115,44,32,116,104,105,115,46,114,101,115,112,111,110,115,101,41,59,32,125,59,32,120,104,114,46,111,110,116,105,109,101,111,117,116,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,105,102,32,40,120,104,114,46,95,118,98,95,100,101,108,101,116,101,100,41,32,114,101,116,117,114,110,59,32,120,104,114,46,104,97,110,100,108,101,82,101,115,112,111,110,115,101,40,45,53,50,52,44,32,116,104,105,115,46,114,101,115,112,111,110,115,101,41,59,32,125,59,32,114,101,116,117,114,
110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,120,104,114,41,59,32,125,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,120,104,114,46,100,105,115,97,98,108,101,79,110,80,114,111,103,114,101,115,115,40,120,104,114,41,59,32,125,0,85,78,75,78,79,87,78,0,72,69,65,68,0,67,79,78,78,69,67,84,0,68,69,76,69,84,69,0,80,85,84,0,80,79,83,84,0,71,69,84,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,
79,98,106,40,36,48,41,59,32,118,97,114,32,109,101,116,104,111,100,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,117,114,108,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,120,104,114,46,112,114,111,99,101,115,115,101,100,32,61,32,48,59,32,120,104,114,46,111,112,101,110,40,109,101,116,104,111,100,44,32,117,114,108,44,32,116,114,117,101,41,59,32,120,104,114,46,114,101,115,112,111,110,115,101,84,
121,112,101,32,61,32,120,104,114,46,100,101,115,105,114,101,100,82,101,115,112,111,110,115,101,84,121,112,101,32,125,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,100,101,120,79,102,40,39,101,100,103,101,47,39,41,41,32,123,32,120,104,114,46,100,105,115,97,98,108,101,79,110,80,114,111,103,
114,101,115,115,40,120,104,114,41,59,32,125,32,101,108,115,101,32,123,32,120,104,114,46,101,110,97,98,108,101,79,110,80,114,111,103,114,101,115,115,40,120,104,114,41,59,32,125,32,125,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,120,104,114,46,116,105,109,101,111,117,116,32,61,32,36,49,59,32,125,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,120,104,114,46,115,101,110,100,
40,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,104,101,97,100,101,114,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,118,97,108,117,101,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,120,104,114,46,115,101,116,82,101,113,117,101,115,116,72,101,97,100,101,114,40,104,
101,97,100,101,114,44,32,118,97,108,117,101,41,59,32,125,0,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,104,101,97,100,101,114,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,118,97,108,117,101,32,61,32,120,104,114,46,103,101,116,82,101,115,112,111,110,115,101,72,101,97,100,101,114,40,104,101,97,100,101,114,41,59,32,105,102,32,40,118,97,108,117,101,41,32,123,32,
114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,118,97,108,117,101,41,91,48,93,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,0,38,116,105,109,101,115,116,97,109,112,61,0,63,116,105,109,101,115,116,97,109,112,61,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,33,99,116,120,41,32,114,101,116,117,114,110,59,32,118,97,114,32,112,99,
32,61,32,99,116,120,46,112,99,59,32,105,102,32,40,33,112,99,41,32,114,101,116,117,114,110,59,32,112,99,46,111,110,110,101,103,111,116,105,97,116,105,111,110,110,101,101,100,101,100,32,61,32,117,110,100,101,102,105,110,101,100,59,32,112,99,46,111,110,105,99,101,99,97,110,100,105,100,97,116,101,32,61,32,117,110,100,101,102,105,110,101,100,59,32,112,99,46,111,110,115,105,103,110,97,108,105,110,103,115,116,97,116,101,99,104,97,110,103,101,32,61,32,117,110,100,101,102,105,110,101,100,59,32,112,99,46,111,
110,97,100,100,115,116,114,101,97,109,32,61,32,117,110,100,101,102,105,110,101,100,59,32,112,99,46,111,110,114,101,109,111,118,101,115,116,114,101,97,109,32,61,32,117,110,100,101,102,105,110,101,100,59,32,112,99,46,111,110,105,99,101,99,111,110,110,101,99,116,105,111,110,115,116,97,116,101,99,104,97,110,103,101,32,61,32,117,110,100,101,102,105,110,101,100,59,32,112,99,46,111,110,100,97,116,97,99,104,97,110,110,101,108,32,61,32,117,110,100,101,102,105,110,101,100,59,32,99,116,120,46,102,114,101,101,
100,32,61,32,116,114,117,101,59,32,125,0,123,32,118,97,114,32,108,97,98,101,108,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,111,112,116,105,111,110,115,32,61,32,123,125,59,32,111,112,116,105,111,110,115,46,111,114,100,101,114,101,100,32,61,32,36,50,32,63,32,116,114,117,101,32,58,32,102,97,108,115,101,59,32,105,102,32,40,36,51,32,33,61,61,32,45,49,41,32,123,32,111,112,116,105,111,110,115,46,109,97,120,80,97,99,107,101,116,76,105,102,101,
84,105,109,101,32,61,32,36,51,59,32,125,32,105,102,32,40,36,52,32,33,61,61,32,45,49,41,32,123,32,111,112,116,105,111,110,115,46,109,97,120,82,101,116,114,97,110,115,109,105,116,115,32,61,32,36,52,32,125,32,105,102,32,40,36,53,41,32,123,32,111,112,116,105,111,110,115,46,110,101,103,111,116,105,97,116,101,100,32,61,32,116,114,117,101,59,32,125,32,105,102,32,40,36,54,32,33,61,61,32,45,49,41,32,123,32,111,112,116,105,111,110,115,46,105,100,32,61,32,36,54,59,32,125,32,118,97,114,32,112,99,32,61,32,118,
98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,112,99,59,32,118,97,114,32,100,99,32,61,32,112,99,46,99,114,101,97,116,101,68,97,116,97,67,104,97,110,110,101,108,40,108,97,98,101,108,44,32,111,112,116,105,111,110,115,41,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46],"i8",4,x.D+51200);
M([118,98,65,100,100,79,98,106,40,100,99,41,59,32,125,0,123,32,118,97,114,32,112,99,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,112,99,59,32,112,99,46,99,108,111,115,101,40,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,118,97,114,32,112,99,32,61,32,99,116,120,46,112,99,59,32,118,97,114,32,109,101,100,105,97,67,111,110,115,116,114,97,105,110,116,115,32,61,32,
123,39,109,97,110,100,97,116,111,114,121,39,58,32,123,32,39,79,102,102,101,114,84,111,82,101,99,101,105,118,101,65,117,100,105,111,39,58,102,97,108,115,101,125,125,59,32,112,99,46,99,114,101,97,116,101,79,102,102,101,114,40,102,117,110,99,116,105,111,110,40,100,101,115,99,41,32,123,32,105,102,32,40,112,99,46,115,105,103,110,97,108,105,110,103,83,116,97,116,101,32,61,61,32,39,99,108,111,115,101,100,39,32,124,124,32,99,116,120,46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,118,97,114,32,
116,121,112,101,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,100,101,115,99,46,116,121,112,101,41,59,32,118,97,114,32,115,100,112,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,100,101,115,99,46,115,100,112,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,105,105,105,105,105,39,41,40,36,48,44,32,36,50,44,32,116,121,112,101,91,48,93,44,32,116,121,112,101,
91,49,93,44,32,115,100,112,91,48,93,44,32,115,100,112,91,49,93,41,59,32,125,44,32,102,117,110,99,116,105,111,110,40,101,114,114,111,114,41,32,123,32,105,102,32,40,99,116,120,46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,118,97,114,32,101,114,114,77,115,103,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,114,114,111,114,46,110,97,109,101,32,43,32,39,58,32,39,32,43,32,101,114,114,111,114,46,109,101,115,115,97,103,101,41,59,32,82,117,110,116,105,
109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,52,44,32,39,118,105,105,105,105,39,41,40,36,48,44,32,36,50,44,32,101,114,114,77,115,103,91,48,93,44,32,101,114,114,77,115,103,91,49,93,41,59,32,125,44,32,109,101,100,105,97,67,111,110,115,116,114,97,105,110,116,115,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,118,97,114,32,112,99,32,61,32,99,116,120,46,112,99,59,32,118,
97,114,32,109,101,100,105,97,67,111,110,115,116,114,97,105,110,116,115,32,61,32,123,39,109,97,110,100,97,116,111,114,121,39,58,32,123,32,39,79,102,102,101,114,84,111,82,101,99,101,105,118,101,65,117,100,105,111,39,58,102,97,108,115,101,125,125,59,32,112,99,46,99,114,101,97,116,101,65,110,115,119,101,114,40,102,117,110,99,116,105,111,110,40,100,101,115,99,41,32,123,32,105,102,32,40,112,99,46,115,105,103,110,97,108,105,110,103,83,116,97,116,101,32,61,61,32,39,99,108,111,115,101,100,39,32,124,124,32,
99,116,120,46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,118,97,114,32,116,121,112,101,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,100,101,115,99,46,116,121,112,101,41,59,32,118,97,114,32,115,100,112,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,100,101,115,99,46,115,100,112,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,105,105,105,105,
105,39,41,40,36,48,44,32,36,50,44,32,116,121,112,101,91,48,93,44,32,116,121,112,101,91,49,93,44,32,115,100,112,91,48,93,44,32,115,100,112,91,49,93,41,59,32,125,44,32,102,117,110,99,116,105,111,110,40,101,114,114,111,114,41,32,123,32,105,102,32,40,99,116,120,46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,118,97,114,32,101,114,114,77,115,103,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,114,114,111,114,46,110,97,109,101,32,43,32,39,58,32,39,32,
43,32,101,114,114,111,114,46,109,101,115,115,97,103,101,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,52,44,32,39,118,105,105,105,105,39,41,40,36,48,44,32,36,50,44,32,101,114,114,77,115,103,91,48,93,44,32,101,114,114,77,115,103,91,49,93,41,59,32,125,44,32,109,101,100,105,97,67,111,110,115,116,114,97,105,110,116,115,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,112,99,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,
106,40,36,48,41,46,112,99,59,32,118,97,114,32,99,110,100,32,61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,99,110,100,91,39,115,100,112,77,76,105,110,101,73,110,100,101,120,39,93,32,61,32,36,49,59,32,99,110,100,91,39,115,100,112,77,105,100,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,99,110,100,91,39,99,97,110,100,105,100,97,116,101,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,51,41,59,32,116,114,
121,32,123,32,112,99,46,97,100,100,73,99,101,67,97,110,100,105,100,97,116,101,40,110,101,119,32,82,84,67,73,99,101,67,97,110,100,105,100,97,116,101,40,99,110,100,41,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,114,101,116,117,114,110,32,49,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,118,97,114,32,112,99,32,61,32,99,116,120,46,112,99,59,32,118,97,114,32,100,101,115,99,32,
61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,100,101,115,99,91,39,116,121,112,101,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,51,41,59,32,100,101,115,99,91,39,115,100,112,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,52,41,59,32,112,99,46,115,101,116,82,101,109,111,116,101,68,101,115,99,114,105,112,116,105,111,110,40,110,101,119,32,82,84,67,83,101,115,115,105,111,110,68,101,115,99,114,105,112,116,105,111,
110,40,100,101,115,99,41,44,32,102,117,110,99,116,105,111,110,40,41,32,123,32,105,102,32,40,99,116,120,46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,39,41,40,36,48,44,32,36,50,41,59,32,125,44,32,102,117,110,99,116,105,111,110,40,101,114,114,111,114,41,32,123,32,105,102,32,40,99,116,120,46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,118,97,114,32,101,114,114,77,115,
103,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,114,114,111,114,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,54,44,32,39,118,105,105,105,105,39,41,40,36,48,44,32,36,50,44,32,101,114,114,77,115,103,91,48,93,44,32,101,114,114,77,115,103,91,49,93,41,59,32,125,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,
49,41,59,32,118,97,114,32,112,99,32,61,32,99,116,120,46,112,99,59,32,118,97,114,32,100,101,115,99,32,61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,100,101,115,99,91,39,116,121,112,101,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,51,41,59,32,100,101,115,99,91,39,115,100,112,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,52,41,59,32,112,99,46,115,101,116,76,111,99,97,108,68,101,115,99,114,105,112,116,105,111,110,
40,110,101,119,32,82,84,67,83,101,115,115,105,111,110,68,101,115,99,114,105,112,116,105,111,110,40,100,101,115,99,41,44,32,102,117,110,99,116,105,111,110,40,41,32,123,32,105,102,32,40,99,116,120,46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,39,41,40,36,48,44,32,36,50,41,59,32,125,44,32,102,117,110,99,116,105,111,110,40,101,114,114,111,114,41,32,123,32,105,102,32,40,99,116,120,
46,102,114,101,101,100,41,32,114,101,116,117,114,110,59,32,118,97,114,32,101,114,114,77,115,103,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,114,114,111,114,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,54,44,32,39,118,105,105,105,105,39,41,40,36,48,44,32,36,50,44,32,101,114,114,77,115,103,91,48,93,44,32,101,114,114,77,115,103,91,49,93,41,59,32,125,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,
32,118,97,114,32,112,99,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,112,99,59,32,118,97,114,32,118,97,108,32,61,32,112,99,91,39,105,99,101,67,111,110,110,101,99,116,105,111,110,83,116,97,116,101,39,93,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,118,97,108,41,91,48,93,59,32,125,0,110,101,119,0,99,104,101,99,107,105,110,103,0,99,111,110,110,101,99,116,101,100,0,99,111,109,112,108,101,116,101,100,0,102,97,105,
108,101,100,0,100,105,115,99,111,110,110,101,99,116,101,100,0,99,108,111,115,101,100,0,115,114,99,47,119,101,98,114,116,99,47,80,101,101,114,67,111,110,110,101,99,116,105,111,110,46,99,99,0,80,101,101,114,32,67,111,110,110,101,99,116,105,111,110,32,67,111,110,115,116,114,97,105,110,115,32,97,114,101,32,78,89,73,46,32,73,103,110,111,114,105,110,103,32,116,104,101,109,46,46,46,0,123,32,105,102,32,40,33,40,119,105,110,100,111,119,46,82,84,67,80,101,101,114,67,111,110,110,101,99,116,105,111,110,32,38,
38,32,119,105,110,100,111,119,46,82,84,67,80,101,101,114,67,111,110,110,101,99,116,105,111,110,46,112,114,111,116,111,116,121,112,101,46,99,114,101,97,116,101,68,97,116,97,67,104,97,110,110,101,108,41,41,32,123,32,114,101,116,117,114,110,32,45,49,59,32,125,32,118,97,114,32,115,101,114,118,101,114,115,32,61,32,123,34,105,99,101,83,101,114,118,101,114,115,34,58,32,91,93,125,59,32,123,32,118,97,114,32,115,114,118,86,101,99,116,32,61,32,36,56,59,32,118,97,114,32,115,116,114,80,116,114,83,105,122,101,
32,61,32,36,57,59,32,118,97,114,32,115,114,118,76,105,110,101,115,32,61,32,36,49,48,59,32,118,97,114,32,105,32,61,32,48,59,32,102,111,114,32,40,105,32,61,32,48,59,32,105,32,60,32,115,114,118,76,105,110,101,115,59,32,105,43,43,41,32,123,32,118,97,114,32,106,115,83,101,114,118,101,114,32,61,32,123,125,59,32,118,97,114,32,117,114,105,32,61,32,103,101,116,86,97,108,117,101,40,115,114,118,86,101,99,116,32,43,32,40,40,105,42,51,32,43,32,48,41,32,42,32,115,116,114,80,116,114,83,105,122,101,41,44,32,39,42,
39,41,59,32,118,97,114,32,117,115,101,114,32,61,32,103,101,116,86,97,108,117,101,40,115,114,118,86,101,99,116,32,43,32,40,40,105,42,51,32,43,32,49,41,32,42,32,115,116,114,80,116,114,83,105,122,101,41,44,32,39,42,39,41,59,32,118,97,114,32,112,97,115,115,119,111,114,100,32,61,32,103,101,116,86,97,108,117,101,40,115,114,118,86,101,99,116,32,43,32,40,40,105,42,51,32,43,32,50,41,32,42,32,115,116,114,80,116,114,83,105,122,101,41,44,32,39,42,39,41,59,32,105,102,32,40,117,114,105,41,32,123,32,106,115,83,
101,114,118,101,114,91,39,117,114,108,115,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,117,114,105,41,59,32,125,32,105,102,32,40,117,115,101,114,41,32,123,32,106,115,83,101,114,118,101,114,91,39,117,115,101,114,110,97,109,101,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,117,115,101,114,41,59,32,125,32,105,102,32,40,112,97,115,115,119,111,114,100,41,32,123,32,106,115,83,101,114,118,101,114,91,39,99,114,101,100,101,110,116,
105,97,108,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,112,97,115,115,119,111,114,100,41,59,32,125,32,115,101,114,118,101,114,115,91,39,105,99,101,83,101,114,118,101,114,115,39,93,46,112,117,115,104,40,106,115,83,101,114,118,101,114,41,59,32,125,32,125,32,118,97,114,32,111,112,116,105,111,110,115,32,61,32,110,117,108,108,59,32,118,97,114,32,111,110,110,101,103,111,116,105,97,116,105,111,110,110,101,101,100,101,100,32,61,32,102,117,110,99,116,105,111,110,40,
41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,44,32,39,118,105,39,41,40,36,48,41,59,32,125,59,32,118,97,114,32,112,99,32,61,32,110,117,108,108,59,32,118,97,114,32,111,110,105,99,101,99,97,110,100,105,100,97,116,101,32,61,32,102,117,110,99,116,105,111,110,40,101,118,116,41,32,123,32,105,102,32,40,112,99,46,115,105,103,110,97,108,105,110,103,83,116,97,116,101,32,61,61,32,39,99,108,111,115,101,100,39,32,124,124,32,99,116,120,46,102,114,101,101,
100,41,32,114,101,116,117,114,110,59,32,105,102,32,40,101,118,116,46,99,97,110,100,105,100,97,116,101,41,32,123,32,118,97,114,32,109,105,100,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,118,116,46,99,97,110,100,105,100,97,116,101,46,115,100,112,77,105,100,41,59,32,118,97,114,32,99,97,110,100,105,100,97,116,101,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,118,116,46,99,97,110,100,105,100,97,116,101,46,99,97,110,
100,105,100,97,116,101,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,50,44,32,39,118,105,105,105,105,105,105,39,41,40,36,48,44,32,101,118,116,46,99,97,110,100,105,100,97,116,101,46,115,100,112,77,76,105,110,101,73,110,100,101,120,44,32,109,105,100,91,48,93,44,32,109,105,100,91,49,93,44,32,99,97,110,100,105,100,97,116,101,91,48,93,44,32,99,97,110,100,105,100,97,116,101,91,49,93,41,59,32,125,32,101,108,115,101,32,123,32,82,117,110,116,105,109,101,46,
103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,50,44,32,39,118,105,105,105,105,105,105,39,41,40,36,48,44,32,48,44,32,48,44,32,48,44,32,48,44,32,48,41,59,32,125,32,125,59,32,118,97,114,32,111,110,115,105,103,110,97,108,105,110,103,115,116,97,116,101,99,104,97,110,103,101,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,39,41,40,36,48,41,59,32,125,59,32,118,97,114,32,111,110,
97,100,100,115,116,114,101,97,109,32,61,32,102,117,110,99,116,105,111,110,40,101,118,116,41,32,123,32,118,97,114,32,114,101,102,32,61,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,101,118,116,46,115,116,114,101,97,109,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,52,44,32,39,118,105,105,39,41,40,36,48,44,32,114,101,102,41,59,32,125,59,32,118,97,114,32,111,110,114,101,109,111,118,101,115,116,114,101,97,109,32,61,32,102,117,110,99,116,105,
111,110,40,101,118,116,41,32,123,32,118,97,114,32,114,101,102,32,61,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,101,118,116,46,115,116,114,101,97,109,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,39,41,40,36,48,44,32,114,101,102,41,59,32,125,59,32,118,97,114,32,111,110,105,99,101,99,111,110,110,101,99,116,105,111,110,115,116,97,116,101,99,104,97,110,103,101,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,
82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,54,44,32,39,118,105,39,41,40,36,48,41,59,32,125,59,32,118,97,114,32,111,110,100,97,116,97,99,104,97,110,110,101,108,32,61,32,102,117,110,99,116,105,111,110,40,101,118,116,41,32,123,32,118,97,114,32,114,101,102,32,61,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,101,118,116,46,99,104,97,110,110,101,108,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,55,44,
32,39,118,105,105,39,41,40,36,48,44,32,114,101,102,41,59,32,125,59,32,112,99,32,61,32,110,101,119,32,82,84,67,80,101,101,114,67,111,110,110,101,99,116,105,111,110,40,115,101,114,118,101,114,115,44,32,111,112,116,105,111,110,115,41,59,32,112,99,46,111,110,110,101,103,111,116,105,97,116,105,111,110,110,101,101,100,101,100,32,61,32,111,110,110,101,103,111,116,105,97,116,105,111,110,110,101,101,100,101,100,59,32,112,99,46,111,110,105,99,101,99,97,110,100,105,100,97,116,101,32,61,32,111,110,105,99,101,
99,97,110,100,105,100,97,116,101,59,32,112,99,46,111,110,115,105,103,110,97,108,105,110,103,115,116,97,116,101,99,104,97,110,103,101,32,61,32,111,110,115,105,103,110,97,108,105,110,103,115,116,97,116,101,99,104,97,110,103,101,59,32,112,99,46,111,110,97,100,100,115,116,114,101,97,109,32,61,32,111,110,97,100,100,115,116,114,101,97,109,59,32,112,99,46,111,110,114,101,109,111,118,101,115,116,114,101,97,109,32,61,32,111,110,114,101,109,111,118,101,115,116,114,101,97,109,59,32,112,99,46,111,110,105,99,
101,99,111,110,110,101,99,116,105,111,110,115,116,97,116,101,99,104,97,110,103,101,32,61,32,111,110,105,99,101,99,111,110,110,101,99,116,105,111,110,115,116,97,116,101,99,104,97,110,103,101,59,32,112,99,46,111,110,100,97,116,97,99,104,97,110,110,101,108,32,61,32,111,110,100,97,116,97,99,104,97,110,110,101,108,59,32,118,97,114,32,99,116,120,32,61,32,123,112,99,58,32,112,99,125,59,32,99,116,120,46,102,114,101,101,100,32,61,32,102,97,108,115,101,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,
118,98,65,100,100,79,98,106,40,99,116,120,41,59,32,125,0,123,32,118,97,114,32,100,99,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,33,100,99,41,32,114,101,116,117,114,110,59,32,100,99,46,111,110,111,112,101,110,32,61,32,117,110,100,101,102,105,110,101,100,59,32,100,99,46,111,110,101,114,114,111,114,32,61,32,117,110,100,101,102,105,110,101,100,59,32,100,99,46,111,110,99,108,111,115,101,32,61,32,117,110,100,101,102,105,110,101,100,59,32,100,99,46,111,110,
109,101,115,115,97,103,101,32,61,32,117,110,100,101,102,105,110,101,100,59,32,125,0,123,32,118,97,114,32,111,110,111,112,101,110,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,50,44,32,39,118,105,39,41,40,36,48,41,59,32,125,59,32,118,97,114,32,111,110,101,114,114,111,114,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,118,97,114,32,101,114,114,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,
110,103,84,111,67,83,116,114,40,39,85,110,107,110,111,119,110,32,101,114,114,111,114,39,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,105,105,39,41,40,36,48,44,32,101,114,114,91,48,93,44,32,101,114,114,91,49,93,41,59,32,125,59,32,118,97,114,32,111,110,99,108,111,115,101,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,52,44,32,39,118,
105,39,41,40,36,48,41,59,32,125,59,32,118,97,114,32,100,99,32,61,32,110,117,108,108,59,32,118,97,114,32,111,110,109,101,115,115,97,103,101,32,61,32,102,117,110,99,116,105,111,110,40,101,118,116,41,32,123,32,105,102,32,40,40,100,99,46,114,101,97,100,121,83,116,97,116,101,32,61,61,61,32,39,99,108,111,115,105,110,103,39,41,32,124,124,32,40,100,99,46,114,101,97,100,121,83,116,97,116,101,32,61,61,61,32,39,99,108,111,115,101,100,39,41,41,32,114,101,116,117,114,110,59,32,105,102,32,40,101,118,116,46,100,
97,116,97,32,105,110,115,116,97,110,99,101,111,102,32,65,114,114,97,121,66,117,102,102,101,114,41,32,123,32,118,97,114,32,110,97,116,105,118,101,68,97,116,97,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,101,118,116,46,100,97,116,97,41,59,32,118,97,114,32,98,117,102,76,101,110,32,61,32,110,97,116,105,118,101,68,97,116,97,46,108,101,110,103,116,104,59,32,118,97,114,32,98,117,102,32,61,32,77,111,100,117,108,101,91,39,95,109,97,108,108,111,99,39,93,40,98,117,102,76,101,110,41,59,32,
72,69,65,80,85,56,46,115,101,116,40,110,97,116,105,118,101,68,97,116,97,44,32,98,117,102,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,105,105,39,41,40,36,48,44,32,49,44,32,98,117,102,44,32,98,117,102,76,101,110,41,59,32,125,32,101,108,115,101,32,105,102,32,40,116,121,112,101,111,102,32,101,118,116,46,100,97,116,97,32,61,61,61,32,39,115,116,114,105,110,103,39,41,32,123,32,118,97,114,32,109,115,103,32,61,32,118,98,108,105,98,
46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,118,116,46,100,97,116,97,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,105,105,39,41,40,36,48,44,32,48,44,32,109,115,103,91,48,93,44,32,109,115,103,91,49,93,41,59,32,125,32,125,59,32,100,99,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,100,99,46,111,110,111,112,101,110,32,61,32,111,110,111,112,101,110,59,32,100,99,46,111,110,101,114,
114,111,114,32,61,32,111,110,101,114,114,111,114,59,32,100,99,46,111,110,99,108,111,115,101,32,61,32,111,110,99,108,111,115,101,59,32,100,99,46,111,110,109,101,115,115,97,103,101,32,61,32,111,110,109,101,115,115,97,103,101,59,32,100,99,46,98,105,110,97,114,121,84,121,112,101,32,61,32,39,97,114,114,97,121,98,117,102,102,101,114,39,59,32,114,101,116,117,114,110,32,48,59,32,125,0,85,110,107,110,111,119,110,0,114,101,97,100,121,83,116,97,116,101,0,123,32,118,97,114,32,100,99,32,61,32,118,98,108,105,98,
46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,98,105,110,97,114,121,32,61,32,36,49,59,32,118,97,114,32,98,117,102,32,61,32,36,50,59,32,118,97,114,32,98,117,102,76,101,110,32,61,32,36,51,59,32,118,97,114,32,112,97,121,108,111,97,100,32,61,32,110,117,108,108,59,32,105,102,32,40,98,105,110,97,114,121,41,32,123,32,112,97,121,108,111,97,100,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,72,69,65,80,85,56,46,98,117,102,
102,101,114,44,32,98,117,102,44,32,98,117,102,76,101,110,41,41,59,32,125,32,101,108,115,101,32,123,32,112,97,121,108,111,97,100,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,98,117,102,44,32,98,117,102,76,101,110,41,59,32,125,32,116,114,121,32,123,32,100,99,46,115,101,110,100,40,112,97,121,108,111,97,100,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,114,101,116,117,114,110,32,49,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,98,108,105,
98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,99,108,111,115,101,40,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,98,117,102,102,101,114,101,100,65,109,111,117,110,116,59,32,125,0,32,115,122,61,0,32,100,97,116,97,83,122,61,0,32,116,114,107,73,100,61,0,32,98,97,115,101,45,100,97,116,97,45,111,102,102,115,101,116,61,0,32,115,97,109,112,108,101,68,101,115,99,114,105,112,116,105,111,110,73,110,100,
101,120,61,0,32,100,101,102,97,117,108,116,83,97,109,112,108,101,68,117,114,97,116,105,111,110,61,0,32,100,101,102,97,117,108,116,83,97,109,112,108,101,83,105,122,101,61,0,32,100,101,102,97,117,108,116,83,97,109,112,108,101,70,108,97,103,115,61,0,32,100,101,102,97,117,108,116,66,97,115,101,73,115,77,111,111,102,61,116,114,117,101,0,32,118,115,110,61,0,32,102,108,97,103,115,61,0,32,98,97,115,101,77,101,100,105,97,68,101,99,111,100,101,84,105,109,101,61,0,32,100,97,116,97,79,102,102,115,101,116,61,
0,32,102,105,114,115,116,83,97,109,112,108,101,70,108,97,103,115,61,0,32,115,97,109,112,108,101,115,61,91,0,58,32,0,32,100,117,114,61,0,32,99,111,109,112,111,115,105,116,105,111,110,84,105,109,101,79,102,102,115,101,116,61,0,32,115,101,113,78,117,109,61,0,32,99,114,101,97,116,105,111,110,84,105,109,101,61,0,32,109,111,100,84,105,109,101,61,0,32,116,105,109,101,115,99,97,108,101,61,0,32,100,117,114,73,110,83,61,0,32,114,97,116,101,61,0,32,118,111,108,61,0,32,109,97,116,114,105,120,61,91,0,32,110,101,
120,116,84,114,97,99,107,73,100,61,0,48,120,0,32,108,97,121,101,114,61,0,32,97,108,116,71,114,111,117,112,61,0,32,118,111,108,117,109,101,61,0,32,119,105,100,116,104,61,0,32,104,101,105,103,104,116,61,0,32,100,97,116,97,82,101,102,73,100,120,61,0,32,104,82,101,115,61,0,32,118,82,101,115,61,0,32,102,114,97,109,101,67,111,117,110,116,61,0,32,99,111,109,112,114,101,115,115,111,114,61,34,0,32,100,101,112,116,104,61,0,32,99,111,110,102,105,103,86,101,114,61,0,32,97,118,99,80,114,111,102,105,108,101,73,
110,100,105,99,97,116,105,111,110,61,0,32,112,114,111,102,105,108,101,67,111,109,112,97,116,105,98,105,108,105,116,121,61,0,32,97,118,99,76,101,118,101,108,73,110,100,105,99,97,116,105,111,110,61,0,32,108,101,110,103,116,104,83,105,122,101,45,49,61,0,32,108,101,110,103,116,104,83,105,122,101,61,0,32,115,112,115,101,115,61,91,0,32,112,112,115,101,115,61,91,0,32,48,120,32,0,32,104,83,112,97,99,105,110,103,61,0,32,118,83,112,97,99,105,110,103,61,0,32,115,97,109,112,108,101,83,105,122,101,61,0,32,115,
97,109,112,108,101,67,111,117,110,116,61,0,32,101,110,116,114,121,83,105,122,101,115,61,91,0,93,32,0,32,101,110,116,114,105,101,115,91,40,102,105,114,115,116,67,104,117,110,107,44,32,115,97,109,112,108,101,115,80,101,114,67,104,117,110,107,44,32,115,97,109,112,108,101,68,101,115,99,73,100,120,41,93,61,91,0,40,0,41,44,32,0,32,101,110,116,114,105,101,115,91,40,99,111,117,110,116,44,32,100,101,108,116,97,41,93,61,91,0,32,101,110,116,114,105,101,115,91,99,104,117,110,107,79,102,102,115,101,116,93,61,
91,0,32,109,111,100,105,102,105,99,97,116,105,111,110,84,105,109,101,61,0,32,100,117,114,97,116,105,111,110,61,0,32,108,97,110,103,61,0,32,116,121,112,101,61,0,32,110,97,109,101,61,0,32,103,114,97,112,104,105,99,115,77,111,100,101,61,0,32,111,112,99,111,108,111,114,61,40,0,41,0,32,98,97,108,97,110,99,101,61,0,32,102,114,97,103,109,101,110,116,68,117,114,97,116,105,111,110,61,0,32,116,114,97,99,107,73,100,61,0,32,100,101,102,97,117,108,116,83,97,109,112,108,101,68,101,115,99,114,105,112,116,105,111,
110,73,110,100,101,120,61,0,32,99,104,97,110,110,101,108,67,111,117,110,116,61,0,32,115,97,109,112,108,101,82,97,116,101,61,0,32,101,115,68,101,115,99,114,61,123,0,32,108,101,110,61,0,32,105,100,61,0,32,115,116,114,101,97,109,80,114,105,111,114,105,116,121,61,0,32,100,101,99,67,111,110,102,105,103,68,101,115,99,114,61,123,0,32,111,98,106,101,99,116,84,121,112,101,73,100,61,0,32,115,116,114,101,97,109,84,121,112,101,61,0,32,98,117,102,102,101,114,83,105,122,101,68,98,61,0,32,109,97,120,66,105,116,
114,97,116,101,61,0,32,97,118,103,66,105,116,114,97,116,101,61,0,32,100,101,99,83,112,101,99,105,102,105,99,68,101,115,99,114,61,123,0,32,100,101,99,111,100,101,114,67,111,110,102,61,0,32,115,108,67,111,110,102,105,103,68,101,115,99,114,61,123,0,32,115,121,115,73,100,61,0,32,107,101,121,73,100,115,61,91,0,32,109,106,114,61,0,32,109,110,114,61,0,32,99,111,109,112,66,114,97,110,100,115,61,91,0,32,98,117,102,102,101,114,83,105,122,101,68,66,61,0,32,108,111,99,97,116,105,111,110,61,0,32,100,97,116,97,
70,111,114,109,97,116,61,0,32,118,101,114,115,105,111,110,61,0,32,117,114,108,61,0,32,100,101,102,97,117,108,116,65,108,103,111,114,105,116,104,109,73,100,61,0,32,100,101,102,97,117,108,116,73,118,83,105,122,101,61,0,32,100,101,102,97,117,108,116,75,101,121,73,100,61,0,32,114,101,102,73,100,61,0,32,101,97,114,108,105,101,115,116,80,114,101,115,101,110,116,97,116,105,111,110,84,105,109,101,61,0,32,102,105,114,115,116,79,102,102,115,101,116,61,0,32,114,101,102,101,114,101,110,99,101,115,61,91,0,32,
115,117,98,115,101,103,109,101,110,116,68,117,114,61,0,32,115,116,97,114,116,115,87,105,116,104,83,65,80,61,0,32,83,65,80,84,121,112,101,61,0,32,83,65,80,68,101,108,116,97,84,121,112,101,61,0,32,115,117,98,115,101,103,109,101,110,116,115,61,91,0,58,32,114,97,110,103,101,115,61,91,40,108,101,118,101,108,45,62,114,97,110,103,101,83,105,122,101,41,0,32,32,32,32,32,32,32,0,58,0,59,32,0,32,108,101,118,101,108,115,61,91,0,32,112,97,100,100,105,110,103,61,0,32,97,115,115,105,110,103,109,101,110,116,84,121,
112,101,61,0,32,103,114,111,117,112,105,110,103,84,121,112,101,61,0,32,103,114,111,117,112,105,110,103,84,121,112,101,80,97,114,97,109,61,0,32,115,117,98,84,114,97,99,107,73,100,61,0,91,87,65,82,78,73,78,71,93,32,37,100,32,98,121,116,101,115,32,115,116,105,108,108,32,114,101,109,97,105,110,32,97,116,32,116,104,101,32,101,110,100,32,111,102,32,115,116,114,101,97,109,46,10,0,91,69,82,82,79,82,93,32,108,97,114,103,101,115,105,122,101,32,98,111,120,101,115,32,97,114,101,32,110,111,116,32,115,117,112,
112,111,114,116,101,100,10,0,91,87,65,82,78,73,78,71,93,32,101,110,99,111,117,110,116,101,114,101,100,32,97,32,98,111,120,32,116,104,97,116,32,105,115,32,116,111,111,32,108,97,114,103,101,44,32,115,105,122,101,61,37,117,44,32,116,121,112,101,61,37,115,10,0,91,69,82,82,79,82,93,32,98,111,120,101,115,32,116,104,97,116,32,101,120,116,101,110,100,32,116,111,32,116,104,101,32,101,110,100,32,111,102,32,116,104,101,32,102,105,108,101,32,97,114,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,
0,117,117,105,100,0,91,87,65,82,78,73,78,71,93,32,110,111,116,32,97,108,108,32,98,121,116,101,115,32,114,101,97,100,32,119,104,101,110,32,114,101,97,100,105,110,103,32,98,111,120,32,111,102,32,116,121,112,101,61,0,32,114,101,109,97,105,110,105,110,103,32,98,121,116,101,115,61,0,109,111,111,118,0,109,100,97,116,0,109,111,111,102,0,109,102,104,100,0,116,114,97,102,0,116,102,104,100,0,116,102,100,116,0,116,114,117,110,0,102,116,121,112,0,115,116,121,112,0,109,118,104,100,0,116,114,97,107,0,116,107,104,
100,0,109,100,105,97,0,109,105,110,102,0,115,116,98,108,0,115,116,115,100,0,97,118,99,49,0,101,110,99,118,0,97,118,99,67,0,112,97,115,112,0,115,116,115,122,0,115,116,115,99,0,115,116,116,115,0,115,116,99,111,0,109,100,104,100,0,104,100,108,114,0,118,109,104,100,0,115,109,104,100,0,116,114,101,120,0,109,118,101,120,0,100,105,110,102,0,100,114,101,102,0,117,114,108,0,109,101,104,100,0,109,112,52,97,0,46,109,112,51,0,101,115,100,115,0,112,115,115,104,0,115,105,110,102,0,102,114,109,97,0,115,99,104,109,
0,115,99,104,105,0,116,101,110,99,0,115,105,100,120,0,115,115,105,120,0,108,101,118,97,0,98,116,114,116,0,91,87,65,82,78,73,78,71,93,32,99,111,110,115,117,109,101,100,32,109,111,114,101,100,32,116,104,97,110,32,97,118,97,105,108,97,98,108,101,0,91,87,65,82,78,73,78,71,93,32,114,101,115,105,100,105,97,108,32,100,97,116,97,32,97,116,32,101,110,100,32,111,102,32,98,111,120,0,99,111,110,116,101,110,116,32,111,102,32,101,115,100,115,32,105,115,32,110,111,116,32,97,32,69,83,95,100,101,115,99,114,105,112,
116,111,114,0,67,111,110,116,101,110,116,32,111,102,32,101,115,100,115,32,105,115,32,110,111,116,32,97,32,68,101,99,67,111,110,102,105,103,68,101,115,99,114,105,112,116,111,114,0,67,111,110,116,101,110,116,32,111,102,32,101,115,100,115,32,100,111,101,115,32,110,111,116,32,99,111,110,116,97,105,110,32,68,101,99,83,112,101,99,105,102,105,99,68,101,115,99,114,105,112,116,111,114,32,0,78,111,32,83,76,32,99,111,110,102,105,103,32,100,101,115,99,114,105,112,116,111,114,32,116,97,103,0,91,87,65,82,78,73,
78,71,93,32,118,101,114,115,105,111,110,32,49,32,111,102,32,109,100,104,100,32,105,115,32,110,111,116,32,102,117,108,108,121,32,115,117,112,112,111,114,116,101,100,46,32,86,97,108,117,101,115,32,119,105,108,108,32,98,101,32,116,114,117,110,99,97,116,101,100,32,116,111,32,51,50,32,98,105,116,0,91,87,65,82,78,73,78,71,93,32,114,101,115,101,114,118,101,100,32,98,121,116,101,115,32,97,114,101,32,110,111,116,32,119,104,101,114,101,32,116,104,101,121,32,97,114,101,32,115,117,112,112,111,115,101,100,32,
116,111,32,98,101,0,91,87,65,82,78,73,78,71,93,32,110,97,108,117,32,115,112,97,110,115,32,112,97,115,32,98,111,120,0,91,87,65,82,78,73,78,71,93,32,0,115,105,122,101,32,105,115,32,110,111,116,32,97,32,109,117,108,116,105,112,108,101,32,111,102,32,52,32,119,104,101,110,32,112,97,114,115,105,110,103,32,102,116,121,112,32,99,111,109,112,97,116,105,98,108,101,32,98,114,97,110,100,115,46,32,73,103,110,111,114,105,110,103,32,108,97,115,116,32,98,121,116,101,115,46,0,95,98,117,102,83,116,97,114,116,61,37,
100,32,95,98,117,102,69,110,100,61,37,100,32,95,98,117,102,70,105,108,108,61,37,100,10,0,91,69,82,82,79,82,93,32,91,66,85,71,93,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,0,84,88,88,88,0,87,88,88,88,0,80,82,73,86,0,67,79,77,77,0,105,110,116,101,114,110,97,108,115,79,98,115,101,114,118,101,114,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,97,116,116,114,78,97,109,101,32,61,32,80,111,105,110,116,101,114,
95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,105,102,32,40,97,116,116,114,78,97,109,101,32,105,110,32,111,98,106,41,32,123,32,118,97,114,32,97,116,116,114,32,61,32,111,98,106,91,97,116,116,114,78,97,109,101,93,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,97,116,116,114,41,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,45,49,59,32,125,32,125,0,123,32,118,97,114,32,99,111,117,110,116,32,61,32,36,49,59,32,118,97,114,32,112,97,99,
107,101,100,32,61,32,110,101,119,32,85,105,110,116,51,50,65,114,114,97,121,40,72,69,65,80,85,56,46,98,117,102,102,101,114,44,32,36,48,41,59,32,118,97,114,32,112,97,99,107,101,100,73,116,101,114,32,61,32,48,59,32,118,97,114,32,112,101,101,114,115,32,61,32,91,93,59,32,118,97,114,32,105,32,61,32,48,59,32,102,111,114,32,40,105,32,61,32,48,59,32,105,60,99,111,117,110,116,59,32,105,43,43,41,32,123,32,118,97,114,32,112,101,101,114,32,61,32,123,125,59,32,112,101,101,114,91,39,105,100,39,93,32,61,32,80,111,
105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,112,97,99,107,101,100,91,112,97,99,107,101,100,73,116,101,114,43,43,93,41,59,32,112,101,101,114,91,39,100,111,119,110,108,111,97,100,101,100,39,93,32,61,32,112,97,99,107,101,100,91,112,97,99,107,101,100,73,116,101,114,43,43,93,59,32,112,101,101,114,91,39,117,112,108,111,97,100,101,100,39,93,32,61,32,112,97,99,107,101,100,91,112,97,99,107,101,100,73,116,101,114,43,43,93,59,32,112,101,101,114,91,39,100,119,66,97,110,100,119,105,100,116,104,
39,93,32,61,32,112,97,99,107,101,100,91,112,97,99,107,101,100,73,116,101,114,43,43,93,59,32,112,101,101,114,91,39,110,117,109,82,101,113,117,101,115,116,101,100,67,104,117,110,107,115,39,93,32,61,32,112,97,99,107,101,100,91,112,97,99,107,101,100,73,116,101,114,43,43,93,59,32,112,101,101,114,115,46,112,117,115,104,40,112,101,101,114,41,59,32,125,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,112,101,101,114,115,41,59,32,125,0,123,32,117,114,108,32,61,32,80,111,105,
110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,119,111,114,107,101,114,32,61,32,110,101,119,32,87,111,114,107,101,114,40,117,114,108,41,59,32,119,111,114,107,101,114,46,111,110,109,101,115,115,97,103,101,32,61,32,102,117,110,99,116,105,111,110,32,105,110,102,111,95,119,111,114,107,101,114,95,111,110,109,101,115,115,97,103,101,40,109,115,103,41,32,123,32,105,102,32,40,65,66,79,82,84,41,32,114,101,116,117,114,110,59,32,118,97,114,32,119,114,97,112,112,101,100,
32,61,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,109,115,103,46,100,97,116,97,41,59,32,82,117,110,116,105,109,101,46,100,121,110,67,97,108,108,40,39,118,105,105,39,44,32,36,50,44,32,91,36,48,44,32,119,114,97,112,112,101,100,93,41,59,32,125,59,32,119,111,114,107,101,114,46,111,110,101,114,114,111,114,32,61,32,102,117,110,99,116,105,111,110,32,119,111,114,107,101,114,95,111,110,101,114,114,111,114,40,101,41,32,123,32,105,102,32,40,65,66,79,82,84,41,32,114,101,116,117,114,110,59,32,82,117,
110,116,105,109,101,46,100,121,110,67,97,108,108,40,39,118,105,39,44,32,36,51,44,32,91,36,48,93,41,59,32,125,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,119,111,114,107,101,114,41,59,32,125,0,123,32,118,97,114,32,119,111,114,107,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,119,111,114,107,101,114,46,116,101,114,109,105,110,97,116,101,40,41,59,32,125,0,123,32,118,97,114,32,119,111,114,107,101,114,32,61,32,118,98,108,105,
98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,109,101,115,115,97,103,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,118,97,114,32,116,114,97,110,115,102,101,114,76,105,115,116,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,50,41,59,32,105,102,32,40,33,118,98,108,105,98,46,105,115,73,101,41,32,123,32,119,111,114,107,101,114,46,112,111,115,116,77,101,115,115,97,103,101,40,109,101,115,115,97,103,101,44,32,116,114,97,110,115,102,101,
114,76,105,115,116,41,59,32,125],"i8",4,x.D+61440);
M([32,101,108,115,101,32,123,32,119,111,114,107,101,114,46,112,111,115,116,77,101,115,115,97,103,101,40,109,101,115,115,97,103,101,44,32,116,114,97,110,115,102,101,114,76,105,115,116,41,59,32,125,32,125,0,123,32,118,97,114,32,109,115,103,32,61,32,91,93,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,109,115,103,41,59,32,125,0,123,32,118,97,114,32,116,114,97,110,115,102,101,114,76,105,115,116,32,61,32,91,93,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,
118,98,65,100,100,79,98,106,40,116,114,97,110,115,102,101,114,76,105,115,116,41,59,32,125,0,123,32,118,97,114,32,109,115,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,100,97,116,97,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,72,69,65,80,85,56,46,115,117,98,97,114,114,97,121,40,36,49,44,32,36,49,32,43,32,36,50,41,41,46,98,117,102,102,101,114,59,32,109,115,103,46,112,117,115,104,40,100,97,116,97,41,59,32,118,97,114,32,116,114,97,110,
115,102,101,114,76,105,115,116,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,51,41,59,32,116,114,97,110,115,102,101,114,76,105,115,116,46,112,117,115,104,40,100,97,116,97,41,59,32,125,0,123,32,118,97,114,32,109,115,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,101,120,116,68,97,116,97,66,117,102,102,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,41,59,32,109,
115,103,46,112,117,115,104,40,101,120,116,68,97,116,97,66,117,102,102,41,59,32,125,0,123,32,118,97,114,32,109,115,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,109,115,103,46,112,117,115,104,40,36,49,41,59,32,125,0,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,36,49,93,59,32,125,0,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,36,49,93,91,39,98,121,116,101,76,101,
110,103,116,104,39,93,59,32,125,0,123,32,118,97,114,32,98,117,102,102,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,36,49,93,59,32,97,115,115,101,114,116,40,98,117,102,102,101,114,91,39,98,121,116,101,76,101,110,103,116,104,39,93,32,60,61,32,36,51,41,59,32,118,97,114,32,116,121,112,101,100,65,114,114,32,61,32,40,98,117,102,102,101,114,32,105,110,115,116,97,110,99,101,111,102,32,65,114,114,97,121,66,117,102,102,101,114,41,32,63,32,110,101,119,32,85,105,110,116,56,
65,114,114,97,121,40,98,117,102,102,101,114,41,32,58,32,98,117,102,102,101,114,59,32,72,69,65,80,85,56,46,115,101,116,40,116,121,112,101,100,65,114,114,44,32,36,50,41,59,32,125,0,123,32,118,97,114,32,98,117,102,102,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,36,49,93,59,32,105,102,32,40,33,40,98,117,102,102,101,114,32,105,110,115,116,97,110,99,101,111,102,32,65,114,114,97,121,66,117,102,102,101,114,41,41,32,123,32,105,102,32,40,98,117,102,102,101,114,91,39,98,
121,116,101,79,102,102,115,101,116,39,93,32,61,61,61,32,48,32,38,38,32,98,117,102,102,101,114,91,39,98,121,116,101,76,101,110,103,116,104,39,93,32,61,61,61,32,98,117,102,102,101,114,46,98,117,102,102,101,114,91,39,98,121,116,101,76,101,110,103,116,104,39,93,41,32,123,32,98,117,102,102,101,114,32,61,32,98,117,102,102,101,114,46,98,117,102,102,101,114,59,32,125,32,101,108,115,101,32,123,32,99,111,110,115,111,108,101,46,105,110,102,111,40,39,99,111,112,121,105,110,103,32,105,110,32,111,114,100,101,114,
32,116,111,32,99,111,110,118,101,114,116,111,32,116,111,32,97,110,32,97,114,114,97,121,32,98,117,102,102,101,114,46,32,84,104,105,115,32,105,115,32,118,101,114,121,32,115,108,111,116,39,41,59,32,98,117,102,102,101,114,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,98,117,102,102,101,114,41,46,98,117,102,102,101,114,59,32,125,32,125,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,98,117,102,102,101,114,41,59,32,125,0,123,32,118,97,114,32,116,114,97,
99,107,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,99,117,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,105,102,32,40,33,99,117,101,32,124,124,32,33,116,114,97,99,107,41,32,114,101,116,117,114,110,59,32,116,114,97,99,107,91,39,97,100,100,67,117,101,39,93,40,99,117,101,41,59,32,125,0,123,32,118,97,114,32,99,117,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,102,114,97,109,
101,32,61,32,123,125,59,32,102,114,97,109,101,91,39,105,100,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,99,117,101,91,39,102,114,97,109,101,115,39,93,46,112,117,115,104,40,102,114,97,109,101,41,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,102,114,97,109,101,41,59,32,125,0,123,32,118,97,114,32,102,114,97,109,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,102,114,97,109,101,
91,39,111,119,110,101,114,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,102,114,97,109,101,91,39,100,97,116,97,39,93,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,72,69,65,80,85,56,46,98,117,102,102,101,114,44,32,36,50,44,32,36,51,41,41,59,32,125,0,123,32,118,97,114,32,102,114,97,109,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,102,114,97,109,
101,91,39,100,101,115,99,114,105,112,116,105,111,110,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,102,114,97,109,101,91,39,116,101,120,116,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,125,0,123,32,118,97,114,32,102,114,97,109,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,102,114,97,109,101,91,39,116,101,120,116,39,93,32,61,32,80,111,105,110,116,101,114,95,115,
116,114,105,110,103,105,102,121,40,36,49,41,59,32,125,0,123,32,118,97,114,32,102,114,97,109,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,102,114,97,109,101,91,39,100,101,115,99,114,105,112,116,105,111,110,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,102,114,97,109,101,91,39,117,114,108,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,125,0,123,32,118,97,114,32,
102,114,97,109,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,102,114,97,109,101,91,39,117,114,108,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,125,0,123,32,118,97,114,32,102,114,97,109,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,102,114,97,109,101,91,39,108,97,110,103,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,44,32,52,41,59,32,
102,114,97,109,101,91,39,100,101,115,99,114,105,112,116,105,111,110,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,102,114,97,109,101,91,39,116,101,120,116,39,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,51,41,59,32,125,0,123,32,118,97,114,32,102,114,97,109,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,102,114,97,109,101,91,39,114,97,119,67,111,110,116,101,110,116,39,93,32,
61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,72,69,65,80,85,56,46,98,117,102,102,101,114,44,32,36,49,44,32,36,50,41,41,59,32,125,0,123,32,118,97,114,32,116,114,97,99,107,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,67,117,101,59,32,105,102,32,40,116,121,112,101,111,102,32,86,84,84,67,117,101,32,33,61,61,32,39,117,110,100,101,102,105,110,101,100,39,41,32,123,32,118,97,114,32,104,97,115,
86,105,100,101,106,115,80,111,111,112,101,100,65,108,108,79,118,101,114,84,104,101,71,108,111,98,97,108,78,97,109,101,115,112,97,99,101,32,61,32,40,116,121,112,101,111,102,32,118,116,116,106,115,32,33,61,61,32,39,117,110,100,101,102,105,110,101,100,39,41,32,38,38,32,40,86,84,84,67,117,101,32,61,61,61,32,118,116,116,106,115,46,86,84,84,67,117,101,41,59,32,105,102,32,40,33,104,97,115,86,105,100,101,106,115,80,111,111,112,101,100,65,108,108,79,118,101,114,84,104,101,71,108,111,98,97,108,78,97,109,101,
115,112,97,99,101,41,32,123,32,67,117,101,32,61,32,86,84,84,67,117,101,59,32,125,32,101,108,115,101,32,123,32,118,97,114,32,105,115,95,105,101,32,61,32,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,100,101,120,79,102,40,39,109,115,105,101,39,41,32,62,32,45,49,41,32,124,124,32,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,
100,101,120,79,102,40,39,116,114,105,100,101,110,116,39,41,32,62,32,45,49,41,32,124,124,32,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,100,101,120,79,102,40,39,101,100,103,101,47,39,41,32,62,32,45,49,41,59,32,105,102,32,40,105,115,95,105,101,41,32,123,32,67,117,101,32,61,32,84,101,120,116,84,114,97,99,107,67,117,101,59,32,125,32,101,108,115,101,32,123,32,67,117,101,32,61,32,86,84,84,67,117,101,59,32,125,32,
125,32,125,32,101,108,115,101,32,105,102,32,40,116,121,112,101,111,102,32,84,101,120,116,84,114,97,99,107,67,117,101,32,33,61,61,32,39,117,110,100,101,102,105,110,101,100,39,41,32,67,117,101,32,61,32,84,101,120,116,84,114,97,99,107,67,117,101,59,32,105,102,32,40,33,67,117,101,41,32,114,101,116,117,114,110,32,45,49,59,32,118,97,114,32,99,117,101,32,61,32,110,101,119,32,67,117,101,40,36,49,44,32,36,49,43,49,44,32,34,73,68,51,32,84,97,103,34,41,59,32,99,117,101,91,39,102,114,97,109,101,115,39,93,32,
61,32,91,93,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,99,117,101,41,59,32,125,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,66,97,115,101,80,108,97,121,101,114,87,105,116,104,82,101,109,117,120,105,110,103,46,99,99,0,91,66,97,115,101,82,101,109,117,120,105,110,103,93,32,0,67,97,110,110,111,116,32,99,111,110,115,117,109,101,32,109,101,100,105,97,32,115,101,103,109,101,110,116,32,98,101,99,97,117,115,101,32,105,110,105,116,32,104,101,97,100,101,
114,32,105,115,32,110,111,116,32,100,111,119,110,108,111,97,100,101,100,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,46,46,47,46,46,47,112,108,97,121,101,114,115,47,46,46,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,67,111,110,115,117,109,101,32,82,101,109,117,120,101,100,32,80,97,99,107,101,116,32,98,117,116,32,114,101,109,117,120,101,114,32,105,115,32,101,109,112,116,121,32,45,32,114,101,99,101,105,118,101,100,32,99,97,99,104,101,100,32,99,111,110,116,101,110,116,32,97,
110,100,32,105,103,110,111,114,101,32,105,116,0,109,112,52,97,46,52,48,46,53,0,109,112,52,97,46,52,48,46,51,52,0,118,112,56,0,118,112,57,0,118,105,100,101,111,47,119,101,98,109,0,118,111,114,98,105,115,0,111,112,117,115,0,97,117,100,105,111,47,119,101,98,109,0,80,108,97,121,101,114,32,114,101,113,117,101,115,116,101,100,32,115,101,101,107,32,116,111,32,0,78,111,116,32,115,101,101,107,105,110,103,32,98,101,99,97,117,115,101,32,115,116,114,101,97,109,32,105,115,32,110,111,116,32,115,101,101,107,97,
98,108,101,0,67,111,110,115,117,109,105,110,103,32,99,104,117,110,107,40,105,100,120,61,0,32,115,105,122,101,61,0,41,32,97,102,116,101,114,32,69,111,83,32,104,97,115,32,98,101,101,110,32,115,105,103,110,97,108,101,100,0,78,111,116,32,115,101,101,107,105,110,103,32,98,117,116,32,115,101,101,107,32,99,111,110,100,105,116,105,111,110,32,100,101,116,101,99,116,101,100,46,32,108,97,115,116,67,104,117,110,107,73,100,120,61,0,32,99,104,117,110,107,73,100,120,61,0,67,97,110,110,111,116,32,99,111,110,115,
117,109,101,32,105,115,111,32,99,104,117,110,107,32,98,101,99,97,117,115,101,32,105,110,105,116,32,104,101,97,100,101,114,32,105,115,32,110,111,116,32,121,101,116,32,100,111,119,110,108,111,97,100,101,100,46,32,68,114,111,112,105,110,103,32,99,104,117,110,107,0,83,105,103,110,97,108,105,110,103,32,100,105,115,99,111,110,116,105,110,117,105,116,121,32,104,111,108,101,32,116,111,32,0,32,105,100,120,61,0,69,109,112,116,121,32,99,104,117,110,107,33,32,68,105,115,99,97,114,100,105,110,103,46,0,123,32,
118,97,114,32,100,115,116,32,61,32,110,101,119,32,65,114,114,97,121,66,117,102,102,101,114,40,36,48,41,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,100,115,116,41,59,32,125,0,123,32,118,97,114,32,97,98,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,115,114,99,65,98,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,118,97,114,32,111,102,102,115,101,116,32,61,32,36,50,59,32,40,110,101,119,32,
85,105,110,116,56,65,114,114,97,121,40,97,98,41,41,46,115,101,116,40,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,115,114,99,65,98,41,44,32,111,102,102,115,101,116,41,59,32,125,0,97,117,100,105,111,47,109,112,101,103,0,123,32,118,97,114,32,116,121,112,101,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,59,32,114,101,116,117,114,110,32,77,101,100,105,97,83,111,117,114,99,101,46,105,115,84,121,112,101,83,117,112,112,111,114,116,101,100,40,116,121,112,
101,41,59,32,125,0,97,117,100,105,111,47,109,112,52,59,32,99,111,100,101,99,115,61,34,109,112,51,34,0,123,32,116,114,121,32,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,39,99,111,110,116,97,105,110,101,114,39,93,46,116,97,103,78,97,109,101,32,61,61,61,32,39,65,85,68,73,79,39,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,0,117,110,107,110,111,119,110,0,97,118,99,49,46,52,50,101,48,49,101,0,118,
105,100,101,111,47,109,112,52,0,97,117,100,105,111,47,109,112,52,0,109,112,51,0,109,112,52,97,46,52,48,46,50,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,105,102,32,40,33,118,105,100,101,111,84,97,103,91,39,97,100,100,84,101,120,116,84,114,97,99,107,39,93,41,32,114,101,116,117,114,110,32,45,49,59,32,118,97,114,32,116,101,120,116,84,114,97,99,107,32,61,32,118,105,100,101,111,84,97,103,
91,39,97,100,100,84,101,120,116,84,114,97,99,107,39,93,40,39,109,101,116,97,100,97,116,97,39,44,32,39,86,105,98,108,97,115,116,32,77,101,116,97,100,97,116,97,32,84,97,103,115,39,41,59,32,105,102,32,40,33,116,101,120,116,84,114,97,99,107,41,32,123,32,114,101,116,117,114,110,32,45,49,59,32,125,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,116,101,120,116,84,114,97,99,107,41,59,32,125,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,77,101,100,105,97,83,111,
117,114,99,101,80,108,97,121,101,114,46,99,99,0,91,77,83,80,93,32,0,59,32,99,111,100,101,99,115,61,34,0,77,105,115,115,105,110,103,32,97,117,100,105,111,47,118,105,100,101,111,32,115,116,114,101,97,109,115,0,123,32,118,97,114,32,100,114,109,59,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,99,109,100,95,97,114,103,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,53,41,59,32,118,97,114,32,118,105,100,101,111,
67,97,112,97,98,105,108,105,116,105,101,115,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,51,41,59,32,118,97,114,32,97,117,100,105,111,67,97,112,97,98,105,108,105,116,101,115,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,52,41,59,32,105,102,32,40,86,105,98,108,97,115,116,46,68,114,109,41,32,123,32,102,117,110,99,116,105,111,110,32,111,110,84,114,97,110,115,102,101,114,70,97,105,108,117,114,101,40,117,114,108,44,32,115,116,97,116,
117,115,44,32,98,111,100,121,41,32,123,32,118,97,114,32,99,95,117,114,108,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,117,114,108,41,91,48,93,59,32,118,97,114,32,99,95,98,111,100,121,32,61,32,34,34,59,32,105,102,32,40,98,111,100,121,32,105,110,115,116,97,110,99,101,111,102,32,65,114,114,97,121,66,117,102,102,101,114,41,32,123,32,99,95,98,111,100,121,32,61,32,83,116,114,105,110,103,46,102,114,111,109,67,104,97,114,67,111,100,101,46,97,112,112,108,121,40,110,
117,108,108,44,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,98,111,100,121,41,41,59,32,125,32,101,108,115,101,32,123,32,99,95,98,111,100,121,32,61,32,98,111,100,121,59,32,125,32,99,95,98,111,100,121,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,99,95,98,111,100,121,41,91,48,93,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,50,44,32,39,118,105,105,105,105,39,41,40,36,49,44,32,99,95,117,114,108,44,32,115,
116,97,116,117,115,44,32,99,95,98,111,100,121,41,59,32,125,59,32,118,97,114,32,120,104,114,66,101,102,111,114,101,83,101,110,100,32,61,32,99,109,100,95,97,114,103,115,91,39,105,110,116,101,114,110,97,108,115,79,98,115,101,114,118,101,114,39,93,32,38,38,32,99,109,100,95,97,114,103,115,91,39,105,110,116,101,114,110,97,108,115,79,98,115,101,114,118,101,114,39,93,46,120,104,114,66,101,102,111,114,101,83,101,110,100,59,32,100,114,109,32,61,32,86,105,98,108,97,115,116,46,68,114,109,46,99,114,101,97,116,
101,68,114,109,40,99,109,100,95,97,114,103,115,91,39,119,105,100,101,118,105,110,101,39,93,44,32,99,109,100,95,97,114,103,115,91,39,99,108,101,97,114,107,101,121,39,93,44,32,99,109,100,95,97,114,103,115,91,39,112,108,97,121,114,101,97,100,121,39,93,44,32,111,110,84,114,97,110,115,102,101,114,70,97,105,108,117,114,101,44,32,120,104,114,66,101,102,111,114,101,83,101,110,100,44,32,118,105,100,101,111,67,97,112,97,98,105,108,105,116,105,101,115,44,32,97,117,100,105,111,67,97,112,97,98,105,108,105,116,
101,115,41,59,32,100,114,109,46,115,101,116,117,112,40,99,116,120,46,118,105,100,101,111,84,97,103,41,59,32,125,32,105,102,32,40,100,114,109,41,32,123,32,99,116,120,46,100,114,109,32,61,32,100,114,109,59,32,125,32,125,0,123,32,118,97,114,32,109,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,109,115,59,32,105,102,32,40,109,115,41,32,123,32,102,117,110,99,116,105,111,110,32,116,114,121,95,97,100,100,83,111,117,114,99,101,66,117,102,102,101,114,40,109,115,44,32,115,98,84,
121,112,101,44,32,101,114,114,111,114,65,114,103,41,32,123,32,116,114,121,32,123,32,114,101,116,117,114,110,32,109,115,46,97,100,100,83,111,117,114,99,101,66,117,102,102,101,114,40,115,98,84,121,112,101,41,59,32,125,32,99,97,116,99,104,40,101,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,39,41,40,36,52,44,32,101,114,114,111,114,65,114,103,41,59,32,114,101,116,117,114,110,32,110,117,108,108,59,32,125,32,125,59,32,118,97,
114,32,109,115,101,95,115,111,117,114,99,101,111,112,101,110,32,61,32,102,117,110,99,116,105,111,110,40,101,41,32,123,32,118,97,114,32,118,99,111,100,101,99,115,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,118,98,82,101,102,32,61,32,45,49,59,32,105,102,32,40,118,99,111,100,101,99,115,41,32,123,32,118,97,114,32,118,105,100,101,111,66,117,102,102,101,114,32,61,32,116,114,121,95,97,100,100,83,111,117,114,99,101,66,117,102,102,101,114,40,109,
115,44,32,118,99,111,100,101,99,115,44,32,36,49,41,59,32,105,102,32,40,33,118,105,100,101,111,66,117,102,102,101,114,41,32,114,101,116,117,114,110,59,32,118,105,100,101,111,66,117,102,102,101,114,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,101,114,114,111,114,39,44,32,102,117,110,99,116,105,111,110,40,101,41,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,39,97,112,112,101,110,100,32,116,111,32,118,105,100,101,111,32,98,117,102,102,101,114,32,114,101,112,111,114,116,
101,100,32,101,114,114,111,114,39,44,32,101,41,59,32,118,97,114,32,99,69,114,114,77,115,103,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,39,97,112,112,101,110,100,32,116,111,32,118,105,100,101,111,32,98,117,102,102,101,114,32,102,97,105,108,101,100,39,41,91,48,93,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,54,44,32,39,118,105,105,39,41,40,36,52,44,32,99,69,114,114,77,115,103,41,59,32,125,44,32,102,97,108,115,
101,41,59,32,118,98,82,101,102,32,61,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,118,105,100,101,111,66,117,102,102,101,114,41,59,32,125,32,118,97,114,32,97,98,82,101,102,32,61,32,45,49,59,32,118,97,114,32,97,99,111,100,101,99,115,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,105,102,32,40,97,99,111,100,101,99,115,41,32,123,32,118,97,114,32,97,117,100,105,111,66,117,102,102,101,114,32,61,32,116,114,121,95,97,100,100,83,111,117,114,99,101,66,
117,102,102,101,114,40,109,115,44,32,97,99,111,100,101,99,115,44,32,36,50,41,59,32,105,102,32,40,33,97,117,100,105,111,66,117,102,102,101,114,41,32,114,101,116,117,114,110,59,32,97,117,100,105,111,66,117,102,102,101,114,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,101,114,114,111,114,39,44,32,102,117,110,99,116,105,111,110,40,101,41,32,123,32,118,97,114,32,99,69,114,114,77,115,103,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,39,97,112,
112,101,110,100,32,116,111,32,97,117,100,105,111,32,98,117,102,102,101,114,32,102,97,105,108,101,100,39,41,91,48,93,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,54,44,32,39,118,105,105,39,41,40,36,52,44,32,99,69,114,114,77,115,103,41,59,32,125,44,32,102,97,108,115,101,41,59,32,97,98,82,101,102,32,61,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,97,117,100,105,111,66,117,102,102,101,114,41,59,32,125,32,109,115,46,114,101,109,111,118,101,69,
118,101,110,116,76,105,115,116,101,110,101,114,40,39,115,111,117,114,99,101,111,112,101,110,39,44,32,109,115,101,95,115,111,117,114,99,101,111,112,101,110,44,32,102,97,108,115,101,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,105,105,39,41,40,36,52,44,32,118,98,82,101,102,44,32,97,98,82,101,102,41,59,32,125,59,32,109,115,46,95,118,98,95,115,111,117,114,99,101,111,112,101,110,32,61,32,109,115,101,95,115,111,117,114,99,101,111,112,
101,110,59,32,105,102,32,40,109,115,46,114,101,97,100,121,83,116,97,116,101,32,61,61,61,32,39,111,112,101,110,39,41,32,123,32,109,115,101,95,115,111,117,114,99,101,111,112,101,110,40,41,59,32,125,32,101,108,115,101,32,123,32,109,115,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,115,111,117,114,99,101,111,112,101,110,39,44,32,109,115,101,95,115,111,117,114,99,101,111,112,101,110,44,32,102,97,108,115,101,41,59,32,125,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,
98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,105,102,32,40,118,105,100,101,111,84,97,103,46,95,95,118,98,95,95,97,117,116,111,112,108,97,121,41,32,123,32,118,97,114,32,112,108,97,121,80,114,111,109,105,115,101,32,61,32,118,105,100,101,111,84,97,103,46,112,108,97,121,40,41,59,32,105,102,32,40,112,108,97,121,80,114,111,109,105,115,101,32,33,61,61,32,117,110,100,101,102,105,110,101,100,41,32,123,32,112,108,97,121,80,114,111,109,105,115,101,46,116,104,
101,110,40,102,117,110,99,116,105,111,110,40,41,32,123,32,125,41,46,99,97,116,99,104,40,102,117,110,99,116,105,111,110,40,101,114,114,111,114,41,32,123,32,125,41,59,32,125,32,125,32,125,32,125,0,77,83,69,32,66,117,102,102,101,114,32,116,104,114,101,119,32,101,114,114,111,114,32,0,123,32,99,111,110,115,111,108,101,46,101,114,114,111,114,40,39,67,97,110,110,111,116,32,99,114,101,97,116,101,32,77,83,69,32,115,111,117,114,99,101,32,98,117,102,102,101,114,32,102,111,114,32,99,111,100,101,99,61,39,32,43,
32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,41,59,32,125,0,68,105,115,99,111,110,116,105,110,117,105,116,121,32,104,111,108,101,32,0,123,32,118,97,114,32,118,116,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,99,111,110,115,111,108,101,46,108,111,103,40,34,114,101,113,117,101,115,116,101,100,32,99,117,114,114,101,110,116,32,116,105,109,101,58,32,34,32,43,32,36,49,41,59,32,102,111,114,32,40,118,97,114,
32,105,61,48,59,105,60,118,116,46,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,34,66,117,102,102,101,114,115,32,115,116,97,114,116,58,32,34,32,43,118,116,46,98,117,102,102,101,114,101,100,46,115,116,97,114,116,40,105,41,32,43,32,34,32,98,117,102,102,101,114,115,32,101,110,100,58,32,34,43,118,116,46,98,117,102,102,101,114,101,100,46,101,110,100,40,105,41,41,59,32,125,32,118,116,46,99,117,114,114,101,110,116,84,105,
109,101,32,61,32,36,49,59,32,114,101,116,117,114,110,32,77,97,116,104,46,97,98,115,40,118,116,46,99,117,114,114,101,110,116,84,105,109,101,32,45,32,36,49,41,32,60,32,48,46,48,49,59,32,125,0,83,101,116,32,99,117,114,114,101,110,116,84,105,109,101,32,116,111,32,0,67,111,117,108,100,110,39,116,32,115,101,116,32,99,117,114,114,101,110,116,84,105,109,101,32,116,111,32,0,123,32,105,102,32,40,36,48,32,62,61,32,48,32,38,38,32,36,49,32,33,61,61,32,48,32,38,38,32,118,98,108,105,98,46,118,98,71,101,116,79,98,
106,40,36,48,41,46,116,105,109,101,115,116,97,109,112,79,102,102,115,101,116,32,61,61,61,32,48,41,32,123,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,116,105,109,101,115,116,97,109,112,79,102,102,115,101,116,32,61,32,45,32,36,49,59,32,125,32,125,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,105,102,32,40,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,
84,105,109,101,32,60,61,32,48,46,53,32,38,38,32,36,49,32,62,32,48,41,32,123,32,116,114,121,32,123,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,109,101,32,61,32,36,49,59,32,114,101,116,117,114,110,32,49,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,116,114,121,32,123,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,97,98,111,114,116,40,41,59,32,125,32,
99,97,116,99,104,32,40,101,114,114,41,32,123,32,125,32,105,102,32,40,36,48,32,62,61,32,48,41,32,123,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,116,105,109,101,115,116,97,109,112,79,102,102,115,101,116,32,61,32,36,49,59,32,125,32,125,0,123,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,91,39,99,117,114,114,101,110,116,80,108,97,121,108,105,115,116,68,117,114,97,116,105,111,110,39,93,32,61,32,36,49,59,32,125,0,123,32,118,97,114,
32,109,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,109,115,59,32,118,97,114,32,100,117,114,97,116,105,111,110,32,61,32,105,115,70,105,110,105,116,101,40,36,49,41,32,63,32,40,40,36,49,42,49,48,48,41,124,48,41,47,49,48,48,32,58,32,36,49,59,32,116,114,121,32,123,32,109,115,46,100,117,114,97,116,105,111,110,32,61,32,100,117,114,97,116,105,111,110,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,105,102,32,40,101,91,39,110,97,109,101,39,93,32,61,61,32,39,73,110,118,
97,108,105,100,83,116,97,116,101,69,114,114,111,114,39,41,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,101,108,115,101,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,39,69,114,114,111,114,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,100,117,114,97,116,105,111,110,39,44,32,101,41,59,32,125,32,125,32,114,101,116,117,114,110,32,49,59,32,125,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,
100,101,111,84,97,103,59,32,118,105,100,101,111,84,97,103,46,105,115,68,86,82,32,61,32,36,49,59,32,125,0,123,32,105,102,32,40,36,48,32,60,32,48,41,32,114,101,116,117,114,110,32,48,59,32,118,97,114,32,118,105,100,101,111,66,117,102,102,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,114,101,116,117,114,110,32,40,118,105,100,101,111,66,117,102,102,101,114,32,38,38,32,118,105,100,101,111,66,117,102,102,101,114,46,117,112,100,97,116,105,110,103,41,32,63,32,48,32,58,
32,49,59,32,125,0,123,32,118,97,114,32,109,115,101,66,117,102,102,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,98,117,102,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,41,59,32,116,114,121,32,123,32,109,115,101,66,117,102,102,101,114,46,97,112,112,101,110,100,66,117,102,102,101,114,40,98,117,102,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,118,97,114,32,101,
114,114,77,115,103,32,61,32,40,116,121,112,101,111,102,32,101,32,61,61,61,32,39,111,98,106,101,99,116,39,32,38,38,32,101,46,115,116,97,99,107,41,32,63,32,101,46,115,116,97,99,107,32,58,32,83,116,114,105,110,103,40,101,41,59,32,118,97,114,32,99,69,114,114,77,115,103,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,101,114,114,77,115,103,41,91,48,93,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,105,
39,41,40,36,52,44,32,99,69,114,114,77,115,103,41,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,102,117,110,99,116,105,111,110,32,116,114,121,84,111,83,105,103,110,97,108,40,41,32,123,32,118,97,114,32,115,111,117,114,99,101,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,109,115,59,32,118,97,114,32,98,117,102,102,101,114,115,32,61,32,115,111,117,114,99,101,46,115,111,117,114,99,101,66,117,102,102,101,114,115,59,32,118,97,114,32,108,110,32,61,32,98,117,102,102,
101,114,115,46,108,101,110,103,116,104,59,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,32,60,32,108,110,59,32,105,43,43,41,32,123,32,98,117,102,102,101,114,115,91,105,93,46,114,101,109,111,118,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,34,117,112,100,97,116,101,101,110,100,34,44,32,116,114,121,84,111,83,105,103,110,97,108,44,32,102,97,108,115,101,41,59,32,125,32,105,102,32,40,115,111,117,114,99,101,46,114,101,97,100,121,83,116,97,116,101,32,33,61,61,32,39,111,112,101,
110,39,41,32,114,101,116,117,114,110,59,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,32,60,32,108,110,59,32,105,43,43,41,32,123,32,105,102,32,40,98,117,102,102,101,114,115,91,105,93,46,117,112,100,97,116,105,110,103,41,32,123,32,98,117,102,102,101,114,115,91,105,93,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,34,117,112,100,97,116,101,101,110,100,34,44,32,116,114,121,84,111,83,105,103,110,97,108,44,32,102,97,108,115,101,41,59,32,114,101,116,117,114,110,59,32,
125,32,125,32,115,111,117,114,99,101,46,101,110,100,79,102,83,116,114,101,97,109,40,41,59,32,125,59,32,116,114,121,84,111,83,105,103,110,97,108,40,41,59,32,125,0,123,32,118,97,114,32,116,114,97,99,107,32,61,32,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,39,116,114,97,99,107,39,41,59,32,116,114,97,99,107,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,107,105,110,100,39,44,32,39,115,117,98,116,105,116,108,101,115,39,41,59,32,116,114,97,99,107,46,115,
101,116,65,116,116,114,105,98,117,116,101,40,39,108,97,98,101,108,39,44,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,41,59,32,116,114,97,99,107,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,115,114,99,108,97,110,103,39,44,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,41,59,32,116,114,97,99,107,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,115,114,99,39,44,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,
105,102,121,40,36,52,41,41,59,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,118,105,100,101,111,84,97,103,46,97,112,112,101,110,100,67,104,105,108,100,40,116,114,97,99,107,41,59,32,125,0,123,32,118,97,114,32,109,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,109,115,59,32,118,97,114,32,118,105,100,101,111,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,
106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,105,102,32,40,118,105,100,101,111,46,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,32,60,61,32,48,41,32,114,101,116,117,114,110,59,32,118,97,114,32,114,101,102,115,32,61,32,91,93,59,32,105,102,32,40,36,49,62,48,41,32,114,101,102,115,46,112,117,115,104,40,36,49,41,59,32,105,102,32,40,36,50,62,48,41,32,114,101,102,115,46,112,117,115,104,40,36,50,41,59,32,116,114,121,32,123,32,118,97,114,32,114,101,109,111,118,101,83,116,97,114,116,32,
61,32,118,105,100,101,111,46,98,117,102,102,101,114,101,100,46,115,116,97,114,116,40,48,41,59,32,118,97,114,32,114,101,109,111,118,101,69,110,100,32,61,32,118,105,100,101,111,46,98,117,102,102,101,114,101,100,46,101,110,100,40,118,105,100,101,111,46,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,45,49,41,59,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,60,114,101,102,115,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,118,97,114,32,114,101,102,32,61,32,114,101,102,
115,91,105,93,59,32,105,102,32,40,114,101,102,32,60,32,48,41,32,99,111,110,116,105,110,117,101,59,32,118,97,114,32,98,117,102,102,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,114,101,102,41,59,32,105,102,32,40,33,98,117,102,102,101,114,41,32,99,111,110,116,105,110,117,101,59,32,105,102,32,40,98,117,102,102,101,114,46,114,101,97,100,121,83,116,97,116,101,32,61,61,61,32,39,111,112,101,110,39,41,32,123,32,98,117,102,102,101,114,46,97,98,111,114,116,40,41,59,32,125,32,105,102,
32,40,33,98,117,102,102,101,114,46,117,112,100,97,116,105,110,103,41,32,123,32,98,117,102,102,101,114,46,114,101,109,111,118,101,40,114,101,109,111,118,101,83,116,97,114,116,44,32,114,101,109,111,118,101,69,110,100,41,59,32,125,32,125,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,39,69,114,114,111,114,32,119,104,105,108,101,32,99,108,101,97,114,105,110,103,32,98,117,102,102,101,114,32,39,44,32,101,41,59,32,125,32,125,0,123,32,118,97,114,32,118,105,
100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,114,101,116,117,114,110,32,118,105,100,101,111,84,97,103,46,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,59,32,125,0,123,32,119,105,110,100,111,119,46,99,108,101,97,114,84,105,109,101,111,117,116,40,36,48,41,59,32,114,101,116,117,114,110,32,45,49,59,32,125,0,84,111,111,32,109,97,110,121,32,105,116,101,114,97,116,105,111,110,32,119,104,101,110,32,116,114,121,
105,110,103,32,116,111,32,114,101,109,111,118,101,32,98,117,102,102,101,114,32,99,111,110,116,101,110,116,46,32,71,111,105,110,103,32,102,111,114,119,97,114,100,46,46,46,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,105,102,32,40,118,105,100,101,111,84,97,103,46,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,32,62,32,48,41,32,123,32,118,97,114,32,114,101,103,105,111,110,73,
100,32,61,32,45,49,59,32,118,97,114,32,105,32,61,32,48,59,32,118,97,114,32,98,117,102,102,101,114,101,100,32,61,32,118,105,100,101,111,84,97,103,46,98,117,102,102,101,114,101,100,59,32,118,97,114,32,99,117,114,114,101,110,116,84,105,109,101,32,61,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,109,101,59,32,102,111,114,32,40,105,32,61,32,48,59,32,105,60,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,105,102,32,40,98,117,102,102,101,114,
101,100,46,115,116,97,114,116,40,105,41],"i8",4,x.D+71680);
M([32,60,61,32,99,117,114,114,101,110,116,84,105,109,101,32,38,38,32,99,117,114,114,101,110,116,84,105,109,101,32,60,61,32,98,117,102,102,101,114,101,100,46,101,110,100,40,105,41,41,32,123,32,114,101,116,117,114,110,32,98,117,102,102,101,114,101,100,46,101,110,100,40,105,41,32,45,32,99,117,114,114,101,110,116,84,105,109,101,59,32,125,32,125,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,
114,101,116,117,114,110,32,99,116,120,46,118,105,100,101,111,84,97,103,46,119,101,98,107,105,116,68,114,111,112,112,101,100,70,114,97,109,101,67,111,117,110,116,59,32,125,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,114,101,116,117,114,110,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,109,101,59,32,125,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,
61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,105,102,32,40,36,49,32,62,32,48,41,32,123,32,116,114,121,32,123,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,109,101,32,61,32,36,49,59,32,114,101,116,117,114,110,32,49,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,
46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,115,101,116,86,97,108,117,101,40,36,49,44,32,112,97,114,115,101,73,110,116,40,119,105,110,100,111,119,46,103,101,116,67,111,109,112,117,116,101,100,83,116,121,108,101,40,99,116,120,46,118,105,100,101,111,84,97,103,41,46,119,105,100,116,104,41,44,32,39,105,51,50,39,41,59,32,115,101,116,86,97,108,117,101,40,36,50,44,32,112,97,114,115,101,73,110,116,40,119,105,110,100,111,119,46,103,101,116,67,111,109,112,117,116,101,100,83,116,121,108,101,40,99,116,120,
46,118,105,100,101,111,84,97,103,41,46,104,101,105,103,104,116,41,44,32,39,105,51,50,39,41,59,32,125,0,77,101,100,105,97,83,111,117,114,99,101,80,108,97,121,101,114,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,118,97,114,32,112,114,101,108,111,97,100,32,61,32,118,105,100,101,111,84,97,103,46,103,101,116,65,116,116,114,105,98,117,116,101,40,39,112,114,101,108,111,97,100,39,41,59,32,
105,102,32,40,112,114,101,108,111,97,100,41,32,123,32,105,102,32,40,112,114,101,108,111,97,100,32,61,61,61,32,39,97,117,116,111,39,41,32,123,32,114,101,116,117,114,110,32,50,59,32,125,32,101,108,115,101,32,105,102,32,40,112,114,101,108,111,97,100,32,61,61,32,39,109,101,116,97,100,97,116,97,39,41,32,123,32,114,101,116,117,114,110,32,49,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,32,101,108,115,101,32,123,32,118,97,114,32,105,115,95,105,101,32,61,32,40,110,
97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,100,101,120,79,102,40,39,109,115,105,101,39,41,32,62,32,45,49,41,32,124,124,32,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,100,101,120,79,102,40,39,116,114,105,100,101,110,116,39,41,32,62,32,45,49,41,32,124,124,32,40,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,
110,116,46,116,111,76,111,119,101,114,67,97,115,101,40,41,46,105,110,100,101,120,79,102,40,39,101,100,103,101,47,39,41,32,62,32,45,49,41,59,32,105,102,32,40,105,115,95,105,101,41,32,123,32,114,101,116,117,114,110,32,50,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,32,125,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,114,101,116,117,114,110,32,
118,105,100,101,111,84,97,103,46,95,95,118,98,95,95,97,117,116,111,112,108,97,121,59,32,125,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,86,105,98,108,97,115,116,46,87,97,116,101,114,109,97,114,107,46,116,101,97,114,100,111,119,110,87,97,116,101,114,109,97,114,107,40,118,105,100,101,111,84,97,103,41,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,
101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,99,116,120,46,104,116,109,108,67,111,110,116,101,110,116,41,32,123,32,99,116,120,46,104,116,109,108,67,111,110,116,101,110,116,46,112,97,114,101,110,116,78,111,100,101,46,114,101,109,111,118,101,67,104,105,108,100,40,99,116,120,46,104,116,109,108,67,111,110,116,101,110,116,41,59,32,125,32,116,114,121,32,123,32,118,97,114,32,109,115,32,61,32,99,116,120,46,109,115,59,32,105,102,32,40,109,115,91,39,114,101,97,100,121,83,116,97,116,101,39,93,32,61,61,
61,32,34,111,112,101,110,34,41,32,123,32,99,116,120,46,109,115,46,101,110,100,79,102,83,116,114,101,97,109,40,41,59,32,125,32,109,115,46,114,101,109,111,118,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,115,111,117,114,99,101,111,112,101,110,39,44,32,109,115,46,95,118,98,95,115,111,117,114,99,101,111,112,101,110,41,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,39,91,118,98,93,32,99,97,110,110,111,116,32,115,105,103,110,97,108,32,101,
110,100,32,111,102,32,115,116,114,101,97,109,32,105,110,32,77,83,80,58,58,115,116,111,112,40,41,39,41,59,32,125,32,125,0,99,104,97,110,110,101,108,0,123,32,118,97,114,32,99,109,100,95,97,114,103,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,52,41,59,32,118,97,114,32,99,111,110,116,97,105,110,101,114,32,61,32,99,109,100,95,97,114,103,115,91,39,99,111,110,116,97,105,110,101,114,39,93,59,32,105,102,32,40,33,99,111,110,116,97,105,110,101,114,41,32,114,101,116,117,114,110,32,45,49,
59,32,118,97,114,32,105,110,106,101,99,116,101,100,95,116,97,103,32,61,32,116,121,112,101,111,102,32,99,111,110,116,97,105,110,101,114,32,61,61,61,32,39,111,98,106,101,99,116,39,32,38,38,32,40,99,111,110,116,97,105,110,101,114,46,116,97,103,78,97,109,101,32,61,61,61,32,39,86,73,68,69,79,39,32,124,124,32,99,111,110,116,97,105,110,101,114,46,116,97,103,78,97,109,101,32,61,61,61,32,39,65,85,68,73,79,39,41,59,32,118,97,114,32,118,105,100,101,111,84,97,103,59,32,118,97,114,32,115,112,105,110,110,101,114,
59,32,105,102,32,40,105,110,106,101,99,116,101,100,95,116,97,103,41,32,123,32,118,105,100,101,111,84,97,103,32,61,32,99,111,110,116,97,105,110,101,114,59,32,115,112,105,110,110,101,114,32,61,32,123,125,59,32,115,112,105,110,110,101,114,46,104,105,100,101,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,125,59,32,115,112,105,110,110,101,114,46,115,104,111,119,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,125,59,32,125,32,101,108,115,101,32,123,32,118,97,114,32,118,116,67,110,116,32,61,32,
100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,39,100,105,118,39,41,59,32,118,116,67,110,116,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,115,116,121,108,101,39,44,32,39,112,111,115,105,116,105,111,110,58,32,114,101,108,97,116,105,118,101,59,39,41,59,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,39,118,105,100,101,111,39,41,59,32,118,105,100,101,111,84,97,
103,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,99,111,110,116,114,111,108,115,39,44,32,39,39,41,59,32,118,105,100,101,111,84,97,103,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,97,117,116,111,112,108,97,121,39,44,32,39,39,41,59,32,118,116,67,110,116,46,97,112,112,101,110,100,67,104,105,108,100,40,118,105,100,101,111,84,97,103,41,59,32,115,112,105,110,110,101,114,32,61,32,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,39,100,105,118,39,41,
59,32,115,112,105,110,110,101,114,46,104,105,100,101,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,116,104,105,115,46,115,116,121,108,101,46,100,105,115,112,108,97,121,32,61,32,34,110,111,110,101,34,59,125,59,32,115,112,105,110,110,101,114,46,115,104,111,119,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,116,104,105,115,46,115,116,121,108,101,46,100,105,115,112,108,97,121,32,61,32,34,34,59,125,59,32,115,112,105,110,110,101,114,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,99,
108,97,115,115,39,44,32,39,118,98,45,115,112,105,110,110,101,114,32,118,98,45,99,101,110,116,101,114,39,41,59,32,118,116,67,110,116,46,97,112,112,101,110,100,67,104,105,108,100,40,115,112,105,110,110,101,114,41,59,32,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,99,111,110,116,97,105,110,101,114,41,46,97,112,112,101,110,100,67,104,105,108,100,40,118,116,67,110,116,41,59,32,125,32,105,102,32,40,33,105,110,106,101,99,116,101,100,95,116,97,103,32,38,38,32,
33,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,39,118,98,45,115,112,105,110,110,101,114,45,99,115,115,39,41,41,32,123,32,118,97,114,32,115,104,101,101,116,32,61,32,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,39,115,116,121,108,101,39,41,59,32,115,104,101,101,116,46,105,100,32,61,32,39,118,98,45,115,112,105,110,110,101,114,45,99,115,115,39,59,32,115,104,101,101,116,46,105,110,110,101,114,72,84,77,76,32,61,32,34,
46,118,98,45,115,112,105,110,110,101,114,32,123,104,101,105,103,104,116,58,32,51,48,112,120,59,119,105,100,116,104,58,32,51,48,112,120,59,109,97,114,103,105,110,58,32,48,59,109,97,114,103,105,110,45,116,111,112,58,32,45,49,53,112,120,59,109,97,114,103,105,110,45,108,101,102,116,58,32,45,49,53,112,120,59,100,105,115,112,108,97,121,58,32,105,110,108,105,110,101,45,98,108,111,99,107,59,34,32,43,32,34,118,101,114,116,105,99,97,108,45,97,108,105,103,110,58,32,116,111,112,59,32,45,119,101,98,107,105,116,
45,97,110,105,109,97,116,105,111,110,58,32,118,98,45,114,111,116,97,116,105,111,110,32,46,56,115,32,108,105,110,101,97,114,32,105,110,102,105,110,105,116,101,59,32,45,109,111,122,45,97,110,105,109,97,116,105,111,110,58,32,118,98,45,114,111,116,97,116,105,111,110,32,46,56,115,32,108,105,110,101,97,114,32,105,110,102,105,110,105,116,101,59,34,32,43,32,34,45,111,45,97,110,105,109,97,116,105,111,110,58,32,118,98,45,114,111,116,97,116,105,111,110,32,46,56,115,32,108,105,110,101,97,114,32,105,110,102,105,
110,105,116,101,59,97,110,105,109,97,116,105,111,110,58,32,118,98,45,114,111,116,97,116,105,111,110,32,48,46,56,115,32,108,105,110,101,97,114,32,105,110,102,105,110,105,116,101,59,98,111,114,100,101,114,45,108,101,102,116,58,32,53,112,120,32,115,111,108,105,100,32,114,103,98,40,50,51,53,44,32,50,51,53,44,32,50,51,53,41,59,34,32,43,32,34,98,111,114,100,101,114,45,114,105,103,104,116,58,32,53,112,120,32,115,111,108,105,100,32,114,103,98,40,50,51,53,44,32,50,51,53,44,32,50,51,53,41,59,98,111,114,100,
101,114,45,98,111,116,116,111,109,58,32,53,112,120,32,115,111,108,105,100,32,114,103,98,40,50,51,53,44,32,50,51,53,44,32,50,51,53,41,59,98,111,114,100,101,114,45,116,111,112,58,32,53,112,120,32,115,111,108,105,100,32,114,103,98,40,49,50,48,44,32,49,50,48,44,32,49,50,48,41,59,98,111,114,100,101,114,45,114,97,100,105,117,115,58,32,49,48,48,37,59,125,34,32,43,32,34,64,45,119,101,98,107,105,116,45,107,101,121,102,114,97,109,101,115,32,118,98,45,114,111,116,97,116,105,111,110,32,123,102,114,111,109,32,
123,45,119,101,98,107,105,116,45,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,48,100,101,103,41,59,125,116,111,32,123,45,119,101,98,107,105,116,45,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,51,54,48,100,101,103,41,59,125,125,34,32,43,32,34,64,45,109,111,122,45,107,101,121,102,114,97,109,101,115,32,118,98,45,114,111,116,97,116,105,111,110,32,123,102,114,111,109,32,123,45,109,111,122,45,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,
48,100,101,103,41,59,125,116,111,32,123,45,109,111,122,45,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,51,54,48,100,101,103,41,59,125,125,34,32,43,32,34,64,45,111,45,107,101,121,102,114,97,109,101,115,32,118,98,45,114,111,116,97,116,105,111,110,32,123,102,114,111,109,32,123,45,111,45,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,48,100,101,103,41,59,125,116,111,32,123,45,111,45,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,51,54,48,100,
101,103,41,59,125,125,34,32,43,32,34,64,107,101,121,102,114,97,109,101,115,32,118,98,45,114,111,116,97,116,105,111,110,32,123,102,114,111,109,32,123,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,48,100,101,103,41,59,125,116,111,32,123,116,114,97,110,115,102,111,114,109,58,32,114,111,116,97,116,101,40,51,54,48,100,101,103,41,59,125,125,34,32,43,32,34,46,118,98,45,99,101,110,116,101,114,123,109,97,114,103,105,110,58,32,97,117,116,111,59,112,111,115,105,116,105,111,110,58,32,97,
98,115,111,108,117,116,101,59,116,111,112,58,32,48,59,32,108,101,102,116,58,32,48,59,32,98,111,116,116,111,109,58,32,48,59,32,114,105,103,104,116,58,32,48,59,125,34,59,32,100,111,99,117,109,101,110,116,46,104,101,97,100,46,105,110,115,101,114,116,66,101,102,111,114,101,40,115,104,101,101,116,44,32,100,111,99,117,109,101,110,116,46,104,101,97,100,46,102,105,114,115,116,67,104,105,108,100,41,59,32,125,32,118,105,100,101,111,84,97,103,46,101,118,101,110,116,115,84,111,82,101,109,111,118,101,32,61,32,
91,93,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,32,61,32,102,117,110,99,116,105,111,110,40,116,121,112,101,44,32,108,105,115,116,101,110,101,114,41,32,123,32,116,104,105,115,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,116,121,112,101,44,32,108,105,115,116,101,110,101,114,41,59,32,116,104,105,115,46,101,118,101,110,116,115,84,111,82,101,109,111,118,101,46,112,117,115,104,40,123,116,121,
112,101,58,32,116,121,112,101,44,32,108,105,115,116,101,110,101,114,58,32,108,105,115,116,101,110,101,114,125,41,59,32,125,59,32,105,102,32,40,118,105,100,101,111,84,97,103,91,34,95,95,95,97,115,121,110,99,95,119,97,105,116,95,95,95,34,93,32,61,61,32,110,117,108,108,32,124,124,32,118,105,100,101,111,84,97,103,91,34,95,95,95,97,115,121,110,99,95,119,97,105,116,95,95,95,34,93,32,61,61,32,117,110,100,101,102,105,110,101,100,41,32,123,32,118,105,100,101,111,84,97,103,91,34,95,95,95,97,115,121,110,99,
95,119,97,105,116,95,95,95,34,93,32,61,32,91,93,59,32,118,105,100,101,111,84,97,103,91,39,97,100,100,65,115,121,110,99,87,97,105,116,80,114,111,109,105,115,101,39,93,32,61,32,102,117,110,99,116,105,111,110,40,112,114,111,109,105,115,101,41,32,123,32,118,105,100,101,111,84,97,103,91,34,95,95,95,97,115,121,110,99,95,119,97,105,116,95,95,95,34,93,46,112,117,115,104,40,112,114,111,109,105,115,101,41,59,32,125,59,32,118,105,100,101,111,84,97,103,91,39,114,101,109,111,118,101,65,115,121,110,99,87,97,105,
116,80,114,111,109,105,115,101,39,93,32,61,32,102,117,110,99,116,105,111,110,40,112,114,111,109,105,115,101,41,32,123,32,118,97,114,32,105,110,100,101,120,32,61,32,118,105,100,101,111,84,97,103,91,34,95,95,95,97,115,121,110,99,95,119,97,105,116,95,95,95,34,93,46,105,110,100,101,120,79,102,40,112,114,111,109,105,115,101,41,59,32,105,102,32,40,105,110,100,101,120,32,62,32,45,49,41,32,123,32,118,105,100,101,111,84,97,103,91,34,95,95,95,97,115,121,110,99,95,119,97,105,116,95,95,95,34,93,46,115,112,108,
105,99,101,40,105,110,100,101,120,44,32,49,41,59,32,125,32,101,108,115,101,32,123,32,99,111,110,115,111,108,101,46,108,111,103,40,34,84,114,121,32,116,111,32,114,101,109,111,118,101,32,117,110,107,110,111,119,110,32,112,114,111,109,105,115,101,34,41,59,32,125,32,125,59,32,125,32,118,97,114,32,109,115,32,61,32,110,117,108,108,59,32,105,102,32,40,116,121,112,101,111,102,32,77,101,100,105,97,83,111,117,114,99,101,32,33,61,61,32,39,117,110,100,101,102,105,110,101,100,39,41,32,123,32,109,115,32,61,32,
110,101,119,32,77,101,100,105,97,83,111,117,114,99,101,40,41,59,32,125,32,105,102,32,40,109,115,41,32,123,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,112,97,117,115,101,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,112,97,117,115,101,40,101,118,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,54,44,32,39,118,105,39,41,40,36,50,41,59,32,125,41,
59,32,105,102,32,40,33,118,105,100,101,111,84,97,103,46,112,97,117,115,101,100,32,124,124,32,118,105,100,101,111,84,97,103,46,97,117,116,111,112,108,97,121,41,32,123,32,118,105,100,101,111,84,97,103,46,95,95,118,98,95,95,97,117,116,111,112,108,97,121,32,61,32,116,114,117,101,59,32,125,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,112,108,97,121,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,112,108,
97,121,40,101,118,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,55,44,32,39,118,105,39,41,40,36,50,41,59,32,125,41,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,112,108,97,121,105,110,103,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,112,108,97,121,105,110,103,40,101,118,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,
87,114,97,112,112,101,114,40,36,56,44,32,39,118,105,39,41,40,36,50,41,59,32,125,41,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,102,117,108,108,115,99,114,101,101,110,99,104,97,110,103,101,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,102,117,108,108,115,99,114,101,101,110,99,104,97,110,103,101,40,101,118,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,
114,40,36,57,44,32,39,118,105,105,39,41,40,36,50,44,32,100,111,99,117,109,101,110,116,46,102,117,108,108,83,99,114,101,101,110,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,48,44,32,39,118,105,105,105,39,41,40,36,50,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,87,105,100,116,104,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,72,101,105,103,104,116,41,59,32,125,41,59,32,118,105,100,101,111,84,97,103,46,97,
100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,109,111,122,102,117,108,108,115,99,114,101,101,110,99,104,97,110,103,101,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,109,111,122,102,117,108,108,115,99,114,101,101,110,99,104,97,110,103,101,40,101,118,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,57,44,32,39,118,105,105,39,41,40,36,50,44,32,100,111,99,117,109,101,110,116,46,109,111,122,
70,117,108,108,83,99,114,101,101,110,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,48,44,32,39,118,105,105,105,39,41,40,36,50,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,87,105,100,116,104,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,72,101,105,103,104,116,41,59,32,125,41,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,
40,39,119,101,98,107,105,116,102,117,108,108,115,99,114,101,101,110,99,104,97,110,103,101,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,119,101,98,107,105,116,102,117,108,108,115,99,114,101,101,110,99,104,97,110,103,101,40,101,118,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,57,44,32,39,118,105,105,39,41,40,36,50,44,32,100,111,99,117,109,101,110,116,46,119,101,98,107,105,116,73,115,70,117,108,108,83,99,114,101,101,110,41,59,32,82,
117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,48,44,32,39,118,105,105,105,39,41,40,36,50,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,87,105,100,116,104,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,72,101,105,103,104,116,41,59,32,125,41,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,114,101,115,105,122,101,39,44,32,102,117,
110,99,116,105,111,110,32,109,115,101,95,119,101,98,107,105,116,102,117,108,108,115,99,114,101,101,110,99,104,97,110,103,101,40,101,118,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,48,44,32,39,118,105,105,105,39,41,40,36,50,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,87,105,100,116,104,44,32,101,118,46,116,97,114,103,101,116,46,99,108,105,101,110,116,72,101,105,103,104,116,41,59,32,125,41,59,32,118,97,114,32,99,114,101,
97,116,101,69,118,101,110,116,59,32,105,102,32,40,116,121,112,101,111,102,32,69,118,101,110,116,32,61,61,61,32,39,102,117,110,99,116,105,111,110,39,41,32,123,32,99,114,101,97,116,101,69,118,101,110,116,32,61,32,102,117,110,99,116,105,111,110,40,110,97,109,101,41,32,123,32,114,101,116,117,114,110,32,110,101,119,32,69,118,101,110,116,40,110,97,109,101,41,59,32,125,59,32,125,32,101,108,115,101,32,123,32,99,114,101,97,116,101,69,118,101,110,116,32,61,32,102,117,110,99,116,105,111,110,40,110,97,109,101,
41,32,123,32,118,97,114,32,101,118,101,110,116,32,61,32,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,118,101,110,116,40,39,69,118,101,110,116,39,41,59,32,101,118,101,110,116,46,105,110,105,116,69,118,101,110,116,40,110,97,109,101,44,32,102,97,108,115,101,44,32,102,97,108,115,101,41,59,32,114,101,116,117,114,110,32,101,118,101,110,116,59,32,125,59,32,125,32,118,97,114,32,105,115,70,97,107,101,100,87,97,105,116,105,110,103,32,61,32,102,97,108,115,101,59,32,118,97,114,32,111,110,87,97,
105,116,105,110,103,67,97,108,108,101,100,32,61,32,116,114,117,101,59,32,118,97,114,32,111,110,87,97,105,116,105,110,103,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,105,102,32,40,33,111,110,87,97,105,116,105,110,103,67,97,108,108,101,100,32,38,38,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,109,101,32,33,61,61,32,48,32,38,38,32,33,105,115,70,97,107,101,100,87,97,105,116,105,110,103,32,38,38,32,33,118,105,100,101,111,84,97,103,46,115,101,101,107,105,110,103,32,
41,32,123,32,118,97,114,32,101,118,101,110,116,32,61,32,99,114,101,97,116,101,69,118,101,110,116,40,39,119,97,105,116,105,110,103,39,41,59,32,118,105,100,101,111,84,97,103,46,100,105,115,112,97,116,99,104,69,118,101,110,116,40,101,118,101,110,116,41,59,32,105,115,70,97,107,101,100,87,97,105,116,105,110,103,32,61,32,116,114,117,101,59,32,125,32,125,59,32,118,97,114,32,111,110,80,108,97,121,105,110,103,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,105,102,32,40,105,115,70,97,107,101,100,87,
97,105,116,105,110,103,41,32,123,32,118,97,114,32,101,118,101,110,116,32,61,32,99,114,101,97,116,101,69,118,101,110,116,40,39,112,108,97,121,105,110,103,39,41,59,32,118,105,100,101,111,84,97,103,46,100,105,115,112,97,116,99,104,69,118,101,110,116,40,101,118,101,110,116,41,59,32,105,115,70,97,107,101,100,87,97,105,116,105,110,103,32,61,32,102,97,108,115,101,59,32,125,32,125,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,
101,114,40,39,119,97,105,116,105,110,103,39,44,32,102,117,110,99,116,105,111,110,32,40,101,118,41,32,123,32,111,110,87,97,105,116,105,110,103,67,97,108,108,101,100,32,61,32,116,114,117,101,59,32,115,112,105,110,110,101,114,46,115,104,111,119,40,41,59,32,125,41,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,112,108,97,121,105,110,103,39,44,32,102,117,110,99,116,105,111,110,32,40,101,118,41,32,123,32,111,110,
87,97,105,116,105,110,103,67,97,108,108,101,100,32,61,32,102,97,108,115,101,59,32,115,112,105,110,110,101,114,46,104,105,100,101,40,41,59,32,125,41,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,116,105,109,101,117,112,100,97,116,101,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,116,105,109,101,117,112,100,97,116,101,40,101,118,41,32,123,32,118,97,114,32,114,101,103,105,111,110,73,100,32,61,32,
45,49,44,32,105,32,61,32,48,44,32,98,117,102,102,101,114,101,100,32,61,32,101,118,46,116,97,114,103,101,116,46,98,117,102,102,101,114,101,100,59,32,118,97,114,32,99,117,114,114,101,110,116,84,105,109,101,32,61,32,101,118,46,116,97,114,103,101,116,46,99,117,114,114,101,110,116,84,105,109,101,59,32,102,111,114,32,40,105,32,61,32,48,59,32,105,60,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,105,102,32,40,98,117,102,102,101,114,101,100,46,115,116,97,114,116,40,
105,41,32,60,61,32,99,117,114,114,101,110,116,84,105,109,101,32,38,38,32,99,117,114,114,101,110,116,84,105,109,101,32,60,61,32,98,117,102,102,101,114,101,100,46,101,110,100,40,105,41,41,32,123,32,114,101,103,105,111,110,73,100,32,61,32,105,59,32,98,114,101,97,107,59,32,125,32,125,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,100,100,39,41,40,36,50,44,32,101,118,46,116,97,114,103,101,116,46,99,117,114,114,101,110,116,84,105,109,101,44,
32,114,101,103,105,111,110,73,100,32,33,61,32,45,49,32,63,32,101,118,46,116,97,114,103,101,116,46,98,117,102,102,101,114,101,100,46,101,110,100,40,114,101,103,105,111,110,73,100,41,32,58,32,48,41,59,32,125,44,32,116,114,117,101,41,59,32,118,97,114,32,108,97,115,116,67,117,114,114,101,110,116,84,105,109,101,32,61,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,109,101,59,32,118,105,100,101,111,84,97,103,46,105,110,116,101,114,118,97,108,115,84,111,67,108,101,97,114,32,61,32,91,
93,59,32,118,97,114,32,105,110,116,101,114,118,97,108,73,100,32,61,32,119,105,110,100,111,119,46,115,101,116,73,110,116,101,114,118,97,108,40,102,117,110,99,116,105,111,110,32,99,104,101,99,107,95,102,111,114,95,115,116,97,108,108,40,41,32,123,32,105,102,32,40,33,118,105,100,101,111,84,97,103,46,112,97,117,115,101,100,41,32,123,32,105,102,32,40,33,118,105,100,101,111,84,97,103,46,101,110,100,101,100,32,38,38,32,77,97,116,104,46,97,98,115,40,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,
116,84,105,109,101,32,45,32,108,97,115,116,67,117,114,114,101,110,116,84,105,109,101,41,32,60,32,48,46,48,48,49,41,32,123,32,111,110,87,97,105,116,105,110,103,40,41,59,32,125,32,101,108,115,101,32,123,32,111,110,80,108,97,121,105,110,103,40,41,59,32,125,32,125,32,108,97,115,116,67,117,114,114,101,110,116,84,105,109,101,32,61,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,109,101,59,32,125,44,32,53,48,48,41,59,32,118,105,100,101,111,84,97,103,46,105,110,116,101,114,118,97,108,
115,84,111,67,108,101,97,114,46,112,117,115,104,40,105,110,116,101,114,118,97,108,73,100,41,59,32,118,105,100,101,111,84,97,103,46,97,100,100,82,101,109,111,118,97,98,108,101,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,115,101,101,107,105,110,103,39,44,32,102,117,110,99,116,105,111,110,32,109,115,101,95,115,101,101,107,105,110,103,40,101,118,41,32,123,32,118,97,114,32,99,117,114,114,101,110,116,84,105,109,101,32,61,32,118,105,100,101,111,84,97,103,46,99,117,114,114,101,110,116,84,105,
109,101,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,49,49,44,32,39,118,105,100,39,41,40,36,50,44,32,99,117,114,114,101,110,116,84,105,109,101,41,59,32,118,97,114,32,101,118,101,110,116,32,61,32,99,114,101,97,116,101,69,118,101,110,116,40,39,116,105,109,101,117,112,100,97,116,101,39,41,59,32,101,118,46,116,97,114,103,101,116,46,100,105,115,112,97,116,99,104,69,118,101,110,116,40,101,118,101,110,116,41,59,32,125,41,59,32,125,32,101,108,115,101,32,123,
32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,105,105,39,41,40,36,50,44,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,110,117,108,108,41,44,32,45,49,41,59,32,125,32,118,105,100,101,111,84,97,103,46,115,114,99,32,61,32,119,105,110,100,111,119,46,85,82,76,46,99,114,101,97,116,101,79,98,106,101,99,116,85,82,76,40,109,115,41,59,32,118,97,114,32,104,116,109,108,65,116,116,114,105,98,115,32,61,32,99,109,100,95,97,114,103,115,46,97,
116,116,114,105,98,117,116,101,115,59,32,105,102,32,40,104,116,109,108,65,116,116,114,105,98,115,41,32,123,32,102,111,114,32,40,97,116,116,114,32,105,110,32,104,116,109,108,65,116,116,114,105,98,115,41,32,123,32,118,116,67,110,116,46,115,101,116,65,116,116,114,105,98,117,116,101,40,97,116,116,114,44,32,104,116,109,108,65,116,116,114,105,98,115,91,97,116,116,114,93,41,59,32,125,32,125,32,104,116,109,108,65,116,116,114,105,98,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,52,41,
91,39,118,105,100,101,111,45,97,116,116,114,105,98,117,116,101,115,39,93,59,32,105,102,32,40,104,116,109,108,65,116,116,114,105,98,115,41,32,123,32,102,111,114,32,40,97,116,116,114,32,105,110,32,104,116,109,108,65,116,116,114,105,98,115,41,32,123,32,105,102,32,40,97,116,116,114,32,61,61,32,34,99,111,110,116,114,111,108,115,34,41,32,118,105,100,101,111,84,97,103,91,97,116,116,114,93,32,61,32,104,116,109,108,65,116,116,114,105,98,115,91,97,116,116,114,93,59,32,101,108,115,101,32,118,105,100,101,111,
84,97,103,46,115,101,116,65,116,116,114,105,98,117,116,101,40,97,116,116,114,44,32,104,116,109,108,65,116,116,114,105,98,115,91,97,116,116,114,93,41,59,32,125,32,125,32,118,97,114,32,99,116,120,32,61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,99,116,120,46,118,105,100,101,111,84,97,103,32,61,32,118,105,100,101,111,84,97,103,59,32,99,116,120,46,104,116,109,108,67,111,110,116,101,110,116,32,61,32,118,116,67,110,116,59,32,99,116,120,46,109,115,32,61,32,109,115,59,32,99,116,120,46,99,111,110,
116,97,105,110,101,114,32,61,32,99,111,110,116,97,105,110,101,114,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,99,116,120,41,59,32,125,0,78,111,32,111,114,32,105,110,118,97,108,105,100,32,99,111,110,116,97,105,110,101,114,32,97,114,103,117,109,101,110,116,46,0,123,32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,86,105,98,108,97,115,116,46,87,97,116,101,
114,109,97,114,107,46,109,97,109,97,116,97,83,105,87,97,116,101,114,109,97,114,107,40,118,105,100,101,111,84,97,103,41,59,32,125,0,123,32,118,97,114,32,118,105,100,101,111,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,118,105,100,101,111,84,97,103,59,32,118,97,114,32,116,105,109,101,32,61,32,36,49,59,32,118,97,114,32,98,117,102,102,101,114,101,100,32,61,32,118,105,100,101,111,46,98,117,102,102,101,114,101,100,59,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,
60,98,117,102,102,101,114,101,100,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,105,102,32,40,98,117,102,102,101,114,101,100,46,115,116,97,114,116,40,105,41,32,60,61,32,116,105,109,101,32,38,38,32,116,105,109,101,32,60,61,32,98,117,102,102,101,114,101,100,46,101,110,100,40,105,41,41,32,123,32,114,101,116,117,114,110,32,49,59,32,125,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,
32,118,97,114,32,118,105,100,101,111,84,97,103,32,61,32,99,116,120,46,118,105,100,101,111,84,97,103,59,32,118,97,114,32,99,111,110,116,97,105,110,101,114,32,61,32,99,116,120,46,99,111,110,116,97,105,110,101,114,59,32,118,97,114,32,105,59,32,102,111,114,40,105,32,61,32,48,59,32,105,32,60,32,118,105,100,101,111,84,97,103,46,101,118,101,110,116,115,84,111,82,101,109,111,118,101,46,108,101,110,103,116,104,59,32,105,43,43,41,123,32,118,105,100,101,111,84,97,103,46,114,101,109,111,118,101,69,118,101,110,
116,76,105,115,116,101,110,101,114,40,118,105,100,101,111,84,97,103,46,101,118,101,110,116,115,84,111,82,101,109,111,118,101,91,105,93,46,116,121,112,101,44,32,118,105,100,101,111,84,97,103,46,101,118,101,110,116,115,84,111,82,101,109,111,118,101,91,105,93,46,108,105,115,116,101,110,101,114,41,59,32,125,32,102,111,114,40,105,32,61,32,48,59,32,105,32,60,32,118,105,100,101,111,84,97,103,46,105,110,116,101,114,118,97,108,115,84,111,67,108,101,97,114,46,108,101,110,103,116,104,59,32,105,43,43,41,123,
32,119,105,110,100,111,119,46,99,108,101,97,114,73,110,116,101,114,118,97,108,40,118,105,100,101,111,84,97,103,46,105,110,116,101,114,118,97,108,115,84,111,67,108,101,97,114,91,105,93,41,59,32,125,32,118,97,114,32,112,97,117,115,101,100,32,61,32,118,105,100,101,111,84,97,103,46,112,97,117,115,101,100,59,32,118,105,100,101,111,84,97,103,46,115,114,99,61,39,39,59,32,105,102,32,40,118,105,100,101,111,84,97,103,91,39,109,101,100,105,97,75,101,121,115,39,93,32,33,61,32,110,117,108,108,41,32,123,32,118,
97,114,32,107,101,121,115,80,114,111,109,105,115,101,32,61,32,118,105,100,101,111,84,97,103,91,39,115,101,116,77,101,100,105,97,75,101,121,115,39,93,40,110,117,108,108,41,59,32,105,102,32,40,107,101,121,115,80,114,111,109,105,115,101,32,33,61,61,32,117,110,100,101,102,105,110,101,100,32,38,38,32,107,101,121,115,80,114,111,109,105,115,101,32,33,61,61,32,110,117,108,108,41,32,123,32,118,105,100,101,111,84,97,103,91,39,97,100,100,65,115,121,110,99,87,97,105,116,80,114,111,109,105,115,101,39,93,40,107,
101,121,115,80,114,111,109,105,115,101,41,59,32,107,101,121,115,80,114,111,109,105,115,101,46,116,104,101,110,40,102,117,110,99,116,105,111,110,40,41,32,123,32,118,105,100,101,111,84,97,103,91,39,114,101,109,111,118,101,65,115,121,110,99,87,97,105,116,80,114,111,109,105,115,101,39,93,40,107,101,121,115,80,114,111,109,105,115,101,41,59,32,125,41,46,99,97,116,99,104,40,102,117,110,99,116,105,111,110,40,101,114,114,111,114,41,32,123,32,118,105,100,101,111,84,97,103,91,39,114,101,109,111,118,101,65,115,
121,110,99,87,97,105,116,80,114,111,109,105,115,101,39,93,40,107,101,121,115,80,114,111,109,105,115,101,41,59,32,125,41,59,32,125,32,125,32,118,105,100,101,111,84,97,103,46,114,101,109,111,118,101,65,116,116,114,105,98,117,116,101,40,39,115,114,99,39,41,59,32,118,105,100,101,111,84,97,103,46,108,111,97,100,40,41,59,32,105,102,32,40,33,112,97,117,115,101,100,41,32,123,32,118,97,114,32,112,108,97,121,80,114,111,109,105,115,101,32,61,32,118,105,100,101,111,84,97,103,46,112,108,97,121,40,41,59,32,105,
102,32,40,112,108,97,121,80,114,111,109,105,115,101,32,33,61,61,32,117,110,100,101,102,105,110,101,100,41,32,123,32,112,108,97,121,80,114,111,109,105,115,101,46,116,104,101,110,40,102,117,110,99,116,105,111,110,40,41,32,123,32,125,41,46,99,97,116,99,104,40,102,117,110,99,116,105,111,110,40,101,114,114,111,114,41,32,123,32,125,41,59,32,125,32,125,32,99,111,110,116,97,105,110,101,114,46,105,110,110,101,114,72,84,77,76,32,61,32,34,34,59,32,125,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,
46,46,47,46,46,47,117,116,105,108,115,47,46,46,47,116,105,109,101,114,115,47,84,105,109,101,114,46,104,0,84,114,121,105,110,103,32,116,111,32,99,111,110,110,101,99,116,32,116,119,105,99,101,32,116,111,32,116,104,101,32,115,97,109,101,32,116,105,109,101,114,0,72,108,115,80,108,97,121,101,114,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,101,108,32,61,32,99,116,120,91,39,104,116,109,108,67,111,110,116,101,110,116,39,93,59,
32,105,102,32,40,101,108,32,38,38,32,101,108,46,112,97,114,101,110,116,78,111,100,101,41,32,123,32,101,108,46,112,97,114,101,110,116,78,111,100,101,46,114,101,109,111,118,101,67,104,105,108,100,40,101,108,41,59,32,125,32,125,0,99,111,110,116,97,105,110,101,114,0,87,104,101,114,101,32,116,111,32,101,109,98,101,100,32,116,104,101,32,118,105,100,101,111,32,116,97,103,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,72,108,115,80,108,97,121,101,114,46,99,99,0,69,109,98,101,100,105,110,103,32,
115,116,114,101,97,109,61,0,32,105,110,32,99,111,110,116,97,105,110,101,114,61,0,32,117,115,105,110,103,32,110,97,116,105,118,101,108,121,32,72,76,83,32,115,117,112,112,111,114,116,0,123,32,118,97,114,32,99,111,110,116,97,105,110,101,114,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,59,32,118,97,114,32,99,100,110,83,116,114,101,97,109,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,118,105,100,101,
111,84,97,103,32,61,32,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,39,118],"i8",4,x.D+81920);
M([105,100,101,111,39,41,59,32,118,105,100,101,111,84,97,103,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,99,111,110,116,114,111,108,115,39,44,32,39,39,41,59,32,118,105,100,101,111,84,97,103,46,115,101,116,65,116,116,114,105,98,117,116,101,40,39,97,117,116,111,112,108,97,121,39,44,32,39,39,41,59,32,118,105,100,101,111,84,97,103,46,115,114,99,32,61,32,99,100,110,83,116,114,101,97,109,59,32,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,99,111,110,
116,97,105,110,101,114,41,46,97,112,112,101,110,100,67,104,105,108,100,40,118,105,100,101,111,84,97,103,41,59,32,118,97,114,32,104,116,109,108,65,116,116,114,105,98,115,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,50,41,46,97,116,116,114,105,98,117,116,101,115,59,32,105,102,32,40,104,116,109,108,65,116,116,114,105,98,115,41,32,123,32,102,111,114,32,40,97,116,116,114,32,105,110,32,104,116,109,108,65,116,116,114,105,98,115,41,32,123,32,105,102,32,40,97,116,116,114,32,61,61,32,39,
99,111,110,116,114,111,108,115,39,41,32,118,105,100,101,111,84,97,103,91,97,116,116,114,93,32,61,32,104,116,109,108,65,116,116,114,105,98,115,91,97,116,116,114,93,59,32,101,108,115,101,32,118,105,100,101,111,84,97,103,46,115,101,116,65,116,116,114,105,98,117,116,101,40,97,116,116,114,44,32,104,116,109,108,65,116,116,114,105,98,115,91,97,116,116,114,93,41,59,32,125,32,125,32,118,97,114,32,99,116,120,32,61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,99,116,120,91,39,104,116,109,108,67,111,110,
116,101,110,116,39,93,32,61,32,118,105,100,101,111,84,97,103,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,99,116,120,41,59,32,125,0,118,105,98,108,97,115,116,46,114,101,109,117,120,101,114,46,106,115,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,99,111,110,118,101,114,116,111,114,115,47,46,46,47,46,46,47,46,46,47,117,116,105,108,115,47,110,111,116,105,102,121,46,104,0,84,114,121,105,110,103,32,116,111,32,98,105,110,100,32,116,119,105,99,101,32,116,
111,32,116,104,101,32,115,97,109,101,32,110,111,116,105,102,105,99,97,116,105,111,110,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,99,111,110,118,101,114,116,111,114,115,47,66,97,115,101,65,100,97,112,116,101,114,46,99,99,0,80,108,97,121,98,97,99,107,32,119,105,108,108,32,78,79,84,32,98,101,103,105,110,32,98,101,99,97,117,115,101,32,114,101,109,117,120,101,114,32,119,111,114,107,101,114,32,99,97,110,110,111,116,32,98,101,32,108,111,97,100,101,100,46,32,80,111,115,115,105,98,108,101,32,
114,101,97,115,111,110,115,32,105,110,99,108,117,100,101,58,10,32,42,32,77,105,115,115,105,110,103,32,118,105,98,108,97,115,116,46,114,101,109,117,120,101,114,46,106,115,32,114,101,115,111,117,114,99,101,46,32,73,116,32,109,117,115,116,32,98,101,32,112,108,97,99,101,100,32,110,101,120,116,32,116,111,32,118,105,98,108,97,115,116,46,106,115,46,10,32,42,32,84,104,101,32,115,101,114,118,101,114,32,114,101,100,105,114,101,99,116,105,110,103,32,116,111,32,97,32,100,105,102,102,101,114,101,110,116,32,111,
114,105,103,105,110,32,119,104,101,110,32,118,105,98,108,97,115,116,46,114,101,109,117,120,101,114,46,106,115,32,105,115,32,114,101,113,117,101,115,116,101,100,46,32,84,104,105,115,32,105,115,32,102,111,114,98,105,100,100,101,110,32,100,117,101,32,116,111,32,115,97,109,101,45,111,114,105,103,105,110,32,112,111,108,105,99,121,46,0,82,101,99,101,105,118,101,100,32,117,110,107,110,111,119,110,32,109,101,115,115,97,103,101,32,102,114,111,109,32,114,101,109,117,120,32,119,111,114,107,101,114,32,0,123,
32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,41,59,32,125,0,123,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,46,98,121,116,101,76,101,110,103,116,104,59,32,125,0,123,32,118,97,114,32,100,115,116,32,61,32,110,101,119,32,65,114,114,97,121,66,117,102,102,101,114,40,36,49,41,59,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,100,115,116,41,46,115,101,
116,40,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,72,69,65,80,85,56,46,98,117,102,102,101,114,44,32,36,48,44,32,36,49,41,41,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,100,115,116,41,59,32,125,0,123,32,118,98,108,105,98,46,118,98,82,101,109,111,118,101,79,98,106,40,36,48,41,59,32,125,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,33,111,98,106,91,39,97,100,100,84,101,120,
116,84,114,97,99,107,39,93,41,32,114,101,116,117,114,110,32,45,49,59,32,118,97,114,32,116,101,120,116,84,114,97,99,107,32,61,32,111,98,106,91,39,97,100,100,84,101,120,116,84,114,97,99,107,39,93,40,39,109,101,116,97,100,97,116,97,39,44,32,39,86,105,98,108,97,115,116,32,77,101,116,97,100,97,116,97,32,84,97,103,115,39,41,59,32,105,102,32,40,33,116,101,120,116,84,114,97,99,107,41,32,123,32,114,101,116,117,114,110,32,45,49,59,32,125,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,
79,98,106,40,116,101,120,116,84,114,97,99,107,41,59,32,125,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,86,105,100,101,111,74,83,80,108,97,121,101,114,46,99,99,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,111,98,106,91,39,101,108,39,93,40,41,91,39,118,106,115,95,115,101,116,80,114,111,112,101,114,116,121,39,93,40,39,99,117,114,114,101,110,116,84,105,109,101,39,44,32,36,49,41,59,32,111,98,106,46,108,97,115,116,83,101,101,
107,101,100,84,105,109,101,95,32,61,32,110,117,108,108,59,32,125,0,123,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,39,115,101,116,68,117,114,97,116,105,111,110,39,93,40,36,49,41,59,32,125,0,123,32,105,102,40,36,48,32,61,61,32,45,49,41,32,114,101,116,117,114,110,32,116,114,117,101,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,39,117,112,100,97,116,105,110,103,39,93,59,32,125,0,123,32,118,97,114,32,112,108,117,103,105,110,32,
61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,98,117,102,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,41,59,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,51,41,46,97,112,112,101,110,100,66,117,102,102,101,114,40,98,117,102,41,59,32,112,108,117,103,105,110,46,114,101,97,100,121,70,111,114,83,101,101,107,105,110,103,32,61,32,116,114,117,101,59,32,105,102,32,40,112,108,
117,103,105,110,46,113,117,101,117,101,100,83,101,101,107,41,32,123,32,118,97,114,32,115,101,101,107,84,111,32,61,32,112,108,117,103,105,110,46,113,117,101,117,101,100,83,101,101,107,59,32,100,101,108,101,116,101,32,112,108,117,103,105,110,46,113,117,101,117,101,100,83,101,101,107,59,32,112,108,117,103,105,110,91,39,115,101,116,67,117,114,114,101,110,116,84,105,109,101,39,93,40,115,101,101,107,84,111,41,59,32,112,108,117,103,105,110,91,39,112,108,97,121,39,93,40,41,59,32,125,32,114,101,116,117,114,
110,32,48,59,32,125,0,123,32,99,111,110,115,111,108,101,46,108,111,103,40,34,83,84,82,69,65,77,32,69,78,68,34,41,59,32,118,97,114,32,112,108,117,103,105,110,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,112,108,117,103,105,110,91,39,109,101,100,105,97,83,111,117,114,99,101,39,93,46,101,110,100,79,102,83,116,114,101,97,109,40,41,59,32,125,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,33,111,
98,106,91,39,97,100,100,82,101,109,111,116,101,84,101,120,116,84,114,97,99,107,39,93,41,32,114,101,116,117,114,110,59,32,111,98,106,91,39,97,100,100,82,101,109,111,116,101,84,101,120,116,84,114,97,99,107,39,93,40,123,107,105,110,100,58,32,39,115,117,98,116,105,116,108,101,115,39,44,32,39,108,97,98,101,108,39,58,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,44,32,39,108,97,110,103,117,97,103,101,39,58,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,
40,36,50,41,44,32,39,115,114,99,39,58,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,52,41,125,41,59,32,125,0,123,32,118,97,114,32,112,108,117,103,105,110,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,116,105,109,101,82,97,110,103,101,115,32,61,32,112,108,117,103,105,110,91,39,98,117,102,102,101,114,101,100,39,93,40,41,59,32,105,102,32,40,116,105,109,101,82,97,110,103,101,115,46,108,101,110,103,116,104,32,62,32,48,41,32,123,32,118,
97,114,32,114,101,103,105,111,110,73,100,32,61,32,45,49,59,32,118,97,114,32,105,32,61,32,48,59,32,118,97,114,32,99,117,114,114,101,110,116,84,105,109,101,32,61,32,112,108,117,103,105,110,91,39,99,117,114,114,101,110,116,84,105,109,101,39,93,40,41,59,32,102,111,114,32,40,105,32,61,32,48,59,32,105,60,116,105,109,101,82,97,110,103,101,115,46,108,101,110,103,116,104,59,32,105,43,43,41,32,123,32,105,102,32,40,116,105,109,101,82,97,110,103,101,115,46,115,116,97,114,116,40,105,41,32,60,61,32,99,117,114,
114,101,110,116,84,105,109,101,32,38,38,32,99,117,114,114,101,110,116,84,105,109,101,32,60,61,32,116,105,109,101,82,97,110,103,101,115,46,101,110,100,40,105,41,41,32,123,32,114,101,116,117,114,110,32,116,105,109,101,82,97,110,103,101,115,46,101,110,100,40,105,41,32,45,32,99,117,114,114,101,110,116,84,105,109,101,59,32,125,32,125,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,111,98,106,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,114,101,116,
117,114,110,32,111,98,106,91,39,99,117,114,114,101,110,116,84,105,109,101,39,93,40,41,59,32,125,0,86,105,100,101,111,74,83,80,108,97,121,101,114,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,112,114,101,108,111,97,100,32,61,32,99,116,120,46,95,95,118,98,95,112,114,101,108,111,97,100,59,32,105,102,32,40,112,114,101,108,111,97,100,32,61,61,61,32,39,97,117,116,111,39,41,32,123,32,114,101,116,117,114,110,32,50,59,32,125,32,
101,108,115,101,32,105,102,32,40,112,114,101,108,111,97,100,32,61,61,61,32,39,109,101,116,97,100,97,116,97,39,41,32,123,32,114,101,116,117,114,110,32,49,59,32,125,32,101,108,115,101,32,123,32,114,101,116,117,114,110,32,48,59,32,125,32,125,0,123,32,118,97,114,32,99,116,120,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,114,101,116,117,114,110,32,99,116,120,46,95,95,118,98,95,97,117,116,111,112,108,97,121,59,32,125,0,123,32,118,97,114,32,99,109,100,95,97,114,103,115,32,
61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,112,108,117,103,105,110,32,61,32,99,109,100,95,97,114,103,115,91,39,99,111,110,116,97,105,110,101,114,39,93,91,39,112,108,117,103,105,110,39,93,59,32,118,97,114,32,118,106,115,70,108,97,115,104,84,101,99,104,32,61,32,99,109,100,95,97,114,103,115,91,39,99,111,110,116,97,105,110,101,114,39,93,91,39,118,106,115,70,108,97,115,104,84,101,99,104,39,93,59,32,118,97,114,32,112,108,97,121,101,114,32,61,32,99,109,100,95,
97,114,103,115,91,39,99,111,110,116,97,105,110,101,114,39,93,91,39,112,108,97,121,101,114,39,93,59,32,105,102,32,40,33,112,108,117,103,105,110,41,32,114,101,116,117,114,110,32,45,49,59,32,112,108,117,103,105,110,91,39,109,101,100,105,97,83,111,117,114,99,101,39,93,91,39,118,98,95,98,97,115,101,85,114,108,39,93,32,61,32,99,109,100,95,97,114,103,115,91,39,98,97,115,101,85,114,108,39,93,32,124,124,32,118,98,108,105,98,46,103,101,116,83,99,114,105,112,116,66,97,115,101,85,114,108,40,41,59,32,112,108,
117,103,105,110,91,39,109,101,100,105,97,83,111,117,114,99,101,39,93,46,97,100,100,69,118,101,110,116,76,105,115,116,101,110,101,114,40,39,115,111,117,114,99,101,111,112,101,110,39,44,32,102,117,110,99,116,105,111,110,40,101,118,101,110,116,41,123,32,112,108,117,103,105,110,91,39,115,111,117,114,99,101,66,117,102,102,101,114,39,93,32,61,32,112,108,117,103,105,110,91,39,109,101,100,105,97,83,111,117,114,99,101,39,93,46,97,100,100,83,111,117,114,99,101,66,117,102,102,101,114,40,39,118,105,100,101,111,
47,102,108,118,59,32,99,111,100,101,99,115,61,34,118,112,54,44,97,97,99,34,39,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,50,44,32,39,118,105,105,39,41,40,36,49,44,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,112,108,117,103,105,110,91,39,115,111,117,114,99,101,66,117,102,102,101,114,39,93,41,41,59,32,125,44,32,102,97,108,115,101,41,59,32,118,97,114,32,119,97,105,116,70,111,114,85,112,100,97,116,105,110,103,32,61,32,110,117,108,108,59,
32,112,108,117,103,105,110,91,39,115,101,116,67,117,114,114,101,110,116,84,105,109,101,39,93,32,61,32,102,117,110,99,116,105,111,110,40,99,117,114,114,101,110,116,84,105,109,101,41,32,123,32,105,102,32,40,105,115,78,97,78,40,99,117,114,114,101,110,116,84,105,109,101,41,41,32,123,32,114,101,116,117,114,110,59,32,125,32,105,102,32,40,112,108,117,103,105,110,46,114,101,97,100,121,70,111,114,83,101,101,107,105,110,103,41,32,123,32,105,102,32,40,119,97,105,116,70,111,114,85,112,100,97,116,105,110,103,
32,33,61,32,110,117,108,108,41,32,123,32,119,105,110,100,111,119,46,99,108,101,97,114,84,105,109,101,111,117,116,40,119,97,105,116,70,111,114,85,112,100,97,116,105,110,103,41,59,32,119,97,105,116,70,111,114,85,112,100,97,116,105,110,103,32,61,32,110,117,108,108,59,32,125,32,105,102,32,40,33,112,108,117,103,105,110,91,39,115,111,117,114,99,101,66,117,102,102,101,114,39,93,32,124,124,32,33,112,108,117,103,105,110,91,39,115,111,117,114,99,101,66,117,102,102,101,114,39,93,91,39,117,112,100,97,116,105,
110,103,39,93,41,32,123,32,116,104,105,115,91,39,115,111,117,114,99,101,66,117,102,102,101,114,39,93,91,39,97,98,111,114,116,39,93,40,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,51,44,32,39,118,105,100,39,41,40,36,49,44,32,99,117,114,114,101,110,116,84,105,109,101,41,59,32,116,104,105,115,46,108,97,115,116,83,101,101,107,101,100,84,105,109,101,95,32,61,32,99,117,114,114,101,110,116,84,105,109,101,59,32,125,32,101,108,115,101,32,123,32,119,97,105,
116,70,111,114,85,112,100,97,116,105,110,103,32,61,32,119,105,110,100,111,119,46,115,101,116,84,105,109,101,111,117,116,40,102,117,110,99,116,105,111,110,40,41,32,123,32,112,108,117,103,105,110,91,39,115,101,116,67,117,114,114,101,110,116,84,105,109,101,39,93,40,99,117,114,114,101,110,116,84,105,109,101,41,59,32,125,44,32,49,48,41,59,32,125,32,125,32,101,108,115,101,32,123,32,112,108,117,103,105,110,46,113,117,101,117,101,100,83,101,101,107,32,61,32,99,117,114,114,101,110,116,84,105,109,101,59,32,
125,32,125,59,32,112,108,117,103,105,110,91,39,112,108,97,121,39,93,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,116,104,105,115,91,39,116,114,105,103,103,101,114,39,93,40,39,100,117,114,97,116,105,111,110,99,104,97,110,103,101,39,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,52,44,32,39,118,105,39,41,40,36,49,41,59,32,114,101,116,117,114,110,32,118,106,115,70,108,97,115,104,84,101,99,104,46,112,114,111,116,111,116,121,112,101,91,39,112,
108,97,121,39,93,46,97,112,112,108,121,40,116,104,105,115,44,32,97,114,103,117,109,101,110,116,115,41,59,32,125,59,32,112,108,117,103,105,110,91,39,112,97,117,115,101,39,93,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,39,41,40,36,49,41,59,32,114,101,116,117,114,110,32,118,106,115,70,108,97,115,104,84,101,99,104,46,112,114,111,116,111,116,121,112,101,91,39,112,97,117,115,101,39,93,
46,97,112,112,108,121,40,116,104,105,115,44,32,97,114,103,117,109,101,110,116,115,41,59,32,125,59,32,118,97,114,32,111,112,116,105,111,110,115,32,61,32,112,108,97,121,101,114,91,39,111,112,116,105,111,110,115,95,39,93,32,124,124,32,112,108,97,121,101,114,91,39,111,112,116,105,111,110,115,39,93,40,41,59,32,112,108,117,103,105,110,46,95,95,118,98,95,97,117,116,111,112,108,97,121,32,61,32,33,112,108,97,121,101,114,91,39,112,97,117,115,101,100,39,93,40,41,32,124,124,32,111,112,116,105,111,110,115,91,
39,97,117,116,111,112,108,97,121,39,93,59,32,112,108,117,103,105,110,46,95,95,118,98,95,112,114,101,108,111,97,100,32,61,32,111,112,116,105,111,110,115,91,39,112,114,101,108,111,97,100,39,93,59,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,112,108,117,103,105,110,41,59,32,125,0,123,32,118,97,114,32,112,108,97,121,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,91,39,118,105,100,101,111,106,115,95,97,112,105,39,93,59,32,105,102,32,40,
33,112,108,97,121,101,114,32,124,124,32,33,112,108,97,121,101,114,91,39,97,100,100,84,101,120,116,84,114,97,99,107,39,93,41,32,114,101,116,117,114,110,32,45,49,59,32,118,97,114,32,116,101,120,116,84,114,97,99,107,32,61,32,112,108,97,121,101,114,91,39,97,100,100,84,101,120,116,84,114,97,99,107,39,93,40,39,109,101,116,97,100,97,116,97,39,44,32,39,86,105,98,108,97,115,116,32,77,101,116,97,100,97,116,97,32,84,97,103,115,39,41,59,32,105,102,32,40,33,116,101,120,116,84,114,97,99,107,41,32,123,32,114,101,
116,117,114,110,32,45,49,59,32,125,32,114,101,116,117,114,110,32,118,98,108,105,98,46,118,98,65,100,100,79,98,106,40,116,101,120,116,84,114,97,99,107,41,59,32,125,0,115,114,99,47,106,115,47,112,108,97,121,101,114,115,47,86,105,100,101,111,74,83,77,115,112,80,108,97,121,101,114,46,99,99,0,91,118,106,115,45,109,115,112,93,32,0,67,97,110,110,111,116,32,99,114,101,97,116,101,32,116,101,120,116,32,116,114,97,99,107,32,102,111,114,32,109,101,116,97,100,97,116,97,0,123,32,118,98,108,105,98,46,118,98,82,
101,109,111,118,101,79,98,106,40,36,48,41,59,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,32,61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,110,97,116,
105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,116,111,116,97,108,85,112,108,111,97,100,101,100,84,111,83,119,97,114,109,39,93,32,61,32,48,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,116,111,116,97,108,68,111,119,110,108,111,97,100,101,100,70,114,111,109,83,119,97,114,109,39,93,32,61,32,48,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,
39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,116,111,116,97,108,68,111,119,110,108,111,97,100,101,100,70,114,111,109,67,100,110,39,93,32,61,32,48,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,98,108,97,99,107,108,105,115,116,101,100,39,93,32,61,32,48,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,112,101,114,109,97,
110,101,110,116,108,121,66,108,97,99,107,108,105,115,116,101,100,39,93,32,61,32,48,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,73,110,105,116,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,73,110,105,116,39,93,40,41,59,32,125,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,
101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,46,120,104,114,66,101,102,111,114,101,83,101,110,100,41,32,123,32,118,97,114,32,120,104,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,49,41,59,32,118,97,114,32,117,114,108,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,50,41,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,
114,46,120,104,114,66,101,102,111,114,101,83,101,110,100,40,120,104,114,44,32,117,114,108,41,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,46,111,110,84,114,97,110,115,102,101,114,70,97,105,108,117,114,101,41,32,123,32,118,97,114,32,117,114,108,32,
61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,118,97,114,32,115,116,97,116,117,115,32,61,32,36,50,59,32,118,97,114,32,98,111,100,121,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,51,41,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,46,111,110,84,114,97,110,115,102,101,114,70,97,105,108,117,114,101,40,117,114,108,44,32,115,116,97,116,117,115,44,32,98,111,100,121,41,59,32,125,32,125,0,123,32,118,97,114,32,110,
97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,65,117,100,105,111,81,117,97,108,105,116,121,67,104,97,110,103,101,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,65,117,100,105,111,81,117,97,108,105,116,121,67,104,97,110,103,101,39,93,40,80,
111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,41,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,118,97,114,32,113,117,97,108,105,116,105,101,115,65,100,100,114,32,61,32,36,49,59,32,118,97,114,32,110,117,109,81,117,97,108,105,116,105,101,115,32,61,32,36,50,59,32,118,97,114,32,99,117,114,114,101,110,116,81,117,97,108,105,116,121,73,100,120,32,61,32,36,
51,59,32,118,97,114,32,106,115,65,114,114,97,121,32,61,32,91,93,59,32,118,97,114,32,109,101,109,32,61,32,110,101,119,32,85,105,110,116,51,50,65,114,114,97,121,40,72,69,65,80,85,56,46,98,117,102,102,101,114,44,32,113,117,97,108,105,116,105,101,115,65,100,100,114,44,32,110,117,109,81,117,97,108,105,116,105,101,115,32,42,32,50,41,59,32,118,97,114,32,109,101,109,73,116,101,114,32,61,32,48,59,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,60,110,117,109,81,117,97,108,105,116,105,101,115,
59,32,105,43,43,41,32,123,32,118,97,114,32,113,117,97,108,105,116,121,32,61,32,123,125,59,32,113,117,97,108,105,116,121,91,34,105,100,34,93,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,109,101,109,91,109,101,109,73,116,101,114,93,41,59,32,113,117,97,108,105,116,121,91,34,98,97,110,100,119,105,100,116,104,34,93,32,61,32,109,101,109,91,109,101,109,73,116,101,114,43,49,93,59,32,109,101,109,73,116,101,114,43,61,50,59,32,106,115,65,114,114,97,121,46,112,117,115,104,40,
113,117,97,108,105,116,121,41,59,32,125,32,118,97,114,32,99,97,108,108,98,97,99,107,32,61,32,102,117,110,99,116,105,111,110,32,114,101,113,117,101,115,116,65,117,100,105,111,81,117,97,108,105,116,121,67,104,97,110,103,101,40,113,117,97,108,105,116,121,41,32,123,32,118,97,114,32,99,73,100,32,61,32,118,98,108,105,98,46,106,115,83,116,114,105,110,103,84,111,67,83,116,114,40,113,117,97,108,105,116,121,91,34,105,100,34,93,41,59,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,
101,114,40,36,53,44,32,39,118,105,105,105,39,41,40,36,52,44,32,99,73,100,91,48,93,44,32,99,73,100,91,49,93,41,59,32,125,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,65,117,100,105,111,81,117,97,108,105,116,105,101,115,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,65,117,100,105,111,81,117,97,108,105,116,105,101,115,39,93,40,106,115,65,114,114,97,121,44,
32,99,97,108,108,98,97,99,107,44,32,106,115,65,114,114,97,121,91,99,117,114,114,101,110,116,81,117,97,108,105,116,121,73,100,120,93,41,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,81,117,97,108,105,116,121,67,104,97,110,103,101,39,
93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,81,117,97,108,105,116,121,67,104,97,110,103,101,39,93,40,36,49,41,59,32,125,32,125,0,123,32,118,97,114,32,118,97,114,105,97,110,116,115,32,61,32,91,93,59,32,118,97,114,32,118,97,114,105,97,110,116,115,86,101,99,116,32,61,32,36,49,59,32,118,97,114,32,105,110,116,83,105,122,101,32,61,32,36,50,59,32,118,97,114,32,118,97,114,105,97,110,116,76,105,110,101,115,32,61,32,36,51,59,32,118,97,114,32,101,108,101,109,115,80,101,
114,86,97,114,105,97,110,116,32,61,32,52,59,32,102,111,114,32,40,118,97,114,32,105,32,61,32,48,59,32,105,32,60,32,118,97,114,105,97,110,116,76,105,110,101,115,42,101,108,101,109,115,80,101,114,86,97,114,105,97,110,116,59,32,105,43,61,101,108,101,109,115,80,101,114,86,97,114,105,97,110,116,41,32,123,32,118,97,114,32,118,97,114,105,97,110,116,32,61,32,123,125,59,32,118,97,114,105,97,110,116,91,39,98,105,116,114,97,116,101,39,93,32,61,32,103,101,116,86,97,108,117,101,40,118,97,114,105,97,110,116,115,
86,101,99,116,32,43,32,40,40,105,32,43,32,48,41,32,42,32,105,110,116,83,105,122,101,41,44,32,39,105,51,50,39,41,59,32,118,97,114,105,97,110,116,91,39,104,111,114,105,122,111,110,116,97,108,82,101,115,111,108,117,116,105,111,110,39,93,32,61,32,103,101,116,86,97,108,117,101,40,118,97,114,105,97,110,116,115,86,101,99,116,32,43,32,40,40,105,32,43,32,49,41,32,42,32,105,110,116,83,105,122,101,41,44,32,39,105,51,50,39,41,59,32,118,97,114,105,97,110,116,91,39,118,101,114,116,105,99,97,108,82,101,115,111,
108,117,116,105,111,110,39,93,32,61,32,103,101,116,86,97,108,117,101,40,118,97,114,105,97,110,116,115,86,101,99,116,32,43,32,40,40,105,32,43,32,50,41,32,42,32,105,110,116,83,105,122,101,41,44,32,39,105,51,50,39,41,59,32,118,97,114,105,97,110,116,46,118,105,100,101,111,32,61,32,103,101,116,86,97,108,117,101,40,118,97,114,105,97,110,116,115,86,101,99,116,32,43,32,40,40,105,32,43,32,51,41,32,42,32,105,110,116,83,105,122,101,41,44,32,39,105,51,50,39,41,59,32,118,97,114,105,97,110,116,115,46,112,117,115,
104,40,118,97,114,105,97,110,116,41,59,32,125,32,118,97,114,32,99,97,108,108,98,97,99,107,32,61,32,102,117,110,99,116,105,111,110,32,114,101,113,117,101,115,116,81,117,97,108,105,116,121,67,104,97,110,103,101,40,110,101,119,66,105,116,114,97,116,101,41,32,123,32,82,117,110,116,105,109,101,46,103,101,116,70,117,110,99,87,114,97,112,112,101,114,40,36,53,44,32,39,118,105,105,39,41,40,36,52,44,32,110,101,119,66,105,116,114,97,116,101,41,59,32,125,59,32,118,97,114,32,99,117,114,114,101,110,116,81,117,
97,108,105,116,121,73,100,120,32,61,32,36,54,59,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,65,118,97,105,108,97,98,108,101,86,97,114,105,97,110,116,115,85,112,100,97,116,101,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,
111,110,65,118,97,105,108,97,98,108,101,86,97,114,105,97,110,116,115,85,112,100,97,116,101,39,93,40,118,97,114,105,97,110,116,115,44,32,99,97,108,108,98,97,99,107,44,32,118,97,114,105,97,110,116,115,91,99,117,114,114,101,110,116,81,117,97,108,105,116,121,73,100,120,93,44,36,55,41,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,
114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,67,111,109,109,74,111,105,110,101,100,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,67,111,109,109,74,111,105,110,101,100,39,93,40,41,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,
114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,80,101,101,114,66,108,97,99,107,108,105,115,116,101,100,39,93,41,32,123,32,118,97,114,32,112,101,101,114,32,61,32,123,125,59,32,112,101,101,114,46,105,100,32,61,32,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,49,41,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,80,101,101,114,66,108,97,99,107,108,105,115,116,101,100,39,93,40,112,101,101,114,41,59,32,110,97,116,105,
118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,98,108,97,99,107,108,105,115,116,101,100,39,93,32,61,32,36,50,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,112,101,114,109,97,110,101,110,116,108,121,66,108,97,99,107,108,105,115,116,101,100,39,93,32,61,32,36,51,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,
32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,67,104,117,110,107,85,112,108,111,97,100,101,100,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,67,104,117,110,107,85,112,108,111,97,100,101,100,39,93,40,36,49,41,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,
101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,72,97,118,101,39,93,41,32,123,32,118,97,114,32,112,101,101,114,32,61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,112,101,101,114,91,39,105,115,67,68,78,80,101,101,114,39,93,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,114,101,116,117,114,110,32,36,50,125,59,
32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,72,97,118,101,39,93,40,112,101,101,114,44,32,36,49,44,32,36,51,41,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,
108,77,97,110,97,103,101,114,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,116,111,116,97,108,85,112,108,111,97,100,101,100,84,111,83,119,97,114,109,39,93,32,61,32,36,49,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,116,111,116,97,108,68,111,119,110,108,111,97,100,101,100,70,114,111,109,83,119,97,114,109,39,93,32,61,32,36,
50,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,116,111,116,97,108,68,111,119,110,108,111,97,100,101,100,70,114,111,109,67,100,110,39,93,32,61,32,36,51,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,97,98,105,39,93,32,61,32,36,52,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,
101,114,39,93,91,39,112,108,97,121,101,100,67,104,117,110,107,39,93,32,61,32,36,53,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,99,104,97,110,110,101,108,77,97,110,97,103,101,114,39,93,91,39,108,97,115,116,79,102,102,115,101,116,79,102,102,101,114,39,93,32,61,32,36,54,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,
115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,85,112,100,97,116,101,87,105,110,100,111,119,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,85,112,100,97,116,101,87,105,110,100,111,119,39,93,40,36,49,44,32,36,50,41,59,32,125,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,
105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,80,101,101,114,83,116,111,112,112,101,100,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,80,101,101,114,83,116,111,112,112,101,100,39,93,40,36,49,41,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,118,98,71,101,116,79,98,106,40,36,
48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,80,101,101,114,83,116,97,114,116,101,100,39,93,41,32,123,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,80,101,101,114,83,116,97,114,116,101,100,39,93,40,36,49,41,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,118,97,114,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,61,32,118,98,108,105,98,46,
118,98,71,101,116,79,98,106,40,36,48,41,59,32,105,102,32,40,110,97,116,105,118,101,79,98,115,101,114,118,101,114,32,38,38,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,67,104,117,110,107,68,111,119,110,108,111,97,100,101,100,39,93,41,32,123,32,118,97,114,32,112,101,101,114,32,61,32,110,101,119,32,79,98,106,101,99,116,40,41,59,32,112,101,101,114,91,39,105,115,67,68,78,80,101,101,114,39,93,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,114,101,116,117,114,110,32,36,50,
125,59,32,110,97,116,105,118,101,79,98,115,101,114,118,101,114,91,39,111,110,67,104,117,110,107,68,111,119,110,108,111,97,100,101,100,39,93,40,36,49,44,32,112,101,101,114,41,59,32,125,32,114,101,116,117,114,110,32,48,59,32,125,0,123,32,86,105,98,108,97,115,116,46,100,101,98,117,103,73,110,102,111,46,101,114,114,111,114,40,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,44,32,36,49,41,41,59,32,125,0,65,32,118,97,108,105,100,32,74,83,79,78,32,100,111,99,117,109,101,110,116,
32,109,117,115,116,32,98,101,32,101,105,116,104,101,114,32,97,110,32,97,114,114,97,121,32,111,114,32,97,110,32,111,98,106,101,99,116,32,118,97,108,117,101,46,0,114,117,101,0,97,108,115,101,0,117,108,108,0,83,121,110,116,97,120,32,101,114,114,111,114,58,32,118,97,108,117,101,44,32,111,98,106,101,99,116,32,111,114,32,97,114,114,97,121,32,101,120,112,101,99,116,101,100,46,0,69,109,112,116,121,32,101,115,99,97,112,101,32,115,101,113,117,101,110,99,101,32,105,110,32,115,116,114,105,110,103,0,66,97,100,
32,101,115,99,97,112,101,32,115,101,113,117,101,110,99,101,32,105,110,32,115,116,114,105,110,103,0,97,100,100,105,116,105,111,110,97,108,32,115,105,120,32,99,104,97,114,97,99,116,101,114,115,32,101,120,112,101,99,116,101,100,32,116,111,32,112,97,114,115,101,32,117,110,105,99,111,100,101,32,115,117,114,114,111,103,97,116,101,32,112,97,105,114,46,0,101,120,112,101,99,116,105,110,103,32,97,110,111,116,104,101,114,32,92,117,32,116,111,107,101,110,32,116,111,32,98,101,103,105,110,32,116,104,101,32,115,
101,99,111,110,100,32,104,97,108,102,32,111,102,32,97,32,117,110,105,99,111,100,101,32,115,117,114,114,111,103,97,116,101,32,112,97,105,114,0,66,97,100,32,117,110,105,99,111,100,101,32,101,115,99,97,112,101,32,115,101,113,117,101,110,99,101,32,105,110,32,115,116,114,105,110,103,58,32,102,111,117,114],"i8",4,x.D+92160);
M([32,100,105,103,105,116,115,32,101,120,112,101,99,116,101,100,46,0,66,97,100,32,117,110,105,99,111,100,101,32,101,115,99,97,112,101,32,115,101,113,117,101,110,99,101,32,105,110,32,115,116,114,105,110,103,58,32,104,101,120,97,100,101,99,105,109,97,108,32,100,105,103,105,116,32,101,120,112,101,99,116,101,100,46,0,39,0,39,32,105,115,32,110,111,116,32,97,32,110,117,109,98,101,114,46,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,116,111,107,101,110,32,108,101,110,103,116,104,0,77,105,115,
115,105,110,103,32,39,44,39,32,111,114,32,39,93,39,32,105,110,32,97,114,114,97,121,32,100,101,99,108,97,114,97,116,105,111,110,0,77,105,115,115,105,110,103,32,39,58,39,32,97,102,116,101,114,32,111,98,106,101,99,116,32,109,101,109,98,101,114,32,110,97,109,101,0,77,105,115,115,105,110,103,32,39,44,39,32,111,114,32,39,125,39,32,105,110,32,111,98,106,101,99,116,32,100,101,99,108,97,114,97,116,105,111,110,0,77,105,115,115,105,110,103,32,39,125,39,32,111,114,32,111,98,106,101,99,116,32,109,101,109,98,101,
114,32,110,97,109,101,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,115,116,114,105,110,103,32,118,97,108,117,101,32,98,117,102,102,101,114,0,67,111,109,109,101,110,116,115,32,109,117,115,116,32,115,116,97,114,116,32,119,105,116,104,32,47,0,84,121,112,101,32,105,115,32,110,111,116,32,99,111,110,118,101,114,116,105,98,108,101,32,116,111,32,115,116,114,105,110,103,0,76,97,114,103,101,115,116,73,110,116,32,111,117,116,32,111,102,32,73,110,116,32,114,97,110,103,101,0,76,97,114,
103,101,115,116,85,73,110,116,32,111,117,116,32,111,102,32,73,110,116,32,114,97,110,103,101,0,100,111,117,98,108,101,32,111,117,116,32,111,102,32,73,110,116,32,114,97,110,103,101,0,86,97,108,117,101,32,105,115,32,110,111,116,32,99,111,110,118,101,114,116,105,98,108,101,32,116,111,32,73,110,116,46,0,76,97,114,103,101,115,116,73,110,116,32,111,117,116,32,111,102,32,85,73,110,116,32,114,97,110,103,101,0,76,97,114,103,101,115,116,85,73,110,116,32,111,117,116,32,111,102,32,85,73,110,116,32,114,97,110,
103,101,0,100,111,117,98,108,101,32,111,117,116,32,111,102,32,85,73,110,116,32,114,97,110,103,101,0,86,97,108,117,101,32,105,115,32,110,111,116,32,99,111,110,118,101,114,116,105,98,108,101,32,116,111,32,85,73,110,116,46,0,76,97,114,103,101,115,116,85,73,110,116,32,111,117,116,32,111,102,32,73,110,116,54,52,32,114,97,110,103,101,0,100,111,117,98,108,101,32,111,117,116,32,111,102,32,73,110,116,54,52,32,114,97,110,103,101,0,86,97,108,117,101,32,105,115,32,110,111,116,32,99,111,110,118,101,114,116,105,
98,108,101,32,116,111,32,73,110,116,54,52,46,0,76,97,114,103,101,115,116,73,110,116,32,111,117,116,32,111,102,32,85,73,110,116,54,52,32,114,97,110,103,101,0,100,111,117,98,108,101,32,111,117,116,32,111,102,32,85,73,110,116,54,52,32,114,97,110,103,101,0,86,97,108,117,101,32,105,115,32,110,111,116,32,99,111,110,118,101,114,116,105,98,108,101,32,116,111,32,85,73,110,116,54,52,46,0,86,97,108,117,101,32,105,115,32,110,111,116,32,99,111,110,118,101,114,116,105,98,108,101,32,116,111,32,100,111,117,98,108,
101,46,0,86,97,108,117,101,32,105,115,32,110,111,116,32,99,111,110,118,101,114,116,105,98,108,101,32,116,111,32,98,111,111,108,46,0,10,0,110,117,108,108,0,91,0,93,0,44,0,123,0,125,0,34,92,8,12,10,13,9,0,34,0,92,34,0,92,92,0,92,98,0,92,102,0,92,110,0,92,114,0,92,116,0,92,117,0,37,35,46,49,54,103,0,32,0,123,125,0,32,58,32,0,91,93,0,91,32,0,32,93,0,44,32,0,9,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,
70,0,78,65,78,0,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,
97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,
112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,
108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,
97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,
120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,
0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,
97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,
105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,
101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,
105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,
116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,
99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,
97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,110,97,110,0,80,79,83,73,88,0,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,50,57,98,97,115,105,
99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,
49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,
105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,78,83,116,51,95,95,50,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,
83,116,51,95,95,50,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,50,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,50,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,50,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,50,55,99,111,108,108,97,116,101,73,119,69,69,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,37,112,0,67,0,78,83,116,51,95,95,50,
55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,50,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,
111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,37,112,0,0,0,0,76,0,108,108,0,37,0,0,0,0,0,108,0,78,83,116,51,95,95,50,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,112,
117,116,73,99,69,69,0,78,83,116,51,95,95,50,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,37,72,58,37,77,58,37,83,0,37,109,47,37,100,47,37,121,0,37,73,58,37,77,58,37,83,32,37,112,
0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,65,77,0,80,77,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,
68,101,99,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,37,72,58,37,77,58,37,83,78,83,116,51,95,95,50,56,116,105,109,101,95,103,101,
116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,50,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,
111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,48,95,95,116,105,109,101,95,
112,117,116,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,
69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,
50,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,48,49,50,51,52,53,54,55,56,57,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,37,46,48,76,102,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,112,117,116,
73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,
69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,50,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,50,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,49,50,
99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,50,56,109,101,115,115,97,103,101,115,73,119,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,
118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,50,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,50,49,48,99,116,121,112,101,95,98,97,115,101,69,0,78,83,116,51,95,95,50,53,99,116,121,112,101,73,119,69,69,0,102,97,108,115,101,0,116,114,117,101,0,78,83,116,51,95,95,50,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,50,56,110,117,109,112,117,110,99,116,73,
119,69,69,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,78,83,116,51,95,95,50,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,
109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,111,117,116,95,111,102,95,114,97,110,103,101,34,0,95,95,116,104,114,111,119,95,111,117,116,95,111,102,95,114,97,110,103,101,0,33,34,97,108,108,111,99,97,116,111,114,60,84,62,58,58,97,108,108,111,99,97,116,101,58,58,98,97,100,95,97,108,108,111,99,34,0,47,101,109,115,99,114,105,112,116,
101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,109,101,109,111,114,121,0,97,108,108,111,99,97,116,101,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,83,116,57,116,121,112,101,95,105,110,102,111,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,
115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0],"i8",4,x.D+102400);var Bb=y;y+=16;function Cb(){F()}function Db(){return w||"undefined"!==typeof dateNow||(na||pa)&&self.performance&&self.performance.now}
var O={Y:1,L:2,Ve:3,Sd:4,P:5,sb:6,ld:7,pe:8,ra:9,zd:10,ob:11,ef:11,dc:12,La:13,Ld:14,Be:15,Ma:16,pb:17,ff:18,Oa:19,qb:20,fa:21,s:22,ke:23,cc:24,ga:25,bf:26,Md:27,xe:28,sa:29,Se:30,de:31,Le:32,Id:33,Pe:34,te:42,Pd:43,Ad:44,Vd:45,Wd:46,Xd:47,ce:48,cf:49,ne:50,Ud:51,Fd:35,qe:37,rd:52,ud:53,gf:54,le:55,vd:56,wd:57,Gd:35,xd:59,ze:60,oe:61,Ze:62,ye:63,ue:64,ve:65,Re:66,re:67,od:68,We:69,Bd:70,Me:71,fe:72,Jd:73,td:74,Ge:76,sd:77,Qe:78,Yd:79,Zd:80,be:81,ae:82,$d:83,Ae:38,rb:39,ge:36,Na:40,He:95,Ke:96,Ed:104,
me:105,pd:97,Oe:91,Ee:88,we:92,Te:108,Dd:111,md:98,Cd:103,je:101,he:100,$e:110,Nd:112,Od:113,Rd:115,qd:114,Hd:89,ee:90,Ne:93,Ue:94,nd:99,ie:102,Td:106,Ce:107,af:109,df:87,Kd:122,Xe:116,Fe:95,se:123,Qd:84,Ie:75,yd:125,De:131,Je:130,Ye:86};function Eb(b){v.___errno_location&&(z[v.___errno_location()>>2]=b);return b}v._i64Subtract=Fb;v._memset=Gb;v._pthread_mutex_lock=Hb;function Ib(b){return 0===b%4&&(0!==b%100||0===b%400)}function Jb(b,c){for(var d=0,e=0;e<=c;d+=b[e++]);return d}
var Kb=[31,29,31,30,31,30,31,31,30,31,30,31],Lb=[31,28,31,30,31,30,31,31,30,31,30,31];function Mb(b,c){for(var d=new Date(b.getTime());0<c;){var e=d.getMonth(),f=(Ib(d.getFullYear())?Kb:Lb)[e];if(c>f-d.getDate())c-=f-d.getDate()+1,d.setDate(1),11>e?d.setMonth(e+1):(d.setMonth(0),d.setFullYear(d.getFullYear()+1));else{d.setDate(d.getDate()+c);break}}return d}
function Nb(b,c,d,e){function f(b,c,d){for(b="number"===typeof b?b.toString():b||"";b.length<c;)b=d[0]+b;return b}function g(b,c){return f(b,c,"0")}function k(b,c){function d(b){return 0>b?-1:0<b?1:0}var e;0===(e=d(b.getFullYear()-c.getFullYear()))&&0===(e=d(b.getMonth()-c.getMonth()))&&(e=d(b.getDate()-c.getDate()));return e}function l(b){switch(b.getDay()){case 0:return new Date(b.getFullYear()-1,11,29);case 1:return b;case 2:return new Date(b.getFullYear(),0,3);case 3:return new Date(b.getFullYear(),
0,2);case 4:return new Date(b.getFullYear(),0,1);case 5:return new Date(b.getFullYear()-1,11,31);case 6:return new Date(b.getFullYear()-1,11,30)}}function q(b){b=Mb(new Date(b.q+1900,0,1),b.Ja);var c=l(new Date(b.getFullYear()+1,0,4));return 0>=k(l(new Date(b.getFullYear(),0,4)),b)?0>=k(c,b)?b.getFullYear()+1:b.getFullYear():b.getFullYear()-1}var n=z[e+40>>2];e={ed:z[e>>2],dd:z[e+4>>2],Ia:z[e+8>>2],W:z[e+12>>2],O:z[e+16>>2],q:z[e+20>>2],Zb:z[e+24>>2],Ja:z[e+28>>2],Wf:z[e+32>>2],cd:z[e+36>>2],gd:n?
G(n):""};d=G(d);var n={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"},r;for(r in n)d=d.replace(new RegExp(r,"g"),n[r]);var B="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),C="January February March April May June July August September October November December".split(" "),n={"%a":function(b){return B[b.Zb].substring(0,3)},"%A":function(b){return B[b.Zb]},"%b":function(b){return C[b.O].substring(0,
3)},"%B":function(b){return C[b.O]},"%C":function(b){return g((b.q+1900)/100|0,2)},"%d":function(b){return g(b.W,2)},"%e":function(b){return f(b.W,2," ")},"%g":function(b){return q(b).toString().substring(2)},"%G":function(b){return q(b)},"%H":function(b){return g(b.Ia,2)},"%I":function(b){b=b.Ia;0==b?b=12:12<b&&(b-=12);return g(b,2)},"%j":function(b){return g(b.W+Jb(Ib(b.q+1900)?Kb:Lb,b.O-1),3)},"%m":function(b){return g(b.O+1,2)},"%M":function(b){return g(b.dd,2)},"%n":function(){return"\n"},"%p":function(b){return 0<=
b.Ia&&12>b.Ia?"AM":"PM"},"%S":function(b){return g(b.ed,2)},"%t":function(){return"\t"},"%u":function(b){return(new Date(b.q+1900,b.O+1,b.W,0,0,0,0)).getDay()||7},"%U":function(b){var c=new Date(b.q+1900,0,1),d=0===c.getDay()?c:Mb(c,7-c.getDay());b=new Date(b.q+1900,b.O,b.W);return 0>k(d,b)?g(Math.ceil((31-d.getDate()+(Jb(Ib(b.getFullYear())?Kb:Lb,b.getMonth()-1)-31)+b.getDate())/7),2):0===k(d,c)?"01":"00"},"%V":function(b){var c=l(new Date(b.q+1900,0,4)),d=l(new Date(b.q+1901,0,4)),e=Mb(new Date(b.q+
1900,0,1),b.Ja);return 0>k(e,c)?"53":0>=k(d,e)?"01":g(Math.ceil((c.getFullYear()<b.q+1900?b.Ja+32-c.getDate():b.Ja+1-c.getDate())/7),2)},"%w":function(b){return(new Date(b.q+1900,b.O+1,b.W,0,0,0,0)).getDay()},"%W":function(b){var c=new Date(b.q,0,1),d=1===c.getDay()?c:Mb(c,0===c.getDay()?1:7-c.getDay()+1);b=new Date(b.q+1900,b.O,b.W);return 0>k(d,b)?g(Math.ceil((31-d.getDate()+(Jb(Ib(b.getFullYear())?Kb:Lb,b.getMonth()-1)-31)+b.getDate())/7),2):0===k(d,c)?"01":"00"},"%y":function(b){return(b.q+1900).toString().substring(2)},
"%Y":function(b){return b.q+1900},"%z":function(b){b=b.cd;var c=0<=b;b=Math.abs(b)/60;return(c?"+":"-")+String("0000"+(b/60*100+b%60)).slice(-4)},"%Z":function(b){return b.gd},"%%":function(){return"%"}};for(r in n)0<=d.indexOf(r)&&(d=d.replace(new RegExp(r,"g"),n[r](e)));r=p(d,!1);if(r.length>c)return 0;Ba(r,b);return r.length-1}
function Ob(b,c){Pb=b;Qb=c;if(!Rb)return 1;if(0==b)Sb=function(){var b=Math.max(0,Tb+c-Cb())|0;setTimeout(Ub,b)},Vb="timeout";else if(1==b)Sb=function(){Wb(Ub)},Vb="rAF";else if(2==b){if(!window.setImmediate){var d=[];window.addEventListener("message",function(b){b.source===window&&"setimmediate"===b.data&&(b.stopPropagation(),d.shift()())},!0);window.setImmediate=function(b){d.push(b);pa?(void 0===v.setImmediates&&(v.setImmediates=[]),v.setImmediates.push(b),window.postMessage({target:"setimmediate"})):
window.postMessage("setimmediate","*")}}Sb=function(){window.setImmediate(Ub)};Vb="immediate"}return 0}
function Xb(b,c,d,e,f){v.noExitRuntime=!0;assert(!Rb,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Rb=b;Yb=e;var g;if("undefined"!==typeof e){var k=[e];g=function(){x.p("vi",b,k)}}else g=function(){x.p("v",b)};var l=Zb;Ub=function(){if(!E)if(0<$b.length){var b=Date.now(),c=$b.shift();c.I(c.S);if(ac){var d=ac,e=0==d%1?d-1:Math.floor(d);ac=c.pf?e:(8*d+(e+.5))/
9}console.log('main loop blocker "'+c.name+'" took '+(Date.now()-b)+" ms");v.setStatus&&(b=v.statusMessage||"Please wait...",c=ac,d=bc.tf,c?c<d?v.setStatus(b+" ("+(d-c)+"/"+d+")"):v.setStatus(b):v.setStatus(""));l<Zb||setTimeout(Ub,0)}else if(!(l<Zb))if(cc=cc+1|0,1==Pb&&1<Qb&&0!=cc%Qb)Sb();else{0==Pb&&(Tb=Cb());"timeout"===Vb&&v.i&&(v.U("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),
Vb="");a:if(b=g,!(E||v.preMainLoop&&!1===v.preMainLoop())){try{b()}catch(f){if(f instanceof ua)break a;f&&"object"===typeof f&&f.stack&&v.U("exception thrown: "+[f,f.stack]);throw f;}v.postMainLoop&&v.postMainLoop()}l<Zb||("object"===typeof SDL&&SDL.audio&&SDL.audio.Rc&&SDL.audio.Rc(),Sb())}};f||(c&&0<c?Ob(0,1E3/c):Ob(1,1),Sb());if(d)throw"SimulateInfiniteLoop";}var Sb=null,Vb="",Zb=0,Rb=null,Yb=0,Pb=0,Qb=0,cc=0,$b=[],bc={},Tb,Ub,ac,dc=!1,ec=!1,fc=[],gc=[];
function hc(){function b(){ec=document.pointerLockElement===d||document.mozPointerLockElement===d||document.webkitPointerLockElement===d||document.msPointerLockElement===d}v.preloadPlugins||(v.preloadPlugins=[]);if(!ic){ic=!0;try{jc=!0}catch(c){jc=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}kc="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:jc?null:console.log("warning: no BlobBuilder");lc="undefined"!=
typeof window?window.URL?window.URL:window.webkitURL:void 0;v.Wb||"undefined"!==typeof lc||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),v.Wb=!0);v.preloadPlugins.push({canHandle:function(b){return!v.Wb&&/\.(jpg|jpeg|png|bmp)$/i.test(b)},handle:function(b,c,d,k){var l=null;if(jc)try{l=new Blob([b],{type:mc(c)}),l.size!==b.length&&(l=new Blob([(new Uint8Array(b)).buffer],{type:mc(c)}))}catch(q){x.X("Blob constructor present but fails: "+
q+"; falling back to blob builder")}l||(l=new kc,l.append((new Uint8Array(b)).buffer),l=l.getBlob());var n=lc.createObjectURL(l),r=new Image;r.onload=function(){assert(r.complete,"Image "+c+" could not be decoded");var k=document.createElement("canvas");k.width=r.width;k.height=r.height;k.getContext("2d").drawImage(r,0,0);v.preloadedImages[c]=k;lc.revokeObjectURL(n);d&&d(b)};r.onerror=function(){console.log("Image "+n+" could not be decoded");k&&k()};r.src=n}});v.preloadPlugins.push({canHandle:function(b){return!v.Rf&&
b.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(b,c,d,k){function l(k){n||(n=!0,v.preloadedAudios[c]=k,d&&d(b))}function q(){n||(n=!0,v.preloadedAudios[c]=new Audio,k&&k())}var n=!1;if(jc){try{var r=new Blob([b],{type:mc(c)})}catch(B){return q()}var r=lc.createObjectURL(r),C=new Audio;C.addEventListener("canplaythrough",function(){l(C)},!1);C.onerror=function(){if(!n){console.log("warning: browser could not fully decode audio "+c+", trying slower base64 approach");for(var d="",g=0,k=0,
r=0;r<b.length;r++)for(g=g<<8|b[r],k+=8;6<=k;)var q=g>>k-6&63,k=k-6,d=d+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[q];2==k?(d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(g&3)<<4],d+="=="):4==k&&(d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(g&15)<<2],d+="=");C.src="data:audio/x-"+c.substr(-3)+";base64,"+d;l(C)}};C.src=r;nc(function(){l(C)})}else return q()}});var d=v.canvas;d&&(d.gb=d.requestPointerLock||d.mozRequestPointerLock||
d.webkitRequestPointerLock||d.msRequestPointerLock||function(){},d.Hb=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},d.Hb=d.Hb.bind(document),document.addEventListener("pointerlockchange",b,!1),document.addEventListener("mozpointerlockchange",b,!1),document.addEventListener("webkitpointerlockchange",b,!1),document.addEventListener("mspointerlockchange",b,!1),v.elementPointerLock&&d.addEventListener("click",function(b){!ec&&
d.gb&&(d.gb(),b.preventDefault())},!1))}}function oc(b,c,d,e){if(c&&v.i&&b==v.canvas)return v.i;var f,g;if(c){g={antialias:!1,alpha:!1};if(e)for(var k in e)g[k]=e[k];if(g=GL.createContext(b,g))f=GL.getContext(g).GLctx}else f=b.getContext("2d");if(!f)return null;d&&(c||assert("undefined"===typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),v.i=f,c&&GL.Mf(g),v.Xf=c,fc.forEach(function(b){b()}),hc());return f}var pc=!1,qc=void 0,rc=void 0;
function sc(b,c,d){function e(){dc=!1;var b=f.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===b?(f.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},f.exitFullscreen=f.exitFullscreen.bind(document),qc&&f.gb(),dc=!0,rc&&tc()):(b.parentNode.insertBefore(f,
b),b.parentNode.removeChild(b),rc&&uc());if(v.onFullScreen)v.onFullScreen(dc);if(v.onFullscreen)v.onFullscreen(dc);vc(f)}qc=b;rc=c;wc=d;"undefined"===typeof qc&&(qc=!0);"undefined"===typeof rc&&(rc=!1);"undefined"===typeof wc&&(wc=null);var f=v.canvas;pc||(pc=!0,document.addEventListener("fullscreenchange",e,!1),document.addEventListener("mozfullscreenchange",e,!1),document.addEventListener("webkitfullscreenchange",e,!1),document.addEventListener("MSFullscreenChange",e,!1));var g=document.createElement("div");
f.parentNode.insertBefore(g,f);g.appendChild(f);g.requestFullscreen=g.requestFullscreen||g.mozRequestFullScreen||g.msRequestFullscreen||(g.webkitRequestFullscreen?function(){g.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(g.webkitRequestFullScreen?function(){g.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null);d?g.requestFullscreen({Yf:d}):g.requestFullscreen()}
function xc(b,c,d){v.U("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead.");xc=function(b,c,d){return sc(b,c,d)};return sc(b,c,d)}var yc=0;function zc(b){var c=Date.now();if(0===yc)yc=c+1E3/60;else for(;c+2>=yc;)yc+=1E3/60;c=Math.max(yc-c,0);setTimeout(b,c)}
function Wb(b){"undefined"===typeof window?zc(b):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||zc),window.requestAnimationFrame(b))}function nc(b){v.noExitRuntime=!0;setTimeout(function(){E||b()},1E4)}
function mc(b){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[b.substr(b.lastIndexOf(".")+1)]}function Ac(b,c,d){var e="al "+b;v.readAsync(b,function(d){assert(d,'Loading data file "'+b+'" failed (no arrayBuffer).');c(new Uint8Array(d));e&&vb()},function(){if(d)d();else throw'Loading data file "'+b+'" failed.';});e&&ub()}var Bc=[];function Cc(){var b=v.canvas;Bc.forEach(function(c){c(b.width,b.height)})}
function tc(){if("undefined"!=typeof SDL){var b=Ya[SDL.screen+0*x.M>>2];z[SDL.screen+0*x.M>>2]=b|8388608}Cc()}function uc(){if("undefined"!=typeof SDL){var b=Ya[SDL.screen+0*x.M>>2];z[SDL.screen+0*x.M>>2]=b&-8388609}Cc()}
function vc(b,c,d){c&&d?(b.kd=c,b.Gc=d):(c=b.kd,d=b.Gc);var e=c,f=d;v.forcedAspectRatio&&0<v.forcedAspectRatio&&(e/f<v.forcedAspectRatio?e=Math.round(f*v.forcedAspectRatio):f=Math.round(e/v.forcedAspectRatio));if((document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===b.parentNode&&"undefined"!=typeof screen)var g=Math.min(screen.width/e,screen.height/f),e=Math.round(e*g),f=Math.round(f*
g);rc?(b.width!=e&&(b.width=e),b.height!=f&&(b.height=f),"undefined"!=typeof b.style&&(b.style.removeProperty("width"),b.style.removeProperty("height"))):(b.width!=c&&(b.width=c),b.height!=d&&(b.height=d),"undefined"!=typeof b.style&&(e!=c||f!=d?(b.style.setProperty("width",e+"px","important"),b.style.setProperty("height",f+"px","important")):(b.style.removeProperty("width"),b.style.removeProperty("height"))))}var ic,jc,kc,lc,wc;v._llvm_ctpop_i32=Dc;v._i64Add=Ec;v._memcpy=Fc;v._memmove=Gc;
function Hc(b){v.exit(b)}
var Ic={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",
24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",
44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",
65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can   access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",
82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",
100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",
122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function Jc(b,c){for(var d=0,e=b.length-1;0<=e;e--){var f=b[e];"."===f?b.splice(e,1):".."===f?(b.splice(e,1),d++):d&&(b.splice(e,1),d--)}if(c)for(;d--;d)b.unshift("..");return b}function Kc(b){var c="/"===b.charAt(0),d="/"===b.substr(-1);(b=Jc(b.split("/").filter(function(b){return!!b}),!c).join("/"))||c||(b=".");b&&d&&(b+="/");return(c?"/":"")+b}
function Lc(b){var c=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(b).slice(1);b=c[0];c=c[1];if(!b&&!c)return".";c&&(c=c.substr(0,c.length-1));return b+c}function Mc(b){if("/"===b)return"/";var c=b.lastIndexOf("/");return-1===c?b:b.substr(c+1)}function Nc(){var b=Array.prototype.slice.call(arguments,0);return Kc(b.join("/"))}function P(b,c){return Kc(b+"/"+c)}
function Oc(){for(var b="",c=!1,d=arguments.length-1;-1<=d&&!c;d--){c=0<=d?arguments[d]:"/";if("string"!==typeof c)throw new TypeError("Arguments to path.resolve must be strings");if(!c)return"";b=c+"/"+b;c="/"===c.charAt(0)}b=Jc(b.split("/").filter(function(b){return!!b}),!c).join("/");return(c?"/":"")+b||"."}var Pc=[];function Qc(b,c){Pc[b]={input:[],output:[],ba:c};Rc(b,Sc)}
var Sc={open:function(b){var c=Pc[b.e.rdev];if(!c)throw new Q(O.Oa);b.tty=c;b.seekable=!1},close:function(b){b.tty.ba.flush(b.tty)},flush:function(b){b.tty.ba.flush(b.tty)},read:function(b,c,d,e){if(!b.tty||!b.tty.ba.Ob)throw new Q(O.sb);for(var f=0,g=0;g<e;g++){var k;try{k=b.tty.ba.Ob(b.tty)}catch(l){throw new Q(O.P);}if(void 0===k&&0===f)throw new Q(O.ob);if(null===k||void 0===k)break;f++;c[d+g]=k}f&&(b.e.timestamp=Date.now());return f},write:function(b,c,d,e){if(!b.tty||!b.tty.ba.ab)throw new Q(O.sb);
for(var f=0;f<e;f++)try{b.tty.ba.ab(b.tty,c[d+f])}catch(g){throw new Q(O.P);}e&&(b.e.timestamp=Date.now());return f}},Tc={Ob:function(b){if(!b.input.length){var c=null;if(w){var d=new Buffer(256),e=0,f=process.stdin.fd;if("win32"!=process.platform){var g=!1;try{f=fs.openSync("/dev/stdin","r"),g=!0}catch(k){}}try{e=fs.readSync(f,d,0,256,null)}catch(l){if(-1!=l.toString().indexOf("EOF"))e=0;else throw l;}g&&fs.closeSync(f);0<e?c=d.slice(0,e).toString("utf-8"):c=null}else"undefined"!=typeof window&&
"function"==typeof window.prompt?(c=window.prompt("Input: "),null!==c&&(c+="\n")):"function"==typeof readline&&(c=readline(),null!==c&&(c+="\n"));if(!c)return null;b.input=p(c,!0)}return b.input.shift()},ab:function(b,c){null===c||10===c?(v.print(Qa(b.output,0)),b.output=[]):0!=c&&b.output.push(c)},flush:function(b){b.output&&0<b.output.length&&(v.print(Qa(b.output,0)),b.output=[])}},Uc={ab:function(b,c){null===c||10===c?(v.printErr(Qa(b.output,0)),b.output=[]):0!=c&&b.output.push(c)},flush:function(b){b.output&&
0<b.output.length&&(v.printErr(Qa(b.output,0)),b.output=[])}},S={H:null,B:function(){return S.createNode(null,"/",16895,0)},createNode:function(b,c,d,e){if(24576===(d&61440)||4096===(d&61440))throw new Q(O.Y);S.H||(S.H={dir:{e:{J:S.f.J,v:S.f.v,lookup:S.f.lookup,la:S.f.la,rename:S.f.rename,unlink:S.f.unlink,rmdir:S.f.rmdir,readdir:S.f.readdir,symlink:S.f.symlink},stream:{N:S.g.N}},file:{e:{J:S.f.J,v:S.f.v},stream:{N:S.g.N,read:S.g.read,write:S.g.write,vb:S.g.vb,Tb:S.g.Tb,Vb:S.g.Vb}},link:{e:{J:S.f.J,
v:S.f.v,readlink:S.f.readlink},stream:{}},Bb:{e:{J:S.f.J,v:S.f.v},stream:Vc}});d=Wc(b,c,d,e);T(d.mode)?(d.f=S.H.dir.e,d.g=S.H.dir.stream,d.c={}):32768===(d.mode&61440)?(d.f=S.H.file.e,d.g=S.H.file.stream,d.m=0,d.c=null):40960===(d.mode&61440)?(d.f=S.H.link.e,d.g=S.H.link.stream):8192===(d.mode&61440)&&(d.f=S.H.Bb.e,d.g=S.H.Bb.stream);d.timestamp=Date.now();b&&(b.c[c]=d);return d},Bc:function(b){if(b.c&&b.c.subarray){for(var c=[],d=0;d<b.m;++d)c.push(b.c[d]);return c}return b.c},yf:function(b){return b.c?
b.c.subarray?b.c.subarray(0,b.m):new Uint8Array(b.c):new Uint8Array},Ib:function(b,c){b.c&&b.c.subarray&&c>b.c.length&&(b.c=S.Bc(b),b.m=b.c.length);if(!b.c||b.c.subarray){var d=b.c?b.c.length:0;d>=c||(c=Math.max(c,d*(1048576>d?2:1.125)|0),0!=d&&(c=Math.max(c,256)),d=b.c,b.c=new Uint8Array(c),0<b.m&&b.c.set(d.subarray(0,b.m),0))}else for(!b.c&&0<c&&(b.c=[]);b.c.length<c;)b.c.push(0)},Vc:function(b,c){if(b.m!=c)if(0==c)b.c=null,b.m=0;else{if(!b.c||b.c.subarray){var d=b.c;b.c=new Uint8Array(new ArrayBuffer(c));
d&&b.c.set(d.subarray(0,Math.min(c,b.m)))}else if(b.c||(b.c=[]),b.c.length>c)b.c.length=c;else for(;b.c.length<c;)b.c.push(0);b.m=c}},f:{J:function(b){var c={};c.dev=8192===(b.mode&61440)?b.id:1;c.ino=b.id;c.mode=b.mode;c.nlink=1;c.uid=0;c.gid=0;c.rdev=b.rdev;T(b.mode)?c.size=4096:32768===(b.mode&61440)?c.size=b.m:40960===(b.mode&61440)?c.size=b.link.length:c.size=0;c.atime=new Date(b.timestamp);c.mtime=new Date(b.timestamp);c.ctime=new Date(b.timestamp);c.T=4096;c.blocks=Math.ceil(c.size/c.T);return c},
v:function(b,c){void 0!==c.mode&&(b.mode=c.mode);void 0!==c.timestamp&&(b.timestamp=c.timestamp);void 0!==c.size&&S.Vc(b,c.size)},lookup:function(){throw Xc[O.L];},la:function(b,c,d,e){return S.createNode(b,c,d,e)},rename:function(b,c,d){if(T(b.mode)){var e;try{e=Yc(c,d)}catch(f){}if(e)for(var g in e.c)throw new Q(O.rb);}delete b.parent.c[b.name];b.name=d;c.c[d]=b;b.parent=c},unlink:function(b,c){delete b.c[c]},rmdir:function(b,c){var d=Yc(b,c),e;for(e in d.c)throw new Q(O.rb);delete b.c[c]},readdir:function(b){var c=
[".",".."],d;for(d in b.c)b.c.hasOwnProperty(d)&&c.push(d);return c},symlink:function(b,c,d){b=S.createNode(b,c,41471,0);b.link=d;return b},readlink:function(b){if(40960!==(b.mode&61440))throw new Q(O.s);return b.link}},g:{read:function(b,c,d,e,f){var g=b.e.c;if(f>=b.e.m)return 0;b=Math.min(b.e.m-f,e);assert(0<=b);if(8<b&&g.subarray)c.set(g.subarray(f,f+b),d);else for(e=0;e<b;e++)c[d+e]=g[f+e];return b},write:function(b,c,d,e,f,g){if(!e)return 0;b=b.e;b.timestamp=Date.now();if(c.subarray&&(!b.c||
b.c.subarray)){if(g)return b.c=c.subarray(d,d+e),b.m=e;if(0===b.m&&0===f)return b.c=new Uint8Array(c.subarray(d,d+e)),b.m=e;if(f+e<=b.m)return b.c.set(c.subarray(d,d+e),f),e}S.Ib(b,f+e);if(b.c.subarray&&c.subarray)b.c.set(c.subarray(d,d+e),f);else for(g=0;g<e;g++)b.c[f+g]=c[d+g];b.m=Math.max(b.m,f+e);return e},N:function(b,c,d){1===d?c+=b.position:2===d&&32768===(b.e.mode&61440)&&(c+=b.e.m);if(0>c)throw new Q(O.s);return c},vb:function(b,c,d){S.Ib(b.e,c+d);b.e.m=Math.max(b.e.m,c+d)},Tb:function(b,
c,d,e,f,g,k){if(32768!==(b.e.mode&61440))throw new Q(O.Oa);d=b.e.c;if(k&2||d.buffer!==c&&d.buffer!==c.buffer){if(0<f||f+e<b.e.m)d.subarray?d=d.subarray(f,f+e):d=Array.prototype.slice.call(d,f,f+e);b=!0;e=ea(e);if(!e)throw new Q(O.dc);c.set(d,e)}else b=!1,e=d.byteOffset;return{Vf:e,kf:b}},Vb:function(b,c,d,e,f){if(32768!==(b.e.mode&61440))throw new Q(O.Oa);if(f&2)return 0;S.g.write(b,c,0,e,d,!1);return 0}}},U={Ca:!1,ad:function(){U.Ca=!!process.platform.match(/^win/)},B:function(b){assert(w);return U.createNode(null,
"/",U.Lb(b.$a.root),0)},createNode:function(b,c,d){if(!T(d)&&32768!==(d&61440)&&40960!==(d&61440))throw new Q(O.s);b=Wc(b,c,d);b.f=U.f;b.g=U.g;return b},Lb:function(b){var c;try{c=fs.lstatSync(b),U.Ca&&(c.mode=c.mode|(c.mode&146)>>1)}catch(d){if(!d.code)throw d;throw new Q(O[d.code]);}return c.mode},C:function(b){for(var c=[];b.parent!==b;)c.push(b.name),b=b.parent;c.push(b.B.$a.root);c.reverse();return Nc.apply(null,c)},Jb:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",
577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},zc:function(b){b&=-2099201;b&=-32769;b&=-524289;if(b in U.Jb)return U.Jb[b];throw new Q(O.s);},f:{J:function(b){b=U.C(b);var c;try{c=fs.lstatSync(b)}catch(d){if(!d.code)throw d;throw new Q(O[d.code]);}U.Ca&&!c.T&&(c.T=4096);U.Ca&&!c.blocks&&(c.blocks=(c.size+c.T-1)/c.T|0);return{dev:c.dev,ino:c.ino,mode:c.mode,nlink:c.nlink,uid:c.uid,gid:c.gid,rdev:c.rdev,
size:c.size,atime:c.atime,mtime:c.mtime,ctime:c.ctime,T:c.T,blocks:c.blocks}},v:function(b,c){var d=U.C(b);try{void 0!==c.mode&&(fs.chmodSync(d,c.mode),b.mode=c.mode),void 0!==c.size&&fs.truncateSync(d,c.size)}catch(e){if(!e.code)throw e;throw new Q(O[e.code]);}},lookup:function(b,c){var d=P(U.C(b),c),d=U.Lb(d);return U.createNode(b,c,d)},la:function(b,c,d,e){b=U.createNode(b,c,d,e);c=U.C(b);try{T(b.mode)?fs.mkdirSync(c,b.mode):fs.writeFileSync(c,"",{mode:b.mode})}catch(f){if(!f.code)throw f;throw new Q(O[f.code]);
}return b},rename:function(b,c,d){b=U.C(b);c=P(U.C(c),d);try{fs.renameSync(b,c)}catch(e){if(!e.code)throw e;throw new Q(O[e.code]);}},unlink:function(b,c){var d=P(U.C(b),c);try{fs.unlinkSync(d)}catch(e){if(!e.code)throw e;throw new Q(O[e.code]);}},rmdir:function(b,c){var d=P(U.C(b),c);try{fs.rmdirSync(d)}catch(e){if(!e.code)throw e;throw new Q(O[e.code]);}},readdir:function(b){b=U.C(b);try{return fs.readdirSync(b)}catch(c){if(!c.code)throw c;throw new Q(O[c.code]);}},symlink:function(b,c,d){b=P(U.C(b),
c);try{fs.symlinkSync(d,b)}catch(e){if(!e.code)throw e;throw new Q(O[e.code]);}},readlink:function(b){var c=U.C(b);try{return c=fs.readlinkSync(c),c=Zc.relative(Zc.resolve(b.B.$a.root),c)}catch(d){if(!d.code)throw d;throw new Q(O[d.code]);}}},g:{open:function(b){var c=U.C(b.e);try{32768===(b.e.mode&61440)&&(b.oa=fs.openSync(c,U.zc(b.flags)))}catch(d){if(!d.code)throw d;throw new Q(O[d.code]);}},close:function(b){try{32768===(b.e.mode&61440)&&b.oa&&fs.closeSync(b.oa)}catch(c){if(!c.code)throw c;throw new Q(O[c.code]);
}},read:function(b,c,d,e,f){if(0===e)return 0;var g=new Buffer(e),k;try{k=fs.readSync(b.oa,g,0,e,f)}catch(l){throw new Q(O[l.code]);}if(0<k)for(b=0;b<k;b++)c[d+b]=g[b];return k},write:function(b,c,d,e,f){c=new Buffer(c.subarray(d,d+e));var g;try{g=fs.writeSync(b.oa,c,0,e,f)}catch(k){throw new Q(O[k.code]);}return g},N:function(b,c,d){if(1===d)c+=b.position;else if(2===d&&32768===(b.e.mode&61440))try{c+=fs.fstatSync(b.oa).size}catch(e){throw new Q(O[e.code]);}if(0>c)throw new Q(O.s);return c}}};
y+=16;y+=16;y+=16;var $c=null,ad=[null],bd=[],cd=1,dd=null,ed=!0,fd={},Q=null,Xc={};
function gd(b,c){b=Oc("/",b);c=c||{};if(!b)return{path:"",e:null};var d={Kb:!0,fb:0},e;for(e in d)void 0===c[e]&&(c[e]=d[e]);if(8<c.fb)throw new Q(O.Na);var d=Jc(b.split("/").filter(function(b){return!!b}),!1),f=$c;e="/";for(var g=0;g<d.length;g++){var k=g===d.length-1;if(k&&c.parent)break;f=Yc(f,d[g]);e=P(e,d[g]);f.ma&&(!k||k&&c.Kb)&&(f=f.ma.root);if(!k||c.Sa)for(k=0;40960===(f.mode&61440);)if(f=hd(e),e=Oc(Lc(e),f),f=gd(e,{fb:c.fb}).e,40<k++)throw new Q(O.Na);}return{path:e,e:f}}
function id(b){for(var c;;){if(b===b.parent)return b=b.B.Ub,c?"/"!==b[b.length-1]?b+"/"+c:b+c:b;c=c?b.name+"/"+c:b.name;b=b.parent}}function jd(b,c){for(var d=0,e=0;e<c.length;e++)d=(d<<5)-d+c.charCodeAt(e)|0;return(b+d>>>0)%dd.length}function kd(b){var c=jd(b.parent.id,b.name);b.aa=dd[c];dd[c]=b}function Yc(b,c){var d;if(d=(d=ld(b,"x"))?d:b.f.lookup?0:O.La)throw new Q(d,b);for(d=dd[jd(b.id,c)];d;d=d.aa){var e=d.name;if(d.parent.id===b.id&&e===c)return d}return b.f.lookup(b,c)}
function Wc(b,c,d,e){md||(md=function(b,c,d,e){b||(b=this);this.parent=b;this.B=b.B;this.ma=null;this.id=cd++;this.name=c;this.mode=d;this.f={};this.g={};this.rdev=e},md.prototype={},Object.defineProperties(md.prototype,{read:{get:function(){return 365===(this.mode&365)},set:function(b){b?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(b){b?this.mode|=146:this.mode&=-147}},Jc:{get:function(){return T(this.mode)}},Ic:{get:function(){return 8192===(this.mode&
61440)}}}));b=new md(b,c,d,e);kd(b);return b}function T(b){return 16384===(b&61440)}var nd={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function od(b){var c=["r","w","rw"][b&3];b&512&&(c+="w");return c}function ld(b,c){if(ed)return 0;if(-1===c.indexOf("r")||b.mode&292){if(-1!==c.indexOf("w")&&!(b.mode&146)||-1!==c.indexOf("x")&&!(b.mode&73))return O.La}else return O.La;return 0}
function pd(b,c){try{return Yc(b,c),O.pb}catch(d){}return ld(b,"wx")}function qd(){var b;b=4096;for(var c=0;c<=b;c++)if(!bd[c])return c;throw new Q(O.cc);}
function rd(b){sd||(sd=function(){},sd.prototype={},Object.defineProperties(sd.prototype,{object:{get:function(){return this.e},set:function(b){this.e=b}},Ef:{get:function(){return 1!==(this.flags&2097155)}},Gf:{get:function(){return 0!==(this.flags&2097155)}},Bf:{get:function(){return this.flags&1024}}}));var c=new sd,d;for(d in b)c[d]=b[d];b=c;c=qd();b.fd=c;return bd[c]=b}var Vc={open:function(b){b.g=ad[b.e.rdev].g;b.g.open&&b.g.open(b)},N:function(){throw new Q(O.sa);}};
function Rc(b,c){ad[b]={g:c}}function td(b,c){var d="/"===c,e=!c,f;if(d&&$c)throw new Q(O.Ma);if(!d&&!e){f=gd(c,{Kb:!1});c=f.path;f=f.e;if(f.ma)throw new Q(O.Ma);if(!T(f.mode))throw new Q(O.qb);}var e={type:b,$a:{},Ub:c,Pc:[]},g=b.B(e);g.B=e;e.root=g;d?$c=g:f&&(f.ma=e,f.B&&f.B.Pc.push(e))}function ud(b,c,d){var e=gd(b,{parent:!0}).e;b=Mc(b);if(!b||"."===b||".."===b)throw new Q(O.s);var f=pd(e,b);if(f)throw new Q(f);if(!e.f.la)throw new Q(O.Y);return e.f.la(e,b,c,d)}
function vd(b,c){c=(void 0!==c?c:438)&4095;c|=32768;return ud(b,c,0)}function wd(b,c){c=(void 0!==c?c:511)&1023;c|=16384;return ud(b,c,0)}function xd(b,c,d){"undefined"===typeof d&&(d=c,c=438);return ud(b,c|8192,d)}function yd(b,c){if(!Oc(b))throw new Q(O.L);var d=gd(c,{parent:!0}).e;if(!d)throw new Q(O.L);var e=Mc(c),f=pd(d,e);if(f)throw new Q(f);if(!d.f.symlink)throw new Q(O.Y);return d.f.symlink(d,e,b)}
function hd(b){b=gd(b).e;if(!b)throw new Q(O.L);if(!b.f.readlink)throw new Q(O.s);return Oc(id(b.parent),b.f.readlink(b))}function zd(b,c){var d;"string"===typeof b?d=gd(b,{Sa:!0}).e:d=b;if(!d.f.v)throw new Q(O.Y);d.f.v(d,{mode:c&4095|d.mode&-4096,timestamp:Date.now()})}
function Ad(b,c){var d;if(""===b)throw new Q(O.L);var e;if("string"===typeof c){if(e=nd[c],"undefined"===typeof e)throw Error("Unknown file open mode: "+c);}else e=c;c=e;d=c&64?("undefined"===typeof d?438:d)&4095|32768:0;var f;if("object"===typeof b)f=b;else{b=Kc(b);try{f=gd(b,{Sa:!(c&131072)}).e}catch(g){}}e=!1;if(c&64)if(f){if(c&128)throw new Q(O.pb);}else f=ud(b,d,0),e=!0;if(!f)throw new Q(O.L);8192===(f.mode&61440)&&(c&=-513);if(c&65536&&!T(f.mode))throw new Q(O.qb);if(!e&&(d=f?40960===(f.mode&
61440)?O.Na:T(f.mode)&&("r"!==od(c)||c&512)?O.fa:ld(f,od(c)):O.L))throw new Q(d);if(c&512){d=f;var k;"string"===typeof d?k=gd(d,{Sa:!0}).e:k=d;if(!k.f.v)throw new Q(O.Y);if(T(k.mode))throw new Q(O.fa);if(32768!==(k.mode&61440))throw new Q(O.s);if(d=ld(k,"w"))throw new Q(d);k.f.v(k,{size:0,timestamp:Date.now()})}c&=-641;f=rd({e:f,path:id(f),flags:c,seekable:!0,position:0,g:f.g,hd:[],error:!1});f.g.open&&f.g.open(f);!v.logReadFiles||c&1||(Bd||(Bd={}),b in Bd||(Bd[b]=1,v.printErr("read file: "+b)));
try{fd.onOpenFile&&(k=0,1!==(c&2097155)&&(k|=1),0!==(c&2097155)&&(k|=2),fd.onOpenFile(b,k))}catch(l){console.log("FS.trackingDelegate['onOpenFile']('"+b+"', flags) threw an exception: "+l.message)}return f}function Cd(b){b.Wa&&(b.Wa=null);try{b.g.close&&b.g.close(b)}catch(c){throw c;}finally{bd[b.fd]=null}}function Dd(b,c,d){if(!b.seekable||!b.g.N)throw new Q(O.sa);b.position=b.g.N(b,c,d);b.hd=[]}
function Ed(b,c,d,e,f,g){if(0>e||0>f)throw new Q(O.s);if(0===(b.flags&2097155))throw new Q(O.ra);if(T(b.e.mode))throw new Q(O.fa);if(!b.g.write)throw new Q(O.s);b.flags&1024&&Dd(b,0,2);var k=!0;if("undefined"===typeof f)f=b.position,k=!1;else if(!b.seekable)throw new Q(O.sa);c=b.g.write(b,c,d,e,f,g);k||(b.position+=c);try{if(b.path&&fd.onWriteToFile)fd.onWriteToFile(b.path)}catch(l){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+l.message)}return c}
function Fd(){Q||(Q=function(b,c){this.e=c;this.Xc=function(b){this.$=b;for(var c in O)if(O[c]===b){this.code=c;break}};this.Xc(b);this.message=Ic[b]},Q.prototype=Error(),Q.prototype.constructor=Q,[O.L].forEach(function(b){Xc[b]=new Q(b);Xc[b].stack="<generic error, no stack>"}))}var Gd;function Hd(b,c){var d=0;b&&(d|=365);c&&(d|=146);return d}function Id(b,c,d,e){b=P("string"===typeof b?b:id(b),c);return vd(b,Hd(d,e))}
function Jd(b,c,d,e,f,g){b=c?P("string"===typeof b?b:id(b),c):b;e=Hd(e,f);f=vd(b,e);if(d){if("string"===typeof d){b=Array(d.length);c=0;for(var k=d.length;c<k;++c)b[c]=d.charCodeAt(c);d=b}zd(f,e|146);b=Ad(f,"w");Ed(b,d,0,d.length,0,g);Cd(b);zd(f,e)}return f}
function Kd(b,c,d,e){b=P("string"===typeof b?b:id(b),c);c=Hd(!!d,!!e);Kd.Sb||(Kd.Sb=64);var f=Kd.Sb++<<8|0;Rc(f,{open:function(b){b.seekable=!1},close:function(){e&&e.buffer&&e.buffer.length&&e(10)},read:function(b,c,e,f){for(var n=0,r=0;r<f;r++){var B;try{B=d()}catch(C){throw new Q(O.P);}if(void 0===B&&0===n)throw new Q(O.ob);if(null===B||void 0===B)break;n++;c[e+r]=B}n&&(b.e.timestamp=Date.now());return n},write:function(b,c,d,f){for(var n=0;n<f;n++)try{e(c[d+n])}catch(r){throw new Q(O.P);}f&&(b.e.timestamp=
Date.now());return n}});return xd(b,c,f)}
function Ld(b){if(b.Ic||b.Jc||b.link||b.c)return!0;var c=!0;if("undefined"!==typeof XMLHttpRequest)throw Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(v.read)try{b.c=p(v.read(b.url),!0),b.m=b.c.length}catch(d){c=!1}else throw Error("Cannot load without read() or XMLHttpRequest.");c||Eb(O.P);return c}var Md={},md,sd,Bd,Nd=0;
function V(){Nd+=4;return z[Nd-4>>2]}function Od(){var b;b=V();b=bd[b];if(!b)throw new Q(O.ra);return b}var Pd=y;y+=48;M(p("GMT"),"i8",2);var Qd=y,Rd=y+=16,Sd=y+=16;y+=16;
function Td(){function b(b){return(b=b.toTimeString().match(/\(([A-Za-z ]+)\)$/))?b[1]:"GMT"}if(!Td.A){Td.A=!0;z[Sd>>2]=60*-(new Date).getTimezoneOffset();var c=new Date(2E3,0,1),d=new Date(2E3,6,1);z[Rd>>2]=Number(c.getTimezoneOffset()!=d.getTimezoneOffset());var e=b(c),f=b(d),e=M(p(e),"i8",0),f=M(p(f),"i8",0);d.getTimezoneOffset()<c.getTimezoneOffset()?(z[Qd>>2]=e,z[Qd+4>>2]=f):(z[Qd>>2]=f,z[Qd+4>>2]=e)}}
function Ud(b,c){Td();var d=new Date(1E3*z[b>>2]);z[c>>2]=d.getSeconds();z[c+4>>2]=d.getMinutes();z[c+8>>2]=d.getHours();z[c+12>>2]=d.getDate();z[c+16>>2]=d.getMonth();z[c+20>>2]=d.getFullYear()-1900;z[c+24>>2]=d.getDay();var e=new Date(d.getFullYear(),0,1);z[c+28>>2]=(d.getTime()-e.getTime())/864E5|0;z[c+36>>2]=-(60*d.getTimezoneOffset());d=d.getTimezoneOffset()==Math.min(e.getTimezoneOffset(),(new Date(2E3,6,1)).getTimezoneOffset())|0;z[c+32>>2]=d;z[c+40>>2]=z[Qd+(d?x.M:0)>>2];return c}
v._bitshift64Ashr=Vd;v._bitshift64Lshr=Wd;function Xd(){return window.RTCPeerConnection&&window.RTCPeerConnection.prototype.createDataChannel?1:0}function Yd(){return!!Yd.vf}function Zd(b,c){nb.push(function(){x.p("vi",b,[c])});Zd.level=nb.length}v._pthread_cond_broadcast=$d;v._pthread_mutex_unlock=ae;
var be=M([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);v._llvm_cttz_i32=ce;v.___udivmoddi4=de;v.___udivdi3=ee;v.___muldsi3=fe;v.___muldi3=ge;v._sbrk=he;v._bitshift64Shl=ie;function je(){je.A||(je.A=[]);je.A.push(x.Ha());return je.A.length-1}v.___uremdi3=ke;function aa(){try{return"function"==typeof MediaSource.isTypeSupported&&MediaSource.isTypeSupported('video/mp4; codecs="avc1.42e020"')?1:0}catch(b){return 0}}v._llvm_bswap_i32=le;v._pthread_self=me;v._round=ne;
w?Cb=function(){var b=process.hrtime();return 1E3*b[0]+b[1]/1E6}:"undefined"!==typeof dateNow?Cb=dateNow:"object"===typeof self&&self.performance&&"function"===typeof self.performance.now?Cb=function(){return self.performance.now()}:"object"===typeof performance&&"function"===typeof performance.now?Cb=function(){return performance.now()}:Cb=Date.now;
v.requestFullScreen=function(b,c,d){v.U("Module.requestFullScreen is deprecated. Please call Module.requestFullscreen instead.");v.requestFullScreen=v.requestFullscreen;xc(b,c,d)};v.requestFullscreen=function(b,c,d){sc(b,c,d)};v.requestAnimationFrame=function(b){Wb(b)};v.setCanvasSize=function(b,c,d){vc(v.canvas,b,c);d||Cc()};v.pauseMainLoop=function(){Sb=null;Zb++};v.resumeMainLoop=function(){Zb++;var b=Pb,c=Qb,d=Rb;Rb=null;Xb(d,0,!1,Yb,!0);Ob(b,c);Sb()};
v.getUserMedia=function(){window.A||(window.A=navigator.getUserMedia||navigator.mozGetUserMedia);window.A(void 0)};v.createContext=function(b,c,d,e){return oc(b,c,d,e)};Fd();dd=Array(4096);td(S,"/");wd("/tmp");wd("/home");wd("/home/web_user");
(function(){wd("/dev");Rc(259,{read:function(){return 0},write:function(b,c,f,g){return g}});xd("/dev/null",259);Qc(1280,Tc);Qc(1536,Uc);xd("/dev/tty",1280);xd("/dev/tty1",1536);var b;if("undefined"!==typeof crypto){var c=new Uint8Array(1);b=function(){crypto.getRandomValues(c);return c[0]}}else b=w?function(){return require("crypto").randomBytes(1)[0]}:function(){return 256*Math.random()|0};Kd("/dev","random",b);Kd("/dev","urandom",b);wd("/dev/shm");wd("/dev/shm/tmp")})();wd("/proc");wd("/proc/self");
wd("/proc/self/fd");td({B:function(){var b=Wc("/proc/self","fd",16895,73);b.f={lookup:function(b,d){var e=bd[+d];if(!e)throw new Q(O.ra);var f={parent:null,B:{Ub:"fake"},f:{readlink:function(){return e.path}}};return f.parent=f}};return b}},"/proc/self/fd");
lb.unshift(function(){if(!v.noFSInit&&!Gd){assert(!Gd,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");Gd=!0;Fd();v.stdin=v.stdin;v.stdout=v.stdout;v.stderr=v.stderr;v.stdin?Kd("/dev","stdin",v.stdin):yd("/dev/tty","/dev/stdin");v.stdout?Kd("/dev","stdout",null,v.stdout):yd("/dev/tty","/dev/stdout");v.stderr?Kd("/dev","stderr",null,v.stderr):yd("/dev/tty1","/dev/stderr");
var b=Ad("/dev/stdin","r");assert(0===b.fd,"invalid handle for stdin ("+b.fd+")");b=Ad("/dev/stdout","w");assert(1===b.fd,"invalid handle for stdout ("+b.fd+")");b=Ad("/dev/stderr","w");assert(2===b.fd,"invalid handle for stderr ("+b.fd+")")}});mb.push(function(){ed=!1});nb.push(function(){Gd=!1;var b=v._fflush;b&&b(0);for(b=0;b<bd.length;b++){var c=bd[b];c&&Cd(c)}});v.FS_createFolder=function(b,c,d,e){b=P("string"===typeof b?b:id(b),c);return wd(b,Hd(d,e))};
v.FS_createPath=function(b,c){b="string"===typeof b?b:id(b);for(var d=c.split("/").reverse();d.length;){var e=d.pop();if(e){var f=P(b,e);try{wd(f)}catch(g){}b=f}}return f};v.FS_createDataFile=Jd;
v.FS_createPreloadedFile=function(b,c,d,e,f,g,k,l,q,n){function r(d){function r(d){n&&n();l||Jd(b,c,d,e,f,q);g&&g();vb()}var I=!1;v.preloadPlugins.forEach(function(b){!I&&b.canHandle(B)&&(b.handle(d,B,r,function(){k&&k();vb()}),I=!0)});I||r(d)}hc();var B=c?Oc(P(b,c)):b;ub();"string"==typeof d?Ac(d,function(b){r(b)},k):r(d)};
v.FS_createLazyFile=function(b,c,d,e,f){var g,k;function l(){this.Za=!1;this.ya=[]}l.prototype.get=function(b){if(!(b>this.length-1||0>b)){var c=b%this.chunkSize;return this.Pb(b/this.chunkSize|0)[c]}};l.prototype.Wc=function(b){this.Pb=b};l.prototype.Ab=function(){var b=new XMLHttpRequest;b.open("HEAD",d,!1);b.send(null);if(!(200<=b.status&&300>b.status||304===b.status))throw Error("Couldn't load "+d+". Status: "+b.status);var c=Number(b.getResponseHeader("Content-length")),e,f=(e=b.getResponseHeader("Accept-Ranges"))&&
"bytes"===e,b=(e=b.getResponseHeader("Content-Encoding"))&&"gzip"===e,g=1048576;f||(g=c);var k=this;k.Wc(function(b){var e=b*g,f=(b+1)*g-1,f=Math.min(f,c-1);if("undefined"===typeof k.ya[b]){var l=k.ya;if(e>f)throw Error("invalid range ("+e+", "+f+") or no bytes requested!");if(f>c-1)throw Error("only "+c+" bytes available! programmer error!");var n=new XMLHttpRequest;n.open("GET",d,!1);c!==g&&n.setRequestHeader("Range","bytes="+e+"-"+f);"undefined"!=typeof Uint8Array&&(n.responseType="arraybuffer");
n.overrideMimeType&&n.overrideMimeType("text/plain; charset=x-user-defined");n.send(null);if(!(200<=n.status&&300>n.status||304===n.status))throw Error("Couldn't load "+d+". Status: "+n.status);e=void 0!==n.response?new Uint8Array(n.response||[]):p(n.responseText||"",!0);l[b]=e}if("undefined"===typeof k.ya[b])throw Error("doXHR failed!");return k.ya[b]});if(b||!c)g=c=1,g=c=this.Pb(0).length,console.log("LazyFiles on gzip forces download of the whole file when length is accessed");this.jc=c;this.gc=
g;this.Za=!0};if("undefined"!==typeof XMLHttpRequest){if(!pa)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";g=new l;Object.defineProperties(g,{length:{get:function(){this.Za||this.Ab();return this.jc}},chunkSize:{get:function(){this.Za||this.Ab();return this.gc}}});k=void 0}else k=d,g=void 0;var q=Id(b,c,e,f);g?q.c=g:k&&(q.c=null,q.url=k);Object.defineProperties(q,{m:{get:function(){return this.c.length}}});var n={};Object.keys(q.g).forEach(function(b){var c=
q.g[b];n[b]=function(){if(!Ld(q))throw new Q(O.P);return c.apply(null,arguments)}});n.read=function(b,c,d,e,f){if(!Ld(q))throw new Q(O.P);b=b.e.c;if(f>=b.length)return 0;e=Math.min(b.length-f,e);assert(0<=e);if(b.slice)for(var g=0;g<e;g++)c[d+g]=b[f+g];else for(g=0;g<e;g++)c[d+g]=b.get(f+g);return e};q.g=n;return q};v.FS_createLink=function(b,c,d){b=P("string"===typeof b?b:id(b),c);return yd(d,b)};v.FS_createDevice=Kd;
v.FS_unlink=function(b){var c=gd(b,{parent:!0}).e,d=Mc(b),e=Yc(c,d),f;a:{try{f=Yc(c,d)}catch(g){f=g.$;break a}var k=ld(c,"wx");f=k?k:T(f.mode)?O.fa:0}if(f)throw new Q(f);if(!c.f.unlink)throw new Q(O.Y);if(e.ma)throw new Q(O.Ma);try{fd.willDeletePath&&fd.willDeletePath(b)}catch(l){console.log("FS.trackingDelegate['willDeletePath']('"+b+"') threw an exception: "+l.message)}c.f.unlink(c,d);c=jd(e.parent.id,e.name);if(dd[c]===e)dd[c]=e.aa;else for(c=dd[c];c;){if(c.aa===e){c.aa=e.aa;break}c=c.aa}try{if(fd.onDeletePath)fd.onDeletePath(b)}catch(q){console.log("FS.trackingDelegate['onDeletePath']('"+
b+"') threw an exception: "+q.message)}};lb.unshift(function(){});nb.push(function(){});if(w){var fs=require("fs"),Zc=require("path");U.ad()}wa=M(1,"i32",2);ab=va=x.ub(y);bb=ab+hb;cb=x.ub(bb);z[wa>>2]=cb;Ma=!0;v.sc={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:Infinity,byteLength:fb};
v.tc={abort:F,assert:assert,enlargeMemory:xa,getTotalMemory:function(){return D},abortOnCannotGrowMemory:function(){F("Cannot enlarge memory arrays. Either (1) compile with  -s TOTAL_MEMORY=X  with X higher than the current value "+D+", (2) compile with  -s ALLOW_MEMORY_GROWTH=1  which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with  -s ABORTING_MALLOC=0 ")},
invoke_iiiiiiii:function(b,c,d,e,f,g,k,l){try{return v.dynCall_iiiiiiii(b,c,d,e,f,g,k,l)}catch(q){if("number"!==typeof q&&"longjmp"!==q)throw q;W.setThrew(1,0)}},invoke_iiiiiid:function(b,c,d,e,f,g,k){try{return v.dynCall_iiiiiid(b,c,d,e,f,g,k)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;W.setThrew(1,0)}},invoke_vid:function(b,c,d){try{v.dynCall_vid(b,c,d)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;W.setThrew(1,0)}},invoke_viiiii:function(b,c,d,e,f,g){try{v.dynCall_viiiii(b,
c,d,e,f,g)}catch(k){if("number"!==typeof k&&"longjmp"!==k)throw k;W.setThrew(1,0)}},invoke_vi:function(b,c){try{v.dynCall_vi(b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;W.setThrew(1,0)}},invoke_vii:function(b,c,d){try{v.dynCall_vii(b,c,d)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;W.setThrew(1,0)}},invoke_iiiiiii:function(b,c,d,e,f,g,k){try{return v.dynCall_iiiiiii(b,c,d,e,f,g,k)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;W.setThrew(1,0)}},invoke_ii:function(b,
c){try{return v.dynCall_ii(b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;W.setThrew(1,0)}},invoke_iiiiii:function(b,c,d,e,f,g){try{return v.dynCall_iiiiii(b,c,d,e,f,g)}catch(k){if("number"!==typeof k&&"longjmp"!==k)throw k;W.setThrew(1,0)}},invoke_vidi:function(b,c,d,e){try{v.dynCall_vidi(b,c,d,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;W.setThrew(1,0)}},invoke_vidd:function(b,c,d,e){try{v.dynCall_vidd(b,c,d,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;W.setThrew(1,
0)}},invoke_iiii:function(b,c,d,e){try{return v.dynCall_iiii(b,c,d,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;W.setThrew(1,0)}},invoke_iiiiiiiii:function(b,c,d,e,f,g,k,l,q){try{return v.dynCall_iiiiiiiii(b,c,d,e,f,g,k,l,q)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;W.setThrew(1,0)}},invoke_viiiiii:function(b,c,d,e,f,g,k){try{v.dynCall_viiiiii(b,c,d,e,f,g,k)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;W.setThrew(1,0)}},invoke_di:function(b,c){try{return v.dynCall_di(b,
c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;W.setThrew(1,0)}},invoke_viiiiidii:function(b,c,d,e,f,g,k,l,q){try{v.dynCall_viiiiidii(b,c,d,e,f,g,k,l,q)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;W.setThrew(1,0)}},invoke_iid:function(b,c,d){try{return v.dynCall_iid(b,c,d)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;W.setThrew(1,0)}},invoke_iii:function(b,c,d){try{return v.dynCall_iii(b,c,d)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;W.setThrew(1,0)}},
invoke_dii:function(b,c,d){try{return v.dynCall_dii(b,c,d)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;W.setThrew(1,0)}},invoke_iiiii:function(b,c,d,e,f){try{return v.dynCall_iiiii(b,c,d,e,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;W.setThrew(1,0)}},invoke_viii:function(b,c,d,e){try{v.dynCall_viii(b,c,d,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;W.setThrew(1,0)}},invoke_v:function(b){try{v.dynCall_v(b)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;
W.setThrew(1,0)}},invoke_viid:function(b,c,d,e){try{v.dynCall_viid(b,c,d,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;W.setThrew(1,0)}},invoke_iiiiid:function(b,c,d,e,f,g){try{return v.dynCall_iiiiid(b,c,d,e,f,g)}catch(k){if("number"!==typeof k&&"longjmp"!==k)throw k;W.setThrew(1,0)}},invoke_viiii:function(b,c,d,e,f){try{v.dynCall_viiii(b,c,d,e,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;W.setThrew(1,0)}},_pthread_cleanup_pop:function(){assert(Zd.level==nb.length,"cannot pop if something else added meanwhile!");
nb.pop();Zd.level=nb.length},_pthread_cond_wait:function(){return 0},___lock:function(){},_emscripten_get_now_is_monotonic:Db,_emscripten_asm_const_iiiii:function(b,c,d,e,f){return N[b](c,d,e,f)},_emscripten_asm_const_iiiiiiii:function(b,c,d,e,f,g,k,l){return N[b](c,d,e,f,g,k,l)},_emscripten_asm_const_iidi:function(b,c,d,e){return N[b](c,d,e)},_emscripten_set_main_loop_timing:Ob,_emscripten_call_worker:function(b,c,d,e,f,g){v.noExitRuntime=!0;c=G(c);b=gc[b];var k=-1;f&&(k=b.wa.length,b.wa.push({I:x.d(f,
"viii"),S:g}),b.yb++);c={funcName:c,callbackId:k,data:d?new Uint8Array(u.subarray(d,d+e)):0};d?b.worker.postMessage(c,[c.data.buffer]):b.worker.postMessage(c)},_llvm_stackrestore:function(b){var c=je.A[b];je.A.splice(b,1);x.pa(c)},___assert_fail:function(b,c,d,e){E=!0;throw"Assertion failed: "+G(b)+", at: "+[c?G(c):"unknown filename",d,e?G(e):"unknown function"]+" at "+Va();},__ZSt18uncaught_exceptionv:Yd,_emscripten_asm_const_ii:function(b,c){return N[b](c)},_emscripten_asm_const_iiiiiiiiiiii:function(b,
c,d,e,f,g,k,l,q,n,r,B){return N[b](c,d,e,f,g,k,l,q,n,r,B)},_clock_gettime:function(b,c){var d;if(0===b)d=Date.now();else if(1===b&&Db())d=Cb();else return Eb(O.s),-1;z[c>>2]=d/1E3|0;z[c+4>>2]=d%1E3*1E6|0;return 0},_strftime_l:function(b,c,d,e){return Nb(b,c,d,e)},_localtime_r:Ud,_tzset:Td,___setErrNo:Eb,_emscripten_asm_const_id:function(b,c){return N[b](c)},_emscripten_get_now:Cb,_emscripten_memcpy_big:function(b,c,d){u.set(u.subarray(c,c+d),b);return b},_time:function(b){var c=Date.now()/1E3|0;b&&
(z[b>>2]=c);return c},__exit:Hc,_viblast_isMediaSourceSupported:aa,_strftime:Nb,__arraySum:Jb,_emscripten_asm_const_di:function(b,c){return N[b](c)},_emscripten_asm_const_iiiiiiiii:function(b,c,d,e,f,g,k,l,q){return N[b](c,d,e,f,g,k,l,q)},_viblast_isWebrtcSupported:Xd,_llvm_stacksave:je,_abort:function(){v.abort()},_llvm_trap:function(){F("trap!")},_emscripten_asm_const_iidddiii:function(b,c,d,e,f,g,k,l){return N[b](c,d,e,f,g,k,l)},__ZN7viblast11HttpRequest17response_redirectEv:function(){v.printErr("missing function: _ZN7viblast11HttpRequest17response_redirectEv");
F(-1)},_emscripten_asm_const_iiiiiii:function(b,c,d,e,f,g,k){return N[b](c,d,e,f,g,k)},___syscall54:function(b,c){Nd=c;try{var d=Od(),e=V();switch(e){case 21505:return d.tty?0:-O.ga;case 21506:return d.tty?0:-O.ga;case 21519:if(!d.tty)return-O.ga;var f=V();return z[f>>2]=0;case 21520:return d.tty?-O.s:-O.ga;case 21531:f=V();if(!d.g.Hc)throw new Q(O.ga);return d.g.Hc(d,e,f);default:F("bad ioctl syscall "+e)}}catch(g){return"undefined"!==typeof Md&&g instanceof Q||F(g),-g.$}},___unlock:function(){},
_emscripten_destroy_worker:function(b){var c=gc[b];c.worker.terminate();c.buffer&&Ua(c.buffer);gc[b]=null},__isLeapYear:Ib,_emscripten_set_main_loop:Xb,_emscripten_asm_const_iii:function(b,c,d){return N[b](c,d)},_emscripten_asm_const_iiiiii:function(b,c,d,e,f,g){return N[b](c,d,e,f,g)},_emscripten_asm_const_iiiiiiiiiiiiii:function(b,c,d,e,f,g,k,l,q,n,r,B,C,t){return N[b](c,d,e,f,g,k,l,q,n,r,B,C,t)},_emscripten_create_worker:function(b){b=G(b);var c=gc.length;b={worker:new Worker(b),wa:[],yb:0,buffer:0,
bufferSize:0};b.worker.onmessage=function(b){if(!E){var e=gc[c];if(e){var f=b.data.callbackId,g=e.wa[f];if(g)if(b.data.finalResponse&&(e.yb--,e.wa[f]=null),b=b.data.data){b.byteLength||(b=new Uint8Array(b));if(!e.buffer||e.bufferSize<b.length)e.buffer&&Ua(e.buffer),e.bufferSize=b.length,e.buffer=ea(b.length);u.set(b,e.buffer);g.I(e.buffer,b.length,g.S)}else g.I(0,0,g.S)}}};gc.push(b);return c},_emscripten_asm_const_iiii:function(b,c,d,e){return N[b](c,d,e)},__addDays:Mb,___syscall6:function(b,c){Nd=
c;try{var d=Od();Cd(d);return 0}catch(e){return"undefined"!==typeof Md&&e instanceof Q||F(e),-e.$}},_pthread_cleanup_push:Zd,___cxa_pure_virtual:function(){E=!0;throw"Pure virtual function called!";},_emscripten_asm_const_dii:function(b,c,d){return N[b](c,d)},_emscripten_asm_const_iid:function(b,c,d){return N[b](c,d)},_gettimeofday:function(b){var c=Date.now();z[b>>2]=c/1E3|0;z[b+4>>2]=c%1E3*1E3|0;return 0},___syscall140:function(b,c){Nd=c;try{var d=Od(),e=V(),f=V(),g=V(),k=V();assert(0===e);Dd(d,
f,k);z[g>>2]=d.position;d.Wa&&0===f&&0===k&&(d.Wa=null);return 0}catch(l){return"undefined"!==typeof Md&&l instanceof Q||F(l),-l.$}},_localtime:function(b){return Ud(b,Pd)},_exit:function(b){Hc(b)},___syscall145:function(b,c){Nd=c;try{var d=Od(),e=V(),f;a:{for(var g=V(),k=0,l=0;l<g;l++){var q=z[e+(8*l+4)>>2],n,r=d,B=z[e+8*l>>2],C=q,t=void 0,I=H;if(0>C||0>t)throw new Q(O.s);if(1===(r.flags&2097155))throw new Q(O.ra);if(T(r.e.mode))throw new Q(O.fa);if(!r.g.read)throw new Q(O.s);var L=!0;if("undefined"===
typeof t)t=r.position,L=!1;else if(!r.seekable)throw new Q(O.sa);var R=r.g.read(r,I,B,C,t);L||(r.position+=R);n=R;if(0>n){f=-1;break a}k+=n;if(n<q)break}f=k}return f}catch(K){return"undefined"!==typeof Md&&K instanceof Q||F(K),-K.$}},___syscall146:function(b,c){Nd=c;try{var d=Od(),e=V(),f;a:{for(var g=V(),k=0,l=0;l<g;l++){var q=Ed(d,H,z[e+8*l>>2],z[e+(8*l+4)>>2],void 0);if(0>q){f=-1;break a}k+=q}f=k}return f}catch(n){return"undefined"!==typeof Md&&n instanceof Q||F(n),-n.$}},STACKTOP:va,STACK_MAX:bb,
DYNAMICTOP_PTR:wa,tempDoublePtr:Bb,ABORT:E,cttz_i8:be};// EMSCRIPTEN_START_ASM
var W=(function(global,env,buffer) {
"almost asm";var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.DYNAMICTOP_PTR|0;var u=env.tempDoublePtr|0;var v=env.ABORT|0;var w=env.cttz_i8|0;var x=0;var y=0;var z=0;var A=0;var B=global.NaN,C=global.Infinity;var D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;var M=0;var N=global.Math.floor;var O=global.Math.abs;var P=global.Math.sqrt;var Q=global.Math.pow;var R=global.Math.cos;var S=global.Math.sin;var T=global.Math.tan;var U=global.Math.acos;var V=global.Math.asin;var W=global.Math.atan;var X=global.Math.atan2;var Y=global.Math.exp;var Z=global.Math.log;var _=global.Math.ceil;var $=global.Math.imul;var aa=global.Math.min;var ba=global.Math.max;var ca=global.Math.clz32;var da=env.abort;var ea=env.assert;var fa=env.enlargeMemory;var ga=env.getTotalMemory;var ha=env.abortOnCannotGrowMemory;var ia=env.invoke_iiiiiiii;var ja=env.invoke_iiiiiid;var ka=env.invoke_vid;var la=env.invoke_viiiii;var ma=env.invoke_vi;var na=env.invoke_vii;var oa=env.invoke_iiiiiii;var pa=env.invoke_ii;var qa=env.invoke_iiiiii;var ra=env.invoke_vidi;var sa=env.invoke_vidd;var ta=env.invoke_iiii;var ua=env.invoke_iiiiiiiii;var va=env.invoke_viiiiii;var wa=env.invoke_di;var xa=env.invoke_viiiiidii;var ya=env.invoke_iid;var za=env.invoke_iii;var Aa=env.invoke_dii;var Ba=env.invoke_iiiii;var Ca=env.invoke_viii;var Da=env.invoke_v;var Ea=env.invoke_viid;var Fa=env.invoke_iiiiid;var Ga=env.invoke_viiii;var Ha=env._pthread_cleanup_pop;var Ia=env._pthread_cond_wait;var Ja=env.___lock;var Ka=env._emscripten_get_now_is_monotonic;var La=env._emscripten_asm_const_iiiii;var Ma=env._emscripten_asm_const_iiiiiiii;var Na=env._emscripten_asm_const_iidi;var Oa=env._emscripten_set_main_loop_timing;var Pa=env._emscripten_call_worker;var Qa=env._llvm_stackrestore;var Ra=env.___assert_fail;var Sa=env.__ZSt18uncaught_exceptionv;var Ta=env._emscripten_asm_const_ii;var Ua=env._emscripten_asm_const_iiiiiiiiiiii;var Va=env._clock_gettime;var Wa=env._strftime_l;var Xa=env._localtime_r;var Ya=env._tzset;var Za=env.___setErrNo;var _a=env._emscripten_asm_const_id;var $a=env._emscripten_get_now;var ab=env._emscripten_memcpy_big;var bb=env._time;var cb=env.__exit;var db=env._viblast_isMediaSourceSupported;var eb=env._strftime;var fb=env.__arraySum;var gb=env._emscripten_asm_const_di;var hb=env._emscripten_asm_const_iiiiiiiii;var ib=env._viblast_isWebrtcSupported;var jb=env._llvm_stacksave;var kb=env._abort;var lb=env._llvm_trap;var mb=env._emscripten_asm_const_iidddiii;var nb=env.__ZN7viblast11HttpRequest17response_redirectEv;var ob=env._emscripten_asm_const_iiiiiii;var pb=env.___syscall54;var qb=env.___unlock;var rb=env._emscripten_destroy_worker;var sb=env.__isLeapYear;var tb=env._emscripten_set_main_loop;var ub=env._emscripten_asm_const_iii;var vb=env._emscripten_asm_const_iiiiii;var wb=env._emscripten_asm_const_iiiiiiiiiiiiii;var xb=env._emscripten_create_worker;var yb=env._emscripten_asm_const_iiii;var zb=env.__addDays;var Ab=env.___syscall6;var Bb=env._pthread_cleanup_push;var Cb=env.___cxa_pure_virtual;var Db=env._emscripten_asm_const_dii;var Eb=env._emscripten_asm_const_iid;var Fb=env._gettimeofday;var Gb=env.___syscall140;var Hb=env._localtime;var Ib=env._exit;var Jb=env.___syscall145;var Kb=env.___syscall146;var Lb=0;function Mb(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
// EMSCRIPTEN_START_FUNCS
function Oq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+160|0;d=e;if(!(tB(a,b)|0))if((k[2783]|0)<4){Qd(d,44780,160,3,0,0,0);Tn(Mn(Tn(Mn(Tn(d,44821,38)|0,b)|0,75088,10)|0,c)|0,51131,2)|0;hi(d);a=0}else a=0;else{k[a+12>>2]=c;k[a+20>>2]=c;k[a+24>>2]=b;d=_J()|0;a=a+32|0;k[a>>2]=d;k[a+4>>2]=M;a=1}r=e;return a|0}function Pq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;e=d;c=d+4|0;k[e>>2]=b;b=Xx(a+96|0,e)|0;if((b|0)==(a+100|0))b=0;else{b=k[b+20>>2]|0;Aq(a,b);hx(a,b);k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,115628,0);WC((w4(k[a+4>>2]|0)|0)+356|0,b+56|0,-523,c);if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);p1(c);b=1}r=d;return b|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;e=h;f=k[a+4>>2]|0;g=k[a>>2]|0;c=((f-g|0)/340|0)+1|0;if(c>>>0>12632256)J5(a);i=((k[a+8>>2]|0)-g|0)/340|0;d=i<<1;c=i>>>0<6316128?(d>>>0<c>>>0?c:d):12632256;k[e+12>>2]=0;k[e+16>>2]=a+8;if(!c)d=0;else d=cW(c*340|0)|0;k[e>>2]=d;i=d+(((f-g|0)/340|0)*340|0)|0;k[e+4>>2]=i;k[e+12>>2]=d+(c*340|0);Nf(i,b);k[e+8>>2]=i+340;Zs(a,e);_H(e);r=h;return}function Rq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,46045,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=11116;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function Sq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+16|0;n=o;f=i[b+11>>0]|0;g=f<<24>>24<0;f=g?k[b+4>>2]|0:f&255;g=g?k[b>>2]|0:b;h=c+1|0;l=0;m=-1;e=0;while(1){if(l>>>0>=f>>>0){e=5;break}e=((i[g+l>>0]|0)==d<<24>>24&1)+e|0;j=l+1|0;m=(m|0)==-1&(e|0)==(c|0)?j:m;if((e|0)==(h|0)){e=4;break}else l=j}if((e|0)==4)if((l|0)==-1)e=5;else nD(a,b,m,l-m|0,n);if((e|0)==5){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,115628,0)}r=o;return}function Tq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=12864;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function Uq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=14764;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Vq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;f=i;if((a|0)==(b|0)){k[c>>2]=4;a=0}else{g=z0()|0;h=k[g>>2]|0;k[g>>2]=0;a=h5(a,f,d,J_()|0)|0;d=M;e=k[g>>2]|0;if(!e)k[g>>2]=h;a:do if((k[f>>2]|0)==(b|0)){do if((e|0)==34){k[c>>2]=4;if((d|0)>0|(d|0)==0&a>>>0>0){a=2147483647;break a}}else{if((d|0)<-1|(d|0)==-1&a>>>0<2147483648){k[c>>2]=4;break}if((d|0)>0|(d|0)==0&a>>>0>2147483647){k[c>>2]=4;a=2147483647;break a}else break a}while(0);a=-2147483648}else{k[c>>2]=4;a=0}while(0)}r=i;return a|0}function Wq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0;f=r;r=r+64|0;g=f;HA(g,b,c,d);m=g+44|0;k[m>>2]=0;i=g+48|0;k[i>>2]=0;k[g>>2]=15700;h=k[a+4>>2]|0;c=a+8|0;b=k[c>>2]|0;n=h+b|0;d=b+4|0;k[c>>2]=d;j=(l[n+2>>0]|0)<<8|(l[n+1>>0]|0)<<16|(l[n+3>>0]|0);k[m>>2]=l[n>>0];k[i>>2]=j;d=h+d|0;k[c>>2]=b+8;k[g+52>>2]=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=(hA(a,g,0,0,e+-8|0)|0)+8|0;O3(g);r=f;return e|0}function Xq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;e=h;f=k[a+4>>2]|0;g=k[a>>2]|0;c=((f-g|0)/372|0)+1|0;if(c>>>0>11545611)J5(a);i=((k[a+8>>2]|0)-g|0)/372|0;d=i<<1;c=i>>>0<5772805?(d>>>0<c>>>0?c:d):11545611;k[e+12>>2]=0;k[e+16>>2]=a+8;if(!c)d=0;else d=cW(c*372|0)|0;k[e>>2]=d;i=d+(((f-g|0)/372|0)*372|0)|0;k[e+4>>2]=i;k[e+12>>2]=d+(c*372|0);yf(i,b);k[e+8>>2]=i+372;at(a,e);gI(e);r=h;return}function Yq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=4736;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Zq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,74712,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=16996;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+208|0)+4|0,d,d);a=1}r=g;return a|0}function _q(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+192|0;a=e;d=e+160|0;if(!b)if((k[2783]|0)<4){Qd(a,42512,59,3,0,0,0);Tn(a,42547,54)|0;hi(a);a=0}else a=0;else{i[d>>0]=0;k[d+4>>2]=-1;k[d+8>>2]=-1;f=d+12|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;i[f+12>>0]=0;k[d+28>>2]=-1;i[d+1>>0]=0;a=zA(b,c,d)|0;p1(f)}r=e;return a|0}function $q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;i=a+4|0;d=k[i>>2]|0;j=k[a>>2]|0;c=((d-j|0)/20|0)+1|0;if(c>>>0>214748364)J5(a);l=j;h=a+8|0;g=((k[h>>2]|0)-j|0)/20|0;e=g<<1;e=g>>>0<107374182?(e>>>0<c>>>0?c:e):214748364;if(!e)g=0;else g=cW(e*20|0)|0;f=g+(((d-j|0)/20|0)*20|0)|0;k[f>>2]=k[b>>2];k[f+4>>2]=k[b+4>>2];k[f+8>>2]=k[b+8>>2];k[f+12>>2]=k[b+12>>2];k[f+16>>2]=k[b+16>>2];c=d-j|0;b=f+(((c|0)/-20|0)*20|0)|0;if((c|0)>0)fE(b|0,l|0,c|0)|0;k[a>>2]=b;k[i>>2]=f+20;k[h>>2]=g+(e*20|0);if(j|0)zba(l);return}function ar(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+64|0;e=g;f=Tn(b,67767,4)|0;Ln(f,k[a+8>>2]|0)|0;f=k[a+48>>2]|0;c=e;d=0;do{if((d|0)>0&(d&7|0)==0){i[c>>0]=32;c=c+1|0}i[c>>0]=1<<23-d&f|0?49:48;c=c+1|0;d=d+1|0}while((d|0)!=24);i[c>>0]=0;f=Tn(b,67922,5)|0;f=Tn(Ln(f,k[a+44>>2]|0)|0,67928,7)|0;Tn(f,e,iC(e)|0)|0;r=g;return}function br(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+160|0;d=e;if(!(tB(a,b)|0))if((k[2783]|0)<4){Qd(d,44432,230,3,0,0,0);Tn(Mn(Tn(Mn(Tn(d,44821,38)|0,b)|0,75088,10)|0,c)|0,51131,2)|0;hi(d);a=0}else a=0;else{k[a+12>>2]=c;k[a+20>>2]=c;k[a+24>>2]=b;d=_J()|0;a=a+32|0;k[a>>2]=d;k[a+4>>2]=M;a=1}r=e;return a|0}function cr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,50254,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=13440;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function dr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=4104;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function er(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+32|0;e=d+16|0;g=d+8|0;f=d;X0(a);k[a>>2]=14788;k[a+20>>2]=0;k[a+16>>2]=14824;k[a+28>>2]=0;k[a+24>>2]=14824;k[a+32>>2]=c;c=a+36|0;LL(c);i[a+88>>0]=0;iI(a+92|0,b);k[g>>2]=356;k[g+4>>2]=0;k[e>>2]=k[g>>2];k[e+4>>2]=k[g+4>>2];sr(c,a,e)|0;k[f>>2]=357;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];sr(a+44|0,a,e)|0;r=d;return}function fr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=ju(a,b,c,d,f)|0;if(cc[k[f>>2]&127](k[e>>2]|0,k[d>>2]|0)|0){h=k[d>>2]|0;k[d>>2]=k[e>>2];k[e>>2]=h;e=g+1|0;if(cc[k[f>>2]&127](k[d>>2]|0,k[c>>2]|0)|0){e=k[c>>2]|0;k[c>>2]=k[d>>2];k[d>>2]=e;e=g+2|0;if(cc[k[f>>2]&127](k[c>>2]|0,k[b>>2]|0)|0){h=k[b>>2]|0;k[b>>2]=k[c>>2];k[c>>2]=h;if(cc[k[f>>2]&127](k[b>>2]|0,k[a>>2]|0)|0){e=k[a>>2]|0;k[a>>2]=k[b>>2];k[b>>2]=e;e=g+4|0}else e=g+3|0}}}else e=g;return e|0}function gr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=a+4|0;Rb[k[(k[g>>2]|0)+8>>2]&2047](g);f=a+8|0;c=k[a+12>>2]|0;d=c;a:do if((d|0)!=(f|0)){e=d;while(1){d=c+8|0;h=k[d>>2]|0;if((Ub[k[(k[h>>2]|0)+8>>2]&511](h)|0)==(b|0))break;c=k[e+4>>2]|0;d=c;if((d|0)==(f|0))break a;else e=d}d=k[d>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);h=e+4|0;k[(k[e>>2]|0)+4>>2]=k[h>>2];k[k[h>>2]>>2]=k[c>>2];h=a+16|0;k[h>>2]=(k[h>>2]|0)+-1;zba(c);Sb[k[(k[b>>2]|0)+4>>2]&511](b,a)}while(0);Rb[k[(k[g>>2]|0)+12>>2]&2047](g);return}function hr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=2092;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function ir(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=5276;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+64|0;d=c+16|0;f=c;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,103362,1);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;k[d+24>>2]=0;k[d+28>>2]=74;e=d+32|0;iI(e,f);i[d+44>>0]=0;p1(f);ZA(d,a,b);p1(e);p1(d+16|0);nG(d);r=c;return a|0}function kr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=13664;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function lr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,92655,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=17744;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+88|0)+4|0,d,d);a=1}r=g;return a|0}function mr(a){a=a|0;var b=0,c=0;k[a>>2]=12848;b=k[a+124>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=a+244|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}qL(a+252|0);P1(a+208|0);p1(a+196|0);p1(a+184|0);p1(a+140|0);nI(a+128|0);qL(a+108|0);GL(a+64|0);h3(a+56|0);p1(a+44|0);h3(a+24|0);h3(a+16|0);eU(a);return}function nr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;h=a+8|0;d=k[h>>2]|0;i=a+4|0;c=k[i>>2]|0;l=d-c>>2;f=a+16|0;g=k[f>>2]|0;j=a+20|0;e=k[j>>2]|0;if((((l|0)==0?0:(l*146|0)+-1|0)|0)==(e+g|0)){ud(a);e=k[j>>2]|0;a=k[f>>2]|0;d=k[h>>2]|0;c=k[i>>2]|0}else a=g;a=a+e|0;if((d|0)==(c|0))a=0;else a=(k[c+(((a>>>0)/146|0)<<2)>>2]|0)+(((a>>>0)%146|0)*28|0)|0;k[a>>2]=k[b>>2];k[a+4>>2]=k[b+4>>2];k[a+8>>2]=k[b+8>>2];iI(a+12|0,b+12|0);k[a+24>>2]=k[b+24>>2];k[j>>2]=(k[j>>2]|0)+1;return}function or(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;e=_J()|0;c=M;b=a+232|0;f=b;f=n_(e|0,c|0,k[f>>2]|0,k[f+4>>2]|0)|0;h=M;d=a+208|0;j=d;l=k[j>>2]|0;j=k[j+4>>2]|0;g=j>>>0<h>>>0|(j|0)==(h|0)&l>>>0<f>>>0;h=n_(l|0,j|0,f|0,h|0)|0;f=d;k[f>>2]=g?0:h;k[f+4>>2]=g?0:M;k[b>>2]=e;k[b+4>>2]=c;tB(a+216|0,100)|0;b=a+240|0;c=k[d>>2]|0;d=k[d+4>>2]|0;if(!(i[b>>0]|0)){if(d>>>0<0|(d|0)==0&c>>>0<200){Rb[k[(k[a>>2]|0)+104>>2]&2047](a);i[b>>0]=1}}else if(d>>>0>0|(d|0)==0&c>>>0>199){Rb[k[(k[a>>2]|0)+108>>2]&2047](a);i[b>>0]=0}return}function pr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=cc[k[d>>2]&127](k[b>>2]|0,k[a>>2]|0)|0;e=cc[k[d>>2]&127](k[c>>2]|0,k[b>>2]|0)|0;do if(f){f=k[a>>2]|0;if(e){k[a>>2]=k[c>>2];k[c>>2]=f;a=1;break}k[a>>2]=k[b>>2];k[b>>2]=f;if(cc[k[d>>2]&127](k[c>>2]|0,f)|0){a=k[b>>2]|0;k[b>>2]=k[c>>2];k[c>>2]=a;a=2}else a=1}else if(e){f=k[b>>2]|0;k[b>>2]=k[c>>2];k[c>>2]=f;if(cc[k[d>>2]&127](k[b>>2]|0,k[a>>2]|0)|0){d=k[a>>2]|0;k[a>>2]=k[b>>2];k[b>>2]=d;a=2}else a=1}else a=0;while(0);return a|0}function qr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=12792;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+60|0)+4|0,d,d);a=1}r=g;return a|0}function rr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=5824;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function sr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56791,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=14844;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function tr(a){a=a|0;var b=0,c=0,d=0;d=r;r=r+160|0;b=d;if((k[2783]|0)<3){Qd(b,43163,335,2,0,0,0);Tn(b,43230,13)|0;hi(b)}do if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0){if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(b=a+144|0,!((k[b>>2]|0)==0&(k[b+4>>2]|0)==0)):0){c=7;break}b=a+136|0;if((k[b>>2]|0)==0&(k[b+4>>2]|0)==0)c=7}else c=7;while(0);if((c|0)==7){b=_J()|0;c=a+136|0;k[c>>2]=b;k[c+4>>2]=M;c=a+76|0;k[c>>2]=(k[c>>2]|0)+1}r$(a+4|0);r=d;return}function ur(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;c=a+4|0;g=tq(a,b,k[c>>2]|0,c)|0;do if((g|0)!=(c|0)){h=g+16|0;d=i[b+11>>0]|0;j=d<<24>>24<0;d=j?k[b+4>>2]|0:d&255;f=i[h+11>>0]|0;e=f<<24>>24<0;f=e?k[g+20>>2]|0:f&255;a=f>>>0<d>>>0?f:d;if(a|0?(l=EI(j?k[b>>2]|0:b,e?k[h>>2]|0:h,a)|0,l|0):0)if((l|0)<0){m=6;break}else{c=g;break}if(d>>>0>=f>>>0)c=g;else m=6}else m=6;while(0);return c|0}function vr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56791,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=11076;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function wr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=r;r=r+16|0;d=g+4|0;e=g;f=a+4|0;b=k[f>>2]|0;c=a+8|0;if((b|0)!=(c|0)){a=b;while(1){b=k[a+16>>2]|0;Rb[k[(k[b>>2]|0)+8>>2]&2047](b);b=k[a+4>>2]|0;if(!b)while(1){b=k[a+8>>2]|0;if((k[b>>2]|0)==(a|0))break;else a=b}else while(1){a=k[b>>2]|0;if(!a)break;else b=a}if((b|0)==(c|0))break;else a=b}b=k[f>>2]|0}if((b|0)!=(c|0))do{k[e>>2]=b;k[d>>2]=k[e>>2];b=Rz(f,d)|0}while((b|0)!=(c|0));r=g;return}function xr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=r;r=r+160|0;d=e;if((k[b>>2]|0)==(k[b+4>>2]|0)?(k[b+12>>2]|0)==(k[b+16>>2]|0):0){if((k[2783]|0)<5){Qd(d,44959,24,4,0,0,0);h=Tn(d,51985,16)|0;f=i[c+11>>0]|0;g=f<<24>>24<0;Tn(h,g?k[c>>2]|0:c,g?k[c+4>>2]|0:f&255)|0;hi(d)}JE(b);zba(b);Tv(a)}else Sb[k[(k[a>>2]|0)+24>>2]&511](a,b);r=e;return}function yr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;f=r;r=r+16|0;g=f+8|0;e=f+4|0;h=f;k[h>>2]=k[b>>2];k[g>>2]=k[h>>2];c=li(a,g,e,c)|0;b=k[c>>2]|0;if(!b){b=cW(24)|0;g=k[d+4>>2]|0;h=b+16|0;k[h>>2]=k[d>>2];k[h+4>>2]=g;wF(a,k[e>>2]|0,c,b)}r=f;return b|0}function zr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;f=r;r=r+16|0;g=f+8|0;e=f+4|0;h=f;k[h>>2]=k[b>>2];k[g>>2]=k[h>>2];c=Xf(a,g,e,c)|0;b=k[c>>2]|0;if(!b){b=cW(40)|0;qw(b+16|0,d);Mg(b+24|0,d+8|0);wF(a,k[e>>2]|0,c,b)}r=f;return b|0}function Ar(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;e=h;f=k[a+4>>2]|0;g=k[a>>2]|0;c=((f-g|0)/312|0)+1|0;if(c>>>0>13765920)J5(a);i=((k[a+8>>2]|0)-g|0)/312|0;d=i<<1;c=i>>>0<6882960?(d>>>0<c>>>0?c:d):13765920;k[e+12>>2]=0;k[e+16>>2]=a+8;if(!c)d=0;else d=cW(c*312|0)|0;k[e>>2]=d;i=d+(((f-g|0)/312|0)*312|0)|0;k[e+4>>2]=i;k[e+12>>2]=d+(c*312|0);vg(i,b);k[e+8>>2]=i+312;mt(a,e);LI(e);r=h;return}function Br(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;d=a+4|0;if((b|0)!=(c|0)){a=k[d>>2]|0;do{iI(a,b);k[a+12>>2]=k[b+12>>2];iI(a+16|0,b+16|0);g=b+28|0;f=k[g+4>>2]|0;e=a+28|0;k[e>>2]=k[g>>2];k[e+4>>2]=f;iI(a+36|0,b+36|0);iI(a+48|0,b+48|0);iI(a+60|0,b+60|0);b=b+72|0;a=(k[d>>2]|0)+72|0;k[d>>2]=a}while((b|0)!=(c|0))}return}function Cr(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=12172;b=a+4|0;k[b>>2]=12200;c=a+72|0;$H(c);$H(c);$H(a+60|0);c=a+40|0;k[c>>2]=12224;d=a+44|0;k[d>>2]=12248;up(c);$H(a+48|0);k[d>>2]=2024;d=a+20|0;k[d>>2]=12224;c=a+24|0;k[c>>2]=12248;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Dr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=r;r=r+16|0;g=h;f=ak(b,g,c)|0;d=k[f>>2]|0;if(!d){d=cW(36)|0;iI(d+16|0,k[e>>2]|0);k[d+28>>2]=0;k[d+32>>2]=0;wF(b,k[g>>2]|0,f,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=h;return}function Er(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=a+176|0;if(!(i[c>>0]|0)){if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(d=a+160|0,f=d,!((k[f>>2]|0)==0&(k[f+4>>2]|0)==0)):0)if(!(i[c>>0]|0)){b=d;e=8}else e=5}else e=5;do if((e|0)==5){if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(b=a+160|0,f=b,!((k[f>>2]|0)==0&(k[f+4>>2]|0)==0)):0){e=8;break}i[c>>0]=0}while(0);if((e|0)==8){f=_J()|0;d=b;d=n_(f|0,M|0,k[d>>2]|0,k[d+4>>2]|0)|0;f=a+120|0;e=f;e=y0(d|0,M|0,k[e>>2]|0,k[e+4>>2]|0)|0;k[f>>2]=e;k[f+4>>2]=M;f=b;k[f>>2]=0;k[f+4>>2]=0}return}function Fr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0;g=r;r=r+64|0;f=g;HA(f,b,c,d);m=f+44|0;k[m>>2]=0;h=f+48|0;k[h>>2]=0;k[f>>2]=15588;c=k[a+4>>2]|0;e=a+8|0;d=k[e>>2]|0;n=c+d|0;b=d+4|0;k[e>>2]=b;i=(l[n+2>>0]|0)<<8|(l[n+1>>0]|0)<<16|(l[n+3>>0]|0);k[m>>2]=l[n>>0];k[h>>2]=i;b=c+b|0;k[e>>2]=d+6;j[f+52>>1]=(l[b>>0]|0)<<8|(l[b+1>>0]|0);d=d+8|0;k[e>>2]=d;b=a+12|0;if((d|0)>=(k[b>>2]|0)){k[b>>2]=0;k[e>>2]=0}n=k[a+28>>2]|0;hc[k[k[n>>2]>>2]&7](n,f,+p[a+40>>3]);O3(f);r=g;return 8}function Gr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,120,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=12888;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function Hr(a,b){a=a|0;b=b|0;ar(a,b);b=Tn(110732,68597,14)|0;b=Tn(Gn(b,j[a+52>>1]|0)|0,68612,10)|0;b=Tn(Gn(b,j[a+54>>1]|0)|0,103359,2)|0;b=Tn(Gn(b,j[a+56>>1]|0)|0,103359,2)|0;Tn(Gn(b,j[a+58>>1]|0)|0,68623,1)|0;return}function Ir(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=r;r=r+208|0;e=f+16|0;d=f;if(!(i[113539]|0)){i[113539]=1;vB(109972,3)}hJ(e,a);c=cW(1080)|0;ej(c);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,70471,17);a=ub(60,a|0,((i[d+11>>0]|0)<0?k[d>>2]|0:d)|0)|0;p1(d);if((a|0)!=-1){d=cW(28)|0;Rd(d,a,k[c+200>>2]|0)}if(Hd(c,e,(b|0)!=0)|0)M5(c);else{Rb[k[(k[c>>2]|0)+12>>2]&2047](c);c=0}VD(e);r=f;return c|0}function Jr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;d=i[a+56>>0]|0;e=i[b+56>>0]|0;do if(d<<24>>24==e<<24>>24){e=a+24|0;d=k[e>>2]|0;e=k[e+4>>2]|0;g=b+24|0;f=k[g>>2]|0;g=k[g+4>>2]|0;if(!((d|0)==(f|0)&(e|0)==(g|0))){c=e>>>0<g>>>0|(e|0)==(g|0)&d>>>0<f>>>0;break}h=a+32|0;j=b+32|0;g=i[h+11>>0]|0;l=g<<24>>24<0;g=l?k[a+36>>2]|0:g&255;e=i[j+11>>0]|0;a=e<<24>>24<0;e=a?k[b+36>>2]|0:e&255;f=e>>>0<g>>>0;d=f?e:g;if(!((d|0)!=0?(c=EI(l?k[h>>2]|0:h,a?k[j>>2]|0:j,d)|0,(c|0)!=0):0))c=g>>>0<e>>>0?-1:f&1;c=(c|0)<0}else c=(d&255)<(e&255);while(0);return c|0}function Kr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=b+540|0;d=i[f+11>>0]|0;e=d<<24>>24<0;if(e)c=k[b+544>>2]|0;else c=d&255;do if(!c){f=Ta(26,0)|0;c=f;f=(f|0)!=0;e=f?c:115628;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,e,iC(e)|0);if(f)wc(c)}else{if(e)c=k[b+544>>2]|0;else c=d&255;if(c|0){if(e){c=k[b+544>>2]|0;b=k[f>>2]|0}else{c=d&255;b=f}if((i[b+(c+-1)>>0]|0)!=47){$F(a,f,47);break}}iI(a,f)}while(0);return}function Lr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;e=r;r=r+32|0;f=e+16|0;g=e;mD(f,0);h=N6(f,56171)|0;nF(g,27684);GA(h,g)|0;Lv(g);h=N6(f,56009)|0;Ix(g,d+8|0);GA(h,g)|0;Lv(g);d=N6(f,27676)|0;fY(g,c);GA(d,g)|0;Lv(g);d=N6(f,27700)|0;c=(DT(b+2060|0,c)|0)+20|0;qY(g,k[c>>2]|0,0);GA(d,g)|0;Lv(g);XA(a,f);Lv(f);r=e;return}function Mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=r;r=r+16|0;e=d;c=cW(40)|0;f=c+16|0;iI(f,b);g=c+28|0;b=b+12|0;k[g>>2]=k[b>>2];k[g+4>>2]=k[b+4>>2];k[g+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=Om(a,e,f)|0;wF(a,k[e>>2]|0,b,c);r=d;return c|0}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;mI(a,b,0)|0;e=a+8|0;c=(k[e>>2]|0)+8|0;k[e>>2]=c;d=a+12|0;if((c|0)>=(k[d>>2]|0)){k[d>>2]=0;k[e>>2]=0;c=0}a=a+4|0;f=(k[a>>2]|0)+c|0;k[e>>2]=c+2;j[b+46>>1]=(l[f>>0]|0)<<8|(l[f+1>>0]|0);f=k[e>>2]|0;c=(k[a>>2]|0)+f|0;k[e>>2]=f+2;j[b+48>>1]=(l[c>>0]|0)<<8|(l[c+1>>0]|0);c=(k[e>>2]|0)+4|0;k[e>>2]=c;if((c|0)>=(k[d>>2]|0)){k[d>>2]=0;k[e>>2]=0;c=0}f=(k[a>>2]|0)+c|0;k[e>>2]=c+4;k[b+52>>2]=(l[f+1>>0]|0)<<16|(l[f>>0]|0)<<24|(l[f+2>>0]|0)<<8|(l[f+3>>0]|0);return 28}function Or(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=r;r=r+16|0;e=h;f=a+4|0;i=DE(k[f>>2]|0)|0;g=k[f>>2]|0;if(i){i=cW(40)|0;iI(e,a+8|0);wM(i,2,b,e);II(g,i);p1(e);jc[k[(k[a>>2]|0)+52>>2]&63](a,b,c,d);i=(w4(k[f>>2]|0)|0)+96|0;WC(i,k[f>>2]|0,b,a)}else MJ(g+2040|0,b,0);r=h;return}function Pr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=r;r=r+32|0;a=h+12|0;g=h;if(b|0){j=k[k[b>>2]>>2]|0;i=cW(24)|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,c,d);k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,e,f);iI(i,a);iI(i+12|0,g);Sb[j&511](b,i);p1(g);p1(a)}r=h;return}function Qr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<5){Qd(c,29209,226,4,0,0,0);g=Tn(Tn(Hn(Tn(c,29231,4)|0,a)|0,30253,3)|0,29378,60)|0;e=i[b+11>>0]|0;f=e<<24>>24<0;Tn(g,f?k[b>>2]|0:b,f?k[b+4>>2]|0:e&255)|0;hi(c)}pt(a);r=d;return}function Rr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;h=r;r=r+32|0;c=h+16|0;e=h+8|0;f=h;g=a+8|0;if(k[g>>2]<<5>>>0<b>>>0?(k[c>>2]=0,j=c+4|0,k[j>>2]=0,i=c+8|0,k[i>>2]=0,vQ(c,b),l=k[a>>2]|0,k[e>>2]=l,k[e+4>>2]=0,b=a+4|0,d=k[b>>2]|0,k[f>>2]=l+(d>>>5<<2),k[f+4>>2]=d&31,Im(c,e,f),d=k[a>>2]|0,k[a>>2]=k[c>>2],k[c>>2]=d,f=k[b>>2]|0,k[b>>2]=k[j>>2],k[j>>2]=f,f=k[g>>2]|0,k[g>>2]=k[i>>2],k[i>>2]=f,d|0):0)zba(d);r=h;return}function Sr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;c=k[a+12>>2]|0;a=k[a+8>>2]|0;l=a;a:do if((c|0)==(a|0))a=0;else{j=i[b+11>>0]|0;h=j<<24>>24<0;j=h?k[b+4>>2]|0:j&255;h=h?k[b>>2]|0:b;g=c-a>>2;f=0;while(1){a=k[l+(f<<2)>>2]|0;c=a+36|0;b=i[c+11>>0]|0;if(b<<24>>24<0){e=k[a+40>>2]|0;c=k[c>>2]|0}else e=b&255;d=j>>>0<e>>>0;b=d?j:e;if(!((b|0)!=0?(EI(c,h,b)|0)!=0:0))m=8;if((m|0)==8?(m=0,e>>>0>=j>>>0&(d^1)):0)break a;f=f+1|0;if(f>>>0>=g>>>0){a=0;break}}}while(0);return a|0}function Tr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;i=a+4|0;g=k[i>>2]|0;j=k[a>>2]|0;c=((g-j|0)/40|0)+1|0;if(c>>>0>107374182)J5(a);l=a+8|0;f=((k[l>>2]|0)-j|0)/40|0;h=f<<1;c=f>>>0<53687091?(h>>>0<c>>>0?c:h):107374182;if(!c)d=0;else d=cW(c*40|0)|0;h=d+(((g-j|0)/40|0)*40|0)|0;f=d+(c*40|0)|0;e=h;c=b;d=e+40|0;do{k[e>>2]=k[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));c=g-j|0;d=h+(((c|0)/-40|0)*40|0)|0;if((c|0)>0)fE(d|0,j|0,c|0)|0;k[a>>2]=d;k[i>>2]=h+40;k[l>>2]=f;if(j|0)zba(j);return}function Ur(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=r;r=r+32|0;d=g+12|0;f=g;if(!(i[a+131>>0]|0)){tI(f,(k[(k[a+4>>2]|0)+2272>>2]|0)+40|0);k[d+4>>2]=15;k[d>>2]=8172;e=d+8|0;k[e>>2]=e;k[d+12>>2]=e;k[d+16>>2]=0;b=k[f+4>>2]|0;c=b;if((c|0)!=(f|0))do{ov(e,b+8|0);b=k[c+4>>2]|0;c=b}while((c|0)!=(f|0));tE(f);fB(k[a+108>>2]|0,d);k[d>>2]=8172;tE(d+8|0)}r=g;return}function Vr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+32|0;d=e;c=i[b>>0]|0;if(c<<24>>24!=0?(i[b+1>>0]|0)!=0:0){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;k[d+24>>2]=0;k[d+28>>2]=0;do{f=d+(((c&255)>>>5&255)<<2)|0;k[f>>2]=k[f>>2]|1<<(c&31);b=b+1|0;c=i[b>>0]|0}while(c<<24>>24!=0);c=i[a>>0]|0;a:do if(!(c<<24>>24))b=a;else{b=a;do{if(k[d+(((c&255)>>>5&255)<<2)>>2]&1<<(c&31)|0)break a;b=b+1|0;c=i[b>>0]|0}while(c<<24>>24!=0)}while(0);b=b-a|0}else b=(cs(a,c<<24>>24)|0)-a|0;r=e;return b|0}function Wr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=r;r=r+32|0;c=e+8|0;g=e;k[c>>2]=0;GM(c,0,0,0);f=b+8|0;a=(k[(k[f>>2]|0)+8>>2]|0)+3|0;jR(c,a);k[c+4>>2]=a;d=cW(16)|0;k[d>>2]=0;GM(d,k[c>>2]|0,a,a);i[d+12>>0]=1;k[g>>2]=d;k[g+4>>2]=0;JX(g,k[b+4>>2]&255);rO(g,j[b+12>>1]|0);b=k[f>>2]|0;b=ub(22,k[b>>2]|0,k[b+4>>2]|0)|0;a=b;MU(g,a,k[(k[f>>2]|0)+8>>2]|0);if(b|0)wc(a);a=k[c>>2]|0;if(a|0)wba(a);r=e;return d|0}function Xr(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=7128;b=a+4|0;k[b>>2]=7164;c=a+20|0;k[c>>2]=7188;e=a+108|0;k[e>>2]=4596;d=a+112|0;k[d>>2]=4620;up(e);$H(a+116|0);k[d>>2]=2024;p1(a+96|0);p1(a+84|0);p1(a+64|0);p1(a+36|0);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Yr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[b+48>>2]|0;do if(!(c&16))if(!(c&8)){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;break}else{e=k[b+8>>2]|0;b=k[b+16>>2]|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;Qx(a,e,b);break}else{d=b+44|0;c=k[d>>2]|0;e=k[b+24>>2]|0;if(c>>>0<e>>>0){k[d>>2]=e;c=e}b=k[b+20>>2]|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;Qx(a,b,c)}while(0);return}function Zr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;e=g+12|0;f=g;SC(e,a+24|0);c=k[e+4>>2]|0;d=c;if((d|0)!=(e|0))do{c=c+8|0;if(!(b?(h=k[c>>2]|0,Ub[k[(k[h>>2]|0)+64>>2]&511](h)|0):0)){h=k[c>>2]|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,30335,10);Bg(a,h,0,0);p1(f)}c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0));$H(e);r=g;return}function _r(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{f=c;c=c+-16|0;k[d+-16>>2]=k[c>>2];yD(d+-12|0,f+-12|0);d=(k[g>>2]|0)+-16|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;h=b+8|0;g=k[i>>2]|0;k[i>>2]=k[h>>2];k[h>>2]=g;h=a+8|0;i=b+12|0;a=k[h>>2]|0;k[h>>2]=k[i>>2];k[i>>2]=a;k[b>>2]=k[e>>2];return}function $r(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0;if((1073741807-b|0)>>>0<c>>>0)x5(a);m=a+8|0;if((i[m+3>>0]|0)<0)l=k[a>>2]|0;else l=a;if(b>>>0<536870887){c=c+b|0;h=b<<1;c=c>>>0<h>>>0?h:c;c=c>>>0<2?2:c+4&-4;if(c>>>0>1073741823)Ra(109031,109068,1734,109109);else j=c}else j=1073741807;h=cW(j<<2)|0;if(e|0)j1(h,l,e)|0;c=d-f-e|0;if(c|0)j1(h+(e<<2)+(g<<2)|0,l+(e<<2)+(f<<2)|0,c)|0;if((b|0)!=1)zba(l);k[a>>2]=h;k[m>>2]=j|-2147483648;return}function as(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=a+4|0;Mu(k[e>>2]|0,b,a);e=k[(k[e>>2]|0)+1576>>2]|0;do if((e|0)==1)c=xe(a,b,b)|0;else{c=(b|0)/(e|0)|0;d=k[a+240>>2]|0;if((c>>>0>=d>>>0?((k[a+244>>2]|0)+d|0)>>>0>c>>>0:0)?(f=k[(k[a+248>>2]|0)+(c-d<<2)>>2]|0,(f|0)>0):0){g=(b|0)%(e|0)|0;c=(f|0)/(e|0)|0;d=$(g+1|0,c)|0;c=Rc(a,b,b,$(c,g)|0,((g|0)==(e+-1|0)?f:d)+-1|0,c)|0;break}c=HC(a,b,b)|0}while(0);qs(a,b,b,c);return}function bs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<3){Qd(c,34543,89,2,0,0,0);g=Tn(Tn(c,34726,9)|0,103341,1)|0;e=i[b+11>>0]|0;f=e<<24>>24<0;Tn(g,f?k[b>>2]|0:b,f?k[b+4>>2]|0:e&255)|0;hi(c)}il(k[(k[a+4>>2]|0)+4>>2]|0,b);r=d;return}function cs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=b&255;a:do if(!d)a=a+(iC(a)|0)|0;else{if(a&3){c=b&255;do{e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}d=$(d,16843009)|0;c=k[a>>2]|0;b:do if(!((c&-2139062144^-2139062144)&c+-16843009))do{e=c^d;if((e&-2139062144^-2139062144)&e+-16843009|0)break b;a=a+4|0;c=k[a>>2]|0}while(!((c&-2139062144^-2139062144)&c+-16843009|0));while(0);c=b&255;while(1){e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break;else a=a+1|0}}while(0);return a|0}function ds(a){a=a|0;var b=0,c=0;b=a+8|0;c=k[b>>2]|0;do if(c)if((k[c>>2]|0)==(a|0)){k[c>>2]=0;b=k[b>>2]|0;a=k[b+4>>2]|0;if(!a){a=b;break}while(1){b=k[a>>2]|0;if(b|0){a=b;continue}b=k[a+4>>2]|0;if(!b)break;else a=b}break}else{k[c+4>>2]=0;b=k[b>>2]|0;a=k[b>>2]|0;if(!a){a=b;break}while(1){b=k[a>>2]|0;if(b|0){a=b;continue}b=k[a+4>>2]|0;if(!b)break;else a=b}break}else a=0;while(0);return a|0}function es(a,b){a=a|0;b=b|0;var c=0,d=0;c=Tn(a,34428,5)|0;c=Tn(Ln(c,k[b+32>>2]|0)|0,34434,7)|0;d=c+(k[(k[c>>2]|0)+-12>>2]|0)+4|0;k[d>>2]=k[d>>2]&-261|4;c=Tn(Ek(c,b)|0,34442,5)|0;d=c+(k[(k[c>>2]|0)+-12>>2]|0)+4|0;k[d>>2]=k[d>>2]&-261|4;Tn(Ek(c,b+16|0)|0,103298,1)|0;return a|0}function fs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;fj(a,b,c)|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,49763,5);VJ(b,e,c+76|0)|0;p1(e);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,49833,14);VJ(b,e,c+88|0)|0;p1(e);r=d;return 1}function gs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=r;r=r+16|0;d=d2(k[c>>2]|0,e)|0;f=aaa(k[c>>2]|0)|0;if((f|0)==(R9(k[c>>2]|0)|0)){f=aaa(k[c>>2]|0)|0;_J()|0;h=b+128|0;i=k[h>>2]|0;h=k[h+4>>2]|0;g=_J()|0;rl(a,i,h,g,M,f,1)}i=aaa(k[c>>2]|0)|0;jf(a,d,b,i,R9(k[c>>2]|0)|0);r=e;return}function hs(a,b){a=a|0;b=b|0;var c=0,d=0;d=k[b>>2]|0;b=k[d+4>>2]|0;if(!b){c=d;while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((k[a>>2]|0)==(d|0))k[a>>2]=b;c=a+8|0;k[c>>2]=(k[c>>2]|0)+-1;nd(k[a+4>>2]|0,d);a=d+28|0;k[a>>2]=4972;aE(a);p1(d+16|0);zba(d);return b|0}function is(a){a=a|0;var b=0,c=0,d=0,e=0;e=r;r=r+160|0;c=e;d=a+436|0;b=k[d>>2]|0;do if(!b){a=Ta(108,k[a+440>>2]|0)|0;if((a|0)==-1){if((k[2783]|0)>=4){b=0;break}Qd(c,75946,454,3,0,0,0);Tn(Tn(c,75982,6)|0,97052,37)|0;hi(c);b=0;break}b=cW(48)|0;zG(b,a);a=k[d>>2]|0;k[d>>2]=0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);k[d>>2]=b}while(0);r=e;return b|0}function js(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;a=k[d>>2]|0;do if(a){e=k[c>>2]|0;while(1){d=k[a+16>>2]|0;if((e|0)<(d|0)){d=k[a>>2]|0;if(!d){d=5;break}else a=d}else{if((d|0)>=(e|0)){d=10;break}c=a+4|0;d=k[c>>2]|0;if(!d){d=9;break}else a=d}}if((d|0)==5){k[b>>2]=a;break}else if((d|0)==9){k[b>>2]=a;a=c;break}else if((d|0)==10){k[b>>2]=a;a=b;break}}else{k[b>>2]=d;a=d}while(0);return a|0}function ks(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0;if((-18-b|0)>>>0<c>>>0)x5(a);if((i[a+11>>0]|0)<0)m=k[a>>2]|0;else m=a;if(b>>>0<2147483623){j=c+b|0;l=b<<1;j=j>>>0<l>>>0?l:j;j=j>>>0<11?11:j+16&-16}else j=-17;l=cW(j)|0;if(e|0)fE(l|0,m|0,e|0)|0;if(g|0)fE(l+e|0,h|0,g|0)|0;c=d-f|0;d=c-e|0;if(d|0)fE(l+e+g|0,m+e+f|0,d|0)|0;if((b|0)!=10)zba(m);k[a>>2]=l;k[a+8>>2]=j|-2147483648;g=c+g|0;k[a+4>>2]=g;i[l+g>>0]=0;return}function ls(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=a+4|0;Rb[k[(k[g>>2]|0)+8>>2]&2047](g);h=a+8|0;d=k[a+12>>2]|0;e=d;if((e|0)!=(h|0)){f=a+16|0;do{a=d+8|0;d=k[a>>2]|0;if((Ub[k[(k[d>>2]|0)+8>>2]&511](d)|0)==(b|0)){a=k[a>>2]|0;a=cc[k[(k[a>>2]|0)+20>>2]&127](a,c)|0;d=cW(12)|0;k[d+8>>2]=a;k[d+4>>2]=h;a=k[h>>2]|0;k[d>>2]=a;k[a+4>>2]=d;k[h>>2]=d;k[f>>2]=(k[f>>2]|0)+1}d=k[e+4>>2]|0;e=d}while((e|0)!=(h|0))}Rb[k[(k[g>>2]|0)+12>>2]&2047](g);return}function ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=r;r=r+16|0;f=g;e=ak(b,f,c)|0;c=k[e>>2]|0;if(!c){c=cW(28)|0;h=c+16|0;k[h>>2]=k[d>>2];k[h+4>>2]=k[d+4>>2];k[h+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wF(b,k[f>>2]|0,e,c);e=1}else e=0;k[a>>2]=c;i[a+4>>0]=e;r=g;return}function ns(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0;e=r;r=r+64|0;f=e;HA(f,b,c,d);j=f+44|0;k[j>>2]=0;h=f+48|0;k[h>>2]=0;k[f>>2]=15224;g=k[a+4>>2]|0;c=a+8|0;b=k[c>>2]|0;m=g+b|0;d=b+4|0;k[c>>2]=d;i=(l[m+2>>0]|0)<<8|(l[m+1>>0]|0)<<16|(l[m+3>>0]|0);k[j>>2]=l[m>>0];k[h>>2]=i;d=g+d|0;k[c>>2]=b+8;k[f+52>>2]=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,f,+p[a+40>>3]);O3(f);r=e;return 8}function os(a,b){a=a|0;b=b|0;if(!b)return;else{os(a,k[b>>2]|0);os(a,k[b+4>>2]|0);jz(b+28|0);p1(b+16|0);zba(b);return}}function ps(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=k[a+8>>2]|0;i[k[b>>2]>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;e=(k[b>>2]|0)+4|0;k[b>>2]=e;d=a+12|0;d=l[d>>0]|l[d+1>>0]<<8|l[d+2>>0]<<16|l[d+3>>0]<<24;i[e>>0]=d;i[e+1>>0]=d>>8;i[e+2>>0]=d>>16;i[e+3>>0]=d>>24;k[b>>2]=(k[b>>2]|0)+4;e=a+32|0;d=a+36|0;a=k[e>>2]|0;if((k[d>>2]|0)!=(a|0)){c=0;do{f=k[a+(c<<2)>>2]|0;Sb[k[(k[f>>2]|0)+12>>2]&511](f,b);c=c+1|0;a=k[e>>2]|0}while(c>>>0<(k[d>>2]|0)-a>>2>>>0)}return}function qs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+160|0;e=f;if(!d){if((k[2783]|0)<5){Qd(e,50909,244,4,0,0,0);Tn(Mn(Tn(Mn(Tn(e,51090,38)|0,b)|0,51129,1)|0,c)|0,51131,2)|0;hi(e)}hx(a,0)}else Ik(a,d);r=f;return}function rs(a,b){a=a|0;b=b|0;var c=0,d=0;c=b;a:do if(!((c^a)&3)){if(c&3)do{c=i[b>>0]|0;i[a>>0]=c;if(!(c<<24>>24))break a;b=b+1|0;a=a+1|0}while((b&3|0)!=0);c=k[b>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009)){d=a;while(1){b=b+4|0;a=d+4|0;k[d>>2]=c;c=k[b>>2]|0;if((c&-2139062144^-2139062144)&c+-16843009|0)break;else d=a}}d=8}else d=8;while(0);if((d|0)==8){d=i[b>>0]|0;i[a>>0]=d;if(d<<24>>24)do{b=b+1|0;a=a+1|0;d=i[b>>0]|0;i[a>>0]=d}while(d<<24>>24!=0)}return a|0}function ss(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=a+4|0;Rb[k[(k[h>>2]|0)+8>>2]&2047](h);c=k[a+12>>2]|0;i=a+8|0;d=c;if((d|0)!=(i|0)){g=a+16|0;do{f=d+4|0;e=c;c=k[f>>2]|0;a=e+8|0;j=k[a>>2]|0;if((Ub[k[(k[j>>2]|0)+8>>2]&511](j)|0)==(b|0)){a=k[a>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);k[(k[d>>2]|0)+4>>2]=k[f>>2];k[k[f>>2]>>2]=k[e>>2];k[g>>2]=(k[g>>2]|0)+-1;zba(e)}d=c}while((d|0)!=(i|0))}Rb[k[(k[h>>2]|0)+12>>2]&2047](h);return}function ts(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+16|0;e=d;c=cW(40)|0;f=c+16|0;iI(f,b);sD(c+28|0,b+12|0);b=Om(a,e,f)|0;wF(a,k[e>>2]|0,b,c);r=d;return c|0}function us(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=r;r=r+32|0;c=e+12|0;d=e;if(_Y(b,0)|0){a=a+12|0;g=k[a>>2]|0;ME(d,b,0);dt(c,d);b=i[c+11>>0]|0;f=b<<24>>24<0;Tn(g,f?k[c>>2]|0:c,f?k[c+4>>2]|0:b&255)|0;p1(c);p1(d);Tn(k[a>>2]|0,103283,1)|0}r=e;return}function vs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+128|0;e=m+112|0;l=m;f=l;g=22940;h=f+112|0;do{k[f>>2]=k[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if((b+-1|0)>>>0>2147483646)if(!b){a=e;b=1;j=4}else{b=z0()|0;k[b>>2]=75;b=-1}else j=4;if((j|0)==4){j=-2-a|0;j=b>>>0>j>>>0?j:b;k[l+48>>2]=j;e=l+20|0;k[e>>2]=a;k[l+44>>2]=a;b=a+j|0;a=l+16|0;k[a>>2]=b;k[l+28>>2]=b;b=lm(l,c,d)|0;if(j){l=k[e>>2]|0;i[l+(((l|0)==(k[a>>2]|0))<<31>>31)>>0]=0}}r=m;return b|0}function ws(a,b){a=a|0;b=b|0;if(!b)return;else{ws(a,k[b>>2]|0);ws(a,k[b+4>>2]|0);a=b+28|0;k[a>>2]=4972;aE(a);p1(b+16|0);zba(b);return}}function xs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=r;r=r+16|0;d=f;e=d2(k[c>>2]|0,d)|0;g=aaa(k[c>>2]|0)|0;if((g|0)==(R9(k[c>>2]|0)|0)){_J()|0;h=b+112|0;i=k[h>>2]|0;h=k[h+4>>2]|0;g=_J()|0;rl(a,i,h,g,M,k[d>>2]|0,1)}i=aaa(k[c>>2]|0)|0;df(a,e,b,i,R9(k[c>>2]|0)|0);r=f;return}function ys(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=a+104|0;f=k[c>>2]|0;if((f|0)!=0?(k[a+108>>2]|0)>=(f|0):0)g=4;else{b=NP(a)|0;if((b|0)>=0){c=k[c>>2]|0;f=k[a+8>>2]|0;if(c){e=k[a+4>>2]|0;c=c-(k[a+108>>2]|0)|0;d=f;if((f-e|0)<(c|0))g=9;else k[a+100>>2]=e+(c+-1)}else{d=f;g=9}if((g|0)==9)k[a+100>>2]=f;c=a+4|0;if(!d)c=k[c>>2]|0;else{c=k[c>>2]|0;a=a+108|0;k[a>>2]=d+1-c+(k[a>>2]|0)}c=c+-1|0;if((l[c>>0]|0|0)!=(b|0))i[c>>0]=b}else g=4}if((g|0)==4){k[a+100>>2]=0;b=-1}return b|0}function zs(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=a+52|0;e=k[f>>2]|0;b=k[e+452>>2]|0;e=e+448|0;if((b|0)==(e|0))c=0;else{c=0;d=b;do{g=k[b+8>>2]|0;c=((Ub[k[(k[g>>2]|0)+64>>2]&511](g)|0)&1^1)+c|0;b=k[d+4>>2]|0;d=b}while((d|0)!=(e|0))}b=a+64|0;if(i[b>>0]|0){g=a+60|0;e=Ta(0,k[g>>2]|0)|0;k[g>>2]=e;i[b>>0]=0}b=k[f>>2]|0;if((c|0)<=(k[b+1892>>2]|0)){i[a+72>>0]=0;b=k[b+2164>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+56>>2]&2047](b)}else tB(a+56|0,k[b+1884>>2]|0)|0;return}function As(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+16|0;f=c+8|0;e=c;Rb[k[(k[a>>2]|0)+224>>2]&2047](a);km(a,b);k[f>>2]=184;k[f+4>>2]=1;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];bw(b+1076|0,a,d);f=k[(k[a>>2]|0)+184>>2]|0;k[d>>2]=-1;Sb[f&511](a,d);k[e>>2]=1292;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];mw(b+476|0,a,d);r=c;return}function Bs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;do if(Kw(b,56774,7)|0)if(!(Kw(b,56782,8)|0)){i[a+38>>0]=1;f=b+8|0;e=c+-8|0;d=6;break}else{rF(a);break}else{i[a+38>>0]=0;f=b+7|0;e=c+-7|0;d=6}while(0);if((d|0)==6){a:do if(!e)b=0;else{c=0;while(1){b=f+c|0;d=i[b>>0]|0;if(!(d<<24>>24)){b=0;break a}c=c+1|0;if(d<<24>>24==47)break a;if(c>>>0>=e>>>0){b=0;break}}}while(0);c=(b|0)==0?f+e|0:b;d=c-f|0;an(a,f,d);xv(a,c,e-d|0)}return}function Cs(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=DT(a+2060|0,c)|0;f=(j|0)==0;if(!f?RE(a)|0:0){au(b,c,d,e);g=(k[j+4>>2]|0)-(k[j>>2]|0)>>2;g=g>>>0<e>>>0?g:e;if((g|0)>(d|0)){h=j+12|0;i=j+20|0;e=d;do{f=k[(k[j>>2]|0)+(e<<2)>>2]|0;if(f|0)Nl(b,f,k[h>>2]|0,e,k[i>>2]|0);e=e+1|0}while((e|0)<(g|0))}rD(a+296|0,b,c)}else Jt(b,c,f);return}function Ds(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;h=a+8|0;d=k[h>>2]|0;i=a+4|0;c=k[i>>2]|0;l=d-c>>2;f=a+16|0;g=k[f>>2]|0;j=a+20|0;e=k[j>>2]|0;if((((l|0)==0?0:(l*341|0)+-1|0)|0)==(e+g|0)){rd(a);e=k[j>>2]|0;a=k[f>>2]|0;d=k[h>>2]|0;c=k[i>>2]|0}else a=g;a=a+e|0;if((d|0)==(c|0))a=0;else a=(k[c+(((a>>>0)/341|0)<<2)>>2]|0)+(((a>>>0)%341|0)*12|0)|0;iI(a,b);k[j>>2]=(k[j>>2]|0)+1;return}function Es(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+8>>2]|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=a+12|0;d=l[d>>0]|l[d+1>>0]<<8|l[d+2>>0]<<16|l[d+3>>0]<<24;i[c>>0]=d;i[c+1>>0]=d>>8;i[c+2>>0]=d>>16;i[c+3>>0]=d>>24;c=(k[b>>2]|0)+4|0;k[b>>2]=c;i[c>>0]=0;i[c+1>>0]=0;i[c+2>>0]=0;i[c+3>>0]=0;i[c+4>>0]=0;i[c+5>>0]=0;c=(k[b>>2]|0)+6|0;k[b>>2]=c;a=j[a+44>>1]|0;i[c>>0]=(a&65535)>>>8;i[(k[b>>2]|0)+1>>0]=a;k[b>>2]=(k[b>>2]|0)+2;return}function Fs(a){a=a|0;var b=0,c=0,d=0,e=0;d=a+368|0;b=k[d>>2]|0;e=a+372|0;if((b|0)!=(e|0)){c=b;while(1){b=k[c+20>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[c+4>>2]|0;if(!b)while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((b|0)==(e|0))break;else c=b}}aC(d,k[e>>2]|0);k[a+376>>2]=0;k[d>>2]=e;k[e>>2]=0;return}function Gs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;Bt(a,b);f=a+52|0;e=a+56|0;c=(k[e>>2]|0)-(k[f>>2]|0)>>2;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[f>>2]|0;if((k[e>>2]|0)!=(a|0)){d=0;do{g=k[a+(d<<2)>>2]|0;i[c>>0]=g>>>24;i[(k[b>>2]|0)+1>>0]=g>>>16;i[(k[b>>2]|0)+2>>0]=g>>>8;i[(k[b>>2]|0)+3>>0]=g;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=d+1|0;a=k[f>>2]|0}while(d>>>0<(k[e>>2]|0)-a>>2>>>0)}return}function Hs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=(b+7|0)/8|0;g=a+4|0;d=k[g>>2]|0;e=d<<1>>1;h=(e+7|0)/8|0;c=k[a>>2]|0;do if(!c)if((b|0)>0){c=lc(f)|0;k[a>>2]=c;d=d|-2147483648;k[g>>2]=d}else c=0;else{if((d|0)<0){c=OD(c,f)|0;k[a>>2]=c;d=k[g>>2]|-2147483648;k[g>>2]=d;break}if((e|0)<(b|0)){e=lc(f)|0;fE(e|0,c|0,((f|0)<(h|0)?f:h)|0)|0;k[a>>2]=e;d=d|-2147483648;k[g>>2]=d;c=e}}while(0);k[g>>2]=d&-2147483648|b&2147483647;if((f|0)>(h|0))XG(c+h|0,0,f-h|0)|0;dV(a);return}function Is(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;d=i+8|0;e=i+12|0;f=i;g=a+60|0;h=Xx(g,b)|0;if(!((h|0)!=(a+64|0)?(c=k[h+20>>2]|0,(c|0)!=0):0)){c=cW(88)|0;qA(c);k[d>>2]=b;Dl(f,g,b,113526,d,e);k[(k[f>>2]|0)+20>>2]=c}r=i;return c|0}function Js(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+16|0;g=h;SC(g,(k[a+24>>2]|0)+904|0);c=k[g+4>>2]|0;f=c;if((f|0)==(g|0)){e=0;d=0}else{e=0;d=0;do{j=c+8|0;e=(nC((k[j>>2]|0)+460|0)|0)+e|0;d=(WB((k[j>>2]|0)+460|0)|0)+d|0;c=k[f+4>>2]|0;f=c}while((f|0)!=(g|0))}c=b+8|0;if((i[c+11>>0]|0)<0)c=k[c>>2]|0;La(139,k[a+20>>2]|0,c|0,e|0,d|0)|0;$H(g);r=h;return}function Ks(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c;e=Tn(b,67767,4)|0;Ln(e,k[a+8>>2]|0)|0;e=Tn(b,68971,12)|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,a+44|0,4);b=i[d+11>>0]|0;a=b<<24>>24<0;Tn(e,a?k[d>>2]|0:d,a?k[d+4>>2]|0:b&255)|0;p1(d);r=c;return}function Ls(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=r;r=r+16|0;e=f;d=b+8|0;g=k[d>>2]|0;a=g+1|0;k[d>>2]=a;d=c+20|0;mh(e,b,i[(k[b>>2]|0)+g>>0]|0,(k[b+4>>2]|0)-a|0);a=d+11|0;if((i[a>>0]|0)<0){i[k[d>>2]>>0]=0;k[c+24>>2]=0;a=d}else{i[d>>0]=0;i[a>>0]=0;a=d}Qm(d,0);k[a>>2]=k[e>>2];k[a+4>>2]=k[e+4>>2];k[a+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;p1(e);r=f;return}function Ms(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;d=f+8|0;e=f;b=b+36|0;if(!(nn(b,c)|0)){k[a>>2]=0;b=0}else{k[d>>2]=c;Dr(e,b,c,113525,d,f+12|0);b=k[e>>2]|0;k[a>>2]=k[b+28>>2];b=k[b+32>>2]|0}k[a+4>>2]=b;r=f;return}function Ns(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;j=a+8|0;e=k[j>>2]|0;l=a+4|0;d=k[l>>2]|0;n=e-d|0;g=a+16|0;h=k[g>>2]|0;m=a+20|0;f=k[m>>2]|0;if((((n|0)==0?0:(n<<7)+-1|0)|0)==(f+h|0)){sd(a);f=k[m>>2]|0;a=k[g>>2]|0;e=k[j>>2]|0;d=k[l>>2]|0}else a=h;a=a+f|0;if((e|0)==(d|0))a=0;else a=(k[d+(a>>>9<<2)>>2]|0)+((a&511)<<3)|0;TU(a,k[b>>2]|0,(i[c>>0]|0)!=0);k[m>>2]=(k[m>>2]|0)+1;return}function Os(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=r;r=r+16|0;d=g;e=b+8|0;f=c+20|0;mh(d,b,0,-1);a=f+11|0;if((i[a>>0]|0)<0){i[k[f>>2]>>0]=0;k[c+24>>2]=0;a=f}else{i[f>>0]=0;i[a>>0]=0;a=f}Qm(f,0);k[a>>2]=k[d>>2];k[a+4>>2]=k[d+4>>2];k[a+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;p1(d);k[c+32>>2]=(k[b>>2]|0)+(k[e>>2]|0);k[c+36>>2]=(k[b+4>>2]|0)-(k[e>>2]|0);r=g;return}function Ps(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0.0,i=0,j=0.0,l=0;b=a+288|0;g=$L(b)|0;if(g|0?(h=+(Rv(b)|0),i=g+4|0,f=k[g>>2]|0,(k[i>>2]|0)!=(f|0)):0){d=a+4|0;e=a+352|0;c=0;b=f;do{l=b;f=GG(v0(k[d>>2]|0)|0,l+(c<<5)|0)|0;j=+(k[l+(c<<5)+8>>2]|0)/h*1.0e3;fJ(e,f,((f|0)<0)<<31>>31)|0;Ku(k[d>>2]|0,a,f,~~j,0);c=c+1|0;b=k[g>>2]|0}while(c>>>0<(k[i>>2]|0)-b>>5>>>0)}return}function Qs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(x9(c)|0){h=a+2024|0;g=a+1380|0;b=0;f=0;do{a=c;a=y0(k[a>>2]|0,k[a+4>>2]|0,f|0,0)|0;if(TJ(c,a,((a|0)<0)<<31>>31)|0){e=k[(k[d>>2]|0)+(b<<2)>>2]|0;b=b+1|0;a=cF(h,a,e)|0;if((e|0)>0&(a|0)!=0){k[a+20>>2]=e;i=k[g>>2]|0;nR(a,(((e>>>0)%(i>>>0)|0|0)!=0&1)+((e>>>0)/(i>>>0)|0)|0)}}f=f+1|0}while(f>>>0<(x9(c)|0)>>>0)}return}function Rs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=E_(a)|0;d=e;a:while(1){a=d;b:while(1){switch(i[a>>0]|0){case 0:{a=0;break a}case 44:break b;default:{}}a=a+1|0}i[a>>0]=0;if(PK(d,b)|0){f=6;break}else d=a+1|0}if((f|0)==6)if(!c)a=1;else{dZ(c,d)|0;a=1}if(PK(d,b)|0)if(!c)a=1;else{dZ(c,d)|0;a=1}wc(e);return a|0}function Ss(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;hM(g,a);a:do if(i[g>>0]|0){c=k[a+(k[(k[a>>2]|0)+-12>>2]|0)+24>>2]|0;d=c;do if(c|0){e=d+24|0;f=k[e>>2]|0;if((f|0)==(k[d+28>>2]|0))if((cc[k[(k[c>>2]|0)+52>>2]&127](d,b&255)|0)==-1)break;else break a;else{k[e>>2]=f+1;i[f>>0]=b;break a}}while(0);f=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[f>>2]=k[f>>2]|1}while(0);_B(g);r=h;return a|0}function Ts(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=cW(72)|0;f=c+8|0;wo(f,b);k[f>>2]=6464;k[c+12>>2]=6492;f=b+24|0;d=k[f+4>>2]|0;e=c+32|0;k[e>>2]=k[f>>2];k[e+4>>2]=d;e=c+40|0;d=b+32|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];k[e+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=c+56|0;b=b+48|0;k[d>>2]=k[b>>2];k[d+4>>2]=k[b+4>>2];i[d+8>>0]=i[b+8>>0]|0;k[c+4>>2]=a;b=k[a>>2]|0;k[c>>2]=b;k[b+4>>2]=c;k[a>>2]=c;b=a+8|0;k[b>>2]=(k[b>>2]|0)+1;return}function Us(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+160|0;c=e+156|0;d=e;k[c>>2]=b;wn(b);b=a+1180|0;f=k[b>>2]|0;dk(a+1172|0,c);if((k[2783]|0)<5?f>>>0<=(k[b>>2]|0)>>>0:0){Qd(d,27921,1278,4,0,0,0);Tn(Tn(d,27948,6)|0,28614,79)|0;hi(d)}a=k[c>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);r=e;return}function Vs(a){a=a|0;var b=0,c=0,d=0;d=r;r=r+160|0;b=d;MM(a+1052|0,a+116|0)|0;c=a+474|0;if(i[c>>0]|0?i[a+113>>0]|0:0){if((k[2783]|0)<3){Qd(b,30665,607,2,0,0,0);Tn(b,30680,33)|0;hi(b)}i[c>>0]=0;i[a+476>>0]=0;a=k[a+200>>2]|0;c=a+904|0;a=k[a+908>>2]|0;b=a;if((b|0)!=(c|0))do{h0(k[a+8>>2]|0);a=k[b+4>>2]|0;b=a}while((b|0)!=(c|0))}r=d;return}function Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=a+4|0;e=k[f>>2]|0;c=k[e+2056>>2]|0;e=e+2024|0;d=k[e>>2]|0;if(c>>>0<(d+(x9(e)|0)|0)>>>0)do{if(cc[k[(k[b>>2]|0)+56>>2]&127](b,c)|0){e=k[(k[a>>2]|0)+28>>2]|0;d=DT((k[f>>2]|0)+2060|0,c)|0;if((d|0)!=0?(g=k[d+16>>2]|0,(g|0)>0):0)d=g;else d=k[(k[f>>2]|0)+1444>>2]|0;jc[e&63](a,b,c,d)}c=c+1|0;e=(k[f>>2]|0)+2024|0;d=k[e>>2]|0}while(c>>>0<(d+(x9(e)|0)|0)>>>0);return}function Xs(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=r;r=r+112|0;c=h+4|0;d=h;k[d>>2]=c+100;HE(a+8|0,c,d,e,f,g);g=k[d>>2]|0;f=c;c=k[b>>2]|0;while(1){if((f|0)==(g|0))break;d=i[f>>0]|0;do if(c){a=c+24|0;e=k[a>>2]|0;if((e|0)==(k[c+28>>2]|0)){b=(cc[k[(k[c>>2]|0)+52>>2]&127](c,d&255)|0)==-1;c=b?0:c;break}else{k[a>>2]=e+1;i[e>>0]=d;break}}else c=0;while(0);f=f+1|0}r=h;return c|0}function Ys(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+160|0;c=e;if(i[a+858>>0]|0?(d=k[a+648>>2]|0,(d|0)!=(k[a+652>>2]|0)):0){b=k[d>>2]|0;if((k[2783]|0)<4){Qd(c,27921,819,3,0,0,0);d=Tn(Tn(c,27948,6)|0,28454,46)|0;Mn(d,k[b+60>>2]|0)|0;hi(c)}d=Xaa(b)|0;fe(a,k[d>>2]|0,1)}r=e;return}function Zs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{c=c+-340|0;Xc(d+-340|0,c);d=(k[g>>2]|0)+-340|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;h=b+8|0;g=k[i>>2]|0;k[i>>2]=k[h>>2];k[h>>2]=g;h=a+8|0;i=b+12|0;a=k[h>>2]|0;k[h>>2]=k[i>>2];k[i>>2]=a;k[b>>2]=k[e>>2];return}function _s(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;d=f;WC(a+236|0,a,b,c);CC(a,b,0);k[d>>2]=0;e=d+4|0;k[e>>2]=0;k[d+8>>2]=0;if(c){Fj(a,d,b);Zz(a,b,1);Jm(a,d,0,0);a=k[d>>2]|0;b=a;if(a|0){c=k[e>>2]|0;if((c|0)!=(a|0))k[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);zba(a)}}else Zz(a,b,0);r=f;return}function $s(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;do if((k[a+88>>2]|0)==0?(c=a+60|0,e=a4(k[c>>2]|0)|0,e>>>0<(k[a+92>>2]|0)>>>0):0){if(gX(k[c>>2]|0,b)|0){if(!b)break;a=k[b>>2]|0;if(a|0)wba(a);zba(b);break}if(i[a+56>>0]|0){EL(a,b);break}Vi(a,b);if(b|0){a=k[b>>2]|0;if(a|0)wba(a);zba(b)}}else d=14;while(0);if((d|0)==14)EL(a,b);return}function at(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{c=c+-372|0;Kc(d+-372|0,c);d=(k[g>>2]|0)+-372|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;h=b+8|0;g=k[i>>2]|0;k[i>>2]=k[h>>2];k[h>>2]=g;h=a+8|0;i=b+12|0;a=k[h>>2]|0;k[h>>2]=k[i>>2];k[i>>2]=a;k[b>>2]=k[e>>2];return}function bt(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=r;r=r+160|0;b=c;oN(a);if(i[a+129>>0]|0){if((k[2783]|0)<5){Qd(b,52211,839,4,0,0,0);g=Tn(b,53418,58)|0;f=a+8|0;d=i[f+11>>0]|0;e=d<<24>>24<0;Tn(Tn(g,e?k[f>>2]|0:f,e?k[a+12>>2]|0:d&255)|0,68623,1)|0;hi(b)}}else Bh(a);r=c;return}function ct(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;e=r;r=r+32|0;b=e;c=e+16|0;d=a+48|0;if(i[d>>0]|0){f=a+44|0;g=Ta(0,k[f>>2]|0)|0;k[f>>2]=g;i[d>>0]=0}mD(b,0);ld(a,b);g=(w4(k[a+36>>2]|0)|0)+1196|0;g=k[g>>2]|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,55856,7);On(g,b,c)|0;p1(c);Lv(b);r=e;return}function dt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;d=b+11|0;c=i[d>>0]|0;e=b+4|0;Qm(a,c<<24>>24<0?k[e>>2]|0:c&255);d=i[d>>0]|0;c=d<<24>>24<0;b=c?k[b>>2]|0:b;d=c?k[e>>2]|0:d&255;e=b+d|0;if(d|0)do{c=b+1|0;d=i[b>>0]|0;if(d<<24>>24==13){b=(i[c>>0]|0)==10?b+2|0:c;Jx(a,10)}else{Jx(a,d);b=c}}while((b|0)!=(e|0));return}function et(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;mO(a,b,0);XG(k[a+8>>2]|0,0,((k[a+12>>2]<<1>>1)+7|0)/8|0|0)|0;mO(a+16|0,b,0);XG(k[a+24>>2]|0,0,((k[a+28>>2]<<1>>1)+7|0)/8|0|0)|0;e=a+36|0;c=k[a+40>>2]|0;f=(k[a+44>>2]|0)+c|0;if(c>>>0<f>>>0)do{if(DT(e,c)|0){d=DT(e,c)|0;if(d|0){dG(d);zba(d)}YQ(e,c,0)|0}c=c+1|0}while((c|0)!=(f|0));Gt(e,b);wQ(a,b);return}function ft(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+16|0;e=d;c=cW(40)|0;f=c+16|0;iI(f,b);iI(c+28|0,b+12|0);b=Om(a,e,f)|0;wF(a,k[e>>2]|0,b,c);r=d;return c|0}function gt(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=11044;d=a+4|0;b=k[d>>2]|0;c=a+8|0;if((b|0)!=(c|0))while(1){a=k[b+28>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);a=k[b+4>>2]|0;if(!a)while(1){a=k[b+8>>2]|0;if((k[a>>2]|0)==(b|0))break;else b=a}else while(1){b=k[a>>2]|0;if(!b)break;else a=b}if((a|0)==(c|0))break;else b=a}Yv(d,k[c>>2]|0);return}function ht(a){a=a|0;var b=0,c=0,d=0;b=a+-4|0;k[b>>2]=6304;a=b+4|0;k[a>>2]=6360;qL(b+88|0);qL(b+72|0);qL(b+56|0);k[b>>2]=6384;k[a>>2]=6440;tE(b+40|0);d=b+20|0;k[d>>2]=2376;c=b+24|0;k[c>>2]=2400;up(d);$H(b+28|0);k[c>>2]=2024;k[b>>2]=1972;k[a>>2]=2e3;Bo(b);dH(b+8|0,k[b+12>>2]|0);k[a>>2]=2024;return}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;f=j;do if((a|0)==(b|0)){k[c>>2]=4;a=0}else{if((i[a>>0]|0)==45){k[c>>2]=4;a=0;break}g=z0()|0;h=k[g>>2]|0;k[g>>2]=0;a=L4(a,f,d,J_()|0)|0;d=M;e=k[g>>2]|0;if(!e)k[g>>2]=h;do if((k[f>>2]|0)==(b|0))if(d>>>0>0|(d|0)==0&a>>>0>65535|(e|0)==34){k[c>>2]=4;a=-1;break}else{a=a&65535;break}else{k[c>>2]=4;a=0}while(0)}while(0);r=j;return a|0}function jt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=cW(72)|0;k[d>>2]=0;g=d+8|0;wo(g,c);k[g>>2]=6464;k[d+12>>2]=6492;g=c+24|0;f=k[g+4>>2]|0;e=d+32|0;k[e>>2]=k[g>>2];k[e+4>>2]=f;iI(d+40|0,c+32|0);e=d+56|0;c=c+48|0;k[e>>2]=k[c>>2];k[e+4>>2]=k[c+4>>2];i[e+8>>0]=i[c+8>>0]|0;c=k[b>>2]|0;k[(k[c>>2]|0)+4>>2]=d;k[d>>2]=k[c>>2];k[c>>2]=d;k[d+4>>2]=c;c=a+8|0;k[c>>2]=(k[c>>2]|0)+1;return d|0}function kt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+16|0;d=c+8|0;e=c;k[a>>2]=8284;f=k[b+256>>2]|0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+4>>2]=a+8;g=a+16|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;k[a+40>>2]=f;k[a+48>>2]=0;k[a+52>>2]=0;k[a+44>>2]=a+48;k[a+56>>2]=b;b=a+60|0;i[a+68>>0]=0;k[a+64>>2]=-1;k[b>>2]=1500;k[a+72>>2]=0;k[e>>2]=1260;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];qx(b,a,d)|0;r=c;return}function lt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+64|0;e=h;f=h+52|0;d=k[(k[a+128>>2]|0)+916>>2]|0;g=d+824|0;c=i[g+11>>0]|0;if(c<<24>>24<0)c=k[d+828>>2]|0;else c=c&255;if(c|0){d=N6(b,50794)|0;Ix(e,g);GA(d,e)|0;Lv(e)}iT(e);yA(f,e,b);gQ(k[a+124>>2]|0,f)|0;p1(f);bQ(e);r=h;return}function mt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{c=c+-312|0;fd(d+-312|0,c);d=(k[g>>2]|0)+-312|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;h=b+8|0;g=k[i>>2]|0;k[i>>2]=k[h>>2];k[h>>2]=g;h=a+8|0;i=b+12|0;a=k[h>>2]|0;k[h>>2]=k[i>>2];k[i>>2]=a;k[b>>2]=k[e>>2];return}function nt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;c=e;d=a+36|0;if(k[d>>2]|0?(ur(a,b)|0)==(a+4|0):0){if((k[a+8>>2]|0)==(k[d>>2]|0))TF(a);Ds(a+12|0,b);hu(c,a,b,b)}r=e;return}function ot(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;k[a>>2]=0;g=a+4|0;k[g>>2]=0;k[a+8>>2]=0;d=b+4|0;e=(k[d>>2]|0)-(k[b>>2]|0)>>5;if(e|0?(QP(a,e),c=k[b>>2]|0,f=k[d>>2]|0,(c|0)!=(f|0)):0){a=k[g>>2]|0;do{k[a>>2]=k[c>>2];k[a+4>>2]=k[c+4>>2];k[a+8>>2]=k[c+8>>2];k[a+12>>2]=k[c+12>>2];iI(a+16|0,c+16|0);k[a+28>>2]=k[c+28>>2];c=c+32|0;a=(k[g>>2]|0)+32|0;k[g>>2]=a}while((c|0)!=(f|0))}return}function pt(a){a=a|0;var b=0,c=0;b=a+2158|0;if(!(i[b>>0]|0)){i[b>>0]=1;b=k[a+2164>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);if(k[a+2080>>2]|0)uV(a);Zr(a+424|0,0);zi(a);IT(a);b=a+2004|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}b=a+2020|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}uA(a+2024|0);dF(a+336|0)}return}function qt(a,b){a=a|0;b=b|0;var c=0;c=k[a+8>>2]|0;a:do if(c>>>1>>>0>=b>>>0){a=k[a+4>>2]|0;if((b|0)>-1){if(!b)break;while(1){a=k[a+4>>2]|0;if((b|0)>1)b=b+-1|0;else break}}else{while(1){a=k[a>>2]|0;if((b|0)>=-1)break;else b=b+1|0}break}}else{c=c-b|0;b=0-c|0;if((c|0)<1){if(!c)break;while(1){a=k[a+4>>2]|0;if((b|0)>1)b=b+-1|0;else break a}}while(1){a=k[a>>2]|0;if((b|0)>=-1)break;else b=b+1|0}}while(0);return a|0}function rt(a,b){a=a|0;b=b|0;var c=0;k[a>>2]=14964;c=a+12|0;k[c>>2]=c;k[a+16>>2]=c;k[a+20>>2]=0;k[a+4>>2]=3288;k[a+8>>2]=3312;c=a+32|0;k[c>>2]=c;k[a+36>>2]=c;k[a+40>>2]=0;k[a+24>>2]=15036;k[a+28>>2]=15060;c=a+52|0;k[c>>2]=c;k[a+56>>2]=c;k[a+60>>2]=0;k[a+44>>2]=3960;k[a+48>>2]=3984;c=a+72|0;k[c>>2]=c;k[a+76>>2]=c;k[a+80>>2]=0;k[a+64>>2]=3288;k[a+68>>2]=3312;c=a+92|0;k[c>>2]=c;k[a+96>>2]=c;k[a+100>>2]=0;k[a+84>>2]=3288;k[a+88>>2]=3312;k[a+104>>2]=b;ob(56,a|0,b|0,1289,130,1290,52)|0;return}function st(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=r;r=r+64|0;g=f;HA(g,b,c,d);i=g+44|0;k[i>>2]=0;b=g+48|0;k[b>>2]=0;k[g>>2]=15672;d=a+8|0;c=k[d>>2]|0;j=(k[a+4>>2]|0)+c|0;k[d>>2]=c+4;h=(l[j+2>>0]|0)<<8|(l[j+1>>0]|0)<<16|(l[j+3>>0]|0);k[i>>2]=l[j>>0];k[b>>2]=h;k[d>>2]=c+8;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=(hA(a,g,0,0,e+-8|0)|0)+8|0;O3(g);r=f;return e|0}function tt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;c=e+4|0;d=e;b=ur(a,b)|0;if((b|0)==(a+4|0))b=0;else{k[d>>2]=b;k[c>>2]=k[d>>2];hs(a,c)|0;b=1}r=e;return b|0}function ut(a){a=a|0;var b=0,c=0,d=0;a=a+-4|0;k[a>>2]=6304;b=a+4|0;k[b>>2]=6360;qL(a+88|0);qL(a+72|0);qL(a+56|0);k[a>>2]=6384;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function vt(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=r;r=r+32|0;c=b+16|0;g=b+8|0;e=b;f=cW(72)|0;EE(f,a+52|0,k[(k[a+16>>2]|0)+16>>2]|0);d=a+48|0;k[d>>2]=f;k[g>>2]=341;k[g+4>>2]=0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];vr(f+4|0,a,c)|0;d=(k[d>>2]|0)+12|0;k[e>>2]=342;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];vr(d,a,c)|0;r=b;return}function wt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+12|0;e=c;f=a+8|0;k[f>>2]=f;k[a+12>>2]=f;k[a+16>>2]=0;k[a>>2]=8956;k[a+4>>2]=8980;i[a+20>>0]=0;k[a+24>>2]=0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,44137,17);iy(d,b,e);p1(e);b=xb(((i[d+11>>0]|0)<0?k[d>>2]|0:d)|0)|0;k[a+28>>2]=b;p1(d);r=c;return}function xt(a){a=a|0;var b=0,c=0,d=0;d=r;r=r+160|0;b=d;c=a+2080|0;if(k[c>>2]|0){if((k[2783]|0)<4){Qd(b,29209,856,3,0,0,0);Tn(Tn(Hn(Tn(b,29231,4)|0,a)|0,30253,3)|0,29542,93)|0;hi(b)}uV(a)}b=cW(68)|0;aj(b,a);k[c>>2]=b;B9(b);r=d;return}function yt(a){a=a|0;var b=0,c=0,d=0,e=0;e=r;r=r+160|0;c=e;d=a+392|0;b=k[d>>2]|0;do if(!b){a=Ta(130,k[a+384>>2]|0)|0;if((a|0)==-1){if((k[2783]|0)>=4){b=0;break}Qd(c,93589,258,3,0,0,0);Tn(c,97052,37)|0;hi(c);b=0;break}b=cW(48)|0;zG(b,a);a=k[d>>2]|0;k[d>>2]=0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);k[d>>2]=b}while(0);r=e;return b|0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0;g=r;r=r+16|0;h=g+12|0;j=g+8|0;m=g+4|0;l=g;n=a+8|0;n=Ub[k[(k[n>>2]|0)+20>>2]&511](n)|0;k[m>>2]=k[b>>2];k[l>>2]=k[c>>2];c=i[n+8+3>>0]|0;o=c<<24>>24<0;b=o?k[n>>2]|0:n;c=b+((o?k[n+4>>2]|0:c&255)<<2)|0;k[j>>2]=k[m>>2];k[h>>2]=k[l>>2];f=Lc(a,j,h,d,e,f,b,c)|0;r=g;return f|0}function At(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+4|0;k[a>>2]=1972;k[h>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;g=a+20|0;Sz(g,b,c,d);k[a>>2]=10408;k[h>>2]=10448;k[g>>2]=10472;d=a+112|0;k[d>>2]=d;k[a+116>>2]=d;k[a+120>>2]=0;k[a+104>>2]=3672;k[a+108>>2]=3696;k[a+124>>2]=0;oJ(a+128|0);k[a+184>>2]=e;k[a+188>>2]=f;return}function Bt(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+8>>2]|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=a+12|0;d=l[d>>0]|l[d+1>>0]<<8|l[d+2>>0]<<16|l[d+3>>0]<<24;i[c>>0]=d;i[c+1>>0]=d>>8;i[c+2>>0]=d>>16;i[c+3>>0]=d>>24;c=(k[b>>2]|0)+4|0;k[b>>2]=c;i[c>>0]=k[a+44>>2];c=(k[b>>2]|0)+1|0;k[b>>2]=c;a=k[a+48>>2]|0;i[c>>0]=a>>>16;i[(k[b>>2]|0)+1>>0]=a>>>8;i[(k[b>>2]|0)+2>>0]=a;k[b>>2]=(k[b>>2]|0)+3;return}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;f=j;do if((a|0)==(b|0)){k[c>>2]=4;a=0}else{if((i[a>>0]|0)==45){k[c>>2]=4;a=0;break}g=z0()|0;h=k[g>>2]|0;k[g>>2]=0;a=L4(a,f,d,J_()|0)|0;d=M;e=k[g>>2]|0;if(!e)k[g>>2]=h;do if((k[f>>2]|0)==(b|0))if(d>>>0>0|(d|0)==0&a>>>0>4294967295|(e|0)==34){k[c>>2]=4;a=-1;break}else break;else{k[c>>2]=4;a=0}while(0)}while(0);r=j;return a|0}function Dt(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=6304;b=a+4|0;k[b>>2]=6360;qL(a+88|0);qL(a+72|0);qL(a+56|0);k[a>>2]=6384;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Et(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;d=a+4|0;c=k[d>>2]|0;do if(c){g=+p[b+16>>3];while(1)if(g<+p[c+16>>3]){d=k[c>>2]|0;if(!d){d=5;break}else c=d}else{f=c+4|0;d=k[f>>2]|0;if(!d){d=8;break}else c=d}if((d|0)==5){e=c;break}else if((d|0)==8){e=c;c=f;break}}else{e=d;c=d}while(0);wF(a,e,c,b);return b|0}function Ft(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0;g=r;r=r+16|0;h=g+12|0;j=g+8|0;m=g+4|0;l=g;n=a+8|0;n=Ub[k[(k[n>>2]|0)+20>>2]&511](n)|0;k[m>>2]=k[b>>2];k[l>>2]=k[c>>2];c=i[n+11>>0]|0;o=c<<24>>24<0;b=o?k[n>>2]|0:n;c=b+(o?k[n+4>>2]|0:c&255)|0;k[j>>2]=k[m>>2];k[h>>2]=k[l>>2];f=Sc(a,j,h,d,e,f,b,c)|0;r=g;return f|0}function Gt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=a+12|0;g=k[f>>2]|0;h=a+4|0;do if(g|0){c=k[h>>2]|0;if(c>>>0>b>>>0){d=c-b|0;c=k[a+8>>2]|0;if(c>>>0>d>>>0){qO(g+(d<<2)|0,g|0,c-d<<2|0)|0;XG(k[f>>2]|0,0,d<<2|0)|0;break}else{XG(g|0,0,c<<2|0)|0;break}}else{e=b-c|0;d=a+8|0;c=k[d>>2]|0;if(c>>>0>e>>>0){qO(g|0,g+(e<<2)|0,c-e<<2|0)|0;XG((k[f>>2]|0)+((k[d>>2]|0)-e<<2)|0,0,e<<2|0)|0;break}else{XG(g|0,0,c<<2|0)|0;break}}}while(0);k[h>>2]=b;return}function Ht(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=a+16|0;b=i[e+11>>0]|0;c=b<<24>>24<0;if(c)d=k[a+20>>2]|0;else d=b&255;a:do if(!d)f=10;else{if(c){b=k[a+20>>2]|0;c=k[e>>2]|0}else{b=b&255;c=e}switch(i[c+(b+-1)>>0]|0){case 32:break a;case 10:{f=10;break a}default:{}}Jx(e,10);f=10}while(0);if((f|0)==10){c=a+28|0;f=i[c+11>>0]|0;d=f<<24>>24<0;nw(e,d?k[c>>2]|0:c,d?k[a+32>>2]|0:f&255)|0}return}function It(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+32|0;a=d+8|0;e=d;k[a>>2]=0;GM(a,0,0,0);jR(a,13);k[a+4>>2]=13;c=cW(16)|0;k[c>>2]=0;GM(c,k[a>>2]|0,13,13);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);f=b+8|0;Zo(e,k[f>>2]|0,k[f+4>>2]|0);rO(e,j[b+16>>1]|0);rO(e,j[b+18>>1]|0);a=k[a>>2]|0;if(a|0)wba(a);r=d;return c|0}function Jt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=r;r=r+32|0;f=g;e=j[a+130>>1]|0;if((e&255)<<24>>24!=0&(e&65535)<256?(i[a+133>>0]|0)==0:0){oN(a);d=k[a+124>>2]|0;e=k[d>>2]|0;if(e>>>0<=b>>>0?((k[d+4>>2]|0)+e|0)>>>0>b>>>0:0){e=b-e|0;d=k[d+8>>2]|0;k[d+(e<<3)>>2]=0;k[d+(e<<3)+4>>2]=0}d=xA(a,b)|0;k[f+4>>2]=10;k[f>>2]=8220;e=f+8|0;k[e>>2]=d;k[e+4>>2]=M;i[f+16>>0]=c&1;fB(k[a+108>>2]|0,f)}r=g;return}function Kt(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=r;r=r+32|0;b=g+16|0;e=g;f=k[(k[(k[a+60>>2]|0)+916>>2]|0)+204>>2]|0;if((f|0?(c=Ub[k[(k[f>>2]|0)+64>>2]&511](f)|0,(c|0)>-1):0)?(d=a+92|0,f=k[d>>2]|0,(c+-5|0)>(f|0)|(c+5|0)<(f|0)):0){mD(b,0);f=N6(b,56171)|0;nF(e,27522);GA(f,e)|0;Lv(e);f=N6(b,27533)|0;fY(e,c);GA(f,e)|0;Lv(e);XA(a,b);k[d>>2]=c;Lv(b)}r=g;return}function Lt(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+8>>2]|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=a+12|0;d=l[d>>0]|l[d+1>>0]<<8|l[d+2>>0]<<16|l[d+3>>0]<<24;i[c>>0]=d;i[c+1>>0]=d>>8;i[c+2>>0]=d>>16;i[c+3>>0]=d>>24;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=a+44|0;a=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;i[c>>0]=a;i[c+1>>0]=a>>8;i[c+2>>0]=a>>16;i[c+3>>0]=a>>24;k[b>>2]=(k[b>>2]|0)+4;return}function Mt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;a=jv(a,b,k[c>>2]|0,c)|0;do if((a|0)!=(c|0)){d=k[b>>2]|0;if(!d)if((k[b+4>>2]|0)>>>0<(k[a+20>>2]|0)>>>0){e=5;break}else{c=a;break}else if((FJ(d,k[a+16>>2]|0)|0)<0){e=5;break}else{c=a;break}}else e=5;while(0);return c|0}function Nt(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=6304;b=a+4|0;k[b>>2]=6360;qL(a+88|0);qL(a+72|0);qL(a+56|0);k[a>>2]=6384;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function Ot(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+48|0;b=g;c=a+36|0;d=a+56|0;e=d+11|0;f=b;h=f+36|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(h|0));h=i[e>>0]|0;f=h<<24>>24<0;Bs(b,f?k[d>>2]|0:d,f?k[a+60>>2]|0:h&255);UJ(ql(k[a+32>>2]|0,a+92|0,b)|0,c);p1(b+24|0);p1(b+12|0);p1(b);r=g;return}function Pt(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=10408;b=a+4|0;k[b>>2]=10448;c=a+20|0;k[c>>2]=10472;JE(a+128|0);d=k[a+124>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);e=a+104|0;k[e>>2]=2808;d=a+108|0;k[d>>2]=2832;up(e);$H(a+112|0);k[d>>2]=2024;Ey(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Qt(a,b){a=a|0;b=b|0;var c=0;c=Tn(b,67767,4)|0;Ln(c,k[a+8>>2]|0)|0;b=Tn(b,68945,14)|0;b=Tn(Ln(b,k[a+44>>2]|0)|0,68824,12)|0;b=Tn(Ln(b,k[a+48>>2]|0)|0,68837,12)|0;Ln(b,k[a+52>>2]|0)|0;return}function Rt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+32|0;d=e+12|0;a=e;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,55023,4);b=VJ(b,a,d)|0;p1(a);if(b){a=(lY(d,49562)|0)==0&1;k[c>>2]=a;a=1}else a=0;p1(d);r=e;return a|0}function St(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a+4|0;e=k[d>>2]|0;c=k[e+2024>>2]|0;a:do if(c>>>0<(c+(x9(e+2024|0)|0)|0)>>>0){while(1){if((DT((k[d>>2]|0)+2060|0,c)|0?!(bX((k[d>>2]|0)+2024|0,c)|0):0)?Ny(a,c,b)|0:0)break;c=c+1|0;e=(k[d>>2]|0)+2024|0;f=k[e>>2]|0;if(c>>>0>=(f+(x9(e)|0)|0)>>>0)break a}fc[k[(k[a>>2]|0)+88>>2]&255](a,b,c)}while(0);return}function Tt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=a+8|0;g=k[f>>2]|0;do if(g|0){c=k[a>>2]|0;if(c>>>0>b>>>0){c=c-b|0;d=k[a+4>>2]|0;if(d>>>0>c>>>0){qO(g+(c<<3)|0,g|0,d-c<<3|0)|0;XG(k[f>>2]|0,0,c<<3|0)|0;break}else{XG(g|0,0,d<<3|0)|0;break}}else{c=b-c|0;d=a+4|0;e=k[d>>2]|0;if(e>>>0>c>>>0){qO(g|0,g+(c<<3)|0,e-c<<3|0)|0;XG((k[f>>2]|0)+((k[d>>2]|0)-c<<3)|0,0,c<<3|0)|0;break}else{XG(g|0,0,e<<3|0)|0;break}}}while(0);k[a>>2]=b;return}function Ut(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+32|0;c=e+12|0;d=e;if(_Y(b,0)|0){a=a+16|0;ME(d,b,0);dt(c,d);b=i[c+11>>0]|0;f=b<<24>>24<0;nw(a,f?k[c>>2]|0:c,f?k[c+4>>2]|0:b&255)|0;p1(c);p1(d);eZ(a,103283)|0}r=e;return}function Vt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;i[b+53>>0]=1;do if((k[b+4>>2]|0)==(d|0)){i[b+52>>0]=1;a=b+16|0;d=k[a>>2]|0;if(!d){k[a>>2]=c;k[b+24>>2]=e;k[b+36>>2]=1;if(!((e|0)==1?(k[b+48>>2]|0)==1:0))break;i[b+54>>0]=1;break}if((d|0)!=(c|0)){e=b+36|0;k[e>>2]=(k[e>>2]|0)+1;i[b+54>>0]=1;break}d=b+24|0;a=k[d>>2]|0;if((a|0)==2){k[d>>2]=e;a=e}if((a|0)==1?(k[b+48>>2]|0)==1:0)i[b+54>>0]=1}while(0);return}function Wt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=a+4|0;k[a>>2]=1972;k[e>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;d=a+20|0;X0(d);k[a>>2]=7128;k[e>>2]=7164;k[d>>2]=7188;iI(a+36|0,b);i[a+48>>0]=0;k[a+52>>2]=0;i[a+56>>0]=0;k[a+60>>2]=c;b=a+108|0;c=a+112|0;d=a+116|0;e=a+64|0;f=e+44|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));k[d>>2]=d;k[a+120>>2]=d;k[a+124>>2]=0;k[b>>2]=4548;k[c>>2]=4572;return}function Xt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a+4|0;if((b|0)!=(c|0)){a=k[d>>2]|0;do{k[a>>2]=k[b>>2];iI(a+4|0,b+4|0);iI(a+16|0,b+16|0);iI(a+28|0,b+28|0);iI(a+40|0,b+40|0);j[a+52>>1]=j[b+52>>1]|0;b=b+56|0;a=(k[d>>2]|0)+56|0;k[d>>2]=a}while((b|0)!=(c|0))}return}function Yt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+8|0;pr(a,a+4|0,e,c)|0;d=a+12|0;if((d|0)!=(b|0)){h=d;while(1){if(cc[k[c>>2]&127](k[h>>2]|0,k[e>>2]|0)|0){f=k[h>>2]|0;g=f;d=h;while(1){k[d>>2]=k[e>>2];if((e|0)==(a|0))break;d=e+-4|0;if(cc[k[c>>2]&127](g,k[d>>2]|0)|0){i=e;e=d;d=i}else break}k[e>>2]=f}d=h+4|0;if((d|0)==(b|0))break;else{e=h;h=d}}}return}function Zt(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=r;r=r+416|0;c=h+8|0;d=h;k[d>>2]=c+400;dB(a+8|0,c,d,e,f,g);g=k[d>>2]|0;f=c;c=k[b>>2]|0;while(1){if((f|0)==(g|0))break;d=k[f>>2]|0;if(!c)c=0;else{a=c+24|0;e=k[a>>2]|0;if((e|0)==(k[c+28>>2]|0))d=cc[k[(k[c>>2]|0)+52>>2]&127](c,d)|0;else{k[a>>2]=e+4;k[e>>2]=d}c=(d|0)==-1?0:c}f=f+4|0}r=h;return c|0}function _t(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-72|0;k[d>>2]=e;p1(c+-12|0);p1(c+-24|0);p1(c+-36|0);p1(c+-56|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function $t(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=c+4|0;if(k[e>>2]|0){f=a+440|0;g=a+52|0;d=k[g>>2]|0;if(!(i[d+1189>>0]|0))d=0;else d=(i[d+1188>>0]|0)!=0;ub(99,k[f>>2]|0,d&1|0)|0;d=a+640+(b<<2)|0;if(!(Ta(100,k[d>>2]|0)|0))d=0;else{vb(101,k[d>>2]|0,k[c>>2]|0,k[e>>2]|0,367,a|0)|0;Eb(102,k[f>>2]|0,+(+p[(k[g>>2]|0)+1152>>3]))|0;vn(a);d=1}}else d=1;return d|0}function au(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;f=j[a+130>>1]|0;if((f&255)<<24>>24!=0&(f&65535)<256?(i[a+133>>0]|0)==0:0){oN(a);e=k[a+124>>2]|0;f=k[e>>2]|0;if(f>>>0<=b>>>0?((k[e+4>>2]|0)+f|0)>>>0>b>>>0:0){f=b-f|0;e=k[e+8>>2]|0;k[e+(f<<3)>>2]=c;k[e+(f<<3)+4>>2]=d}c=xA(a,b)|0;k[g+4>>2]=9;k[g>>2]=8092;d=g+8|0;k[d>>2]=c;k[d+4>>2]=M;fB(k[a+108>>2]|0,g)}r=h;return}function bu(a,b){a=a|0;b=b|0;var c=0,d=0;ar(a,b);Tn(110732,68522,23)|0;d=a+52|0;c=a+56|0;b=k[d>>2]|0;if((k[c>>2]|0)!=(b|0)){a=0;do{Tn(Ln(110732,k[b+(a<<2)>>2]|0)|0,103359,2)|0;a=a+1|0;b=k[d>>2]|0}while(a>>>0<(k[c>>2]|0)-b>>2>>>0)}Tn(110732,68429,2)|0;return}function cu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=r;r=r+16|0;d=a;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49912,9);VJ(b,d,c)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49922,5);VJ(b,d,c+12|0)|0;p1(d);r=a;return 1}function du(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;e=r;r=r+64|0;f=e;HA(f,b,c,d);k[f>>2]=15364;g=k[a+4>>2]|0;c=a+8|0;b=k[c>>2]|0;h=g+b|0;d=b+4|0;k[c>>2]=d;k[f+44>>2]=(l[h+1>>0]|0)<<16|(l[h>>0]|0)<<24|(l[h+2>>0]|0)<<8|(l[h+3>>0]|0);d=g+d|0;k[c>>2]=b+8;k[f+48>>2]=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,f,+p[a+40>>3]);O3(f);r=e;return 8}function eu(a,b){a=a|0;b=b|0;var c=0,d=0;Bt(a,b);c=a+52|0;d=k[b>>2]|0;c=l[c>>0]|l[c+1>>0]<<8|l[c+2>>0]<<16|l[c+3>>0]<<24;i[d>>0]=c;i[d+1>>0]=c>>8;i[d+2>>0]=c>>16;i[d+3>>0]=c>>24;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+56>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;if(k[a+48>>2]&1|0){a=k[a+60>>2]|0;d=(iC(a)|0)+1|0;fE(c|0,a|0,d|0)|0;k[b>>2]=(k[b>>2]|0)+d}return}function fu(a,b){a=a|0;b=b|0;var c=0,d=0;d=k[b>>2]|0;b=k[d+4>>2]|0;if(!b){c=d;while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((k[a>>2]|0)==(d|0))k[a>>2]=b;c=a+8|0;k[c>>2]=(k[c>>2]|0)+-1;nd(k[a+4>>2]|0,d);p1(d+20|0);zba(d);return b|0}function gu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;g=i+8|0;h=i;f=a+4|0;d=DT((k[f>>2]|0)+2060|0,b)|0;if((d|0)!=0?(e=k[d+16>>2]|0,(e|0)>0):0)d=k[f>>2]|0;else{d=k[f>>2]|0;e=k[d+1444>>2]|0}f=~~(+(e|0)*+p[d+1504>>3]);e=k[d+1664>>2]|0;if(tB(c,(f|0)<(e|0)?e:f)|0)k[c+12>>2]=b;k[h>>2]=351;k[h+4>>2]=0;k[g>>2]=k[h>>2];k[g+4>>2]=k[h+4>>2];rx(c,a,g)|0;r=i;return}function hu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=r;r=r+16|0;f=g;e=ak(b,f,c)|0;c=k[e>>2]|0;if(!c){c=cW(28)|0;iI(c+16|0,d);wF(b,k[f>>2]|0,e,c);e=1}else e=0;k[a>>2]=c;i[a+4>>0]=e;r=g;return}function iu(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=10104;c=a+80|0;k[c>>2]=10216;b=a+84|0;k[b>>2]=10244;d=a+4|0;gr((w4(k[d>>2]|0)|0)+296|0,c);gr((w4(k[d>>2]|0)|0)+496|0,c);k[c>>2]=1972;k[b>>2]=2e3;Bo(c);dH(a+88|0,k[a+92>>2]|0);k[b>>2]=2024;tU(a);return}function ju(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=pr(a,b,c,e)|0;if(cc[k[e>>2]&127](k[d>>2]|0,k[c>>2]|0)|0){g=k[c>>2]|0;k[c>>2]=k[d>>2];k[d>>2]=g;d=f+1|0;if(cc[k[e>>2]&127](k[c>>2]|0,k[b>>2]|0)|0){g=k[b>>2]|0;k[b>>2]=k[c>>2];k[c>>2]=g;if(cc[k[e>>2]&127](k[b>>2]|0,k[a>>2]|0)|0){d=k[a>>2]|0;k[a>>2]=k[b>>2];k[b>>2]=d;d=f+3|0}else d=f+2|0}}else d=f;return d|0}function ku(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=a+8|0;g=k[f>>2]|0;do if(g|0){c=k[a>>2]|0;if(c>>>0>b>>>0){c=c-b|0;d=k[a+4>>2]|0;if(d>>>0>c>>>0){qO(g+(c<<2)|0,g|0,d-c<<2|0)|0;XG(k[f>>2]|0,0,c<<2|0)|0;break}else{XG(g|0,0,d<<2|0)|0;break}}else{c=b-c|0;d=a+4|0;e=k[d>>2]|0;if(e>>>0>c>>>0){qO(g|0,g+(c<<2)|0,e-c<<2|0)|0;XG((k[f>>2]|0)+((k[d>>2]|0)-c<<2)|0,0,c<<2|0)|0;break}else{XG(g|0,0,e<<2|0)|0;break}}}while(0);k[a>>2]=b;return}function lu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=k[d>>2]|0;h=k[e>>2]|0;if((g|0)!=(h|0)){if((a|0)!=(c|0)){d=0;f=g;do{d=d+1|0;f=k[f+4>>2]|0}while((f|0)!=(h|0));c=c+8|0;k[c>>2]=(k[c>>2]|0)-d;c=a+8|0;k[c>>2]=(k[c>>2]|0)+d}a=k[h>>2]|0;k[e>>2]=a;e=a+4|0;k[(k[g>>2]|0)+4>>2]=k[e>>2];k[k[e>>2]>>2]=k[g>>2];c=k[b>>2]|0;k[(k[c>>2]|0)+4>>2]=g;k[g>>2]=k[c>>2];k[c>>2]=a;k[e>>2]=c}return}function mu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+32|0;a=d+8|0;e=d;k[a>>2]=0;GM(a,0,0,0);jR(a,17);k[a+4>>2]=17;c=cW(16)|0;k[c>>2]=0;GM(c,k[a>>2]|0,17,17);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);f=b+8|0;Zo(e,k[f>>2]|0,k[f+4>>2]|0);b=b+16|0;Zo(e,k[b>>2]|0,k[b+4>>2]|0);a=k[a>>2]|0;if(a|0)wba(a);r=d;return c|0}function nu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=zo(b)|0;d=M;e=(dO(b)|0)&65535;f=xF(b)|0;if(!(i[a+4>>0]|0))a=0;else a=xF(b)|0;h=f2(b)|0;g=cW(24)|0;zX(g,FX(b)|0,h);b=cW(40)|0;k[b+4>>2]=7;k[b>>2]=8204;k[b+8>>2]=g;g=b+16|0;k[g>>2]=c;k[g+4>>2]=d;k[b+24>>2]=e;k[b+28>>2]=a;k[b+32>>2]=f;return b|0}function ou(a){a=a|0;var b=0,c=0,d=0;c=r;r=r+32|0;b=c+12|0;a=c;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,75447,10);if(!(Ta(109,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0)){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,75538,23);d=(Ta(109,((i[a+11>>0]|0)<0?k[a>>2]|0:a)|0)|0)!=0;p1(a);a=d}else a=1;p1(b);r=c;return a|0}function pu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=r;r=r+16|0;e=g;f=a+4|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);c=k[a+12>>2]|0;d=a+8|0;a=c;if((a|0)!=(d|0))do{h=c;c=k[a+4>>2]|0;h=k[h+8>>2]|0;i=k[(k[h>>2]|0)+12>>2]|0;iI(e,b);Sb[i&511](h,e);p1(e);a=c}while((a|0)!=(d|0));Rb[k[(k[f>>2]|0)+12>>2]&2047](f);r=g;return}function qu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=r;r=r+16|0;e=l;if((i[a+133>>0]|0)==0&(b|0)>0){f=a+4|0;g=e+4|0;h=e+8|0;d=e+12|0;c=a+108|0;a=0;do{o=(k[f>>2]|0)+1380|0;n=k[o>>2]|0;n=vba((n|0)>-1?n:-1)|0;m=cW(24)|0;zX(m,n,k[o>>2]|0);k[g>>2]=18;k[e>>2]=8140;k[h>>2]=m;j[d>>1]=a;fB(k[c>>2]|0,e);wba(n);J8(m);zba(m);a=a+1|0}while((a|0)!=(b|0))}r=l;return}function ru(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=r;r=r+32|0;b=g+16|0;e=g;f=k[(k[(k[a+60>>2]|0)+916>>2]|0)+204>>2]|0;if(f|0?(c=Ub[k[(k[f>>2]|0)+60>>2]&511](f)|0,d=a+88|0,(c|0)>(k[d>>2]|0)):0){mD(b,0);f=N6(b,56171)|0;nF(e,56211);GA(f,e)|0;Lv(e);f=N6(b,27533)|0;fY(e,c-(k[d>>2]|0)|0);GA(f,e)|0;Lv(e);XA(a,b);k[d>>2]=c;Lv(b)}r=g;return}function su(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a=k[a+124>>2]|0;if((a|0)!=0?(g=k[a>>2]|0,h=(k[a+4>>2]|0)+g|0,g>>>0<h>>>0):0){f=a+8|0;a=0;e=g;do{c=e>>>0<g>>>0;do if(!c){d=e-g|0;if(h>>>0>e>>>0)b=k[(k[f>>2]|0)+(d<<3)+4>>2]|0;else b=0;if((k[(k[f>>2]|0)+(d<<3)>>2]|0)==(b|0)){if(!(h>>>0>e>>>0&(c^1)))break;if(!(k[(k[f>>2]|0)+(e-g<<3)>>2]|0))break}a=a+1|0}while(0);e=e+1|0}while(e>>>0<h>>>0)}else a=0;return a|0}function tu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+16|0;e=g+8|0;f=g;k[a>>2]=0;d=a+4|0;k[d>>2]=0;k[a+8>>2]=0;if(b|0){vQ(a,b);h=(i[c>>0]|0)==0;c=k[d>>2]|0;k[d>>2]=c+b;d=c&31;c=(k[a>>2]|0)+(c>>>5<<2)|0;if(h){k[f>>2]=c;k[f+4>>2]=d;Jz(f,b)}else{k[e>>2]=c;k[e+4>>2]=d;Tz(e,b)}}r=g;return}function uu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+8|0;h=d+3|0;e=i[h>>0]|0;f=e<<24>>24<0;if(f)g=(k[d>>2]&2147483647)+-1|0;else g=1;do if(g>>>0>=c>>>0){if(f)d=k[a>>2]|0;else d=a;c1(d,b,c)|0;k[d+(c<<2)>>2]=0;if((i[h>>0]|0)<0){k[a+4>>2]=c;break}else{i[h>>0]=c;break}}else{if(f)d=k[a+4>>2]|0;else d=e&255;Ro(a,g,c-g|0,d,0,d,c,b)}while(0);return a|0}function vu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=b;f=c-e>>2;if(f>>>0>1073741807)x5(a);do if(f>>>0>=2){d=f+4&-4;if(d>>>0>1073741823)Ra(109031,109068,1734,109109);else{g=cW(d<<2)|0;k[a>>2]=g;k[a+8>>2]=d|-2147483648;k[a+4>>2]=f;break}}else{i[a+8+3>>0]=f;g=a}while(0);d=(c-e|0)>>>2;a=g;while(1){if((b|0)==(c|0))break;k[a>>2]=k[b>>2];b=b+4|0;a=a+4|0}k[g+(d<<2)>>2]=0;return}function wu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=r;r=r+32|0;d=f;e=b+16|0;c=i[e+11>>0]|0;if(c<<24>>24<0)b=k[b+20>>2]|0;else b=c&255;if(!b){i[a+52>>0]=1;dF(a+12|0)}else{Sq(d,e,4,32);ms(f+16|0,a+40|0,d,d);p1(d)}r=f;return}function xu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+160|0;c=e+156|0;d=e;k[c>>2]=b;b=(pz(a+96|0,c)|0)==0;if(b&(k[2783]|0)<4){Qd(d,50909,666,3,0,0,0);b=Tn(d,50924,119)|0;Tn(Mn(b,k[c>>2]|0)|0,68623,1)|0;hi(d)}r=e;return}function yu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;g=k[b>>2]|0;d=(k[b+4>>2]|0)-g|0;e=d>>2;f=r;r=r+((1*(e<<3)|0)+15&-16)|0;if((d|0)>0){c=0;do{d=k[g+(c<<2)>>2]|0;b=d+36|0;if((i[b+11>>0]|0)<0)b=k[b>>2]|0;k[f+(c<<3)>>2]=b;k[f+(c<<3)+4>>2]=k[d+60>>2];c=c+1|0}while((c|0)<(e|0))}g=k[a+20>>2]|0;ob(143,g|0,f|0,e|0,Vo(k[a+24>>2]|0)|0,a|0,135)|0;r=h;return}function zu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if((a|0)!=(k[b+8>>2]|0)){f=k[a+12>>2]|0;e=a+16+(f<<3)|0;mJ(a+16|0,b,c,d);if((f|0)>1){f=b+54|0;a=a+24|0;do{mJ(a,b,c,d);if(i[f>>0]|0)break a;a=a+8|0}while(a>>>0<e>>>0)}}else RD(0,b,c,d);while(0);return}function Au(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+16|0;e=c;mD(d,0);f=N6(d,56171)|0;nF(e,50803);GA(f,e)|0;Lv(e);f=N6(d,50818)|0;fY(e,b);GA(f,e)|0;Lv(e);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,55856,7);On(a,d,e)|0;p1(e);Lv(d);r=c;return}function Bu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;do if((a|0)==(k[b+8>>2]|0)){if((k[b+4>>2]|0)==(c|0)?(f=b+28|0,(k[f>>2]|0)!=1):0)k[f>>2]=d}else if((a|0)==(k[b>>2]|0)){if((k[b+16>>2]|0)!=(c|0)?(g=b+20|0,(k[g>>2]|0)!=(c|0)):0){k[b+32>>2]=d;k[g>>2]=c;e=b+40|0;k[e>>2]=(k[e>>2]|0)+1;if((k[b+36>>2]|0)==1?(k[b+24>>2]|0)==2:0)i[b+54>>0]=1;k[b+44>>2]=4;break}if((d|0)==1)k[b+32>>2]=1}while(0);return}function Cu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+16|0;f=e+12|0;d=e;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[f>>2]=k[a+40>>2];do if(hp(f,b,d,1)|0){a=(i[d+11>>0]|0)<0?k[d>>2]|0:d;if(!(KC(108754,a)|0)){i[c>>0]=1;a=1;break}if(!(KC(108748,a)|0)){i[c>>0]=0;a=1}else a=0}else a=0;while(0);p1(d);r=e;return a|0}function Du(a,b){a=a|0;b=+b;var c=0,d=0,e=0.0,f=0,g=0.0;g=+(k[a+28>>2]|0)*b;c=k[a+4>>2]|0;f=a+8|0;if((c|0)==(f|0))a=-1;else{a=-1;e=999999999999.0;while(1){b=g-+p[c+16>>3];if(b>=0.0&b<e)a=k[c+24>>2]|0;else b=e;d=k[c+4>>2]|0;if(!d)while(1){d=k[c+8>>2]|0;if((k[d>>2]|0)==(c|0)){c=d;break}else c=d}else{c=d;while(1){d=k[c>>2]|0;if(!d)break;else c=d}}if((c|0)==(f|0))break;else e=b}}return a|0}function Eu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=14560;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+40|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Fu(a){a=a|0;var b=0,c=0,d=0;b=a+-4|0;k[b>>2]=6600;a=b+4|0;k[a>>2]=6656;qL(b+56|0);k[b>>2]=6384;k[a>>2]=6440;tE(b+40|0);d=b+20|0;k[d>>2]=2376;c=b+24|0;k[c>>2]=2400;up(d);$H(b+28|0);k[c>>2]=2024;k[b>>2]=1972;k[a>>2]=2e3;Bo(b);dH(b+8|0,k[b+12>>2]|0);k[a>>2]=2024;return}function Gu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;f=j;do if((a|0)==(b|0)){k[c>>2]=4;d=0;a=0}else{if((i[a>>0]|0)==45){k[c>>2]=4;d=0;a=0;break}g=z0()|0;h=k[g>>2]|0;k[g>>2]=0;a=L4(a,f,d,J_()|0)|0;d=M;e=k[g>>2]|0;if(!e)k[g>>2]=h;if((k[f>>2]|0)==(b|0)){if((e|0)==34){k[c>>2]=4;a=-1;d=-1}}else{k[c>>2]=4;a=0;d=0}}while(0);M=d;r=j;return a|0}function Hu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=r;r=r+16|0;d=f;k[a+4>>2]=5;k[a>>2]=7972;k[a+8>>2]=b;e=a+12|0;k[e>>2]=0;k[a+16>>2]=0;k[a+20>>2]=0;i[a+24>>0]=c&1;if(!(x9(b)|0))a=0;else{a=0;c=0;do{g=b;g=y0(k[g>>2]|0,k[g+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=((TJ(b,g,M)|0)&1)+a|0;c=c+1|0}while(c>>>0<(x9(b)|0)>>>0)}k[d>>2]=0;DH(e,a,d);r=f;return}function Iu(a){a=a|0;var b=0,c=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<3){Qd(b,30665,262,2,0,0,0);Hn(Tn(b,31504,17)|0,a)|0;hi(b)}b=a+393|0;if(!(i[b>>0]|0)){i[b>>0]=1;b=k[a+204>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+16>>2]&2047](b);b=k[a+200>>2]|0;if(b|0)po(b);nX(a+96|0)}dF(a+56|0);r=c;return}function Ju(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=r;r=r+16|0;d=f;e=a+132|0;c=ur(e,b)|0;if((c|0)==(a+136|0)?(i[a+181>>0]|0)!=0:0){yq(d,0,b);c=ur(e,d)|0;p1(d)}r=f;return c|0}function Ku(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=r;r=r+16|0;g=f;h=cW(40)|0;iI(g,b+8|0);wM(h,1,c,g);II(a,h);p1(g);WH(a,c,d,e);e=k[a+2164>>2]|0;jc[k[(k[e>>2]|0)+28>>2]&63](e,b,c,d);WC(a+276|0,b,c,d);r=f;return}function Lu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18684;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Mu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;WC(a+116|0,a,b,c);if(Ub[k[(k[c>>2]|0)+64>>2]&511](c)|0)d=k[a+1912>>2]|0;else d=(VS(c,b)|0)+-1|0;c=a+2060|0;if((d|0)>0&(DT(c,b)|0)!=0?(f=DT(c,b)|0,e=k[a+452>>2]|0,g=a+448|0,(e|0)!=(g|0)):0){a=e;c=e;do{e=k[a+8>>2]|0;fc[k[(k[e>>2]|0)+76>>2]&255](e,f,d);a=k[c+4>>2]|0;c=a}while((c|0)!=(g|0))}return}function Nu(a,b){a=a|0;b=b|0;var c=0;X0(a);k[a>>2]=11100;i[a+16>>0]=0;i[a+17>>0]=0;c=a+20|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=a+40|0;k[c>>2]=c;k[a+44>>2]=c;k[a+48>>2]=0;k[a+32>>2]=3288;k[a+36>>2]=3312;c=a+52|0;k[c>>2]=0;k[a+56>>2]=0;k[a+60>>2]=b;a=a+64|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;a=cW(20)|0;FY(a,0);b=k[c>>2]|0;k[c>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[c>>2]=a;return}function Ou(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+1256|0;do if(((i[(k[(k[f>>2]|0)+200>>2]|0)+1189>>0]|0)==0?(k[a+1328>>2]|0)==0:0)?(DT(a+2060|0,k[a+2056>>2]|0)|0)==0:0){c=k[a+452>>2]|0;d=a+448|0;if((c|0)!=(d|0)){b=0;e=c;a=c;do{c=k[e+8>>2]|0;b=((Ub[k[(k[c>>2]|0)+60>>2]&511](c)|0)>0&1)+b|0;e=k[a+4>>2]|0;a=e}while((a|0)!=(d|0));if(b|0)break}AV(k[(k[f>>2]|0)+200>>2]|0)}while(0);return}function Pu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=16964;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Qu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=8816;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Ru(a){a=a|0;var b=0,c=0;do if(a){if((k[a+76>>2]|0)<=-1){b=lD(a)|0;break}c=(Eba(a)|0)==0;b=lD(a)|0;if(!c)Dba(a)}else{if(!(k[4912]|0))b=0;else b=Ru(k[4912]|0)|0;Ja(110024);a=k[27505]|0;if(a)do{if((k[a+76>>2]|0)>-1)c=Eba(a)|0;else c=0;if((k[a+20>>2]|0)>>>0>(k[a+28>>2]|0)>>>0)b=lD(a)|0|b;if(c|0)Dba(a);a=k[a+56>>2]|0}while((a|0)!=0);qb(110024)}while(0);return b|0}function Su(a){a=a|0;var b=0,c=0,d=0;a=a+-4|0;k[a>>2]=6600;b=a+4|0;k[b>>2]=6656;qL(a+56|0);k[a>>2]=6384;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function Tu(a){a=a|0;var b=0,c=0;k[a>>2]=7636;b=a+228|0;Ta(15,k[b>>2]|0)|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}p1(a+216|0);c=a+160|0;GL(a+168|0);k[c>>2]=7652;aE(c);c=a+108|0;GL(a+116|0);k[c>>2]=7652;aE(c);GL(a+64|0);h3(a+56|0);GL(a+12|0);h3(a+4|0);return}function Uu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=a+11|0;d=i[f>>0]|0;e=d<<24>>24<0;if(e)g=(k[a+8>>2]&2147483647)+-1|0;else g=10;do if(g>>>0>=c>>>0){if(e)d=k[a>>2]|0;else d=a;if(c|0)qO(d|0,b|0,c|0)|0;i[d+c>>0]=0;if((i[f>>0]|0)<0){k[a+4>>2]=c;break}else{i[f>>0]=c;break}}else{if(e)d=k[a+4>>2]|0;else d=d&255;ks(a,g,c-g|0,d,0,d,c,b)}while(0);return a|0}function Vu(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<4){Qd(b,52211,1183,3,0,0,0);g=Tn(b,55367,33)|0;f=a+8|0;d=i[f+11>>0]|0;e=d<<24>>24<0;Tn(Tn(g,e?k[f>>2]|0:f,e?k[a+12>>2]|0:d&255)|0,55401,40)|0;hi(b)}YJ(a);r=c;return}function Wu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18812;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Xu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5244;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Yu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18716;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Zu(a,b){a=a|0;b=b|0;if(!b)return;else{Zu(a,k[b>>2]|0);Zu(a,k[b+4>>2]|0);p1(b+28|0);p1(b+16|0);zba(b);return}}function _u(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;b=r;r=r+32|0;e=b+16|0;f=b;mD(e,0);g=N6(e,56171)|0;nF(f,27705);GA(g,f)|0;Lv(f);g=N6(e,56009)|0;Ix(f,d+8|0);GA(g,f)|0;Lv(f);d=N6(e,27676)|0;fY(f,c);GA(d,f)|0;Lv(f);XA(a,e);Lv(e);r=b;return}function $u(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;g=i;d=0;while(1){if((d|0)>=(c|0)){d=1;break}f=uy(a,b+d|0,c-d|0)|0;if(!f){h=4;break}e=Sh(a)|0;if(e)d=(e?f:0)+d|0;else{d=0;break}}if((h|0)==4){d=k[a+8>>2]|0;h=k[a+12>>2]|0;k[g>>2]=d;k[g+4>>2]=h;k[g+8>>2]=h-d;kZ(70384,g)|0;Tn(110900,70421,29)|0;d=0}r=i;return d|0}function av(a,b){a=a|0;b=b|0;var c=0,d=0;do if(i[a+44>>0]|0){c=a+4|0;d=k[c>>2]|0;if((d|0)==(k[a+8>>2]|0)){Pj(a,b);break}else{iI(d,b);k[c>>2]=(k[c>>2]|0)+12;break}}else{d=i[b+11>>0]|0;c=d<<24>>24<0;Tn(k[a+12>>2]|0,c?k[b>>2]|0:b,c?k[b+4>>2]|0:d&255)|0}while(0);return}function bv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;c=e+4|0;d=e;b=Xx(a,b)|0;if((b|0)==(a+4|0))b=0;else{k[d>>2]=b;k[c>>2]=k[d>>2];fu(a,c)|0;b=1}r=e;return b|0}function cv(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=1904;b=a+4|0;k[b>>2]=1932;c=a+20|0;k[c>>2]=1956;Nk(a);d=a+56|0;e=k[d>>2]|0;if(e|0){Rb[k[(k[e>>2]|0)+4>>2]&2047](e);k[d>>2]=0}k[a+100>>2]=-1;Lv(a+104|0);qL(a+72|0);qL(a+40|0);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function dv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=k[a+124>>2]|0;do if(e|0?(f=k[e>>2]|0,g=f>>>0>b>>>0,!g):0){if(((k[e+4>>2]|0)+f|0)>>>0>b>>>0)c=k[(k[e+8>>2]|0)+(b-f<<3)>>2]|0;else c=0;if(((k[e+4>>2]|0)+f|0)>>>0>b>>>0)d=k[(k[e+8>>2]|0)+(b-f<<3)+4>>2]|0;else d=0;if((c|0)==(d|0)){if(g)break;if(((k[e+4>>2]|0)+f|0)>>>0<=b>>>0)break;if(!(k[(k[e+8>>2]|0)+(b-f<<3)>>2]|0))break}Jt(a,b,1)}while(0);return}function ev(a,b){a=a|0;b=b|0;var c=0,d=0;d=k[b>>2]|0;b=k[d+4>>2]|0;if(!b){c=d;while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((k[a>>2]|0)==(d|0))k[a>>2]=b;c=a+8|0;k[c>>2]=(k[c>>2]|0)+-1;nd(k[a+4>>2]|0,d);p1(d+16|0);zba(d);return b|0}function fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=6192;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+16|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function gv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[a+4>>2]|0;if(!c)c=0;else{f=32-c|0;e=f>>>0>b>>>0?b:f;d=k[a>>2]|0;c=p$(-1>>>(f-e|0)&-1<<c&~k[d>>2]|0)|0;k[a>>2]=d+4;b=b-e|0}if(b>>>0>31){e=b;d=k[a>>2]|0;do{c=(p$(~k[d>>2]|0)|0)+c|0;d=d+4|0;k[a>>2]=d;e=e+-32|0}while(e>>>0>31);b=b&31}if(b)c=(p$(-1>>>(32-b|0)&~k[k[a>>2]>>2]|0)|0)+c|0;return c|0}function hv(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=6600;b=a+4|0;k[b>>2]=6656;qL(a+56|0);k[a>>2]=6384;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function iv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=r;r=r+32|0;f=e+12|0;g=e;a=(k[a+52>>2]|0)+356|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,b,iC(b)|0);k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,d,iC(d)|0);WC(a,f,c,g);p1(g);p1(f);wc(b);wc(d);r=e;return}function jv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a:do if(c){e=k[b+4>>2]|0;b=k[b>>2]|0;while(1){a=c;while(1){c=k[a+16>>2]|0;if(!c){if((k[a+20>>2]|0)>>>0>=e>>>0)break}else if((FJ(c,b)|0)>=0)break;a=k[a+4>>2]|0;if(!a)break a}c=k[a>>2]|0;if(!c){d=a;break}else d=a}}while(0);return d|0}function kv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0;if((-17-b|0)>>>0<c>>>0)x5(a);if((i[a+11>>0]|0)<0)l=k[a>>2]|0;else l=a;if(b>>>0<2147483623){h=c+b|0;j=b<<1;h=h>>>0<j>>>0?j:h;h=h>>>0<11?11:h+16&-16}else h=-17;j=cW(h)|0;if(e|0)fE(j|0,l|0,e|0)|0;c=d-f-e|0;if(c|0)fE(j+e+g|0,l+e+f|0,c|0)|0;if((b|0)!=10)zba(l);k[a>>2]=j;k[a+8>>2]=h|-2147483648;return}function lv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+32|0;a=d+8|0;e=d;k[a>>2]=0;GM(a,0,0,0);jR(a,13);k[a+4>>2]=13;c=cW(16)|0;k[c>>2]=0;GM(c,k[a>>2]|0,13,13);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);f=b+8|0;Zo(e,k[f>>2]|0,k[f+4>>2]|0);OE(e,k[b+16>>2]|0);a=k[a>>2]|0;if(a|0)wba(a);r=d;return c|0}function mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18748;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function nv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=k[b+12>>2];k[a+16>>2]=k[b+16>>2];k[a+20>>2]=k[b+20>>2];k[a+24>>2]=k[b+24>>2];i[a+28>>0]=i[b+28>>0]|0;e=b+4|0;BI(a,(k[e>>2]|0)-(k[b>>2]|0)>>2);c=k[b>>2]|0;if((k[e>>2]|0)!=(c|0)){d=0;do{f=cW(24)|0;zM(f,k[c+(d<<2)>>2]|0);k[(k[a>>2]|0)+(d<<2)>>2]=f;d=d+1|0;c=k[b>>2]|0}while(d>>>0<(k[e>>2]|0)-c>>2>>>0)}return}function ov(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=cW(72)|0;f=c+8|0;wo(f,b);k[f>>2]=6464;k[c+12>>2]=6492;f=b+24|0;e=k[f+4>>2]|0;d=c+32|0;k[d>>2]=k[f>>2];k[d+4>>2]=e;iI(c+40|0,b+32|0);d=c+56|0;b=b+48|0;k[d>>2]=k[b>>2];k[d+4>>2]=k[b+4>>2];i[d+8>>0]=i[b+8>>0]|0;k[c+4>>2]=a;b=k[a>>2]|0;k[c>>2]=b;k[b+4>>2]=c;k[a>>2]=c;b=a+8|0;k[b>>2]=(k[b>>2]|0)+1;return}function pv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f;d=(C9(b)|0)+200|0;if(i[(k[d>>2]|0)+1189>>0]|0){b=(c|0)/(k[b+1576>>2]|0)|0;c=a+84|0;d=k[c>>2]|0;k[e>>2]=d;if((d|0)<(b|0)){d=a+48|0;do{bv(d,e)|0;a=(k[e>>2]|0)+1|0;k[e>>2]=a}while((a|0)<(b|0))}k[c>>2]=b}r=f;return}function qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5916;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+16|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5792;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=r;r=r+16|0;e=d;f=d2(k[c>>2]|0,e)|0;_J()|0;h=b+112|0;i=k[h>>2]|0;h=k[h+4>>2]|0;g=_J()|0;rl(a,i,h,g,M,k[e>>2]|0,1);e=aaa(k[c>>2]|0)|0;df(a,f,b,e,R9(k[c>>2]|0)|0);r=d;return}function tv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+160|0;c=e;d=k[a+124>>2]|0;b=b-(k[d+48>>2]|0)|0;if((b|0)>-1?b>>>0<(((k[a+128>>2]|0)-d|0)/96|0)>>>0:0){d=~~(+o[d+(b*96|0)+32>>2]*3.0*1.0e3);c=k[(k[a+4>>2]|0)+1552>>2]|0;r=e;return ((d|0)<(c|0)?c:d)|0}if((k[2783]|0)<5){Qd(c,50909,826,4,0,0,0);Tn(c,51706,77)|0;hi(c)}r=e;return k[(k[a+4>>2]|0)+1544>>2]<<1|0}function uv(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;if(i[a+772>>0]|0){if((k[2783]|0)<4){Qd(c,27921,651,3,0,0,0);Tn(Tn(c,27948,6)|0,28086,76)|0;hi(c)}}else{ty(a+768|0,b,0);AE(a+436|0,a+776|0)}r=d;return}function vv(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=6600;b=a+4|0;k[b>>2]=6656;qL(a+56|0);k[a>>2]=6384;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=8848;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a:do if(!c)d=0;else{e=0;while(1){d=b+e|0;f=i[d>>0]|0;if(!(f<<24>>24)){d=0;break a}e=e+1|0;if(f<<24>>24==63)break a;if(e>>>0>=c>>>0){d=0;break}}}while(0);d=(d|0)==0?b+c|0:d;e=d-b|0;f=a+12|0;if(!e)Px(f,1,47)|0;else Uu(f,b,e)|0;Uu(a+24|0,d,c-e|0)|0;return}function yv(a,b,c){a=a|0;b=b|0;c=c|0;do if(a){if(b>>>0<128){i[a>>0]=b;a=1;break}if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;a=2;break}if(b>>>0<55296|(b&-8192|0)==57344){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;a=3;break}if((b+-65536|0)>>>0<1048576){i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;a=4;break}else{a=z0()|0;k[a>>2]=84;a=-1;break}}else a=1;while(0);return a|0}function zv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=r;r=r+16|0;f=g;k[e>>2]=c;c=O0(k[a+8>>2]|0)|0;a=yv(f,0,b)|0;if(c|0)O0(c)|0;a:do switch(a|0){case 0:case -1:{a=2;break}default:{a=a+-1|0;if(a>>>0>(d-(k[e>>2]|0)|0)>>>0)a=1;else while(1){if(!a){a=0;break a}b=i[f>>0]|0;d=k[e>>2]|0;k[e>>2]=d+1;i[d>>0]=b;f=f+1|0;a=a+-1|0}}}while(0);r=g;return a|0}function Av(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+32|0;a=d+8|0;e=d;k[a>>2]=0;GM(a,0,0,0);jR(a,10);k[a+4>>2]=10;c=cW(16)|0;k[c>>2]=0;GM(c,k[a>>2]|0,10,10);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);f=b+8|0;Zo(e,k[f>>2]|0,k[f+4>>2]|0);JX(e,i[b+16>>0]|0);a=k[a>>2]|0;if(a|0)wba(a);r=d;return c|0}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,f=0;f=a+300+(b<<2)|0;if((k[f>>2]|0)!=(k[c>>2]|0)){d=HL((k[a+52>>2]|0)+1056|0,c)|0;e=+p[d+80>>3];if(e>=0.0)hc[k[(k[a>>2]|0)+172>>2]&7](a,b,e);d=d+72+(b<<2)|0;if(!(i[(k[d>>2]|0)+20>>0]|0))d=0;else{k[f>>2]=k[c>>2];d=k[d>>2]|0;f=k[a+288>>2]|0;Qb[k[(k[f>>2]|0)+16>>2]&15](f,k[d+24>>2]|0,k[d+28>>2]|0,b,0);d=1}}else d=1;return d|0}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4484;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Dv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=8912;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Ev(a){a=a|0;p1(a+612|0);p1(a+592|0);p1(a+560|0);p1(a+540|0);p1(a+436|0);p1(a+424|0);p1(a+408|0);p1(a+388|0);p1(a+288|0);p1(a+224|0);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+16|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,91701,158,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=17176;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function Gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=8880;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=2212;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Iv(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-72|0;k[d>>2]=e;p1(c+-12|0);p1(c+-24|0);p1(c+-36|0);p1(c+-56|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function Jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=2244;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Kv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=19004;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Lv(a){a=a|0;var b=0,c=0,d=0;b=j[a+8>>1]|0;switch((b&255)<<24>>24){case 6:case 7:{b=k[a>>2]|0;if(b|0){Bz(b,k[b+4>>2]|0);zba(b)}break}case 4:{if(b&256?(c=k[a>>2]|0,c|0):0)wc(c);break}default:{}}a=k[a+12>>2]|0;if(a|0){d=a+-4|0;b=k[d>>2]|0;if(b|0){b=a+(b<<2)|0;do{b=b+-4|0;c=k[b>>2]|0;if(c|0)wc(c)}while((b|0)!=(a|0))}wba(d)}return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=r;r=r+16|0;g=f;b=LZ(b)|0;k[g>>2]=b;h=k_(g,111636)|0;ec[k[(k[h>>2]|0)+48>>2]&15](h,106657,106689,c)|0;c=k_(g,111644)|0;g=Ub[k[(k[c>>2]|0)+12>>2]&511](c)|0;k[d>>2]=g;d=Ub[k[(k[c>>2]|0)+16>>2]&511](c)|0;k[e>>2]=d;Sb[k[(k[c>>2]|0)+20>>2]&511](a,c);oU(b)|0;r=f;return}function Nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+32|0;e=d+16|0;f=d;mD(e,0);g=N6(e,56171)|0;nF(f,27664);GA(g,f)|0;Lv(f);g=N6(e,56009)|0;Ix(f,c+8|0);GA(g,f)|0;Lv(f);c=N6(e,27676)|0;fY(f,b);GA(c,f)|0;Lv(f);XA(a,e);Lv(e);r=d;return}function Ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4292;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=r;r=r+64|0;e=g;if((a|0)!=(b|0))if((b|0)!=0?(f=um(b,1416,1400,0)|0,(f|0)!=0):0){b=e+4|0;d=b+52|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(d|0));k[e>>2]=f;k[e+8>>2]=a;k[e+12>>2]=-1;k[e+48>>2]=1;jc[k[(k[f>>2]|0)+28>>2]&63](f,e,k[c>>2]|0,1);if((k[e+24>>2]|0)==1){k[c>>2]=k[e+16>>2];b=1}else b=0}else b=0;else b=1;r=g;return b|0}function Qv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=r;r=r+16|0;g=f;b=LZ(b)|0;k[g>>2]=b;h=k_(g,111604)|0;ec[k[(k[h>>2]|0)+32>>2]&15](h,106657,106689,c)|0;c=k_(g,111620)|0;g=Ub[k[(k[c>>2]|0)+12>>2]&511](c)|0;i[d>>0]=g;d=Ub[k[(k[c>>2]|0)+16>>2]&511](c)|0;i[e>>0]=d;Sb[k[(k[c>>2]|0)+20>>2]&511](a,c);oU(b)|0;r=f;return}function Rv(a){a=a|0;var b=0,c=0,d=0,e=0;d=$B(a)|0;e=(d|0)!=0;if(e?(i[d+60>>0]|0)!=0:0)b=k[d>>2]|0;else c=4;do if((c|0)==4){b=gC(a)|0;c=(b|0)!=0;if(c){if(i[b+60>>0]|0){b=k[b>>2]|0;break}if((k[b+76>>2]|0)!=(k[b+80>>2]|0)){b=k[b>>2]|0;break}}if(e){b=k[d>>2]|0;break}if(!c){b=mC(a)|0;if(!b)b=1;else b=k[b>>2]|0}else b=0}while(0);return b|0}function Sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=14624;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+40|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Tv(a){a=a|0;var b=0,c=0,d=0,e=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<5){Qd(b,51839,147,4,0,0,0);e=Tn(b,52002,40)|0;d=a+76|0;Tn(Mn(e,(k[(k[d>>2]|0)+188>>2]|0)/1e3|0)|0,52043,3)|0;hi(b);b=d}else b=a+76|0;tB(a+80|0,k[(k[b>>2]|0)+188>>2]|0)|0;r=c;return}function Uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=10300;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+80|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=12816;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+40|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+32|0;e=d;iI(e,b);b=e+12|0;iI(b,c);Mr(a+76|0,e)|0;p1(b);p1(e);r=d;return}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=6548;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Yv(a,b){a=a|0;b=b|0;if(!b)return;else{Yv(a,k[b>>2]|0);Yv(a,k[b+4>>2]|0);p1(b+16|0);zba(b);return}}function Zv(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=k[a+648>>2]|0;g=a+652|0;f=k[g>>2]|0;c=f;d=b;a:do if((b|0)!=(f|0)?(e=a+904|0,(k[a+912>>2]|0)!=0):0){f=a+648|0;if((c-d|0)==4)a=0;else{c=(k[(k[e>>2]|0)+8>>2]|0)+2088|0;a=0;while(1){e=Xaa(k[b+(a<<2)>>2]|0)|0;if((k[e>>2]|0)==(k[c>>2]|0))break a;a=a+1|0;b=k[f>>2]|0;if(a>>>0>=(k[g>>2]|0)-b>>2>>>0){a=-1;break}}}}else a=-1;while(0);return a|0}function _v(a){a=a|0;var b=0,c=0,d=0,e=0;i[a+96>>0]=0;k[a+88>>2]=0;k[a+92>>2]=0;e=k[a+64>>2]|0;b=k[e+452>>2]|0;e=e+448|0;if((b|0)!=(e|0)){c=b;d=b;do{b=k[c+8>>2]|0;do if(b|0?!(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0):0)if(Ub[k[(k[b>>2]|0)+108>>2]&511](b)|0){OA(a,b);break}else{NA(a,b);break}while(0);c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0))}return}function $v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4420;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=10268;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+80|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=17124;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function cw(a,b){a=a|0;b=b|0;var c=0,d=0;do if(i[a+48>>0]|0){c=a+8|0;d=k[c>>2]|0;if((d|0)==(k[a+12>>2]|0)){Pj(a+4|0,b);break}else{iI(d,b);k[c>>2]=(k[c>>2]|0)+12;break}}else{d=i[b+11>>0]|0;c=d<<24>>24<0;nw(a+16|0,c?k[b>>2]|0:b,c?k[b+4>>2]|0:d&255)|0}while(0);return}function dw(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;if(i[a+644>>0]|0){if((k[2783]|0)<4){Qd(c,27921,631,3,0,0,0);Tn(Tn(c,27948,6)|0,28694,73)|0;hi(c)}}else{ty(a+640|0,b,0);Ad(a)|0}r=d;return}function ew(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;if(i[a+708>>0]|0){if((k[2783]|0)<4){Qd(c,27921,641,3,0,0,0);Tn(Tn(c,27948,6)|0,28163,73)|0;hi(c)}}else{ty(a+704|0,b,0);Ad(a)|0}r=d;return}function fw(a){a=a|0;var b=0,c=0,d=0,e=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<5){Qd(b,49969,211,4,0,0,0);e=Tn(b,50131,40)|0;d=a+76|0;Tn(Mn(e,(k[(k[d>>2]|0)+188>>2]|0)/1e3|0)|0,52043,3)|0;hi(b);b=d}else b=a+76|0;tB(a+80|0,k[(k[b>>2]|0)+188>>2]|0)|0;r=c;return}function gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4516;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=9404;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+20|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=8784;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function jw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+8|0;g=d+3|0;c=i[g>>0]|0;e=c<<24>>24<0;if(e){f=k[a+4>>2]|0;c=(k[d>>2]&2147483647)+-1|0}else{f=c&255;c=1}if((f|0)==(c|0)){$r(a,c,1,c,c,0,0);if((i[g>>0]|0)>-1)c=7;else c=8}else if(e)c=8;else c=7;if((c|0)==7)i[g>>0]=f+1;else if((c|0)==8){g=k[a>>2]|0;k[a+4>>2]=f+1;a=g}g=a+(f<<2)|0;k[g>>2]=b;k[g+4>>2]=0;return}function kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18940;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=13464;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=17092;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=a+11|0;d=i[g>>0]|0;e=d<<24>>24<0;if(e){f=k[a+4>>2]|0;d=(k[a+8>>2]&2147483647)+-1|0}else{f=d&255;d=10}if((d-f|0)>>>0>=c>>>0){if(c|0){if(e)e=k[a>>2]|0;else e=a;fE(e+f|0,b|0,c|0)|0;d=f+c|0;if((i[g>>0]|0)<0)k[a+4>>2]=d;else i[g>>0]=d;i[e+d>>0]=0}}else ks(a,d,c-d+f|0,f,f,0,c,b);return a|0}function ow(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a+44|0;c=k[d>>2]|0;e=k[a+24>>2]|0;if(c>>>0<e>>>0){k[d>>2]=e;c=e}f=a+12|0;d=k[f>>2]|0;do if((k[a+8>>2]|0)>>>0<d>>>0){if((b|0)==-1){k[f>>2]=d+-1;k[a+16>>2]=c;b=0;break}if(!(k[a+48>>2]&16)){e=b&255;d=d+-1|0;if(e<<24>>24!=(i[d>>0]|0)){b=-1;break}}else{e=b&255;d=d+-1|0}k[f>>2]=d;k[a+16>>2]=c;i[d>>0]=e}else b=-1;while(0);return b|0}function pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,55924,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=6580;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function qw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=b+4|0;d=k[b>>2]|0;do if(k[g>>2]|0)if(d){c=iC(d)|0;c=c>>>0>2147483646?2147483646:c;e=lc(c+1|0)|0;if(!e){c=666;d=102695;e=c+39|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));Ib(123)}else{fE(e|0,d|0,c|0)|0;i[e+c>>0]=0;f=e;break}}else f=0;else f=d;while(0);k[a>>2]=f;g=k[g>>2]|0;k[a+4>>2]=k[b>>2]|0?(g|0)!=0&1:g;return}function rw(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-48|0;k[d>>2]=e;p1(c+-12|0);p1(c+-24|0);p1(c+-36|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function sw(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-72|0;k[d>>2]=e;p1(b+-12|0);p1(b+-24|0);p1(b+-36|0);p1(b+-56|0);p1(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if(b|0){g=a+11|0;d=i[g>>0]|0;if(d<<24>>24<0){f=k[a+4>>2]|0;e=(k[a+8>>2]&2147483647)+-1|0}else{f=d&255;e=10}if((e-f|0)>>>0<b>>>0){kv(a,e,b-e+f|0,f,f,0,0);d=i[g>>0]|0}if(d<<24>>24<0)e=k[a>>2]|0;else e=a;XG(e+f|0,c|0,b|0)|0;d=f+b|0;if((i[g>>0]|0)<0)k[a+4>>2]=d;else i[g>>0]=d;i[e+d>>0]=0}return a|0}function uw(a,b){a=a|0;b=b|0;var c=0;ar(a,b);c=Tn(b,69e3,20)|0;c=Tn(Ln(c,k[a+52>>2]|0)|0,69021,15)|0;Tn(Mn(c,l[a+56>>0]|0)|0,69037,14)|0;Vp(b,a+57|0);return}function vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,50487,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=6680;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=7936;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=17500;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+28|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4388;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function zw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=a+8|0;k[h>>2]=13;b=k[a+56>>2]|0;a=k[a+52>>2]|0;g=a;if((b|0)!=(a|0)){f=(b-a|0)/20|0;e=0;a=13;do{c=a+5|0;k[h>>2]=c;d=g+(e*20|0)+5|0;b=i[d>>0]|0;if((b&255)<2){c=a+9|0;k[h>>2]=c;b=i[d>>0]|0;if(b<<24>>24==1){a=a+13|0;k[h>>2]=a;b=i[d>>0]|0}else a=c}else a=c;if(b<<24>>24==4){a=a+4|0;k[h>>2]=a}e=e+1|0}while(e>>>0<f>>>0)}return}function Aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18652;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Bw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;f=i;if((a|0)==(b|0)){k[c>>2]=4;d=0;a=0}else{g=z0()|0;h=k[g>>2]|0;k[g>>2]=0;a=h5(a,f,d,J_()|0)|0;d=M;e=k[g>>2]|0;if(!e)k[g>>2]=h;if((k[f>>2]|0)==(b|0)){if((e|0)==34){k[c>>2]=4;d=(d|0)>0|(d|0)==0&a>>>0>0;a=d?-1:0;d=d?2147483647:-2147483648}}else{k[c>>2]=4;a=0;d=0}}M=d;r=i;return a|0}function Cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4356;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=13256;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=6240;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+16|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Fw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+32|0;d=e+16|0;c=e;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;if(bd(a,b,d)|0){b=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;a=k[(k[(k[a+4>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0;Ix(c,d);GA(a,c)|0;Lv(c);a=1}else a=0;p1(d);r=e;return a|0}function Gw(a){a=a|0;var b=0,c=0,d=0;a=a+-20|0;k[a>>2]=10676;b=a+4|0;k[b>>2]=10708;c=a+20|0;k[c>>2]=10732;JE(a+56|0);d=k[a+52>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);k[c>>2]=10776;d=a+36|0;k[d>>2]=10796;aE(d);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+16|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,44928,158,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=9840;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function Iw(a){a=a|0;var b=0,c=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<3){Qd(b,29209,200,2,0,0,0);Tn(Tn(Hn(Tn(b,29231,4)|0,a)|0,30253,3)|0,29519,22)|0;hi(b)}xt(a);dF(a+376|0);r=c;return}function Jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4452;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;if(!c)a=0;else{d=i[a>>0]|0;a:do if(!(d<<24>>24))a=0;else{f=a;a=d;d=d&255;while(1){c=c+-1|0;e=i[b>>0]|0;if(!((c|0)!=0&e<<24>>24!=0))break a;if(a<<24>>24!=e<<24>>24?(d=U8(d)|0,(d|0)!=(U8(e&255)|0)):0)break a;f=f+1|0;b=b+1|0;d=i[f>>0]|0;if(!(d<<24>>24)){a=0;break}else{a=d;d=d&255}}}while(0);a=U8(a&255)|0;a=a-(U8(l[b>>0]|0)|0)|0}return a|0}function Lw(a){a=a|0;var b=0,c=0,d=0;a=a+-4|0;k[a>>2]=10676;b=a+4|0;k[b>>2]=10708;c=a+20|0;k[c>>2]=10732;JE(a+56|0);d=k[a+52>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);k[c>>2]=10776;d=a+36|0;k[d>>2]=10796;aE(d);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Mw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+48|0;e=f;c=f+4|0;d=f+16|0;g=i[a+11>>0]|0;h=g<<24>>24<0;nw(b,h?k[a>>2]|0:a,h?k[a+4>>2]|0:g&255)|0;a=k[a+36>>2]|0;if((a&65535)<<16>>16!=(a&16711680|0?443:80)<<16>>16){k[c>>2]=1969759546;i[c+4>>0]=0;k[e>>2]=a&65535;_N(d,32,c,e)|0;eZ(b,d)|0}r=f;return}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18908;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,34309,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=6816;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function Pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=14592;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;b=b+40|0;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Qw(a,b){a=a|0;b=b|0;if(!b)return;else{Qw(a,k[b>>2]|0);Qw(a,k[b+4>>2]|0);p1(b+16|0);zba(b);return}}function Rw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;j=r;r=r+16|0;c=j+8|0;d=j;e=a+36|0;f=a+40|0;g=c+8|0;h=c;b=a+32|0;a:while(1){a=k[e>>2]|0;a=Vb[k[(k[a>>2]|0)+20>>2]&31](a,k[f>>2]|0,c,g,d)|0;l=(k[d>>2]|0)-h|0;if((JL(c,1,l,k[b>>2]|0)|0)!=(l|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{i=4;break a}}}if((i|0)==4)a=((Ru(k[b>>2]|0)|0)!=0)<<31>>31;r=j;return a|0}function Sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=2180;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18876;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Uw(a){a=a|0;var b=0,c=0,d=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{k[d>>2]=c+-56;p1(c+-16|0);p1(c+-28|0);p1(c+-40|0);p1(c+-52|0);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function Vw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+16|0;g=f;iI(g,b);Wt(a,g,c);p1(g);k[a>>2]=10548;k[a+4>>2]=10584;k[a+20>>2]=10608;k[a+128>>2]=e;iI(a+132|0,d);MM(a+96|0,d)|0;r=f;return}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,33879,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=4716;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function Xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+16|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,91701,158,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=17532;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function Yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=2276;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18972;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function _w(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,33879,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=4128;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function $w(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,52166,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=14224;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+16|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,44928,158,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=9564;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=a+11|0;e=i[h>>0]|0;d=e<<24>>24<0;if(d)g=k[a+4>>2]|0;else g=e&255;if(g>>>0<b>>>0)w5(a);if(c|0){if(d)f=k[a>>2]|0;else f=a;d=g-b|0;c=d>>>0<c>>>0?d:c;d=d-c|0;if(d){e=f+b|0;qO(e|0,e+c|0,d|0)|0;e=i[h>>0]|0}d=g-c|0;if(e<<24>>24<0)k[a+4>>2]=d;else i[h>>0]=d;i[f+d>>0]=0}return a|0}function cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+16|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,44928,158,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=9684;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5408;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function ex(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;Bt(a,b);e=a+32|0;d=a+36|0;a=(k[d>>2]|0)-(k[e>>2]|0)>>2;i[k[b>>2]>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4;a=k[e>>2]|0;if((k[d>>2]|0)!=(a|0)){c=0;do{f=k[a+(c<<2)>>2]|0;Sb[k[(k[f>>2]|0)+12>>2]&511](f,b);c=c+1|0;a=k[e>>2]|0}while(c>>>0<(k[d>>2]|0)-a>>2>>>0)}return}function fx(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=r;r=r+16|0;d=b+8|0;f=b;K6(a);c=a+8|0;k[c>>2]=1520;e=a+12|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;k[e+20>>2]=0;e=a+36|0;i[a+44>>0]=0;k[a+40>>2]=-1;k[e>>2]=1500;k[a+48>>2]=0;k[f>>2]=1235;k[f+4>>2]=0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];Ww(e,c,d)|0;k[a>>2]=1576;k[c>>2]=1600;r=b;return}function gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;k[a>>2]=7356;k[a+4>>2]=b;iI(a+8|0,c);k[a>>2]=7220;i[a+20>>0]=0;d=a+28|0;e=k[b+1484>>2]|0;k[d>>2]=e;k[a+36>>2]=0;c=vba(e>>>0>1073741823?-1:e<<2)|0;b=a+24|0;k[b>>2]=c;k[a+32>>2]=0;if((e|0)>0?(k[c>>2]=-1,(k[d>>2]|0)>1):0){c=1;do{k[(k[b>>2]|0)+(c<<2)>>2]=-1;c=c+1|0}while((c|0)<(k[d>>2]|0))}return}function hx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=a+4|0;if((R9((k[g>>2]|0)+424|0)|0)>1)f=1;else{f=(w4(k[g>>2]|0)|0)+1189|0;f=(i[f>>0]|0)!=0}c=k[b+104>>2]|0;d=b+108|0;if((c|0)<=(k[d>>2]|0)){e=a+108|0;b=c;while(1){if(f)MJ(k[e>>2]|0,b,((b|0)<0)<<31>>31);lo(k[g>>2]|0,a,b);if((b|0)<(k[d>>2]|0))b=b+1|0;else break}}return}function ix(a){a=a|0;var b=0,c=0,d=0;a=a+-20|0;k[a>>2]=10676;b=a+4|0;k[b>>2]=10708;c=a+20|0;k[c>>2]=10732;JE(a+56|0);d=k[a+52>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);k[c>>2]=10776;d=a+36|0;k[d>>2]=10796;aE(d);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,33879,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=6108;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,50195,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=13144;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function lx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a+4|0;if((b|0)!=(c|0)){a=k[d>>2]|0;do{iI(a,b);iI(a+12|0,b+12|0);iI(a+24|0,b+24|0);iI(a+36|0,b+36|0);b=b+48|0;a=(k[d>>2]|0)+48|0;k[d>>2]=a}while((b|0)!=(c|0))}return}function mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,33879,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=2048;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function nx(a){a=a|0;var b=0,c=0;b=a+108|0;c=k[b>>2]|0;if(c|0){a=a+40|0;gr(c+20|0,a);gr(k[(k[b>>2]|0)+40>>2]|0,a);gr(k[(k[b>>2]|0)+44>>2]|0,a);gr(k[(k[b>>2]|0)+48>>2]|0,a);gr(k[(k[b>>2]|0)+52>>2]|0,a)}return}function ox(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[a>>2]|0;if(c|0)wc(c);switch(i[b>>0]|0){case 47:case 0:break;default:{c=666;d=102734;e=c+27|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));Ib(123)}}c=iC(b)|0;c=c>>>0>2147483646?2147483646:c;d=lc(c+1|0)|0;if(!d){c=666;d=102695;e=c+39|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));Ib(123)}else{fE(d|0,b|0,c|0)|0;i[d+c>>0]=0;k[a>>2]=d;return}}function px(a){a=a|0;var b=0,c=0,d=0;a=a+-4|0;k[a>>2]=10676;b=a+4|0;k[b>>2]=10708;c=a+20|0;k[c>>2]=10732;JE(a+56|0);d=k[a+52>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);k[c>>2]=10776;d=a+36|0;k[d>>2]=10796;aE(d);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,55924,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=8300;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+16|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,52634,158,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=14540;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=10624;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;f=(c|0)<0;d=n_(0,0,b|0,c|0)|0;e=g+24|0;i[e>>0]=0;d=f?d:b;c=f?M:c;while(1){h=RU(d|0,c|0,10,0)|0;b=e+-1|0;i[b>>0]=h|48;h=d;d=A5(d|0,c|0,10,0)|0;if(!(c>>>0>0|(c|0)==0&h>>>0>9))break;else{e=b;c=M}}if(f){b=e+-2|0;i[b>>0]=45}k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,b,iC(b)|0);r=g;return}function ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,55924,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=7916;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,47584,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=12528;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,50487,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=12912;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,50487,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=13620;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function yx(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;k[a+4>>2]=12;k[a>>2]=8268;iI(a+8|0,b);iI(a+20|0,c);k[a+32>>2]=d;d=a+40|0;k[d>>2]=e;k[d+4>>2]=f;k[a+48>>2]=g;i[a+52>>0]=0;g=a+56|0;k[a+80>>2]=0;i[a+84>>0]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;i[g+20>>0]=0;return}function zx(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[b>>0]|0;a:do if(d<<24>>24==34){d=b;b:while(1){c=d+1|0;switch(i[c>>0]|0){case 10:case 0:break a;case 34:break b;default:d=c}}c=d+2|0}else{c=b;while(1){switch(d<<24>>24){case 0:case 10:case 44:break a;default:{}}d=c+1|0;c=d;d=i[d>>0]|0}}while(0);k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,b,c-b|0);return}function Ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5168;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=4324;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,52634,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=14656;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function Dx(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=k[a+4>>2]|0;e=a+8|0;a:do if((d|0)==(e|0))c=-1.0;else{while(1){if((k[d+24>>2]|0)==(b|0))break;a=k[d+4>>2]|0;if(!a)while(1){a=k[d+8>>2]|0;if((k[a>>2]|0)==(d|0))break;else d=a}else while(1){d=k[a>>2]|0;if(!d)break;else a=d}if((a|0)==(e|0)){c=-1.0;break a}else d=a}c=+p[d+16>>3]}while(0);return +c}function Ex(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=k[a+452>>2]|0;g=a+448|0;if((e|0)!=(g|0)){f=e;do{e=k[e+8>>2]|0;if(!(Ub[k[(k[e>>2]|0)+64>>2]&511](e)|0))dv(e,c);e=k[f+4>>2]|0;f=e}while((f|0)!=(g|0))}i0(a+2024|0,c);g=k[a+2164>>2]|0;fc[k[(k[g>>2]|0)+44>>2]&255](g,b,c);if(d)rD(a+136|0,c,b);return}function Fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=2148;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18780;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5136;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Ix(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+8|0;j[c>>1]=j[c>>1]&-512|260;k[a+12>>2]=0;c=i[b+11>>0]|0;e=c<<24>>24<0;d=e?k[b>>2]|0:b;if(e){b=k[b+4>>2]|0;if((b|0)==-1)b=iC(d)|0}else b=c&255;b=b>>>0>2147483646?2147483646:b;c=lc(b+1|0)|0;if(!c){b=666;c=102695;a=b+39|0;do{i[b>>0]=i[c>>0]|0;b=b+1|0;c=c+1|0}while((b|0)<(a|0));Ib(123)}else{fE(c|0,d|0,b|0)|0;i[c+b>>0]=0;k[a>>2]=c;return}}function Jx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a+11|0;c=i[f>>0]|0;d=c<<24>>24<0;if(d){e=k[a+4>>2]|0;c=(k[a+8>>2]&2147483647)+-1|0}else{e=c&255;c=10}if((e|0)==(c|0)){kv(a,c,1,c,c,0,0);if((i[f>>0]|0)>-1)c=7;else c=8}else if(d)c=8;else c=7;if((c|0)==7)i[f>>0]=e+1;else if((c|0)==8){f=k[a>>2]|0;k[a+4>>2]=e+1;a=f}f=a+e|0;i[f>>0]=b;i[f+1>>0]=0;return}function Kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+160|0;d=e;a=a+12|0;if(k[a>>2]|0)if((k[2783]|0)<4){Qd(d,55924,215,3,0,0,0);Tn(d,91746,41)|0;hi(d);a=0}else a=0;else{f=k[c>>2]|0;c=k[c+4>>2]|0;d=cW(16)|0;k[d>>2]=14744;k[d+4>>2]=b;k[d+8>>2]=f;k[d+12>>2]=c;k[a>>2]=d;a=1}r=e;return a|0}function Lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=2116;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=6516;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5300;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=18844;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=a+11|0;d=i[g>>0]|0;e=d<<24>>24<0;if(e)f=(k[a+8>>2]&2147483647)+-1|0;else f=10;if(f>>>0<b>>>0){if(e)d=k[a+4>>2]|0;else d=d&255;kv(a,f,b-f|0,d,0,d,0);d=i[g>>0]|0}if(d<<24>>24<0)d=k[a>>2]|0;else d=a;if(b|0)XG(d|0,c|0,b|0)|0;i[d+b>>0]=0;if((i[g>>0]|0)<0)k[a+4>>2]=b;else i[g>>0]=b;return a|0}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=b;d=c-e|0;if(d>>>0>4294967279)x5(a);if(d>>>0<11)i[a+11>>0]=d;else{g=d+16&-16;f=cW(g)|0;k[a>>2]=f;k[a+8>>2]=g|-2147483648;k[a+4>>2]=d;a=f}if((b|0)!=(c|0)){e=c-e|0;d=a;while(1){i[d>>0]=i[b>>0]|0;b=b+1|0;if((b|0)==(c|0))break;else d=d+1|0}a=a+e|0}i[a>>0]=0;return}function Rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=13688;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,49633,8);a=WA(b,e)|0;p1(e);if(!a)a=0;else{MM(c,tz(a)|0)|0;a=1}r=d;return a|0}function Tx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=k[a>>2]|0;g=a+4|0;f=b+4|0;e=(k[g>>2]|0)-d|0;c=(k[f>>2]|0)+(0-(e>>4)<<4)|0;k[f>>2]=c;if((e|0)>0){fE(c|0,d|0,e|0)|0;d=f;c=k[f>>2]|0}else d=f;f=k[a>>2]|0;k[a>>2]=c;k[d>>2]=f;f=b+8|0;e=k[g>>2]|0;k[g>>2]=k[f>>2];k[f>>2]=e;f=a+8|0;g=b+12|0;a=k[f>>2]|0;k[f>>2]=k[g>>2];k[g>>2]=a;k[b>>2]=k[d>>2];return}function Ux(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+8|0;k[f>>2]=14;b=k[a+56>>2]|0;c=k[a+52>>2]|0;e=c;if((b|0)==(c|0))e=15;else{d=b-c>>3;b=0;c=14;do{c=(k[e+(b<<3)+4>>2]|0)+2+c|0;k[f>>2]=c;b=b+1|0}while(b>>>0<d>>>0);e=c+1|0}k[f>>2]=e;c=k[a+68>>2]|0;b=k[a+64>>2]|0;a=b;if((c|0)!=(b|0)){d=c-b>>3;c=0;b=e;do{b=(k[a+(c<<3)+4>>2]|0)+2+b|0;k[f>>2]=b;c=c+1|0}while(c>>>0<d>>>0)}return}function Vx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=b+1|0;d=a+24|0;e=a+4|0;b=DT((k[e>>2]|0)+2060|0,f)|0;if((b|0)!=0?(c=k[b+16>>2]|0,(c|0)>0):0)b=c;else b=k[(k[e>>2]|0)+1444>>2]|0;Oq(d,b,f)|0;b=k[(k[e>>2]|0)+2056>>2]|0;c=a+64|0;if((b|0)<=((k[c>>2]|0)+f|0))while(1){Sb[k[(k[a>>2]|0)+92>>2]&511](a,b);if((b|0)<((k[c>>2]|0)+f|0))b=b+1|0;else break}return}function Wx(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=10676;b=a+4|0;k[b>>2]=10708;c=a+20|0;k[c>>2]=10732;JE(a+56|0);d=k[a+52>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);k[c>>2]=10776;d=a+36|0;k[d>>2]=10796;aE(d);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Xx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=a+4|0;c=k[e>>2]|0;if(c){d=k[b>>2]|0;a=e;a:while(1){b=c;while(1){if((k[b+16>>2]|0)>=(d|0))break;b=k[b+4>>2]|0;if(!b)break a}c=k[b>>2]|0;if(!c){a=b;break}else a=b}if(!((a|0)!=(e|0)?(d|0)>=(k[a+16>>2]|0):0))f=9}else f=9;if((f|0)==9)a=e;return a|0}function Yx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(d&2048){i[a>>0]=43;a=a+1|0}if(d&512){i[a>>0]=35;a=a+1|0}while(1){e=i[b>>0]|0;if(!(e<<24>>24))break;i[a>>0]=e;b=b+1|0;a=a+1|0}a:do switch(d&74){case 64:{i[a>>0]=111;break}case 8:if(!(d&16384)){i[a>>0]=120;break a}else{i[a>>0]=88;break a}default:if(c){i[a>>0]=100;break a}else{i[a>>0]=117;break a}}while(0);return}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[c>>2]|0;d=k[c+4>>2]|0;c=a+4|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);f=cW(16)|0;k[f>>2]=5736;k[f+4>>2]=b;k[f+8>>2]=e;k[f+12>>2]=d;d=a+8|0;e=cW(12)|0;k[e+8>>2]=f;k[e+4>>2]=d;f=k[d>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[d>>2]=e;d=a+16|0;k[d>>2]=(k[d>>2]|0)+1;Sb[k[k[b>>2]>>2]&511](b,a);Rb[k[(k[c>>2]|0)+12>>2]&2047](c);return}function _x(a){a=a|0;var b=0,c=0,d=0;b=a+-4|0;k[b>>2]=6384;a=b+4|0;k[a>>2]=6440;tE(b+40|0);d=b+20|0;k[d>>2]=2376;c=b+24|0;k[c>>2]=2400;up(d);$H(b+28|0);k[c>>2]=2024;k[b>>2]=1972;k[a>>2]=2e3;Bo(b);dH(b+8|0,k[b+12>>2]|0);k[a>>2]=2024;return}function $x(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=k[a>>2]|0;g=a+4|0;f=b+4|0;e=(k[g>>2]|0)-d|0;c=(k[f>>2]|0)+(0-(e>>3)<<3)|0;k[f>>2]=c;if((e|0)>0){fE(c|0,d|0,e|0)|0;d=f;c=k[f>>2]|0}else d=f;f=k[a>>2]|0;k[a>>2]=c;k[d>>2]=f;f=b+8|0;e=k[g>>2]|0;k[g>>2]=k[f>>2];k[f>>2]=e;f=a+8|0;g=b+12|0;a=k[f>>2]|0;k[f>>2]=k[g>>2];k[g>>2]=a;k[b>>2]=k[d>>2];return}function ay(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;if(((k[a+40>>2]|0)+1|0)>>>0<(((k[a+28>>2]|0)-(k[a+24>>2]|0)|0)/12|0)>>>0){k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;yH(a,c)|0;Cf(a,c,b);p1(c);a=1}else a=0;r=d;return a|0}function by(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<3){Qd(c,34543,74,2,0,0,0);Tn(c,34760,12)|0;hi(c)}ap(k[(k[a+4>>2]|0)+4>>2]|0,b);if(b|0){p1(b+12|0);p1(b);zba(b)}r=d;return}function cy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;ar(a,b);e=Tn(110732,68583,6)|0;e=Tn(Ln(e,k[a+52>>2]|0)|0,68590,6)|0;d=a+56|0;b=i[d+11>>0]|0;c=b<<24>>24<0;Tn(e,c?k[d>>2]|0:d,c?k[a+60>>2]|0:b&255)|0;return}function dy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<4){Qd(c,75946,652,3,0,0,0);e=Tn(Tn(c,75982,6)|0,78418,23)|0;Tn(e,b,iC(b)|0)|0;hi(c)}wc(b);nL(a+392|0,0);r=d;return}function ey(a){a=a|0;var b=0,c=0;k[a>>2]=6700;k[a+4>>2]=6760;k[a+8>>2]=6776;b=k[a+36>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=k[a+32>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);pD(a+40|0,k[a+44>>2]|0);c=a+12|0;k[c>>2]=2376;b=a+16|0;k[b>>2]=2400;up(c);$H(a+20|0);k[b>>2]=2024;return}function fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;h=g+16|0;e=g+12|0;f=g;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[h>>2]=k[a+40>>2];if(hp(h,b,f,1)|0?(d=+Waa((i[f+11>>0]|0)<0?k[f>>2]|0:f,e),(i[k[e>>2]>>0]|0)==0):0){p[c>>3]=d;a=1}else a=0;p1(f);r=g;return a|0}function gy(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=13364;b=a+4|0;k[b>>2]=13396;c=a+20|0;k[c>>2]=13420;mr(a+104|0);GL(a+56|0);h3(a+48|0);k[c>>2]=10776;d=a+36|0;k[d>>2]=10796;aE(d);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+64|0;f=h;g=a+16|0;k[a+40>>2]=0;k[a+44>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;i[g+16>>0]=0;g=k[a+4>>2]|0;d=a+8|0;e=k[d>>2]|0;if((e|0)!=(g|0))k[d>>2]=e+(~(((e+-20-g|0)>>>0)/20|0)*20|0);eL(f,a);$u(f,b,c)|0;fP(f);g=(i[a+32>>0]|0)!=0;l7(f);r=h;return g|0}function iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;e=d;Kr(e,b);b=i[c+11>>0]|0;f=b<<24>>24<0;c=nw(e,f?k[c>>2]|0:c,f?k[c+4>>2]|0:b&255)|0;k[a>>2]=k[c>>2];k[a+4>>2]=k[c+4>>2];k[a+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;p1(e);r=d;return}function jy(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<3){Qd(c,34543,63,2,0,0,0);Tn(c,34746,13)|0;hi(c)}nl(k[(k[a+4>>2]|0)+4>>2]|0,b);if(b|0){p1(b+12|0);p1(b);zba(b)}r=d;return}function ky(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=10676;b=a+4|0;k[b>>2]=10708;c=a+20|0;k[c>>2]=10732;JE(a+56|0);d=k[a+52>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);k[c>>2]=10776;d=a+36|0;k[d>>2]=10796;aE(d);eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=a+4|0;e=k[d>>2]<<1>>1;f=e&7;Hs(a,b);b=k[d>>2]<<1>>1;do if((e|0)<(b|0)){d=(e+7|0)/8|0;b=(b+7|0)/8|0;if(!c){if((b|0)<=(d|0))break;XG((k[a>>2]|0)+d|0,0,b-d|0)|0;break}if((e+14|0)>>>0>14&(f|0)!=0){e=(k[a>>2]|0)+(d+-1)|0;i[e>>0]=l[e>>0]|0|255>>>f}if((b|0)>(d|0))XG((k[a>>2]|0)+d|0,-1,b-d|0)|0;dV(a)}while(0);return}function my(a){a=a|0;var b=0,c=0,d=0;a=a+-4|0;k[a>>2]=6384;b=a+4|0;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function ny(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=r;r=r+256|0;g=h;do if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;XG(g|0,b|0,(e>>>0>256?256:e)|0)|0;b=k[a>>2]|0;f=(b&32|0)==0;if(e>>>0>255){c=c-d|0;do{if(f){Gq(g,256,a)|0;b=k[a>>2]|0}e=e+-256|0;f=(b&32|0)==0}while(e>>>0>255);if(f)e=c&255;else break}else if(!f)break;Gq(g,e,a)|0}while(0);r=h;return}function oy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+16|0;d=c+8|0;f=c;dY(a,b);k[a>>2]=9436;e=a+24|0;i[a+32>>0]=0;k[a+28>>2]=-1;k[e>>2]=9544;k[a+40>>2]=0;aM(e);k[a+64>>2]=k[b+1632>>2];b=a+72|0;k[b>>2]=0;k[b+4>>2]=0;k[f>>2]=96;k[f+4>>2]=1;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];ax(e,a,d)|0;r=c;return}function py(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;NO(f);F$(f,3.0,99);F$(f,0.0,105);F$(f,i[a+84>>0]|0?+(c>>>0):2.0,105);d$(f,b);F$(f,+(d&1),99);P_(k[a+104>>2]|0,f);i[a+85>>0]=0;_R(f);r=e;return}function qy(a,b){a=a|0;b=b|0;var c=0,d=0;d=k[a+8>>2]|0;i[k[b>>2]>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=a+12|0;c=l[c>>0]|l[c+1>>0]<<8|l[c+2>>0]<<16|l[c+3>>0]<<24;i[d>>0]=c;i[d+1>>0]=c>>8;i[d+2>>0]=c>>16;i[d+3>>0]=c>>24;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+48>>2]|0;fE(d|0,k[a+44>>2]|0,c|0)|0;k[b>>2]=(k[b>>2]|0)+c;return}function ry(a,b){a=a|0;b=b|0;var c=0;iI(a,b);c=a+12|0;b=a+48|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[c+16>>2]=0;k[c+20>>2]=0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;sK(a+64|0);b=a+160|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;i[b+24>>0]=0;TG(a);return}function sy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+32|0;d=c+12|0;e=c;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,43244,21);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,115628,0);Sd(b,d,a+48|0,e)|0;p1(e);p1(d);r=c;return}function ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;cj(a,c);c=a+8|0;if((c|0)!=(b|0))ll(c,k[b>>2]|0,k[b+4>>2]|0);c=k[c>>2]|0;b=k[a+12>>2]|0;k[d>>2]=99;xd(c,b,d);i[a+4>>0]=1;r=e;return}function uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=a+12|0;e=k[h>>2]|0;g=a+16|0;d=k[g>>2]|0;if((e|0)<(d|0)){f=a+4|0;a=e}else{f=a+32|0;d=a+8|0;i=k[d>>2]|0;p[f>>3]=+p[f>>3]+ +(i|0);e=e-i|0;k[h>>2]=e;f=a+4|0;a=k[f>>2]|0;qO(a|0,a+i|0,e|0)|0;k[d>>2]=0;a=k[h>>2]|0;d=k[g>>2]|0}i=d-a|0;i=(i|0)>(c|0)?c:i;fE((k[f>>2]|0)+a|0,b|0,i|0)|0;k[h>>2]=(k[h>>2]|0)+i;return i|0}function vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+32|0;f=d+16|0;e=d+8|0;g=d;k[g>>2]=c;k[f>>2]=g;rk(e,b+48|0,g,113525,f,d+20|0);Ms(a,b,(k[e>>2]|0)+20|0);r=d;return}function wy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;g=j;h=b&255;i[g>>0]=h;d=a+16|0;e=k[d>>2]|0;if(!e)if(!(vJ(a)|0)){e=k[d>>2]|0;f=4}else c=-1;else f=4;do if((f|0)==4){f=a+20|0;d=k[f>>2]|0;if(d>>>0<e>>>0?(c=b&255,(c|0)!=(i[a+75>>0]|0)):0){k[f>>2]=d+1;i[d>>0]=h;break}if((Yb[k[a+36>>2]&31](a,g,1)|0)==1)c=l[g>>0]|0;else c=-1}while(0);r=j;return c|0}function xy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=r;r=r+16|0;e=f;tF(a);SC(e,(k[a+24>>2]|0)+904|0);c=k[e+4>>2]|0;d=c;if((d|0)==(e|0))b=0;else{b=0;do{b=b+-1+(R9((k[c+8>>2]|0)+424|0)|0)|0;c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0))}ub(135,k[a+20>>2]|0,b|0)|0;$H(e);r=f;return}function yy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=r;r=r+16|0;e=f;tF(a);SC(e,(k[a+24>>2]|0)+904|0);c=k[e+4>>2]|0;d=c;if((d|0)==(e|0))b=0;else{b=0;do{b=b+-1+(R9((k[c+8>>2]|0)+424|0)|0)|0;c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0))}ub(134,k[a+20>>2]|0,b|0)|0;$H(e);r=f;return}function zy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c+8|0;e=c;f$(a,b);k[a+32>>2]=0;k[a+36>>2]=0;k[a+28>>2]=a+32;k[a>>2]=9252;k[a+20>>2]=9352;k[a+24>>2]=9380;b=(w4(k[a+4>>2]|0)|0)+296|0;k[e>>2]=334;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];hw(b,a,d);r=c;return}function Ay(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;f=a+8|0;h=k[f>>2]|0;a=(k[a+4>>2]|0)+h|0;k[f>>2]=h+8;f=BZ(l[a>>0]|0|0,0,56)|0;h=M;g=BZ(l[a+1>>0]|0|0,0,48)|0;h=M|h;e=BZ(l[a+2>>0]|0|0,0,40)|0;h=h|M|(l[a+3>>0]|0);d=BZ(l[a+4>>0]|0|0,0,24)|0;h=h|M;c=BZ(l[a+5>>0]|0|0,0,16)|0;h=h|M;b=BZ(l[a+6>>0]|0|0,0,8)|0;M=h|M;return g|f|e|d|c|b|(l[a+7>>0]|0)|0}function By(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=k[a>>2]|0;g=a+4|0;f=b+4|0;e=(k[g>>2]|0)-d|0;c=(k[f>>2]|0)+(0-(e>>2)<<2)|0;k[f>>2]=c;if((e|0)>0){fE(c|0,d|0,e|0)|0;d=f;c=k[f>>2]|0}else d=f;f=k[a>>2]|0;k[a>>2]=c;k[d>>2]=f;f=b+8|0;e=k[g>>2]|0;k[g>>2]=k[f>>2];k[f>>2]=e;f=a+8|0;g=b+12|0;a=k[f>>2]|0;k[f>>2]=k[g>>2];k[g>>2]=a;k[b>>2]=k[d>>2];return}function Cy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=a+4|0;c=k[e>>2]|0;if(c){d=k[b>>2]|0;a=e;a:while(1){b=c;while(1){if((k[b+16>>2]|0)>>>0>=d>>>0)break;b=k[b+4>>2]|0;if(!b)break a}c=k[b>>2]|0;if(!c){a=b;break}else a=b}if(!((a|0)!=(e|0)?d>>>0>=(k[a+16>>2]|0)>>>0:0))f=9}else f=9;if((f|0)==9)a=e;return a|0}function Dy(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=6384;b=a+4|0;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Ey(a){a=a|0;var b=0;k[a>>2]=10816;p1(a+64|0);b=a+56|0;k[b>>2]=10844;aE(b);b=a+48|0;k[b>>2]=10864;aE(b);b=a+40|0;k[b>>2]=10864;aE(b);b=a+32|0;k[b>>2]=10864;aE(b);b=a+24|0;k[b>>2]=10884;aE(b);b=a+16|0;k[b>>2]=10904;aE(b);eU(a);return}function Fy(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=r;r=r+16|0;h=g+4|0;i=g;a=a+8|0;a=Ub[k[(k[a>>2]|0)+4>>2]&511](a)|0;k[i>>2]=k[d>>2];k[h>>2]=k[i>>2];a=(zd(c,h,a,a+288|0,f,e,0)|0)-a|0;if((a|0)<288)k[b>>2]=((a|0)/12|0|0)%12|0;r=g;return}function Gy(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=r;r=r+16|0;h=g+4|0;i=g;a=a+8|0;a=Ub[k[(k[a>>2]|0)+4>>2]&511](a)|0;k[i>>2]=k[d>>2];k[h>>2]=k[i>>2];a=(Td(c,h,a,a+288|0,f,e,0)|0)-a|0;if((a|0)<288)k[b>>2]=((a|0)/12|0|0)%12|0;r=g;return}function Hy(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<3){Qd(b,51839,41,2,0,0,0);g=Tn(b,52192,18)|0;f=a+52|0;d=i[f+11>>0]|0;e=d<<24>>24<0;Tn(g,e?k[f>>2]|0:f,e?k[a+56>>2]|0:d&255)|0;hi(b)}Oi(a);r=c;return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=k[b>>2]|0;a=k[b+4>>2]|0;do if((e|0)==(a|0))a=0;else{d=a-e>>2;a=d+-1|0;if((c|0)==999){a=k[e+(a<<2)>>2]|0;break}a=(a|0)<(c|0)?a:c;if((a|0)<0){b=0;do{if(i[(k[e+(b<<2)>>2]|0)+56>>0]|0){a=b;break}b=b+1|0}while(b>>>0<d>>>0);a=(a|0)<0?d>>>1:a}a=k[e+(a<<2)>>2]|0}while(0);return a|0}function Jy(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=r;r=r+16|0;c=b+8|0;e=b;Jp(a);k[a>>2]=12320;k[a+28>>2]=12476;k[a+32>>2]=12504;d=a+208|0;k[d>>2]=0;k[d+4>>2]=0;d=a+216|0;i[a+224>>0]=0;k[a+220>>2]=-1;k[d>>2]=1500;k[a+228>>2]=0;f=a+232|0;k[f>>2]=0;k[f+4>>2]=0;i[a+240>>0]=0;k[e>>2]=1263;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];vx(d,a,c)|0;r=b;return}function Ky(a,b){a=+a;b=+b;var c=0,d=0,e=0,f=0,g=0;p[u>>3]=a;e=k[u>>2]|0;f=k[u+4>>2]|0;d=f&2147483647;do if(!(d>>>0>2146435072|(d|0)==2146435072&e>>>0>0)){p[u>>3]=b;c=k[u>>2]|0;d=k[u+4>>2]|0;g=d&2147483647;if(!(g>>>0>2146435072|(g|0)==2146435072&c>>>0>0)){e=KZ(e|0,f|0,63)|0;g=KZ(c|0,d|0,63)|0;if((e|0)==(g|0)){a=a<b?a:b;break}else{a=(f|0)<0?a:b;break}}}else a=b;while(0);return +a}function Ly(a,b){a=+a;b=+b;var c=0,d=0,e=0,f=0,g=0;p[u>>3]=a;e=k[u>>2]|0;f=k[u+4>>2]|0;d=f&2147483647;do if(!(d>>>0>2146435072|(d|0)==2146435072&e>>>0>0)){p[u>>3]=b;c=k[u>>2]|0;d=k[u+4>>2]|0;g=d&2147483647;if(!(g>>>0>2146435072|(g|0)==2146435072&c>>>0>0)){e=KZ(e|0,f|0,63)|0;g=KZ(c|0,d|0,63)|0;if((e|0)==(g|0)){a=a<b?b:a;break}else{a=(f|0)<0?b:a;break}}}else a=b;while(0);return +a}function My(a,b,c){a=a|0;b=b|0;c=c|0;pz(a+368|0,b+104|0)|0;if((X9(k[c>>2]|0)|0)!=200?(X9(k[c>>2]|0)|0)!=206:0)vj(a,b,c);else sv(a,b,c);if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);return}function Ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;if(Ub[k[(k[c>>2]|0)+64>>2]&511](c)|0?(e=k[(k[d>>2]|0)+2272>>2]|0,!(Ub[k[(k[e>>2]|0)+28>>2]&511](e)|0)):0)a=0;else if(((f7(k[d>>2]|0)|0?(i[(k[d>>2]|0)+2160>>0]|0)==0:0)?cc[k[(k[c>>2]|0)+56>>2]&127](c,b)|0:0)?cc[k[(k[c>>2]|0)+44>>2]&127](c,b)|0:0)a=(k[a+12>>2]|0)>=(b|0);else a=0;return a|0}function Oy(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,l=0,m=0;l=a+4|0;Rb[k[(k[l>>2]|0)+8>>2]&2047](l);i=k[a+12>>2]|0;j=a+8|0;a=i;if((a|0)!=(j|0))do{m=i;i=k[a+4>>2]|0;m=k[m+8>>2]|0;ac[k[(k[m>>2]|0)+12>>2]&3](m,b,c,d,e,f,g,h);a=i}while((a|0)!=(j|0));Rb[k[(k[l>>2]|0)+12>>2]&2047](l);return}function Py(a){a=a|0;var b=0,c=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<3){Qd(b,29209,216,2,0,0,0);Tn(Tn(Hn(Tn(b,29231,4)|0,a)|0,30253,3)|0,29463,55)|0;hi(b)}uV(a);r=c;return}function Qy(a){a=a|0;var b=0,c=0;k[a>>2]=11100;p1(a+68|0);b=k[a+56>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[a+52>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);c=a+32|0;k[c>>2]=2376;b=a+36|0;k[b>>2]=2400;up(c);$H(a+40|0);k[b>>2]=2024;p1(a+20|0);eU(a);return}function Ry(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,f=0;e=a+4|0;c=k[e>>2]|0;if(c){d=+p[b>>3];a=e;a:while(1){b=c;while(1){if(!(+p[b+16>>3]<d))break;b=k[b+4>>2]|0;if(!b)break a}c=k[b>>2]|0;if(!c){a=b;break}else a=b}if(!((a|0)!=(e|0)?!(d<+p[a+16>>3]):0))f=9}else f=9;if((f|0)==9)a=e;return a|0}function Sy(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<3){Qd(b,49969,49,2,0,0,0);g=Tn(b,50231,13)|0;f=a+64|0;d=i[f+11>>0]|0;e=d<<24>>24<0;Tn(g,e?k[f>>2]|0:f,e?k[a+68>>2]|0:d&255)|0;hi(b)}Qi(a);r=c;return}function Ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=a+24|0;h=a+28|0;f=0;while(1){if((f|0)>=(c|0))break;d=k[g>>2]|0;e=k[h>>2]|0;if(d>>>0>=e>>>0){if((cc[k[(k[a>>2]|0)+52>>2]&127](a,l[b>>0]|0)|0)==-1)break;b=b+1|0;f=f+1|0;continue}e=e-d|0;i=c-f|0;e=(i|0)<(e|0)?i:e;if(e){fE(d|0,b|0,e|0)|0;d=k[g>>2]|0}k[g>>2]=d+e;b=b+e|0;f=e+f|0}return f|0}function Uy(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=r;r=r+16|0;h=g+4|0;i=g;a=a+8|0;a=Ub[k[k[a>>2]>>2]&511](a)|0;k[i>>2]=k[d>>2];k[h>>2]=k[i>>2];a=(zd(c,h,a,a+168|0,f,e,0)|0)-a|0;if((a|0)<168)k[b>>2]=((a|0)/12|0|0)%7|0;r=g;return}function Vy(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=r;r=r+16|0;h=g+4|0;i=g;a=a+8|0;a=Ub[k[k[a>>2]>>2]&511](a)|0;k[i>>2]=k[d>>2];k[h>>2]=k[i>>2];a=(Td(c,h,a,a+168|0,f,e,0)|0)-a|0;if((a|0)<168)k[b>>2]=((a|0)/12|0|0)%7|0;r=g;return}function Wy(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=6384;b=a+4|0;k[b>>2]=6440;tE(a+40|0);d=a+20|0;k[d>>2]=2376;c=a+24|0;k[c>>2]=2400;up(d);$H(a+28|0);k[c>>2]=2024;k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function Xy(a){a=a|0;var b=0;if((i[109328]|0)==0?E3(109328)|0:0){if((i[109336]|0)==0?E3(109336)|0:0){b=111724;do{k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}b=b+12|0}while((b|0)!=112012)}dZ(111724,107175)|0;dZ(111736,107178)|0;k[28003]=111724}return k[28003]|0}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+160|0;a=c;if((k[2783]|0)<5){Qd(a,27539,403,4,0,0,0);f=Tn(a,27561,27)|0;d=i[b+11>>0]|0;e=d<<24>>24<0;Tn(f,e?k[b>>2]|0:b,e?k[b+4>>2]|0:d&255)|0;hi(a)}r=c;return}function Zy(a,b){a=a|0;b=b|0;if(!b)return;else{Zy(a,k[b>>2]|0);Zy(a,k[b+4>>2]|0);p1(b+20|0);zba(b);return}}function _y(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+4|0;c=k[f>>2]|0;e=a+8|0;b=k[e>>2]|0;if((c|0)!=(b|0))do{d=k[c>>2]|0;if(d){_y(d);zba(d);b=k[e>>2]|0}c=c+4|0}while((c|0)!=(b|0));b=a+40|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}p1(a+28|0);p1(a+16|0);mT(f);return}function $y(a){a=a|0;var b=0;if((i[109408]|0)==0?E3(109408)|0:0){if((i[109416]|0)==0?E3(109416)|0:0){b=112536;do{k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}b=b+12|0}while((b|0)!=112824)}cZ(112536,24320)|0;cZ(112548,24332)|0;k[28206]=112536}return k[28206]|0}function az(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-48|0;k[d>>2]=e;p1(c+-12|0);p1(c+-24|0);p1(c+-36|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=a+24|0;h=a+28|0;d=0;while(1){if((d|0)>=(c|0))break;e=k[g>>2]|0;f=k[h>>2]|0;if(e>>>0<f>>>0){f=f-e>>2;i=c-d|0;f=(i|0)<(f|0)?i:f;j1(e,b,f)|0;k[g>>2]=(k[g>>2]|0)+(f<<2);b=b+(f<<2)|0;d=f+d|0;continue}if((cc[k[(k[a>>2]|0)+52>>2]&127](a,k[b>>2]|0)|0)==-1)break;b=b+4|0;d=d+1|0}return d|0}function cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+32|0;e=d+16|0;f=d;mD(e,0);g=N6(e,56171)|0;nF(f,50803);GA(g,f)|0;Lv(f);g=N6(e,56001)|0;fY(f,b);GA(g,f)|0;Lv(f);b=N6(e,50818)|0;fY(f,c);GA(b,f)|0;Lv(f);IE(a,e);Lv(e);r=d;return}function dz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+16|0;g=f;NO(g);F$(g,3.0,99);F$(g,0.0,105);F$(g,i[a+84>>0]|0?+(d>>>0):2.0,105);l_(g,b,c);F$(g,+(e&1),99);P_(k[a+104>>2]|0,g);i[a+85>>0]=0;_R(g);r=f;return}function ez(a){a=a|0;var b=0;switch((j[a+8>>1]&255)<<24>>24){case 7:{a=k[(k[a>>2]|0)+8>>2]|0;break}case 6:{a=k[a>>2]|0;if(!(k[a+8>>2]|0))a=0;else{b=a+4|0;a=k[b>>2]|0;if(!a)while(1){a=k[b+8>>2]|0;if((k[a>>2]|0)==(b|0))b=a;else break}else while(1){b=k[a+4>>2]|0;if(!b)break;else a=b}a=(k[a+20>>2]|0)+1|0}break}default:a=0}return a|0}function fz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;c=e+4|0;d=e;b=ur(a,b)|0;if((b|0)==(a+4|0))b=0;else{k[d>>2]=b;k[c>>2]=k[d>>2];ev(a,c)|0;b=1}r=e;return b|0}function gz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+32|0;a=d+8|0;e=d;k[a>>2]=0;GM(a,0,0,0);jR(a,9);k[a+4>>2]=9;c=cW(16)|0;k[c>>2]=0;GM(c,k[a>>2]|0,9,9);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);b=b+8|0;Zo(e,k[b>>2]|0,k[b+4>>2]|0);a=k[a>>2]|0;if(a|0)wba(a);r=d;return c|0}function hz(a){a=a|0;var b=0,c=0,d=0,e=0;e=r;r=r+160|0;c=e;d=a+204|0;b=k[d>>2]|0;if(b|0){Rb[k[(k[b>>2]|0)+16>>2]&2047](b);b=k[d>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[d>>2]=0}if((k[2783]|0)<3){Qd(c,30665,546,2,0,0,0);Tn(c,31446,35)|0;hi(c)}Ah(a);r=e;return}function iz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=r;r=r+32|0;g=e;f=g+12|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[g>>2]=k[c>>2];k[g+4>>2]=k[c+4>>2];k[g+8>>2]=k[c+8>>2];MM(f,b)|0;k[g+24>>2]=d;nr(a+24|0,g);p1(f);r=e;return 0}function jz(a){a=a|0;var b=0,c=0,d=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{k[d>>2]=c+-56;p1(c+-16|0);p1(c+-28|0);p1(c+-40|0);p1(c+-52|0);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function kz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=r;r=r+16|0;h=g+4|0;i=g;j=LZ(d)|0;k[h>>2]=j;d=k_(h,111636)|0;oU(j)|0;k[i>>2]=k[c>>2];k[h>>2]=k[i>>2];Fy(a,f+16|0,b,h,e,d);r=g;return k[b>>2]|0}function lz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=r;r=r+16|0;h=g+4|0;i=g;j=LZ(d)|0;k[h>>2]=j;d=k_(h,111636)|0;oU(j)|0;k[i>>2]=k[c>>2];k[h>>2]=k[i>>2];Uy(a,f+24|0,b,h,e,d);r=g;return k[b>>2]|0}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=r;r=r+16|0;h=g+4|0;i=g;j=LZ(d)|0;k[h>>2]=j;d=k_(h,111604)|0;oU(j)|0;k[i>>2]=k[c>>2];k[h>>2]=k[i>>2];Gy(a,f+16|0,b,h,e,d);r=g;return k[b>>2]|0}function nz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=r;r=r+16|0;h=g+4|0;i=g;j=LZ(d)|0;k[h>>2]=j;d=k_(h,111604)|0;oU(j)|0;k[i>>2]=k[c>>2];k[h>>2]=k[i>>2];Vy(a,f+24|0,b,h,e,d);r=g;return k[b>>2]|0}function oz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a+4|0;e=k[d>>2]|0;c=k[e+2056>>2]|0;e=e+2024|0;f=k[e>>2]|0;if(c>>>0<(f+(x9(e)|0)|0)>>>0)do{if(cc[k[(k[b>>2]|0)+56>>2]&127](b,c)|0)jc[k[(k[a>>2]|0)+28>>2]&63](a,b,c,k[(k[d>>2]|0)+1444>>2]|0);c=c+1|0;f=(k[d>>2]|0)+2024|0;e=k[f>>2]|0}while(c>>>0<(e+(x9(f)|0)|0)>>>0);return}function pz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;c=e+4|0;d=e;b=Xx(a,b)|0;if((b|0)==(a+4|0))b=0;else{k[d>>2]=b;k[c>>2]=k[d>>2];Rz(a,c)|0;b=1}r=e;return b|0}function qz(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-96|0;k[d>>2]=e;p1(c+-28|0);p1(c+-40|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function rz(a){a=a|0;var b=0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;k[a>>2]=6884;k[a+4>>2]=6912;b=a+28|0;k[b>>2]=b;k[a+32>>2]=b;k[a+36>>2]=0;k[a+20>>2]=7032;k[a+24>>2]=7056;b=a+48|0;k[b>>2]=b;k[a+52>>2]=b;k[a+56>>2]=0;k[a+40>>2]=7080;k[a+44>>2]=7104;k[a+64>>2]=0;k[a+68>>2]=0;k[a+60>>2]=a+64;k[a+72>>2]=0;a=a+88|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;j[a+16>>1]=0;return}function sz(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-36|0;k[d>>2]=e;p1(c+-12|0);p1(c+-24|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function tz(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=r;r=r+16|0;c=f+12|0;d=f;e=a+28|0;b=i[e+11>>0]|0;if(b<<24>>24<0)b=k[a+32>>2]|0;else b=b&255;if(!b){k[c>>2]=k[a+40>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,48756,11);hp(c,d,e,0)|0;p1(d)}r=f;return e|0}function uz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;k[a>>2]=14872;k[a+8>>2]=0;k[a+4>>2]=14908;k[a+16>>2]=0;k[a+12>>2]=14908;f=a+20|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;iI(a+40|0,b);k[a+52>>2]=e;k[a+56>>2]=-1;MK(a);fA(a,c,d);return}function vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=KZ(b|0,c|0,56)|0;i[k[a>>2]>>0]=d;d=KZ(b|0,c|0,48)|0;i[(k[a>>2]|0)+1>>0]=d;d=KZ(b|0,c|0,40)|0;i[(k[a>>2]|0)+2>>0]=d;i[(k[a>>2]|0)+3>>0]=c;d=KZ(b|0,c|0,24)|0;i[(k[a>>2]|0)+4>>0]=d;d=KZ(b|0,c|0,16)|0;i[(k[a>>2]|0)+5>>0]=d;c=KZ(b|0,c|0,8)|0;i[(k[a>>2]|0)+6>>0]=c;i[(k[a>>2]|0)+7>>0]=b;k[a>>2]=(k[a>>2]|0)+8;return}function wz(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-48|0;k[d>>2]=e;p1(b+-12|0);p1(b+-24|0);p1(b+-36|0);p1(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function xz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;c=d;e=((t3(b,1)|0)&255)<<24>>24!=0&1;i[c+4>>0]=e;e=((t3(b,2)|0)&255)<<24>>24!=0&1;i[c+5>>0]=e;e=((t3(b,3)|0)&255)<<24>>24!=0&1;i[c+7>>0]=e;b=((t3(b,4)|0)&255)<<24>>24!=0&1;i[c+6>>0]=b;a=k[a+16>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,c);r=d;return}function yz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=r;r=r+64|0;g=h;HA(g,b,c,d);b=g+52|0;k[b>>2]=0;f=g+56|0;k[f>>2]=0;k[g+60>>2]=0;k[g>>2]=16400;a=Ei(a,g,e)|0;k[g>>2]=15868;b=k[b>>2]|0;c=b;if(b|0){d=k[f>>2]|0;if((d|0)!=(b|0))k[f>>2]=d+(~((d+-4-c|0)>>>2)<<2);zba(b)}O3(g);r=h;return a|0}function zz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=r;r=r+64|0;g=h;HA(g,b,c,d);k[g>>2]=15868;b=g+52|0;k[b>>2]=0;f=g+56|0;k[f>>2]=0;k[g+60>>2]=0;a=Ei(a,g,e)|0;k[g>>2]=15868;b=k[b>>2]|0;c=b;if(b|0){d=k[f>>2]|0;if((d|0)!=(b|0))k[f>>2]=d+(~((d+-4-c|0)>>>2)<<2);zba(b)}O3(g);r=h;return a|0}function Az(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=r;r=r+16|0;c=f+12|0;d=f;e=a+16|0;b=i[e+11>>0]|0;if(b<<24>>24<0)b=k[a+20>>2]|0;else b=b&255;if(!b){k[c>>2]=k[a+40>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,48359,7);hp(c,d,e,0)|0;p1(d)}r=f;return e|0}function Bz(a,b){a=a|0;b=b|0;if(b|0){Bz(a,k[b>>2]|0);Bz(a,k[b+4>>2]|0);Lv(b+24|0);a=k[b+16>>2]|0;if(a|0?(k[b+20>>2]|0)==1:0)wc(a);zba(b)}return}function Cz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=r;r=r+16|0;h=g+4|0;i=g;j=LZ(d)|0;k[h>>2]=j;d=k_(h,111636)|0;oU(j)|0;k[i>>2]=k[c>>2];k[h>>2]=k[i>>2];SA(a,f+20|0,b,h,e,d);r=g;return k[b>>2]|0}function Dz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=r;r=r+16|0;h=g+4|0;i=g;j=LZ(d)|0;k[h>>2]=j;d=k_(h,111604)|0;oU(j)|0;k[i>>2]=k[c>>2];k[h>>2]=k[i>>2];TA(a,f+20|0,b,h,e,d);r=g;return k[b>>2]|0}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=r;r=r+16|0;e=f;if(c|0){d=0;do{h=b+d|0;i[e>>0]=i[104094+((l[h>>0]|0)>>>4)>>0]|0;g=Tn(a,e,1)|0;i[e>>0]=i[104094+((l[h>>0]|0)&15)>>0]|0;Tn(g,e,1)|0;d=d+1|0}while((d|0)!=(c|0))}r=f;return}function Fz(a,b){a=a|0;b=b|0;var c=0;c=Tn(b,67767,4)|0;Ln(c,k[a+8>>2]|0)|0;b=Tn(b,68366,10)|0;b=Tn(Ln(b,k[a+44>>2]|0)|0,68377,10)|0;Ln(b,k[a+48>>2]|0)|0;return}function Gz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;e=c+12|0;d=c;k[e>>2]=k[b+104>>2];k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,67362,7);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,67370,10);hp(e,d,a,0)|0;p1(d);r=c;return}function Hz(a){a=a|0;var b=0,c=0,d=0,e=0;if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(b=a+144|0,c=b,!((k[c>>2]|0)==0&(k[c+4>>2]|0)==0)):0){c=_J()|0;e=b;e=n_(c|0,M|0,k[e>>2]|0,k[e+4>>2]|0)|0;c=a+104|0;d=c;d=y0(e|0,M|0,k[d>>2]|0,k[d+4>>2]|0)|0;k[c>>2]=d;k[c+4>>2]=M;c=b;k[c>>2]=0;k[c+4>>2]=0;dF((k[a+52>>2]|0)+616|0)}return}function Iz(a){a=a|0;var b=0,c=0,d=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{k[d>>2]=b+-56;p1(b+-16|0);p1(b+-28|0);p1(b+-40|0);p1(b+-52|0);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function Jz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[a+4>>2]|0;if(!c){d=a;c=k[a>>2]|0}else{f=32-c|0;d=f>>>0>b>>>0?b:f;e=k[a>>2]|0;k[e>>2]=k[e>>2]&~(-1>>>(f-d|0)&-1<<c);c=(k[a>>2]|0)+4|0;k[a>>2]=c;b=b-d|0;d=a}a=b>>>5;XG(c|0,0,a<<2|0)|0;b=b-(a<<5)|0;if(b|0){f=(k[d>>2]|0)+(a<<2)|0;k[d>>2]=f;k[f>>2]=k[f>>2]&~(-1>>>(32-b|0))}return}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do switch((k[c+4>>2]&176)<<24>>24){case 16:{c=i[a>>0]|0;switch(c<<24>>24){case 43:case 45:{a=a+1|0;break a}default:{}}if((b-a|0)>1&c<<24>>24==48){switch(i[a+1>>0]|0){case 88:case 120:break;default:{d=7;break a}}a=a+2|0}else d=7;break}case 32:{a=b;break}default:d=7}while(0);return a|0}function Lz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+32|0;a=d+8|0;e=d;k[a>>2]=0;GM(a,0,0,0);jR(a,3);k[a+4>>2]=3;c=cW(16)|0;k[c>>2]=0;GM(c,k[a>>2]|0,3,3);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);rO(e,j[b+8>>1]|0);a=k[a>>2]|0;if(a|0)wba(a);r=d;return c|0}function Mz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<3){Qd(c,27921,201,2,0,0,0);e=Tn(Tn(c,27948,6)|0,28994,14)|0;Tn(e,b?47403:47410,b?2:3)|0;hi(c)}i[a+858>>0]=b&1;r=d;return}function Nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=a+4|0;e=(k[h>>2]|0)!=1306;d=k[a>>2]|0;f=(k[c>>2]|0)-d|0;f=f>>>0<2147483647?f<<1:-1;f=(f|0)==0?4:f;g=(k[b>>2]|0)-d>>2;d=OD(e?d:0,f)|0;if(!e){e=k[a>>2]|0;k[a>>2]=d;if(e){Rb[k[h>>2]&2047](e);d=k[a>>2]|0}}else k[a>>2]=d;k[h>>2]=1307;k[b>>2]=d+(g<<2);k[c>>2]=(k[a>>2]|0)+(f>>>2<<2);return}function Oz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;do if((a|0)!=-1){if((k[b+76>>2]|0)>-1)e=Eba(b)|0;else e=0;if(!((k[b+8>>2]|0)==0?(GD(b)|0)!=0:0))f=6;if((f|0)==6?(c=b+4|0,d=k[c>>2]|0,d>>>0>((k[b+44>>2]|0)+-8|0)>>>0):0){f=d+-1|0;k[c>>2]=f;i[f>>0]=a;k[b>>2]=k[b>>2]&-17;if(!e)break;Dba(b);break}if(e){Dba(b);a=-1}else a=-1}else a=-1;while(0);return a|0}function Pz(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+96>>2]|0;e=a+100|0;if((b|0)==(e|0))a=0;else{a=0;d=0;do{c=d;d=k[b+20>>2]|0;a=((d|0)!=(c|0)&1)+a|0;c=k[b+4>>2]|0;if(!c)while(1){c=k[b+8>>2]|0;if((k[c>>2]|0)==(b|0)){b=c;break}else b=c}else{b=c;while(1){c=k[b>>2]|0;if(!c)break;else b=c}}}while((b|0)!=(e|0))}return a|0}function Qz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=r;r=r+64|0;f=g;HA(f,b,c,d);k[f>>2]=15112;c=a+8|0;k[f+44>>2]=(k[a+4>>2]|0)+(k[c>>2]|0);k[f+48>>2]=e;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,f,+p[a+40>>3]);d=(k[c>>2]|0)+e|0;k[c>>2]=d;b=a+12|0;if((d|0)>=(k[b>>2]|0)){k[b>>2]=0;k[c>>2]=0}O3(f);r=g;return e|0}function Rz(a,b){a=a|0;b=b|0;var c=0,d=0;d=k[b>>2]|0;b=k[d+4>>2]|0;if(!b){c=d;while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((k[a>>2]|0)==(d|0))k[a>>2]=b;c=a+8|0;k[c>>2]=(k[c>>2]|0)+-1;nd(k[a+4>>2]|0,d);zba(d);return b|0}function Sz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;X0(a);k[a>>2]=10816;k[a+20>>2]=0;k[a+16>>2]=10924;k[a+28>>2]=0;k[a+24>>2]=10944;k[a+36>>2]=0;k[a+32>>2]=10964;k[a+44>>2]=0;k[a+40>>2]=10964;k[a+52>>2]=0;k[a+48>>2]=10964;k[a+60>>2]=0;k[a+56>>2]=10984;iI(a+64|0,b);k[a+76>>2]=c;k[a+80>>2]=d;return}function Tz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[a+4>>2]|0;if(!c){d=a;c=k[a>>2]|0}else{f=32-c|0;d=f>>>0>b>>>0?b:f;e=k[a>>2]|0;k[e>>2]=k[e>>2]|-1>>>(f-d|0)&-1<<c;c=(k[a>>2]|0)+4|0;k[a>>2]=c;b=b-d|0;d=a}a=b>>>5;XG(c|0,-1,a<<2|0)|0;b=b-(a<<5)|0;if(b|0){f=(k[d>>2]|0)+(a<<2)|0;k[d>>2]=f;k[f>>2]=k[f>>2]|-1>>>(32-b|0)}return}function Uz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0.0;f=r;r=r+16|0;e=f;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;if(VJ(b,c,e)|0){g=+gb(35,((i[e+11>>0]|0)<0?k[e>>2]|0:e)|0);p[d>>3]=g;a=1}else a=0;p1(e);r=f;return a|0}function Vz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;k[a>>2]=0;g=a+4|0;k[g>>2]=0;k[a+8>>2]=0;d=b+4|0;e=(k[d>>2]|0)-(k[b>>2]|0)|0;if(e|0?(aO(a,(e|0)/340|0),c=k[b>>2]|0,f=k[d>>2]|0,(c|0)!=(f|0)):0){a=k[g>>2]|0;do{Nf(a,c);c=c+340|0;a=(k[g>>2]|0)+340|0;k[g>>2]=a}while((c|0)!=(f|0))}return}function Wz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[a+44>>2]|0;d=a+4|0;c=(((TJ((k[d>>2]|0)+2024|0,c,0)|0)^1)<<31>>31)+c+1|0;e=(k[d>>2]|0)+2024|0;f=k[e>>2]|0;if(c>>>0<(f+(x9(e)|0)|0)>>>0)do{iJ(a,b,c);c=c+1|0;f=(k[d>>2]|0)+2024|0;e=k[f>>2]|0}while(c>>>0<(e+(x9(f)|0)|0)>>>0);return}function Xz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=a+4|0;c=k[g>>2]|0;e=k[a>>2]|0;d=(c-e|0)/12|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0?(f=e+(b*12|0)|0,(c|0)!=(f|0)):0)do{e=c+-12|0;k[g>>2]=e;DS(e);c=k[g>>2]|0}while((c|0)!=(f|0))}else sl(a,b-d|0);return}function Yz(a){a=a|0;var b=0,c=0,d=0;d=r;r=r+160|0;b=d;c=k[(k[a+36>>2]|0)+1440>>2]|0;if((k[2783]|0)<5){Qd(b,55864,74,4,0,0,0);Tn(Mn(Tn(b,56727,42)|0,c)|0,56770,3)|0;hi(b)}_P(a,c);r=d;return}function Zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+2024|0;if((k[d>>2]|0)>>>0>b>>>0)iX(d,b,1);else Z2(d,b);d=k[a+452>>2]|0;e=a+448|0;if((d|0)!=(e|0)){f=d;do{g=k[f+8>>2]|0;Rb[k[(k[g>>2]|0)+68>>2]&2047](g);f=k[d+4>>2]|0;d=f}while((d|0)!=(e|0))}g=k[a+2164>>2]|0;fc[k[(k[g>>2]|0)+20>>2]&255](g,b,c);return}function _z(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=r;r=r+16|0;f=e;b=LZ(b)|0;k[f>>2]=b;g=k_(f,111636)|0;ec[k[(k[g>>2]|0)+48>>2]&15](g,106657,106683,c)|0;c=k_(f,111644)|0;f=Ub[k[(k[c>>2]|0)+16>>2]&511](c)|0;k[d>>2]=f;Sb[k[(k[c>>2]|0)+20>>2]&511](a,c);oU(b)|0;r=e;return}function $z(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=r;r=r+16|0;f=e;b=LZ(b)|0;k[f>>2]=b;g=k_(f,111604)|0;ec[k[(k[g>>2]|0)+32>>2]&15](g,106657,106683,c)|0;c=k_(f,111620)|0;f=Ub[k[(k[c>>2]|0)+16>>2]&511](c)|0;i[d>>0]=f;Sb[k[(k[c>>2]|0)+20>>2]&511](a,c);oU(b)|0;r=e;return}function aA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;k[a>>2]=0;g=a+4|0;k[g>>2]=0;k[a+8>>2]=0;d=b+4|0;e=(k[d>>2]|0)-(k[b>>2]|0)|0;if(e|0?(bO(a,(e|0)/372|0),c=k[b>>2]|0,f=k[d>>2]|0,(c|0)!=(f|0)):0){a=k[g>>2]|0;do{yf(a,c);c=c+372|0;a=(k[g>>2]|0)+372|0;k[g>>2]=a}while((c|0)!=(f|0))}return}function bA(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0;do if(!(b==0.0&c==0.0)){d=k[a+24>>2]|0;if(d|0)Xb[k[(k[d>>2]|0)+8>>2]&7](d,b,c);d=a+444|0;e=(i[d>>0]|0)==0;b=c-b;if(!(!(b>=.2)|e)){Rb[k[(k[a>>2]|0)+108>>2]&2047](a);i[d>>0]=0;break}if(b<.2&e){Rb[k[(k[a>>2]|0)+104>>2]&2047](a);x3(k[a+52>>2]|0);i[d>>0]=1}}while(0);return}function cA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=i[a+11>>0]|0;g=f<<24>>24<0;if(g)f=k[a+4>>2]|0;else f=f&255;if((e|0)==-1|f>>>0<b>>>0)w5(a);f=f-b|0;c=f>>>0<c>>>0?f:c;if(g)a=k[a>>2]|0;f=c>>>0>e>>>0;a=K$(a+b|0,d,f?e:c)|0;if(!a)return (c>>>0<e>>>0?-1:f&1)|0;else return a|0;return 0}function dA(a,b){a=a|0;b=+b;var c=0,d=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<5){Qd(c,75946,548,4,0,0,0);Qn(Tn(Tn(c,75982,6)|0,78531,19)|0,b)|0;hi(c)}p[a+632>>3]=b;vn(a);r=d;return}function eA(a,b){a=a|0;b=b|0;var c=0;if(!(i[a+68>>0]|0)){c=a+64|0;k[c>>2]=b;Lk(a);a=a+100|0}else{BX(a);c=a+64|0;if(k[c>>2]|0)Nk(a);k[c>>2]=b;ne(a);b=a+100|0;cz(a,k[b>>2]|0,k[(k[c>>2]|0)+2088>>2]|0);a=b}k[a>>2]=k[(k[c>>2]|0)+2088>>2];return}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+20|0;MM(d,c)|0;c=k[a+56>>2]|0;switch(b|0){case 0:{a=59933;break}case 1:{a=59928;break}case 2:{a=59924;break}case 3:{a=59917;break}case 4:{a=59909;break}case 5:{a=59904;break}default:a=59896}if((i[d+11>>0]|0)<0)d=k[d>>2]|0;yb(39,c|0,a|0,d|0)|0;return}function gA(a){a=a|0;var b=0,c=0,d=0.0;switch((j[a+8>>1]&255)<<24>>24){case 1:{c=a;d=+((k[c>>2]|0)>>>0)+4294967296.0*+(k[c+4>>2]|0);break}case 2:{c=a;d=+((k[c>>2]|0)>>>0)+4294967296.0*+((k[c+4>>2]|0)>>>0);break}case 3:{d=+p[a>>3];break}case 0:{d=0.0;break}case 5:{d=i[a>>0]|0?1.0:0.0;break}default:{a=666;b=103213;c=a+36|0;do{i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0}while((a|0)<(c|0));Ib(123)}}return +d}function hA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;d=To(a,b,e)|0;if(!d)c=e;else{c=e;do{if(c>>>0<d>>>0)CF(69862)|0;c=c-d|0;d=To(a,b,c)|0}while((d|0)!=0)}if(c|0?(CF(69902)|0,f=a+8|0,b=(k[f>>2]|0)+c|0,k[f>>2]=b,g=a+12|0,(b|0)>=(k[g>>2]|0)):0){k[g>>2]=0;k[f>>2]=0}return e|0}function iA(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;while(1){d=i[a>>0]|0;b=d<<24>>24;e=a+1|0;if(!(zaa(b)|0))break;else a=e}switch(b|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:{g=0;c=a;a=d}}if((f|0)==5){g=a;c=e;a=i[e>>0]|0}b=(a<<24>>24)+-48|0;if(b>>>0<10){a=0;do{c=c+1|0;a=(a*10|0)-b|0;b=(i[c>>0]|0)+-48|0}while(b>>>0<10)}else a=0;return (g|0?a:0-a|0)|0}function jA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a+4|0;if((b|0)!=(c|0)){a=k[d>>2]|0;do{iI(a,b);iI(a+12|0,b+12|0);iI(a+24|0,b+24|0);b=b+36|0;a=(k[d>>2]|0)+36|0;k[d>>2]=a}while((b|0)!=(c|0))}return}function kA(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=a+4|0;b=k[d>>2]|0;c=k[b+204>>2]|0;do if(c){c=Ub[k[(k[c>>2]|0)+64>>2]&511](c)|0;if((c|0)<0){e=k[d>>2]|0;g=5;break}b=k[d>>2]|0;if(!(+(c|0)>=+p[b+680>>3]))tB(a+8|0,2e3)|0;else{e=b;g=5}}else{e=b;g=5}while(0);if((g|0)==5?(f=k[e+200>>2]|0,f|0):0)HH(f);return}function lA(a){a=a|0;p1(a+172|0);p1(a+160|0);p1(a+132|0);p1(a+120|0);p1(a+64|0);nG(a+24|0);p1(a+12|0);p1(a);return}function mA(a){a=a|0;k[a>>2]=1624;p1(a+88|0);p1(a+76|0);p1(a+64|0);p1(a+52|0);p1(a+40|0);p1(a+28|0);p1(a+16|0);p1(a+4|0);return}function nA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=a+4|0;e=(k[h>>2]|0)!=1306;d=k[a>>2]|0;f=(k[c>>2]|0)-d|0;f=f>>>0<2147483647?f<<1:-1;f=(f|0)==0?1:f;g=(k[b>>2]|0)-d|0;d=OD(e?d:0,f)|0;if(!e){e=k[a>>2]|0;k[a>>2]=d;if(e){Rb[k[h>>2]&2047](e);d=k[a>>2]|0}}else k[a>>2]=d;k[h>>2]=1307;k[b>>2]=d+g;k[c>>2]=(k[a>>2]|0)+f;return}function oA(a){a=a|0;var b=0,c=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<5){Qd(b,29209,221,4,0,0,0);Tn(Tn(Hn(Tn(b,29231,4)|0,a)|0,30253,3)|0,29439,23)|0;hi(b)}r=c;return}function pA(a,b){a=a|0;b=b|0;var c=0,d=0.0;a=a+4|0;if((Vd(w4(k[a>>2]|0)|0)|0)==3){d=+Dx(laa(w4(k[a>>2]|0)|0)|0,b+-1|0);c=+O(d)>=1.0?(d>0.0?~~+aa(+N(d/4294967296.0),4294967295.0)>>>0:~~+_((d-+(~~d>>>0))/4294967296.0)>>>0):0;a=~~d>>>0}else{c=((b|0)<0)<<31>>31;a=b}M=c;return a|0}function qA(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=6836;i[a+4>>0]=0;d=a+8|0;b=a+24|0;k[b>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[d+12>>0]=0;GM(b,0,0,0);k[a>>2]=6852;b=a+36|0;k[b>>2]=6836;i[a+40>>0]=0;d=a+44|0;c=a+60|0;k[c>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[d+12>>0]=0;GM(c,0,0,0);k[b>>2]=6868;p[a+80>>3]=-1.0;k[a+72>>2]=a;k[a+76>>2]=b;return}function rA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=a+4|0;k[a>>2]=1972;k[g>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;f=a+20|0;Sz(f,b,c,d);k[a>>2]=13164;k[g>>2]=13204;k[f>>2]=13228;k[a+104>>2]=0;i[a+108>>0]=0;k[a+112>>2]=e;return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=a+4|0;c=k[g>>2]|0;i=(k[a+8>>2]|0)-c|0;f=a+16|0;d=k[f>>2]|0;h=a+20|0;e=k[h>>2]|0;if((((i|0)==0?0:(i<<8)+-1|0)|0)==(e+d|0)){vd(a);e=k[h>>2]|0;d=k[f>>2]|0;c=k[g>>2]|0}i=d+e|0;k[(k[c+(i>>>10<<2)>>2]|0)+((i&1023)<<2)>>2]=k[b>>2];k[h>>2]=(k[h>>2]|0)+1;return}function tA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c+8|0;e=c;dY(a,b);k[a>>2]=9704;b=a+24|0;i[a+32>>0]=0;k[a+28>>2]=-1;k[b>>2]=9544;k[a+40>>2]=0;aM(b);k[a+64>>2]=2;k[e>>2]=336;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];Hw(b,a,d)|0;r=c;return}function uA(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;XG(k[a+8>>2]|0,0,((k[a+12>>2]<<1>>1)+7|0)/8|0|0)|0;XG(k[a+24>>2]|0,0,((k[a+28>>2]<<1>>1)+7|0)/8|0|0)|0;e=a+36|0;f=a+44|0;if(k[f>>2]|0){b=a+40|0;a=0;do{c=(k[b>>2]|0)+a|0;d=DT(e,c)|0;if(d|0){dG(d);zba(d);YQ(e,c,0)|0}a=a+1|0}while(a>>>0<(k[f>>2]|0)>>>0)}return}function vA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;f=i[b+11>>0]|0;g=f<<24>>24<0;f=g?k[b+4>>2]|0:f&255;e=c+11|0;d=i[e>>0]|0;d=d<<24>>24<0?k[c+4>>2]|0:d&255;XF(a,g?k[b>>2]|0:b,f,d+f|0);nw(a,(i[e>>0]|0)<0?k[c>>2]|0:c,d)|0;return}function wA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=k[b>>2]|0;e=k[c>>2]|0;if((d|0)!=(e|0)){c=(k[e>>2]|0)+4|0;k[(k[d>>2]|0)+4>>2]=k[c>>2];k[k[c>>2]>>2]=k[d>>2];c=a+8|0;do{a=k[d+4>>2]|0;k[b>>2]=a;k[c>>2]=(k[c>>2]|0)+-1;f=d+8|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);zba(d);d=a}while((d|0)!=(e|0))}return e|0}function xA(a,b){a=a|0;b=b|0;var c=0,d=0.0;a=a+4|0;if((Vd(w4(k[a>>2]|0)|0)|0)==3){d=+Dx(laa(w4(k[a>>2]|0)|0)|0,b);c=+O(d)>=1.0?(d>0.0?~~+aa(+N(d/4294967296.0),4294967295.0)>>>0:~~+_((d-+(~~d>>>0))/4294967296.0)>>>0):0;a=~~d>>>0}else{c=((b|0)<0)<<31>>31;a=b}M=c;return a|0}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=b+16|0;dZ(d,115628)|0;i[b+48>>0]=0;dZ(b+28|0,115628)|0;Ut(b,c);md(b,c);pj(b,c);eZ(d,103283)|0;iI(a,d);return}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if(!c){d=1;e=-1;f=-1;g=0;c=-1}else{d=l[c+1>>0]|0;e=k[c+4>>2]|0;f=k[c+8>>2]|0;g=l[c+24>>0]|0;c=k[c+28>>2]|0}f=Ma(46,k[a+4>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,d|0,e|0,f|0,g|0,c|0)|0;g=cW(108)|0;rt(g,f);return g|0}function AA(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+2160|0;if(!(i[b>>0]|0)){i[b>>0]=1;b=k[a+2164>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+52>>2]&2047](b);b=k[a+452>>2]|0;c=a+448|0;if((b|0)!=(c|0)){d=b;do{e=k[d+8>>2]|0;Rb[k[(k[e>>2]|0)+12>>2]&2047](e);d=k[b+4>>2]|0;b=d}while((b|0)!=(c|0))}e=k[a+2272>>2]|0;Sb[k[(k[e>>2]|0)+44>>2]&511](e,1)}return}function BA(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;i[d>>0]=0;tu(a,b,d);i[a+20>>0]=0;k[a+16>>2]=-1;k[a+12>>2]=9544;k[a+28>>2]=0;i[a+40>>0]=0;k[a+36>>2]=-1;k[a+32>>2]=9544;k[a+48>>2]=0;i[a+60>>0]=0;k[a+56>>2]=-1;k[a+52>>2]=9544;k[a+68>>2]=0;d=_J()|0;b=a+72|0;k[b>>2]=d;k[b+4>>2]=M;k[a+80>>2]=0;r=c;return}function CA(a){a=a|0;var b=0,c=0,d=0;b=a+857|0;if(i[b>>0]|0){i[b>>0]=0;b=k[a+908>>2]|0;d=a+904|0;c=b;if((c|0)!=(d|0))do{FA(k[b+8>>2]|0);b=k[c+4>>2]|0;c=b}while((c|0)!=(d|0));b=a+1048|0;c=k[b>>2]|0;if(c|0?(Sb[k[(k[c>>2]|0)+16>>2]&511](c,0),(k[a+912>>2]|0)==0):0){a=k[b>>2]|0;Rb[k[(k[a>>2]|0)+8>>2]&2047](a)}}return}function DA(a,b){a=a|0;b=b|0;var c=0,d=0;if(Cp(a,b)|0){TD(a,b);c=k[a+124>>2]|0;d=k[c>>2]|0;if(d>>>0<=b>>>0?((k[c+4>>2]|0)+d|0)>>>0>b>>>0:0){d=b-d|0;c=k[c+8>>2]|0;k[c+(d<<3)>>2]=0;k[c+(d<<3)+4>>2]=0}MJ(k[a+116>>2]|0,b,((b|0)<0)<<31>>31);lo(k[a+4>>2]|0,a,b);a=1}else a=0;return a|0}function EA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+16|0;c=e;if(!(jaa(a)|0))if(Ff(a,2)|0){a=Sm(a)|0;k[b>>2]=a;a=1}else a=0;else{f=Yaa(a)|0;a=z0()|0;k[a>>2]=0;d=D6(f,c,10)|0;c=k[c>>2]|0;if((c|0)!=(f|0)?(i[c>>0]|0)==0:0)a=(k[a>>2]|0)==0;else a=0;k[b>>2]=d}r=e;return a|0}function FA(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+2160|0;if(i[b>>0]|0){i[b>>0]=0;b=k[a+2164>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+56>>2]&2047](b);b=k[a+452>>2]|0;c=a+448|0;if((b|0)!=(c|0)){d=b;do{e=k[d+8>>2]|0;Rb[k[(k[e>>2]|0)+16>>2]&2047](e);d=k[b+4>>2]|0;b=d}while((b|0)!=(c|0))}e=k[a+2272>>2]|0;Sb[k[(k[e>>2]|0)+44>>2]&511](e,1)}return}function GA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0;c=r;r=r+16|0;d=c;Mg(d,b);g=a+8|0;e=j[g>>1]|0;b=d+8|0;f=j[b>>1]|0;i=a;l=k[i>>2]|0;i=k[i+4>>2]|0;n=d;m=k[n+4>>2]|0;h=a;k[h>>2]=k[n>>2];k[h+4>>2]=m;h=d;k[h>>2]=l;k[h+4>>2]=i;j[g>>1]=f&256|(f&255|e&-512);j[b>>1]=f&-512|e&255|e&256;Lv(d);r=c;return a|0}function HA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f;k[a>>2]=15084;k[a+4>>2]=b;k[a+8>>2]=c;k[a+32>>2]=0;k[a+36>>2]=0;k[a+40>>2]=0;Gaa(a+12|0,d)|0;if(b|0){k[e>>2]=a;c=b+36|0;d=k[c>>2]|0;if(d>>>0<(k[b+40>>2]|0)>>>0){k[d>>2]=a;k[c>>2]=(k[c>>2]|0)+4}else zp(b+32|0,e)}r=f;return}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+16|0;c=e;if(!(jaa(a)|0))if(Ff(a,1)|0){a=Rm(a)|0;k[b>>2]=a;a=1}else a=0;else{f=Yaa(a)|0;a=z0()|0;k[a>>2]=0;d=z5(f,c,10)|0;c=k[c>>2]|0;if((c|0)!=(f|0)?(i[c>>0]|0)==0:0)a=(k[a>>2]|0)==0;else a=0;k[b>>2]=d}r=e;return a|0}function JA(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+188|0;if(i[b>>0]|0){c=a+184|0;e=Ta(0,k[c>>2]|0)|0;k[c>>2]=e;i[b>>0]=0}b=a+124|0;c=k[b>>2]|0;if(c|0?(i[a+134>>0]=0,i[a+132>>0]=0,i[a+133>>0]=1,Rb[k[(k[c>>2]|0)+4>>2]&2047](c),k[b>>2]=0,d=U7(k[a+128>>2]|0)|0,d|0):0)gr(d+12|0,a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+16|0;c=e;i[a+212>>0]=1;d=b+8|0;b=b+12|0;while(1){b=k[b>>2]|0;if((b|0)==(d|0))break;else b=b+4|0}b=k[(k[a+4>>2]|0)+2272>>2]|0;f=k[(k[b>>2]|0)+20>>2]|0;tI(c,d);fc[f&255](b,a,c);tE(c);r=e;return}function LA(a){a=a|0;var b=0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;k[a>>2]=12172;k[a+4>>2]=12200;b=a+28|0;k[b>>2]=b;k[a+32>>2]=b;k[a+36>>2]=0;k[a+20>>2]=12272;k[a+24>>2]=12296;b=a+48|0;k[b>>2]=b;k[a+52>>2]=b;k[a+56>>2]=0;k[a+40>>2]=12272;k[a+44>>2]=12296;b=a+60|0;k[b>>2]=b;k[a+64>>2]=b;k[a+68>>2]=0;b=a+72|0;k[b>>2]=b;k[a+76>>2]=b;k[a+80>>2]=0;return}function MA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+16|0;e=c;mD(d,0);f=N6(d,56171)|0;nF(e,64013);GA(f,e)|0;Lv(e);f=N6(d,56009)|0;Ix(e,b+8|0);GA(f,e)|0;Lv(e);XA(a,d);Lv(d);r=c;return}function NA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+16|0;e=c;mD(d,0);f=N6(d,56171)|0;nF(e,27732);GA(f,e)|0;Lv(e);f=N6(d,56009)|0;Ix(e,b+8|0);GA(f,e)|0;Lv(e);XA(a,d);Lv(d);r=c;return}function OA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+16|0;e=c;mD(d,0);f=N6(d,56171)|0;nF(e,27720);GA(f,e)|0;Lv(e);f=N6(d,56009)|0;Ix(e,b+8|0);GA(f,e)|0;Lv(e);XA(a,d);Lv(d);r=c;return}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(C9(k[b+88>>2]|0)|0)+208|0;d=ub(12,k[d>>2]|0,((i[c+11>>0]|0)<0?k[c>>2]|0:c)|0)|0;b=d;if(!d)iI(a,c);else{k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,b,iC(b)|0);wc(b)}return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+4|0;if(!(k[e>>2]|0)){e=Tc(a,b,c)|0;yN(a,b+e|0,c-e|0)}else{yN(a,b,c);d=a+8|0;b=Tc(a,k[d>>2]|0,k[e>>2]|0)|0;c=k[e>>2]|0;if(c>>>0>b>>>0){d=k[d>>2]|0;qO(d|0,d+b|0,c-b|0)|0;b=(k[e>>2]|0)-b|0}else b=0;k[e>>2]=b}return}function RA(a,b){a=+a;b=b|0;var c=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;c=b+-1023|0;b=b+-2046|0;if((c|0)>1023){a=a*8988465674311579538646525.0e283;b=(b|0)>1023?1023:b}else b=c}else if((b|0)<-1022){a=a*2.2250738585072014e-308;c=b+1022|0;b=b+2044|0;if((c|0)<-1022){a=a*2.2250738585072014e-308;b=(b|0)<-1022?-1022:b}else b=c}b=BZ(b+1023|0,0,52)|0;c=M;k[u>>2]=b;k[u+4>>2]=c;return +(a*+p[u>>3])}function SA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,4)|0;if(!(k[e>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a|0)<100?a+1900|0:a;k[b>>2]=a+-1900}r=g;return}function TA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,4)|0;if(!(k[e>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a|0)<100?a+1900|0:a;k[b>>2]=a+-1900}r=g;return}function UA(a){a=a|0;var b=0,c=0,d=0;c=r;r=r+16|0;b=c;if(k[a+(k[(k[a>>2]|0)+-12>>2]|0)+24>>2]|0){hM(b,a);if(i[b>>0]|0?(d=k[a+(k[(k[a>>2]|0)+-12>>2]|0)+24>>2]|0,(Ub[k[(k[d>>2]|0)+24>>2]&511](d)|0)==-1):0){d=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[d>>2]=k[d>>2]|1}_B(b)}r=c;return a|0}function VA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;k[a>>2]=b;d=a+40|0;e=a+4|0;f=e+36|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));k[d>>2]=c;if(b|0){k[g>>2]=a;c=b+8|0;d=k[c>>2]|0;if(d>>>0<(k[b+12>>2]|0)>>>0){k[d>>2]=a;k[c>>2]=(k[c>>2]|0)+4}else zp(b+4|0,g)}r=h;return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[a+4>>2]|0;d=a+8|0;a:do if((c|0)==(k[d>>2]|0))a=0;else{e=b+11|0;while(1){a=k[c>>2]|0;f=Az(a)|0;c=c+4|0;if(!(KC((i[f+11>>0]|0)<0?k[f>>2]|0:f,(i[e>>0]|0)<0?k[b>>2]|0:b)|0))break a;if((c|0)==(k[d>>2]|0)){a=0;break}}}while(0);return a|0}function XA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c;e=N6(b,50649)|0;Ix(d,(k[a+60>>2]|0)+884|0);GA(e,d)|0;Lv(d);e=N6(b,39506)|0;fY(d,k[a+100>>2]|0);GA(e,d)|0;Lv(d);a=a+104|0;GA(Wi(a,ez(a)|0)|0,b)|0;r=c;return}function YA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=a+4|0;Rb[k[(k[h>>2]|0)+8>>2]&2047](h);f=k[a+12>>2]|0;g=a+8|0;a=f;if((a|0)!=(g|0))do{i=f;f=k[a+4>>2]|0;i=k[i+8>>2]|0;Qb[k[(k[i>>2]|0)+12>>2]&15](i,b,c,d,e);a=f}while((a|0)!=(g|0));Rb[k[(k[h>>2]|0)+12>>2]&2047](h);return}function ZA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+12|0;k[d>>2]=b;i[a+44>>0]=0;dZ(a+16|0,115628)|0;us(a,c);dd(a,c);Hi(a,c);Tn(k[d>>2]|0,103283,1)|0;k[d>>2]=0;return}function _A(a){a=a|0;var b=0;k[a>>2]=5332;b=a+4|0;k[b>>2]=5360;$H(a+816|0);lL(a+752|0);Ev(a+112|0);pF(a+36|0);$H(a+24|0);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function $A(a){a=a|0;var b=0,c=0,d=0;switch((j[a+8>>1]&255)<<24>>24){case 5:{d=(i[a>>0]|0)!=0;break}case 0:{d=0;break}case 1:{d=a;d=(k[d>>2]|0)!=0|(k[d+4>>2]|0)!=0;break}case 2:{d=a;d=(k[d>>2]|0)!=0|(k[d+4>>2]|0)!=0;break}case 3:{d=+p[a>>3]!=0.0;break}default:{a=666;b=103249;c=a+34|0;do{i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0}while((a|0)<(c|0));Ib(123)}}return d|0}function aB(a){a=a|0;var b=0.0,c=0,d=0;c=r;r=r+16|0;switch((j[a+8>>1]&255)<<24>>24){case 1:{a=y0(k[a>>2]|0,k[a+4>>2]|0,-2147483648,0)|0;d=M;a=d>>>0<1|(d|0)==1&a>>>0<0;break}case 2:{d=k[a+4>>2]|0;a=d>>>0<0|(d|0)==0&(k[a>>2]|0)>>>0<2147483648;break}case 3:{b=+p[a>>3];if(!(b>=-2147483648.0)|!(b<=2147483647.0))a=0;else a=+_p(b,c)==0.0;break}default:a=0}r=c;return a|0}function bB(a){a=a|0;var b=0,c=0,d=0;b=k[(k[a+128>>2]|0)+188>>2]|0;b=Is(b,Xaa(a)|0)|0;c=a+52|0;d=k[b+72+(k[c>>2]<<2)>>2]|0;jR(d+24|0,0);k[d+28>>2]=0;i[d+20>>0]=1;c=k[b+72+(k[c>>2]<<2)>>2]|0;MM(c+8|0,a+64|0)|0;i[c+4>>0]=1;rD(a+108|0,a,b);return}function cB(a){a=a|0;var b=0,c=0;k[a>>2]=14872;b=k[a+64>>2]|0;if(b|0)wc(b);b=a+56|0;Ta(36,k[b>>2]|0)|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}p1(a+40|0);p1(a+20|0);c=a+12|0;k[c>>2]=14888;aE(c);a=a+4|0;k[a>>2]=14888;aE(a);return}function dB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+128|0;j=g+16|0;l=g+12|0;h=g;i=g+8|0;k[l>>2]=j+100;HE(a,j,l,d,e,f);d=h;k[d>>2]=0;k[d+4>>2]=0;k[i>>2]=j;d=(k[c>>2]|0)-b>>2;a=O0(k[a>>2]|0)|0;d=re(b,i,d,h)|0;if(a|0)O0(a)|0;k[c>>2]=b+(d<<2);r=g;return}function eB(a){a=a|0;var b=0,c=0;k[a>>2]=9252;c=a+20|0;k[c>>2]=9352;b=a+24|0;k[b>>2]=9380;gr((w4(k[a+4>>2]|0)|0)+296|0,c);k[c>>2]=1972;k[b>>2]=2e3;Bo(c);dH(a+28|0,k[a+32>>2]|0);k[b>>2]=2024;Dba(a);return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+160|0;c=d;e=k[a+64>>2]|0;b=cc[k[(k[e>>2]|0)+8>>2]&127](e,b)|0;if(!b){if((k[2783]|0)<4){Qd(c,42816,44,3,0,0,0);Tn(c,42893,30)|0;hi(c)}}else $s(a,b);r=d;return}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;c=d;if(!(j[a+8>>1]&255))a=113540;else{k[c>>2]=b;e=c+4|0;k[e>>2]=0;b=Mt(k[a>>2]|0,c)|0;a=(b|0)==((k[a>>2]|0)+4|0)?113540:b+24|0;b=k[c>>2]|0;if((b|0)!=0&(k[e>>2]|0)==1)wc(b)}r=d;return a|0}function hB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;c=d;if(!(j[a+8>>1]&255))a=113540;else{k[c>>2]=0;e=c+4|0;k[e>>2]=b;b=Mt(k[a>>2]|0,c)|0;a=(b|0)==((k[a>>2]|0)+4|0)?113540:b+24|0;b=k[c>>2]|0;if((b|0)!=0&(k[e>>2]|0)==1)wc(b)}r=d;return a|0}function iB(a,b){a=a|0;b=b|0;var c=0;c=a+104|0;if((c|0)!=(b|0))Ak(c,k[b>>2]|0,k[b+4>>2]|0);b=((k[a+108>>2]|0)-(k[c>>2]|0)|0)/40|0;if((k[a+124>>2]|0)>>>0>b>>>0)$o(a+116|0,b);Xj(a);return}function jB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Sc(a,i,h,d,e,f,107436,107444)|0;r=g;return f|0}function kB(a,b){a=a|0;b=b|0;var c=0;k[a>>2]=7492;k[a+4>>2]=b;c=cW(12)|0;k[c+4>>2]=a;k[c>>2]=7540;b=c+8|0;k[b>>2]=0;k[a+8>>2]=c;k[b>>2]=(k[b>>2]|0)+1;b=cW(12)|0;k[b+4>>2]=a;k[b>>2]=7572;c=b+8|0;k[c>>2]=0;k[a+12>>2]=b;k[c>>2]=(k[c>>2]|0)+1;c=cW(12)|0;k[c+4>>2]=a;k[c>>2]=7604;b=c+8|0;k[b>>2]=0;k[a+16>>2]=c;k[b>>2]=(k[b>>2]|0)+1;return}function lB(a,b){a=a|0;b=b|0;var c=0,d=0;Bt(a,b);d=k[a+52>>2]|0;i[k[b>>2]>>0]=d>>>16;i[(k[b>>2]|0)+1>>0]=d>>>8;i[(k[b>>2]|0)+2>>0]=d;d=(k[b>>2]|0)+3|0;k[b>>2]=d;i[d>>0]=i[a+56>>0]|0;d=(k[b>>2]|0)+1|0;k[b>>2]=d;a=a+57|0;c=d+16|0;do{i[d>>0]=i[a>>0]|0;d=d+1|0;a=a+1|0}while((d|0)<(c|0));k[b>>2]=(k[b>>2]|0)+16;return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(c>>>0>1073741807)x5(a);do if(c>>>0>=2){e=c+4&-4;if(e>>>0>1073741823)Ra(109031,109068,1734,109109);else{d=cW(e<<2)|0;k[a>>2]=d;k[a+8>>2]=e|-2147483648;k[a+4>>2]=c;break}}else{i[a+8+3>>0]=c;d=a}while(0);j1(d,b,c)|0;k[d+(c<<2)>>2]=0;return}function nB(a){a=a|0;var b=0,c=0,d=0;k[a+132>>2]=-1;b=k[a+136>>2]|0;c=a+140|0;d=k[c>>2]|0;if((d|0)!=(b|0))k[c>>2]=d+(~(((d+-40-b|0)>>>0)/40|0)*40|0);$H(a+116|0);c=a+184|0;d=a+188|0;sG(c,k[d>>2]|0);k[a+192>>2]=0;k[c>>2]=d;k[d>>2]=0;d=a+176|0;k[d>>2]=0;k[d+4>>2]=0;return}function oB(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-96|0;k[d>>2]=e;p1(c+-28|0);p1(c+-40|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function pB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Lc(a,i,h,d,e,f,25364,25396)|0;r=g;return f|0}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+16|0;d=e;hM(d,a);if((c|0)!=0&(i[d>>0]|0)!=0?(f=k[a+(k[(k[a>>2]|0)+-12>>2]|0)+24>>2]|0,(Yb[k[(k[f>>2]|0)+48>>2]&31](f,b,c)|0)!=(c|0)):0){f=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[f>>2]=k[f>>2]|1}_B(d);r=e;return a|0}function rB(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-36|0;k[d>>2]=e;p1(c+-12|0);p1(c+-24|0);p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function sB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(b>>>0>1073741807)x5(a);do if(b>>>0>=2){e=b+4&-4;if(e>>>0>1073741823)Ra(109031,109068,1734,109109);else{d=cW(e<<2)|0;k[a>>2]=d;k[a+8>>2]=e|-2147483648;k[a+4>>2]=b;break}}else{i[a+8+3>>0]=b;d=a}while(0);i1(d,b,c)|0;k[d+(b<<2)>>2]=0;return}function tB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+160|0;c=e;d=a+8|0;if(i[d>>0]|0)if((k[2783]|0)<5){Qd(c,33879,49,4,0,0,0);Tn(c,27486,35)|0;hi(c);a=0}else a=0;else{i[d>>0]=1;d=yb(1,b|0,1231,a|0)|0;k[a+4>>2]=d;a=1}r=e;return a|0}function uB(a){a=a|0;var b=0,c=0,d=0.0;c=r;r=r+16|0;b=c;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,31163,5);oZ(b);p1(b);b=k[a+1064>>2]|0;if(b|0){Rb[k[(k[b>>2]|0)+8>>2]&2047](b);d=+q_();p[a+1072>>3]=d}r=c;return}function vB(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=c+8|0;k[d>>2]=a;k[d+4>>2]=b;k[c+4>>2]=109956;a=k[27489]|0;k[c>>2]=a;k[a+4>>2]=c;k[27489]=c;k[27491]=(k[27491]|0)+1;a=k[2784]|0;b=k[27490]|0;c=b;if((c|0)!=109956){d=c;while(1){c=k[d+4>>2]|0;d=c;if((d|0)==109956)break;else b=c}d=k[b+12>>2]|0;a=(a|0)>(d|0)?d:a}k[2783]=a;return}function wB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Ed(a,i,h,d,e,f)|0;r=g;return f|0}function xB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Fd(a,i,h,d,e,f)|0;r=g;return f|0}function yB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=ae(a,i,h,d,e,f)|0;r=g;return f|0}function zB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=be(a,i,h,d,e,f)|0;r=g;return f|0}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;c=e+4|0;d=e;b=Cy(a,b)|0;if((b|0)==(a+4|0))b=0;else{k[d>>2]=b;k[c>>2]=k[d>>2];Rz(a,c)|0;b=1}r=e;return b|0}function BB(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+32|0;c=b+16|0;e=b+8|0;d=b;k[e>>2]=1280;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];$w(a+80|0,a,c)|0;k[d>>2]=1281;k[d+4>>2]=0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];$w(a+96|0,a,c)|0;Oi(a);r=b;return}function CB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;e=r;r=r+48|0;f=e;HA(f,b,c,d);k[f>>2]=15980;d=a+8|0;c=k[d>>2]|0;b=(k[a+4>>2]|0)+c|0;k[f+44>>2]=l[b>>0]|l[b+1>>0]<<8|l[b+2>>0]<<16|l[b+3>>0]<<24;k[d>>2]=c+4;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,f,+p[a+40>>3]);O3(f);r=e;return 4}function DB(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-36|0;k[d>>2]=e;p1(b+-12|0);p1(b+-24|0);p1(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function EB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Id(a,i,h,d,e,f)|0;r=g;return f|0}function FB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Md(a,i,h,d,e,f)|0;r=g;return f|0}function GB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Nd(a,i,h,d,e,f)|0;r=g;return f|0}function HB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=ge(a,i,h,d,e,f)|0;r=g;return f|0}function IB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=je(a,i,h,d,e,f)|0;r=g;return f|0}function JB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=ke(a,i,h,d,e,f)|0;r=g;return f|0}function KB(a){a=a|0;var b=0,c=0,d=0;b=a+1052|0;c=i[b+11>>0]|0;d=c<<24>>24<0;if(d)c=k[a+1056>>2]|0;else c=c&255;do if(!c){b=a+836|0;c=i[b+11>>0]|0;d=c<<24>>24<0;if(d)c=k[a+840>>2]|0;else c=c&255;if(c)if(d){b=k[b>>2]|0;break}else break;else b=115628}else if(d){b=k[b>>2]|0;break}else break;while(0);return b|0}function LB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+16|0;f=d;e=d+4|0;c=t3(b,1)|0;c=(c&255)<<24>>24==2?0:c&255;b=F2(b,2)|0;k[f>>2]=b;i[e>>0]=1;Ns(a+28+(c*24|0)|0,f,e);a=k[a+8>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,c);r=d;return}function MB(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=8576;b=a+28|0;k[b>>2]=8732;c=a+32|0;k[c>>2]=8760;d=k[a+180>>2]|0;if(d|0){$P(d);zba(d)}Ta(23,k[a+60>>2]|0)|0;k[b>>2]=1972;k[c>>2]=2e3;Bo(b);dH(a+36|0,k[a+40>>2]|0);k[c>>2]=2024;pU(a);return}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;do if((c|0)==1){d=iC(b)|0;d=d>>>0>2147483646?2147483646:d;e=lc(d+1|0)|0;if(!e){d=666;b=102695;e=d+39|0;do{i[d>>0]=i[b>>0]|0;d=d+1|0;b=b+1|0}while((d|0)<(e|0));Ib(123)}else{fE(e|0,b|0,d|0)|0;i[e+d>>0]=0;f=e;break}}else f=b;while(0);k[a>>2]=f;k[a+4>>2]=c;return}function OB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+112|0;g=f;HA(g,b,c,d);k[g>>2]=15308;gi(a,g,0)|0;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=(hA(a,g,0,0,e+-78|0)|0)+78|0;O3(g);r=f;return e|0}function PB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Jd(a,i,h,d,e,f)|0;r=g;return f|0}function QB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=Od(a,i,h,d,e,f)|0;r=g;return f|0}function RB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=he(a,i,h,d,e,f)|0;r=g;return f|0}function SB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0;g=r;r=r+16|0;h=g+12|0;i=g+8|0;l=g+4|0;j=g;k[l>>2]=k[b>>2];k[j>>2]=k[c>>2];k[i>>2]=k[l>>2];k[h>>2]=k[j>>2];f=le(a,i,h,d,e,f)|0;r=g;return f|0}function TB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;if(VJ(a,b,d)|0)a=oK(d,c)|0;else a=0;p1(d);r=e;return a|0}function UB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+16|0;e=d+8|0;f=d;bB(a);c=cW(116)|0;nm(c,b,a);b=(k[a+128>>2]|0)+104|0;k[f>>2]=339;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];sx(b,c,e);r=d;return c+20|0}function VB(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-96|0;k[d>>2]=e;p1(b+-28|0);p1(b+-40|0);p1(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function WB(a){a=a|0;var b=0,c=0,d=0;b=k[a+44>>2]|0;d=a+48|0;if((b|0)==(d|0))a=0;else{a=0;do{a=a+1|0;c=k[b+4>>2]|0;if(!c)while(1){c=k[b+8>>2]|0;if((k[c>>2]|0)==(b|0)){b=c;break}else b=c}else{b=c;while(1){c=k[b>>2]|0;if(!c)break;else b=c}}}while((b|0)!=(d|0))}return a|0}function XB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,2)|0;c=k[e>>2]|0;if((a+-1|0)>>>0<12&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function YB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,2)|0;c=k[e>>2]|0;if((a+-1|0)>>>0<12&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function ZB(a){a=a|0;var b=0,c=0,d=0;b=a+4|0;c=a+16|0;d=k[c>>2]|0;p1((k[(k[b>>2]|0)+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0);a=a+20|0;k[a>>2]=(k[a>>2]|0)+-1;a=(k[c>>2]|0)+1|0;k[c>>2]=a;if(a>>>0>681){zba(k[k[b>>2]>>2]|0);k[b>>2]=(k[b>>2]|0)+4;k[c>>2]=(k[c>>2]|0)+-341}return}function _B(a){a=a|0;var b=0;a=a+4|0;b=k[a>>2]|0;b=b+(k[(k[b>>2]|0)+-12>>2]|0)|0;if((((k[b+24>>2]|0?(k[b+16>>2]|0)==0:0)?k[b+4>>2]&8192|0:0)?!(Sa()|0):0)?(b=k[a>>2]|0,b=k[b+(k[(k[b>>2]|0)+-12>>2]|0)+24>>2]|0,(Ub[k[(k[b>>2]|0)+24>>2]&511](b)|0)==-1):0){b=k[a>>2]|0;b=b+(k[(k[b>>2]|0)+-12>>2]|0)+16|0;k[b>>2]=k[b>>2]|1}return}function $B(a){a=a|0;var b=0,c=0;b=Ml(a)|0;if((b|0)!=0?(i[b+144>>0]|0)!=0:0)b=b+148|0;else c=4;do if((c|0)==4){c=a+8|0;b=ui(c,k[a+4>>2]|0)|0;if(b|0?i[b+176>>0]|0:0){b=b+180|0;break}b=EX(c)|0;if(!b)b=0;else return (i[b+108>>0]|0?b+112|0:0)|0}while(0);return b|0}function aC(a,b){a=a|0;b=b|0;if(!b)return;else{aC(a,k[b>>2]|0);aC(a,k[b+4>>2]|0);zba(b);return}}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,2)|0;c=k[e>>2]|0;if((a+-1|0)>>>0<31&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function cC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,3)|0;c=k[e>>2]|0;if((a|0)<366&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function dC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,2)|0;c=k[e>>2]|0;if((a+-1|0)>>>0<31&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function eC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,3)|0;c=k[e>>2]|0;if((a|0)<366&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function fC(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+32|0;c=b+16|0;e=b+8|0;d=b;k[e>>2]=1271;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];kx(a+80|0,a,c)|0;k[d>>2]=1272;k[d+4>>2]=0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];kx(a+96|0,a,c)|0;Qi(a);r=b;return}function gC(a){a=a|0;var b=0,c=0;b=Ml(a)|0;if((b|0)!=0?(i[b+248>>0]|0)!=0:0)b=b+252|0;else c=4;do if((c|0)==4){c=a+8|0;b=ui(c,k[a+4>>2]|0)|0;if(b|0?i[b+280>>0]|0:0){b=b+284|0;break}b=EX(c)|0;if(!b)b=0;else return (i[b+212>>0]|0?b+216|0:0)|0}while(0);return b|0}function hC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+112|0;g=f;HA(g,b,c,d);k[g>>2]=15952;gi(a,g,0)|0;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=(hA(a,g,0,0,e+-78|0)|0)+78|0;O3(g);r=f;return e|0}function iC(a){a=a|0;var b=0,c=0,d=0;d=a;a:do if(!(d&3))c=4;else{b=d;while(1){if(!(i[a>>0]|0)){a=b;break a}a=a+1|0;b=a;if(!(b&3)){c=4;break}}}while(0);if((c|0)==4){while(1){b=k[a>>2]|0;if(!((b&-2139062144^-2139062144)&b+-16843009))a=a+4|0;else break}if((b&255)<<24>>24)do a=a+1|0;while((i[a>>0]|0)!=0)}return a-d|0}function jC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<13&(c&4|0)==0)k[b>>2]=a+-1;else k[e>>2]=c|4;r=g;return}function kC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<13&(c&4|0)==0)k[b>>2]=a+-1;else k[e>>2]=c|4;r=g;return}function lC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;a:do if(!c){g=0;f=1}else{g=0;while(1){f=Vb[k[(k[a>>2]|0)+16>>2]&31](a,b+g|0,c-g|0,h,e)|0;if((f|0)!=1)break a;g=(k[h>>2]|0)+g|0;if(g>>>0>=c>>>0){f=1;break}}}while(0);if(d|0)k[d>>2]=g;r=i;return f|0}function mC(a){a=a|0;var b=0,c=0;b=Ml(a)|0;if((b|0)!=0?(i[b+88>>0]|0)!=0:0)b=b+92|0;else c=4;do if((c|0)==4){c=a+8|0;b=ui(c,k[a+4>>2]|0)|0;if(b|0?i[b+120>>0]|0:0){b=b+124|0;break}b=EX(c)|0;if(!b)b=0;else return (i[b+52>>0]|0?b+56|0:0)|0}while(0);return b|0}function nC(a){a=a|0;var b=0,c=0,d=0;b=k[a+4>>2]|0;d=a+8|0;if((b|0)==(d|0))a=0;else{a=0;do{a=a+1|0;c=k[b+4>>2]|0;if(!c)while(1){c=k[b+8>>2]|0;if((k[c>>2]|0)==(b|0)){b=c;break}else b=c}else{b=c;while(1){c=k[b>>2]|0;if(!c)break;else b=c}}}while((b|0)!=(d|0))}return a|0}function oC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+64|0;g=f;HA(g,b,c,d);k[g>>2]=15728;Nr(a,g,0)|0;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=(hA(a,g,0,0,e+-28|0)|0)+28|0;O3(g);r=f;return e|0}function pC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+64|0;g=f;HA(g,b,c,d);k[g>>2]=15756;Nr(a,g,0)|0;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=(hA(a,g,0,0,e+-28|0)|0)+28|0;O3(g);r=f;return e|0}function qC(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[u>>3]=a;c=k[u>>2]|0;d=k[u+4>>2]|0;e=KZ(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){a=+qC(a*18446744073709551616.0,b);c=(k[b>>2]|0)+-64|0}else c=0;k[b>>2]=c;break}case 2047:break;default:{k[b>>2]=(e&2047)+-1022;k[u>>2]=c;k[u+4>>2]=d&-2146435073|1071644672;a=+p[u>>3]}}return +a}function rC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;f=d+4|0;e=d;rT(a);k[a>>2]=23404;k[a+32>>2]=b;h1(f,a+4|0);k[e>>2]=k[f>>2];b=k_(e,113404)|0;t6(e);k[a+36>>2]=b;k[a+40>>2]=c;c=(Ub[k[(k[b>>2]|0)+28>>2]&511](b)|0)&1;i[a+44>>0]=c;r=d;return}function sC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;f=d+4|0;e=d;sT(a);k[a>>2]=23468;k[a+32>>2]=b;h1(f,a+4|0);k[e>>2]=k[f>>2];b=k_(e,113396)|0;t6(e);k[a+36>>2]=b;k[a+40>>2]=c;c=(Ub[k[(k[b>>2]|0)+28>>2]&511](b)|0)&1;i[a+44>>0]=c;r=d;return}function tC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=d;i=a+8|0;g=0;h=0;a:while(1){if((c|0)==(d|0)|g>>>0>=e>>>0)break;f=O0(k[i>>2]|0)|0;a=b7(c,j-c|0,b)|0;if(f|0)O0(f)|0;switch(a|0){case -2:case -1:break a;case 0:{c=c+1|0;a=1;break}default:c=c+a|0}g=g+1|0;h=a+h|0}return h|0}function uC(a){a=a|0;var b=0,c=0,d=0;if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(b=a+152|0,c=b,!((k[c>>2]|0)==0&(k[c+4>>2]|0)==0)):0){c=_J()|0;d=b;d=n_(c|0,M|0,k[d>>2]|0,k[d+4>>2]|0)|0;c=a+112|0;a=c;a=y0(d|0,M|0,k[a>>2]|0,k[a+4>>2]|0)|0;k[c>>2]=a;k[c+4>>2]=M;c=b;k[c>>2]=0;k[c+4>>2]=0}return}function vC(a,b){a=a|0;b=b|0;var c=0,d=0;b=k[b+16>>2]|0;c=a+208|0;if((b|0)>0){d=c;b=y0(k[d>>2]|0,k[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;k[c>>2]=b;k[c+4>>2]=M}if(!(i[a+224>>0]|0)){Rb[k[(k[a>>2]|0)+88>>2]&2047](a);c=_J()|0;d=a+232|0;k[d>>2]=c;k[d+4>>2]=M;tB(a+216|0,100)|0}return}function wC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,1)|0;c=k[e>>2]|0;if((a|0)<7&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function xC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<61&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function yC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<60&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function zC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,1)|0;c=k[e>>2]|0;if((a|0)<7&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function AC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<61&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function BC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<60&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+2024|0;c=k[d>>2]|0;a:do if((c|0)<(b|0))while(1){if(!(TJ(d,c,0)|0)){c=1;break a}c=c+1|0;if((c|0)>=(b|0)){c=0;break}}else c=0;while(0);d=a+2152|0;if(!(i[a+1437>>0]|0))b=(k[d>>2]|0)+c|0;else b=c;k[d>>2]=b;if(c|0)AE(a+396|0,c);return}function DC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=r;r=r+32|0;e=f+16|0;g=f;k[g>>2]=0;GM(g,c,d,d);k[e>>2]=0;d=k[g+4>>2]|0;GM(e,k[g>>2]|0,d,d);i[e+12>>0]=(b|0)!=0&1;b=k[g>>2]|0;if(b|0)wba(b);wc(c);AE(a+24|0,e);b=k[e>>2]|0;if(b|0)wba(b);r=f;return}function EC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,f=0,g=0,h=0;d=r;r=r+16|0;f=d;g=d2(k[c>>2]|0,f)|0;h=(k[a+88>>2]|0)+1096|0;f=k[f>>2]|0;e=+yV(b+160|0);c=b+152|0;Oy(h,g,f,1,a+92|0,e,k[c>>2]|0,k[c+4>>2]|0);r=d;return}function FC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<24&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function GC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,2)|0;c=k[e>>2]|0;if((a|0)<24&(c&4|0)==0)k[b>>2]=a;else k[e>>2]=c|4;r=g;return}function HC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;e=d+8|0;f=d;c=Pk(a,b,c)|0;b=c+16|0;aE(b);k[f>>2]=128;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];kq(b,a,e)|0;Ot(c);r=d;return c|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=r;r=r+32|0;e=d+16|0;c=d+8|0;f=d;k[f>>2]=b;k[e>>2]=f;rk(c,a+48|0,f,113525,e,d+20|0);r=d;return (k[c>>2]|0)+32|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+32|0;a=d+8|0;e=d;k[a>>2]=0;GM(a,0,0,0);jR(a,1);k[a+4>>2]=1;c=cW(16)|0;k[c>>2]=0;GM(c,k[a>>2]|0,1,1);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);a=k[a>>2]|0;if(a|0)wba(a);r=d;return c|0}function KC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=i[a>>0]|0;a:do if(!(c<<24>>24))c=0;else{e=c&255;while(1){d=i[b>>0]|0;if(!(d<<24>>24))break a;if(c<<24>>24!=d<<24>>24?(e=U8(e)|0,(e|0)!=(U8(d&255)|0)):0)break a;a=a+1|0;b=b+1|0;c=i[a>>0]|0;if(!(c<<24>>24)){c=0;break}else e=c&255}}while(0);e=U8(c&255)|0;return e-(U8(l[b>>0]|0)|0)|0}function LC(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=r;r=r+16|0;b=e+8|0;c=e;d=a+180|0;if(!(k[d>>2]|0)){f=cW(32)|0;wt(f,(k[(k[a+52>>2]|0)+916>>2]|0)+400|0);k[d>>2]=f;k[c>>2]=48;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];iw(f,a,b)}r=e;return}function MC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;d=h;g=lc(240)|0;do if(g){k[d>>2]=k[c>>2];d=vs(g,240,b,d)|0;if(d>>>0<240){c=OD(g,d+1|0)|0;k[a>>2]=c|0?c:g;break}wc(g);if((d|0)>=0?(e=d+1|0,f=lc(e)|0,k[a>>2]=f,(f|0)!=0):0)d=vs(f,e,b,c)|0;else d=-1}else d=-1;while(0);r=h;return d|0}function NC(a){a=a|0;var b=0,c=0,d=0,e=0;e=r;r=r+16|0;b=e+8|0;c=e;d=U7(k[a+128>>2]|0)|0;if((d|0)!=0?!(O8(d)|0):0){k[c>>2]=1279;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];Rx(d+12|0,a,b)}else gd(a);r=e;return}function OC(a){a=a|0;var b=0,c=0;k[a>>2]=17792;k[a+8>>2]=0;k[a+4>>2]=17892;k[a+16>>2]=0;k[a+12>>2]=17912;b=a+20|0;K6(b);k[b>>2]=8536;b=a+28|0;c=b+48|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(c|0));k[a+80>>2]=0;k[a+76>>2]=17932;i[a+84>>0]=0;i[a+85>>0]=0;c=a+88|0;X0(c);k[a>>2]=17688;k[c>>2]=17728;k[a+104>>2]=0;return}function PC(a,b,c){a=a|0;b=+b;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;NO(e);F$(e,2.0,99);F$(e,0.0,105);F$(e,b,100);F$(e,i[a+84>>0]|0?+(c&255):2.0,99);P_(k[a+104>>2]|0,e);_R(e);r=d;return}function QC(a){a=a|0;var b=0,c=0,d=0;d=a+68|0;b=k[d>>2]|0;c=k[a+64>>2]|0;if((b|0)==(c|0))a=b;else while(1){a=b+1|0;k[d>>2]=a;if((i[b>>0]|0)==42)if((i[a>>0]|0)==47|(a|0)==(c|0))break;else{b=a;continue}else if((a|0)==(c|0))break;else{b=a;continue}}if((a|0)==(c|0))a=0;else{k[d>>2]=a+1;a=(i[a>>0]|0)==47}return a|0}function RC(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+96|0;c=b+8|0;d=b;e=bb(0)|0;k[d>>2]=e;eb(c|0,80,46706,Hb(d|0)|0)|0;a=Tn(a,103290,1)|0;Tn(Tn(a,c,iC(c)|0)|0,68429,2)|0;r=b;return}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;k[a>>2]=a;k[a+4>>2]=a;f=a+8|0;k[f>>2]=0;c=k[b+4>>2]|0;d=c;if((d|0)!=(b|0)){e=a;do{g=e;e=cW(12)|0;k[e+8>>2]=k[c+8>>2];k[e+4>>2]=a;k[e>>2]=g;k[g+4>>2]=e;k[a>>2]=e;k[f>>2]=(k[f>>2]|0)+1;c=k[d+4>>2]|0;d=c}while((d|0)!=(b|0))}return}function TC(a,b){a=a|0;b=b|0;var c=0;c=k[a+8>>2]|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=a+12|0;a=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;i[c>>0]=a;i[c+1>>0]=a>>8;i[c+2>>0]=a>>16;i[c+3>>0]=a>>24;k[b>>2]=(k[b>>2]|0)+4;return}function UC(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=13164;b=a+4|0;k[b>>2]=13204;c=a+20|0;k[c>>2]=13228;d=k[a+104>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d);Ey(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function VC(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+96|0;c=b+8|0;d=b;e=bb(0)|0;k[d>>2]=e;eb(c|0,80,107124,Hb(d|0)|0)|0;a=Tn(a,103290,1)|0;Tn(Tn(a,c,iC(c)|0)|0,68429,2)|0;r=b;return}function WC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+4|0;Rb[k[(k[g>>2]|0)+8>>2]&2047](g);e=k[a+12>>2]|0;f=a+8|0;a=e;if((a|0)!=(f|0))do{h=e;e=k[a+4>>2]|0;h=k[h+8>>2]|0;jc[k[(k[h>>2]|0)+12>>2]&63](h,b,c,d);a=e}while((a|0)!=(f|0));Rb[k[(k[g>>2]|0)+12>>2]&2047](g);return}function XC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;e=h;if((a|0)==(b|0)){k[c>>2]=4;d=0.0}else{f=z0()|0;g=k[f>>2]|0;k[f>>2]=0;d=+E9(a,e,J_()|0);a=k[f>>2]|0;if(!a)k[f>>2]=g;if((k[e>>2]|0)==(b|0)){if((a|0)==34)k[c>>2]=4}else{k[c>>2]=4;d=0.0}}r=h;return +d}function YC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295){while(1){d=RU(a|0,b|0,10,0)|0;c=c+-1|0;i[c>>0]=d|48;d=a;a=A5(a|0,b|0,10,0)|0;if(!(b>>>0>9|(b|0)==9&d>>>0>4294967295))break;else b=M}b=a}else b=a;if(b)while(1){c=c+-1|0;i[c>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return c|0}function ZC(a,b){a=a|0;b=b|0;if(!b)return;else{ZC(a,k[b>>2]|0);ZC(a,k[b+4>>2]|0);zba(b);return}}function _C(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,f=0,g=0;d=r;r=r+32|0;f=d+16|0;e=d+8|0;g=d;p[g>>3]=c;k[f>>2]=g;Il(e,a+4|0,g,113527,f,d+20|0);k[(k[e>>2]|0)+24>>2]=b;r=d;return}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;k[a>>2]=0;e=a+4|0;k[e>>2]=0;k[a+8>>2]=0;f=b+4|0;g=(k[f>>2]|0)-(k[b>>2]|0)|0;if(g|0?(xP(a,(g|0)/40|0),c=k[b>>2]|0,d=(k[f>>2]|0)-c|0,(d|0)>0):0){fE(k[e>>2]|0,c|0,d|0)|0;k[e>>2]=(k[e>>2]|0)+(((d>>>0)/40|0)*40|0)}return}function aD(a,b){a=a|0;b=b|0;if(!b)return;else{aD(a,k[b>>2]|0);aD(a,k[b+4>>2]|0);zba(b);return}}function bD(a,b){a=a|0;b=+b;var c=0,d=0;c=a+52|0;d=k[c>>2]|0;if((d|0?i[d+1188>>0]|0:0)?(Eb(114,k[a+440>>2]|0,+b)|0)==0:0)Rb[k[(k[a>>2]|0)+76>>2]&2047](a);Pb[k[(k[a>>2]|0)+140>>2]&15](a,b);d=k[c>>2]|0;if(d|0?i[d+857>>0]|0:0){Rb[k[(k[a>>2]|0)+100>>2]&2047](a);Rb[k[(k[a>>2]|0)+96>>2]&2047](a)}return}function cD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+32|0;d=e+24|0;i[d>>0]=0;while(1){f=RU(b|0,c|0,10,0)|0;d=d+-1|0;i[d>>0]=f|48;f=b;b=A5(b|0,c|0,10,0)|0;if(!(c>>>0>0|(c|0)==0&f>>>0>9))break;else c=M}k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,d,iC(d)|0);r=e;return}function dD(a){a=a|0;var b=0,c=0,d=0;if(i[a+68>>0]|0)BX(a);b=a+64|0;if(k[b>>2]|0){Nk(a);k[b>>2]=0}b=a+80|0;if(i[b>>0]|0){c=a+76|0;d=Ta(0,k[c>>2]|0)|0;k[c>>2]=d;i[b>>0]=0}b=a+48|0;if(i[b>>0]|0){d=a+44|0;c=Ta(0,k[d>>2]|0)|0;k[d>>2]=c;i[b>>0]=0}return}function eD(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+16|0;c=b;d=k[a+44>>2]|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;yE(c,d,32);d=i[c+11>>0]|0;e=d<<24>>24<0;nw(a+28|0,e?k[c>>2]|0:c,e?k[c+4>>2]|0:d&255)|0;p1(c);r=b;return}function fD(a,b){a=a|0;b=b|0;if(!b)return;else{fD(a,k[b>>2]|0);fD(a,k[b+4>>2]|0);zba(b);return}}function gD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=a+11|0;d=i[e>>0]|0;f=d<<24>>24<0;if(f)d=k[a+4>>2]|0;else d=d&255;do if(d>>>0>=b>>>0)if(f){i[(k[a>>2]|0)+b>>0]=0;k[a+4>>2]=b;break}else{i[a+b>>0]=0;i[e>>0]=b;break}else tw(a,b-d|0,c)|0;while(0);return}function hD(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;ye(a+836|0,b,d,0);b=i[d+11>>0]|0;b=((b<<24>>24<0?k[d+4>>2]|0:b&255)|0)!=0;p1(d);r=c;return b|0}function iD(a){a=a|0;var b=0,c=0;k[a>>2]=17792;b=a+76|0;k[b>>2]=17832;aE(b);b=a+28|0;c=a+76|0;do{c=c+-24|0;TH(c)}while((c|0)!=(b|0));h3(a+20|0);c=a+12|0;k[c>>2]=17852;aE(c);c=a+4|0;k[c>>2]=17872;aE(c);return}function jD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=b+8|0;f=EX(e)|0;e=ui(e,k[b+4>>2]|0)|0;d=Ml(b)|0;Yo(a,c,f,e,d,k[b+12>>2]|0);return}function kD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;iI(f,b);Wt(a,f,c);p1(f);k[a>>2]=13288;k[a+4>>2]=13324;k[a+20>>2]=13348;k[a+128>>2]=d;r=e;return}function lD(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=a+20|0;g=a+28|0;if((k[b>>2]|0)>>>0>(k[g>>2]|0)>>>0?(Yb[k[a+36>>2]&31](a,0,0)|0,(k[b>>2]|0)==0):0)a=-1;else{c=a+4|0;d=k[c>>2]|0;e=a+8|0;f=k[e>>2]|0;if(d>>>0<f>>>0)Yb[k[a+40>>2]&31](a,d-f|0,1)|0;k[a+16>>2]=0;k[g>>2]=0;k[b>>2]=0;k[e>>2]=0;k[c>>2]=0;a=0}return a|0}function mD(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;j[c>>1]=j[c>>1]&-512|b&255;k[a+12>>2]=0;switch(b|0){case 5:{i[a>>0]=0;break}case 2:case 1:{c=a;k[c>>2]=0;k[c+4>>2]=0;break}case 3:{p[a>>3]=0.0;break}case 4:{k[a>>2]=0;break}case 7:case 6:{c=cW(12)|0;b=c+4|0;k[b>>2]=0;k[c+8>>2]=0;k[c>>2]=b;k[a>>2]=c;break}default:{}}return}
function nD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;e=i[b+11>>0]|0;f=e<<24>>24<0;e=f?k[b+4>>2]|0:e&255;if(e>>>0<c>>>0)w5(a);else{e=e-c|0;wE(a,(f?k[b>>2]|0:b)+c|0,e>>>0<d>>>0?e:d);return}}function oD(a){a=a|0;var b=0.0,c=0,d=0;c=r;r=r+16|0;switch((j[a+8>>1]&255)<<24>>24){case 1:{d=k[a+4>>2]|0;a=d>>>0<1|(d|0)==1&(k[a>>2]|0)>>>0<0;break}case 2:{d=k[a+4>>2]|0;a=d>>>0<1|(d|0)==1&(k[a>>2]|0)>>>0<0;break}case 3:{b=+p[a>>3];if(!(b>=0.0)|!(b<=4294967295.0))a=0;else a=+_p(b,c)==0.0;break}default:a=0}r=c;return a|0}function pD(a,b){a=a|0;b=b|0;if(!b)return;else{pD(a,k[b>>2]|0);pD(a,k[b+4>>2]|0);p1(b+16|0);zba(b);return}}function qD(a,b){a=a|0;b=b|0;var c=0;if(!(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0)){c=k[(k[(k[a+20>>2]|0)+2004>>2]|0)+100>>2]|0;if((c|0)<1)c=k[a+696>>2]|0;c=~~(+(c|0)*+p[a+688>>3]);if(((Ub[k[(k[b>>2]|0)+40>>2]&511](b)|0)<<10|0)<=(c|0)?Ub[k[(k[b>>2]|0)+108>>2]&511](b)|0:0)MG(a,b)}return}function rD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=a+4|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);d=k[a+12>>2]|0;e=a+8|0;a=d;if((a|0)!=(e|0))do{g=d;d=k[a+4>>2]|0;g=k[g+8>>2]|0;fc[k[(k[g>>2]|0)+12>>2]&255](g,b,c);a=d}while((a|0)!=(e|0));Rb[k[(k[f>>2]|0)+12>>2]&2047](f);return}function sD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;c=b+4|0;e=(k[c>>2]|0)-(k[b>>2]|0)|0;d=(e|0)/56|0;if(e|0){cO(a,d);Xt(a,k[b>>2]|0,k[c>>2]|0,d)}return}function tD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=r;r=r+48|0;f=g;HA(f,b,c,d);c=k[a+28>>2]|0;hc[k[k[c>>2]>>2]&7](c,f,+p[a+40>>3]);c=a+8|0;d=(k[c>>2]|0)+e|0;k[c>>2]=d;b=a+12|0;if((d|0)>=(k[b>>2]|0)){k[b>>2]=0;k[c>>2]=0}O3(f);r=g;return e|0}function uD(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=a+8|0;k[d>>2]=86;e=a+32|0;c=a+36|0;a=k[e>>2]|0;if((k[c>>2]|0)!=(a|0)){b=0;do{f=k[a+(b<<2)>>2]|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);f=k[e>>2]|0;k[d>>2]=(k[d>>2]|0)+(k[(k[f+(b<<2)>>2]|0)+8>>2]|0);b=b+1|0;a=f}while(b>>>0<(k[c>>2]|0)-a>>2>>>0)}return}function vD(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+4|0;if((R9((k[c>>2]|0)+424|0)|0)<=1?(d=(w4(k[c>>2]|0)|0)+1189|0,(i[d>>0]|0)==0):0)b=b+104|0;else{b=b+104|0;d=k[b>>2]|0;MJ(a+352|0,d,((d|0)<0)<<31>>31)}lo(k[c>>2]|0,a,k[b>>2]|0);return}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+16|0;e=c;mD(d,0);f=N6(d,56171)|0;nF(e,27659);GA(f,e)|0;Lv(e);f=N6(d,27533)|0;fY(e,b);GA(f,e)|0;Lv(e);XA(a,d);Lv(d);r=c;return}function xD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,g=0;e=r;r=r+16|0;c=e;g=O2(b,2)|0;d=lc(g)|0;ZZ(b,2,d,g);k[c>>2]=d;k[c+4>>2]=g;f=+a3(b,1);p[c+8>>3]=f;a=k[a+80>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,c);wc(d);r=e;return}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;c=b+4|0;e=(k[c>>2]|0)-(k[b>>2]|0)|0;d=(e|0)/72|0;if(e|0){lO(a,d);Br(a,k[b>>2]|0,k[c>>2]|0,d)}return}function zD(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;b=a+4|0;Rb[k[(k[b>>2]|0)+8>>2]&2047](b);vm(c+8|0,a+8|0,d,d);Rb[k[(k[b>>2]|0)+12>>2]&2047](b);r=c;return}function AD(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;if(!(i[a+708>>0]|0))a=1;else{Iu(a);k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,31482,21);ub(5,k[a+1048>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0;p1(b);a=0}r=c;return a|0}function BD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[a+648>>2]|0;f=k[a+652>>2]|0;e=f;d=c;if(((c|0)!=(f|0)?!((b|0)<-1?1:(k[(k[a+904>>2]|0)+8>>2]|0)==0):0)?(e-d>>2|0)>(b|0):0){if((b|0)==-1)i[a+858>>0]=1;else oI(a,k[(k[c+(b<<2)>>2]|0)+60>>2]|0);k[a+880>>2]=b;a=1}else a=0;return a|0}function CD(a){a=a|0;var b=0,c=0;k[a>>2]=17992;k[a+28>>2]=18228;k[a+32>>2]=18256;k[a+208>>2]=18280;b=k[a+392>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=a+388|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}b=a+384|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}io(a);return}function DD(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=a+8|0;k[d>>2]=8;e=a+32|0;c=a+36|0;a=k[e>>2]|0;if((k[c>>2]|0)!=(a|0)){b=0;do{f=k[a+(b<<2)>>2]|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);f=k[e>>2]|0;k[d>>2]=(k[d>>2]|0)+(k[(k[f+(b<<2)>>2]|0)+8>>2]|0);b=b+1|0;a=f}while(b>>>0<(k[c>>2]|0)-a>>2>>>0)}return}function ED(a,b){a=a|0;b=b|0;if(!b)return;else{ED(a,k[b>>2]|0);ED(a,k[b+4>>2]|0);zba(b);return}}function FD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,115628,0);ye(a,e,b,c);p1(e);r=d;return}function GD(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=a+20|0;c=a+44|0;if((k[b>>2]|0)>>>0>(k[c>>2]|0)>>>0)Yb[k[a+36>>2]&31](a,0,0)|0;k[a+16>>2]=0;k[a+28>>2]=0;k[b>>2]=0;b=k[a>>2]|0;if(b&20)if(!(b&4))b=-1;else{k[a>>2]=b|32;b=-1}else{b=k[c>>2]|0;k[a+8>>2]=b;k[a+4>>2]=b;b=0}return b|0}function HD(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;if(T0(a)|0)a=1;else{k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,75447,10);a=(Ta(109,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0)!=0;p1(b)}r=c;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[a+4>>2]|0;d=k[c+2056>>2]|0;e=k[a+44>>2]|0;e=e+1+(((TJ(c+2024|0,e,0)|0)^1)<<31>>31)|0;d=(e|0)<(d|0)?e:d;e=a+64|0;if((k[e>>2]|0)>0){c=0;do{AG(a,b,c+d|0);c=c+1|0}while((c|0)<(k[e>>2]|0))}return}function JD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,h=0;h=r;r=r+112|0;g=h;e=g;f=e+112|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=g+4|0;k[e>>2]=a;f=g+8|0;k[f>>2]=-1;k[g+44>>2]=a;k[g+76>>2]=-1;MR(g,0);d=+mc(g,c,1);c=(k[e>>2]|0)-(k[f>>2]|0)+(k[g+108>>2]|0)|0;if(b|0)k[b>>2]=c|0?a+c|0:a;r=h;return +d}function KD(a){a=a|0;var b=0,c=0;b=a+56|0;c=k[b>>2]|0;if(c|0){i[a+68>>0]=0;Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}c=a+36|0;tB(a+40|0,(k[c>>2]|0)*1e3|0)|0;a=(k[a+60>>2]|0)+916|0;b=$(k[c>>2]|0,k[(k[a>>2]|0)+644>>2]|0)|0;k[c>>2]=b;a=k[(k[a>>2]|0)+712>>2]|0;k[c>>2]=(b|0)>(a|0)?a:b;return}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;Bt(a,b);d=j[a+52>>1]|0;i[k[b>>2]>>0]=(d&65535)>>>8;i[(k[b>>2]|0)+1>>0]=d;d=(k[b>>2]|0)+2|0;k[b>>2]=d;c=0;do{e=j[a+54+(c<<1)>>1]|0;i[d>>0]=(e&65535)>>>8;i[(k[b>>2]|0)+1>>0]=e;d=(k[b>>2]|0)+2|0;k[b>>2]=d;c=c+1|0}while((c|0)!=3);return}function MD(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=a+8|0;k[d>>2]=16;e=a+32|0;c=a+36|0;a=k[e>>2]|0;if((k[c>>2]|0)!=(a|0)){b=0;do{f=k[a+(b<<2)>>2]|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);f=k[e>>2]|0;k[d>>2]=(k[d>>2]|0)+(k[(k[f+(b<<2)>>2]|0)+8>>2]|0);b=b+1|0;a=f}while(b>>>0<(k[c>>2]|0)-a>>2>>>0)}return}function ND(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=a+8|0;k[d>>2]=36;e=a+32|0;c=a+36|0;a=k[e>>2]|0;if((k[c>>2]|0)!=(a|0)){b=0;do{f=k[a+(b<<2)>>2]|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);f=k[e>>2]|0;k[d>>2]=(k[d>>2]|0)+(k[(k[f+(b<<2)>>2]|0)+8>>2]|0);b=b+1|0;a=f}while(b>>>0<(k[c>>2]|0)-a>>2>>>0)}return}function OD(a,b){a=a|0;b=b|0;var c=0,d=0;if(!a){b=lc(b)|0;return b|0}if(b>>>0>4294967231){b=z0()|0;k[b>>2]=12;b=0;return b|0}c=yd(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(c|0){b=c+8|0;return b|0}c=lc(b)|0;if(!c){b=0;return b|0}d=k[a+-4>>2]|0;d=(d&-8)-((d&3|0)==0?8:4)|0;fE(c|0,a|0,(d>>>0<b>>>0?d:b)|0)|0;wc(a);b=c;return b|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;c=b+4|0;e=(k[c>>2]|0)-(k[b>>2]|0)|0;d=(e|0)/48|0;if(e|0){HO(a,d);lx(a,k[b>>2]|0,k[c>>2]|0,d)}return}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;c=b+4|0;e=(k[c>>2]|0)-(k[b>>2]|0)|0;d=(e|0)/36|0;if(e|0){AO(a,d);jA(a,k[b>>2]|0,k[c>>2]|0,d)}return}function RD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=b+16|0;e=k[a>>2]|0;do if(e){if((e|0)!=(c|0)){d=b+36|0;k[d>>2]=(k[d>>2]|0)+1;k[b+24>>2]=2;i[b+54>>0]=1;break}a=b+24|0;if((k[a>>2]|0)==2)k[a>>2]=d}else{k[a>>2]=c;k[b+24>>2]=d;k[b+36>>2]=1}while(0);return}function SD(a){a=a|0;var b=0,c=0;b=a+368|0;if(i[b>>0]|0){c=a+292|0;if((i[c>>0]|0)==0?LY(a)|0:0){i[c>>0]=1;c=k[a+288>>2]|0;Rb[k[(k[c>>2]|0)+28>>2]&2047](c)}if(Ub[k[(k[a>>2]|0)+136>>2]&511](a)|0){Rb[k[(k[a>>2]|0)+148>>2]&2047](a);i[b>>0]=0;i[a+373>>0]=1}}return}function TD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;c=d;e=j[a+130>>1]|0;if((e&255)<<24>>24!=0&(e&65535)<256?(i[a+133>>0]|0)==0:0){oN(a);b=xA(a,b)|0;k[c+4>>2]=8;k[c>>2]=8076;e=c+8|0;k[e>>2]=b;k[e+4>>2]=M;fB(k[a+108>>2]|0,c)}r=d;return}function UD(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-12|0;k[d>>2]=e;p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function VD(a){a=a|0;nG(a+168|0);nG(a+156|0);nG(a+144|0);Zu(a+132|0,k[a+136>>2]|0);return}function WD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;f=iC(b)|0;e=c+11|0;d=i[e>>0]|0;d=d<<24>>24<0?k[c+4>>2]|0:d&255;XF(a,b,f,d+f|0);nw(a,(i[e>>0]|0)<0?k[c>>2]|0:c,d)|0;return}function XD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;iI(f,d);Bg(a+424|0,b,c,f);p1(f);r=e;return}function YD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;ar(a,b);e=Tn(110732,68960,10)|0;d=a+52|0;b=i[d+11>>0]|0;c=b<<24>>24<0;Tn(e,c?k[d>>2]|0:d,c?k[a+56>>2]|0:b&255)|0;return}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=i[a+11>>0]|0;if(d<<24>>24<0){d=k[a+4>>2]|0;a=k[a>>2]|0}else d=d&255;a:do if(!d)d=-1;else{d=a+(d>>>0>c>>>0?c+1|0:d)|0;do{if((d|0)==(a|0)){d=-1;break a}d=d+-1|0}while((i[d>>0]|0)!=b<<24>>24);d=d-a|0}while(0);return d|0}function _D(a){a=a|0;var b=0,c=0,d=0;if((k[a+76>>2]|0)>=0?(Eba(a)|0)!=0:0){b=a+4|0;c=k[b>>2]|0;if(c>>>0<(k[a+8>>2]|0)>>>0){k[b>>2]=c+1;b=l[c>>0]|0}else b=NP(a)|0}else d=3;do if((d|0)==3){b=a+4|0;c=k[b>>2]|0;if(c>>>0<(k[a+8>>2]|0)>>>0){k[b>>2]=c+1;b=l[c>>0]|0;break}else{b=NP(a)|0;break}}while(0);return b|0}function $D(a,b,c){a=a|0;b=b|0;c=c|0;X0(a);k[a>>2]=11060;k[a+16>>2]=c;c=a+20|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[c+16>>2]=0;k[c+20>>2]=0;k[c+24>>2]=0;k[c+28>>2]=0;iI(a+52|0,b);vt(a);return}function aE(a){a=a|0;var b=0,c=0,d=0,e=0;e=r;r=r+16|0;b=e;d=a+4|0;c=k[d>>2]|0;if(c|0){c=Ub[k[(k[c>>2]|0)+12>>2]&511](c)|0;k[b>>2]=a;AB(c+4|0,b)|0;a=k[d>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);k[d>>2]=0}r=e;return}function bE(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0,g=0;f=a+4|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);d=k[a+12>>2]|0;e=a+8|0;a=d;if((a|0)!=(e|0))do{g=d;d=k[a+4>>2]|0;g=k[g+8>>2]|0;Xb[k[(k[g>>2]|0)+12>>2]&7](g,b,c);a=d}while((a|0)!=(e|0));Rb[k[(k[f>>2]|0)+12>>2]&2047](f);return}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a+16|0;if((k[c>>2]|0)<(b|0)){b=((b|0)/5|0)+b|0;k[c>>2]=b;b=lc(b)|0;c=a+12|0;d=a+8|0;f=k[d>>2]|0;e=(k[c>>2]|0)-f|0;k[c>>2]=e;c=a+32|0;p[c>>3]=+(f|0)+ +p[c>>3];c=a+4|0;a=k[c>>2]|0;fE(b|0,a+f|0,e|0)|0;k[d>>2]=0;wc(a);k[c>>2]=b}return}function dE(a){a=a|0;var b=0;if(FJ(a,27304)|0)if(FJ(a,27310)|0)if(FJ(a,27318)|0)if(!(FJ(a,27323)|0))a=1;else{b=Tn(110900,27331,21)|0;Tn(b,a,iC(a)|0)|0;a=2}else a=2;else a=3;else a=4;return a|0}function eE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(!c)d=0;else{d=i[a>>0]|0;a:do if(!(d<<24>>24))d=0;else while(1){c=c+-1|0;e=i[b>>0]|0;if(!(d<<24>>24==e<<24>>24&((c|0)!=0&e<<24>>24!=0)))break a;a=a+1|0;b=b+1|0;d=i[a>>0]|0;if(!(d<<24>>24)){d=0;break}}while(0);d=(d&255)-(l[b>>0]|0)|0}return d|0}function fE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)>=4096)return ab(a|0,b|0,c|0)|0;d=a|0;if((a&3)==(b&3)){while(a&3){if(!c)return d|0;i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}while((c|0)>=4){k[a>>2]=k[b>>2];a=a+4|0;b=b+4|0;c=c-4|0}}while((c|0)>0){i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}return d|0}function gE(a){a=a|0;var b=0,c=0,d=0;b=a+4|0;c=a+16|0;d=k[c>>2]|0;Ta(20,k[(k[(k[b>>2]|0)+(d>>>9<<2)>>2]|0)+((d&511)<<3)>>2]|0)|0;a=a+20|0;k[a>>2]=(k[a>>2]|0)+-1;a=(k[c>>2]|0)+1|0;k[c>>2]=a;if(a>>>0>1023){zba(k[k[b>>2]>>2]|0);k[b>>2]=(k[b>>2]|0)+4;k[c>>2]=(k[c>>2]|0)+-512}return}function hE(a){a=a|0;var b=0,c=0;b=$B(a)|0;if((b|0)!=0?(i[b+24>>0]|0)!=0:0)b=b+28|0;else c=4;do if((c|0)==4){b=gC(a)|0;if(b|0?i[b+24>>0]|0:0){b=b+28|0;break}b=mC(a)|0;if(!b)b=0;else return (i[b+24>>0]|0?b+28|0:0)|0}while(0);return b|0}function iE(a){a=a|0;var b=0,c=0;c=0;while(1){if((l[104160+c>>0]|0)==(a|0)){a=2;break}b=c+1|0;if((b|0)==87){b=104248;c=87;a=5;break}else c=b}if((a|0)==2)if(!c)b=104248;else{b=104248;a=5}if((a|0)==5)while(1){do{a=b;b=b+1|0}while((i[a>>0]|0)!=0);c=c+-1|0;if(!c)break;else a=5}return b|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a+4|0;c=k[f>>2]|0;e=k[a>>2]|0;d=c-e>>2;a:do if(d>>>0>=b>>>0){if(d>>>0>b>>>0){a=e+(b<<2)|0;while(1){if((c|0)==(a|0))break a;e=c+-4|0;k[f>>2]=e;c=e}}}else Xp(a,b-d|0);while(0);return}function kE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=Cd(c,a,e,f,4)|0;if(!(k[e>>2]&4))k[b>>2]=a+-1900;r=g;return}function lE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;a=g+4|0;h=g;k[h>>2]=k[d>>2];k[a>>2]=k[h>>2];a=_d(c,a,e,f,4)|0;if(!(k[e>>2]&4))k[b>>2]=a+-1900;r=g;return}function mE(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;_o(d,b);nD(a,d,0,gF(d,63,0)|0,d);p1(d);r=c;return}function nE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;mD(d,0);if(ZH(a,b,d)|0)a=kf(d,c)|0;else a=0;Lv(d);r=e;return a|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,b,c);De(k[a+24>>2]|0,e);p1(e);r=d;return}function pE(a){a=a|0;var b=0,c=0,d=0,e=0;c=r;r=r+16|0;b=c;if(i[a+130>>0]|0?(i[a+133>>0]|0)==0:0){oN(a);e=xA(a,k[(k[a+4>>2]|0)+2024>>2]|0)|0;k[b+4>>2]=11;k[b>>2]=8044;d=b+8|0;k[d>>2]=e;k[d+4>>2]=M;fB(k[a+108>>2]|0,b)}r=c;return}function qE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;k[a+60>>2]=b;if(f){if(c|0)wc(c)}else{b=a+64|0;f=k[b>>2]|0;if(f|0){wc(f);k[b>>2]=0}k[b>>2]=c;k[a+68>>2]=d}b=(e|0)<1?d:e;k[a+36>>2]=b;k[a+32>>2]=b;b=k[a+8>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,a);return}function rE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=a+12|0;g=a+16|0;e=0;while(1){if((e|0)>=(c|0))break;d=k[f>>2]|0;if(d>>>0<(k[g>>2]|0)>>>0){k[f>>2]=d+1;d=i[d>>0]|0}else{d=Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;if((d|0)==-1)break;d=d&255}i[b>>0]=d;e=e+1|0;b=b+1|0}return e|0}function sE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;a=e;if(b|0){f=k[(k[b>>2]|0)+4>>2]|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,c,d);Sb[f&511](b,a);p1(a)}r=e;return}function tE(a){a=a|0;var b=0,c=0,d=0;c=a+8|0;if(k[c>>2]|0?(b=k[a+4>>2]|0,d=(k[a>>2]|0)+4|0,k[(k[b>>2]|0)+4>>2]=k[d>>2],k[k[d>>2]>>2]=k[b>>2],k[c>>2]=0,(b|0)!=(a|0)):0)do{d=b;b=k[b+4>>2]|0;c=d+8|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);zba(d)}while((b|0)!=(a|0));return}function uE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=Yp(e,a,0,b)|0;if((f|0)!=-1)do{uj(e,f,b,c,d)|0;f=Yp(e,a,f+d|0,b)|0}while((f|0)!=-1);return}function vE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=k[b>>2]|0;e=k[c>>2]|0;if((d|0)!=(e|0)){c=(k[e>>2]|0)+4|0;k[(k[d>>2]|0)+4>>2]=k[c>>2];k[k[c>>2]>>2]=k[d>>2];c=a+8|0;do{a=k[d+4>>2]|0;k[b>>2]=a;k[c>>2]=(k[c>>2]|0)+-1;zba(d);d=a}while((d|0)!=(e|0))}return e|0}function wE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(c>>>0>4294967279)x5(a);if(c>>>0<11){i[a+11>>0]=c;if(c)d=6}else{e=c+16&-16;d=cW(e)|0;k[a>>2]=d;k[a+8>>2]=e|-2147483648;k[a+4>>2]=c;a=d;d=6}if((d|0)==6)fE(a|0,b|0,c|0)|0;i[a+c>>0]=0;return}function xE(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=r;r=r+16|0;f=b;e=k[a+12>>2]|0;i[f>>0]=10;f=Tn(e,f,1)|0;e=a+16|0;c=i[e+11>>0]|0;d=c<<24>>24<0;Tn(f,d?k[e>>2]|0:e,d?k[a+20>>2]|0:c&255)|0;r=b;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(b>>>0>4294967279)x5(a);if(b>>>0<11){i[a+11>>0]=b;if(b)d=6}else{e=b+16&-16;d=cW(e)|0;k[a>>2]=d;k[a+8>>2]=e|-2147483648;k[a+4>>2]=b;a=d;d=6}if((d|0)==6)XG(a|0,c|0,b|0)|0;i[a+b>>0]=0;return}function zE(a,b,c){a=a|0;b=b|0;c=c|0;if((X9(k[c>>2]|0)|0)!=200?(X9(k[c>>2]|0)|0)!=206:0)ug(a,b,c);else zh(a,b,c);if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);return}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=a+4|0;Rb[k[(k[e>>2]|0)+8>>2]&2047](e);c=k[a+12>>2]|0;d=a+8|0;a=c;if((a|0)!=(d|0))do{f=c;c=k[a+4>>2]|0;f=k[f+8>>2]|0;Sb[k[(k[f>>2]|0)+12>>2]&511](f,b);a=c}while((a|0)!=(d|0));Rb[k[(k[e>>2]|0)+12>>2]&2047](e);return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;D4(b);e=a+8|0;d=k[e>>2]|0;if((k[a+12>>2]|0)-d>>2>>>0>c>>>0)a=e;else{jE(e,c+1|0);a=e;d=k[e>>2]|0}d=k[d+(c<<2)>>2]|0;if(d|0)oU(d)|0;k[(k[a>>2]|0)+(c<<2)>>2]=b;return}function CE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;k[a+12>>2]=0;k[a+16>>2]=d;do if(b){e=d+112|0;if(b>>>0<29&(i[e>>0]|0)==0){i[e>>0]=1;break}else{d=cW(b<<2)|0;break}}else d=0;while(0);k[a>>2]=d;c=d+(c<<2)|0;k[a+8>>2]=c;k[a+4>>2]=c;k[a+12>>2]=d+(b<<2);return}function DE(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=k[a+452>>2]|0;e=a+448|0;if((c|0)==(e|0))b=0;else{b=0;d=c;do{f=k[c+8>>2]|0;b=(Ub[k[(k[f>>2]|0)+60>>2]&511](f)|0)+b|0;c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0))}if((b|0)<(k[a+1368>>2]|0))b=(i[a+2161>>0]|0)!=0;else b=0;return b|0}function EE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;k[a>>2]=14872;k[a+8>>2]=0;k[a+4>>2]=14908;k[a+16>>2]=0;k[a+12>>2]=14908;d=a+20|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;iI(a+40|0,b);k[a+52>>2]=c;k[a+56>>2]=-1;MK(a);return}function FE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;e=i[b+11>>0]|0;f=e<<24>>24<0;e=f?k[b+4>>2]|0:e&255;d=iC(c)|0;XF(a,f?k[b>>2]|0:b,e,e+d|0);nw(a,c,d)|0;return}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=a+12|0;g=a+16|0;e=0;while(1){if((e|0)>=(c|0))break;d=k[f>>2]|0;if(d>>>0>=(k[g>>2]|0)>>>0){d=Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;if((d|0)==-1)break}else{k[f>>2]=d+4;d=k[d>>2]|0}k[b>>2]=d;e=e+1|0;b=b+4|0}return e|0}function HE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0;l=r;r=r+16|0;g=l;i[g>>0]=37;h=g+1|0;i[h>>0]=e;j=g+2|0;i[j>>0]=f;i[g+3>>0]=0;if(f<<24>>24){i[h>>0]=f;i[j>>0]=e}j=b+(Wa(b|0,(k[c>>2]|0)-b|0,g|0,d|0,k[a>>2]|0)|0)|0;k[c>>2]=j;r=l;return}function IE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+64|0;c=e+12|0;d=e;if(i[a+68>>0]|0){iT(c);yA(d,c,b);gQ(k[a+56>>2]|0,d)|0;p1(d);bQ(c)}r=e;return}function JE(a){a=a|0;p1(a+44|0);os(a+24|0,k[a+28>>2]|0);SG(a+12|0);oB(a);return}function KE(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<3){Qd(c,34543,39,2,0,0,0);Tn(c,34564,24)|0;hi(c)}Bk(k[a+4>>2]|0,b);r=d;return}function LE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;k[a>>2]=0;e=a+4|0;k[e>>2]=0;k[a+8>>2]=0;f=b+4|0;g=(k[f>>2]|0)-(k[b>>2]|0)>>2;if(g|0?(nQ(a,g),c=k[b>>2]|0,d=(k[f>>2]|0)-c|0,(d|0)>0):0){fE(k[e>>2]|0,c|0,d|0)|0;k[e>>2]=(k[e>>2]|0)+(d>>2<<2)}return}function ME(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=k[b+12>>2]|0;if((b|0)!=0?(d=k[b+(c<<2)>>2]|0,(d|0)!=0):0){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,d,iC(d)|0)}else{k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,115628,0)}return}function NE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=r;r=r+112|0;g=i;k[g>>2]=0;h=g+4|0;k[h>>2]=a;k[g+44>>2]=a;f=g+8|0;k[f>>2]=(a|0)<0?-1:a+2147483647|0;k[g+76>>2]=-1;MR(g,0);c=Ec(g,c,1,d,e)|0;if(b|0)k[b>>2]=a+((k[h>>2]|0)+(k[g+108>>2]|0)-(k[f>>2]|0));r=i;return c|0}function OE(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=b>>>24;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=b>>>16;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=b>>>8;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=b;return}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c;YG(a,b);e=N6(a,43147)|0;fY(d,k[b+20>>2]|0);GA(e,d)|0;Lv(d);a=N6(a,56009)|0;Ix(d,b+24|0);GA(a,d)|0;Lv(d);r=c;return}function QE(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,l=0;i=k[a+8>>2]|0;l=k[a+12>>2]|0;j=(k[a+4>>2]|0)+(l>>1)|0;if(!(l&1))a=i;else a=k[(k[j>>2]|0)+i>>2]|0;ac[a&3](j,b,c,d,e,f,g,h);return}function RE(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+452>>2]|0;e=a+448|0;if((c|0)==(e|0))b=0;else{b=0;d=c;do{c=k[c+8>>2]|0;if(!(Ub[k[(k[c>>2]|0)+64>>2]&511](c)|0))b=(su(c)|0)+b|0;c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0))}return (b|0)<(k[a+2276>>2]|0)|0}function SE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;d=e;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;c=ob(119,k[b>>2]|0,a|0,371,12,1299,1300)|0;b=a+384|0;a=k[b>>2]|0;if((a|0)!=-1){Ta(2,a|0)|0;k[b>>2]=-1}k[b>>2]=c;p1(d);r=e;return}function TE(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=18600;b=a+4|0;k[b>>2]=18628;c=a+20|0;d=k[c>>2]|0;if((d|0)!=-1){Ta(2,d|0)|0;k[c>>2]=-1}k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function UE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;d=e+4|0;k[f>>2]=k[b>>2];i[d>>0]=0;Ns(a+28+(c*24|0)|0,f,d);d=k[a+8>>2]|0;if(d|0)Sb[k[(k[d>>2]|0)+8>>2]&511](d,c);r=e;return}function VE(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<3){Qd(c,34543,44,2,0,0,0);Tn(c,34589,22)|0;hi(c)}gV(k[a+4>>2]|0,b);r=d;return}function WE(a){a=a|0;var b=0,c=0,d=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{k[d>>2]=c+-32;p1(c+-16|0);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function XE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;d=f+8|0;e=f;if(tB(c,k[(k[a+4>>2]|0)+1512>>2]|0)|0)k[c+12>>2]=b;k[e>>2]=352;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];rx(c,a,d)|0;r=f;return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;f=d+4|0;e=d;rT(a);k[a>>2]=23532;k[a+32>>2]=b;k[a+40>>2]=c;k[a+48>>2]=-1;i[a+52>>0]=0;h1(f,a+4|0);k[e>>2]=k[f>>2];bJ(a,e);t6(e);r=d;return}function ZE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;f=d+4|0;e=d;sT(a);k[a>>2]=23596;k[a+32>>2]=b;k[a+40>>2]=c;k[a+48>>2]=-1;i[a+52>>0]=0;h1(f,a+4|0);k[e>>2]=k[f>>2];cJ(a,e);t6(e);r=d;return}function _E(a){a=a|0;var b=0.0,c=0,d=0;c=r;r=r+16|0;switch((j[a+8>>1]&255)<<24>>24){case 1:{a=1;break}case 2:{d=k[a+4>>2]|0;a=(d|0)>-1|(d|0)==-1&(k[a>>2]|0)>>>0>4294967295;break}case 3:{b=+p[a>>3];if(b>=-9223372036854775808.0&b<9223372036854775808.0)a=+_p(b,c)==0.0;else a=0;break}default:a=0}r=c;return a|0}function $E(a){a=a|0;var b=0,c=0;a=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;k[a>>2]=1644;b=a+64|0;k[b>>2]=1684;k[a+8>>2]=1664;c=a+12|0;k[c>>2]=1740;p1(a+44|0);I3(c);Qaa(a,1800);N8(b);zba(a);return}function aF(a){a=a|0;var b=0,c=0,d=0;d=r;r=r+16|0;b=d+8|0;c=d;if(!(k[a+124>>2]|0)){k[a+140>>2]=k[(k[(k[a+128>>2]|0)+916>>2]|0)+640>>2];k[c>>2]=1276;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];xx(a+180|0,a,b)|0;hl(a)}r=d;return}function bF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a=b;while(1){if((d|0)==(e|0)){g=7;break}if((a|0)==(c|0)){a=-1;break}b=i[a>>0]|0;f=i[d>>0]|0;if(b<<24>>24<f<<24>>24){a=-1;break}if(f<<24>>24<b<<24>>24){a=1;break}d=d+1|0;a=a+1|0}if((g|0)==7)a=(a|0)!=(c|0)&1;return a|0}function cF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=a+36|0;d=DT(e,b)|0;if(!d){d=cW(32)|0;a=a+52|0;f=h_(k[a>>2]|0,c)|0;jJ(d,f,b,c,(k[a>>2]|0)+2088|0);if(!(YQ(e,b,d)|0)){dG(d);zba(d);d=0}}return d|0}function dF(a){a=a|0;var b=0,c=0,d=0,e=0;d=a+4|0;Rb[k[(k[d>>2]|0)+8>>2]&2047](d);b=k[a+12>>2]|0;c=a+8|0;a=b;if((a|0)!=(c|0))do{e=b;b=k[a+4>>2]|0;e=k[e+8>>2]|0;Rb[k[(k[e>>2]|0)+12>>2]&2047](e);a=b}while((a|0)!=(c|0));Rb[k[(k[d>>2]|0)+12>>2]&2047](d);return}function eF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+64|0;e=d;HA(e,0,b,c);k[e>>2]=15840;c=k[a+8>>2]|0;k[e+44>>2]=(k[a+4>>2]|0)+c;k[e+48>>2]=(k[a+12>>2]|0)-c;c=k[a+28>>2]|0;hc[k[(k[c>>2]|0)+4>>2]&7](c,e,+p[a+40>>3]);O3(e);r=d;return}function fF(a,b){a=a|0;b=b|0;if(!b)return;else{fF(a,k[b>>2]|0);fF(a,k[b+4>>2]|0);zba(b);return}}function gF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;d=i[a+11>>0]|0;if(d<<24>>24<0){d=k[a+4>>2]|0;a=k[a>>2]|0}else d=d&255;i[e>>0]=b;if(d>>>0>c>>>0){e=K_(a+c|0,d-c|0,e)|0;a=(e|0)==0?-1:e-a|0}else a=-1;r=f;return a|0}function hF(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-340|0;k[d>>2]=e;fl(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function iF(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=25996;d=a+8|0;e=a+12|0;c=0;while(1){b=k[d>>2]|0;if(c>>>0>=(k[e>>2]|0)-b>>2>>>0)break;b=k[b+(c<<2)>>2]|0;if(b|0)oU(b)|0;c=c+1|0}p1(a+144|0);KH(d);return}function jF(a){a=a|0;var b=0,c=0,d=0;b=a+44|0;d=k[b>>2]|0;c=k[a+24>>2]|0;if(d>>>0<c>>>0){k[b>>2]=c;d=c}if(k[a+48>>2]&8){b=a+16|0;c=k[b>>2]|0;if(c>>>0<d>>>0){k[b>>2]=d;c=d}b=k[a+12>>2]|0;if(b>>>0<c>>>0)b=l[b>>0]|0;else b=-1}else b=-1;return b|0}function kF(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+88|0;MM(d,b)|0;c=a+52|0;b=i[c+11>>0]|0;if(b<<24>>24<0)b=k[a+56>>2]|0;else b=b&255;if(!b)MM(c,d)|0;xg(a);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0;Bt(a,b);c=a+56|0;d=k[c>>2]|0;if((k[a+44>>2]|0)==1)vz(b,d,k[c+4>>2]|0);else{i[k[b>>2]>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;k[b>>2]=(k[b>>2]|0)+4}return}function mF(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+16|0;c=b+8|0;e=b;k[a+4>>2]=0;k[a>>2]=6792;d=a+8|0;i[a+16>>0]=0;k[a+12>>2]=-1;k[d>>2]=1500;k[a+20>>2]=0;k[e>>2]=1256;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];Ow(d,a,c)|0;r=b;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+8|0;j[c>>1]=j[c>>1]&-512|260;k[a+12>>2]=0;c=iC(b)|0;c=c>>>0>2147483646?2147483646:c;d=lc(c+1|0)|0;if(!d){c=666;a=102695;b=c+39|0;do{i[c>>0]=i[a>>0]|0;c=c+1|0;a=a+1|0}while((c|0)<(b|0));Ib(123)}else{fE(d|0,b|0,c|0)|0;i[d+c>>0]=0;k[a>>2]=d;return}}function oF(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-372|0;k[d>>2]=e;Ej(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function pF(a){a=a|0;k[a>>2]=8284;qL(a+60|0);pD(a+44|0,k[a+48>>2]|0);VG(a+16|0);pD(a+4|0,k[a+8>>2]|0);return}function qF(a,b){a=a|0;b=b|0;var c=0;b=r;r=r+16|0;c=b;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,50642,6);AE(a+96|0,c);p1(c);JA(a);r=b;return}function rF(a){a=a|0;var b=0,c=0;b=a+11|0;if((i[b>>0]|0)<0){i[k[a>>2]>>0]=0;k[a+4>>2]=0}else{i[a>>0]=0;i[b>>0]=0}j[a+36>>1]=80;i[a+38>>0]=0;Px(a+12|0,1,47)|0;c=a+24|0;b=c+11|0;if((i[b>>0]|0)<0){i[k[c>>2]>>0]=0;k[a+28>>2]=0}else{i[c>>0]=0;i[b>>0]=0}return}function sF(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-16|0;k[d>>2]=e;m2(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function tF(a){a=a|0;var b=0,c=0,d=0.0,e=0.0,f=0.0,g=0;c=k[a+24>>2]|0;b=k[(k[c+908>>2]|0)+8>>2]|0;g=k[a+20>>2]|0;f=+p[c+976>>3];e=+p[c+968>>3];d=+p[c+960>>3];c=k[b+2056>>2]|0;a=sX(b)|0;mb(147,g|0,+f,+e,+d,c|0,a|0,W8(b)|0)|0;return}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+4|0;g=k[d>>2]|0;f=k[a>>2]|0;e=(g-f|0)/20|0;if(e>>>0>=b>>>0){if(e>>>0>b>>>0?(c=f+(b*20|0)|0,(g|0)!=(c|0)):0)k[d>>2]=g+(~(((g+-20-c|0)>>>0)/20|0)*20|0)}else Zl(a,b-e|0);return}function vF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;d=r;r=r+16|0;c=d;if((k[b>>2]|0)!=(k[b+4>>2]|0)){b=a+208|0;e=+((sH(b)|0)>>>0);D0(c,e,Rv(b)|0);b=k[a+36>>2]|0;e=+yV(c);p[b+80>>3]=e}r=d;return}function wF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=b;k[c>>2]=d;b=k[a>>2]|0;if(k[b>>2]|0){k[a>>2]=k[b>>2];d=k[c>>2]|0}mk(k[a+4>>2]|0,d);a=a+8|0;k[a>>2]=(k[a>>2]|0)+1;return}function xF(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=a+4|0;g=k[f>>2]|0;e=g+1|0;k[f>>2]=e;b=k[a>>2]|0;d=l[(k[b>>2]|0)+g>>0]|0;c=g+2|0;k[f>>2]=c;e=l[(k[b>>2]|0)+e>>0]|0;a=g+3|0;k[f>>2]=a;c=l[(k[b>>2]|0)+c>>0]|0;k[f>>2]=g+4;return e<<16|d<<24|c<<8|(l[(k[b>>2]|0)+a>>0]|0)|0}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;f=r;r=r+16|0;c=f+8|0;d=f;p[a>>3]=-2.0;e=a+8|0;p[e>>3]=-1.0;if(EU(b,c,d)|0){g=+p[d>>3];p[a>>3]=+p[c>>3];p[e>>3]=g}r=f;return}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;$n(a,b);e=a+32|0;d=a+36|0;a=k[e>>2]|0;if((k[d>>2]|0)!=(a|0)){c=0;do{f=k[a+(c<<2)>>2]|0;Sb[k[(k[f>>2]|0)+12>>2]&511](f,b);c=c+1|0;a=k[e>>2]|0}while(c>>>0<(k[d>>2]|0)-a>>2>>>0)}return}function AF(a){a=a|0;var b=0,c=0;b=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;k[b>>2]=1644;a=b+64|0;k[a>>2]=1684;k[b+8>>2]=1664;c=b+12|0;k[c>>2]=1740;p1(b+44|0);I3(c);Qaa(b,1800);N8(a);return}function BF(a,b,c){a=a|0;b=b|0;c=c|0;b=ub(44,k[a+56>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0;a=b;if(!b)a=0;else{bx(c,0,-1)|0;xX(c,0,a)|0;wc(a);a=1}return a|0}function CF(a){a=a|0;var b=0,c=0,d=0,e=0;d=k[4883]|0;if((k[d+76>>2]|0)>-1)e=Eba(d)|0;else e=0;do if((Y8(a,d)|0)<0)a=1;else{if((i[d+75>>0]|0)!=10?(b=d+20|0,c=k[b>>2]|0,c>>>0<(k[d+16>>2]|0)>>>0):0){k[b>>2]=c+1;i[c>>0]=10;a=0;break}a=(wy(d,10)|0)<0}while(0);if(e|0)Dba(d);return a<<31>>31|0}function DF(a){a=a|0;var b=0.0,c=0,d=0;c=r;r=r+16|0;switch((j[a+8>>1]&255)<<24>>24){case 1:{d=k[a+4>>2]|0;a=(d|0)>-1|(d|0)==-1&(k[a>>2]|0)>>>0>4294967295;break}case 2:{a=1;break}case 3:{b=+p[a>>3];if(b>=0.0&b<18446744073709551616.0)a=+_p(b,c)==0.0;else a=0;break}default:a=0}r=c;return a|0}function EF(a){a=a|0;var b=0,c=0,d=0;JA(a);b=a+140|0;tB(a+180|0,(k[b>>2]|0)*1e3|0)|0;d=(k[a+128>>2]|0)+916|0;c=$(k[b>>2]|0,k[(k[d>>2]|0)+644>>2]|0)|0;k[b>>2]=c;d=k[(k[d>>2]|0)+712>>2]|0;k[b>>2]=(c|0)>(d|0)?d:c;r$(a+116|0);return}function FF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16372;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function GF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16428;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function HF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16288;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function IF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16204;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function JF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16176;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function KF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16260;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function LF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16484;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function MF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16456;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function NF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16316;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function OF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16344;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function PF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+48|0;g=f;HA(g,b,c,d);k[g>>2]=16232;d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,g,+p[a+40>>3]);e=hA(a,g,0,0,e)|0;O3(g);r=f;return e|0}function QF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+4|0;g=k[d>>2]|0;f=k[a>>2]|0;e=(g-f|0)/12|0;if(e>>>0>=b>>>0){if(e>>>0>b>>>0?(c=f+(b*12|0)|0,(g|0)!=(c|0)):0)k[d>>2]=g+(~(((g+-12-c|0)>>>0)/12|0)*12|0)}else en(a,b-e|0);return}function RF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+4|0;g=k[d>>2]|0;f=k[a>>2]|0;e=(g-f|0)/20|0;if(e>>>0>=b>>>0){if(e>>>0>b>>>0?(c=f+(b*20|0)|0,(g|0)!=(c|0)):0)k[d>>2]=g+(~(((g+-20-c|0)>>>0)/20|0)*20|0)}else Ll(a,b-e|0);return}function SF(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-12|0;k[d>>2]=e;DS(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function TF(a){a=a|0;var b=0;if(k[a+32>>2]|0){b=k[a+28>>2]|0;fz(a,(k[(k[a+16>>2]|0)+(((b>>>0)/341|0)<<2)>>2]|0)+(((b>>>0)%341|0)*12|0)|0)|0;ZB(a+12|0)}return}function UF(a){a=a|0;var b=0,c=0,d=0;b=a+144|0;if(!(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(c=b,!((k[c>>2]|0)==0&(k[c+4>>2]|0)==0)):0)){d=_J()|0;c=b;k[c>>2]=d;k[c+4>>2]=M;c=a+72|0;k[c>>2]=(k[c>>2]|0)+1;dF((k[a+52>>2]|0)+596|0)}return}function VF(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=a+8|0;k[e>>2]=16;b=k[a+56>>2]|0;a=k[a+52>>2]|0;d=a;if((b|0)!=(a|0)){c=(b-a|0)/12|0;a=0;b=16;do{f=b+4|0;k[e>>2]=f;b=((k[d+(a*12|0)+4>>2]|0)-(k[d+(a*12|0)>>2]|0)>>1)+f|0;k[e>>2]=b;a=a+1|0}while(a>>>0<c>>>0)}return}function WF(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-312|0;k[d>>2]=e;Bm(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function XF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(d>>>0>4294967279)x5(a);if(d>>>0<11)i[a+11>>0]=c;else{e=d+16&-16;d=cW(e)|0;k[a>>2]=d;k[a+8>>2]=e|-2147483648;k[a+4>>2]=c;a=d}if(c|0)fE(a|0,b|0,c|0)|0;i[a+c>>0]=0;return}function YF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a=b;while(1){if((d|0)==(e|0)){g=7;break}if((a|0)==(c|0)){a=-1;break}b=k[a>>2]|0;f=k[d>>2]|0;if((b|0)<(f|0)){a=-1;break}if((f|0)<(b|0)){a=1;break}d=d+4|0;a=a+4|0}if((g|0)==7)a=(a|0)!=(c|0)&1;return a|0}function ZF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)?sO(a,c)|0:0){Xk(a+24|0,c,d);AG(a,b,c)}else iJ(a,b,c);return}function _F(a,b){a=a|0;b=b|0;var c=0;c=Tn(b,67767,4)|0;Ln(c,k[a+8>>2]|0)|0;b=Tn(b,68174,12)|0;Gn(b,j[a+44>>1]|0)|0;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;d=i[b+11>>0]|0;e=d<<24>>24<0;d=e?k[b+4>>2]|0:d&255;XF(a,e?k[b>>2]|0:b,d,d+1|0);Jx(a,c);return}function aG(a,b){a=a|0;b=b|0;var c=0;c=r;r=r+160|0;a=c;if((k[2783]|0)<5){Qd(a,50909,99,4,0,0,0);jr(Tn(a,51784,50)|0,b)|0;hi(a)}r=c;return}function bG(a,b){a=a|0;b=b|0;var c=0,d=0;if(b|0){c=a+348|0;d=cW(32)|0;nv(d,b);b=cW(12)|0;k[b+8>>2]=d;k[b+4>>2]=c;d=k[c>>2]|0;k[b>>2]=d;k[d+4>>2]=b;k[c>>2]=b;b=a+356|0;k[b>>2]=(k[b>>2]|0)+1;Kl(a,0)}return}function cG(a){a=a|0;var b=0,c=0,d=0,e=0;c=a+4|0;d=k[c>>2]|0;b=k[d+2024>>2]|0;if(b>>>0<(b+(x9(d+2024|0)|0)|0)>>>0)do{Aj(a,b)|0;b=b+1|0;d=(k[c>>2]|0)+2024|0;e=k[d>>2]|0}while(b>>>0<(e+(x9(d)|0)|0)>>>0);return}function dG(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+4|0;b=k[f>>2]|0;c=k[a>>2]|0;if((b|0)!=(c|0)){e=0;do{d=k[c+(e<<2)>>2]|0;if(d){Ta(20,k[d>>2]|0)|0;zba(d);c=k[a>>2]|0;b=k[f>>2]|0}e=e+1|0}while(e>>>0<b-c>>2>>>0)}mT(a);return}function eG(a){a=a|0;var b=0,c=0;k[a>>2]=17792;k[a+8>>2]=0;k[a+4>>2]=17892;k[a+16>>2]=0;k[a+12>>2]=17912;b=a+20|0;K6(b);k[b>>2]=8536;b=a+28|0;c=b+48|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(c|0));k[a+80>>2]=0;k[a+76>>2]=17932;i[a+84>>0]=0;i[a+85>>0]=0;k[a>>2]=17952;return}function fG(a){a=a|0;var b=0,c=0,d=0.0,e=0.0;b=a+2024|0;e=+((k[b>>2]|0)>>>0);d=+((x9(b)|0)>>>0);c=a+2056|0;if((k[c>>2]|0)>>>0>~~(e+d*+p[a+1416>>3])>>>0){e=+((x9(b)|0)>>>0);b=~~(e*+p[a+1424>>3]);c=k[c>>2]|0;_s(a,c>>>0>b>>>0?c-b|0:0,0)}return}function gG(a){a=a|0;var b=0;Zu(a+40|0,k[a+44>>2]|0);p1(a+20|0);b=a+8|0;k[b>>2]=11024;aE(b);k[a>>2]=11024;aE(a);return}function hG(a){a=a|0;var b=0,c=0;a=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;k[a>>2]=4216;b=a+56|0;k[b>>2]=4236;c=a+4|0;k[c>>2]=1740;p1(a+36|0);I3(c);Qaa(a,4248);N8(b);zba(a);return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a=cW(24)|0;f=zo(b)|0;e=M;c=dO(b)|0;b=dO(b)|0;k[a+4>>2]=6;k[a>>2]=8252;d=a+8|0;k[d>>2]=f;k[d+4>>2]=e;j[a+16>>1]=c;j[a+18>>1]=b;return a|0}function jG(a,b){a=a|0;b=b|0;if((ur(a+4|0,b)|0)==(a+8|0))a=(nn(a+44|0,b)|0)!=0;else a=1;return a|0}function kG(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;b=r;r=r+16|0;i=b+4|0;a=b;k[i>>2]=c;k[a>>2]=f;g=Qf(c,d,i,f,g,a,1114111,0)|0;k[e>>2]=k[i>>2];k[h>>2]=k[a>>2];r=b;return g|0}function lG(a,b){a=a|0;b=b|0;var c=0;c=Tn(b,67767,4)|0;Ln(c,k[a+8>>2]|0)|0;b=Tn(b,67772,8)|0;Ln(b,k[a+48>>2]|0)|0;return}function mG(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-12|0;k[d>>2]=e;DS(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function nG(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-12|0;k[d>>2]=e;p1(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function oG(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;b=r;r=r+16|0;i=b+4|0;a=b;k[i>>2]=c;k[a>>2]=f;g=zf(c,d,i,f,g,a,1114111,0)|0;k[e>>2]=k[i>>2];k[h>>2]=k[a>>2];r=b;return g|0}function pG(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;b=r;r=r+16|0;i=b+4|0;a=b;k[i>>2]=c;k[a>>2]=f;g=Yh(c,d,i,f,g,a,1114111,0)|0;k[e>>2]=k[i>>2];k[h>>2]=k[a>>2];r=b;return g|0}function qG(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;b=r;r=r+16|0;i=b+4|0;a=b;k[i>>2]=c;k[a>>2]=f;g=Vf(c,d,i,f,g,a,1114111,0)|0;k[e>>2]=k[i>>2];k[h>>2]=k[a>>2];r=b;return g|0}function rG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;mD(d,0);if(ZH(a,b,d)|0)a=ln(d,c)|0;else a=0;Lv(d);r=e;return a|0}function sG(a,b){a=a|0;b=b|0;if(!b)return;else{sG(a,k[b>>2]|0);sG(a,k[b+4>>2]|0);zba(b);return}}function tG(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=k[a+28>>2]|0;if((e|0)>0){d=k[a+24>>2]|0;a=0;b=0;c=0;do{f=k[d+(c<<2)>>2]|0;b=((f|0)<0?0:f)+b|0;a=(f>>>31^1)+a|0;c=c+1|0}while((c|0)<(e|0));if((a|0)>0)a=(b|0)/(a|0)|0;else a=0}else a=0;return a|0}function uG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;mD(d,0);if(JT(a,b,d)|0)a=kf(d,c)|0;else a=0;Lv(d);r=e;return a|0}function vG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;mD(d,0);if(ZH(a,b,d)|0)a=IA(d,c)|0;else a=0;Lv(d);r=e;return a|0}function wG(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+4>>2]|0;c=a+8|0;d=k[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-4|0;k[c>>2]=e;d=e}c=k[a>>2]|0;do if(c|0){b=k[a+16>>2]|0;if((b|0)==(c|0)){i[b+112>>0]=0;break}else{zba(c);break}}while(0);return}function xG(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;b=a+4|0;Rb[k[(k[b>>2]|0)+8>>2]&2047](b);AB(a+8|0,d)|0;Rb[k[(k[b>>2]|0)+12>>2]&2047](b);r=c;return}function yG(a){a=a|0;var b=0,c=0;c=a+-4|0;k[c>>2]=6464;b=a;k[b>>2]=6492;p1(a+28|0);k[c>>2]=1972;k[b>>2]=2e3;Bo(c);dH(a+4|0,k[a+8>>2]|0);k[b>>2]=2024;return}function zG(a,b){a=a|0;b=b|0;var c=0,d=0;k[a>>2]=16640;d=a+4|0;Baa(d);k[a>>2]=16580;k[d>>2]=16612;c=a+8|0;k[c>>2]=-1;k[a+12>>2]=-1;tZ(a+16|0,d);p[a+40>>3]=0.0;a=k[c>>2]|0;if((a|0)!=-1){Ta(2,a|0)|0;k[c>>2]=-1}k[c>>2]=b;return}function AG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;if((DT((k[d>>2]|0)+2060|0,c)|0?!(bX((k[d>>2]|0)+2024|0,c)|0):0)?Ny(a,c,b)|0:0)fc[k[(k[a>>2]|0)+88>>2]&255](a,b,c);return}function BG(a){a=a|0;var b=0,c=0;b=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;k[b>>2]=4216;a=b+56|0;k[a>>2]=4236;c=b+4|0;k[c>>2]=1740;p1(b+36|0);I3(c);Qaa(b,4248);N8(a);return}function CG(a){a=a|0;var b=0,c=0,d=0,e=0;c=Ml(a)|0;if(c){b=c+20|0;d=i[b+11>>0]|0;if(d<<24>>24<0)c=k[c+24>>2]|0;else c=d&255;if(!c)e=6}else e=6;if((e|0)==6)b=(ui(a+8|0,k[a+4>>2]|0)|0)+20|0;return b|0}function DG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;vb(97,k[a+440>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,((i[c+11>>0]|0)<0?k[c>>2]|0:c)|0,((i[d+11>>0]|0)<0?k[d>>2]|0:d)|0,((i[e+11>>0]|0)<0?k[e>>2]|0:e)|0)|0;return}function EG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(c|0)==0;if(a-b>>2>>>0<c>>>0){if(!d)do{c=c+-1|0;k[a+(c<<2)>>2]=k[b+(c<<2)>>2]}while((c|0)!=0)}else if(!d){d=b;b=a;while(1){c=c+-1|0;k[b>>2]=k[d>>2];if(!c)break;else{d=d+4|0;b=b+4|0}}}return a|0}function FG(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-12|0;k[d>>2]=e;p1(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function GG(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;p[d>>3]=+p[b>>3];b=Ry(a+4|0,d)|0;if((b|0)==(a+8|0))b=-1;else b=k[b+24>>2]|0;r=c;return b|0}function HG(a,b){a=a|0;b=b|0;if(!b)return;else{HG(a,k[b>>2]|0);HG(a,k[b+4>>2]|0);zba(b);return}}function IG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;vb(124,k[a+384>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,((i[c+11>>0]|0)<0?k[c>>2]|0:c)|0,((i[d+11>>0]|0)<0?k[d>>2]|0:d)|0,((i[e+11>>0]|0)<0?k[e>>2]|0:e)|0)|0;return}function JG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;c=d;if(!(i[a+133>>0]|0)){e=cW(88)|0;BA(e,b);Hg(a,-1,e);k[c+4>>2]=17;k[c>>2]=8108;j[c+8>>1]=b;fB(k[a+108>>2]|0,c)}r=d;return}function KG(a){a=a|0;var b=0,c=0;a=a+-8|0;k[a>>2]=1644;b=a+64|0;k[b>>2]=1684;k[a+8>>2]=1664;c=a+12|0;k[c>>2]=1740;p1(a+44|0);I3(c);Qaa(a,1800);N8(b);zba(a);return}function LG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0;e=r;r=r+16|0;f=e;d=+Waa(a,f);p[b>>3]=d;b=k[f>>2]|0;if(!(i[b>>0]|0)){p[c>>3]=-1.0;a=0}else{a=b+1|0;if(!(i[a>>0]|0))d=-1.0;else d=+Waa(a,0);p[c>>3]=d;a=(i[b>>0]|0)==45}r=e;return a|0}function MG(a,b){a=a|0;b=b|0;var c=0,d=0;Sb[k[(k[b>>2]|0)+112>>2]&511](b,0);c=a+816|0;d=cW(12)|0;k[d+8>>2]=b;k[d+4>>2]=c;b=k[c>>2]|0;k[d>>2]=b;k[b+4>>2]=d;k[c>>2]=d;c=a+824|0;b=k[c>>2]|0;k[c>>2]=b+1;if(!b)zH(a);return}function NG(a){a=a|0;var b=0;b=a+52|0;if(!((R9((k[b>>2]|0)+424|0)|0)!=0?(R9((k[b>>2]|0)+424|0)|0)!=1:0)){i[a+119>>0]=0;dF(a+20|0);b=k[(k[b>>2]|0)+2164>>2]|0;Rb[k[(k[b>>2]|0)+56>>2]&2047](b)}return}function OG(a){a=a|0;var b=0,c=0,d=0;i[a+128>>0]=1;b=a+64|0;c=b;if((k[c>>2]|0)==0&(k[c+4>>2]|0)==0){a=(k[(k[a+52>>2]|0)+916>>2]|0)+1040|0;c=k[a>>2]|0;a=k[a+4>>2]|0;d=_J()|0;a=n_(d|0,M|0,c|0,a|0)|0;c=b;k[c>>2]=a;k[c+4>>2]=M}return}function PG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[b>>2]|0;d=k[b+4>>2]|0;if((c|0)!=(d|0)){b=c;do{c=k[b>>2]|0;if(c|0){e=c+84|0;Qb[k[(k[a>>2]|0)+144>>2]&15](a,e,e,c+36|0,c+96|0)}b=b+4|0}while((b|0)!=(d|0))}return}function QG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+4|0;g=k[d>>2]|0;f=k[a>>2]|0;e=g-f>>4;if(e>>>0>=b>>>0){if(e>>>0>b>>>0?(c=f+(b<<4)|0,(g|0)!=(c|0)):0)k[d>>2]=g+(~((g+-16-c|0)>>>4)<<4)}else Zk(a,b-e|0);return}function RG(a){a=a|0;var b=0,c=0;b=a+-4|0;k[b>>2]=6464;c=a;k[c>>2]=6492;p1(a+28|0);k[b>>2]=1972;k[c>>2]=2e3;Bo(b);dH(a+4|0,k[a+8>>2]|0);zba(b);return}function SG(a){a=a|0;var b=0,c=0,d=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{k[d>>2]=c+-16;Iv(c+-12|0);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function TG(a){a=a|0;var b=0,c=0,d=0,e=0;k[a+36>>2]=0;c=k[a+24>>2]|0;d=a+28|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-12|0;k[d>>2]=e;p1(e);b=k[d>>2]|0}while((b|0)!=(c|0));k[a+40>>2]=0;k[a+44>>2]=0;p[a+56>>3]=0.0;return}function UG(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;if((Vd(w4(k[a>>2]|0)|0)|0)==3)b=(EH(laa(w4(k[a>>2]|0)|0)|0,+(b>>>0)+4294967296.0*+(c>>>0))|0)+1|0;return b|0}function VG(a){a=a|0;var b=0,c=0;Jn(a);b=k[a+4>>2]|0;c=k[a+8>>2]|0;if((b|0)!=(c|0))do{zba(k[b>>2]|0);b=b+4|0}while((b|0)!=(c|0));SQ(a);return}function WG(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0;d=k[a+452>>2]|0;f=a+448|0;if((d|0)==(f|0))c=-1.0;else{c=-1.0;e=d;a=d;do{a=k[a+8>>2]|0;if(c<0.0)c=+dc[k[(k[a>>2]|0)+100>>2]&3](a,b);a=k[e+4>>2]|0;e=a}while((e|0)!=(f|0))}return +c}function XG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+c|0;if((c|0)>=20){b=b&255;f=a&3;g=b|b<<8|b<<16|b<<24;e=d&~3;if(f){f=a+4-f|0;while((a|0)<(f|0)){i[a>>0]=b;a=a+1|0}}while((a|0)<(e|0)){k[a>>2]=g;a=a+4|0}}while((a|0)<(d|0)){i[a>>0]=b;a=a+1|0}return a-c|0}function YG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c;mD(a,0);e=N6(a,43158)|0;J$(d,+p[b+8>>3]);GA(e,d)|0;Lv(d);a=N6(a,55023)|0;fY(d,k[b+16>>2]|0);GA(a,d)|0;Lv(d);r=c;return}function ZG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;c=d;if(b|0){e=k[a+20>>2]|0;a=k[b+56>>2]|0;a1(c,b);yb(146,e|0,a|0,((i[c+11>>0]|0)<0?k[c>>2]|0:c)|0)|0;p1(c)}r=d;return}function _G(a){a=a|0;var b=0,c=0;b=a+-8|0;k[b>>2]=1644;a=b+64|0;k[a>>2]=1684;k[b+8>>2]=1664;c=b+12|0;k[c>>2]=1740;p1(b+44|0);I3(c);Qaa(b,1800);N8(a);return}function $G(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[a+12>>2]|0;a=k[a+8>>2]|0;e=a;a:do if((c|0)==(a|0))a=0;else{d=c-a>>2;c=0;while(1){a=k[e+(c<<2)>>2]|0;c=c+1|0;if((k[a+60>>2]|0)==(b|0))break a;if(c>>>0>=d>>>0){a=0;break}}}while(0);return a|0}function aH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(!d){e=cW(12)|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,b,c);d=cW(8)|0;k[d>>2]=7720;k[d+4>>2]=e;nL(a+168|0,d)}return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;k[a>>2]=0;d=a+4|0;k[d>>2]=0;k[a+8>>2]=0;if(b|0){nQ(a,b);a=k[d>>2]|0;do{k[a>>2]=k[c>>2];a=(k[d>>2]|0)+4|0;k[d>>2]=a;b=b+-1|0}while((b|0)!=0)}return}function cH(a,b){a=a|0;b=b|0;var c=0;MJ(a+16|0,b,0);fJ(a,b,0)|0;c=a+32|0;if((k[c>>2]|0)==(b|0)?(b=b+1|0,k[c>>2]=b,TJ(a,b,0)|0):0)do{b=(k[c>>2]|0)+1|0;k[c>>2]=b}while(TJ(a,b,0)|0);return}function dH(a,b){a=a|0;b=b|0;if(!b)return;else{dH(a,k[b>>2]|0);dH(a,k[b+4>>2]|0);zba(b);return}}function eH(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;if((Vd(w4(k[a>>2]|0)|0)|0)==3)b=EH(laa(w4(k[a>>2]|0)|0)|0,+(b>>>0)+4294967296.0*+(c>>>0))|0;return b|0}function fH(a){a=a|0;var b=0;k[a>>2]=6464;b=a+4|0;k[b>>2]=6492;p1(a+32|0);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function gH(a,b){a=a|0;b=b|0;var c=0,d=0;a=dO(b)|0;d=f2(b)|0;c=cW(24)|0;zX(c,FX(b)|0,d);b=cW(16)|0;k[b+4>>2]=18;k[b>>2]=8140;k[b+8>>2]=c;j[b+12>>1]=a;return b|0}function hH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0;e=k[c>>2]|0;f=k[c+4>>2]|0;if((e|0)==(f|0))d=0.0;else{d=0.0;c=e;do{d=d+ +o[c+32>>2];c=c+96|0}while((c|0)!=(f|0))}b=k[(k[b+44>>2]|0)+28>>2]|0;D0(a,d*+(b|0),b);return}function iH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=k[(k[a+36>>2]|0)+72+(k[a+268>>2]<<2)>>2]|0;e=d+20|0;if(!(i[e>>0]|0)){f=d+24|0;jR(f,c);k[d+28>>2]=c;fE(k[f>>2]|0,b|0,c|0)|0;i[e>>0]=1;wT(a,0,0)}return}function jH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+4|0;g=k[d>>2]|0;f=k[a>>2]|0;e=g-f>>3;if(e>>>0>=b>>>0){if(e>>>0>b>>>0?(c=f+(b<<3)|0,(g|0)!=(c|0)):0)k[d>>2]=g+(~((g+-8-c|0)>>>3)<<3)}else El(a,b-e|0);return}function kH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+48|0;MM(e,b)|0;b=i[e+11>>0]|0;if(b<<24>>24<0){e=k[e>>2]|0;b=k[a+52>>2]|0}else b=b&255;return Mj(a,e,e+b|0,c,d)|0}function lH(a){a=a|0;var b=0,c=0;k[a>>2]=1644;b=a+64|0;k[b>>2]=1684;k[a+8>>2]=1664;c=a+12|0;k[c>>2]=1740;p1(a+44|0);I3(c);Qaa(a,1800);N8(b);zba(a);return}function mH(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0,g=0,h=0;e=k[a+124>>2]|0;h=k[a+128>>2]|0;f=h;g=e;if(((e|0)!=(h|0)?(d=((b|0)/(k[(k[a+4>>2]|0)+1576>>2]|0)|0)-(k[e+48>>2]|0)|0,(d|0)>=0):0)?d>>>0<((f-g|0)/96|0)>>>0:0)c=+p[e+(d*96|0)+40>>3];else c=-1.0;return +c}function nH(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;if((Vd(w4(k[a+4>>2]|0)|0)|0)==3?(c=b+16|0,c=eH(a,k[c>>2]|0,k[c+4>>2]|0)|0,(c|0)!=-1):0){k[a+204>>2]=k[d>>2];k[a+208>>2]=c}return}function oH(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+112|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)?!((i[c>>0]|0)!=0|b^1):0){d=(k[(k[a+4>>2]|0)+2056>>2]|0)+-1|0;aM(a+24|0);Sb[k[(k[a>>2]|0)+96>>2]&511](a,d)}i[c>>0]=b&1;return}function pH(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=a+8|0;k[b>>2]=16;j=k[a+48>>2]|0;f=j<<3&8;g=f|16;h=(j&2|0)==0;f=f|20;c=h?g:f;i=(j&8|0)==0;e=c+4|0;c=i?c:e;d=(j&16|0)==0;a=c+4|0;k[b>>2]=(j&32|0)==0?(d?(i?(h?g:f):e):a):(d?c:a)+4|0;return}function qH(a){a=a|0;var b=0,c=0,d=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{k[d>>2]=c+-32;p1(c+-16|0);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function rH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=k[a+4>>2]|0;if(f|0){e=k[a+8>>2]|0;g=k[a+12>>2]|0;a=f+(g>>1)|0;if(g&1)e=k[(k[a>>2]|0)+e>>2]|0;jc[e&63](a,b,c,d)}return}function sH(a){a=a|0;var b=0;b=$B(a)|0;do if(!b){b=gC(a)|0;if(b|0){b=k[b+4>>2]|0;break}b=mC(a)|0;if(!b)b=0;else b=k[b+4>>2]|0}else b=k[b+4>>2]|0;while(0);return b|0}function tH(a){a=a|0;var b=0,c=0;if(((k[a+2084>>2]|0)==3?i[a+2156>>0]|0:0)?(c=a+2268|0,(i[c>>0]|0)==0):0){b=a+424|0;if((Vd(k[(k[a+1256>>2]|0)+200>>2]|0)|0)==2)SH(b)|0;else OH(b)|0;i[c>>0]=1}return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if(!(i[a+44>>0]|0)){d=0;while(1){if((d|0)>=(c|0))break a;if((cc[k[(k[a>>2]|0)+52>>2]&127](a,k[b>>2]|0)|0)==-1)break a;d=d+1|0;b=b+4|0}}else d=JL(b,4,c,k[a+32>>2]|0)|0;while(0);return d|0}function vH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if(!(i[a+44>>0]|0)){d=0;while(1){if((d|0)>=(c|0))break a;if((cc[k[(k[a>>2]|0)+52>>2]&127](a,l[b>>0]|0)|0)==-1)break a;d=d+1|0;b=b+1|0}}else d=JL(b,1,c,k[a+32>>2]|0)|0;while(0);return d|0}function wH(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((a|0)==(k[b+8>>2]|0))Vt(0,b,c,d,e);else{a=k[a+8>>2]|0;_b[k[(k[a>>2]|0)+20>>2]&15](a,b,c,d,e,f)}return}function xH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a=cW(24)|0;e=zo(b)|0;d=M;c=zo(b)|0;k[a+4>>2]=19;k[a>>2]=8124;b=a+8|0;k[b>>2]=e;k[b+4>>2]=d;b=a+16|0;k[b>>2]=c;k[b+4>>2]=M;return a|0}function yH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+40|0;d=(k[c>>2]|0)+1|0;e=k[a+24>>2]|0;if(d>>>0<(((k[a+28>>2]|0)-e|0)/12|0)>>>0){k[c>>2]=d;MM(b,e+(d*12|0)|0)|0;a=1}else a=0;return a|0}function zH(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+824|0;if(k[b>>2]|0){d=k[a+820>>2]|0;c=k[d+8>>2]|0;e=d+4|0;k[(k[d>>2]|0)+4>>2]=k[e>>2];k[k[e>>2]>>2]=k[d>>2];k[b>>2]=(k[b>>2]|0)+-1;zba(d);JG(c,k[(k[a+20>>2]|0)+1932>>2]|0)}return}function AH(a){a=a|0;var b=0;k[a>>2]=6464;b=a+4|0;k[b>>2]=6492;p1(a+32|0);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);zba(a);return}function BH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=k[a+8>>2]|0;h=k[a+12>>2]|0;g=(k[a+4>>2]|0)+(h>>1)|0;if(!(h&1))a=f;else a=k[(k[g>>2]|0)+f>>2]|0;Qb[a&15](g,b,c,d,e);return}function CH(a){a=a|0;var b=0,c=0,d=0;b=a+4|0;d=(C9(k[b>>2]|0)|0)+204|0;d=k[d>>2]|0;if((d|0)!=0?(c=Ub[k[(k[d>>2]|0)+64>>2]&511](d)|0,(c|0)>=0):0)a=+(c|0)>=+p[(k[b>>2]|0)+1640>>3];else a=WR(a)|0;return a|0}function DH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=a+4|0;d=k[f>>2]|0;h=k[a>>2]|0;g=d-h>>2;if(g>>>0>=b>>>0){if(g>>>0>b>>>0?(e=h+(b<<2)|0,(d|0)!=(e|0)):0)k[f>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else _l(a,b-g|0,c);return}function EH(a,b){a=a|0;b=+b;var c=0,d=0;d=r;r=r+16|0;c=d;p[c>>3]=b;c=Ry(a+4|0,c)|0;if((c|0)==(a+8|0))c=-1;else c=k[c+24>>2]|0;r=d;return c|0}function FH(a,b){a=a|0;b=b|0;var c=0,d=0;Bt(a,b);if(!(k[a+48>>2]&1)){c=a+52|0;d=i[c+11>>0]|0;if(d<<24>>24<0){a=k[a+56>>2]|0;c=k[c>>2]|0}else a=d&255;d=a+1|0;fE(k[b>>2]|0,c|0,d|0)|0;k[b>>2]=(k[b>>2]|0)+d}return}function GH(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-340|0;k[d>>2]=e;fl(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function HH(a){a=a|0;var b=0,c=0;i[a+857>>0]=1;b=k[a+1048>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+16>>2]&511](b,1);c=k[a+908>>2]|0;a=a+904|0;b=c;if((b|0)!=(a|0))do{AA(k[c+8>>2]|0);c=k[b+4>>2]|0;b=c}while((b|0)!=(a|0));return}function IH(a,b){a=a|0;b=b|0;var c=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;Qm(a,b);if(b|0)do{c=46759+(Ta(28,62)|0)|0;Jx(a,i[c>>0]|0);b=b+-1|0}while((b|0)!=0);return}function JH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;k[b>>2]=0;d=a+8|0;c=a+4|0;a=0;do{f=k[d>>2]|0;e=i[(k[c>>2]|0)+f>>0]|0;k[d>>2]=f+1;a=a+1<<24>>24;e=e&255;k[b>>2]=k[b>>2]<<7|e&127}while((a&255)<4&(e&128|0)!=0);return a&255|0}function KH(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;do if(b|0){c=a+4|0;d=k[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-4|0;k[c>>2]=e;d=e}if((a+16|0)==(b|0)){i[a+128>>0]=0;break}else{zba(b);break}}while(0);return}function LH(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-372|0;k[d>>2]=e;Ej(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function MH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,b,c);AE(a+44|0,e);p1(e);r=d;return}function NH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=c+4|0;if(k[b>>2]|0){d=a+388|0;if(!(Ta(126,k[d>>2]|0)|0)){La(127,k[a+384>>2]|0,k[c>>2]|0,k[b>>2]|0,k[d>>2]|0)|0;b=1}else b=0}else b=1;return b|0}function OH(a){a=a|0;var b=0,c=0,d=0,e=0;b=cW(448)|0;cg(b,k[a+20>>2]|0);C3(b);d=cW(12)|0;k[d+8>>2]=b;k[d>>2]=a+24;c=a+28|0;e=k[c>>2]|0;k[d+4>>2]=e;k[e>>2]=d;k[c>>2]=d;a=a+32|0;k[a>>2]=(k[a>>2]|0)+1;return b|0}function PH(a){a=a|0;var b=0,c=0,d=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{k[d>>2]=b+-32;p1(b+-16|0);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function QH(a){a=a|0;var b=0,c=0;k[a>>2]=1644;b=a+64|0;k[b>>2]=1684;k[a+8>>2]=1664;c=a+12|0;k[c>>2]=1740;p1(a+44|0);I3(c);Qaa(a,1800);N8(b);return}function RH(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=k[a+4>>2]|0;g=h>>8;if(h&1)g=k[(k[d>>2]|0)+g>>2]|0;a=k[a>>2]|0;_b[k[(k[a>>2]|0)+20>>2]&15](a,b,c,d+g|0,h&2|0?e:2,f);return}function SH(a){a=a|0;var b=0,c=0,d=0,e=0;b=cW(252)|0;vh(b,k[a+20>>2]|0);W5(b);d=cW(12)|0;k[d+8>>2]=b;k[d>>2]=a+24;c=a+28|0;e=k[c>>2]|0;k[d+4>>2]=e;k[e>>2]=d;k[c>>2]=d;a=a+32|0;k[a>>2]=(k[a>>2]|0)+1;return b|0}function TH(a){a=a|0;var b=0,c=0;Oo(a);b=k[a+4>>2]|0;c=k[a+8>>2]|0;if((b|0)!=(c|0))do{zba(k[b>>2]|0);b=b+4|0}while((b|0)!=(c|0));SQ(a);return}function UH(a){a=a|0;var b=0,c=0,d=0,e=0;d=k[a>>2]|0;e=d+4|0;b=k[e>>2]|0;k[a>>2]=b;if(b|0)k[b+8>>2]=a;b=a+8|0;k[d+8>>2]=k[b>>2];c=k[b>>2]|0;if((k[c>>2]|0)==(a|0))k[c>>2]=d;else k[c+4>>2]=d;k[e>>2]=a;k[b>>2]=d;return}function VH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=b+4|0;f=k[c>>2]|0;d=f+1|0;k[c>>2]=d;e=k[k[b>>2]>>2]|0;b=l[e+f>>0]|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,e+d|0,b);k[c>>2]=(k[c>>2]|0)+b;return}function WH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=cF(a+2024|0,b,d)|0;if(b|0){if((c|0)>0)k[b+16>>2]=c;if(d|0){k[b+20>>2]=d;c=k[a+1380>>2]|0;nR(b,(((d>>>0)%(c>>>0)|0|0)!=0&1)+((d>>>0)/(c>>>0)|0)|0)}}return}function XH(a){a=a|0;var b=0,c=0,d=0,e=0;c=r;r=r+16|0;d=c+8|0;e=c;b=cW(688)|0;Gk(b);k[e>>2]=1249;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];rr(b+384|0,a,d)|0;r=c;return b|0}function YH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+16|0;g=f;b=ub(21,b|0,c|0)|0;k[g>>2]=b;k[g+4>>2]=c;jc[k[(k[a>>2]|0)+20>>2]&63](a,g,d,e);Ta(20,k[g>>2]|0)|0;r=f;return}function ZH(a,b,c){a=a|0;b=b|0;c=c|0;if(kaa(a)|0?gY(a,b)|0:0){GA(c,CZ(a,b)|0)|0;a=1}else a=0;return a|0}function _H(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-340|0;k[d>>2]=e;fl(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function $H(a){a=a|0;var b=0,c=0,d=0;c=a+8|0;if(k[c>>2]|0?(b=k[a+4>>2]|0,d=(k[a>>2]|0)+4|0,k[(k[b>>2]|0)+4>>2]=k[d>>2],k[k[d>>2]>>2]=k[b>>2],k[c>>2]=0,(b|0)!=(a|0)):0)do{d=b;b=k[b+4>>2]|0;zba(d)}while((b|0)!=(a|0));return}function aI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((i[a+445>>0]|0)==0?(d=k[a+440>>2]|0,(d|0)!=-1):0)Ma(110,d|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,((i[c+11>>0]|0)<0?k[c>>2]|0:c)|0,131,a|0,368,367)|0;return}function bI(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+8|0;k[b>>2]=16;d=k[a+48>>2]|0;c=d<<2&4|16;e=d>>>6&4;e=(d&512|0)==0?e:e+4|0;e=(d&1024|0)==0?e:e+4|0;a=($((d&2048|0)==0?e:e+4|0,(k[a+64>>2]|0)-(k[a+60>>2]|0)>>4)|0)+((d&4|0)==0?c:c+4|0)|0;k[b>>2]=a;return}function cI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(((k[a+64>>2]|0)+(k[a+44>>2]|0)|0)>(c|0)){Uk(a+24|0,c,d);jc[k[(k[a>>2]|0)+96>>2]&63](a,b,c,d)}else jc[k[(k[a>>2]|0)+100>>2]&63](a,b,c,d);return}function dI(a){a=a|0;var b=0;b=k[a+20>>2]|0;b=k[(k[(k[a+8>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0;QJ(a+4|0);if(k[a+24>>2]|0)tB(a+28|0,0)|0;Sb[k[(k[a>>2]|0)+8>>2]&511](a,b);return}function eI(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;a=a+104|0;if(k[a>>2]|0){NO(b);F$(b,1.0,99);F$(b,0.0,105);P_(k[a>>2]|0,b);_R(b)}r=c;return}function fI(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+4>>2]|0;do if(((k[a>>2]|0)-c|0)>>>0<b>>>0){d=c+b|0;k[a>>2]=d;b=a+8|0;c=k[b>>2]|0;if(!c){d=lc(d)|0;k[b>>2]=d;break}else{d=OD(c,d)|0;k[b>>2]=d;break}}while(0);return}function gI(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-372|0;k[d>>2]=e;Ej(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function hI(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-16|0;k[d>>2]=e;m2(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function iI(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;if((i[b+11>>0]|0)<0)wE(a,k[b>>2]|0,k[b+4>>2]|0);else{k[a>>2]=k[b>>2];k[a+4>>2]=k[b+4>>2];k[a+8>>2]=k[b+8>>2]}return}function jI(a,b){a=a|0;b=b|0;var c=0;c=b+8|0;c=eH(a,k[c>>2]|0,k[c+4>>2]|0)|0;b=k[a+124>>2]|0;a=k[b>>2]|0;if(c>>>0>=a>>>0?((k[b+4>>2]|0)+a|0)>>>0>c>>>0:0){c=c-a|0;a=k[b+8>>2]|0;k[a+(c<<3)>>2]=0;k[a+(c<<3)+4>>2]=0}return}function kI(a){a=a|0;var b=0,c=0,d=0;c=a+4|0;d=k[c>>2]|0;b=k[d>>2]|0;k[c>>2]=b;if(b|0)k[b+8>>2]=a;b=a+8|0;k[d+8>>2]=k[b>>2];c=k[b>>2]|0;if((k[c>>2]|0)==(a|0))k[c>>2]=d;else k[c+4>>2]=d;k[d>>2]=a;k[b>>2]=d;return}function lI(a){a=a|0;var b=0,c=0,d=0,e=0;e=cW(8)|0;k[e>>2]=7988;i[e+4>>0]=0;k[a+112>>2]=e;c=a+4|0;d=(k[(k[c>>2]|0)+1380>>2]|0)*100|0;b=cW(112)|0;om(b,k[a+104>>2]|0,e,d);i[b+56>>0]=i[(k[c>>2]|0)+1496>>0]|0;return b|0}function mI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+8|0;c=(k[e>>2]|0)+6|0;k[e>>2]=c;d=a+12|0;if((c|0)>=(k[d>>2]|0)){k[d>>2]=0;k[e>>2]=0;c=0}a=(k[a+4>>2]|0)+c|0;k[e>>2]=c+2;j[b+44>>1]=(l[a>>0]|0)<<8|(l[a+1>>0]|0);return 8}function nI(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;if(b|0){d=a+4|0;c=k[d>>2]|0;if((c|0)!=(b|0)){do{e=c+-312|0;k[d>>2]=e;Bm(e);c=k[d>>2]|0}while((c|0)!=(b|0));b=k[a>>2]|0}zba(b)}return}function oI(a,b){a=a|0;b=b|0;var c=0;c=a+858|0;do if(b){i[c>>0]=0;if((k[(k[a+916>>2]|0)+1004>>2]|0)==1){cf(a,b);break}else{fe(a,b,0);break}}else i[c>>0]=1;while(0);return}function pI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;c=k[d>>2]|0;if(c){e=OD(c,b<<3)|0;k[d>>2]=e;c=a+4|0;a=k[c>>2]|0;if(a>>>0<b>>>0)XG(e+(a<<3)|0,0,b-a<<3|0)|0}else{c=KL(b,8)|0;k[d>>2]=c;c=a+4|0}k[c>>2]=b;return}function qI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+32|0;f=e;d=e+20|0;k[f>>2]=k[a+60>>2];k[f+4>>2]=0;k[f+8>>2]=b;k[f+12>>2]=d;k[f+16>>2]=c;if((y1(Gb(140,f|0)|0)|0)<0){k[d>>2]=-1;a=-1}else a=k[d>>2]|0;r=e;return a|0}function rI(a){a=a|0;var b=0,c=0;k[a>>2]=4216;b=a+56|0;k[b>>2]=4236;c=a+4|0;k[c>>2]=1740;p1(a+36|0);I3(c);Qaa(a,4248);N8(b);zba(a);return}function sI(a,b){a=a|0;b=b|0;var c=0,d=0;d=Ub[k[(k[a>>2]|0)+60>>2]&511](a)|0;c=k[a+4>>2]|0;if((((d|0)<(k[c+1408>>2]|0)?(i[a+20>>0]|0)!=0:0)?(i[a+131>>0]|0)==0:0)?(i[a+133>>0]|0)==0:0)a=(DT(c+2060|0,b)|0)!=0;else a=0;return a|0}function tI(a,b){a=a|0;b=b|0;var c=0,d=0;k[a>>2]=a;k[a+4>>2]=a;k[a+8>>2]=0;c=k[b+4>>2]|0;d=c;if((d|0)!=(b|0))do{ov(a,c+8|0);c=k[d+4>>2]|0;d=c}while((d|0)!=(b|0));return}function uI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;e=+p[b+8>>3];if(((e>=0.0?(f=+p[b>>3],f<=e):0)?(g=+p[c+8>>3],g>=0.0):0)?(d=+p[c>>3],d<=g):0){f=+Ly(f,d);g=+Ky(e,g);p[a>>3]=f;p[a+8>>3]=g}else{p[a>>3]=1.0;p[a+8>>3]=-1.0}return}function vI(a,b){a=a|0;b=b|0;var c=0;ar(a,b);c=Tn(110732,68635,18)|0;b=a+56|0;tn(c,k[b>>2]|0,k[b+4>>2]|0)|0;return}function wI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+640|0;e=k[d>>2]|0;if((e|0)!=-1){Ta(2,e|0)|0;k[d>>2]=-1}k[d>>2]=b;b=a+644|0;d=k[b>>2]|0;if((d|0)!=-1){Ta(2,d|0)|0;k[b>>2]=-1}k[b>>2]=c;i[a+445>>0]=1;return}function xI(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+32|0;c=b+16|0;d=b;mD(c,0);e=N6(c,56171)|0;nF(d,27615);GA(e,d)|0;Lv(d);XA(a,c);Lv(c);r=b;return}function yI(a){a=a|0;var b=0,c=0;Xn(a);b=k[a+4>>2]|0;c=k[a+8>>2]|0;if((b|0)!=(c|0))do{zba(k[b>>2]|0);b=b+4|0}while((b|0)!=(c|0));SQ(a);return}function zI(a,b){a=a|0;b=b|0;var c=0;ar(a,b);c=Tn(b,67936,21)|0;b=a+56|0;tn(c,k[b>>2]|0,k[b+4>>2]|0)|0;return}function AI(a,b){a=a|0;b=b|0;var c=0.0;c=+(b|0);b=a+2096|0;p[b>>3]=c+ +p[b>>3];b=a+2104|0;p[b>>3]=c+ +p[b>>3];b=k[(k[a+1256>>2]|0)+200>>2]|0;a=b+960|0;c=c+ +p[a>>3];p[a>>3]=c;s3(k[b+916>>2]|0,c);return}function BI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+4|0;g=k[d>>2]|0;f=k[a>>2]|0;e=g-f>>2;if(e>>>0>=b>>>0){if(e>>>0>b>>>0?(c=f+(b<<2)|0,(g|0)!=(c|0)):0)k[d>>2]=g+(~((g+-4-c|0)>>>2)<<2)}else mm(a,b-e|0);return}function CI(a){a=a|0;var b=0,c=0,d=0;b=a+4|0;d=k[(k[a+56>>2]|0)+256>>2]|0;c=a+40|0;k[c>>2]=d;a=a+12|0;if((k[a>>2]|0)>>>0>d>>>0)do TF(b);while((k[a>>2]|0)>>>0>(k[c>>2]|0)>>>0);return}function DI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+16|0;c=e;d=k[a+44>>2]|0;do{Se(a,c)|0;f=k[c>>2]|0}while(!((f|0)==(b|0)|(f|0)==0));mn(a+24|0,d);r=e;return 0}function EI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if(!c)a=0;else{while(1){d=i[a>>0]|0;e=i[b>>0]|0;if(d<<24>>24!=e<<24>>24)break;c=c+-1|0;if(!c){a=0;break a}else{a=a+1|0;b=b+1|0}}a=(d&255)-(e&255)|0}while(0);return a|0}function FI(a,b,c){a=a|0;b=b|0;c=c|0;Eba(113444)|0;while(1){if((k[a>>2]|0)!=1)break;Ia(113472,113444)|0}if(!(k[a>>2]|0)){k[a>>2]=1;Eba(113444)|0;Rb[c&2047](b);Eba(113444)|0;k[a>>2]=-1;Eba(113444)|0;Eba(113472)|0}else Eba(113444)|0;return}function GI(a,b){a=a|0;b=b|0;var c=0,d=0;if(!b)c=0;else{c=b+4|0;if((i[c+11>>0]|0)<0)c=k[c>>2]|0;d=b+16|0;if((i[d+11>>0]|0)<0)d=k[d>>2]|0;c=(La(50,k[a+4>>2]|0,k[b>>2]|0,c|0,d|0)|0)==0}return c|0}function HI(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+32|0;c=b+16|0;d=b;mD(c,0);e=N6(c,56171)|0;nF(d,27649);GA(e,d)|0;Lv(d);XA(a,c);Lv(c);r=b;return}function II(a,b){a=a|0;b=b|0;var c=0,d=0;if(!(i[a+1780>>0]|0)){if(b|0)zba(b)}else{c=a+2168|0;d=cW(12)|0;k[d+8>>2]=b;k[d+4>>2]=c;b=k[c>>2]|0;k[d>>2]=b;k[b+4>>2]=d;k[c>>2]=d;b=a+2176|0;k[b>>2]=(k[b>>2]|0)+1}return}function JI(a,b){a=a|0;b=b|0;var c=0;c=i[b+11>>0]|0;if(((c<<24>>24<0?k[b+4>>2]|0:c&255)|0)==4)b=(cA(b,0,-1,108754,4)|0)==0;else b=0;Ok(a,b);return}function KI(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+20|0;d=(k[b>>2]|0)+-1|0;k[b>>2]=d;b=a+8|0;c=k[b>>2]|0;e=c-(k[a+4>>2]|0)|0;if((((e|0)==0?0:(e<<8)+-1|0)-(d+(k[a+16>>2]|0))|0)>>>0>2047){zba(k[c+-4>>2]|0);k[b>>2]=(k[b>>2]|0)+-4}return}function LI(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+4>>2]|0;d=a+8|0;b=k[d>>2]|0;if((b|0)!=(c|0))do{e=b+-312|0;k[d>>2]=e;Bm(e);b=k[d>>2]|0}while((b|0)!=(c|0));b=k[a>>2]|0;if(b|0)zba(b);return}function MI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=zo(b)|0;d=M;a=(lZ(b)|0)<<24>>24!=0;b=cW(24)|0;k[b+4>>2]=10;k[b>>2]=8220;c=b+8|0;k[c>>2]=e;k[c+4>>2]=d;i[b+16>>0]=a&1;return b|0}function NI(a,b){a=a|0;b=b|0;i[a+80>>0]=1;if(!(nn(a+36|0,b)|0))Lm(a,b);return}function OI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=k[a+4>>2]|0;f=g>>8;if(g&1)f=k[(k[c>>2]|0)+f>>2]|0;a=k[a>>2]|0;Qb[k[(k[a>>2]|0)+24>>2]&15](a,b,c+f|0,g&2|0?d:2,e);return}function PI(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+52>>2]|0;if(!(i[c+2160>>0]|0)){d=k[a+112>>2]|0;c=(d>>>0<50?d:50)+(k[c+1848>>2]|0)|0;c=(c&255)>>>0>250?-6:c&255}else c=-1;wj(a,c,b);return}function QI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;c=k[d>>2]|0;if(c){e=OD(c,b<<2)|0;k[d>>2]=e;c=a+8|0;a=k[c>>2]|0;if(a>>>0<b>>>0)XG(e+(a<<2)|0,0,b-a<<2|0)|0}else{c=KL(b,4)|0;k[d>>2]=c;c=a+8|0}k[c>>2]=b;return}function RI(a,b){a=a|0;b=b|0;var c=0;c=a+424|0;a=bn(c,b)|0;if(!a)a=Fe(c,b)|0;return a|0}function SI(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>1073741823)J5(a);c=a+128|0;if(b>>>0<29&(i[c>>0]|0)==0){i[c>>0]=1;c=a+16|0}else c=cW(b<<2)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b<<2);return}function TI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;b=e;k[b>>2]=k[a+48>>2];c=a+20|0;d=k[(k[c>>2]|0)+4>>2]|0;if(d|0)Sb[k[(k[d>>2]|0)+8>>2]&511](d,b);k[c>>2]=0;XL(a);r=e;return}function UI(a,b){a=a|0;b=+b;var c=0,d=0;d=a+56|0;c=k[d>>2]|0;k[d>>2]=-1;i[a+184>>0]=1;Sb[k[(k[a>>2]|0)+132>>2]&511](a,c);c=a+180|0;d=k[c>>2]|0;if(d|0){$P(d);zba(d);k[c>>2]=0;LC(a)}return}function VI(a){a=a|0;var b=0,c=0;k[a>>2]=4216;b=a+56|0;k[b>>2]=4236;c=a+4|0;k[c>>2]=1740;p1(a+36|0);I3(c);Qaa(a,4248);N8(b);return}function WI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;c=k[d>>2]|0;if(c){e=OD(c,b<<2)|0;k[d>>2]=e;c=a+4|0;a=k[c>>2]|0;if(a>>>0<b>>>0)XG(e+(a<<2)|0,0,b-a<<2|0)|0}else{c=KL(b,4)|0;k[d>>2]=c;c=a+4|0}k[c>>2]=b;return}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((i[c+11>>0]|0)<0)d=k[c>>2]|0;else d=c;c=c+12|0;if((i[c+11>>0]|0)<0)c=k[c>>2]|0;Ma(51,a|0,k[a+4>>2]|0,b|0,d|0,c|0,358,51)|0;return}function YI(a){a=a|0;var b=0;b=r;r=r+160|0;a=b;if((k[2783]|0)<3){Qd(a,34543,85,2,0,0,0);Tn(a,34736,9)|0;hi(a)}r=b;return}function ZI(a,b){a=a|0;b=b|0;var c=0;c=r;r=r+16|0;hu(c,a+44|0,b,b);r=c;return}function _I(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((i[c+11>>0]|0)<0)d=k[c>>2]|0;else d=c;c=c+12|0;if((i[c+11>>0]|0)<0)c=k[c>>2]|0;Ma(52,a|0,k[a+4>>2]|0,b|0,d|0,c|0,358,51)|0;return}function $I(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=cW(12)|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,b,c);c=cW(8)|0;k[c>>2]=7720;k[c+4>>2]=d;nL(a+116|0,c);return}function aJ(a,b){a=a|0;b=b|0;var c=0.0;c=+((cY(b)|0)<<10|0);k[a+860>>2]=~~(c/+p[(k[a+916>>2]|0)+720>>3]);b2(b);id(a);return}function bJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=k_(b,113404)|0;c=a+36|0;k[c>>2]=d;d=Ub[k[(k[d>>2]|0)+24>>2]&511](d)|0;b=a+44|0;k[b>>2]=d;c=k[c>>2]|0;c=(Ub[k[(k[c>>2]|0)+28>>2]&511](c)|0)&1;i[a+53>>0]=c;return}function cJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=k_(b,113396)|0;c=a+36|0;k[c>>2]=d;d=Ub[k[(k[d>>2]|0)+24>>2]&511](d)|0;b=a+44|0;k[b>>2]=d;c=k[c>>2]|0;c=(Ub[k[(k[c>>2]|0)+28>>2]&511](c)|0)&1;i[a+53>>0]=c;return}function dJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=Ju(a,b)|0;if((b|0)==(a+136|0))b=0;else{MM(c,b+28|0)|0;b=1}return b|0}function eJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=k[e+4>>2]|0;c=a;k[c>>2]=k[e>>2];k[c+4>>2]=d;a=a+8|0;c=k[b+8>>2]|0;b=k[b+12>>2]<<1>>1;Hs(a,b);fE(k[a>>2]|0,c|0,(b+7|0)/8|0|0)|0;dV(a);return}function fJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a;b=n_(b|0,c|0,k[d>>2]|0,k[d+4>>2]|0)|0;c=M;if(c>>>0<0|((c|0)==0?b>>>0<k[a+12>>2]<<1>>1>>>0:0)){d=(k[a+8>>2]|0)+((b|0)/8|0)|0;i[d>>0]=l[d>>0]|0|128>>>(b&7);b=1}else b=0;return b|0}function gJ(a){a=a|0;var b=0,c=0;a=a+8|0;b=O0(k[a>>2]|0)|0;c=Wn(0,0,4)|0;if(b|0)O0(b)|0;if(!c){a=k[a>>2]|0;if(a){a=O0(a)|0;if(!a)a=0;else{O0(a)|0;a=0}}else a=1}else a=-1;return a|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;k[a>>2]=b;k[a+136>>2]=0;k[a+140>>2]=0;k[a+132>>2]=a+136;c=a+144|0;d=a+181|0;e=c;f=e+36|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));i[c+36>>0]=0;i[d>>0]=1;yb(30,b|0,a|0,12)|0;return}function iJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((Ny(a,c,b)|0?(d=k[a+44>>2]|0,(d|0)<(c|0)):0)?(n4(0,c-d|0)|0)==0:0)AG(a,b,c);return}function jJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+16|0;g=f;k[g>>2]=0;bH(a,b,g);k[a+12>>2]=c;k[a+16>>2]=-1;k[a+20>>2]=d;k[a+24>>2]=k[e>>2];i[a+28>>0]=0;r=f;return}function kJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)?sO(a,c)|0:0){Xk(a+24|0,c,d);EY(a,b,c)}return}function lJ(a){a=a|0;var b=0,c=0;Hp(a);b=k[a+4>>2]|0;c=k[a+8>>2]|0;if((b|0)!=(c|0))do{zba(k[b>>2]|0);b=b+4|0}while((b|0)!=(c|0));SQ(a);return}function mJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=k[a+4>>2]|0;e=f>>8;if(f&1)e=k[(k[c>>2]|0)+e>>2]|0;a=k[a>>2]|0;jc[k[(k[a>>2]|0)+28>>2]&63](a,b,c+e|0,f&2|0?d:2);return}function nJ(a){a=a|0;var b=0,c=0;k[a>>2]=16580;k[a+4>>2]=16612;R6(a+16|0);b=a+12|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}a=a+8|0;b=k[a>>2]|0;if((b|0)!=-1){Ta(2,b|0)|0;k[a>>2]=-1}return}function oJ(a){a=a|0;k[a+28>>2]=0;k[a+32>>2]=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=a+28;k[a+36>>2]=0;i[a+40>>0]=0;i[a+41>>0]=0;a=a+44|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;return}function pJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=14560;k[c+4>>2]=(b|0)==0?0:b+-40|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function qJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((a|0)==(k[b+8>>2]|0))RD(0,b,c,d);else{a=k[a+8>>2]|0;jc[k[(k[a>>2]|0)+28>>2]&63](a,b,c,d)}return}function rJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a=cW(24)|0;e=zo(b)|0;d=M;b=xF(b)|0;k[a+4>>2]=14;k[a>>2]=8188;c=a+8|0;k[c>>2]=e;k[c+4>>2]=d;k[a+16>>2]=b;return a|0}function sJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=k[a+8>>2]|0;g=k[a+12>>2]|0;f=(k[a+4>>2]|0)+(g>>1)|0;if(!(g&1))a=e;else a=k[(k[f>>2]|0)+e>>2]|0;jc[a&63](f,b,c,d);return}function tJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c+8|0;e=c;k[e>>2]=4;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];Yq(b+20|0,a,d)|0;r=c;return}function uJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(((i[b>>0]|0)!=0?(FJ(b,106693)|0)!=0:0)?(FJ(b,106065)|0)!=0:0)c=0;else d=4;do if((d|0)==4)if(!c)if(!(k[27512]|0)){k[27512]=1;c=110052;break}else{c=KL(1,4)|0;break}while(0);return c|0}function vJ(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=k[a>>2]|0;if(!(b&8)){k[a+8>>2]=0;k[a+4>>2]=0;c=k[a+44>>2]|0;k[a+28>>2]=c;k[a+20>>2]=c;k[a+16>>2]=c+(k[a+48>>2]|0);a=0}else{k[a>>2]=b|32;a=-1}return a|0}function wJ(a,b){a=a|0;b=b|0;b=r;r=r+160|0;a=b;if((k[2783]|0)<3){Qd(a,34543,35,2,0,0,0);Tn(a,34612,41)|0;hi(a)}r=b;return}function xJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ao(a,b,c,d);k[a>>2]=10332;k[a+4>>2]=10368;k[a+20>>2]=10392;return}function yJ(a,b,c){a=a|0;b=b|0;c=c|0;return NJ(k[a+4>>2]|0,c,0,b)|0}function zJ(a,b){a=a|0;b=b|0;b=r;r=r+160|0;a=b;if((k[2783]|0)<3){Qd(a,34543,30,2,0,0,0);Tn(a,34654,41)|0;hi(a)}r=b;return}function AJ(a){a=a|0;var b=0;b=r;r=r+160|0;a=b;if((k[2783]|0)<5){Qd(a,92751,203,4,0,0,0);Tn(a,92792,299)|0;hi(a)}r=b;return}function BJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=8816;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function CJ(a){a=a|0;var b=0,c=0,d=0;d=a+16|0;b=i[d+11>>0]|0;if(b<<24>>24<0)c=k[a+20>>2]|0;else c=b&255;b=i[a+32+11>>0]|0;if(b<<24>>24<0)b=k[a+36>>2]|0;else b=b&255;gD(d,c-b|0,0);return}function DJ(a){a=a|0;var b=0,c=0,d=0,e=0;e=r;r=r+32|0;b=e+16|0;c=e+12|0;d=e;k[d>>2]=a;k[d+4>>2]=1304;k[d+8>>2]=0;if((k[a>>2]|0)!=-1){k[b>>2]=d;k[c>>2]=b;FI(a,c,1305)}r=e;return (k[a+4>>2]|0)+-1|0}function EJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[a+4>>2]|0;if(e|0){d=k[a+8>>2]|0;f=k[a+12>>2]|0;a=e+(f>>1)|0;if(f&1)d=k[(k[a>>2]|0)+d>>2]|0;fc[d&255](a,b,c)}return}function FJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=i[a>>0]|0;d=i[b>>0]|0;if(c<<24>>24==0?1:c<<24>>24!=d<<24>>24)a=d;else{do{a=a+1|0;b=b+1|0;c=i[a>>0]|0;d=i[b>>0]|0}while(!(c<<24>>24==0?1:c<<24>>24!=d<<24>>24));a=d}return (c&255)-(a&255)|0}function GJ(a,b){a=a|0;b=b|0;var c=0;c=a+136|0;do if((k[c>>2]|0)!=(b|0))if(!(k[a+124>>2]|0)){k[c>>2]=b;aF(a);break}else{Au(a,b);k[c>>2]=b;i[a+132>>0]=0;break}while(0);return}function HJ(a,b){a=a|0;b=b|0;Bt(a,b);a=j[a+52>>1]|0;i[k[b>>2]>>0]=(a&65535)>>>8;i[(k[b>>2]|0)+1>>0]=a;a=(k[b>>2]|0)+2|0;k[b>>2]=a;i[a>>0]=0;i[(k[b>>2]|0)+1>>0]=0;k[b>>2]=(k[b>>2]|0)+2;return}function IJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+80|0;d=e;k[a+36>>2]=9;if((k[a>>2]&64|0)==0?(k[d>>2]=k[a+60>>2],k[d+4>>2]=21505,k[d+8>>2]=e+12,pb(54,d|0)|0):0)i[a+75>>0]=-1;d=Cj(a,b,c)|0;r=e;return d|0}function JJ(a,b,c){a=a|0;b=b|0;c=c|0;a=i[b+11>>0]|0;if(((a<<24>>24<0?k[b+4>>2]|0:a&255)|0)==3)a=(cA(b,0,-1,45358,3)|0)==0&1;else a=0;i[c>>0]=a;return 1}function KJ(a,b){a=a|0;b=b|0;var c=0;c=k[b+64>>2]|0;if(!c){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0}else{b=k[b+68>>2]|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,c,b)}return}function LJ(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=1972;b=a+4|0;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;zba(a);return}function MJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a;b=n_(b|0,c|0,k[d>>2]|0,k[d+4>>2]|0)|0;c=M;if(c>>>0<0|((c|0)==0?b>>>0<k[a+12>>2]<<1>>1>>>0:0)){d=(k[a+8>>2]|0)+((b|0)/8|0)|0;i[d>>0]=(l[d>>0]|0)&(128>>>(b&7)^255)}return}function NJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return mi(b,c,d)|0}function OJ(a,b){a=a|0;b=b|0;var c=0;qo(a+104|0,b);c=k[a+100>>2]|0;b=k[(k[a+140>>2]|0)+72+(k[c+52>>2]<<2)>>2]|0;MM(b+8|0,c+64|0)|0;i[b+4>>0]=1;return}function PJ(a){a=a|0;var b=0,c=0;c=a+15&-16|0;b=k[t>>2]|0;a=b+c|0;if((c|0)>0&(a|0)<(b|0)|(a|0)<0){ha()|0;Za(12);return -1}k[t>>2]=a;if((a|0)>(ga()|0)?(fa()|0)==0:0){Za(12);k[t>>2]=b;return -1}return b|0}function QJ(a){a=a|0;var b=0,c=0;b=a+4|0;c=a+16|0;a=a+20|0;k[a>>2]=(k[a>>2]|0)+-1;a=(k[c>>2]|0)+1|0;k[c>>2]=a;if(a>>>0>2047){zba(k[k[b>>2]>>2]|0);k[b>>2]=(k[b>>2]|0)+4;k[c>>2]=(k[c>>2]|0)+-1024}return}function RJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=16964;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function SJ(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;NO(c);F$(c,4.0,99);F$(c,0.0,105);P_(k[a+104>>2]|0,c);_R(c);r=b;return}function TJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a;b=n_(b|0,c|0,k[d>>2]|0,k[d+4>>2]|0)|0;c=M;if(c>>>0<0|((c|0)==0?b>>>0<k[a+12>>2]<<1>>1>>>0:0))b=((l[(k[a+8>>2]|0)+((b|0)/8|0)>>0]|0)&128>>>(b&7)|0)!=0;else b=0;return b|0}function UJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;k[c>>2]=b;if((k[a+20>>2]|0)==0?(k[a+44>>2]|0)==0:0)Fo(a,b);else sA(a+24|0,c);r=d;return}function VJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=k[a+40>>2];c=hp(e,b,c,1)|0;r=d;return c|0}function WJ(a,b,c){a=a|0;b=b|0;c=c|0;TG(a);c=Pd(a,b,c)|0;TG(a);return c|0}function XJ(a){a=a|0;var b=0;b=r;r=r+160|0;a=b;if((k[2783]|0)<5){Qd(a,34543,25,4,0,0,0);Tn(a,34696,29)|0;hi(a)}r=b;return}function YJ(a){a=a|0;var b=0,c=0,d=0;d=r;r=r+16|0;b=d;if((i[a+133>>0]|0)==0?(c=a+108|0,k[c>>2]|0):0){oN(a);k[b+4>>2]=13;k[b>>2]=8060;fB(k[c>>2]|0,b)}r=d;return}function ZJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18684;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function _J(){var a=0.0,b=0,c=0;b=r;r=r+16|0;c=b;Fb(c|0,0)|0;a=+(k[c>>2]|0)*1.0e3+ +(k[c+4>>2]|0)/1.0e3;M=+O(a)>=1.0?(a>0.0?~~+aa(+N(a/4294967296.0),4294967295.0)>>>0:~~+_((a-+(~~a>>>0))/4294967296.0)>>>0):0;r=b;return ~~a>>>0|0}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=k[a+8>>2]|0;f=k[a+12>>2]|0;e=(k[a+4>>2]|0)+(f>>1)|0;if(!(f&1))a=d;else a=k[(k[e>>2]|0)+d>>2]|0;fc[a&255](e,b,c);return}function aK(a){a=a|0;var b=0.0,c=0,d=0,e=0;d=a+16|0;b=+p[d>>3];if(b==0.0){e=ub(22,k[a>>2]|0,k[a+4>>2]|0)|0;c=e;b=+((JS(0,c,k[a+8>>2]|0)|0)>>>0);p[d>>3]=b;if(e){wc(c);b=+p[d>>3]}}return ~~b>>>0|0}function bK(a){a=a|0;var b=0.0,c=0,d=0;c=k[a+352>>2]|0;d=a+348|0;a=c;if((a|0)==(d|0))b=0.0;else{b=0.0;do{b=b+ +((k[(k[c+8>>2]|0)+16>>2]|0)/1e3|0|0);c=k[a+4>>2]|0;a=c}while((a|0)!=(d|0))}return +b}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=r;r=r+112|0;d=f;e=d;g=e+112|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(g|0));k[d+32>>2]=29;k[d+44>>2]=a;k[d+76>>2]=-1;k[d+84>>2]=a;g=qc(d,b,c)|0;r=f;return g|0}function dK(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;k[a+60>>2]=b;k[a+64>>2]=c;k[a+68>>2]=d;k[a+36>>2]=e;k[a+32>>2]=f;b=k[a+16>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,a);return}function eK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5244;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function fK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18716;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function gK(a){a=a|0;var b=0,c=0;c=k[a>>2]|0;a=k[a+4>>2]|0;a:do if((c|0)==(a|0))a=0;else{b=a-c>>2;a=0;while(1){if(!(k[c+(a<<2)>>2]|0)){a=0;break a}a=a+1|0;if(a>>>0>=b>>>0){a=1;break}}}while(0);return a|0}function hK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=6192;k[c+4>>2]=(b|0)==0?0:b+-16|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function iK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18812;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function jK(a,b){a=a|0;b=b|0;ar(a,b);b=Tn(110732,68625,9)|0;Gn(b,j[a+52>>1]|0)|0;return}function kK(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=k[a+8>>2]|0;f=k[a+12>>2]|0;e=(k[a+4>>2]|0)+(f>>1)|0;if(!(f&1))a=d;else a=k[(k[e>>2]|0)+d>>2]|0;Xb[a&7](e,b,c);return}function lK(a,b){a=a|0;b=b|0;b=Ta(29,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,b,iC(b)|0);wc(b);return}function mK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[a+156>>2]|0;if((((k[a+160>>2]|0)-d|0)/12|0)>>>0>b>>>0){MM(c,d+(b*12|0)|0)|0;a=1}else a=0;return a|0}function nK(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;WH(a,c,d,e);e=k[a+2164>>2]|0;jc[k[(k[e>>2]|0)+28>>2]&63](e,b,c,d);WC(a+276|0,b,c,d);return}function oK(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;a=z5((i[a+11>>0]|0)<0?k[a>>2]|0:a,d,10)|0;if(!(i[k[d>>2]>>0]|0)){k[b>>2]=a;a=1}else a=0;r=c;return a|0}function pK(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=1972;a=b+4|0;k[a>>2]=2e3;Bo(b);dH(b+8|0,k[b+12>>2]|0);k[a>>2]=2024;return}function qK(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;c=b;if(b|0){d=a+4|0;e=k[d>>2]|0;if((e|0)!=(b|0))k[d>>2]=e+(~(((e+-40-c|0)>>>0)/40|0)*40|0);zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function rK(a,b){a=a|0;b=b|0;var c=0;if((i[b+40>>0]|0)==0?(c=a+4|0,VW(k[c>>2]|0)|0):0)a=~~(+p[(k[c>>2]|0)+1568>>3]*+((((k[b+4>>2]|0)-(k[b>>2]|0)|0)/96|0)>>>0));else a=0;return a|0}function sK(a){a=a|0;var b=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;p[a+16>>3]=-2.0;p[a+24>>3]=-1.0;o[a+32>>2]=0.0;p[a+40>>3]=0.0;k[a+48>>2]=0;i[a+52>>0]=0;a=a+56|0;b=a+40|0;do{k[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+12|0;a=k[d>>2]|0;if(!a){a=vba(16)|0;k[a>>2]=3;a=a+4|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[d>>2]=a}ox(a+(c<<2)|0,b);return}function uK(a,b){a=a|0;b=b|0;ar(a,b);b=Tn(b,68034,8)|0;Ln(b,k[a+52>>2]|0)|0;return}function vK(a,b){a=a|0;b=+b;var c=0,d=0;c=a+260|0;d=i[c+11>>0]|0;if(((d<<24>>24<0?k[a+264>>2]|0:d&255)|0)==10?(cA(c,0,-1,75447,10)|0)==0:0)Eb(105,k[a+644>>2]|0,+b)|0;return}function wK(a){a=a|0;var b=0,c=0;b=a+160|0;if(!(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(c=b,!((k[c>>2]|0)==0&(k[c+4>>2]|0)==0)):0)){i[a+176>>0]=0;a=_J()|0;c=b;k[c>>2]=a;k[c+4>>2]=M}return}function xK(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2664;b=a+4|0;k[b>>2]=2688;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function yK(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2616;b=a+4|0;k[b>>2]=2640;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function zK(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0;d=r;r=r+16|0;e=d;Hj(e,b,c);WD(a,51470,e);p1(e);r=d;return}function AK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5916;k[c+4>>2]=(b|0)==0?0:b+-16|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function BK(a,b){a=a|0;b=b|0;if((((((b|0)>9?(i[a>>0]|0)==73:0)?(i[a+1>>0]|0)==68:0)?(i[a+2>>0]|0)==51:0)?(i[a+7>>0]|i[a+6>>0]|i[a+8>>0]|i[a+9>>0])<<24>>24>-1:0)?(i[a+3>>0]|0)!=-1:0)a=(i[a+4>>0]|0)!=-1;else a=0;return a|0}function CK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+84|0;f=k[d>>2]|0;g=c+256|0;e=uo(f,0,g)|0;e=(e|0)==0?g:e-f|0;c=e>>>0<c>>>0?e:c;fE(b|0,f|0,c|0)|0;k[a+4>>2]=f+c;b=f+e|0;k[a+8>>2]=b;k[d>>2]=b;return c|0}function DK(a){a=a|0;var b=0;b=a+48|0;a=k[b>>2]|0;if(a|0){aE(a+4|0);aE((k[b>>2]|0)+12|0);a=k[b>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);k[b>>2]=0}return}function EK(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2568;b=a+4|0;k[b>>2]=2592;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function FK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=8848;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function GK(a,b){a=a|0;b=b|0;var c=0;k[a+24>>2]=b;k[a+16>>2]=(b|0)==0&1;k[a+20>>2]=0;k[a+4>>2]=4098;k[a+12>>2]=0;k[a+8>>2]=6;c=a+28|0;b=a+32|0;a=b+40|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(a|0));Q_(c);return}function HK(a){a=a|0;var b=0,c=0;c=a+2168|0;a=k[a+2172>>2]|0;b=a;if((b|0)!=(c|0))do{a=k[a+8>>2]|0;if(a|0)zba(a);a=k[b+4>>2]|0;b=a}while((b|0)!=(c|0));$H(c);return}function IK(a){a=a|0;var b=0;k[a>>2]=7492;b=k[a+8>>2]|0;Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;b=k[a+12>>2]|0;Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;b=k[a+16>>2]|0;Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;zba(a);return}function JK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=8912;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function KK(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2856;b=a+4|0;k[b>>2]=2880;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function LK(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;i[a+128>>0]=0;if(b|0){SI(a,b);fQ(a,b)}return}function MK(a){a=a|0;var b=0,c=0;k[a+60>>2]=0;k[a+64>>2]=0;k[a+68>>2]=0;c=La(37,a|0,9,10,298)|0;a=a+56|0;b=k[a>>2]|0;if((b|0)!=-1){Ta(2,b|0)|0;k[a>>2]=-1}k[a>>2]=c;Ta(38,c|0)|0;return}function NK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=8880;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function OK(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18748;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function PK(a,b){a=a|0;b=b|0;var c=0;if((n3(b,46)|0)!=0?(c=iC(a)|0,(c|0)!=0):0)if(tX(b,a)|0){a=iC(b)|0;if((a|0)==(c|0))a=1;else a=(i[b+(a+~c)>>0]|0)==46}else a=0;else a=1;return a|0}function QK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;while(1){if((b|0)==(c|0))break;a=k[b>>2]|0;if(a>>>0<128){e=Lba()|0;a=m[(k[e>>2]|0)+(a<<1)>>1]|0}else a=0;j[d>>1]=a;d=d+2|0;b=b+4|0}return c|0}function RK(){var a=0,b=0,c=0;b=r;r=r+16|0;a=b;Va(1,a|0)|0;c=k[a>>2]|0;c=WV(c|0,((c|0)<0)<<31>>31|0,1e9,0)|0;a=k[a+4>>2]|0;a=y0(c|0,M|0,a|0,((a|0)<0)<<31>>31|0)|0;a=A5(a|0,M|0,1e6,0)|0;r=b;return a|0}function SK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;mD(d,0);if(JT(a,b,d)|0)a=EA(d,c)|0;else a=0;Lv(d);r=e;return a|0}function TK(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)?sO(a,c)|0:0)Aj(a,c)|0;else Wz(a,b);return}function UK(a){a=a|0;var b=0,c=0;b=a+216|0;if((i[b+11>>0]|0)<0)b=k[b>>2]|0;c=ob(16,a|0,b|0,1257,46,1258,118)|0;b=a+228|0;a=k[b>>2]|0;if((a|0)!=-1){Ta(2,a|0)|0;k[b>>2]=-1}k[b>>2]=c;return}function VK(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;b=gB(b,53177)|0;nF(d,53186);b=Qg(b,d)|0;Lv(d);if(b)Xi(a);r=c;return}function WK(a){a=a|0;var b=0;if((j[a+8>>1]&254)==6){b=k[a>>2]|0;a=b+4|0;Bz(b,k[a>>2]|0);k[b+8>>2]=0;k[b>>2]=a;k[a>>2]=0}return}function XK(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2760;b=a+4|0;k[b>>2]=2784;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function YK(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=3192;b=a+4|0;k[b>>2]=3216;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function ZK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;while(1){if((c|0)==(d|0)){c=d;break}a=k[c>>2]|0;if(a>>>0>=128)break;e=Lba()|0;if(!((j[(k[e>>2]|0)+(a<<1)>>1]&b)<<16>>16))break;c=c+4|0}return c|0}function _K(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2520;b=a+4|0;k[b>>2]=2544;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function $K(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a+32|0;e=a+36|0;c=k[a+40>>2]|0;while(1){if(!c)break;f=c+-1|0;fc[k[(k[d>>2]|0)+(f<<2)>>2]&255](b,a,k[(k[e>>2]|0)+(f<<2)>>2]|0);c=f}return}function aL(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;e=k[a+4>>2]|0;if(e|0){d=k[a+8>>2]|0;f=k[a+12>>2]|0;a=e+(f>>1)|0;if(f&1)d=k[(k[a>>2]|0)+d>>2]|0;Xb[d&7](a,b,c)}return}function bL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5792;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function cL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=10300;k[c+4>>2]=(b|0)==0?0:b+-80|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function dL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=14624;k[c+4>>2]=(b|0)==0?0:b+-40|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function eL(a,b){a=a|0;b=b|0;k[a>>2]=16148;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=16384;k[a+20>>2]=0;k[a+24>>2]=0;k[a+28>>2]=b;p[a+32>>3]=0.0;p[a+40>>3]=-1.0;i[a+48>>0]=0;b=lc(16384)|0;k[a+4>>2]=b;return}function fL(a,b){a=a|0;b=b|0;Bt(a,b);a=k[a+52>>2]|0;i[k[b>>2]>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4;return}function gL(a,b){a=a|0;b=b|0;Bt(a,b);a=k[a+56>>2]|0;i[k[b>>2]>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4;return}function hL(a,b){a=a|0;b=b|0;MM((m1(w4(k[a+4>>2]|0)|0)|0)+64|0,b+12|0)|0;qo(a+80|0,b);return}function iL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=12816;k[c+4>>2]=(b|0)==0?0:b+-40|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function jL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=10268;k[c+4>>2]=(b|0)==0?0:b+-80|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function kL(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a>>2]|0;c=b;if(b|0){d=a+4|0;e=k[d>>2]|0;if((e|0)!=(b|0))k[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);zba(b);k[a+8>>2]=0;k[d>>2]=0;k[a>>2]=0}return}function lL(a){a=a|0;var b=0,c=0;k[a>>2]=5384;c=a+44|0;k[c>>2]=2904;b=a+48|0;k[b>>2]=2928;up(c);$H(a+52|0);k[b>>2]=2024;GL(a);return}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=cW(28)|0;k[d>>2]=a;iI(d+4|0,b);iI(d+16|0,c);return d|0}function nL(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;sA(a+4|0,d);if(!(i[a+36>>0]|0))tB(a+28|0,0)|0;r=c;return}function oL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=9404;k[c+4>>2]=(b|0)==0?0:b+-20|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function pL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=17124;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function qL(a){a=a|0;var b=0,c=0;k[a>>2]=1500;b=k[a+12>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[a>>2]=1480;b=a+8|0;if(i[b>>0]|0){a=a+4|0;c=Ta(0,k[a>>2]|0)|0;k[a>>2]=c;i[b>>0]=0}return}function rL(a){a=a|0;if((k[a+648>>2]|0)!=(k[a+652>>2]|0))ed(a,Iy(0,a+648|0,k[(k[a+916>>2]|0)+760>>2]|0)|0)|0;return 1}function sL(a){a=a|0;var b=0,c=0;c=a+88|0;b=a+16|0;gr((k[c>>2]|0)+516|0,b);gr((k[c>>2]|0)+96|0,b);i[a+168>>0]=1;return}function tL(a){a=a|0;var b=0,c=0,d=0;k[2784]=a;b=k[27490]|0;c=b;if((c|0)!=109956){d=c;while(1){c=k[d+4>>2]|0;d=c;if((d|0)==109956)break;else b=c}d=k[b+12>>2]|0;a=(d|0)<(a|0)?d:a}k[2783]=a;return}function uL(a){a=a|0;var b=0;k[a>>2]=7492;b=k[a+8>>2]|0;Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;b=k[a+12>>2]|0;Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;a=k[a+16>>2]|0;Ub[k[(k[a>>2]|0)+12>>2]&511](a)|0;return}function vL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4484;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function wL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=17092;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function xL(a,b){a=a|0;b=b|0;var c=0;k[a+4>>2]=0;k[a>>2]=16540;c=a+8|0;K6(c);k[c>>2]=8536;k[a+16>>2]=-1;jT(a,(i[b+11>>0]|0)<0?k[b>>2]|0:b);return}function yL(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18684;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function zL(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2664;a=b+4|0;k[a>>2]=2688;up(b);$H(b+8|0);k[a>>2]=2024;return}function AL(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2616;a=b+4|0;k[a>>2]=2640;up(b);$H(b+8|0);k[a>>2]=2024;return}function BL(a){a=a|0;var b=0;k[a>>2]=9584;ED(a+40|0,k[a+44>>2]|0);b=a+32|0;if((k[a+36>>2]|0)<0)wc(k[b>>2]|0);k[b>>2]=0;return}function CL(a,b){a=a|0;b=b|0;if(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0)kn(a);eM(a+424|0,b);AE(a+56|0,b);return}function DL(a,b){a=a|0;b=+b;var c=0;Pb[k[(k[a>>2]|0)+140>>2]&15](a,b);c=k[a+52>>2]|0;if(c|0?i[c+857>>0]|0:0){Rb[k[(k[a>>2]|0)+100>>2]&2047](a);Rb[k[(k[a>>2]|0)+96>>2]&2047](a)}return}function EL(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;sA(a+68|0,d);if(!(i[a+104>>0]|0))tB(a+96|0,5)|0;r=c;return}function FL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4292;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function GL(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=1520;b=a+36|0;if(i[b>>0]|0){c=a+32|0;d=Ta(0,k[c>>2]|0)|0;k[c>>2]=d;i[b>>0]=0}qL(a+28|0);lJ(a+4|0);return}function HL(a,b){a=a|0;b=b|0;b=Xx(a+60|0,b)|0;if((b|0)==(a+64|0))b=0;else b=k[b+20>>2]|0;return b|0}function IL(a){a=a|0;var b=0;k[a>>2]=1972;b=a+4|0;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function JL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=$(c,b)|0;if((k[d+76>>2]|0)>-1){f=(Eba(d)|0)==0;a=Gq(a,e,d)|0;if(!f)Dba(d)}else a=Gq(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function KL(a,b){a=a|0;b=b|0;var c=0;if(a){c=$(b,a)|0;if((b|a)>>>0>65535)c=((c>>>0)/(a>>>0)|0|0)==(b|0)?c:-1}else c=0;a=lc(c)|0;if(!a)return a|0;if(!(k[a+-4>>2]&3))return a|0;XG(a|0,0,c|0)|0;return a|0}function LL(a){a=a|0;var b=0;k[a+4>>2]=0;k[a>>2]=11004;k[a+12>>2]=0;k[a+8>>2]=11004;b=a+20|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[a+32>>2]=3e4;i[a+36>>0]=0;k[a+44>>2]=0;k[a+48>>2]=0;k[a+40>>2]=a+44;return}function ML(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=2212;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function NL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=8784;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function OL(a,b){a=a|0;b=b|0;if(!b)return;else{OL(a,k[b>>2]|0);OL(a,k[b+4>>2]|0);zba(b);return}}function PL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=2244;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function QL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=19004;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function RL(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5244;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function SL(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18716;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function TL(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=17500;k[c+4>>2]=(b|0)==0?0:b+-28|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function UL(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2568;a=b+4|0;k[a>>2]=2592;up(b);$H(b+8|0);k[a>>2]=2024;return}function VL(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18812;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function WL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=k[a>>2]|0;a=a+4|0;d=k[a>>2]|0;f=(k[e+4>>2]|0)-d|0;c=(f|0)<(c|0)?f:c;fE(b|0,(k[e>>2]|0)+d|0,c|0)|0;k[a>>2]=(k[a>>2]|0)+c;return c|0}function XL(a){a=a|0;var b=0;if(k[a+44>>2]|0){b=k[a+40>>2]|0;b=k[(k[(k[a+28>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0;QJ(a+24|0);Fo(a,b)}return}function YL(a,b,c){a=a|0;b=b|0;c=+c;Eb(106,k[a+640+(b<<2)>>2]|0,+c)|0;b=a+446|0;if(i[b>>0]|0){i[b>>0]=1;Eb(102,k[a+440>>2]|0,+(+p[(k[a+52>>2]|0)+1152>>3]))|0}return}function ZL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[a+8>>2]|0;e=k[a+12>>2]|0;d=(k[a+4>>2]|0)+(e>>1)|0;if(!(e&1))a=c;else a=k[(k[d>>2]|0)+c>>2]|0;Sb[a&511](d,b);return}function _L(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2856;a=b+4|0;k[a>>2]=2880;up(b);$H(b+8|0);k[a>>2]=2024;return}function $L(a){a=a|0;var b=0;b=$B(a)|0;if((b|0)!=0?(i[b+60>>0]|0)!=0:0)a=b+64|0;else{a=gC(a)|0;if(!a)a=0;else return (i[a+60>>0]|0?a+64|0:0)|0}return a|0}function aM(a){a=a|0;var b=0,c=0,d=0;b=a+8|0;if(i[b>>0]|0){c=a+4|0;d=Ta(0,k[c>>2]|0)|0;k[c>>2]=d;i[b>>0]=0}k[a+20>>2]=-1;d=a+32|0;k[d>>2]=-1;k[d+4>>2]=-1;k[a+24>>2]=-1;return}function bM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=6548;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function cM(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=14560;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function dM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=6240;k[c+4>>2]=(b|0)==0?0:b+-16|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function eM(a,b){a=a|0;b=b|0;if(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0){a=k[(k[a+20>>2]|0)+2164>>2]|0;Sb[k[(k[a>>2]|0)+24>>2]&511](a,b)}else MG(a,b);return}function fM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4420;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function gM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=4876;b=a+4|0;k[b>>2]=4900;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function hM(a,b){a=a|0;b=b|0;i[a>>0]=0;k[a+4>>2]=b;b=b+(k[(k[b>>2]|0)+-12>>2]|0)|0;if(!(k[b+16>>2]|0)){b=k[b+72>>2]|0;if(b|0)UA(b)|0;i[a>>0]=1}return}function iM(a){a=a|0;var b=0,c=0;b=a+16|0;Ta(63,k[b>>2]|0)|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}h3(a+8|0);k[a>>2]=16560;aE(a);return}function jM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4516;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function kM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=6936;b=a+4|0;k[b>>2]=6960;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function lM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=3096;b=a+4|0;k[b>>2]=3120;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function mM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=4596;b=a+4|0;k[b>>2]=4620;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function nM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=12224;b=a+4|0;k[b>>2]=12248;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function oM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=14592;k[c+4>>2]=(b|0)==0?0:b+-40|0;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function pM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=(c-b|0)>>>2;a=e;e=b;while(1){if((e|0)==(c|0))break;g=k[e>>2]|0;i[a>>0]=g>>>0<128?g&255:d;a=a+1|0;e=e+4|0}return b+(f<<2)|0}function qM(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;Um(c+8|0,a+60|0,d,d);r=c;return}function rM(a){a=a|0;var b=0;k[a>>2]=13528;b=a+4|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;i[b+28>>0]=0;k[a+36>>2]=1;k[a+40>>2]=0;k[a+44>>2]=0;return}function sM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=13464;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function tM(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2760;a=b+4|0;k[a>>2]=2784;up(b);$H(b+8|0);k[a>>2]=2024;return}function uM(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=3192;a=b+4|0;k[a>>2]=3216;up(b);$H(b+8|0);k[a>>2]=2024;return}function vM(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2520;a=b+4|0;k[a>>2]=2544;up(b);$H(b+8|0);k[a>>2]=2024;return}function wM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qW(a,b);k[a>>2]=8320;k[a+20>>2]=c;iI(a+24|0,d);return}function xM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18940;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function yM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=k[a+4>>2]|0;if(d|0){c=k[a+8>>2]|0;e=k[a+12>>2]|0;a=d+(e>>1)|0;if(e&1)c=k[(k[a>>2]|0)+c>>2]|0;Sb[c&511](a,b)}return}function zM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b+8|0;e=k[c>>2]|0;d=Ta(18,e|0)|0;k[a>>2]=d;k[a+4>>2]=e;yb(19,d|0,k[b>>2]|0,0)|0;k[a+8>>2]=k[c>>2];p[a+16>>3]=+p[b+16>>3];return}function AM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;while(1){if((c|0)==(d|0)){c=d;break}a=k[c>>2]|0;if(a>>>0<128?(e=Lba()|0,(j[(k[e>>2]|0)+(a<<1)>>1]&b)<<16>>16):0)break;c=c+4|0}return c|0}function BM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;La(145,k[a+20>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,c|0,((i[d+11>>0]|0)<0?k[d>>2]|0:d)|0)|0;return}function CM(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;if(!(i[a+133>>0]|0)){oN(a);k[b+4>>2]=2;k[b>>2]=8012;fB(k[a+108>>2]|0,b)}r=c;return}function DM(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>357913941)J5(a);else{c=cW(b*12|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*12|0);return}}function EM(a,b){a=a|0;b=b|0;Nk(a);i[a+68>>0]=0;if(b|0){p1(b);zba(b)}KD(a);return}function FM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=7936;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function GM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;k[a+8>>2]=d;d=vba(d)|0;e=k[a>>2]|0;k[a>>2]=0;if(e|0)wba(e);k[a>>2]=d;jR(a,c);k[a+4>>2]=c;fE(k[a>>2]|0,b|0,c|0)|0;return}function HM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=19188;b=a+4|0;k[b>>2]=19212;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function IM(a){a=a|0;var b=0;k[a>>2]=2664;b=a+4|0;k[b>>2]=2688;up(a);$H(a+8|0);k[b>>2]=2024;return}function JM(a){a=a|0;var b=0;k[a>>2]=2616;b=a+4|0;k[b>>2]=2640;up(a);$H(a+8|0);k[b>>2]=2024;return}function KM(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=8816;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function LM(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18748;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function MM(a,b){a=a|0;b=b|0;var c=0,d=0;if((a|0)!=(b|0)){c=i[b+11>>0]|0;d=c<<24>>24<0;Uu(a,d?k[b>>2]|0:b,d?k[b+4>>2]|0:c&255)|0}return a|0}function NM(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;if(!(i[a+133>>0]|0)){oN(a);k[b+4>>2]=1;k[b>>2]=8028;fB(k[a+108>>2]|0,b)}r=c;return}function OM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18652;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function PM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=$(e,f)|0;d=a>>>16;a=(c>>>16)+($(e,d)|0)|0;e=b>>>16;b=$(e,f)|0;return (M=(a>>>16)+($(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function QM(a){a=a|0;var b=0,c=0;b=k[k[a>>2]>>2]|0;a=k[b+4>>2]|0;c=k[b+8>>2]|0;b=(k[b>>2]|0)+(c>>1)|0;if(c&1)a=k[(k[b>>2]|0)+a>>2]|0;Rb[a&2047](b);return}function RM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4388;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function SM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=13256;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function TM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=3048;b=a+4|0;k[b>>2]=3072;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function UM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)?sO(a,c)|0:0)EY(a,b,c);return}function VM(a,b){a=a|0;b=b|0;k[a+2088>>2]=k[b+100>>2];KX(a+2024|0,k[a+1376>>2]|0);k[a+2004>>2]=b;dF(a+76|0);wk(a)|0;return}function WM(a,b){a=a|0;b=b|0;if((i[a+133>>0]|0)==0?Ch(a,-1,m[b+12>>1]|0,k[b+8>>2]|0,0)|0:0)tk((k[a+4>>2]|0)+424|0,a);return}function XM(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4356;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function YM(a,b){a=+a;b=+b;var c=0,d=0;p[u>>3]=a;d=k[u>>2]|0;c=k[u+4>>2]|0;p[u>>3]=b;c=k[u+4>>2]&-2147483648|c&2147483647;k[u>>2]=d;k[u+4>>2]=c;return +(+p[u>>3])}function ZM(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=3144;b=a+4|0;k[b>>2]=3168;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function _M(a,b){a=a|0;b=b|0;k[a+4>>2]=b+-1;k[a>>2]=26108;k[a+8>>2]=46;k[a+12>>2]=44;b=a+16|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}return}function $M(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((b|0)==(c|0))break;a=i[b>>0]|0;if(a<<24>>24>-1){d=Fba()|0;a=k[(k[d>>2]|0)+(a<<24>>24<<2)>>2]&255}i[b>>0]=a;b=b+1|0}return c|0}function aN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((b|0)==(c|0))break;a=i[b>>0]|0;if(a<<24>>24>-1){d=Gba()|0;a=k[(k[d>>2]|0)+(a<<24>>24<<2)>>2]&255}i[b>>0]=a;b=b+1|0}return c|0}function bN(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;k[c>>2]=k[a+48>>2];b=k[(k[a+20>>2]|0)+12>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,c);r=d;return}function cN(a){a=a|0;var b=0,c=0;b=a+4|0;a=k[b>>2]|0;c=k[a+200>>2]|0;if(c){HH(c);a=k[b>>2]|0}a=k[a+204>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+20>>2]&2047](a);return}function dN(a){a=a|0;var b=0;uA(a);V2(a+36|0);b=a+24|0;if((k[a+28>>2]|0)<0)wc(k[b>>2]|0);k[b>>2]=0;b=a+8|0;if((k[a+12>>2]|0)<0)wc(k[b>>2]|0);k[b>>2]=0;return}function eN(a){a=a|0;var b=0;k[a>>2]=2568;b=a+4|0;k[b>>2]=2592;up(a);$H(a+8|0);k[b>>2]=2024;return}function fN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4452;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function gN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=13024;b=a+4|0;k[b>>2]=13048;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function hN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=4828;b=a+4|0;k[b>>2]=4852;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function iN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2472;b=a+4|0;k[b>>2]=2496;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function jN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=13964;b=a+4|0;k[b>>2]=13988;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[a>>2]|0;if(((k[a+64>>2]|0)+(k[a+44>>2]|0)|0)>(c|0))fc[k[d+104>>2]&255](a,b,c);else fc[k[d+108>>2]&255](a,b,c);return}function lN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[a>>2]|0;if(((k[a+64>>2]|0)+(k[a+44>>2]|0)|0)>(c|0))fc[k[d+112>>2]&255](a,b,c);else fc[k[d+116>>2]&255](a,b,c);return}function mN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;tF(a);b=k[a+20>>2]|0;yb(133,b|0,c|0,(Ub[k[(k[d>>2]|0)+64>>2]&511](d)|0)&1|0)|0;return}function nN(a){a=a|0;var b=0,c=0,d=0;b=a+160|0;if(i[b>>0]|0){c=a+156|0;d=Ta(0,k[c>>2]|0)|0;k[c>>2]=d;i[b>>0]=0}tB(a+152|0,k[(k[a+4>>2]|0)+1472>>2]|0)|0;return}function oN(a){a=a|0;var b=0,c=0,d=0;b=a+176|0;if(i[b>>0]|0){c=a+172|0;d=Ta(0,k[c>>2]|0)|0;k[c>>2]=d;i[b>>0]=0}tB(a+168|0,k[(k[a+4>>2]|0)+1468>>2]|0)|0;return}function pN(a){a=a|0;var b=0;k[a>>2]=2856;b=a+4|0;k[b>>2]=2880;up(a);$H(a+8|0);k[b>>2]=2024;return}function qN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=14988;b=a+4|0;k[b>>2]=15012;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function rN(a,b){a=a|0;b=b|0;k[a+4>>2]=b+-1;k[a>>2]=26068;i[a+8>>0]=46;i[a+9>>0]=44;b=a+12|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}return}function sN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18908;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function tN(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5792;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function uN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=5524;b=a+4|0;k[b>>2]=5548;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function vN(a){a=a|0;var b=0;b=a+152|0;if(!(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(a=b,!((k[a>>2]|0)==0&(k[a+4>>2]|0)==0)):0)){a=_J()|0;k[b>>2]=a;k[b+4>>2]=M}return}function wN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=2180;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function xN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18876;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function yN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a+4|0;fI(a,(k[d>>2]|0)+c|0);fE((k[a+8>>2]|0)+(k[d>>2]|0)|0,b|0,c|0)|0;k[d>>2]=(k[d>>2]|0)+c}return}function zN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=7820;b=a+4|0;k[b>>2]=7844;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function AN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!(n4(0,R9((k[a+4>>2]|0)+424|0)|0)|0))AG(a,b,c);return}function BN(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=16964;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function CN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=2276;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function DN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18972;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function EN(a,b){a=a|0;b=b|0;var c=0;c=Eb(74,k[a+8>>2]|0,+(+p[a+40>>3]))|0;b=a+12|0;a=k[b>>2]|0;if((a|0)!=-1){Ta(2,a|0)|0;k[b>>2]=-1}k[b>>2]=c;return}function FN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[a>>2]|0;if(((k[a+64>>2]|0)+(k[a+44>>2]|0)|0)>(c|0))fc[k[d+120>>2]&255](a,b,c);else fc[k[d+124>>2]&255](a,b,c);return}function GN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5408;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function HN(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;Y$(c,b);a=k[a+4>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,c);_R(c);r=d;return}function IN(a,b,c){a=a|0;b=b|0;c=c|0;if(!(TJ(a+24|0,b,((b|0)<0)<<31>>31)|0)?!(bX((k[a+4>>2]|0)+2024|0,b)|0):0)jl(a,b,c);return}function JN(a){a=a|0;var b=0;k[a>>2]=2760;b=a+4|0;k[b>>2]=2784;up(a);$H(a+8|0);k[b>>2]=2024;return}function KN(a){a=a|0;var b=0;k[a>>2]=3192;b=a+4|0;k[b>>2]=3216;up(a);$H(a+8|0);k[b>>2]=2024;return}function LN(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=4876;a=b+4|0;k[a>>2]=4900;up(b);$H(b+8|0);k[a>>2]=2024;return}function MN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=r;r=r+16|0;g=f;k[g>>2]=e;e=O0(c)|0;c=vs(a,b,d,g)|0;if(e|0)O0(e)|0;r=f;return c|0}function NN(a){a=a|0;var b=0;k[a>>2]=2520;b=a+4|0;k[b>>2]=2544;up(a);$H(a+8|0);k[b>>2]=2024;return}function ON(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4484;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function PN(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=6936;a=b+4|0;k[a>>2]=6960;up(b);$H(b+8|0);k[a>>2]=2024;return}function QN(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=3096;a=b+4|0;k[a>>2]=3120;up(b);$H(b+8|0);k[a>>2]=2024;return}function RN(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=4596;a=b+4|0;k[a>>2]=4620;up(b);$H(b+8|0);k[a>>2]=2024;return}function SN(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=12224;a=b+4|0;k[a>>2]=12248;up(b);$H(b+8|0);k[a>>2]=2024;return}function TN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=5572;b=a+4|0;k[b>>2]=5596;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function UN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=10624;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function VN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=3e3;b=a+4|0;k[b>>2]=3024;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function WN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=4924;b=a+4|0;k[b>>2]=4948;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function XN(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2952;b=a+4|0;k[b>>2]=2976;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function YN(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4292;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function ZN(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=4324;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function _N(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;k[f>>2]=d;c=vs(a,b,c,f)|0;d=b+-1|0;if(!((c|0)>-1&c>>>0<b>>>0)){i[a+d>>0]=0;c=d}r=e;return c|0}function $N(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2904;b=a+4|0;k[b>>2]=2928;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function aO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>12632256)J5(a);else{c=cW(b*340|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*340|0);return}}function bO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>11545611)J5(a);else{c=cW(b*372|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*372|0);return}}function cO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>76695844)J5(a);else{c=cW(b*56|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*56|0);return}}function dO(a){a=a|0;var b=0,c=0,d=0,e=0;d=a+4|0;e=k[d>>2]|0;b=e+1|0;k[d>>2]=b;c=k[a>>2]|0;a=i[(k[c>>2]|0)+e>>0]|0;k[d>>2]=e+2;return (l[(k[c>>2]|0)+b>>0]|0|(a&255)<<8)&65535|0}function eO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=2212;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function fO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=6192;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function gO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5168;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function hO(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((a|0)==(k[b+8>>2]|0))Vt(0,b,c,d,e);return}function iO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=2244;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function jO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=19004;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function kO(a){a=a|0;var b=0,c=0,d=0;b=k[a+8>>2]|0;d=k[a+12>>2]|0;c=(k[a+4>>2]|0)+(d>>1)|0;if(!(d&1))a=b;else a=k[(k[c>>2]|0)+b>>2]|0;Rb[a&2047](c);return}function lO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>59652323)J5(a);else{c=cW(b*72|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*72|0);return}}function mO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a;d=n_(b|0,c|0,k[d>>2]|0,k[d+4>>2]|0)|0;if(!((d|0)==0&(M|0)==0)){e=a;k[e>>2]=b;k[e+4>>2]=c;pn(a+8|0,d)}return}function nO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=2148;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function oO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5136;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function pO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18780;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)<(a|0)&(a|0)<(b+c|0)){d=a;b=b+c|0;a=a+c|0;while((c|0)>0){a=a-1|0;b=b-1|0;c=c-1|0;i[a>>0]=i[b>>0]|0}a=d}else fE(a,b,c)|0;return a|0}function rO(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=(b&65535)>>>8;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=b;return}function sO(a,b){a=a|0;b=b|0;var c=0;c=k[a+44>>2]|0;c=(((TJ((k[a+4>>2]|0)+2024|0,c,0)|0)^1)<<31>>31)+c|0;if((c|0)<(b|0))c=((k[a+64>>2]|0)+c|0)>=(b|0);else c=0;return c|0}function tO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=2116;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function uO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=6516;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function vO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5300;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function wO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=18844;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function xO(a){a=a|0;a=a+-4|0;k[a>>2]=2664;k[a+4>>2]=2688;up(a);$H(a+8|0);zba(a);return}function yO(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=19188;a=b+4|0;k[a>>2]=19212;up(b);$H(b+8|0);k[a>>2]=2024;return}function zO(a){a=a|0;a=a+-4|0;k[a>>2]=2616;k[a+4>>2]=2640;up(a);$H(a+8|0);zba(a);return}function AO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>119304647)J5(a);else{c=cW(b*36|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*36|0);return}}function BO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>44739242)J5(a);else{c=cW(b*96|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*96|0);return}}function CO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((b|0)==(c|0))break;a=k[b>>2]|0;if(a>>>0<128){d=Fba()|0;a=k[(k[d>>2]|0)+(a<<2)>>2]|0}k[b>>2]=a;b=b+4|0}return c|0}function DO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((b|0)==(c|0))break;a=k[b>>2]|0;if(a>>>0<128){d=Gba()|0;a=k[(k[d>>2]|0)+(a<<2)>>2]|0}k[b>>2]=a;b=b+4|0}return c|0}function EO(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;YG(a,b);a=N6(a,43147)|0;fY(d,k[b+20>>2]|0);GA(a,d)|0;Lv(d);r=c;return}function FO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=6548;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function GO(a){a=a|0;k[a>>2]=19288;p1(a+28|0);p1(a+16|0);nG(a+4|0);zba(a);return}function HO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>89478485)J5(a);else{c=cW(b*48|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*48|0);return}}function IO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(44)|0;d=a+8|0;VA(c,k[d>>2]|0,b);k[d>>2]=c;a=k[a+4>>2]|0;if(a|0?(k[a>>2]|0)==0:0)hZ(a,c);return}function JO(a,b){a=a|0;b=b|0;var c=0;c=cW(24)|0;iI(c,a);iI(c+12|0,b);return c|0}function KO(a,b,c){a=a|0;b=b|0;c=c|0;if(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)Wz(a,b);else ID(a,b);return}function LO(a,b){a=a|0;b=b|0;var c=0.0;c=+(b|0);b=a+2112|0;p[b>>3]=c+ +p[b>>3];b=a+2120|0;p[b>>3]=c+ +p[b>>3];b=(k[(k[a+1256>>2]|0)+200>>2]|0)+968|0;p[b>>3]=c+ +p[b>>3];return}function MO(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=13688;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function NO(a){a=a|0;var b=0,c=0;k[a>>2]=-1;k[a+4>>2]=-1;b=Ta(65,0)|0;c=k[a>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[a>>2]=-1}k[a>>2]=b;nU(a);return}function OO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4420;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function PO(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=3048;a=b+4|0;k[a>>2]=3072;up(b);$H(b+8|0);k[a>>2]=2024;return}function QO(a){a=a|0;var b=0;b=a+288|0;a=k[b>>2]|0;if(a|0){Rb[k[(k[a>>2]|0)+12>>2]&2047](a);a=k[b>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);k[b>>2]=0}return}function RO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4516;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function SO(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=3144;a=b+4|0;k[a>>2]=3168;up(b);$H(b+8|0);k[a>>2]=2024;return}function TO(a){a=a|0;a=a+-4|0;k[a>>2]=2568;k[a+4>>2]=2592;up(a);$H(a+8|0);zba(a);return}function UO(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>13765920)J5(a);else{c=cW(b*312|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*312|0);return}}function VO(a){a=a|0;var b=0;if((LY(a)|0?(b=k[a+288>>2]|0,(k[b+48>>2]|0)==0):0)?(k[b+72>>2]|0)==0:0)a=(i[b+85>>0]|0)!=0;else a=0;return a|0}function WO(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5916;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function XO(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=13024;a=b+4|0;k[a>>2]=13048;up(b);$H(b+8|0);k[a>>2]=2024;return}function YO(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=4828;a=b+4|0;k[a>>2]=4852;up(b);$H(b+8|0);k[a>>2]=2024;return}function ZO(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2472;a=b+4|0;k[a>>2]=2496;up(b);$H(b+8|0);k[a>>2]=2024;return}function _O(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>268435455)J5(a);else{c=cW(b<<4)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b<<4);return}}function $O(a,b){a=a|0;b=b|0;var c=0.0;c=+(b|0);b=a+2128|0;p[b>>3]=c+ +p[b>>3];b=a+2136|0;p[b>>3]=c+ +p[b>>3];b=(k[(k[a+1256>>2]|0)+200>>2]|0)+976|0;p[b>>3]=c+ +p[b>>3];return}function aP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=13464;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function bP(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=13964;a=b+4|0;k[a>>2]=13988;up(b);$H(b+8|0);k[a>>2]=2024;return}function cP(a){a=a|0;a=a+-4|0;k[a>>2]=2856;k[a+4>>2]=2880;up(a);$H(a+8|0);zba(a);return}function dP(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=9004;b=a+4|0;k[b>>2]=9028;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function eP(a){a=a|0;if((k[a+712>>2]|0)!=(k[a+716>>2]|0))qq(a,Iy(0,a+712|0,-1)|0)|0;return 1}function fP(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;i[a+48>>0]=1;Sh(a)|0;a=(k[a+12>>2]|0)-(k[a+8>>2]|0)|0;if(a|0){k[b>>2]=a;kZ(69314,b)|0}r=c;return}function gP(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=14988;a=b+4|0;k[a>>2]=15012;up(b);$H(b+8|0);k[a>>2]=2024;return}function hP(a,b){a=a|0;b=b|0;Ub[k[(k[a>>2]|0)+24>>2]&511](a)|0;b=k_(b,113404)|0;k[a+36>>2]=b;b=(Ub[k[(k[b>>2]|0)+28>>2]&511](b)|0)&1;i[a+44>>0]=b;return}function iP(a,b){a=a|0;b=b|0;Ub[k[(k[a>>2]|0)+24>>2]&511](a)|0;b=k_(b,113396)|0;k[a+36>>2]=b;b=(Ub[k[(k[b>>2]|0)+28>>2]&511](b)|0)&1;i[a+44>>0]=b;return}function jP(a){a=a|0;var b=0,c=0,d=0;c=k[a+4>>2]|0;if(c|0){b=k[a+8>>2]|0;d=k[a+12>>2]|0;a=c+(d>>1)|0;if(d&1)b=k[(k[a>>2]|0)+b>>2]|0;Rb[b&2047](a)}return}function kP(a,b){a=a|0;b=b|0;var c=0,d=0;a=a+8|0;d=k[a+4>>2]|0;b=b+8|0;c=k[b+4>>2]|0;return d>>>0<c>>>0|((d|0)==(c|0)?(k[a>>2]|0)>>>0<(k[b>>2]|0)>>>0:0)|0}function lP(a){a=a|0;var b=0;b=k[(k[a+36>>2]|0)+72+(k[a+268>>2]<<2)>>2]|0;Lg(a,k[b+24>>2]|0,k[b+28>>2]|0)|0;wT(a,0,0);return}function mP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=8848;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function nP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18940;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function oP(a,b){a=a|0;b=b|0;var c=0,d=0;c=cW(16)|0;d=k[a+8>>2]|0;a=k[a+12>>2]|0;k[c>>2]=5736;k[c+4>>2]=b;k[c+8>>2]=d;k[c+12>>2]=a;return c|0}function pP(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=5524;a=b+4|0;k[a>>2]=5548;up(b);$H(b+8|0);k[a>>2]=2024;return}function qP(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=6984;b=a+4|0;k[b>>2]=7008;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function rP(a){a=a|0;var b=0;b=(m1(w4(k[a+4>>2]|0)|0)|0)+116|0;b=k[b>>2]|0;if(b|0)hL(a,b);return}function sP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;tF(a);a=k[a+20>>2]|0;La(137,a|0,c|0,(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0)&1|0,d|0)|0;return}function tP(a){a=a|0;var b=0,c=0;b=k[a+52>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,a);b=a+64|0;c=k[b>>2]|0;if(c|0){wc(c);k[b>>2]=0}Ta(42,k[a+56>>2]|0)|0;return}function uP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=8912;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function vP(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=7820;a=b+4|0;k[a>>2]=7844;up(b);$H(b+8|0);k[a>>2]=2024;return}function wP(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2424;b=a+4|0;k[b>>2]=2448;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function xP(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>107374182)J5(a);else{c=cW(b*40|0)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b*40|0);return}}function yP(a,b,c){a=a|0;b=b|0;c=c|0;if(Ub[k[(k[c>>2]|0)+64>>2]&511](c)|0){c=a+112|0;k[c>>2]=(k[c>>2]|0)+1}Sb[k[(k[a>>2]|0)+44>>2]&511](a,1);return}function zP(a){a=a|0;ru(a);Kt(a);BX(a);tB(a+72|0,k[(k[(k[a+60>>2]|0)+916>>2]|0)+800>>2]|0)|0;return}function AP(a,b){a=a|0;b=b|0;var c=0;b=k[(k[(k[a+1256>>2]|0)+200>>2]|0)+1200>>2]|0;if(b|0?(c=a+2270|0,(i[c>>0]|0)==0):0){i[c>>0]=1;eA(b,a)}return}function BP(a,b,c){a=a|0;b=b|0;c=c|0;yb(43,k[a+56>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,((i[c+11>>0]|0)<0?k[c>>2]|0:c)|0)|0;return}function CP(a){a=a|0;var b=0;k[a>>2]=4876;b=a+4|0;k[b>>2]=4900;up(a);$H(a+8|0);k[b>>2]=2024;return}function DP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=8880;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function EP(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2712;b=a+4|0;k[b>>2]=2736;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function FP(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2808;b=a+4|0;k[b>>2]=2832;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function GP(a){a=a|0;var b=0;k[a>>2]=6936;b=a+4|0;k[b>>2]=6960;up(a);$H(a+8|0);k[b>>2]=2024;return}function HP(a){a=a|0;var b=0;k[a>>2]=3096;b=a+4|0;k[b>>2]=3120;up(a);$H(a+8|0);k[b>>2]=2024;return}function IP(a){a=a|0;var b=0;k[a>>2]=4596;b=a+4|0;k[b>>2]=4620;up(a);$H(a+8|0);k[b>>2]=2024;return}function JP(a){a=a|0;var b=0;k[a>>2]=12224;b=a+4|0;k[b>>2]=12248;up(a);$H(a+8|0);k[b>>2]=2024;return}function KP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=7936;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function LP(a){a=a|0;var b=0;a=a+-4|0;k[a>>2]=2376;b=a+4|0;k[b>>2]=2400;up(a);$H(a+8|0);k[b>>2]=2024;zba(a);return}function MP(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;if(!(i[a+80>>0]|0))a=1;else{vy(c,a,b);a=(k[c+4>>2]|0)!=0}r=d;return a|0}function NP(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;if((k[a+8>>2]|0)==0?(GD(a)|0)!=0:0)a=-1;else if((Yb[k[a+32>>2]&31](a,b,1)|0)==1)a=l[b>>0]|0;else a=-1;r=c;return a|0}function OP(a){a=a|0;a=a+-4|0;k[a>>2]=2760;k[a+4>>2]=2784;up(a);$H(a+8|0);zba(a);return}function PP(a){a=a|0;a=a+-4|0;k[a>>2]=3192;k[a+4>>2]=3216;up(a);$H(a+8|0);zba(a);return}function QP(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>134217727)J5(a);else{c=cW(b<<5)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b<<5);return}}function RP(a){a=a|0;var b=0,c=0,d=0;c=k[a>>2]|0;d=c;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~(((b+-12-d|0)>>>0)/12|0)*12|0);zba(c)}return}function SP(a){a=a|0;var b=0,c=0,d=0;c=k[a>>2]|0;d=c;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~(((b+-20-d|0)>>>0)/20|0)*20|0);zba(c)}return}function TP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18652;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function UP(a){a=a|0;a=a+-4|0;k[a>>2]=2520;k[a+4>>2]=2544;up(a);$H(a+8|0);zba(a);return}function VP(a,b){a=a|0;b=b|0;if(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)Wz(a,b);else ID(a,b);return}function WP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4388;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function XP(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=13256;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function YP(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=5572;a=b+4|0;k[a>>2]=5596;up(b);$H(b+8|0);k[a>>2]=2024;return}function ZP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;k[f>>2]=d;d=O0(b)|0;b=MC(a,c,f)|0;if(d|0)O0(d)|0;r=e;return b|0}function _P(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+48|0;if(i[c>>0]|0){d=a+44|0;e=Ta(0,k[d>>2]|0)|0;k[d>>2]=e;i[c>>0]=0}tB(a+40|0,b*1e3|0)|0;return}function $P(a){a=a|0;var b=0;rb(k[a+28>>2]|0);k[a>>2]=9004;b=a+4|0;k[b>>2]=9028;up(a);$H(a+8|0);k[b>>2]=2024;return}function aQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4356;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function bQ(a){a=a|0;k[a>>2]=19288;p1(a+28|0);p1(a+16|0);nG(a+4|0);return}function cQ(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=3e3;a=b+4|0;k[a>>2]=3024;up(b);$H(b+8|0);k[a>>2]=2024;return}function dQ(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=4924;a=b+4|0;k[a>>2]=4948;up(b);$H(b+8|0);k[a>>2]=2024;return}function eQ(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2952;a=b+4|0;k[a>>2]=2976;up(b);$H(b+8|0);k[a>>2]=2024;return}function fQ(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=k[c>>2]|0;do{k[b>>2]=0;b=(k[c>>2]|0)+4|0;k[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function gQ(a,b){a=a|0;b=b|0;if(!(i[a+212>>0]|0)){ub(17,k[a+228>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0;a=1}else a=0;return a|0}function hQ(a){a=a|0;var b=0,c=0;k[a>>2]=19112;c=a+4|0;k[c>>2]=19188;b=a+8|0;k[b>>2]=19212;up(c);$H(a+12|0);k[b>>2]=2024;return}function iQ(a,b,c){a=a|0;b=b|0;c=+c;if(((i[a+32>>0]|0)==0?(k[a+40>>2]|0)==0:0)?(k[b+12>>2]|0)==2019846515:0){p[a+16>>3]=0.0;p[a+24>>3]=+((k[b+8>>2]|0)>>>0)+c}return}function jQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4452;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function kQ(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2904;a=b+4|0;k[a>>2]=2928;up(b);$H(b+8|0);k[a>>2]=2024;return}function lQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=10300;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function mQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=14624;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function nQ(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>1073741823)J5(a);else{c=cW(b<<2)|0;k[a+4>>2]=c;k[a>>2]=c;k[a+8>>2]=c+(b<<2);return}}function oQ(a){a=a|0;var b=0;k[a>>2]=19188;b=a+4|0;k[b>>2]=19212;up(a);$H(a+8|0);k[b>>2]=2024;return}function pQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=12816;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function qQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=10268;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function rQ(a){a=a|0;var b=0,c=0;b=a+8|0;c=k[b>>2]|0;a=k[a>>2]|0;a=(l[a+(c+1)>>0]|0)<<16|(l[a+c>>0]|0)<<24|(l[a+(c+2)>>0]|0)<<8|(l[a+(c+3)>>0]|0);k[b>>2]=c+4;return a|0}function sQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;k[f>>2]=d;d=O0(b)|0;b=cK(a,c,f)|0;if(d|0)O0(d)|0;r=e;return b|0}function tQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18908;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function uQ(a){a=a|0;var b=0;b=i[w+(a&255)>>0]|0;if((b|0)<8)return b|0;b=i[w+(a>>8&255)>>0]|0;if((b|0)<8)return b+8|0;b=i[w+(a>>16&255)>>0]|0;if((b|0)<8)return b+16|0;return (i[w+(a>>>24)>>0]|0)+24|0}function vQ(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0)J5(a);else{b=((b+-1|0)>>>5)+1|0;c=cW(b<<2)|0;k[a>>2]=c;k[a+4>>2]=0;k[a+8>>2]=b;return}}function wQ(a,b){a=a|0;b=b|0;var c=0;c=a+32|0;k[c>>2]=b;if(TJ(a,b,0)|0)do{b=(k[c>>2]|0)+1|0;k[c>>2]=b}while(TJ(a,b,0)|0);return}function xQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=2180;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function yQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18876;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function zQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=9404;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function AQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=17124;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function BQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;vu(a,c,d);return}function CQ(a){a=a|0;var b=0;k[a>>2]=3048;b=a+4|0;k[b>>2]=3072;up(a);$H(a+8|0);k[b>>2]=2024;return}function DQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=2276;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function EQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18972;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function FQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;Qx(a,c,d);return}function GQ(a){a=a|0;var b=0;k[a>>2]=3144;b=a+4|0;k[b>>2]=3168;up(a);$H(a+8|0);k[b>>2]=2024;return}function HQ(a){a=a|0;var b=0,c=0,d=0;c=k[a>>2]|0;d=c;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~(((b+-40-d|0)>>>0)/40|0)*40|0);zba(c)}return}function IQ(a){a=a|0;var b=0;k[a>>2]=13024;b=a+4|0;k[b>>2]=13048;up(a);$H(a+8|0);k[b>>2]=2024;return}function JQ(a){a=a|0;var b=0;k[a>>2]=4828;b=a+4|0;k[b>>2]=4852;up(a);$H(a+8|0);k[b>>2]=2024;return}function KQ(a){a=a|0;var b=0;k[a>>2]=2472;b=a+4|0;k[b>>2]=2496;up(a);$H(a+8|0);k[b>>2]=2024;return}function LQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5408;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function MQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=17092;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function NQ(a){a=a|0;k[a>>2]=15336;bS(a+64|0);bS(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function OQ(a){a=a|0;var b=0;k[a>>2]=13964;b=a+4|0;k[b>>2]=13988;up(a);$H(a+8|0);k[b>>2]=2024;return}function PQ(a){a=a|0;k[a>>2]=2664;k[a+4>>2]=2688;up(a);$H(a+8|0);zba(a);return}function QQ(a){a=a|0;k[a>>2]=2616;k[a+4>>2]=2640;up(a);$H(a+8|0);zba(a);return}function RQ(a){a=a|0;var b=0;k[a>>2]=14988;b=a+4|0;k[b>>2]=15012;up(a);$H(a+8|0);k[b>>2]=2024;return}function SQ(a){a=a|0;var b=0,c=0,d=0;b=k[a+4>>2]|0;c=a+8|0;d=k[c>>2]|0;if((d|0)!=(b|0))k[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);a=k[a>>2]|0;if(a|0)zba(a);return}function TQ(a){a=a|0;var b=0;k[a>>2]=5524;b=a+4|0;k[b>>2]=5548;up(a);$H(a+8|0);k[b>>2]=2024;return}function UQ(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=10624;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function VQ(a){a=a|0;var b=0,c=0;c=k[a>>2]|0;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~(((b+-20-c|0)>>>0)/20|0)*20|0);zba(c)}return}function WQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ye(a+836|0,b,c,d);return}function XQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qd(a,b+76|0,c,d);return}function YQ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[a+4>>2]|0;if(d>>>0<=b>>>0?((k[a+8>>2]|0)+d|0)>>>0>b>>>0:0){k[(k[a+12>>2]|0)+(b-d<<2)>>2]=c;a=1}else a=0;return a|0}function ZQ(a){a=a|0;var b=0;k[a>>2]=7820;b=a+4|0;k[b>>2]=7844;up(a);$H(a+8|0);k[b>>2]=2024;return}function _Q(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=8784;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function $Q(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=4324;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function aR(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=9004;a=b+4|0;k[a>>2]=9028;up(b);$H(b+8|0);k[a>>2]=2024;return}function bR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=$(k[(k[a+916>>2]|0)+616>>2]|0,d)|0;k[a+872>>2]=e;WC(a+196|0,b,c,d);return}function cR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=17500;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function dR(a){a=a|0;var b=0;b=a+200|0;a=k[b>>2]|0;if(a|0){po(a);a=k[b>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+12>>2]&2047](a);k[b>>2]=0}return}function eR(a){a=a|0;k[a>>2]=2568;k[a+4>>2]=2592;up(a);$H(a+8|0);zba(a);return}function fR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5168;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function gR(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=6984;a=b+4|0;k[a>>2]=7008;up(b);$H(b+8|0);k[a>>2]=2024;return}function hR(a){a=a|0;k[a>>2]=8268;p1(a+64|0);p1(a+20|0);p1(a+8|0);zba(a);return}function iR(a){a=a|0;var b=0;b=a+1196|0;a=k[b>>2]|0;if(a|0){c8(a);a=k[b>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+12>>2]&2047](a);k[b>>2]=0}return}function jR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+8|0;if((k[c>>2]|0)>>>0<b>>>0?(e=vba(b)|0,d=k[a>>2]|0,fE(e|0,d|0,k[a+4>>2]|0)|0,k[a>>2]=e,k[c>>2]=b,d|0):0)wba(d);return}function kR(a){a=a|0;a=a+-4|0;k[a>>2]=4876;k[a+4>>2]=4900;up(a);$H(a+8|0);zba(a);return}function lR(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2424;a=b+4|0;k[a>>2]=2448;up(b);$H(b+8|0);k[a>>2]=2024;return}function mR(a){a=a|0;var b=0,c=0,d=0;c=k[a>>2]|0;d=c;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~((b+-16-d|0)>>>4)<<4);zba(c)}return}function nR(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;if(((k[a+4>>2]|0)-(k[a>>2]|0)>>2|0)!=(b|0)){k[c>>2]=0;DH(a,b,c)}r=d;return}function oR(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)?sO(a,c)|0:0)C1(a,c)|0;return}function pR(a){a=a|0;k[a>>2]=2856;k[a+4>>2]=2880;up(a);$H(a+8|0);zba(a);return}function qR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=2148;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function rR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5136;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function sR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18780;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function tR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=6240;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function uR(a){a=a|0;var b=0,c=0;c=a+8|0;b=k[c>>2]|0;k[c>>2]=b-1;b=b+-1|0;if(!((a|0)==0|(b|0)!=0))Rb[k[(k[a>>2]|0)+20>>2]&2047](a);return b|0}function vR(a){a=a|0;a=a+-4|0;k[a>>2]=6936;k[a+4>>2]=6960;up(a);$H(a+8|0);zba(a);return}function wR(a){a=a|0;a=a+-4|0;k[a>>2]=3096;k[a+4>>2]=3120;up(a);$H(a+8|0);zba(a);return}function xR(a){a=a|0;a=a+-4|0;k[a>>2]=4596;k[a+4>>2]=4620;up(a);$H(a+8|0);zba(a);return}function yR(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2712;a=b+4|0;k[a>>2]=2736;up(b);$H(b+8|0);k[a>>2]=2024;return}function zR(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2808;a=b+4|0;k[a>>2]=2832;up(b);$H(b+8|0);k[a>>2]=2024;return}function AR(a){a=a|0;a=a+-4|0;k[a>>2]=12224;k[a+4>>2]=12248;up(a);$H(a+8|0);zba(a);return}function BR(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;k[c>>2]=b;a=k[a+8>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+12>>2]&511](a,c);r=d;return}function CR(a){a=a|0;var b=0;k[a>>2]=5572;b=a+4|0;k[b>>2]=5596;up(a);$H(a+8|0);k[b>>2]=2024;return}function DR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=2116;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function ER(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=6516;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function FR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5300;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function GR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=18844;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function HR(a){a=a|0;var b=0;b=a+-4|0;k[b>>2]=2376;a=b+4|0;k[a>>2]=2400;up(b);$H(b+8|0);k[a>>2]=2024;return}function IR(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0)?sO(a,c)|0:0)Aj(a,c)|0;return}function JR(a){a=a|0;var b=0;k[a>>2]=3e3;b=a+4|0;k[b>>2]=3024;up(a);$H(a+8|0);k[b>>2]=2024;return}function KR(a){a=a|0;var b=0;k[a>>2]=4924;b=a+4|0;k[b>>2]=4948;up(a);$H(a+8|0);k[b>>2]=2024;return}function LR(a){a=a|0;var b=0;k[a>>2]=2952;b=a+4|0;k[b>>2]=2976;up(a);$H(a+8|0);k[b>>2]=2024;return}function MR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a+104>>2]=b;c=k[a+8>>2]|0;d=k[a+4>>2]|0;e=c-d|0;k[a+108>>2]=e;if((b|0)!=0&(e|0)>(b|0))k[a+100>>2]=d+b;else k[a+100>>2]=c;return}function NR(a){a=a|0;i[a+368>>0]=1;if(LY(a)|0){i[a+292>>0]=1;a=k[a+288>>2]|0;Rb[k[(k[a>>2]|0)+28>>2]&2047](a)}return}function OR(a){a=a|0;var b=0;k[a>>2]=2904;b=a+4|0;k[b>>2]=2928;up(a);$H(a+8|0);k[b>>2]=2024;return}function PR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=13688;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function QR(a){a=a|0;var b=0,c=0;c=a+28|0;b=i[c+11>>0]|0;if(b<<24>>24<0)b=k[a+32>>2]|0;else b=b&255;gD(c,b-(k[a+44>>2]|0)|0,0);return}function RR(a,b,c){a=a|0;b=b|0;c=c|0;k[a>>2]=13512;k[a+4>>2]=c;y3(a+8|0,b);c=a+16|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;return}function SR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=k[a+60>>2]|0;if(a|0)jc[k[(k[a>>2]|0)+8>>2]&63](a,b,c,d);return}function TR(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=14592;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function UR(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;k[c>>2]=b;a=k[a+8>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,c);r=d;return}function VR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(d){c=a+56|0;d=k[c>>2]|0;k[c>>2]=-1;i[a+184>>0]=1;Sb[k[(k[a>>2]|0)+132>>2]&511](a,d)}return}function WR(a){a=a|0;var b=0,c=0,d=0;c=k[a+4>>2]|0;d=k[c+2056>>2]|0;b=k[a+44>>2]|0;b=d+-1-b+((TJ(c+2024|0,b,0)|0)&1^1)|0;return (b|0)>=(k[a+64>>2]|0)|0}function XR(a){a=a|0;k[a>>2]=2760;k[a+4>>2]=2784;up(a);$H(a+8|0);zba(a);return}function YR(a){a=a|0;k[a>>2]=3192;k[a+4>>2]=3216;up(a);$H(a+8|0);zba(a);return}function ZR(a){a=a|0;k[a>>2]=15336;bS(a+64|0);bS(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function _R(a){a=a|0;var b=0,c=0;b=a+4|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}b=k[a>>2]|0;if((b|0)!=-1){Ta(2,b|0)|0;k[a>>2]=-1}return}function $R(a){a=a|0;k[a>>2]=2520;k[a+4>>2]=2544;up(a);$H(a+8|0);zba(a);return}function aS(a){a=a|0;a=a+-4|0;k[a>>2]=19188;k[a+4>>2]=19212;up(a);$H(a+8|0);zba(a);return}function bS(a){a=a|0;var b=0,c=0,d=0;c=k[a>>2]|0;d=c;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~((b+-8-d|0)>>>3)<<3);zba(c)}return}function cS(a){a=a|0;var b=0,c=0;b=cW(16)|0;k[b>>2]=5736;c=b+4|0;a=a+4|0;k[c>>2]=k[a>>2];k[c+4>>2]=k[a+4>>2];k[c+8>>2]=k[a+8>>2];return b|0}function dS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((a|0)==(k[b+8>>2]|0))RD(0,b,c,d);return}function eS(a,b){a=a|0;b=b|0;ml(k[(k[a+4>>2]|0)+4>>2]|0,b);return}function fS(a,b){a=a|0;b=b|0;b=Tn(b,67767,4)|0;Ln(b,k[a+8>>2]|0)|0;return}function gS(a){a=a|0;a=a+-4|0;k[a>>2]=3048;k[a+4>>2]=3072;up(a);$H(a+8|0);zba(a);return}function hS(a){a=a|0;var b=0,c=0;c=a+8|0;k[c>>2]=12;if(!(k[a+48>>2]&1)){b=i[a+52+11>>0]|0;if(b<<24>>24<0)a=k[a+56>>2]|0;else a=b&255;k[c>>2]=a+13}return}function iS(a){a=a|0;a=a+-4|0;k[a>>2]=3144;k[a+4>>2]=3168;up(a);$H(a+8|0);zba(a);return}function jS(a){a=a|0;var b=0;b=a+12|0;ub(83,k[a+8>>2]|0,k[b>>2]|0)|0;a=k[b>>2]|0;if((a|0)!=-1){Ta(2,a|0)|0;k[b>>2]=-1}k[b>>2]=-1;return}function kS(a,b){a=a|0;b=b|0;ol(k[(k[a+4>>2]|0)+4>>2]|0,b);return}function lS(a){a=a|0;a=a+-4|0;k[a>>2]=13024;k[a+4>>2]=13048;up(a);$H(a+8|0);zba(a);return}function mS(a){a=a|0;a=a+-4|0;k[a>>2]=4828;k[a+4>>2]=4852;up(a);$H(a+8|0);zba(a);return}function nS(a){a=a|0;a=a+-4|0;k[a>>2]=2472;k[a+4>>2]=2496;up(a);$H(a+8|0);zba(a);return}function oS(a,b){a=a|0;b=b|0;var c=0,d=0;a=k[a+8>>2]|0;if(a|0){d=k[(k[a>>2]|0)+16>>2]|0;c=cW(108)|0;rt(c,b);Sb[d&511](a,c)}return}function pS(a){a=a|0;k[a>>2]=8268;p1(a+64|0);p1(a+20|0);p1(a+8|0);return}function qS(a){a=a|0;var b=0;k[a>>2]=7972;if(i[a+24>>0]|0?(b=k[a+8>>2]|0,b|0):0){if((k[b+12>>2]|0)<0)wc(k[b+8>>2]|0);zba(b)}mT(a+12|0);return}function rS(a){a=a|0;a=a+-4|0;k[a>>2]=13964;k[a+4>>2]=13988;up(a);$H(a+8|0);zba(a);return}function sS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=c+8|0;_b[k[(k[b>>2]|0)+16>>2]&15](a,b,k[c>>2]|0,k[c+4>>2]|0,0,d);return}function tS(a,b,c){a=a|0;b=b|0;c=c|0;k[a+4>>2]=c;return (La(34,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,a|0,344,1270)|0)!=0|0}function uS(a){a=a|0;var b=0;k[a>>2]=9004;b=a+4|0;k[b>>2]=9028;up(a);$H(a+8|0);k[b>>2]=2024;return}function vS(a){a=a|0;a=a+-4|0;k[a>>2]=14988;k[a+4>>2]=15012;up(a);$H(a+8|0);zba(a);return}function wS(a,b,c){a=a|0;b=b|0;c=c|0;MV(a,b,c);if(c?!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0):0)cG(a);return}function xS(a){a=a|0;a=a+-4|0;k[a>>2]=5524;k[a+4>>2]=5548;up(a);$H(a+8|0);zba(a);return}function yS(a){a=a|0;var b=0;k[a>>2]=8380;b=a+4|0;K6(b);k[b>>2]=8536;b=a+12|0;K6(b);k[b>>2]=8536;k[a+24>>2]=0;k[a+20>>2]=8556;return}function zS(a,b){a=a|0;b=b|0;dY(a,b);k[a>>2]=9584;VU(a+24|0,0,0,512);k[a+44>>2]=0;k[a+48>>2]=0;k[a+40>>2]=a+44;return}function AS(a){a=a|0;var b=0;k[a>>2]=6984;b=a+4|0;k[b>>2]=7008;up(a);$H(a+8|0);k[b>>2]=2024;return}function BS(a){a=a|0;a=a+-4|0;k[a>>2]=7820;k[a+4>>2]=7844;up(a);$H(a+8|0);zba(a);return}function CS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[a+4>>2]=d+-1;k[a>>2]=26016;d=a+8|0;k[d>>2]=b;i[a+12>>0]=c&1;if(!b){c=Lba()|0;k[d>>2]=k[c>>2]}return}function DS(a){a=a|0;var b=0,c=0;c=k[a>>2]|0;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~((b+-8-c|0)>>>3)<<3);zba(c)}return}function ES(a){a=a|0;if((i[109384]|0)==0?E3(109384)|0:0){k[28125]=0;k[28126]=0;k[28127]=0;mB(112500,24152,Z0(24152)|0)}return 112500}function FS(a){a=a|0;if((i[109392]|0)==0?E3(109392)|0:0){k[28128]=0;k[28129]=0;k[28130]=0;mB(112512,24188,Z0(24188)|0)}return 112512}function GS(a){a=a|0;if((i[109400]|0)==0?E3(109400)|0:0){k[28131]=0;k[28132]=0;k[28133]=0;mB(112524,24236,Z0(24236)|0)}return 112524}function HS(a){a=a|0;if((i[109376]|0)==0?E3(109376)|0:0){k[28122]=0;k[28123]=0;k[28124]=0;mB(112488,24116,Z0(24116)|0)}return 112488}function IS(a){a=a|0;k[a>>2]=11060;DK(a);p1(a+52|0);lJ(a+24|0);eU(a);return}function JS(a,b,c){a=a|0;b=b|0;c=c|0;a=~a;if(c)while(1){c=c+-1|0;a=k[11140+(((l[b>>0]|0)^a&255)<<2)>>2]^a>>>8;if(!c)break;else b=b+1|0}return ~a|0}function KS(a){a=a|0;var b=0;k[a>>2]=2424;b=a+4|0;k[b>>2]=2448;up(a);$H(a+8|0);k[b>>2]=2024;return}function LS(a){a=a|0;var b=0;k[a>>2]=19112;b=a+4|0;k[b>>2]=19188;k[a+8>>2]=19212;up(b);$H(a+12|0);zba(a);return}function MS(a){a=a|0;var b=0;k[a>>2]=2712;b=a+4|0;k[b>>2]=2736;up(a);$H(a+8|0);k[b>>2]=2024;return}function NS(a){a=a|0;var b=0;k[a>>2]=2808;b=a+4|0;k[b>>2]=2832;up(a);$H(a+8|0);k[b>>2]=2024;return}function OS(a,b){a=a|0;b=b|0;if(!(i[a+92>>0]|0))Se(a,b)|0;else do Se(a,b)|0;while((k[b>>2]|0)==12);return}function PS(a){a=a|0;var b=0;k[a>>2]=2376;b=a+4|0;k[b>>2]=2400;up(a);$H(a+8|0);k[b>>2]=2024;return}function QS(a){a=a|0;var b=0,c=0;c=a+20|0;b=k[c>>2]|0;k[c>>2]=b-1;b=b+-1|0;if(!((a|0)==0|(b|0)!=0))Rb[k[(k[a>>2]|0)+36>>2]&2047](a);return b|0}function RS(a,b){a=a|0;b=b|0;var c=0;c=a+24|0;D5(c,x9((k[a+4>>2]|0)+2024|0)|0);mO(c,b,((b|0)<0)<<31>>31);return}function SS(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;f=a;k[f>>2]=0;k[f+4>>2]=0;f=a+8|0;k[f>>2]=-1;k[f+4>>2]=-1;return}function TS(a,b,c){a=a|0;b=b|0;c=c|0;qd(a,b+88|0,0,c);return}function US(a){a=a|0;a=a+-4|0;k[a>>2]=5572;k[a+4>>2]=5596;up(a);$H(a+8|0);zba(a);return}function VS(a,b){a=a|0;b=b|0;var c=0;c=k[a+216>>2]|0;if(c>>>0<=b>>>0?((k[a+220>>2]|0)+c|0)>>>0>b>>>0:0)a=k[(k[a+224>>2]|0)+(b-c<<2)>>2]|0;else a=0;return a|0}function WS(a){a=a|0;a=a+-4|0;k[a>>2]=3e3;k[a+4>>2]=3024;up(a);$H(a+8|0);zba(a);return}function XS(a){a=a|0;a=a+-4|0;k[a>>2]=4924;k[a+4>>2]=4948;up(a);$H(a+8|0);zba(a);return}function YS(a){a=a|0;a=a+-4|0;k[a>>2]=2952;k[a+4>>2]=2976;up(a);$H(a+8|0);zba(a);return}function ZS(a){a=a|0;var b=0,c=0;k[a>>2]=17688;b=a+88|0;k[b>>2]=17728;c=k[a+104>>2]|0;if(c|0){iM(c);zba(c)}eU(b);iD(a);return}function _S(a){a=a|0;a=a+-4|0;k[a>>2]=2904;k[a+4>>2]=2928;up(a);$H(a+8|0);zba(a);return}function $S(a){a=a|0;var b=0;if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1)a=-1;else{b=a+12|0;a=k[b>>2]|0;k[b>>2]=a+4;a=k[a>>2]|0}return a|0}function aT(a){a=a|0;var b=0;if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1)a=-1;else{b=a+12|0;a=k[b>>2]|0;k[b>>2]=a+1;a=l[a>>0]|0}return a|0}function bT(a){a=a|0;k[a>>2]=4876;k[a+4>>2]=4900;up(a);$H(a+8|0);zba(a);return}function cT(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;while(1){if((b|0)==(c|0))break;a=i[b>>0]|0;i[e>>0]=a<<24>>24>-1?a:d;e=e+1|0;b=b+1|0}return c|0}function dT(a){a=a|0;var b=0;Rb[k[(k[a>>2]|0)+88>>2]&2047](a);a=a+108|0;b=k[a>>2]|0;if(b|0){if((k[b+12>>2]|0)<0)wc(k[b+8>>2]|0);zba(b);k[a>>2]=0}return}function eT(a){a=a|0;k[a>>2]=6936;k[a+4>>2]=6960;up(a);$H(a+8|0);zba(a);return}function fT(a){a=a|0;k[a>>2]=3096;k[a+4>>2]=3120;up(a);$H(a+8|0);zba(a);return}function gT(a){a=a|0;k[a>>2]=4596;k[a+4>>2]=4620;up(a);$H(a+8|0);zba(a);return}function hT(a){a=a|0;k[a>>2]=12224;k[a+4>>2]=12248;up(a);$H(a+8|0);zba(a);return}function iT(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=19288;b=a+40|0;c=a+4|0;d=c+36|0;do{k[c>>2]=0;c=c+4|0}while((c|0)<(d|0));k[b>>2]=74;k[a+44>>2]=3;i[a+48>>0]=0;return}function jT(a,b){a=a|0;b=b|0;var c=0;c=La(62,a|0,b|0,362,1291)|0;b=a+16|0;a=k[b>>2]|0;if((a|0)!=-1){Ta(2,a|0)|0;k[b>>2]=-1}k[b>>2]=c;return}function kT(a){a=a|0;k[a>>2]=1540;wr(a);HG(a+4|0,k[a+8>>2]|0);zba(a);return}function lT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=k[a>>2]|0;e=c+24|0;k[e>>2]=(k[e>>2]|0)+-1;WC(c,a+4|0,b+-4|0,d);return}function mT(a){a=a|0;var b=0,c=0,d=0;c=k[a>>2]|0;d=c;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~((b+-4-d|0)>>>2)<<2);zba(c)}return}function nT(a,b){a=a|0;b=b|0;Sb[k[(k[a>>2]|0)+12>>2]&511](a,k[b+4>>2]|0);if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);return}function oT(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0))Xk(a+24|0,k[a+44>>2]|0,1e3);return}function pT(a,b){a=a|0;b=b|0;nt(a+4|0,b);GW(a);return}function qT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wd(a+-20|0,b,c,d)|0}function rT(a){a=a|0;k[a>>2]=23180;Q_(a+4|0);a=a+8|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+20>>2]=0;return}function sT(a){a=a|0;k[a>>2]=23116;Q_(a+4|0);a=a+8|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+20>>2]=0;return}function tT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=0;while(1){if((b|0)==(c|0))break;d=(k[b>>2]|0)+(a<<4)|0;e=d&-268435456;a=(e>>>24|e)^d;b=b+4|0}return a|0}function uT(a,b){a=a|0;b=b|0;a=k[a+40>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,b);if(b|0){JE(b);zba(b)}return}function vT(a){a=a|0;var b=0;b=a+440|0;if(i[(k[(k[a+52>>2]|0)+916>>2]|0)+112>>0]|0)Ta(87,k[b>>2]|0)|0;Ta(88,k[b>>2]|0)|0;Dba(a);return}function wT(a,b,c){a=a|0;b=b|0;c=c|0;r$(a+16|0);if(i[a+237>>0]|0?k[a+124>>2]|0:0)r$(a+24|0);return}function xT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=0;while(1){if((b|0)==(c|0))break;d=(i[b>>0]|0)+(a<<4)|0;e=d&-268435456;a=(e>>>24|e)^d;b=b+1|0}return a|0}function yT(a){a=a|0;var b=0;k[a>>2]=8380;b=a+20|0;k[b>>2]=8516;aE(b);h3(a+12|0);h3(a+4|0);zba(a);return}function zT(a){a=a|0;i[a+119>>0]=0;dF(a+20|0);a=k[(k[a+52>>2]|0)+2164>>2]|0;Rb[k[(k[a>>2]|0)+56>>2]&2047](a);return}function AT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ze(a+-20|0,b,c,d)|0}function BT(a){a=a|0;if((i[109312]|0)==0?E3(109312)|0:0){k[27925]=0;k[27926]=0;k[27927]=0;wE(111700,107142,11)}return 111700}function CT(a){a=a|0;if((i[109320]|0)==0?E3(109320)|0:0){k[27928]=0;k[27929]=0;k[27930]=0;wE(111712,107154,20)}return 111712}function DT(a,b){a=a|0;b=b|0;var c=0;c=k[a+4>>2]|0;if(c>>>0<=b>>>0?((k[a+8>>2]|0)+c|0)>>>0>b>>>0:0)a=k[(k[a+12>>2]|0)+(b-c<<2)>>2]|0;else a=0;return a|0}function ET(a){a=a|0;k[a>>2]=19188;k[a+4>>2]=19212;up(a);$H(a+8|0);zba(a);return}function FT(a){a=a|0;if((i[109304]|0)==0?E3(109304)|0:0){k[27922]=0;k[27923]=0;k[27924]=0;wE(111688,107133,8)}return 111688}function GT(a){a=a|0;if((i[109296]|0)==0?E3(109296)|0:0){k[27919]=0;k[27920]=0;k[27921]=0;wE(111676,107124,8)}return 111676}function HT(a,b,c){a=a|0;b=b|0;c=c|0;k[a+52>>2]=b;MM(a+56|0,c)|0;return}function IT(a){a=a|0;var b=0,c=0;b=k[(k[(k[a+1256>>2]|0)+200>>2]|0)+1200>>2]|0;if(b|0?(c=a+2270|0,i[c>>0]|0):0){dD(b);i[c>>0]=0}return}function JT(a,b,c){a=a|0;b=b|0;c=c|0;if(oaa(a)|0?U4(a,b)|0:0){GA(c,hB(a,b)|0)|0;a=1}else a=0;return a|0}function KT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=k[d>>2]|0;a=(k[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;fE(e|0,b|0,a|0)|0;k[d>>2]=(k[d>>2]|0)+a;return c|0}function LT(a){a=a|0;a=a+-8|0;GL(a+8|0);k[a>>2]=7652;aE(a);zba(a);return}function MT(a){a=a|0;a=a+-4|0;k[a>>2]=9004;k[a+4>>2]=9028;up(a);$H(a+8|0);zba(a);return}function NT(a){a=a|0;Kk(a);k[a>>2]=17992;k[a+28>>2]=18228;k[a+32>>2]=18256;k[a+208>>2]=18280;k[a+384>>2]=-1;k[a+388>>2]=-1;k[a+392>>2]=0;return}function OT(a){a=a|0;k[a>>2]=3048;k[a+4>>2]=3072;up(a);$H(a+8|0);zba(a);return}function PT(a){a=a|0;k[a>>2]=3144;k[a+4>>2]=3168;up(a);$H(a+8|0);zba(a);return}function QT(a){a=a|0;a=a+-4|0;k[a>>2]=6984;k[a+4>>2]=7008;up(a);$H(a+8|0);zba(a);return}function RT(a,b,c){a=a|0;b=b|0;c=c|0;return fy(a,b,c)|0}function ST(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[a+240>>2]|0;if(d>>>0<=b>>>0?((k[a+244>>2]|0)+d|0)>>>0>b>>>0:0)k[(k[a+248>>2]|0)+(b-d<<2)>>2]=c;return}function TT(a){a=a|0;k[a>>2]=13024;k[a+4>>2]=13048;up(a);$H(a+8|0);zba(a);return}function UT(a){a=a|0;k[a>>2]=4828;k[a+4>>2]=4852;up(a);$H(a+8|0);zba(a);return}function VT(a){a=a|0;k[a>>2]=2472;k[a+4>>2]=2496;up(a);$H(a+8|0);zba(a);return}function WT(a){a=a|0;a=a+-4|0;k[a>>2]=2424;k[a+4>>2]=2448;up(a);$H(a+8|0);zba(a);return}function XT(a){a=a|0;k[a>>2]=23100;$K(a,0);t6(a+28|0);wc(k[a+32>>2]|0);wc(k[a+36>>2]|0);wc(k[a+48>>2]|0);wc(k[a+60>>2]|0);return}function YT(a){a=a|0;k[a>>2]=13964;k[a+4>>2]=13988;up(a);$H(a+8|0);zba(a);return}function ZT(a){a=a|0;a=a+-4|0;k[a>>2]=2712;k[a+4>>2]=2736;up(a);$H(a+8|0);zba(a);return}function _T(a){a=a|0;a=a+-4|0;k[a>>2]=2808;k[a+4>>2]=2832;up(a);$H(a+8|0);zba(a);return}function $T(a){a=a|0;var b=0;b=Ta(25,0)|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,b,iC(b)|0);wc(b);return}function aU(a){a=a|0;var b=0,c=0;b=a+332|0;c=j[b>>1]|0;if((c&255)<<24>>24?(i[b>>0]=0,(k[a+112>>2]|0)==0&(c&65535)<256):0)Oi(a);return}function bU(a,b){a=a|0;b=b|0;EF(a);if(b|0){p1(b);zba(b)}return}function cU(a){a=a|0;k[a>>2]=14988;k[a+4>>2]=15012;up(a);$H(a+8|0);zba(a);return}function dU(a){a=a|0;a=a+-4|0;k[a>>2]=2376;k[a+4>>2]=2400;up(a);$H(a+8|0);zba(a);return}function eU(a){a=a|0;k[a>>2]=1540;wr(a);HG(a+4|0,k[a+8>>2]|0);return}function fU(a){a=a|0;var b=0;k[a>>2]=9704;b=a+24|0;k[b>>2]=9544;a=k[a+40>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);PV(b);return}function gU(a,b){a=a|0;b=b|0;a=k[a+104>>2]|0;do if(a|0)if(b){qaa(a);break}else{Y_(a);break}while(0);return}function hU(a){a=a|0;k[a>>2]=6272;cj(a,0);XV(a+24|0);mT(a+8|0);zba(a);return}function iU(a){a=a|0;k[a>>2]=5524;k[a+4>>2]=5548;up(a);$H(a+8|0);zba(a);return}function jU(a){a=a|0;k[a>>2]=7820;k[a+4>>2]=7844;up(a);$H(a+8|0);zba(a);return}function kU(a,b){a=a|0;b=b|0;a=a+-4|0;_I(k[a+32>>2]|0,a+8|0,b);return}function lU(a,b,c){a=a|0;b=b|0;c=c|0;fJ((k[a+4>>2]|0)+2040|0,c,0)|0;jc[k[(k[b>>2]|0)+48>>2]&63](b,c,0,2147483647);return}function mU(a){a=a|0;k[a>>2]=16092;SF(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function nU(a){a=a|0;var b=0,c=0;c=Ta(66,0)|0;a=a+4|0;b=k[a>>2]|0;if((b|0)!=-1){Ta(2,b|0)|0;k[a>>2]=-1}k[a>>2]=c;return}function oU(a){a=a|0;var b=0,c=0;c=a+4|0;b=k[c>>2]|0;k[c>>2]=b+-1;if(!b){Rb[k[(k[a>>2]|0)+8>>2]&2047](a);a=1}else a=0;return a|0}function pU(a){a=a|0;var b=0;k[a>>2]=8380;b=a+20|0;k[b>>2]=8516;aE(b);h3(a+12|0);h3(a+4|0);return}function qU(a,b,c){a=a|0;b=b|0;c=c|0;tK(a,(i[b+11>>0]|0)<0?k[b>>2]|0:b,c);return}function rU(a){a=a|0;k[a>>2]=5572;k[a+4>>2]=5596;up(a);$H(a+8|0);zba(a);return}function sU(a,b){a=a|0;b=b|0;do if(a)if(!b){lg(a);a=1;break}else{uB(a);a=1;break}else a=0;while(0);return a|0}function tU(a){a=a|0;var b=0;k[a>>2]=9436;b=a+24|0;k[b>>2]=9544;a=k[a+40>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);PV(b);return}function uU(a){a=a|0;k[a>>2]=3e3;k[a+4>>2]=3024;up(a);$H(a+8|0);zba(a);return}function vU(a){a=a|0;k[a>>2]=4924;k[a+4>>2]=4948;up(a);$H(a+8|0);zba(a);return}function wU(a){a=a|0;k[a>>2]=2952;k[a+4>>2]=2976;up(a);$H(a+8|0);zba(a);return}function xU(a,b){a=a|0;b=b|0;a=Ub[k[(k[a>>2]|0)+192>>2]&511](a)|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,b);return}function yU(a){a=a|0;k[a>>2]=2904;k[a+4>>2]=2928;up(a);$H(a+8|0);zba(a);return}function zU(a){a=a|0;a=a+-8|0;GL(a+8|0);k[a>>2]=7652;aE(a);return}function AU(a){a=a|0;var b=0;k[a>>2]=14948;a=a+4|0;Ta(45,k[a>>2]|0)|0;b=k[a>>2]|0;if((b|0)!=-1){Ta(2,b|0)|0;k[a>>2]=-1}return}function BU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;WC(a+356|0,b,c,d);return}function CU(a){a=a|0;do if(i[a+696>>0]|0){if(i[a+1160>>0]|0?(i[a+760>>0]|0)==0:0)break;dF(a+476|0)}while(0);return}function DU(a,b){a=a|0;b=b|0;var c=0.0;c=+gb(27,((i[a+11>>0]|0)<0?k[a>>2]|0:a)|0);p[b>>3]=c;return 1}function EU(a,b,c){a=a|0;b=b|0;c=c|0;return LG((i[a+11>>0]|0)<0?k[a>>2]|0:a,b,c)|0}function FU(a){a=a|0;IM(a);zba(a);return}function GU(a){a=a|0;JM(a);zba(a);return}function HU(a){a=a|0;if(!(i[a+144>>0]|0))if(!(i[a+248>>0]|0))return 0;else a=a+252|0;else a=a+148|0;return (i[a+60>>0]|0?a+64|0:0)|0}function IU(a){a=a|0;var b=0;b=k[a+384>>2]|0;if((b|0)==-1)a=0;else a=Eb(123,b|0,+(+$b[k[(k[a>>2]|0)+56>>2]&7](a)))|0;return a|0}function JU(a){a=a|0;var b=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;b=Ta(8,0)|0;eZ(a,b)|0;wc(b);return}function KU(a){a=a|0;if(!(i[a+176>>0]|0))if(!(i[a+280>>0]|0))return 0;else a=a+284|0;else a=a+180|0;return (i[a+60>>0]|0?a+64|0:0)|0}function LU(a){a=a|0;var b=0,c=0;i[a+332>>0]=1;b=a+104|0;if(i[b>>0]|0){a=a+100|0;c=Ta(0,k[a>>2]|0)|0;k[a>>2]=c;i[b>>0]=0}return}function MU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;fE((k[k[a>>2]>>2]|0)+(k[d>>2]|0)|0,b|0,c|0)|0;k[d>>2]=(k[d>>2]|0)+c;return}function NU(a){a=a|0;var b=0;b=k[(k[a+4>>2]|0)+204>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+20>>2]&2047](b);kA(a);return}function OU(a,b){a=a|0;b=b|0;VU(a,0,0,0);VU(a+16|0,0,0,0);k[a+32>>2]=0;s1(a+36|0);k[a+52>>2]=b;return}function PU(a){a=a|0;k[a>>2]=6272;cj(a,0);XV(a+24|0);mT(a+8|0);return}function QU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;k[d>>2]=k[b>>2];if(!c)break;else{b=b+4|0;d=d+4|0}}}return a|0}function RU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f|0;Qe(a,b,c,d,e)|0;r=f;return (M=k[e+4>>2]|0,k[e>>2]|0)|0}function SU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a;k[d>>2]=0;k[d+4>>2]=0;d=a+8|0;k[d>>2]=-1;k[d+4>>2]=-1;return}function TU(a,b,c){a=a|0;b=b|0;c=c|0;k[a>>2]=b;if(!c){b=Ta(117,b|0)|0;k[a>>2]=b}c=Ta(118,b|0)|0;k[a+4>>2]=c;return}function UU(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return Zb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function VU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a;k[e>>2]=b;k[e+4>>2]=c;c=a+8|0;k[c>>2]=0;k[a+12>>2]=0;ly(c,d,0);return}function WU(a,b){a=a|0;b=b|0;var c=0;c=k[a>>2]|0;if(b)Rb[k[c+112>>2]&2047](a);else Rb[k[c+116>>2]&2047](a);return}function XU(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0))ID(a,b);return}function YU(a){a=a|0;k[a>>2]=16092;SF(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function ZU(a,b){a=a|0;b=b|0;ub(144,k[a+20>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0;return}function _U(a){a=a|0;eN(a);zba(a);return}function $U(a,b,c){a=a|0;b=b|0;c=c|0;c=qba((i[b+11>>0]|0)<0?k[b>>2]|0:b,1)|0;return c>>>((c|0)!=(-1|0)&1)|0}function aV(a){a=a|0;GL(a+8|0);k[a>>2]=7652;aE(a);zba(a);return}function bV(a){a=a|0;var b=0.0;a=k[(k[a+916>>2]|0)+204>>2]|0;if(!a)b=0.0;else b=+$b[k[(k[a>>2]|0)+68>>2]&7](a);return +b}function cV(a){a=a|0;k[a>>2]=9004;k[a+4>>2]=9028;up(a);$H(a+8|0);zba(a);return}function dV(a){a=a|0;var b=0,c=0;b=k[a+4>>2]<<1>>1;c=b&7;if(c|0){b=(k[a>>2]|0)+(((b+7|0)/8|0)+-1)|0;i[b>>0]=(l[b>>0]|0)&255<<8-c}return}function eV(a){a=a|0;k[a>>2]=6984;k[a+4>>2]=7008;up(a);$H(a+8|0);zba(a);return}function fV(a){a=a|0;k[a>>2]=7204;fF(a+4|0,k[a+8>>2]|0);zba(a);return}function gV(a,b){a=a|0;b=b|0;k[a+104>>2]=b;b=lI(a)|0;k[a+108>>2]=b;Tk(a);return}function hV(a){a=a|0;k[a>>2]=2424;k[a+4>>2]=2448;up(a);$H(a+8|0);zba(a);return}function iV(a){a=a|0;pN(a);zba(a);return}function jV(a){a=a|0;k[a>>2]=16064;VQ(a+80|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function kV(a){a=a|0;var b=0;k[a>>2]=17156;b=k[a+16>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);PV(a);zba(a);return}function lV(a){a=a|0;k[a>>2]=2712;k[a+4>>2]=2736;up(a);$H(a+8|0);zba(a);return}function mV(a){a=a|0;k[a>>2]=2808;k[a+4>>2]=2832;up(a);$H(a+8|0);zba(a);return}function nV(a){a=a|0;k[a>>2]=1740;p1(a+32|0);I3(a);zba(a);return}function oV(a){a=a|0;k[a>>2]=2376;k[a+4>>2]=2400;up(a);$H(a+8|0);zba(a);return}function pV(a){a=a|0;var b=0,c=0;c=a+8|0;k[c>>2]=12;b=i[a+56+11>>0]|0;if(b<<24>>24<0)a=k[a+60>>2]|0;else a=b&255;k[c>>2]=a+33;return}function qV(a){a=a|0;a=a+-20|0;k[a>>2]=10548;k[a+4>>2]=10584;k[a+20>>2]=10608;p1(a+132|0);Xr(a);return}function rV(a,b){a=a|0;b=b|0;var c=0;i[a+88>>0]=1;c=k[a+20>>2]|0;if(c|0)fc[k[(k[c>>2]|0)+8>>2]&255](c,a,b);return}function sV(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;k[a+(b<<2)>>2]=0;b=b+1|0}return}function tV(a,b){a=a|0;b=b|0;_I(k[a+32>>2]|0,a+8|0,b);return}function uV(a){a=a|0;var b=0;a=a+2080|0;if(k[a>>2]|0){b=k[a>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);k[a>>2]=0}return}function vV(a){a=a|0;k[a>>2]=15420;RP(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function wV(a){a=a|0;k[a>>2]=16120;SP(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function xV(a){a=a|0;a=a+-4|0;k[a>>2]=10548;k[a+4>>2]=10584;k[a+20>>2]=10608;p1(a+132|0);Xr(a);return}function yV(a){a=a|0;var b=0.0,c=0;c=k[a+12>>2]|0;if(c&1)if(!(c&2))b=+p[a>>3]/+(k[a+8>>2]|0);else b=C;else b=-1.0;return +b}function zV(a,b){a=a|0;b=b|0;b=k[a+4>>2]|0;Oq(a+24|0,k[b+1444>>2]|0,k[b+2056>>2]|0)|0;return}function AV(a){a=a|0;i[a+696>>0]=1;CU(a);a=k[a+1168>>2]|0;if(a|0)UY(a);return}function BV(a,b){a=a|0;b=b|0;do if(a)if(!(b&1)){a=k[a+1024>>2]|0;break}else{a=k[a+1004>>2]|0;break}else a=0;while(0);return a|0}function CV(a){a=a|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;a=a+16|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=0;return}function DV(a){a=a|0;k[a>>2]=15196;mR(a+60|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function EV(a,b){a=a|0;b=b|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0))ID(a,b);return}function FV(a){a=a|0;var b=0,c=0,d=0;b=a+92|0;c=a;d=c+92|0;do{k[c>>2]=0;c=c+4|0}while((c|0)<(d|0));i[b>>0]=1;i[a+93>>0]=0;i[a+94>>0]=0;return}function GV(a,b){a=a|0;b=b|0;var c=0;if((b|0)>-1?(c=k[a>>2]|0,(k[a+4>>2]|0)-c>>2>>>0>b>>>0):0)a=(k[c+(b<<2)>>2]|0)!=0;else a=0;return a|0}function HV(a,b){a=a|0;b=b|0;b=k[a+52>>2]|0;if(b|0?i[b+1189>>0]|0:0){i[a+371>>0]=1;i[a+372>>0]=1;p[a+376>>3]=0.0}return}function IV(a){a=a|0;var b=0;b=_J()|0;b=y0(b|0,M|0,-150,-1)|0;a=a+48|0;k[a>>2]=b;k[a+4>>2]=M;return}function JV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=b&255;do{if(!c){b=0;break}c=c+-1|0;b=a+c|0}while((i[b>>0]|0)!=d<<24>>24);return b|0}function KV(a){a=a|0;Bp(a);yb(96,k[a+440>>2]|0,k[a+640>>2]|0,k[a+644>>2]|0)|0;return}function LV(a,b){a=a|0;b=b|0;var c=0;a=a+388|0;c=k[a>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[a>>2]=-1}k[a>>2]=b;return}function MV(a,b,c){a=a|0;b=b|0;c=c|0;if(c){aM(a+24|0);Sb[k[(k[a>>2]|0)+16>>2]&511](a,b)}return}function NV(a){a=a|0;switch(k[a+4>>2]&74){case 64:{a=8;break}case 8:{a=16;break}case 0:{a=0;break}default:a=10}return a|0}function OV(a){a=a|0;a=k[a+8>>2]|0;if(a){a=O0(a)|0;if(!a)a=4;else{O0(a)|0;a=4}}else a=1;return a|0}function PV(a){a=a|0;var b=0,c=0;k[a>>2]=1480;b=a+8|0;if(i[b>>0]|0){a=a+4|0;c=Ta(0,k[a>>2]|0)|0;k[a>>2]=c;i[b>>0]=0}return}function QV(a){a=a|0;GL(a+8|0);k[a>>2]=7652;aE(a);return}function RV(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;ac[a&3](b|0,c|0,d|0,e|0,f|0,+g,h|0,i|0)}function SV(a){a=a|0;var b=0.0,c=0;c=(EX(a+8|0)|0)+304|0;b=+p[c>>3];if(!(b>0.0))b=+p[(k[a+12>>2]|0)+40>>3];return +b}function TV(a){a=a|0;var b=0,c=0;b=a+16|0;if(i[b>>0]|0){a=a+12|0;c=Ta(0,k[a>>2]|0)|0;k[a>>2]=c;i[b>>0]=0}return}function UV(a){a=a|0;JN(a);zba(a);return}function VV(a){a=a|0;KN(a);zba(a);return}function WV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=PM(e,f)|0;a=M;return (M=($(b,f)|0)+($(d,e)|0)+a|a&0,c|0|0)|0}function XV(a){a=a|0;k[a>>2]=7204;fF(a+4|0,k[a+8>>2]|0);return}function YV(a,b,c){a=a|0;b=b|0;c=c|0;mO(a+24|0,b,((b|0)<0)<<31>>31);if(c)cG(a);return}function ZV(a,b,c){a=a|0;b=b|0;c=c|0;Sb[k[(k[a>>2]|0)+24>>2]&511](a,b);return}function _V(a){a=a|0;NN(a);zba(a);return}function $V(a){a=a|0;k[a>>2]=15448;bS(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function aW(a){a=a|0;k[a>>2]=16064;VQ(a+80|0);k[a>>2]=15084;mT(a+32|0);return}function bW(a){a=a|0;k[a>>2]=15532;p1(a+56|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function cW(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=lc(b)|0;if(a|0)break;a=M8()|0;if(!a){a=0;break}gc[a&1]()}return a|0}function dW(a){a=a|0;k[a>>2]=10548;k[a+4>>2]=10584;k[a+20>>2]=10608;p1(a+132|0);Xr(a);zba(a);return}function eW(a){a=a|0;var b=0,c=0;k[a>>2]=17552;b=a+32|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}pU(a);return}function fW(a){a=a|0;var b=0;k[a>>2]=17156;b=k[a+16>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);PV(a);return}function gW(a){a=a|0;k[a>>2]=15924;p1(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function hW(a){a=a|0;a=a+-8|0;GL(a+8|0);k[a>>2]=6040;aE(a);zba(a);return}function iW(a){a=a|0;k[a>>2]=1740;p1(a+32|0);I3(a);return}function jW(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;mB(a,26140,Z0(26140)|0);return}function kW(a,b,c){a=a|0;b=b|0;c=c|0;Aj(a,c)|0;St(a,b);return}function lW(a){a=a|0;var b=0;k[a>>2]=7220;b=k[a+24>>2]|0;if(b|0)wba(b);k[a>>2]=7356;p1(a+8|0);return}function mW(a){a=a|0;var b=0;b=a+8|0;k[b>>2]=12;if(!(k[a+48>>2]&1))a=20;else a=(iC(k[a+60>>2]|0)|0)+21|0;k[b>>2]=a;return}function nW(a){a=a|0;var b=0;a=a+-20+104|0;b=k[a>>2]|0;k[a>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);k[a>>2]=0;return}function oW(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;mB(a,26164,Z0(26164)|0);return}function pW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;k[e>>2]=c;k[h>>2]=f;return 3}function qW(a,b){a=a|0;b=b|0;k[a>>2]=8360;k[a+16>>2]=b;b=_J()|0;p[a+8>>3]=+(b>>>0)+4294967296.0*+(M>>>0);return}function rW(a){a=a|0;i[a+72>>0]=0;a=k[(k[a+52>>2]|0)+2164>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+56>>2]&2047](a);return}function sW(a){a=a|0;var b=0;a=a+-20+124|0;b=k[a>>2]|0;k[a>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);k[a>>2]=0;return}function tW(a){a=a|0;var b=0;b=a+916|0;i[(k[b>>2]|0)+474>>0]=0;i[(k[b>>2]|0)+476>>0]=0;iR(a);return}function uW(a){a=a|0;k[a>>2]=15420;RP(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function vW(a){a=a|0;k[a>>2]=16120;SP(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function wW(a,b){a=a|0;b=b|0;b=k[a+4>>2]|0;br(a+24|0,k[b+1444>>2]|0,k[b+2056>>2]|0)|0;return}function xW(a){a=a|0;k[a>>2]=6272;i[a+4>>0]=0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=0;OW(a+24|0);i[a+56>>0]=0;return}function yW(a){a=a|0;k[a>>2]=15196;mR(a+60|0);k[a>>2]=15084;mT(a+32|0);return}function zW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;while(1){if((b|0)==(c|0))break;i[d>>0]=i[b>>0]|0;d=d+1|0;b=b+1|0}return c|0}function AW(a){a=a|0;if(!(i[a+119>>0]|0))a=Ub[k[(k[a>>2]|0)+24>>2]&511](a)|0;else a=0;return a|0}function BW(a){a=a|0;var b=0.0,c=0;if((a|0)!=0?(c=k[a+200>>2]|0,(c|0)!=0):0)b=+bV(c);else b=0.0;return +b}function CW(a){a=a|0;var b=0;b=k[a+32>>2]|0;if((b|0)<1)a=0;else a=k[(k[a+24>>2]|0)+(b+-1<<2)>>2]|0;return a|0}function DW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return Nb[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function EW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;WC(a+116|0,b,c,d);return}function FW(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,82523,17);return}function GW(a){a=a|0;if(k[a+12>>2]|0?(i[a+68>>0]|0)==0:0)tB(a+60|0,k[(k[a+56>>2]|0)+300>>2]|0)|0;return}function HW(a,b){a=a|0;b=b|0;var c=0;c=cW(376)|0;ok(c,b,a);return c+20|0}function IW(a,b){a=a|0;b=b|0;var c=0;if(!a)a=0;else{c=cW(28)|0;Rd(c,b,k[a+200>>2]|0);a=1}return a|0}function JW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;while(1){if((b|0)==(c|0))break;k[d>>2]=i[b>>0];d=d+4|0;b=b+1|0}return c|0}function KW(a,b){a=a|0;b=b|0;a=k[a+-8+4>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,b);return}function LW(a){a=a|0;var b=0;k[a>>2]=9544;b=k[a+16>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);PV(a);zba(a);return}function MW(a,b){a=a|0;b=b|0;oy(a,b);k[a>>2]=9996;k[a+64>>2]=k[(k[a+4>>2]|0)+1636>>2];return}function NW(a){a=a|0;if(Kd(a,50473)|0)a=Kd(a,50467)|0;else a=0;return a|0}function OW(a){a=a|0;k[a>>2]=7204;k[a+8>>2]=0;k[a+12>>2]=0;k[a+4>>2]=a+8;p[a+16>>3]=-1.0;k[a+24>>2]=-1;k[a+28>>2]=1;return}function PW(a,b){a=a|0;b=b|0;WD(a,51470,b);return}function QW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;k[d>>2]=b;if(!c)break;else d=d+4|0}}return a|0}function RW(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;sB(a,1,45);return}function SW(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;yE(a,1,45);return}function TW(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,94877,13);return}function UW(a,b){a=a|0;b=b|0;var c=0;c=k[a+200>>2]|0;b=(b|0)!=0;if(!c)i[a+764>>0]=b&1;else Mz(c,b);return}function VW(a){a=a|0;a=k[a+2164>>2]|0;if(!a)a=1;else a=(Ub[k[(k[a>>2]|0)+80>>2]&511](a)|0)^1;return a|0}function WW(a,b){a=a|0;b=b|0;p[a+40>>3]=+p[b+8>>3];QA(a+16|0,k[b>>2]|0,k[b+4>>2]|0);return}function XW(a){a=a|0;var b=0;k[a>>2]=19112;b=a+12|0;k[b>>2]=b;k[a+16>>2]=b;k[a+20>>2]=0;k[a+4>>2]=19236;k[a+8>>2]=19260;return}function YW(a){a=a|0;k[a>>2]=15448;bS(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function ZW(a){a=a|0;k[a>>2]=15532;p1(a+56|0);k[a>>2]=15084;mT(a+32|0);return}function _W(a){a=a|0;k[a>>2]=10548;k[a+4>>2]=10584;k[a+20>>2]=10608;p1(a+132|0);Xr(a);return}function $W(a){a=a|0;var b=0;k[a>>2]=6836;b=k[a+24>>2]|0;if(b|0)wba(b);p1(a+8|0);return}function aX(a){a=a|0;var b=0;k[a>>2]=10776;b=a+16|0;k[b>>2]=10796;aE(b);eU(a);zba(a);return}function bX(a,b){a=a|0;b=b|0;if(TJ(a,b,0)|0)a=1;else a=TJ(a+16|0,b,0)|0;return a|0}function cX(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,47572,11);return}function dX(a){a=a|0;var b=0;a=a+104|0;b=k[a>>2]|0;k[a>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);k[a>>2]=0;return}function eX(a){a=a|0;k[a>>2]=15924;p1(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function fX(a){a=a|0;a=a+-8|0;GL(a+8|0);k[a>>2]=6040;aE(a);return}function gX(a,b){a=a|0;b=b|0;return (La(57,k[a+104>>2]|0,l[b+12>>0]|0|0,k[b>>2]|0,k[b+4>>2]|0)|0)==0|0}function hX(a,b){a=a|0;b=b|0;var c=0;c=k[a+28>>2]|0;if(c|0)fc[k[(k[c>>2]|0)+8>>2]&255](c,a,b);return}function iX(a,b,c){a=a|0;b=b|0;c=c|0;if(c)et(a,b);else Mo(a,b);return}function jX(a,b){a=a|0;b=b|0;if(!(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0))MG(a,b);return}function kX(a){a=a|0;var b=0;a=a+124|0;b=k[a>>2]|0;k[a>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);k[a>>2]=0;return}function lX(a,b,c){a=a|0;b=b|0;c=c|0;if(c>>>0<128){a=Lba()|0;a=(j[(k[a>>2]|0)+(c<<1)>>1]&b)<<16>>16!=0}else a=0;return a|0}function mX(a){a=a|0;var b=0;a=a+4|0;b=k[a>>2]|0;if(b|0){Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[a>>2]=0}return}function nX(a){a=a|0;var b=0;a=a+56|0;b=k[a>>2]|0;k[a>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[a>>2]=0;return}function oX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;k[f>>2]=d;d=vs(a,b,c,f)|0;r=e;return d|0}function pX(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,108748,5);return}function qX(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,108754,4);return}function rX(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,91788,9);return}function sX(a){a=a|0;if((k[a+1524>>2]|0)==2)a=IX(k[a+2164>>2]|0)|0;else a=-1;return a|0}function tX(a,b){a=a|0;b=b|0;var c=0,d=0;c=iC(a)|0;d=iC(b)|0;if(c>>>0<d>>>0)a=0;else a=(eE(a+(c-d)|0,b,d)|0)==0;return a|0}function uX(a){a=a|0;k[a>>2]=15392;mT(a+60|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function vX(a){a=a|0;k[a>>2]=15476;mT(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function wX(a){a=a|0;k[a>>2]=15868;mT(a+52|0);k[a>>2]=15084;mT(a+32|0);zba(a);return}function xX(a,b,c){a=a|0;b=b|0;c=c|0;return wq(a,b,c,iC(c)|0)|0}function yX(a,b,c){a=a|0;b=b|0;c=c|0;if(AD(a)|0)Ah(a);return}function zX(a,b,c){a=a|0;b=b|0;c=c|0;b=ub(21,b|0,c|0)|0;k[a>>2]=b;k[a+4>>2]=c;k[a+8>>2]=c;p[a+16>>3]=0.0;return}function AX(a,b){a=a|0;b=b|0;a=k[a+52>>2]|0;if(b)LU(a);else aU(a);return}function BX(a){a=a|0;var b=0;b=a+104|0;if(ez(b)|0){IE(a,b);WK(b)}return}function CX(a){a=a|0;a=a+-32|0;k[a>>2]=12320;k[a+28>>2]=12476;k[a+32>>2]=12504;qL(a+216|0);MB(a);return}function DX(a){a=a|0;a=a+-28|0;k[a>>2]=12320;k[a+28>>2]=12476;k[a+32>>2]=12504;qL(a+216|0);MB(a);return}function EX(a){a=a|0;var b=0;a=k[a+4>>2]|0;if(!a)return 0;else{b=k[a>>2]|0;return ((b|0)==(k[a+4>>2]|0)?0:b)|0}return 0}function FX(a){a=a|0;var b=0,c=0;c=k[a>>2]|0;b=a+4|0;a=(k[c>>2]|0)+(k[b>>2]|0)|0;k[b>>2]=k[c+4>>2];return a|0}function GX(a,b){a=a|0;b=b|0;a=k[a+4>>2]|0;if(a|0)Sb[k[(k[a>>2]|0)+8>>2]&511](a,b);return}function HX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;WC(a+176|0,b,c,d);return}function IX(a){a=a|0;var b=0;b=k[a+44>>2]|0;return (((TJ((k[a+4>>2]|0)+2024|0,b,0)|0)^1)<<31>>31)+b|0}function JX(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;i[(k[k[a>>2]>>2]|0)+(k[c>>2]|0)>>0]=b;k[c>>2]=(k[c>>2]|0)+1;return}function KX(a,b){a=a|0;b=b|0;D5(a,b);D5(a+16|0,b);S3(a+36|0,b);return}function LX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Sf(c,d,e,1114111,0)|0}function MX(a,b){a=a|0;b=b|0;BE(a,b,DJ(113372)|0);return}function NX(a,b){a=a|0;b=b|0;BE(a,b,DJ(113364)|0);return}function OX(a,b){a=a|0;b=b|0;BE(a,b,DJ(113356)|0);return}function PX(a,b){a=a|0;b=b|0;BE(a,b,DJ(113348)|0);return}function QX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Zf(c,d,e,1114111,0)|0}function RX(a){a=a|0;return ag(0,a+72|0)|0}function SX(a,b){a=a|0;b=b|0;a=k[a+116>>2]|0;if(!a)a=0;else a=TJ(a,b,((b|0)<0)<<31>>31)|0;return a|0}function TX(a,b){a=a|0;b=b|0;BE(a,b,DJ(113308)|0);return}function UX(a,b){a=a|0;b=b|0;BE(a,b,DJ(113300)|0);return}function VX(a,b){a=a|0;b=b|0;BE(a,b,DJ(113292)|0);return}function WX(a,b){a=a|0;b=b|0;BE(a,b,DJ(112480)|0);return}function XX(a){a=a|0;var b=0;k[a>>2]=9544;b=k[a+16>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);PV(a);return}function YX(a){a=a|0;a=a+-8|0;GL(a+8|0);k[a>>2]=1556;aE(a);zba(a);return}function ZX(a,b){a=a|0;b=b|0;BE(a,b,DJ(111668)|0);return}function _X(a,b){a=a|0;b=b|0;BE(a,b,DJ(111660)|0);return}function $X(a,b){a=a|0;b=b|0;BE(a,b,DJ(111652)|0);return}function aY(a,b){a=a|0;b=b|0;BE(a,b,DJ(111628)|0);return}function bY(a){a=a|0;GL(a+8|0);k[a>>2]=6040;aE(a);zba(a);return}function cY(a){a=a|0;return ag(0,a+60|0)|0}function dY(a,b){a=a|0;b=b|0;k[a>>2]=9052;k[a+4>>2]=b;i[a+8>>0]=0;k[a+12>>2]=2147483647;k[a+16>>2]=-1;return}function eY(a,b){a=a|0;b=b|0;a=k[a+56>>2]|0;if(b)Ta(40,a|0)|0;else Ta(38,a|0)|0;return}function fY(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;j[c>>1]=j[c>>1]&-512|1;k[a+12>>2]=0;k[a>>2]=b;k[a+4>>2]=((b|0)<0)<<31>>31;return}function gY(a,b){a=a|0;b=b|0;return (gB(a,(i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)!=113540|0}function hY(a,b){a=a|0;b=b|0;a=k[a+108>>2]|0;if(!a)a=0;else a=TJ(a,b,((b|0)<0)<<31>>31)|0;return a|0}function iY(a){a=a|0;var b=0;b=k[a+100>>2]|0;rD(b+108|0,b,k[a+140>>2]|0);return}function jY(a){a=a|0;var b=0;k[a>>2]=10776;b=a+16|0;k[b>>2]=10796;aE(b);eU(a);return}function kY(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ub(148,b|0,c|0)|0;if(d|0)k[d>>2]=c;return 1}function lY(a,b){a=a|0;b=b|0;return cA(a,0,-1,b,iC(b)|0)|0}function mY(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;k[c>>2]=k[a+60>>2];a=y1(Ab(6,c|0)|0)|0;r=b;return a|0}function nY(a){a=a|0;Pa(k[a+28>>2]|0,44315,0,0,120,a|0);i[a+20>>0]=0;a=a+24|0;k[a>>2]=(k[a>>2]|0)+1;return}function oY(a){a=a|0;k[a>>2]=12320;k[a+28>>2]=12476;k[a+32>>2]=12504;qL(a+216|0);MB(a);zba(a);return}function pY(a,b){a=a|0;b=b|0;return Zi(a,(i[b+11>>0]|0)<0?k[b>>2]|0:b,0)|0}function qY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+8|0;j[d>>1]=j[d>>1]&-512|2;k[a+12>>2]=0;k[a>>2]=b;k[a+4>>2]=c;return}function rY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+8|0;j[d>>1]=j[d>>1]&-512|1;k[a+12>>2]=0;k[a>>2]=b;k[a+4>>2]=c;return}function sY(a){a=a|0;k[a>>2]=15392;mT(a+60|0);k[a>>2]=15084;mT(a+32|0);return}function tY(a){a=a|0;k[a>>2]=15476;mT(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function uY(a){a=a|0;k[a>>2]=15868;mT(a+52|0);k[a>>2]=15084;mT(a+32|0);return}function vY(a,b){a=a|0;b=b|0;Bi(a,b);return}function wY(a){a=a|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,32304,13);return}function xY(a,b){a=a|0;b=b|0;var c=0.0;c=+Dx(a,b);return +(c/+(k[a+28>>2]|0))}function yY(a,b){a=a|0;b=b|0;Af(a,b);AP(a,0);return}function zY(a){a=a|0;TF(a+4|0);GW(a);return}function AY(a){a=a|0;CP(a);zba(a);return}function BY(a,b){a=a|0;b=b|0;b=Ub[k[(k[a>>2]|0)+60>>2]&511](a)|0;return (b|0)<(k[(k[a+4>>2]|0)+1412>>2]|0)|0}function CY(a,b){a=a|0;b=b|0;mo(a,b);return}function DY(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Tb[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function EY(a,b,c){a=a|0;b=b|0;c=c|0;AG(a,b,c);return}function FY(a,b){a=a|0;b=b|0;k[a>>2]=11044;k[a+8>>2]=0;k[a+12>>2]=0;k[a+4>>2]=a+8;k[a+16>>2]=b;return}function GY(a){a=a|0;GP(a);zba(a);return}function HY(a){a=a|0;HP(a);zba(a);return}function IY(a){a=a|0;IP(a);zba(a);return}function JY(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){M=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}M=(b|0)<0?-1:0;return b>>c-32|0}function KY(a){a=a|0;var b=0;k[a>>2]=25948;a=a+8|0;b=k[a>>2]|0;if((b|0)!=(J_()|0))zba(k[a>>2]|0);return}function LY(a){a=a|0;a=k[a+180>>2]|0;if(!a)a=1;else a=P8(a)|0;return a|0}function MY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yb(136,k[a+20>>2]|0,c|0,d&1|0)|0;return}function NY(a){a=a|0;k[a>>2]=10844;aE(a);zba(a);return}function OY(a){a=a|0;a=a+-8|0;GL(a+8|0);k[a>>2]=1556;aE(a);return}function PY(a){a=a|0;GL(a+8|0);k[a>>2]=6040;aE(a);return}function QY(a,b,c){a=a|0;b=b|0;c=c|0;rD(a+76|0,b,c);return}function RY(a){a=a|0;var b=0;b=a+8|0;if(!(i[b>>0]|0)){i[b>>0]=1;Rb[k[(k[a>>2]|0)+84>>2]&2047](a)}return}function SY(a){a=a|0;JP(a);zba(a);return}function TY(a){a=a|0;k[a>>2]=7652;aE(a);zba(a);return}function UY(a){a=a|0;i[a+169>>0]=1;if((k[a+164>>2]|0)<1)f1(k[a+88>>2]|0);return}function VY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=T7(a,b,e)|0;r=d;return c|0}function WY(a){a=a|0;if(!(i[a+144>>0]|0))return ((i[a+248>>0]|0)==0?0:a+252|0)|0;else return a+148|0;return 0}function XY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;AG(a,b,c);return}function YY(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;return Ob[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function ZY(a,b){a=a|0;b=b|0;if(!a)a=0;else a=BD(k[a+200>>2]|0,b)|0;return a|0}function _Y(a,b){a=a|0;b=b|0;a=k[a+12>>2]|0;if(!a)a=0;else a=(k[a+(b<<2)>>2]|0)!=0;return a|0}function $Y(a){a=a|0;if(!(i[a+176>>0]|0))return ((i[a+280>>0]|0)==0?0:a+284|0)|0;else return a+180|0;return 0}function aZ(a){a=a|0;if(i[(k[(k[a+52>>2]|0)+916>>2]|0)+112>>0]|0)Ta(86,k[a+440>>2]|0)|0;return}function bZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=cK(a,b,e)|0;r=d;return c|0}function cZ(a,b){a=a|0;b=b|0;return uu(a,b,Z0(b)|0)|0}function dZ(a,b){a=a|0;b=b|0;return Uu(a,b,iC(b)|0)|0}function eZ(a,b){a=a|0;b=b|0;return nw(a,b,iC(b)|0)|0}function fZ(a,b){a=a|0;b=b|0;ar(a,b);return}function gZ(a,b){a=a|0;b=b|0;if(b<<24>>24>-1){a=Gba()|0;b=k[(k[a>>2]|0)+(b<<24>>24<<2)>>2]&255}return b|0}function hZ(a,b){a=a|0;b=b|0;var c=0;c=k[a>>2]|0;if(c|0){_y(c);zba(c)}k[a>>2]=b;return}function iZ(a,b){a=a|0;b=b|0;iI(a,b);return}function jZ(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;_b[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function kZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;b=lm(k[4883]|0,a,d)|0;r=c;return b|0}function lZ(a){a=a|0;var b=0,c=0;c=a+4|0;b=k[c>>2]|0;k[c>>2]=b+1;return i[(k[k[a>>2]>>2]|0)+b>>0]|0}function mZ(a,b,c){a=a|0;b=b|0;c=c|0;rD(a+216|0,b,c);return}function nZ(a){a=a|0;k[a>>2]=12320;k[a+28>>2]=12476;k[a+32>>2]=12504;qL(a+216|0);MB(a);return}function oZ(a){a=a|0;Ta(31,((i[a+11>>0]|0)<0?k[a>>2]|0:a)|0)|0;return}function pZ(a,b){a=a|0;b=b|0;if(b<<24>>24>-1){a=Fba()|0;b=k[(k[a>>2]|0)+((b&255)<<2)>>2]&255}return b|0}function qZ(a){a=a|0;k[a>>2]=10844;aE(a);return}function rZ(a,b){a=a|0;b=b|0;vb(49,a|0,k[a+4>>2]|0,b|0,11,50)|0;return}function sZ(a){a=a|0;a=k[a+440>>2]|0;if((a|0)==-1)a=1;else a=(Ta(89,a|0)|0)!=0;return a|0}function tZ(a,b){a=a|0;b=b|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=b;k[a+16>>2]=0;return}function uZ(a){a=a|0;if(!(_E(a)|0)?!(DF(a)|0):0)a=SZ(a)|0;else a=1;return a|0}function vZ(a){a=a|0;GL(a+8|0);k[a>>2]=1556;aE(a);zba(a);return}function wZ(a){a=a|0;var b=0;b=k[a+16>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,k[a+12>>2]|0);return}function xZ(a,b){a=a|0;b=b|0;if(b|0)Rb[k[k[b>>2]>>2]&2047](b);return}function yZ(a,b){a=a|0;b=b|0;vb(48,a|0,k[a+4>>2]|0,b|0,11,50)|0;return}function zZ(a,b,c){a=a|0;b=b|0;c=c|0;qW(a,b);k[a>>2]=8340;k[a+20>>2]=c;return}function AZ(a){a=a|0;var b=0,c=0;b=a+64|0;c=k[b>>2]|0;if(c|0){wc(c);k[b>>2]=0}MK(a);return}function BZ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){M=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}M=a<<c-32;return 0}function CZ(a,b){a=a|0;b=b|0;return gB(a,(i[b+11>>0]|0)<0?k[b>>2]|0:b)|0}function DZ(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;j[c>>1]=j[c>>1]&-512|2;k[a+12>>2]=0;k[a>>2]=b;k[a+4>>2]=0;return}function EZ(a,b){a=a|0;b=b|0;EN(a+-4|0,0);return}function FZ(a){a=a|0;var b=0;a=a+104|0;b=k[a>>2]|0;if(b|0){iM(b);zba(b)}k[a>>2]=0;return}function GZ(a){a=a|0;var b=0;b=a+8|0;k[b>>2]=20;if(!(k[a+52>>2]|0))k[b>>2]=(k[a+56>>2]<<2)+20;return}function HZ(a){a=a|0;tB(a+56|0,k[(k[a+52>>2]|0)+1864>>2]|0)|0;return}function IZ(a){a=a|0;p1(a+24|0);p1(a);return}function JZ(a){a=a|0;oQ(a);zba(a);return}function KZ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){M=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}M=0;return b>>>c-32|0}function LZ(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;h1(b,a+28|0);r=c;return k[b>>2]|0}function MZ(a){a=a|0;Gg(a,rK(a,a+124|0)|0);return}function NZ(a){a=a|0;k[a>>2]=7652;aE(a);return}function OZ(a,b,c){a=a|0;b=b|0;c=c|0;if(c&1|0)k[a+1004>>2]=b;if(c&2|0){i[a+1008>>0]=0;k[a+1024>>2]=b}return}function PZ(a,b){a=a|0;b=b|0;nk(a+-4|0,b);return}function QZ(a){a=a|0;if(!(Ub[k[(k[a>>2]|0)+92>>2]&511](a)|0))cG(a);return}function RZ(a){a=a|0;CQ(a);zba(a);return}function SZ(a){a=a|0;if((j[a+8>>1]&255)!=3?!(_E(a)|0):0)a=DF(a)|0;else a=1;return a|0}function TZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=d-c|0;return (d>>>0<e>>>0?d:e)|0}function UZ(a){a=a|0;k[a>>2]=10864;aE(a);zba(a);return}function VZ(a){a=a|0;k[a>>2]=10796;aE(a);zba(a);return}function WZ(a,b){a=a|0;b=b|0;AE((k[a+4>>2]|0)+76|0,b);return}function XZ(a,b){a=a|0;b=b|0;if((k[b+12>>2]&3|0)!=3){i[a+1188>>0]=1;i[a+1189>>0]=0}return}function YZ(a){a=a|0;a=k[a+440>>2]|0;if((a|0)==-1)a=0;else a=Ta(95,a|0)|0;return a|0}function ZZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;La(72,k[a>>2]|0,b|0,c|0,d|0)|0;return}function _Z(a){a=a|0;var b=0.0;b=+p[a+192>>3];return +(b+ +$b[k[(k[a>>2]|0)+56>>2]&7](a)*1.0e3)}function $Z(a){a=a|0;GQ(a);zba(a);return}function a_(a){a=a|0;a=k[a+-8+4>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+8>>2]&2047](a);return}function b_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113412)|0);return}function c_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113420)|0);return}function d_(a){a=a|0;if(!a)a=0;else{Iu(a);Rb[k[(k[a>>2]|0)+12>>2]&2047](a);a=1}return a|0}function e_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113404)|0);return}function f_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113396)|0);return}function g_(a){a=a|0;a=k[a+8>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+20>>2]&2047](a);return}function h_(a,b){a=a|0;b=b|0;a=k[a+1380>>2]|0;return (((b>>>0)%(a>>>0)|0|0)!=0&1)+((b>>>0)/(a>>>0)|0)|0}function i_(a){a=a|0;JQ(a);zba(a);return}function j_(a){a=a|0;KQ(a);zba(a);return}function k_(a,b){a=a|0;b=b|0;a=k[a>>2]|0;b=DJ(b)|0;return k[(k[a+8>>2]|0)+(b<<2)>>2]|0}function l_(a,b,c){a=a|0;b=b|0;c=c|0;La(67,k[a>>2]|0,b|0,c|0,k[a+4>>2]|0)|0;return}function m_(){}function n_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (M=d,a-c>>>0|0)|0}function o_(a){a=a|0;a=k[a+440>>2]|0;if((a|0)==-1)a=0;else a=Ta(90,a|0)|0;return a|0}function p_(a,b){a=a|0;b=b|0;Rb[k[(k[b>>2]|0)+104>>2]&2047](b);return}function q_(){var a=0,b=0;b=r;r=r+16|0;a=b;Fb(a|0,0)|0;r=b;return +(+(k[a>>2]|0))}function r_(){var a=0;a=w_()|0;a=k[a>>2]|0;k[28359]=a;D4(a);return 113436}function s_(a,b,c){a=a|0;b=b|0;c=c|0;Ws(a,b);return}function t_(a){a=a|0;Nk(a);i[a+68>>0]=0;KD(a);return}function u_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Vb[a&31](b|0,c|0,d|0,e|0,f|0)|0}function v_(){if((i[109936]|0)==0?E3(109936)|0:0){r_()|0;k[28360]=113436}return k[28360]|0}function w_(){if((i[109768]|0)==0?E3(109768)|0:0){h6()|0;k[28358]=113428}return k[28358]|0}function x_(a,b){a=a|0;b=b|0;if(b>>>0<128){a=Fba()|0;b=k[(k[a>>2]|0)+(b<<2)>>2]|0}return b|0}function y_(a,b){a=a|0;b=b|0;if(b>>>0<128){a=Gba()|0;b=k[(k[a>>2]|0)+(b<<2)>>2]|0}return b|0}function z_(a){a=a|0;GL(a+8|0);k[a>>2]=1556;aE(a);return}function A_(a){a=a|0;i[a+128>>0]=1;Eh(a);Ep(a);return}function B_(a){a=a|0;IQ(a);zba(a);return}function C_(a,b,c){a=a|0;b=b|0;c=c|0;St(a,b);return}function D_(a){a=a|0;var b=0;b=a+8|0;a=k[b>>2]|0;k[b>>2]=a+1;return a+1|0}function E_(a){a=a|0;var b=0,c=0;c=(iC(a)|0)+1|0;b=lc(c)|0;if(!b)b=0;else fE(b|0,a|0,c|0)|0;return b|0}function F_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113340)|0);return}function G_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113332)|0);return}function H_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113324)|0);return}function I_(a,b){a=a|0;b=b|0;BE(a,b,DJ(113316)|0);return}function J_(){var a=0;if((i[109288]|0)==0?E3(109288)|0:0){a=uJ(2147483647,106693,0)|0;k[27903]=a}return k[27903]|0}function K_(a,b,c){a=a|0;b=b|0;c=c|0;if(!b)a=0;else a=uo(a,l[c>>0]|0,b)|0;return a|0}function L_(a,b,c){a=a|0;b=b|0;c=c|0;XU(a,b,c);return}function M_(a,b){a=a|0;b=b|0;tA(a,b);k[a>>2]=9860;return}function N_(a){a=a|0;TQ(a);zba(a);return}function O_(a){a=a|0;OQ(a);zba(a);return}function P_(a,b){a=a|0;b=b|0;yb(64,k[a+16>>2]|0,k[b>>2]|0,k[b+4>>2]|0)|0;return}function Q_(a){a=a|0;var b=0;b=v_()|0;b=k[b>>2]|0;k[a>>2]=b;D4(b);return}function R_(a){a=a|0;k[a>>2]=10864;aE(a);return}function S_(a){a=a|0;k[a>>2]=10796;aE(a);return}function T_(a){a=a|0;ZQ(a);zba(a);return}function U_(a){a=a|0;RQ(a);zba(a);return}function V_(a){a=a|0;C4(a+(k[(k[a>>2]|0)+-12>>2]|0)|0);return}function W_(a){a=a|0;a=k[a+1168>>2]|0;if(!a)a=0;else a=k[a+92>>2]|0;return a|0}function X_(a){a=a|0;k[a>>2]=8172;tE(a+8|0);zba(a);return}function Y_(a){a=a|0;var b=0;b=a+136|0;if(i[b>>0]|0){i[b>>0]=0;Qi(a)}return}function Z_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return ic[a&7](b|0,c|0,d|0,e|0,+f)|0}function __(a){a=a|0;_4(a+(k[(k[a>>2]|0)+-12>>2]|0)|0);return}function $_(a){a=a|0;$4(a+(k[(k[a>>2]|0)+-12>>2]|0)|0);return}function a$(a){a=a|0;k[a>>2]=14804;aE(a);zba(a);return}function b$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cG(a);return}function c$(a,b,c){a=a|0;b=b|0;c=c|0;yb(91,k[a+440>>2]|0,b|0,c|0)|0;return}function d$(a,b){a=a|0;b=b|0;ub(68,k[a>>2]|0,k[b>>2]|0)|0;return}function e$(a){a=a|0;a=k[a+1256>>2]|0;if(!a)a=0;else a=k[a+176>>2]|0;return a|0}function f$(a,b){a=a|0;b=b|0;dY(a,b);k[a>>2]=9152;return}function g$(a,b){a=a|0;b=b|0;oI(k[a+24>>2]|0,b);return}function h$(a,b){a=a|0;b=b|0;BE(a,b,DJ(111644)|0);return}function i$(a,b){a=a|0;b=b|0;BE(a,b,DJ(111620)|0);return}function j$(a,b){a=a|0;b=b|0;BE(a,b,DJ(113388)|0);return}function k$(a,b){a=a|0;b=b|0;BE(a,b,DJ(113380)|0);return}function l$(a,b){a=a|0;b=b|0;BE(a,b,DJ(111596)|0);return}function m$(a,b){a=a|0;b=b|0;BE(a,b,DJ(111588)|0);return}function n$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;IN(a,c,d);return}function o$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Qb[a&15](b|0,c|0,d|0,e|0,f|0)}function p$(a){a=a|0;a=a-(a>>>1&1431655765)|0;a=(a&858993459)+(a>>>2&858993459)|0;return $(a+(a>>>4)&252645135,16843009)>>>24|0}function q$(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+80|0)|0}function r$(a){a=a|0;a=k[a+4>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+8>>2]&2047](a);return}function s$(a,b){a=a|0;b=b|0;Ws(a,b);return}function t$(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;j[c>>1]=j[c>>1]&-512|5;k[a+12>>2]=0;i[a>>0]=b&1;return}function u$(a,b){a=a|0;b=b|0;BE(a,b,DJ(111636)|0);return}function v$(a,b){a=a|0;b=b|0;BE(a,b,DJ(111604)|0);return}function w$(a){a=a|0;return (Ta(13,k[(k[(k[a+52>>2]|0)+916>>2]|0)+208>>2]|0)|0)==0|0}function x$(a){a=a|0;k[a>>2]=13528;VQ(a+4|0);zba(a);return}function y$(a,b){a=a|0;b=b|0;St(a,b);return}function z$(a,b,c){a=a|0;b=b|0;c=c|0;Pa(k[a+28>>2]|0,44292,b|0,c|0,0,0);return}function A$(a,b,c){a=a|0;b=b|0;c=c|0;if(c)cG(a);return}function B$(a){a=a|0;JR(a);zba(a);return}function C$(a){a=a|0;CR(a);zba(a);return}function D$(a,b){a=a|0;b=b|0;Rb[k[(k[a>>2]|0)+12>>2]&2047](a);return}function E$(a){a=a|0;k[a>>2]=15868;mT(a+52|0);O3(a);zba(a);return}function F$(a,b,c){a=a|0;b=+b;c=c|0;Na(69,k[a>>2]|0,+b,c<<24>>24|0)|0;return}function G$(a,b,c){a=a|0;b=b|0;c=c|0;ub(138,k[a+20>>2]|0,c|0)|0;return}function H$(a){a=a|0;KR(a);zba(a);return}function I$(a){a=a|0;LR(a);zba(a);return}function J$(a,b){a=a|0;b=+b;var c=0;c=a+8|0;j[c>>1]=j[c>>1]&-512|3;k[a+12>>2]=0;p[a>>3]=b;return}function K$(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=EI(a,b,c)|0;return a|0}function L$(a){a=a|0;k[a>>2]=14804;aE(a);return}function M$(a,b){a=a|0;b=b|0;i[a+104>>0]=b&1;xg(a);return}function N$(a,b){a=a|0;b=b|0;i[a>>0]=2;i[a+1>>0]=3;i[a+2>>0]=0;i[a+3>>0]=4;return}function O$(a){a=a|0;OR(a);zba(a);return}function P$(a){a=a|0;k[a>>2]=8172;tE(a+8|0);return}function Q$(a,b,c){a=a|0;b=+b;c=+c;c=c-b;p[a+104>>3]=c<=0.0?0.0:c;return}function R$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;k[e>>2]=c;return 3}function S$(a){a=a|0;k[a>>2]=1480;if(i[a+8>>0]|0)Ta(0,k[a+4>>2]|0)|0;zba(a);return}function T$(a){a=a|0;k[a>>2]=6040;aE(a);zba(a);return}function U$(a){a=a|0;var b=0;b=a+20|0;a=k[b>>2]|0;k[b>>2]=a+1;return a+1|0}function V$(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+28|0)|0}function W$(a){a=a|0;k[a>>2]=17872;aE(a);zba(a);return}function X$(a,b,c){a=a|0;b=b|0;c=c|0;cG(a);return}function Y$(a,b){a=a|0;b=b|0;k[a+4>>2]=-1;k[a>>2]=b;nU(a);return}function Z$(a){a=a|0;var b=0;k[a>>2]=26016;b=k[a+8>>2]|0;if(b|0?i[a+12>>0]|0:0)wba(b);return}function _$(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+16|0)|0}function $$(a){a=a|0;k[a>>2]=16560;aE(a);zba(a);return}function a0(a){a=a|0;k[a>>2]=17852;aE(a);zba(a);return}function b0(a){a=a|0;k[a>>2]=10904;aE(a);zba(a);return}function c0(a,b){a=a|0;b=b|0;AE(a+236|0,b);return}function d0(a,b){a=a|0;b=b|0;if(b)cG(a);return}function e0(a,b,c){a=a|0;b=b|0;c=c|0;kj(a,b,1,c);return}function f0(a,b){a=a|0;b=b|0;AE(a+136|0,b);return}function g0(a,b,c){a=a|0;b=b|0;c=c|0;Aj(a,c)|0;return}function h0(a){a=a|0;Zr(a+424|0,1);zi(a);return}function i0(a,b){a=a|0;b=b|0;MJ(a+16|0,b,((b|0)<0)<<31>>31);return}function j0(a){a=a|0;return ui(a+8|0,k[a+4>>2]|0)|0}function k0(a){a=a|0;k[a>>2]=14160;aE(a);zba(a);return}function l0(a,b){a=a|0;b=b|0;k[a+100>>2]=b;xg(a);return}function m0(a){a=a|0;k[a>>2]=13528;VQ(a+4|0);return}function n0(a){a=a|0;k[a>>2]=17832;aE(a);zba(a);return}function o0(a){a=a|0;k[a>>2]=14888;aE(a);zba(a);return}function p0(a){a=a|0;a=k[a+12>>2]|0;if(a|0)Rb[k[(k[a>>2]|0)+8>>2]&2047](a);return}function q0(a,b){a=a|0;b=b|0;AE(a+156|0,b);return}function r0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ec[a&15](b|0,c|0,d|0,e|0)|0}function s0(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+40|0)|0}function t0(a){a=a|0;k[a>>2]=11024;aE(a);zba(a);return}function u0(a){a=a|0;var b=0;k[a>>2]=7752;b=k[a+12>>2]|0;if(b|0)wc(b);zba(a);return}function v0(a){a=a|0;return laa(k[(k[a+1256>>2]|0)+200>>2]|0)|0}function w0(a,b){a=a|0;b=b|0;AE(a+24|0,b);return}function x0(a,b,c){a=a|0;b=b|0;c=c|0;kj(a,b,0,c);return}function y0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (M=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function z0(){var a=0;if(!(k[27499]|0))a=110040;else{a=(Mba()|0)+64|0;a=k[a>>2]|0}return a|0}function A0(a){a=a|0;XT(a+(k[(k[a>>2]|0)+-12>>2]|0)+12|0);return}function B0(a){a=a|0;var b=0;b=k[a>>2]|0;if((b|0)!=(J_()|0))zba(k[a>>2]|0);return}function C0(a){a=a|0;k[a>>2]=13512;p1(a+16|0);zba(a);return}function D0(a,b,c){a=a|0;b=+b;c=c|0;p[a>>3]=b;k[a+8>>2]=c;k[a+12>>2]=(c|0)!=0&1;return}function E0(a,b){a=a|0;b=b|0;iI(a,b+16|0);return}function F0(a,b){a=a|0;b=b|0;iI(a,b+12|0);return}function G0(a){a=a|0;var b=0;a=a+8|0;b=k[a>>2]|0;if(b|0)k[a>>2]=k[b>>2];return}function H0(a,b){a=a|0;b=b|0;b=a+64|0;do{k[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function I0(a){a=a|0;k[a>>2]=17872;aE(a);return}function J0(a){a=a|0;k[a>>2]=4972;aE(a);zba(a);return}function K0(a){a=a|0;XT(a+(k[(k[a>>2]|0)+-12>>2]|0)+4|0);return}function L0(a){a=a|0;XT(a+(k[(k[a>>2]|0)+-12>>2]|0)+8|0);return}function M0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function N0(a){a=a|0;a=a+208|0;a=A5(k[a>>2]|0,k[a+4>>2]|0,1e3,0)|0;return a|0}function O0(a){a=a|0;var b=0,c=0;b=(Mba()|0)+184|0;c=k[b>>2]|0;if(a|0)k[b>>2]=a;return c|0}function P0(a,b){a=a|0;b=b|0;Hj(a,+p[b>>3],+p[b+8>>3]);return}function Q0(a){a=a|0;k[a>>2]=16560;aE(a);return}function R0(a){a=a|0;k[a>>2]=17852;aE(a);return}function S0(a){a=a|0;k[a>>2]=10904;aE(a);return}function T0(a){a=a|0;return (i[(k[(k[a+52>>2]|0)+916>>2]|0)+855>>0]|0)!=0|0}function U0(a,b,c){a=a|0;b=b|0;c=c|0;k[c>>2]=2147483647;k[b>>2]=2147483647;return}function V0(a){a=a|0;k[a>>2]=6040;aE(a);return}function W0(a){a=a|0;k[a>>2]=10884;aE(a);zba(a);return}function X0(a){a=a|0;k[a>>2]=1540;k[a+8>>2]=0;k[a+12>>2]=0;k[a+4>>2]=a+8;return}function Y0(a,b){a=a|0;b=+b;Eb(104,k[a+440>>2]|0,+b)|0;return}function Z0(a){a=a|0;var b=0;b=a;while(1)if(!(k[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function _0(a){a=a|0;if((i[a+8+3>>0]|0)<0)zba(k[a>>2]|0);return}function $0(a,b){a=a|0;b=b|0;SC(a,b+2168|0);return}function a1(a,b){a=a|0;b=b|0;iI(a,b+20|0);return}function b1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;da(12);return 0}function c1(a,b,c){a=a|0;b=b|0;c=c|0;if(c)a=EG(a,b,c)|0;return a|0}function d1(a){a=a|0;k[a>>2]=14160;aE(a);return}function e1(a){a=a|0;k[a>>2]=7356;p1(a+8|0);zba(a);return}function f1(a){a=a|0;i[a+760>>0]=1;CU(a);return}function g1(a,b){a=a|0;b=b|0;Rb[k[(k[b>>2]|0)+80>>2]&2047](b);return}function h1(a,b){a=a|0;b=b|0;b=k[b>>2]|0;k[a>>2]=b;D4(b);return}function i1(a,b,c){a=a|0;b=b|0;c=c|0;if(b)a=QW(a,c,b)|0;return a|0}function j1(a,b,c){a=a|0;b=b|0;c=c|0;if(c)a=QU(a,b,c)|0;return a|0}function k1(a){a=a|0;k[a>>2]=17832;aE(a);return}function l1(a){a=a|0;k[a>>2]=14888;aE(a);return}function m1(a){a=a|0;a=k[a+1048>>2]|0;return k[((a|0)==0?0:a+-20|0)+104>>2]|0}function n1(a,b){a=a|0;b=b|0;AE(a+44|0,b);return}function o1(a,b){a=a|0;b=b|0;AE(a+-20+104|0,b);return}function p1(a){a=a|0;if((i[a+11>>0]|0)<0)zba(k[a>>2]|0);return}function q1(a){a=a|0;k[a>>2]=11024;aE(a);return}function r1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;jc[a&63](b|0,c|0,d|0,e|0)}function s1(a){a=a|0;k[a>>2]=7752;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;return}function t1(a,b){a=a|0;b=b|0;LC(a);return}function u1(a){a=a|0;Co(a,0);return}function v1(a,b){a=a|0;b=+b;return (Eb(103,k[a+440>>2]|0,+b)|0)!=0|0}function w1(a,b,c){a=a|0;b=b|0;c=c|0;k[b>>2]=1920;k[c>>2]=1080;return}function x1(a){a=a|0;uS(a);zba(a);return}function y1(a){a=a|0;var b=0;if(a>>>0>4294963200){b=z0()|0;k[b>>2]=0-a;a=-1}return a|0}function z1(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+208|0)|0}function A1(a){a=a|0;k[a>>2]=4972;aE(a);return}function B1(a){a=a|0;nL(a+64|0,0);return}function C1(a,b){a=a|0;b=b|0;return Aj(a,b)|0}function D1(a,b){a=a|0;b=b|0;Dg(a,b);return}function E1(a){a=a|0;$W(a+36|0);$W(a);return}function F1(a){a=a|0;yS(a);k[a>>2]=17552;k[a+28>>2]=0;k[a+32>>2]=-1;return}function G1(a,b){a=a|0;b=b|0;Aj(a,b)|0;return}function H1(a){a=a|0;nL(a+12|0,0);return}function I1(a,b,c){a=a|0;b=b|0;c=c|0;k[b>>2]=1280;k[c>>2]=720;return}function J1(a){a=a|0;var b=0;b=k[a+200>>2]|0;return l[((b|0)==0?a+764|0:b+858|0)>>0]|0|0}function K1(a){a=a|0;k[a>>2]=26108;p1(a+16|0);return}function L1(a){a=a|0;k[a>>2]=26068;p1(a+12|0);return}function M1(a,b){a=a|0;b=b|0;cG(a);return}function N1(a){a=a|0;a=a+-84|0;iu(a);zba(a);return}function O1(a){a=a|0;a=a+-80|0;iu(a);zba(a);return}function P1(a){a=a|0;k[a>>2]=13512;p1(a+16|0);return}function Q1(a){a=a|0;k[a>>2]=10884;aE(a);return}function R1(a){a=a|0;k[a>>2]=1556;aE(a);zba(a);return}function S1(a){a=a|0;k[a>>2]=8516;aE(a);zba(a);return}function T1(a){a=a|0;$H(a+72|0);return}function U1(a,b){a=a|0;b=b|0;ub(142,k[a+20>>2]|0,b|0)|0;return}function V1(a){a=a|0;AS(a);zba(a);return}function W1(a){a=a|0;i[a+8>>0]=0;Rb[k[(k[a>>2]|0)+8>>2]&2047](a);return}function X1(a){a=a|0;k[a>>2]=7736;a=k[a+4>>2]|0;if(a|0)zba(a);return}function Y1(a,b){a=a|0;b=+b;Eb(92,k[a+440>>2]|0,+b)|0;return}function Z1(a){a=a|0;a=a+-24|0;eB(a);zba(a);return}function _1(a){a=a|0;a=a+-20|0;eB(a);zba(a);return}function $1(a){a=a|0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);return}function a2(a,b){a=a|0;b=b|0;return TJ(a+352|0,b,((b|0)<0)<<31>>31)|0}function b2(a){a=a|0;$H(a+60|0);return}function c2(a){a=a|0;return k[(k[(k[a+1256>>2]|0)+200>>2]|0)+920>>2]|0}function d2(a,b){a=a|0;b=b|0;k[b>>2]=k[a+68>>2];return k[a+64>>2]|0}function e2(a){a=a|0;KS(a);zba(a);return}function f2(a){a=a|0;return (k[(k[a>>2]|0)+4>>2]|0)-(k[a+4>>2]|0)|0}function g2(a){a=a|0;i[a+85>>0]=1;r$(a+20|0);return}function h2(a){a=a|0;if(!a)a=0;else a=k[(k[a+200>>2]|0)+880>>2]|0;return a|0}function i2(a){a=a|0;a=a+-4|0;nJ(a);zba(a);return}function j2(a,b){a=a|0;b=b|0;gU(a+-20|0,b);return}function k2(a){a=a|0;var b=0;k[a>>2]=7736;b=cW(1)|0;k[a+4>>2]=b;return}function l2(a){a=a|0;SD(a);return}function m2(a){a=a|0;Iv(a+4|0);return}function n2(a){a=a|0;MS(a);zba(a);return}function o2(a){a=a|0;NS(a);zba(a);return}function p2(a){a=a|0;k[a>>2]=23180;t6(a+4|0);zba(a);return}function q2(a){a=a|0;k[a>>2]=23116;t6(a+4|0);zba(a);return}function r2(a){a=a|0;Rb[k[(k[a>>2]|0)+124>>2]&2047](a);return}function s2(a){a=a|0;k[a+8>>2]=((k[a+56>>2]|0)-(k[a+52>>2]|0)|4)+12;return}function t2(a){a=a|0;k[a+8>>2]=(k[a+68>>2]<<4)+20+(k[a+76>>2]|0)+12;return}function u2(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;da(15)}function v2(a){a=a|0;a=a+-4|0;Cr(a);zba(a);return}function w2(a){a=a|0;a=a+-208|0;io(a);zba(a);return}function x2(a){a=a|0;B0(a+8|0);zba(a);return}function y2(a){a=a|0;k[a>>2]=7356;p1(a+8|0);return}function z2(a,b){a=a|0;b=+b;Eb(129,k[a+384>>2]|0,+b)|0;return}function A2(a,b){a=a|0;b=b|0;AE(a+104|0,b);return}function B2(a){a=a|0;PS(a);zba(a);return}function C2(a){a=a|0;k[a+8>>2]=(k[a+80>>2]|0)+24+(k[a+88>>2]|0)+12;return}function D2(a){a=a|0;k[a>>2]=15084;mT(a+32|0);zba(a);return}function E2(){var a=0;a=Yi()|0;return ((i[a+11>>0]|0)<0?k[a>>2]|0:a)|0}function F2(a,b){a=a|0;b=b|0;return ub(73,k[a>>2]|0,b|0)|0}function G2(a,b){a=a|0;b=+b;Eb(128,k[a+384>>2]|0,+b)|0;return 1}function H2(a,b){a=a|0;b=b|0;ub(41,k[a+56>>2]|0,b|0)|0;return}function I2(a){a=a|0;k[a+8>>2]=(k[a+56>>2]|0)+4-(k[a+52>>2]|0)+12;return}function J2(a){a=a|0;C4(a+-8|0);return}function K2(a){a=a|0;a=a+-32|0;io(a);zba(a);return}function L2(a){a=a|0;a=a+-28|0;io(a);zba(a);return}function M2(a,b){a=a|0;b=b|0;return (k[a+60>>2]|0)<(k[b+60>>2]|0)|0}function N2(a,b){a=a|0;b=b|0;Ta(111,b|0)|0;return}function O2(a,b){a=a|0;b=b|0;return ub(71,k[a>>2]|0,b|0)|0}function P2(a,b){a=a|0;b=b|0;Bt(a,b);return}function Q2(a){a=a|0;k[a+8>>2]=(k[a+56>>2]|0)+8-(k[a+52>>2]|0)+8;return}function R2(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+88|0)|0}function S2(a){a=a|0;Rb[k[(k[a>>2]|0)+120>>2]&2047](a);return}function T2(a){a=a|0;k[a>>2]=8516;aE(a);return}function U2(a){a=a|0;a=a+36|0;k[a>>2]=(k[a>>2]|0)+1;return}function V2(a){a=a|0;k[a>>2]=7752;a=k[a+12>>2]|0;if(a|0)wc(a);return}function W2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Yb[a&31](b|0,c|0,d|0)|0}function X2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;da(0);return 0}function Y2(a){a=a|0;var b=0;b=k[27904]|0;k[27904]=b+1;k[a+4>>2]=b+1;return}function Z2(a,b){a=a|0;b=b|0;Mo(a,b);return}function _2(a){a=a|0;i[a+128>>0]=0;Eh(a);return}function $2(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+60|0)|0}function a3(a,b){a=a|0;b=b|0;return +(+Db(70,k[a>>2]|0,b|0))}function b3(a,b){a=a|0;b=b|0;sy(a,b);return}function c3(a){a=a|0;jS(a+-4|0);return}function d3(a){a=a|0;a=a+-4|0;Rk(a);zba(a);return}function e3(a){a=a|0;a=a+-20|0;xc(a);zba(a);return}function f3(a){a=a|0;a=a+-20|0;gy(a);zba(a);return}function g3(a){a=a|0;a=k[a+4>>2]|0;return ((a|0)==0?0:a+20|0)|0}function h3(a){a=a|0;k[a>>2]=1556;aE(a);return}function i3(a){a=a|0;dF(a+56|0);return}function j3(a){a=a|0;dF(a+256|0);return}function k3(a){a=a|0;Rb[k[(k[a>>2]|0)+96>>2]&2047](a);return}function l3(a){a=a|0;Rb[k[(k[a>>2]|0)+100>>2]&2047](a);return}function m3(a){a=a|0;return (Ta(120,k[a+384>>2]|0)|0)!=0|0}function n3(a,b){a=a|0;b=b|0;a=cs(a,b)|0;return ((i[a>>0]|0)==(b&255)<<24>>24?a:0)|0}function o3(a){a=a|0;a=a+-4|0;xc(a);zba(a);return}function p3(a){a=a|0;a=a+-4|0;gy(a);zba(a);return}function q3(a){a=a|0;a=a+-20|0;kp(a);zba(a);return}function r3(a,b){a=a|0;b=b|0;k[a+28>>2]=b;return}function s3(a,b){a=a|0;b=+b;_a(32,+b)|0;return}function t3(a,b){a=a|0;b=b|0;return ub(70,k[a>>2]|0,b|0)|0}function u3(a){a=a|0;IL(a);zba(a);return}function v3(a){a=a|0;a=a+-208|0;co(a);zba(a);return}function w3(a){a=a|0;k[a>>2]=6792;qL(a+8|0);zba(a);return}function x3(a){a=a|0;a=a+876|0;k[a>>2]=(k[a>>2]|0)+1;return}function y3(a,b){a=a|0;b=b|0;k[a>>2]=13496;k[a+4>>2]=b;return}function z3(a){a=a|0;a=a+-4|0;kp(a);zba(a);return}function A3(a){a=a|0;a=a+-20|0;Up(a);zba(a);return}function B3(a){a=a|0;a=a+-16|0;Up(a);zba(a);return}function C3(a){a=a|0;nL(a+400|0,0);return}function D3(a){a=a|0;return (i[a+72>>0]|0)==0|0}function E3(a){a=a|0;if((i[a>>0]|0)==1)a=0;else{i[a>>0]=1;a=1}return a|0}function F3(a){a=a|0;a=a+-32|0;co(a);zba(a);return}function G3(a){a=a|0;a=a+-28|0;co(a);zba(a);return}function H3(a){a=a|0;k[a>>2]=23180;t6(a+4|0);return}function I3(a){a=a|0;k[a>>2]=23116;t6(a+4|0);return}function J3(a){a=a|0;return Ta(94,k[a+440>>2]|0)|0}function K3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 3}function L3(a){a=a|0;B0(a+8|0);return}function M3(a){a=a|0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;return}function N3(a){a=a|0;lL(a);zba(a);return}function O3(a){a=a|0;k[a>>2]=15084;mT(a+32|0);return}function P3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fc[a&255](b|0,c|0,d|0)}function Q3(a){a=a|0;a=a+-20|0;Qp(a);zba(a);return}function R3(a){a=a|0;a=a+-16|0;Qp(a);zba(a);return}function S3(a,b){a=a|0;b=b|0;QI(a,b);return}function T3(a,b){a=a|0;b=b|0;k[a>>2]=6288;k[a+4>>2]=b;return}function U3(a){a=a|0;iu(a+-84|0);return}function V3(a){a=a|0;iu(a+-80|0);return}function W3(a){a=a|0;a=a+-32|0;MB(a);zba(a);return}function X3(a){a=a|0;a=a+-28|0;MB(a);zba(a);return}function Y3(a){a=a|0;a=a+-20|0;cv(a);zba(a);return}function Z3(a){a=a|0;a=a+-20|0;No(a);zba(a);return}function _3(a){a=a|0;a=a+-20|0;$c(a);zba(a);return}function $3(a){a=a|0;a=a+-208|0;CD(a);zba(a);return}function a4(a){a=a|0;return Ta(59,k[a+104>>2]|0)|0}function b4(a){a=a|0;X1(a);zba(a);return}function c4(a){a=a|0;var b=0;b=r;r=r+a|0;r=r+15&-16;return b|0}function d4(a){a=a|0;Ta(98,k[a+440>>2]|0)|0;return}function e4(a,b){a=a|0;b=b|0;if(!a)a=0;else a=yv(a,b,0)|0;return a|0}function f4(a){a=a|0;a=a+-4|0;cv(a);zba(a);return}function g4(a){a=a|0;a=a+-4|0;No(a);zba(a);return}function h4(a){a=a|0;a=a+-4|0;$c(a);zba(a);return}function i4(a){a=a|0;a=a+-32|0;CD(a);zba(a);return}function j4(a){a=a|0;a=a+-28|0;CD(a);zba(a);return}function k4(a){a=a|0;eB(a+-24|0);return}function l4(a){a=a|0;eB(a+-20|0);return}function m4(a){a=a|0;dF(a+4|0);return}function n4(a,b){a=a|0;b=b|0;return (Ta(28,b-a|0)|0)+a|0}function o4(a){a=a|0;iu(a);zba(a);return}function p4(a){a=a|0;aM(a+24|0);return}function q4(a){a=a|0;return +(+gb(93,k[a+440>>2]|0))}function r4(a){a=a|0;uL(a);zba(a);return}function s4(a){a=a|0;dF(a+84|0);return}function t4(a){a=a|0;nJ(a+-4|0);return}function u4(a){a=a|0;a=a+-4|0;TE(a);zba(a);return}function v4(a,b){a=a|0;b=b|0;k[a+16>>2]=(k[a+24>>2]|0)==0|b;return}function w4(a){a=a|0;return k[(k[a+1256>>2]|0)+200>>2]|0}function x4(a){a=a|0;dF(a+64|0);return}function y4(a){a=a|0;nJ(a);zba(a);return}function z4(a){a=a|0;eB(a);zba(a);return}function A4(a,b,c){a=a|0;b=b|0;c=+c;return}function B4(a){a=a|0;Ta(125,k[a+384>>2]|0)|0;return}function C4(a){a=a|0;XT(a+12|0);zba(a);return}function D4(a){a=a|0;a=a+4|0;k[a>>2]=(k[a>>2]|0)+1;return}function E4(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function F4(a){a=a|0;p1(a);return}function G4(a,b){a=a|0;b=b|0;i[a+72>>0]=b&1;return}function H4(a){a=a|0;return +(+gb(122,k[a+384>>2]|0))}function I4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;hc[a&7](b|0,c|0,+d)}function J4(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;Wb[a&3](b|0,+c,d|0)}function K4(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;da(6);return 0}function L4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=k6(a,b,c)|0;return d|0}function M4(a){a=a|0;a=a+-88|0;ZS(a);zba(a);return}function N4(a){a=a|0;Cr(a+-4|0);return}function O4(a){a=a|0;a=a+-4|0;tm(a);zba(a);return}function P4(a){a=a|0;a=a+-4|0;_A(a);zba(a);return}function Q4(a){a=a|0;a=a+-20|0;UC(a);zba(a);return}function R4(a){a=a|0;a=a+-20|0;yi(a);zba(a);return}function S4(a){a=a|0;io(a+-208|0);return}function T4(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function U4(a,b){a=a|0;b=b|0;return (ez(a)|0)>>>0>b>>>0|0}function V4(a){a=a|0;Cr(a);zba(a);return}function W4(a,b,c){a=a|0;b=+b;c=c|0;return}function X4(a){a=a|0;Ta(140,k[a+20>>2]|0)|0;return}function Y4(a){a=a|0;k[a+8>>2]=(k[a+44>>2]|0)==1?20:16;return}function Z4(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function _4(a){a=a|0;XT(a+4|0);zba(a);return}function $4(a){a=a|0;XT(a+8|0);zba(a);return}function a5(a){a=a|0;H3(a);zba(a);return}function b5(a){a=a|0;I3(a);zba(a);return}function c5(a){a=a|0;k[a>>2]=12932;k[a+4>>2]=0;k[a+8>>2]=0;return}function d5(a){a=a|0;fU(a);zba(a);return}function e5(a){a=a|0;k[a>>2]=6792;qL(a+8|0);return}function f5(a){a=a|0;cG(a);return}function g5(a,b){a=a|0;b=b|0;k[a+12>>2]=b;return}function h5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=u5(a,b,c)|0;return d|0}function i5(a){a=a|0;a=a+-60|0;$i(a);zba(a);return}function j5(a){a=a|0;a=a+-4|0;UC(a);zba(a);return}function k5(a){a=a|0;a=a+-4|0;yi(a);zba(a);return}function l5(a){a=a|0;a=a+-44|0;$i(a);zba(a);return}function m5(a){a=a|0;a=a+-40|0;$i(a);zba(a);return}function n5(a){a=a|0;io(a+-32|0);return}function o5(a){a=a|0;io(a+-28|0);return}function p5(a){a=a|0;a=a+-20|0;Pt(a);zba(a);return}function q5(a){a=a|0;return Ta(121,k[a+384>>2]|0)|0}function r5(a){a=a|0;return (k[a+12>>2]|0)!=2147483647|0}function s5(a){a=a|0;k[a>>2]=16148;wc(k[a+4>>2]|0);zba(a);return}function t5(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;da(1);return 0}function u5(a,b,c){a=a|0;b=b|0;c=c|0;c=NE(a,b,c,0,-2147483648)|0;return c|0}function v5(a){a=a|0;XT(a+-8+12|0);return}function w5(a){a=a|0;Ra(108981,108919,1194,109010)}function x5(a){a=a|0;Ra(108890,108919,1183,108960)}function y5(a,b){a=a|0;b=b|0;i[a+20>>0]=b&1;return}function z5(a,b,c){a=a|0;b=b|0;c=c|0;c=NE(a,b,c,-2147483648,0)|0;return c|0}function A5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Qe(a,b,c,d,0)|0}function B5(a){a=a|0;a=a+-4|0;Pt(a);zba(a);return}function C5(a){a=a|0;h3(a);zba(a);return}function D5(a,b){a=a|0;b=b|0;Hs(a+8|0,b);return}function E5(a){a=a|0;Ta(47,k[a+4>>2]|0)|0;return}function F5(a){a=a|0;io(a);zba(a);return}function G5(a,b){a=a|0;b=b|0;i[a+2161>>0]=b&1;return}function H5(a){a=a|0;N5(k[a+60>>2]|0);return}function I5(a){a=a|0;return (i[a+212>>0]|0)!=0|0}function J5(a){a=a|0;Ra(108801,108824,304,108960)}function K5(a){a=a|0;Rb[k[(k[a>>2]|0)+88>>2]&2047](a);return}function L5(a){a=a|0;aU(k[a+120>>2]|0);return}function M5(a){a=a|0;Ta(10,k[a+1048>>2]|0)|0;return}function N5(a){a=a|0;Ta(58,k[a+104>>2]|0)|0;return}function O5(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;Xb[a&7](b|0,+c,+d)}function P5(a,b){a=a|0;b=b|0;b=a+(Vr(a,b)|0)|0;return (i[b>>0]|0?b:0)|0}function Q5(a){a=a|0;if(!a)a=1;else a=(k[a>>2]|0)==0;return a&1|0}function R5(a){a=a|0;KY(a);zba(a);return}function S5(a){a=a|0;GL(a);zba(a);return}function T5(a){a=a|0;XW(a);k[a>>2]=19036;return}function U5(a,b){a=a|0;b=b|0;return (gB(a,b)|0)!=113540|0}function V5(a){a=a|0;Ps(a);return}function W5(a){a=a|0;BB(k[a+120>>2]|0);return}function X5(a){a=a|0;LU(k[a+120>>2]|0);return}function Y5(a){a=a|0;af(a);return}function Z5(a){a=a|0;a=a+-60|0;iq(a);zba(a);return}function _5(a){a=a|0;Rk(a+-4|0);return}function $5(a){a=a|0;a=a+-44|0;iq(a);zba(a);return}function a6(a){a=a|0;a=a+-40|0;iq(a);zba(a);return}function b6(a){a=a|0;xc(a+-20|0);return}function c6(a){a=a|0;gy(a+-20|0);return}function d6(a){a=a|0;Rk(a);zba(a);return}function e6(a,b,c){a=a|0;b=b|0;c=c|0;return cc[a&127](b|0,c|0)|0}function f6(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;da(13)}function g6(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function h6(){we(109776,1);k[28357]=109776;return 113428}function i6(a){a=a|0;return (k[(k[a+4>>2]|0)+48>>2]|0)==0|0}function j6(a){a=a|0;r$(a+8|0);return}function k6(a,b,c){a=a|0;b=b|0;c=c|0;c=NE(a,b,c,-1,-1)|0;return c|0}function l6(a){a=a|0;a=a+-60|0;Ql(a);zba(a);return}function m6(a){a=a|0;xc(a+-4|0);return}function n6(a){a=a|0;gy(a+-4|0);return}function o6(a){a=a|0;a=a+-44|0;Ql(a);zba(a);return}function p6(a){a=a|0;a=a+-40|0;Ql(a);zba(a);return}function q6(a){a=a|0;a=a+-20|0;Kn(a);zba(a);return}function r6(a){a=a|0;a=a+-20|0;Di(a);zba(a);return}function s6(a){a=a|0;kp(a+-20|0);return}function t6(a){a=a|0;oU(k[a>>2]|0)|0;return}function u6(a){a=a|0;AU(a);zba(a);return}function v6(a){a=a|0;Tu(a);zba(a);return}function w6(a){a=a|0;xc(a);zba(a);return}function x6(a){a=a|0;gy(a);zba(a);return}function y6(a,b){a=a|0;b=b|0;return (eE(a,b,iC(b)|0)|0)==0|0}function z6(a){a=a|0;co(a+-208|0);return}function A6(a){a=a|0;return (k[a+16>>2]|0)>-1|0}function B6(a){a=a|0;$W(a);zba(a);return}function C6(a){a=a|0;k[a+8>>2]=(k[a+48>>2]|0)+8;return}function D6(a,b,c){a=a|0;b=b|0;c=c|0;c=NE(a,b,c,-1,0)|0;return c|0}function E6(a){a=a|0;a=a+-4|0;Kn(a);zba(a);return}function F6(a){a=a|0;a=a+-4|0;Di(a);zba(a);return}function G6(a){a=a|0;kp(a+-4|0);return}function H6(a){a=a|0;a=a+-20|0;Xr(a);zba(a);return}function I6(a){a=a|0;Up(a+-20|0);return}function J6(a){a=a|0;Up(a+-16|0);return}function K6(a){a=a|0;k[a>>2]=1556;k[a+4>>2]=0;return}function L6(a){a=a|0;kp(a);zba(a);return}function M6(a){a=a|0;mA(a);zba(a);return}function N6(a,b){a=a|0;b=b|0;return Zi(a,b,0)|0}function O6(a){a=a|0;co(a+-32|0);return}function P6(a){a=a|0;co(a+-28|0);return}function Q6(a){a=a|0;XT(a+12|0);return}function R6(a){a=a|0;a=k[a+8>>2]|0;if(a|0)wc(a);return}function S6(a,b,c){a=a|0;b=b|0;c=c|0;return +dc[a&3](b|0,c|0)}function T6(a){a=a|0;a=a+-4|0;Xr(a);zba(a);return}function U6(a){a=a|0;Ta(116,k[a+32>>2]|0)|0;return}function V6(a,b){a=a|0;b=b|0;k[a+16>>2]=b;return}function W6(a){a=a|0;ey(a);zba(a);return}function X6(a){a=a|0;Up(a);zba(a);return}function Y6(a){a=a|0;XT(a+4|0);return}function Z6(a){a=a|0;XT(a+8|0);return}function _6(a){a=a|0;return ((k[a+12>>2]<<1>>1)+1|0)>>>3|0}function $6(a){a=a|0;fU(a);return}function a7(a){a=a|0;co(a);zba(a);return}function b7(a,b,c){a=a|0;b=b|0;c=c|0;return gl(0,a,b,c|0?c:110056)|0}function c7(a){a=a|0;Qp(a+-20|0);return}function d7(a){a=a|0;Qp(a+-16|0);return}function e7(a){a=a|0;return EX(a+8|0)|0}function f7(a){a=a|0;return (i[a+2157>>0]|0)!=0|0}function g7(a,b){a=a|0;b=b|0;return (Qg(a,b)|0)^1|0}function h7(a){a=a|0;Mm(a);zba(a);return}function i7(a){a=a|0;Ey(a);zba(a);return}function j7(a){a=a|0;BL(a);zba(a);return}function k7(a){a=a|0;EF(a);return}function l7(a){a=a|0;k[a>>2]=16148;wc(k[a+4>>2]|0);return}function m7(a,b,c){a=a|0;b=b|0;c=+c;return bc[a&3](b|0,+c)|0}function n7(a){a=a|0;tU(a);zba(a);return}function o7(a,b){a=a|0;b=b|0;k[a+68>>2]=b;return}function p7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;da(8);return 0}function q7(a){a=a|0;MB(a+-32|0);return}function r7(a){a=a|0;MB(a+-28|0);return}function s7(a){a=a|0;cv(a+-20|0);return}function t7(a){a=a|0;No(a+-20|0);return}function u7(a){a=a|0;$c(a+-20|0);return}function v7(a){a=a|0;qp(a+-20|0);return}function w7(a){a=a|0;CD(a+-208|0);return}function x7(a){a=a|0;return (i[a+80>>0]|0)!=0|0}function y7(a){a=a|0;hQ(a);zba(a);return}function z7(a){a=a|0;Qp(a);zba(a);return}function A7(a){a=a|0;return (i[a+20>>0]|0)!=0|0}function B7(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function C7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;da(23);return 0}function D7(a){a=a|0;return Uh(a,0)|0}function E7(a){a=a|0;return Mh(a,0)|0}function F7(a,b,c){a=a|0;b=b|0;c=c|0;Sb[a&511](b|0,c|0)}function G7(a){a=a|0;cv(a+-4|0);return}function H7(a){a=a|0;No(a+-4|0);return}function I7(a){a=a|0;$c(a+-4|0);return}function J7(a){a=a|0;CD(a+-32|0);return}function K7(a){a=a|0;CD(a+-28|0);return}function L7(a){a=a|0;op(a+-20|0);return}function M7(a,b){a=a|0;b=b|0;i[a+4>>0]=b&1;return}function N7(a){a=a|0;return (ib()|0)!=0|0}function O7(a){a=a|0;Cn(a);zba(a);return}function P7(a){a=a|0;cv(a);zba(a);return}function Q7(a){a=a|0;No(a);zba(a);return}function R7(a){a=a|0;$c(a);zba(a);return}function S7(a){a=a|0;MB(a);zba(a);return}function T7(a,b,c){a=a|0;b=b|0;c=c|0;return vs(a,2147483647,b,c)|0}function U7(a){a=a|0;return k[a+1192>>2]|0}function V7(a){a=a|0;TE(a+-4|0);return}function W7(a){a=a|0;a=Dm(a)|0;return a|0}function X7(a){a=a|0;CD(a);zba(a);return}function Y7(a){a=a|0;pF(a);zba(a);return}function Z7(a){a=a|0;TE(a);zba(a);return}function _7(a){a=a|0;k[a+36>>2]=0;return}function $7(a,b){a=a|0;b=b|0;return -1}function a8(a){a=a|0;return Uh(a,1)|0}function b8(a){a=a|0;return Mh(a,1)|0}function c8(a){a=a|0;JA(a);return}function d8(a){a=a|0;ZS(a+-88|0);return}function e8(a){a=a|0;tm(a+-4|0);return}function f8(a){a=a|0;_A(a+-4|0);return}function g8(a){a=a|0;oY(a+-32|0);return}function h8(a){a=a|0;oY(a+-28|0);return}function i8(a){a=a|0;UC(a+-20|0);return}function j8(a){a=a|0;yi(a+-20|0);return}function k8(a){a=a|0;a=rm(a)|0;return a|0}function l8(a){a=a|0;return k[a+4>>2]|0}function m8(a){a=a|0;tm(a);zba(a);return}function n8(a){a=a|0;_A(a);zba(a);return}function o8(a){a=a|0;Qy(a);zba(a);return}function p8(a){a=a|0;gt(a);zba(a);return}function q8(a){a=a|0;lW(a);zba(a);return}function r8(a,b,c){a=a|0;b=b|0;c=c|0;pm(a,b,c)|0;return a|0}function s8(a,b){a=a|0;b=b|0;return -1.0}function t8(){k[27489]=109956;k[27490]=109956;k[27491]=0;return}function u8(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function v8(a){a=a|0;$i(a+-60|0);return}function w8(a){a=a|0;UC(a+-4|0);return}function x8(a){a=a|0;yi(a+-4|0);return}function y8(a){a=a|0;$i(a+-44|0);return}function z8(a){a=a|0;$i(a+-40|0);return}function A8(a){a=a|0;Pt(a+-20|0);return}function B8(a,b){a=a|0;b=b|0;wc(b);return}function C8(a){a=a|0;qS(a);zba(a);return}function D8(a){a=a|0;cB(a);zba(a);return}function E8(a){a=a|0;UC(a);zba(a);return}function F8(a){a=a|0;mr(a);zba(a);return}function G8(a){a=a|0;yi(a);zba(a);return}function H8(a){a=a|0;ZS(a);zba(a);return}function I8(a,b,c){a=a|0;b=b|0;c=+c;Pb[a&15](b|0,+c)}function J8(a){a=a|0;Ta(20,k[a>>2]|0)|0;return}function K8(a){a=a|0;return (i[a+128>>0]|0)!=0|0}function L8(a){a=a|0;Pt(a+-4|0);return}function M8(){var a=0;a=k[28380]|0;k[28380]=a+0;return a|0}function N8(a){a=a|0;XT(a);return}function O8(a){a=a|0;return (i[a+52>>0]|0)!=0|0}function P8(a){a=a|0;return (k[a+24>>2]|0)==0|0}function Q8(a){a=a|0;$i(a);zba(a);return}function R8(a){a=a|0;Pt(a);zba(a);return}function S8(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;da(3)}function T8(a){a=a|0;var b=0;b=(hba(a)|0)==0;return (b?a:a&95)|0}function U8(a){a=a|0;var b=0;b=(gba(a)|0)==0;return (b?a:a|32)|0}function V8(a,b){a=a|0;b=b|0;return JV(a,b,(iC(a)|0)+1|0)|0}function W8(a){a=a|0;return k[a+416>>2]|0}function X8(a,b,c){a=a|0;b=b|0;c=c|0;return}function Y8(a,b){a=a|0;b=b|0;return (JL(a,iC(a)|0,1,b)|0)+-1|0}function Z8(a,b,c){a=a|0;b=b|0;c=c|0;return CK(a,b,c)|0}function _8(a){a=a|0;dW(a+-20|0);return}function $8(a){a=a|0;iF(a);zba(a);return}function a9(a){a=a|0;return k[a+192>>2]|0}function b9(a,b){a=a|0;b=b|0;return 0.0}function c9(a){a=a|0;return ~~+p[a+384>>3]>>>0|0}function d9(a){a=a|0;return (i[a+133>>0]|0)!=0|0}function e9(a){a=a|0;iq(a+-60|0);return}function f9(a){a=a|0;dW(a+-4|0);return}function g9(a){a=a|0;iq(a+-44|0);return}function h9(a){a=a|0;iq(a+-40|0);return}function i9(a){a=a|0;K1(a);zba(a);return}function j9(a){a=a|0;L1(a);zba(a);return}function k9(a){a=a|0;eW(a);zba(a);return}function l9(a){a=a|0;iD(a);zba(a);return}function m9(a){a=a|0;return a+668|0}function n9(a){a=a|0;hQ(a);return}function o9(a){a=a|0;O3(a);zba(a);return}function p9(a){a=a|0;if(!(k[a+68>>2]|0))Dba(a);return}function q9(a){a=a|0;return k[a+376>>2]|0}function r9(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;da(19);return 0}function s9(a){a=a|0;Ql(a+-60|0);return}function t9(a){a=a|0;Ql(a+-44|0);return}function u9(a){a=a|0;Ql(a+-40|0);return}function v9(a){a=a|0;Kn(a+-20|0);return}function w9(a){a=a|0;Di(a+-20|0);return}function x9(a){a=a|0;return k[a+12>>2]<<1>>1|0}function y9(a,b){a=a|0;b=b|0;return hB(a,b)|0}function z9(a){a=a|0;IS(a);zba(a);return}function A9(a){a=a|0;iq(a);zba(a);return}function B9(a){a=a|0;ct(a);return}function C9(a){a=a|0;return k[a+1256>>2]|0}function D9(){k[27486]=0;k[27487]=0;k[27488]=0;return}function E9(a,b,c){a=a|0;b=b|0;c=c|0;return +(+JD(a,b,2))}function F9(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function G9(a){a=a|0;Kn(a+-4|0);return}function H9(a){a=a|0;Di(a+-4|0);return}function I9(a){a=a|0;Xr(a+-20|0);return}function J9(a){a=a|0;Kn(a);zba(a);return}function K9(a){a=a|0;Ql(a);zba(a);return}function L9(a){a=a|0;Di(a);zba(a);return}function M9(a,b){a=a|0;b=b|0;return Wi(a,b)|0}function N9(a,b){a=a|0;b=b|0;return Ub[a&511](b|0)|0}function O9(a){a=a|0;return k[a+12>>2]|0}function P9(a,b){a=a|0;b=b|0;return b<<24>>24|0}function Q9(a){a=a|0;return k[a+68>>2]|0}function R9(a){a=a|0;return k[a+32>>2]|0}function S9(a){a=a|0;Xr(a+-4|0);return}function T9(a){a=a|0;XT(a);zba(a);return}function U9(a){a=a|0;Z$(a);zba(a);return}function V9(a){a=a|0;qL(a);zba(a);return}function W9(a){a=a|0;Xr(a);zba(a);return}function X9(a){a=a|0;return k[a+60>>2]|0}function Y9(a){a=a|0;return k[a+140>>2]|0}function Z9(a){a=a|0;k[a+8>>2]=108;return}function _9(a){a=a|0;return i[a+9>>0]|0}function $9(a){a=a|0;return i[a+8>>0]|0}function aaa(a){a=a|0;return k[a+36>>2]|0}function baa(a){a=a|0;k[a+8>>2]=20;return}function caa(a){a=a|0;k[a+8>>2]=32;return}function daa(a){a=a|0;k[a+8>>2]=92;return}function eaa(a){a=a|0;k[a+8>>2]=16;return}function faa(a){a=a|0;k[a+8>>2]=12;return}function gaa(a){a=a|0;iD(a);return}function haa(a){a=a|0;return k[a+64>>2]|0}function iaa(a){a=a|0;return k[a+136>>2]|0}function jaa(a){a=a|0;return (j[a+8>>1]&255)==4|0}function kaa(a){a=a|0;return (j[a+8>>1]&255)==7|0}function laa(a){a=a|0;return a+664|0}function maa(a){a=a|0;return a+728|0}function naa(a,b){a=a|0;b=b|0;return +$b[a&7](b|0)}function oaa(a){a=a|0;return (j[a+8>>1]&255)==6|0}function paa(a){a=a|0;return k[a+112>>2]|0}
function Fj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;g=a+2024|0;f=k[g>>2]|0;if(f>>>0<=c>>>0){f=(x9(g)|0)+f|0;f=(f|0)<(c|0)?f:c;c=k[g>>2]|0;k[h>>2]=c;if((c|0)<(f|0)){a=a+2040|0;d=b+4|0;e=b+8|0;do{do if(TJ(a,c,0)|0){c=k[d>>2]|0;if((c|0)==(k[e>>2]|0)){sq(b,h);break}else{k[c>>2]=k[h>>2];k[d>>2]=(k[d>>2]|0)+4;break}}while(0);c=(k[h>>2]|0)+1|0;k[h>>2]=c}while((c|0)<(f|0))}}else{k[h>>2]=f;a:do if(f>>>0<(f+(x9(g)|0)|0)>>>0){a=a+2040|0;d=b+4|0;e=b+8|0;c=f;while(1){do if(TJ(a,c,0)|0){c=k[d>>2]|0;if((c|0)==(k[e>>2]|0)){sq(b,h);break}else{k[c>>2]=k[h>>2];k[d>>2]=(k[d>>2]|0)+4;break}}while(0);c=(k[h>>2]|0)+1|0;k[h>>2]=c;f=k[g>>2]|0;if(c>>>0>=(f+(x9(g)|0)|0)>>>0)break a;c=k[h>>2]|0}}while(0)}r=i;return}function Gj(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0;f=r;r=r+48|0;c=f;e=f+8|0;p[c>>3]=b;VY(e,103334,c)|0;c=e+(iC(e)|0)+-1|0;a:do if((i[c>>0]|0)==48){b:do if(c>>>0>e>>>0)do{c=c+-1|0;if(c>>>0<=e>>>0)break b}while((i[c>>0]|0)==48);while(0);c:do if(c>>>0>=e>>>0){d=c;d:while(1){switch(i[d>>0]|0){case 46:{d=9;break d}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:break;default:{d=10;break d}}d=d+-1|0;if(d>>>0<e>>>0)break c}if((d|0)==9){i[c+2>>0]=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,e,iC(e)|0);break a}else if((d|0)==10){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,e,iC(e)|0);break a}}while(0);k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,e,iC(e)|0)}else{k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,e,iC(e)|0)}while(0);r=f;return}function Hj(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;j=r;r=r+160|0;l=j+144|0;f=j;d=f+8|0;k[d>>2]=1664;g=f+12|0;k[f>>2]=1704;h=f+64|0;k[h>>2]=1724;k[f+4>>2]=0;GK(f+64|0,g);k[f+136>>2]=0;k[f+140>>2]=-1;k[f>>2]=1644;k[f+64>>2]=1684;k[d>>2]=1664;sT(g);k[g>>2]=1740;d=f+44|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[f+60>>2]=24;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;cn(g,l);p1(l);e=f+8|0;m=e+(k[(k[e>>2]|0)+-12>>2]|0)+4|0;k[m>>2]=k[m>>2]&-261|4;k[e+(k[(k[e>>2]|0)+-12>>2]|0)+8>>2]=0;m=Qn(e,b)|0;i[l>>0]=45;Tn(m,l,1)|0;if(c>=0.0)Qn(e,c)|0;Yr(a,g);k[f>>2]=1644;k[h>>2]=1684;k[e>>2]=1664;k[g>>2]=1740;p1(d);I3(g);Qaa(f,1800);N8(h);r=j;return}function Ij(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,q=0;n=r;r=r+80|0;m=n;HA(m,b,c,d);o=m+44|0;k[o>>2]=0;g=m+48|0;k[g>>2]=0;k[m>>2]=15532;h=m+56|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;j=a+4|0;d=k[j>>2]|0;f=a+8|0;b=k[f>>2]|0;q=d+b|0;k[f>>2]=b+4;c=(l[q+2>>0]|0)<<8|(l[q+1>>0]|0)<<16|(l[q+3>>0]|0);k[o>>2]=l[q>>0];k[g>>2]=c;b=b+8|0;k[f>>2]=b;g=a+12|0;c=k[g>>2]|0;if((b|0)>=(c|0)){k[g>>2]=0;k[f>>2]=0;b=0;c=0}q=d+b|0;k[f>>2]=b+4;k[m+52>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);q=b+16|0;k[f>>2]=q;if((q|0)>=(c|0)){k[g>>2]=0;k[f>>2]=0}g=e+-24|0;q=jb()|0;o=r;r=r+((1*(e+-23|0)|0)+15&-16)|0;d=k[f>>2]|0;fE(o|0,(k[j>>2]|0)+d|0,g|0)|0;k[f>>2]=d+g;i[o+g>>0]=0;dZ(h,o)|0;o=k[a+28>>2]|0;hc[k[k[o>>2]>>2]&7](o,m,+p[a+40>>3]);Qa(q|0);k[m>>2]=15532;p1(h);O3(m);r=n;return e|0}function Jj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+16|0;c=h;d=cW(108)|0;k[d>>2]=1624;e=d+4|0;f=d+104|0;g=e;j=g+100|0;do{k[g>>2]=0;g=g+4|0}while((g|0)<(j|0));i[f>>0]=1;MM(d+76|0,b)|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,27353,4);j=d+88|0;nE(a,c,j)|0;p1(c);k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,27358,11);nE(a,c,d+28|0)|0;p1(c);k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,27370,9);g=d+40|0;nE(a,c,g)|0;p1(c);MM(e,g)|0;MM(d+52|0,j)|0;xg(d);r=h;return d|0}function Kj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;f=b+8|0;g=k[f>>2]|0;e=g+1|0;k[f>>2]=e;a=k[b>>2]|0;g=i[a+g>>0]|0;d=c+20|0;e=a+e|0;i[d>>0]=i[e>>0]|0;i[d+1>>0]=i[e+1>>0]|0;i[d+2>>0]=i[e+2>>0]|0;k[f>>2]=(k[f>>2]|0)+3;i[c+23>>0]=0;d=c+24|0;e=b+4|0;mh(h,b,g,(k[e>>2]|0)-(k[f>>2]|0)|0);a=d+11|0;if((i[a>>0]|0)<0){i[k[d>>2]>>0]=0;k[c+28>>2]=0;a=d}else{i[d>>0]=0;i[a>>0]=0;a=d}Qm(d,0);k[a>>2]=k[h>>2];k[a+4>>2]=k[h+4>>2];k[a+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;p1(h);d=c+36|0;mh(h,b,g,(k[e>>2]|0)-(k[f>>2]|0)|0);a=d+11|0;if((i[a>>0]|0)<0){i[k[d>>2]>>0]=0;k[c+40>>2]=0;a=d}else{i[d>>0]=0;i[a>>0]=0;a=d}Qm(d,0);k[a>>2]=k[h>>2];k[a+4>>2]=k[h+4>>2];k[a+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;p1(h);r=j;return}function Lj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+320|0;g=j+156|0;h=j;i=b+8|0;c=i;c=eH(a,k[c>>2]|0,k[c+4>>2]|0)|0;d=((c|0)<0)<<31>>31;e=i;k[e>>2]=c;k[e+4>>2]=d;e=a+120|0;f=k[e>>2]|0;do if(f|0){if(TJ(f,c,d)|0){if((k[2783]|0)>=4)break;Qd(g,52211,1271,3,0,0,0);h=Tn(g,53630,53)|0;Tn(tn(h,k[i>>2]|0,k[i+4>>2]|0)|0,68623,1)|0;hi(g);break}g=i;if(fJ(k[e>>2]|0,k[g>>2]|0,k[g+4>>2]|0)|0){el(k[a+4>>2]|0,a,k[i>>2]|0,k[b+16>>2]|0);break}if((k[2783]|0)<4){Qd(h,52211,1273,3,0,0,0);g=Tn(h,53684,75)|0;Tn(tn(g,k[i>>2]|0,k[i+4>>2]|0)|0,68623,1)|0;hi(h)}}while(0);r=j;return}function Mj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0;l=r;r=r+32|0;h=l+12|0;j=l;g=(i[a+92>>0]|0)!=0;k[a+60>>2]=b;k[a+64>>2]=c;f=a+94|0;i[f>>0]=g&e&1;k[a+68>>2]=b;k[a+72>>2]=0;k[a+76>>2]=0;g=a+80|0;dZ(g,115628)|0;Xn(a+24|0);e=a+20|0;if(k[e>>2]|0)do KI(a);while((k[e>>2]|0)!=0);k[h>>2]=d;sA(a,h);e=Ig(a)|0;OS(a,h);if(i[f>>0]|0){f=i[g+11>>0]|0;if(f<<24>>24<0)f=k[a+84>>2]|0;else f=f&255;if(f|0)qU(d,g,2)}if(((i[a+93>>0]|0)!=0?!(oaa(d)|0):0)?!(kaa(d)|0):0){k[h>>2]=13;k[h+4>>2]=b;k[h+8>>2]=c;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,102029,65);iz(a,j,h,0)|0;p1(j);e=0}r=l;return e|0}function Nj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+16|0;h=l;j=a+164|0;k[j>>2]=(k[j>>2]|0)+-1;k[h>>2]=b;g=a+184|0;if((Cy(g,h)|0)!=(a+188|0)){if((X9(k[c>>2]|0)|0)!=200?(X9(k[c>>2]|0)|0)!=206:0){b=k[h>>2]|0;d=b+112|0;f=a+140|0;c=k[f>>2]|0;if((c|0)==(k[a+144>>2]|0)){Tr(a+136|0,d);b=k[h>>2]|0}else{e=c+40|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));k[f>>2]=(k[f>>2]|0)+40}sk(a+116|0,b+160|0);if(!(i[a+156>>0]|0))tB(a+148|0,1e3)|0}else EC(a,k[h>>2]|0,c);AB(g,h)|0;b=k[h>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);if(i[a+169>>0]|0?(k[j>>2]|0)<1:0)f1(k[a+88>>2]|0)}r=l;return}function Oj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=r;r=r+32|0;b=d+16|0;e=d;c=a+60|0;k[a+36>>2]=k[(k[(k[c>>2]|0)+916>>2]|0)+640>>2];i[a+68>>0]=1;mD(b,0);f=N6(b,27589)|0;nF(e,27598);GA(f,e)|0;Lv(e);f=N6(b,56009)|0;Ix(e,(k[c>>2]|0)+884|0);GA(f,e)|0;Lv(e);f=N6(b,55943)|0;Ix(e,(k[(k[c>>2]|0)+940>>2]|0)+76|0);GA(f,e)|0;Lv(e);f=N6(b,27600)|0;Ix(e,(k[(k[c>>2]|0)+940>>2]|0)+4|0);GA(f,e)|0;Lv(e);f=N6(b,27610)|0;fY(e,k[a+100>>2]|0);GA(f,e)|0;Lv(e);f=N6(b,56171)|0;nF(e,50707);GA(f,e)|0;Lv(e);IE(a,b);_v(a);ne(a);c=k[(k[(k[c>>2]|0)+916>>2]|0)+204>>2]|0;if(c|0?(Ub[k[(k[c>>2]|0)+64>>2]&511](c)|0)>0:0)xI(a);Lv(b);r=d;return}function Pj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;m=o;n=a+4|0;d=k[n>>2]|0;e=k[a>>2]|0;c=((d-e|0)/12|0)+1|0;if(c>>>0>357913941)J5(a);l=a+8|0;j=((k[l>>2]|0)-e|0)/12|0;f=j<<1;f=j>>>0<178956970?(f>>>0<c>>>0?c:f):357913941;k[m+12>>2]=0;k[m+16>>2]=a+8;if(!f)g=0;else g=cW(f*12|0)|0;k[m>>2]=g;c=g+(((d-e|0)/12|0)*12|0)|0;h=m+8|0;i=m+4|0;k[i>>2]=c;j=m+12|0;k[j>>2]=g+(f*12|0);iI(c,b);k[h>>2]=c+12;e=k[a>>2]|0;d=k[n>>2]|0;if((d|0)!=(e|0)){do{c=c+-12|0;d=d+-12|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[i>>2]=c}while((d|0)!=(e|0));e=k[a>>2]|0;d=k[n>>2]|0}k[a>>2]=c;k[i>>2]=e;k[n>>2]=k[h>>2];k[h>>2]=d;n=k[l>>2]|0;k[l>>2]=k[j>>2];k[j>>2]=n;k[m>>2]=k[i>>2];FG(m);r=o;return}function Qj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,q=0;m=r;r=r+64|0;j=m;HA(j,b,c,d);o=j+44|0;k[o>>2]=0;e=j+48|0;k[e>>2]=0;k[j>>2]=15476;h=j+52|0;k[h>>2]=0;i=j+56|0;k[i>>2]=0;k[j+60>>2]=0;b=a+4|0;g=k[b>>2]|0;c=a+8|0;f=k[c>>2]|0;q=g+f|0;d=f+4|0;k[c>>2]=d;n=(l[q+2>>0]|0)<<8|(l[q+1>>0]|0)<<16|(l[q+3>>0]|0);k[o>>2]=l[q>>0];k[e>>2]=n;d=g+d|0;k[c>>2]=f+8;d=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);f=j+52|0;BI(f,d);if(!d)d=8;else{g=d<<2;e=0;do{q=k[f>>2]|0;n=k[c>>2]|0;o=(k[b>>2]|0)+n|0;k[c>>2]=n+4;k[q+(e<<2)>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);e=e+1|0}while((e|0)!=(d|0));d=g+8|0}e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,j,+p[a+40>>3]);k[j>>2]=15476;e=k[h>>2]|0;b=e;if(e|0){c=k[i>>2]|0;if((c|0)!=(e|0))k[i>>2]=c+(~((c+-4-b|0)>>>2)<<2);zba(e)}O3(j);r=m;return d|0}function Rj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;l=r;r=r+192|0;f=l+176|0;m=l+8|0;h=l+16|0;j=l;g=k[d>>2]|0;e=k[d+4>>2]|0;k[f>>2]=b;Mq(m,a+168|0,b,113524,f,l+184|0);a=k[m>>2]|0;d=a+28|0;if(k[a+32>>2]|0){if((k[2783]|0)<4){Qd(h,56465,40,3,0,0,0);n=Tn(h,29308,63)|0;m=i[b+11>>0]|0;a=m<<24>>24<0;Tn(Tn(n,a?k[b>>2]|0:b,a?k[b+4>>2]|0:m&255)|0,56544,29)|0;hi(h)}aE(d)}k[j>>2]=g;k[j+4>>2]=e;k[f>>2]=k[j>>2];k[f+4>>2]=k[j+4>>2];Hq(d,c,f)|0;r=l;return}function Sj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,g=0,h=0,i=0.0,j=0,l=0,m=0.0,n=0,o=0,q=0,r=0.0;m=+yV(b+8|0);f=+yV(b+24|0);n=a+104|0;o=a+108|0;d=k[n>>2]|0;if((k[o>>2]|0)!=(d|0)){i=m+f;j=a+120|0;l=a+116|0;c=0;h=0;do{e=d;g=e+(h*40|0)|0;r=+yV(g);f=+yV(e+(h*40|0)+16|0);f=r+f;a:do if((m<r?r:m)<(f<i?f:i)){d=k[j>>2]|0;e=d;if((e|0)!=(l|0)){f=+p[g>>3];do{if(+p[d+8>>3]==f)break a;d=k[e+4>>2]|0;e=d}while((e|0)!=(l|0))}eh(a,g,b);c=1}while(0);h=h+1|0;d=k[n>>2]|0}while(h>>>0<(((k[o>>2]|0)-d|0)/40|0)>>>0);if(!c)q=11}else q=11;do if((q|0)==11){e=a+140|0;c=k[e>>2]|0;if((c|0)==(k[a+144>>2]|0)){Tr(a+136|0,b);break}else{d=c+40|0;do{k[c>>2]=k[b>>2];c=c+4|0;b=b+4|0}while((c|0)<(d|0));k[e>>2]=(k[e>>2]|0)+40;break}}while(0);return}function Tj(a){a=a|0;var b=0;if((i[109360]|0)==0?E3(109360)|0:0){if((i[109368]|0)==0?E3(109368)|0:0){b=112308;do{k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}b=b+12|0}while((b|0)!=112476)}dZ(112308,107311)|0;dZ(112320,107318)|0;dZ(112332,107325)|0;dZ(112344,107333)|0;dZ(112356,107343)|0;dZ(112368,107352)|0;dZ(112380,107359)|0;dZ(112392,107368)|0;dZ(112404,107372)|0;dZ(112416,107376)|0;dZ(112428,107380)|0;dZ(112440,107384)|0;dZ(112452,107388)|0;dZ(112464,107392)|0;k[28119]=112308}return k[28119]|0}function Uj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+336|0;e=h+180|0;f=h+24|0;g=h;if((i[a+130>>0]|0)==0&(k[2783]|0)<4){Qd(e,52211,851,3,0,0,0);Tn(e,52396,90)|0;hi(e)}e=DT((k[a+4>>2]|0)+2060|0,b)|0;if(!e){if((k[2783]|0)<5){Qd(f,52211,855,4,0,0,0);Tn(f,52487,54)|0;hi(f)}}else{oN(a);if((d|0)==2147483647)e=(k[e+4>>2]|0)-(k[e>>2]|0)>>2;else e=d-c|0;f=cW(88)|0;BA(f,e);em(a,b,f+12|0);gu(a,b,f+32|0);XE(a,b,f+52|0);Hg(a,b,f);f=xA(a,b)|0;k[g+4>>2]=6;k[g>>2]=8252;b=g+8|0;k[b>>2]=f;k[b+4>>2]=M;j[g+16>>1]=c;j[g+18>>1]=(d|0)>65535?65535:d;fB(k[a+108>>2]|0,g)}r=h;return}function Vj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;h=a+104|0;d=+p[h>>3];if(d==-1.0)Hl(a,b);else{m=b+1|0;i=a+4|0;b=k[i>>2]|0;f=k[b+2056>>2]|0;e=f+-1|0;if(d<=+p[b+1640>>3]?(g=a+64|0,(f|0)<=((k[g>>2]|0)+m|0)):0){b=f;while(1){if(!(C1(a,b)|0)){b=e;break}if((b|0)<((k[g>>2]|0)+m|0)){e=b;b=b+1|0}else break}e=b;b=k[i>>2]|0;d=+p[h>>3]}f=k[b+2024>>2]|0;if((f|0)<=(e|0))while(1){if(!(TJ(b+2024|0,f,0)|0)){b=DT((k[i>>2]|0)+2060|0,f)|0;if((b|0)!=0?(j=k[b+16>>2]|0,(j|0)>0):0)b=j;else b=k[(k[i>>2]|0)+1444>>2]|0;d=d+ +(b|0)/1.0e3}b=k[i>>2]|0;if((f|0)<(e|0))f=f+1|0;else break}c=+p[b+1640>>3];if(d>c)b=~~(d*1.0e3-c*1.0e3);else{b=DT(b+2060|0,(k[b+2056>>2]|0)+-1|0)|0;if((b|0)!=0?(l=k[b+16>>2]|0,(l|0)>0):0)b=(l>>>0)/20|0;else b=50;b=b>>>0>1e3?1e3:b}br(a+24|0,(b|0)<0?0:b,m)|0}return}function Wj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=r;r=r+32|0;d=h+16|0;e=h+28|0;f=h+8|0;g=h;if((X9(k[c>>2]|0)|0)!=200?(X9(k[c>>2]|0)|0)!=206:0){f=(w4(k[a+88>>2]|0)|0)+356|0;g=X9(k[c>>2]|0)|0;KJ(d,k[c>>2]|0);WC(f,b+56|0,g,d);p1(d)}else{j=d2(k[c>>2]|0,g)|0;c=k[g>>2]|0;i=vba(c)|0;fE(i|0,j|0,c|0)|0;c=b+56|0;k[d>>2]=c;Dr(f,a+36|0,c,113525,d,e);f=k[f>>2]|0;g=k[g>>2]|0;k[f+28>>2]=i;k[f+32>>2]=g;sm(a,c);eg(a,c)}if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);r=h;return}function Xj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+176|0;g=j+156|0;e=j;f=a+136|0;h=a+140|0;if((k[f>>2]|0)!=(k[h>>2]|0)){$C(g,f);b=k[f>>2]|0;c=k[h>>2]|0;if((c|0)==(b|0))c=b;else{c=c+(~(((c+-40-b|0)>>>0)/40|0)*40|0)|0;k[h>>2]=c}d=k[g>>2]|0;i=g+4|0;if((d|0)!=(k[i>>2]|0)){b=d;do{Sj(a,b);b=b+40|0}while((b|0)!=(k[i>>2]|0));b=k[f>>2]|0;c=k[h>>2]|0}if((b|0)!=(c|0)&(k[2783]|0)<4){Qd(e,33930,126,3,0,0,0);c=Tn(e,33953,40)|0;Tn(Ln(c,((k[h>>2]|0)-(k[f>>2]|0)|0)/40|0)|0,33994,15)|0;hi(e);c=k[h>>2]|0;b=k[f>>2]|0}if((c|0)!=(b|0))k[h>>2]=c+(~(((c+-40-b|0)>>>0)/40|0)*40|0);b=k[g>>2]|0;c=b;if(b|0){d=k[i>>2]|0;if((d|0)!=(b|0))k[i>>2]=d+(~(((d+-40-c|0)>>>0)/40|0)*40|0);zba(b)}}r=j;return}function Yj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;l=r;r=r+192|0;f=l+176|0;m=l+8|0;h=l+16|0;j=l;g=k[d>>2]|0;e=k[d+4>>2]|0;k[f>>2]=b;Mq(m,a+156|0,b,113537,f,l+184|0);a=k[m>>2]|0;d=a+28|0;if(k[a+32>>2]|0){if((k[2783]|0)<4){Qd(h,56465,51,3,0,0,0);n=Tn(h,56483,60)|0;m=i[b+11>>0]|0;a=m<<24>>24<0;Tn(Tn(n,a?k[b>>2]|0:b,a?k[b+4>>2]|0:m&255)|0,56544,29)|0;hi(h)}aE(d)}k[j>>2]=g;k[j+4>>2]=e;k[f>>2]=k[j>>2];k[f+4>>2]=k[j+4>>2];Lq(d,c,f)|0;r=l;return}function Zj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{e=d+-48|0;f=c;c=c+-48|0;k[e>>2]=k[c>>2];k[e+4>>2]=k[c+4>>2];k[e+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;e=d+-36|0;j=f+-36|0;k[e>>2]=k[j>>2];k[e+4>>2]=k[j+4>>2];k[e+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;j=d+-24|0;e=f+-24|0;k[j>>2]=k[e>>2];k[j+4>>2]=k[e+4>>2];k[j+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=d+-12|0;f=f+-12|0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];k[e+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;d=(k[g>>2]|0)+-48|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;j=b+8|0;h=k[i>>2]|0;k[i>>2]=k[j>>2];k[j>>2]=h;a=a+8|0;j=b+12|0;i=k[a>>2]|0;k[a>>2]=k[j>>2];k[j>>2]=i;k[b>>2]=k[e>>2];return}function _j(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=r;r=r+160|0;a=f;g=zo(b)|0;d=M;e=xF(b)|0;c=cW(16)|0;VU(c,g,d,e);e=Raa(c)|0;WL(b,e,_6(c)|0)|0;e=cW(28)|0;Hu(e,c,1);c=e+12|0;d=e+16|0;g=(k[d>>2]|0)-(k[c>>2]|0)|0;if((g|0)==(f2(b)|0)){if((k[d>>2]|0)!=(k[c>>2]|0)){a=0;do{g=xF(b)|0;k[(k[c>>2]|0)+(a<<2)>>2]=g;a=a+1|0}while(a>>>0<(k[d>>2]|0)-(k[c>>2]|0)>>2>>>0)}}else if((k[2783]|0)<4){Qd(a,42924,168,3,0,0,0);g=Tn(Tn(a,42990,127)|0,43118,15)|0;g=Tn(Ln(g,(k[d>>2]|0)-(k[c>>2]|0)|0)|0,43134,12)|0;Mn(g,f2(b)|0)|0;hi(a)}r=f;return e|0}function $j(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=r;r=r+160|0;c=e;d=Tm(a,b)|0;if((d|0)==(a+24|0)){if((k[2783]|0)<4){Qd(c,30228,103,3,0,0,0);h=Tn(Tn(Hn(Tn(c,30248,4)|0,a)|0,30253,3)|0,30257,27)|0;g=b+8|0;d=i[g+11>>0]|0;f=d<<24>>24<0;d=Tn(Tn(h,f?k[g>>2]|0:g,f?k[b+12>>2]|0:d&255)|0,30285,49)|0;Tn(Ln(d,k[a+32>>2]|0)|0,68623,1)|0;hi(c)}}else{h=d+4|0;k[(k[d>>2]|0)+4>>2]=k[h>>2];k[k[h>>2]>>2]=k[d>>2];h=a+32|0;k[h>>2]=(k[h>>2]|0)+-1;zba(d)}if(!(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0))AE((k[a+20>>2]|0)+256|0,b);Rb[k[(k[b>>2]|0)+4>>2]&2047](b);r=e;return}function ak(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;d=a+4|0;a=k[d>>2]|0;do if(a){l=i[c+11>>0]|0;j=l<<24>>24<0;l=j?k[c+4>>2]|0:l&255;j=j?k[c>>2]|0:c;while(1){e=a+16|0;c=i[e+11>>0]|0;f=c<<24>>24<0;c=f?k[a+20>>2]|0:c&255;g=c>>>0<l>>>0;d=g?c:l;if((d|0)!=0?(m=EI(j,f?k[e>>2]|0:e,d)|0,(m|0)!=0):0)if((m|0)<0)h=7;else h=9;else if(l>>>0<c>>>0)h=7;else h=9;if((h|0)==7){d=k[a>>2]|0;if(!d){h=8;break}else a=d}else if((h|0)==9){h=0;d=l>>>0<c>>>0?l:c;if((d|0)!=0?(n=EI(f?k[e>>2]|0:e,j,d)|0,(n|0)!=0):0){if((n|0)>=0){h=16;break}}else h=11;if((h|0)==11?(0,!g):0){h=16;break}c=a+4|0;d=k[c>>2]|0;if(!d){h=15;break}else a=d}}if((h|0)==8){k[b>>2]=a;break}else if((h|0)==15){k[b>>2]=a;a=c;break}else if((h|0)==16){k[b>>2]=a;a=b;break}}else{k[b>>2]=d;a=d}while(0);return a|0}function bk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;l=r;r=r+192|0;f=l+176|0;m=l+8|0;h=l+16|0;j=l;g=k[d>>2]|0;e=k[d+4>>2]|0;k[f>>2]=b;Mq(m,a+156|0,b,113538,f,l+184|0);a=k[m>>2]|0;d=a+28|0;if(k[a+32>>2]|0){if((k[2783]|0)<4){Qd(h,56465,51,3,0,0,0);n=Tn(h,56483,60)|0;m=i[b+11>>0]|0;a=m<<24>>24<0;Tn(Tn(n,a?k[b>>2]|0:b,a?k[b+4>>2]|0:m&255)|0,56544,29)|0;hi(h)}aE(d)}k[j>>2]=g;k[j+4>>2]=e;k[f>>2]=k[j>>2];k[f+4>>2]=k[j+4>>2];Uq(d,c,f)|0;r=l;return}function ck(a){a=a|0;var b=0;if((i[109440]|0)==0?E3(109440)|0:0){if((i[109448]|0)==0?E3(109448)|0:0){b=113120;do{k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}b=b+12|0}while((b|0)!=113288)}cZ(113120,24864)|0;cZ(113132,24892)|0;cZ(113144,24920)|0;cZ(113156,24952)|0;cZ(113168,24992)|0;cZ(113180,25028)|0;cZ(113192,25056)|0;cZ(113204,25092)|0;cZ(113216,25108)|0;cZ(113228,25124)|0;cZ(113240,25140)|0;cZ(113252,25156)|0;cZ(113264,25172)|0;cZ(113276,25188)|0;k[28322]=113120}return k[28322]|0}function dk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;i=p+32|0;h=p+28|0;g=p+24|0;l=p;m=p+20|0;n=p+16|0;o=p+12|0;k[l>>2]=l;k[l+4>>2]=l;k[l+8>>2]=0;c=k[a+4>>2]|0;d=c;if((d|0)!=(a|0)){j=l;do{f=k[c+8>>2]|0;d=d+4|0;a:do if((f|0)==(k[b>>2]|0)){e=k[d>>2]|0;d=e;b:do if((e|0)!=(a|0)){while(1){if((k[d+8>>2]|0)!=(f|0))break;d=k[e+4>>2]|0;e=d;if((e|0)==(a|0))break b}k[m>>2]=j;k[n>>2]=c;k[o>>2]=d;k[g>>2]=k[m>>2];k[h>>2]=k[n>>2];k[i>>2]=k[o>>2];lu(l,g,a,h,i);c=k[e+4>>2]|0;break a}while(0);k[m>>2]=j;k[n>>2]=c;k[o>>2]=d;k[g>>2]=k[m>>2];k[h>>2]=k[n>>2];k[i>>2]=k[o>>2];lu(l,g,a,h,i);c=d}else c=k[d>>2]|0;while(0);d=c}while((d|0)!=(a|0))}$H(l);r=p;return}function ek(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;if((VJ(b,c,h)|0?(g=i[h+11>>0]|0,c=g<<24>>24<0,f=c?k[h>>2]|0:h,((c?k[h+4>>2]|0:g&255)|0)!=0):0)?(i[f>>0]|0)==80:0){a=f+1|0;b=i[a>>0]|0;if(!(b<<24>>24))e=0.0;else{g=0;c=a;e=0.0;f=a;while(1){if(b<<24>>24==46|(b+-48&255)<10){a=g;f=f+1|0}else{switch(b<<24>>24|0){case 89:{a=g;e=e+ +Waa(c,0)*365.0*24.0*60.0*60.0;break}case 77:{a=g;e=e+ +Waa(c,0)*(g?60.0:2592.0e3);break}case 68:{a=g;e=e+ +Waa(c,0)*86400.0;break}case 84:{a=1;break}case 72:{a=g;e=e+ +Waa(c,0)*3600.0;break}case 83:{a=g;e=e+ +Waa(c,0);break}default:a=g}f=f+1|0;c=f}b=i[f>>0]|0;if(!(b<<24>>24))break;else g=a}}p[d>>3]=e;a=1}else a=0;p1(h);r=j;return a|0}function fk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0.0;h=k[a>>2]|0;j=a+4|0;c=k[j>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{e=c;c=c+-96|0;iI(d+-96|0,c);m=+p[e+-72>>3];p[d+-80>>3]=+p[e+-80>>3];p[d+-72>>3]=m;f=d+-64|0;l=e+-64|0;k[f>>2]=k[l>>2];k[f+4>>2]=k[l+4>>2];k[f+8>>2]=k[l+8>>2];k[f+12>>2]=k[l+12>>2];k[f+16>>2]=k[l+16>>2];i[f+20>>0]=i[l+20>>0]|0;iI(d+-40|0,e+-40|0);iI(d+-28|0,e+-28|0);f=d+-16|0;e=e+-16|0;k[f>>2]=k[e>>2];k[f+4>>2]=k[e+4>>2];k[f+8>>2]=k[e+8>>2];k[f+12>>2]=k[e+12>>2];d=(k[g>>2]|0)+-96|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;l=b+8|0;h=k[j>>2]|0;k[j>>2]=k[l>>2];k[l>>2]=h;a=a+8|0;l=b+12|0;j=k[a>>2]|0;k[a>>2]=k[l>>2];k[l>>2]=j;k[b>>2]=k[e>>2];return}function gk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0;e=r;r=r+80|0;f=e;HA(f,b,c,d);m=f+44|0;k[m>>2]=0;h=f+48|0;k[h>>2]=0;k[f>>2]=15644;g=a+4|0;d=k[g>>2]|0;c=a+8|0;b=k[c>>2]|0;n=d+b|0;i=b+4|0;k[c>>2]=i;j=(l[n+2>>0]|0)<<8|(l[n+1>>0]|0)<<16|(l[n+3>>0]|0);k[m>>2]=l[n>>0];k[h>>2]=j;i=d+i|0;h=b+8|0;k[c>>2]=h;k[f+52>>2]=(l[i+1>>0]|0)<<16|(l[i>>0]|0)<<24|(l[i+2>>0]|0)<<8|(l[i+3>>0]|0);h=d+h|0;i=b+12|0;k[c>>2]=i;k[f+56>>2]=(l[h+1>>0]|0)<<16|(l[h>>0]|0)<<24|(l[h+2>>0]|0)<<8|(l[h+3>>0]|0);i=d+i|0;h=b+16|0;k[c>>2]=h;k[f+60>>2]=(l[i+1>>0]|0)<<16|(l[i>>0]|0)<<24|(l[i+2>>0]|0)<<8|(l[i+3>>0]|0);h=d+h|0;d=b+20|0;k[c>>2]=d;k[f+64>>2]=(l[h+1>>0]|0)<<16|(l[h>>0]|0)<<24|(l[h+2>>0]|0)<<8|(l[h+3>>0]|0);d=(k[g>>2]|0)+d|0;k[c>>2]=b+24;k[f+68>>2]=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,f,+p[a+40>>3]);O3(f);r=e;return 24}function hk(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;if((k[b+12>>2]|0)==2019846515){n=a+40|0;d=k[n>>2]|0;if(!d){p[a+24>>3]=+((k[b+8>>2]|0)>>>0)+c;m=b+72|0;p[a+16>>3]=+((k[m>>2]|0)>>>0)+4294967296.0*+((k[m+4>>2]|0)>>>0);k[a+36>>2]=k[b+56>>2]}else{m=a+44|0;k[m>>2]=(k[m>>2]|0)+1}l=b+80|0;m=l+4|0;b=k[l>>2]|0;if((k[m>>2]|0)!=(b|0)){f=a+8|0;g=a+12|0;h=a+4|0;j=a+24|0;e=0;d=b;do{b=d+(e*20|0)|0;do if(!(i[b>>0]|0)){d=k[f>>2]|0;if((d|0)==(k[g>>2]|0)){$q(h,b);break}else{k[d>>2]=k[b>>2];k[d+4>>2]=k[b+4>>2];k[d+8>>2]=k[b+8>>2];k[d+12>>2]=k[b+12>>2];k[d+16>>2]=k[b+16>>2];k[f>>2]=(k[f>>2]|0)+20;break}}else{p[j>>3]=+p[j>>3]+ +((k[d+(e*20|0)+4>>2]|0)>>>0);k[n>>2]=(k[n>>2]|0)+1}while(0);e=e+1|0;d=k[l>>2]|0}while(e>>>0<(((k[m>>2]|0)-d|0)/20|0)>>>0);d=k[n>>2]|0}i[a+32>>0]=(d|0)==(k[a+44>>2]|0)&1}return}function ik(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=j0(a+208|0)|0;tB(a+108|0,~~(+((k[j+232>>2]|0)>>>0)*1.0e3/+(k[j+180>>2]|0)))|0;h=j+244|0;j=j+248|0;f=k[j>>2]|0;g=k[h>>2]|0;d=g;b=f;do if(f-g>>5>>>0>4){c=d+32|0;if((c|0)!=(b|0)){do{k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[d+12>>2]=k[c+12>>2];f=d+16|0;g=c+16|0;e=f+11|0;if((i[e>>0]|0)<0){i[k[f>>2]>>0]=0;k[d+20>>2]=0;e=f}else{i[f>>0]=0;i[e>>0]=0;e=f}Qm(f,0);k[e>>2]=k[g>>2];k[e+4>>2]=k[g+4>>2];k[e+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[d+28>>2]=k[c+28>>2];c=c+32|0;d=d+32|0}while((c|0)!=(b|0));b=k[j>>2]|0;if((b|0)==(d|0))break}do{k[j>>2]=b+-32;p1(b+-16|0);b=k[j>>2]|0}while((b|0)!=(d|0))}while(0);In(0,h);r$(a+24|0);return}function jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=r;r=r+16|0;f=c+8|0;h=c;k[a>>2]=7636;fx(a+4|0);fx(a+56|0);d=a+108|0;k[d>>2]=7652;k[a+112>>2]=0;e=a+116|0;k[e>>2]=1520;g=a+120|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;g=a+144|0;i[a+152>>0]=0;k[a+148>>2]=-1;k[g>>2]=1500;k[a+156>>2]=0;k[h>>2]=1235;k[h+4>>2]=0;k[f>>2]=k[h>>2];k[f+4>>2]=k[h+4>>2];Ww(g,e,f)|0;k[d>>2]=7672;k[e>>2]=7696;e=a+160|0;k[e>>2]=7652;k[a+164>>2]=0;d=a+168|0;k[d>>2]=1520;g=a+172|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;g=a+196|0;i[a+204>>0]=0;k[a+200>>2]=-1;k[g>>2]=1500;k[a+208>>2]=0;k[h>>2]=1235;k[h+4>>2]=0;k[f>>2]=k[h>>2];k[f+4>>2]=k[h+4>>2];Ww(g,d,f)|0;k[e>>2]=7672;k[d>>2]=7696;i[a+212>>0]=0;iI(a+216|0,b);k[a+228>>2]=-1;r=c;return}function kk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+160|0;c=f;d=cW(80)|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;k[d+24>>2]=0;k[d+28>>2]=0;p[d+32>>3]=-1.0;p[d+40>>3]=0.0;k[d+48>>2]=0;i[d+52>>0]=0;e=d+56|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;k[e+20>>2]=0;if(ad(a+120|0,b,d)|0){fc[k[(k[a>>2]|0)+20>>2]&255](a,d,b);a=1}else{if((k[2783]|0)<5){Qd(c,49969,114,4,0,0,0);h=Tn(c,50172,22)|0;a=i[b+11>>0]|0;g=a<<24>>24<0;Tn(h,g?k[b>>2]|0:b,g?k[b+4>>2]|0:a&255)|0;hi(c)}p1(d+68|0);p1(e);p1(d+12|0);nI(d);zba(d);a=0}r=f;return a|0}function lk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+288|0;d=$L(b)|0;g=d+4|0;if((k[d>>2]|0)!=(k[g>>2]|0)){c=Rv(b)|0;h=a+4|0;b=(v0(k[h>>2]|0)|0)+28|0;k[b>>2]=c;b=v0(k[h>>2]|0)|0;b=GG(b,k[d>>2]|0)|0;if((b|0)<0){b=k[d>>2]|0;f=~~(+p[b>>3]/+(c|0));e=d}else{f=b;e=d;b=k[d>>2]|0}d=(k[g>>2]|0)-b>>5;b=a+352|0;mO(b,f,((f|0)<0)<<31>>31);D5(b,d);b=k[e>>2]|0;if((k[g>>2]|0)!=(b|0)){c=0;do{i=v0(k[h>>2]|0)|0;_C(i,c+f|0,+p[b+(c<<5)>>3]);c=c+1|0;b=k[e>>2]|0}while(c>>>0<(k[g>>2]|0)-b>>5>>>0)}b=a+444|0;if((k[b>>2]|0)<0)k[b>>2]=f;if(!(i6(a+296|0)|0)?(f|0)==(k[b>>2]|0):0)b=~~(+p[(k[h>>2]|0)+1568>>3]*+((k[g>>2]|0)-(k[e>>2]|0)>>5>>>0));else b=0;Mf(k[h>>2]|0,b+f|0,d,1);Ps(a)}return}function mk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=(b|0)==(a|0);i[b+12>>0]=g&1;a:do if(!g){while(1){c=k[b+8>>2]|0;e=c+12|0;if(i[e>>0]|0)break a;f=c+8|0;g=k[f>>2]|0;d=k[g>>2]|0;if((d|0)==(c|0)){d=k[g+4>>2]|0;if(!d){d=8;break}d=d+12|0;if(i[d>>0]|0){d=8;break}i[e>>0]=1;i[g+12>>0]=(g|0)==(a|0)&1;i[d>>0]=1}else{if(!d){d=14;break}d=d+12|0;if(i[d>>0]|0){d=14;break}i[e>>0]=1;i[g+12>>0]=(g|0)==(a|0)&1;i[d>>0]=1}if((g|0)==(a|0))break a;else b=g}if((d|0)==8){if((k[c>>2]|0)==(b|0))b=g;else{kI(c);b=k[f>>2]|0;c=b;b=k[b+8>>2]|0}i[c+12>>0]=1;i[b+12>>0]=0;UH(b);break}else if((d|0)==14){if((k[c>>2]|0)==(b|0)){UH(c);b=k[f>>2]|0;c=b;b=k[b+8>>2]|0}else b=g;i[c+12>>0]=1;i[b+12>>0]=0;kI(b);break}}while(0);return}function nk(a,b){a=a|0;b=b|0;var c=0,d=0;d=ub(75,k[a+12>>2]|0,b+12|0)|0;if((d|0)!=-1){switch(k[b>>2]|0){case 5:{a=b+20|0;if((i[a+11>>0]|0)<0)a=k[a>>2]|0;La(76,d|0,a|0,k[b+32>>2]|0,k[b+36>>2]|0)|0;break}case 1:{a=b+20|0;if((i[a+11>>0]|0)<0)a=k[a>>2]|0;c=b+32|0;if((i[c+11>>0]|0)<0)c=k[c>>2]|0;yb(77,d|0,a|0,c|0)|0;break}case 2:{a=b+20|0;if((i[a+11>>0]|0)<0)a=k[a>>2]|0;ub(78,d|0,a|0)|0;break}case 3:{a=b+20|0;if((i[a+11>>0]|0)<0)a=k[a>>2]|0;c=b+32|0;if((i[c+11>>0]|0)<0)c=k[c>>2]|0;yb(79,d|0,a|0,c|0)|0;break}case 4:{a=b+20|0;if((i[a+11>>0]|0)<0)a=k[a>>2]|0;ub(80,d|0,a|0)|0;break}case 6:{a=b+24|0;if((i[a+11>>0]|0)<0)a=k[a>>2]|0;c=b+36|0;if((i[b+47>>0]|0)<0)c=k[c>>2]|0;La(81,d|0,b+20|0,a|0,c|0)|0;break}default:yb(82,d|0,k[b+8>>2]|0,k[b+4>>2]|0)|0}Ta(2,d|0)|0}return}function ok(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=r;r=r+32|0;e=d+16|0;j=d;f=d+8|0;g=a+4|0;k[a>>2]=1972;k[g>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;h=a+20|0;X0(h);k[a+40>>2]=0;k[a+36>>2]=10656;k[a+44>>2]=b;k[a>>2]=13364;k[g>>2]=13396;k[h>>2]=13420;b=a+48|0;K6(b);h=a+56|0;k[h>>2]=1520;g=a+60|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;g=a+84|0;i[a+92>>0]=0;k[a+88>>2]=-1;k[g>>2]=1500;k[a+96>>2]=0;k[j>>2]=1235;k[j+4>>2]=0;k[e>>2]=k[j>>2];k[e+4>>2]=k[j+4>>2];Ww(g,h,e)|0;k[b>>2]=1576;k[h>>2]=1600;k[a+100>>2]=c;h=k[(k[c+128>>2]|0)+112>>2]|0;g=k[c+52>>2]|0;ue(a+104|0,h,g,Xaa(c)|0);k[f>>2]=1273;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];cr(b,a,e)|0;nL(a+56|0,0);r=d;return}function pk(a){a=a|0;var b=0,c=0,d=0;d=r;r=r+320|0;b=d+156|0;c=d;a:do switch(k[a+560>>2]|0){case 7:{a=0;break}case 3:{if(db()|0){a=XH(a)|0;break a}if(i[a+710>>0]|0?Ta(7,0)|0:0){a=cW(36)|0;F1(a);break a}if((k[2783]|0)<4){Qd(b,30665,357,3,0,0,0);Tn(b,31332,54)|0;hi(b);a=0}else a=0;break}case 2:{a=XH(a)|0;break}case 10:{a=cW(400)|0;NT(a);break}case 11:{a=cW(688)|0;XG(a|0,0,688)|0;Gk(a);k[a>>2]=18296;k[a+28>>2]=18532;k[a+32>>2]=18560;k[a+208>>2]=18584;break}case 12:{a=cW(248)|0;Jy(a);break}default:{if((k[2783]|0)<5){Qd(c,30665,370,4,0,0,0);Tn(c,31387,58)|0;hi(c)}a=XH(a)|0}}while(0);r=d;return a|0}function qk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=r;r=r+32|0;g=h;d=k[a+4>>2]|0;e=k[a>>2]|0;c=((d-e|0)/72|0)+1|0;if(c>>>0>59652323)J5(a);i=((k[a+8>>2]|0)-e|0)/72|0;f=i<<1;f=i>>>0<29826161?(f>>>0<c>>>0?c:f):59652323;c=(d-e|0)/72|0;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!f)d=0;else d=cW(f*72|0)|0;k[g>>2]=d;i=d+(c*72|0)|0;k[g+4>>2]=i;k[g+12>>2]=d+(f*72|0);iI(i,b);k[d+(c*72|0)+12>>2]=k[b+12>>2];iI(d+(c*72|0)+16|0,b+16|0);j=b+28|0;e=k[j+4>>2]|0;f=d+(c*72|0)+28|0;k[f>>2]=k[j>>2];k[f+4>>2]=e;iI(d+(c*72|0)+36|0,b+36|0);iI(d+(c*72|0)+48|0,b+48|0);iI(d+(c*72|0)+60|0,b+60|0);k[g+8>>2]=i+72;ji(a,g);sw(g);r=h;return}function rk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=r;r=r+16|0;h=j;f=b+4|0;d=k[f>>2]|0;do if(d){g=k[c>>2]|0;while(1){f=k[d+16>>2]|0;if((g|0)<(f|0)){f=k[d>>2]|0;if(!f){g=5;break}else d=f}else{if((f|0)>=(g|0)){g=10;break}c=d+4|0;f=k[c>>2]|0;if(!f){g=9;break}else d=f}}if((g|0)==5){k[h>>2]=d;c=d;f=d;break}else if((g|0)==9){k[h>>2]=d;f=d;break}else if((g|0)==10){k[h>>2]=d;c=h;f=d;break}}else{k[h>>2]=f;c=f}while(0);d=k[c>>2]|0;if(!d){d=cW(48)|0;k[d+16>>2]=k[k[e>>2]>>2];e=d+20|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;wF(b,f,c,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=j;return}function sk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0;q=r;r=r+48|0;i=q+32|0;h=q+28|0;g=q+24|0;l=q;m=q+20|0;n=q+16|0;o=q+12|0;k[l>>2]=l;k[l+4>>2]=l;k[l+8>>2]=0;c=k[a+4>>2]|0;d=c;if((d|0)!=(a|0)){j=l;do{f=+p[b>>3];d=d+4|0;a:do if(+p[c+8>>3]==f){e=k[d>>2]|0;d=e;b:do if((e|0)!=(a|0)){while(1){if(!(+p[d+8>>3]==f))break;d=k[e+4>>2]|0;e=d;if((e|0)==(a|0))break b}k[m>>2]=j;k[n>>2]=c;k[o>>2]=d;k[g>>2]=k[m>>2];k[h>>2]=k[n>>2];k[i>>2]=k[o>>2];lu(l,g,a,h,i);c=k[e+4>>2]|0;break a}while(0);k[m>>2]=j;k[n>>2]=c;k[o>>2]=d;k[g>>2]=k[m>>2];k[h>>2]=k[n>>2];k[i>>2]=k[o>>2];lu(l,g,a,h,i);c=d}else c=k[d>>2]|0;while(0);d=c}while((d|0)!=(a|0))}$H(l);r=q;return}function tk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+16|0;e=g+12|0;f=g;k[e>>2]=b;dk(a+816|0,e);c=k[e>>2]|0;d=a+20|0;b=k[(k[(k[d>>2]|0)+2004>>2]|0)+100>>2]|0;if((b|0)<1)b=k[a+696>>2]|0;h=~~(+(b|0)*+p[a+688>>3]);h=((Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0)<<10|0)>(h|0);b=k[e>>2]|0;c=k[b>>2]|0;do if(!h){Rb[k[c+120>>2]&2047](b);h=k[e>>2]|0;h=Ub[k[(k[h>>2]|0)+116>>2]&511](h)|0;b=k[e>>2]|0;if((h|0)>(k[a+700>>2]|0)){k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,30656,8);Bg(a,b,2,0);p1(f);break}else{MG(a,b);break}}else{Rb[k[c+124>>2]&2047](b);h=k[e>>2]|0;Sb[k[(k[h>>2]|0)+112>>2]&511](h,1);h=k[(k[d>>2]|0)+2164>>2]|0;Sb[k[(k[h>>2]|0)+24>>2]&511](h,k[e>>2]|0)}while(0);zH(a);r=g;return}function uk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+320|0;f=h+156|0;d=h;do if((c|0)>-1?(e=k[a>>2]|0,(k[a+4>>2]|0)-e>>2>>>0>c>>>0):0){a=e+(c<<2)|0;if(!(k[a>>2]|0)){k[a>>2]=b;break}if((k[2783]|0)<4){Qd(f,42676,43,3,0,0,0);Tn(Mn(Tn(f,42689,12)|0,c)|0,42702,14)|0;hi(f)}if(b|0){Ta(20,k[b>>2]|0)|0;zba(b)}}else g=9;while(0);if((g|0)==9){if((k[2783]|0)<4){Qd(d,42676,47,3,0,0,0);g=Tn(Mn(Tn(d,42717,15)|0,c)|0,42733,32)|0;Tn(Ln(g,(k[a+4>>2]|0)-(k[a>>2]|0)>>2)|0,68623,1)|0;hi(d)}if(b|0){Ta(20,k[b>>2]|0)|0;zba(b)}}r=h;return}function vk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;if((c|0)!=(b|0)){l=b;m=d+4|0;do{h=d;i=k[h>>2]|0;j=i;h=(k[h+4>>2]|0)-(k[i>>2]|0)|0;e=h>>2;f=e+-1|0;if((h|0)>4){h=j+(f>>>10<<2)|0;e=(k[h>>2]|0)+((f&1023)<<2)|0;f=h}else{e=1024-e|0;f=j+(((e|0)/-1024|0)<<2)|0;e=(k[f>>2]|0)+(1023-((e|0)%1024|0)<<2)|0}h=e+4|0;g=h-(k[f>>2]|0)>>2;f=c;e=f-l>>2;n=(e|0)>(g|0);e=n?g:e;c=n?c+(0-g<<2)|0:b;f=f-c|0;g=f>>2;if(g|0)qO(h+(0-g<<2)|0,c|0,f|0)|0;do if(e|0){e=((k[m>>2]|0)-(k[i>>2]|0)>>2)-e|0;if((e|0)>0){n=j+(e>>>10<<2)|0;k[d>>2]=n;k[m>>2]=(k[n>>2]|0)+((e&1023)<<2);break}else{n=1023-e|0;j=j+(((n|0)/-1024|0)<<2)|0;k[d>>2]=j;k[m>>2]=(k[j>>2]|0)+(1023-((n|0)%1024|0)<<2);break}}while(0)}while((c|0)!=(b|0))}b=d;d=k[b+4>>2]|0;n=a;k[n>>2]=k[b>>2];k[n+4>>2]=d;return}function wk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;g=r;r=r+176|0;d=g+168|0;e=g+8|0;f=g;kn(a);if(i[a+1435>>0]|0){c=k[a+2004>>2]|0;b=i[c+40+11>>0]|0;if(b<<24>>24<0)b=k[c+44>>2]|0;else b=b&255;if(b|0)i[a+2156>>0]=1}if((k[2783]|0)<3){Qd(e,29209,354,2,0,0,0);j=Tn(Tn(Hn(Tn(e,29231,4)|0,a)|0,30253,3)|0,29301,6)|0;h=a+2008|0;c=i[h+11>>0]|0;b=c<<24>>24<0;Tn(j,b?k[h>>2]|0:h,b?k[a+2012>>2]|0:c&255)|0;hi(e)}tH(a);j=k[a+2272>>2]|0;Rb[k[(k[j>>2]|0)+36>>2]&2047](j);j=(k[(k[a+1256>>2]|0)+200>>2]|0)+1076|0;k[f>>2]=326;k[f+4>>2]=0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];Ax(j,a,d);r=g;return 1}function xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+64|0;d=h;e=h+40|0;f=h+28|0;g=h+16|0;c=(C9(k[a+36>>2]|0)|0)+204|0;c=k[c>>2]|0;a=N6(b,56442)|0;if(!c){FE(e,Yi()|0,56452);Ix(d,e);GA(a,d)|0;Lv(d);p1(e)}else{FE(f,Yi()|0,56450);Sb[k[(k[c>>2]|0)+44>>2]&511](g,c);c=i[g+11>>0]|0;b=c<<24>>24<0;c=nw(f,b?k[g>>2]|0:g,b?k[g+4>>2]|0:c&255)|0;k[e>>2]=k[c>>2];k[e+4>>2]=k[c+4>>2];k[e+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;Ix(d,e);GA(a,d)|0;Lv(d);p1(e);p1(g);p1(f)}r=h;return}function yk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=k[a+8>>2]|0;i[k[b>>2]>>0]=g>>>24;i[(k[b>>2]|0)+1>>0]=g>>>16;i[(k[b>>2]|0)+2>>0]=g>>>8;i[(k[b>>2]|0)+3>>0]=g;g=(k[b>>2]|0)+4|0;k[b>>2]=g;e=a+12|0;e=l[e>>0]|l[e+1>>0]<<8|l[e+2>>0]<<16|l[e+3>>0]<<24;i[g>>0]=e;i[g+1>>0]=e>>8;i[g+2>>0]=e>>16;i[g+3>>0]=e>>24;g=(k[b>>2]|0)+4|0;k[b>>2]=g;e=a+44|0;e=l[e>>0]|l[e+1>>0]<<8|l[e+2>>0]<<16|l[e+3>>0]<<24;i[g>>0]=e;i[g+1>>0]=e>>8;i[g+2>>0]=e>>16;i[g+3>>0]=e>>24;g=(k[b>>2]|0)+4|0;k[b>>2]=g;e=k[a+48>>2]|0;i[g>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;e=(k[b>>2]|0)+4|0;k[b>>2]=e;g=a+52|0;f=a+56|0;a=k[g>>2]|0;if((k[f>>2]|0)!=(a|0)){d=0;c=a;a=e;do{e=c+(d<<2)|0;e=l[e>>0]|l[e+1>>0]<<8|l[e+2>>0]<<16|l[e+3>>0]<<24;i[a>>0]=e;i[a+1>>0]=e>>8;i[a+2>>0]=e>>16;i[a+3>>0]=e>>24;a=(k[b>>2]|0)+4|0;k[b>>2]=a;d=d+1|0;c=k[g>>2]|0}while(d>>>0<(k[f>>2]|0)-c>>2>>>0)}return}function zk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+320|0;e=j+156|0;f=j;h=a+116|0;g=k[h>>2]|0;k[h>>2]=b;h=(g|0)!=0;if(h?(c=k[g>>2]|0,d=k[b>>2]|0,$p(c+(((((k[g+4>>2]|0)-c|0)/96|0)+-1|0)*96|0)|0,d+(((((k[b+4>>2]|0)-d|0)/96|0)+-1|0)*96|0)|0)|0):0)c=(k[b+36>>2]|0)*500|0;else{c=(k[b+36>>2]|0)*1e3|0;d=k[a+40>>2]|0;if(d)Sb[k[(k[d>>2]|0)+8>>2]&511](d,b)}do if(!(i[b+40>>0]|0))tB(a+96|0,c)|0;else{if(!(h&(i[(k[a+76>>2]|0)+220>>0]|0)!=0)){i[a+333>>0]=1;if((k[2783]|0)>=3)break;Qd(f,51839,138,2,0,0,0);Tn(f,51895,61)|0;hi(f);break}if((k[2783]|0)<4){Qd(e,51839,134,3,0,0,0);Tn(e,51869,25)|0;hi(e)}tB(a+96|0,c)|0}while(0);if(h){JE(g);zba(g)}r=j;return}function Ak(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;m=c;h=b;e=m-h|0;f=(e|0)/40|0;d=a+8|0;l=k[a>>2]|0;i=l;do if(f>>>0>(((k[d>>2]|0)-l|0)/40|0)>>>0){qK(a);if(f>>>0>107374182)J5(a);l=((k[d>>2]|0)-(k[a>>2]|0)|0)/40|0;m=l<<1;xP(a,l>>>0<53687091?(m>>>0<f>>>0?f:m):107374182);a=a+4|0;if((e|0)>0){fE(k[a>>2]|0,b|0,e|0)|0;k[a>>2]=(k[a>>2]|0)+(((e>>>0)/40|0)*40|0)}}else{j=a+4|0;e=((k[j>>2]|0)-l|0)/40|0;g=f>>>0>e>>>0;f=g?b+(e*40|0)|0:c;e=f;a=e-h|0;if(a|0)qO(l|0,b|0,a|0)|0;d=i+(((a|0)/40|0)*40|0)|0;if(g){a=m-e|0;if((a|0)<=0)break;fE(k[j>>2]|0,f|0,a|0)|0;k[j>>2]=(k[j>>2]|0)+(((a>>>0)/40|0)*40|0);break}else{a=k[j>>2]|0;if((a|0)==(d|0))break;k[j>>2]=a+(~(((a+-40-d|0)>>>0)/40|0)*40|0);break}}while(0);return}function Bk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+192|0;c=f+32|0;d=f+16|0;e=f;if(!((b|0)==0|(i[a+133>>0]|0)!=0)){if((k[2783]|0)<3){Qd(c,52211,768,2,0,0,0);g=Tn(Tn(c,55568,19)|0,55588,16)|0;Mn(g,k[b>>2]|0)|0;hi(c);c=b}else c=b;mD(d,0);g=N6(d,56171)|0;nF(e,53082);GA(g,e)|0;Lv(e);g=N6(d,55130)|0;h=N6(g,55140)|0;Ix(e,b+4|0);GA(h,e)|0;Lv(e);h=N6(g,55147)|0;fY(e,k[c>>2]|0);GA(h,e)|0;Lv(e);g=N6(g,55130)|0;Ix(e,b+16|0);GA(g,e)|0;Lv(e);ph(a,d,a+8|0)|0;Lv(d)}r=f;return}function Ck(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;d=i+12|0;c=i+8|0;e=i+4|0;f=i;h=a+8|0;g=k[h>>2]|0;if(g>>>0<=b>>>0){if(g>>>0<b>>>0){b=b-g|0;e=cW(72)|0;k[e>>2]=0;c=e+20|0;k[c>>2]=0;k[e+24>>2]=0;k[e+16>>2]=c;k[e+8>>2]=6464;k[e+12>>2]=6492;c=e+40|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=e;d=b+-1|0;if(!d)d=1;else{do{f=cW(72)|0;g=f+20|0;k[g>>2]=0;k[f+24>>2]=0;k[f+16>>2]=g;k[f+8>>2]=6464;k[f+12>>2]=6492;g=f+40|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;g=c+4|0;k[g>>2]=f;k[f>>2]=c;c=k[g>>2]|0;d=d+-1|0}while((d|0)!=0);d=b}g=c;k[g+4>>2]=a;f=k[a>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[a>>2]=g;k[h>>2]=(k[h>>2]|0)+d}}else{h=qt(a,b)|0;k[e>>2]=h;k[f>>2]=a;k[c>>2]=k[e>>2];k[d>>2]=k[f>>2];wA(a,c,d)|0}r=i;return}function Dk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+16|0;f=g;e=b+8|0;a=k[e>>2]|0;k[e>>2]=a+1;d=c+20|0;mh(f,b,i[(k[b>>2]|0)+a>>0]|0,-1);a=d+11|0;if((i[a>>0]|0)<0){i[k[d>>2]>>0]=0;k[c+24>>2]=0;a=d}else{i[d>>0]=0;i[a>>0]=0;a=d}Qm(d,0);k[a>>2]=k[f>>2];k[a+4>>2]=k[f+4>>2];k[a+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;p1(f);d=c+32|0;h=k[e>>2]|0;a=(k[b+4>>2]|0)-h|0;b=(k[b>>2]|0)+h|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,b,a);k[e>>2]=(k[e>>2]|0)+a;a=d+11|0;if((i[a>>0]|0)<0){i[k[d>>2]>>0]=0;k[c+36>>2]=0;a=d}else{i[d>>0]=0;i[a>>0]=0;a=d}Qm(d,0);k[a>>2]=k[f>>2];k[a+4>>2]=k[f+4>>2];k[a+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;p1(f);r=g;return}function Ek(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0,g=0;e=b+12|0;d=k[e>>2]|0;do if(!(d&1))Tn(a,34400,9)|0;else{if(d&2|0){Tn(a,34410,10)|0;break}g=Tn(a,103296,1)|0;f=g+(k[(k[g>>2]|0)+-12>>2]|0)+4|0;k[f>>2]=k[f>>2]&-261|4;k[g+(k[(k[g>>2]|0)+-12>>2]|0)+8>>2]=3;g=Tn(Qn(g,+p[b>>3])|0,34421,1)|0;f=b+8|0;g=Tn(Mn(g,k[f>>2]|0)|0,34423,1)|0;d=g+(k[(k[g>>2]|0)+-12>>2]|0)+4|0;k[d>>2]=k[d>>2]&-261|4;k[g+(k[(k[g>>2]|0)+-12>>2]|0)+8>>2]=3;d=k[e>>2]|0;if(d&1)if(!(d&2))c=+p[b>>3]/+(k[f>>2]|0);else c=C;else c=-1.0;Tn(Qn(g,c)|0,34425,2)|0}while(0);return a|0}function Fk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0;l=r;r=r+32|0;h=l+12|0;j=l;do if(dl(a,b,c,d,e)|0)if((k[e>>2]&-1024|0)==55296){g=k[c>>2]|0;f=g;if((d-g|0)<6){k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,102217,67);iz(a,h,b,k[c>>2]|0)|0;p1(h);a=0;break}g=f+1|0;k[c>>2]=g;if((i[f>>0]|0)==92?(k[c>>2]=f+2,(i[g>>0]|0)==117):0){if(dl(a,b,c,d,h)|0){k[e>>2]=(k[e>>2]<<10&1047552)+65536|k[h>>2]&1023;a=1;break}}else{k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,102285,79);iz(a,j,b,k[c>>2]|0)|0;p1(j)}a=0}else a=1;else a=0;while(0);r=l;return a|0}function Gk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=r;r=r+32|0;c=b+16|0;h=b;e=b+8|0;Kk(a);k[a>>2]=17196;k[a+28>>2]=17432;k[a+32>>2]=17460;k[a+208>>2]=17484;f=a+384|0;K6(f);d=a+392|0;k[d>>2]=1520;g=a+396|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;g=a+420|0;i[a+428>>0]=0;k[a+424>>2]=-1;k[g>>2]=1500;k[a+432>>2]=0;k[h>>2]=1235;k[h+4>>2]=0;k[c>>2]=k[h>>2];k[c+4>>2]=k[h+4>>2];Ww(g,d,c)|0;k[f>>2]=1576;k[d>>2]=1600;k[a+436>>2]=0;k[a+440>>2]=-1;i[a+444>>0]=1;i[a+445>>0]=0;i[a+446>>0]=0;cd(a+448|0,0);p[a+632>>3]=-1.0;d=a+640|0;k[d>>2]=-1;k[d+4>>2]=-1;d=a+648|0;i[a+656>>0]=0;k[a+652>>2]=-1;k[d>>2]=9544;k[a+664>>2]=0;f=a+676|0;k[f>>2]=f;k[a+680>>2]=f;k[a+684>>2]=0;k[a+668>>2]=3288;k[a+672>>2]=3312;k[e>>2]=369;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];Xw(d,a,c)|0;r=b;return}function Hk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;l=o+16|0;m=o;n=o+8|0;c=a+20|0;if((k[c>>2]|0)!=(b|0)){j=a+24|0;i=k[a+28>>2]|0;c=k[a+40>>2]|0;e=i+(c>>>10<<2)|0;h=(k[a+32>>2]|0)==(i|0);if(h){d=0;f=0;g=c+(k[a+44>>2]|0)|0}else{g=c+(k[a+44>>2]|0)|0;d=(k[e>>2]|0)+((c&1023)<<2)|0;f=(k[i+(g>>>10<<2)>>2]|0)+((g&1023)<<2)|0}c=e;a=d;a:do if((a|0)==(f|0))a=c;else while(1){if((k[a>>2]|0)==(b|0)){a=c;break a}a=a+4|0;d=a;if((d-(k[c>>2]|0)|0)==4096){c=c+4|0;a=k[c>>2]|0;d=a}if((a|0)==(f|0)){a=c;break}}while(0);if(h)c=0;else c=(k[i+(g>>>10<<2)>>2]|0)+((g&1023)<<2)|0;if((d|0)!=(c|0)){k[m>>2]=a;k[m+4>>2]=d;k[l>>2]=k[m>>2];k[l+4>>2]=k[m+4>>2];pd(n,j,l)}}else{DK(a);vt(a);k[c>>2]=0;XL(a)}r=o;return}function Ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+176|0;d=l+168|0;e=l+172|0;f=l+160|0;g=l+156|0;h=l;c=k[b+104>>2]|0;k[g>>2]=c;j=b+108|0;if((c|0)<=(k[j>>2]|0)){c=a+96|0;do{k[d>>2]=g;Dl(f,c,g,113536,d,e);k[(k[f>>2]|0)+20>>2]=b;m=k[g>>2]|0;k[g>>2]=m+1}while((m|0)<(k[j>>2]|0))}m=k[(k[a+4>>2]|0)+1412>>2]|0;m=(m|0)<(Ub[k[(k[a>>2]|0)+60>>2]&511](a)|0);if(m&(k[2783]|0)<4){Qd(h,50909,652,3,0,0,0);f=Tn(h,51134,27)|0;g=a+8|0;m=i[g+11>>0]|0;j=m<<24>>24<0;Tn(Tn(f,j?k[g>>2]|0:g,j?k[a+12>>2]|0:m&255)|0,51162,13)|0;hi(h)}r=l;return}function Jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;l=r;r=r+16|0;e=l+4|0;f=l;j=k[(k[b>>2]|0)+20>>2]|0;h=j+12|0;c=j+20|0;if(i[c>>0]|0){g=j+16|0;d=Ta(0,k[g>>2]|0)|0;k[g>>2]=d;i[c>>0]=0}g=j+32|0;c=j+40|0;if(i[c>>0]|0){d=j+36|0;m=Ta(0,k[d>>2]|0)|0;k[d>>2]=m;i[c>>0]=0}d=j+52|0;c=j+60|0;if(i[c>>0]|0){m=j+56|0;n=Ta(0,k[m>>2]|0)|0;k[m>>2]=n;i[c>>0]=0}k[f>>2]=k[b>>2];k[e>>2]=k[f>>2];Rz(a+184|0,e)|0;k[d>>2]=9544;c=k[j+68>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);PV(d);k[g>>2]=9544;c=k[j+48>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);PV(g);k[h>>2]=9544;c=k[j+28>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);PV(h);c=k[j>>2]|0;if(c|0)zba(c);zba(j);r=l;return}function Kk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+32|0;d=j+16|0;e=j+8|0;g=j;Jp(a);h=a+208|0;X0(h);k[a>>2]=16660;k[a+28>>2]=16896;k[a+32>>2]=16924;k[h>>2]=16948;k[a+288>>2]=0;i[a+292>>0]=0;h=a+308|0;f=a+348|0;b=a+224|0;c=b+56|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(c|0));b=h;do{i[b+8>>0]=0;k[b+4>>2]=-1;k[b>>2]=17156;k[b+16>>2]=0;b=b+20|0}while((b|0)!=(f|0));f=a+348|0;k[f>>2]=f;k[a+352>>2]=f;k[a+356>>2]=0;i[a+360>>0]=1;i[a+361>>0]=0;k[a+364>>2]=-1;i[a+368>>0]=0;i[a+371>>0]=0;i[a+372>>0]=0;i[a+373>>0]=0;p[a+376>>3]=0.0;i[a+48>>0]=1;k[a+300>>2]=-1;k[a+304>>2]=-1;i[a+369>>0]=0;i[a+370>>0]=0;k[e>>2]=365;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];Fv(h,a,d)|0;k[g>>2]=365;k[g+4>>2]=0;k[d>>2]=k[g>>2];k[d+4>>2]=k[g+4>>2];Fv(a+328|0,a,d)|0;k[a+296>>2]=0;r=j;return}function Lk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+48|0;b=h+32|0;c=h+24|0;d=h+16|0;e=h+8|0;f=h;g=a+56|0;if(!(k[g>>2]|0)){i[a+68>>0]=0;j=cW(232)|0;jk(j,(k[(k[a+60>>2]|0)+916>>2]|0)+788|0);k[g>>2]=j;k[c>>2]=1229;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];hr(j+4|0,a,b)|0;c=(k[g>>2]|0)+108|0;k[d>>2]=308;k[d+4>>2]=0;k[b>>2]=k[d>>2];k[b+4>>2]=k[d+4>>2];Mp(c,a,b)|0;d=(k[g>>2]|0)+56|0;k[e>>2]=1230;k[e+4>>2]=0;k[b>>2]=k[e>>2];k[b+4>>2]=k[e+4>>2];hr(d,a,b)|0;e=(k[g>>2]|0)+160|0;k[f>>2]=309;k[f+4>>2]=0;k[b>>2]=k[f>>2];k[b+4>>2]=k[f+4>>2];Mp(e,a,b)|0;UK(k[g>>2]|0)}r=h;return}function Mk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0;l=r;r=r+16|0;j=l+4|0;f=l;if(!(k[c+4>>2]&1)){h=k[(k[a>>2]|0)+24>>2]|0;k[f>>2]=k[b>>2];k[j>>2]=k[f>>2];a=Vb[h&31](a,j,c,d,e&1)|0}else{c=LZ(c)|0;k[j>>2]=c;a=k_(j,111620)|0;oU(c)|0;c=k[a>>2]|0;if(e)Sb[k[c+24>>2]&511](j,a);else Sb[k[c+28>>2]&511](j,a);g=j+11|0;c=i[g>>0]|0;if(c<<24>>24<0){a=k[j>>2]|0;h=8}else a=j;while(1){h=c<<24>>24<0;if((a|0)==((h?k[j>>2]|0:j)+(h?k[j+4>>2]|0:c&255)|0))break;c=i[a>>0]|0;d=k[b>>2]|0;do if(d|0){f=d+24|0;e=k[f>>2]|0;if((e|0)!=(k[d+28>>2]|0)){k[f>>2]=e+1;i[e>>0]=c;break}if((cc[k[(k[d>>2]|0)+52>>2]&127](d,c&255)|0)==-1)k[b>>2]=0}while(0);c=i[g>>0]|0;a=a+1|0;h=8}a=k[b>>2]|0;p1(j)}r=l;return a|0}function Nk(a){a=a|0;var b=0,c=0,d=0;b=a+69|0;if(i[b>>0]|0){i[b>>0]=0;b=a+64|0;gr((k[b>>2]|0)+36|0,a);gr((k[b>>2]|0)+56|0,a);gr((k[b>>2]|0)+256|0,a);gr((k[b>>2]|0)+116|0,a);gr((k[b>>2]|0)+156|0,a);gr((k[b>>2]|0)+136|0,a);gr((k[b>>2]|0)+396|0,a);gr((w4(k[b>>2]|0)|0)+596|0,a);gr((w4(k[b>>2]|0)|0)+616|0,a);b=a+80|0;if(i[b>>0]|0){c=a+76|0;d=Ta(0,k[c>>2]|0)|0;k[c>>2]=d;i[b>>0]=0}b=a+48|0;if(i[b>>0]|0){d=a+44|0;c=Ta(0,k[d>>2]|0)|0;k[d>>2]=c;i[b>>0]=0}}return}function Ok(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+192|0;c=f+12|0;d=f+168|0;e=f;if((k[2783]|0)<5&(b^1)){Qd(c,46077,131,4,0,0,0);h=Tn(Tn(c,46107,15)|0,46156,17)|0;g=k[a+64>>2]|0;g=(g|0)==0?115628:g;Tn(Tn(h,g,iC(g)|0)|0,46174,37)|0;hi(c)}h=b&1^1;i[a+16>>0]=h;i[a+17>>0]=h;dF(a+32|0);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,45953,11);h=eZ(e,b?46212:46218)|0;k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];k[d+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;oZ(d);p1(d);p1(e);r=f;return}function Pk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;m=r;r=r+32|0;h=m+12|0;j=m;l=a+4|0;d=k[l>>2]|0;e=a+124|0;f=((b|0)/(k[d+1576>>2]|0)|0)-(k[(k[e>>2]|0)+48>>2]|0)|0;g=cW(136)|0;er(g,d+1952|0,k[a+116>>2]|0);k[g>>2]=13948;a=g+104|0;k[a>>2]=-1;d=g+108|0;k[d>>2]=-1;k[g+112>>2]=-1;k[g+116>>2]=0;k[g+120>>2]=0;n=g+128|0;k[n>>2]=0;k[n+4>>2]=0;if(!(i[(k[l>>2]|0)+1608>>0]|0))HT(g,5,(k[e>>2]|0)+(f*96|0)|0);else{iI(j,(k[e>>2]|0)+(f*96|0)|0);mg(h,j);HT(g,5,h);p1(h);p1(j)}k[a>>2]=b;k[d>>2]=c;o7(g,k[(k[l>>2]|0)+1544>>2]<<1);r=m;return g|0}function Qk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;do if((a|0)==(k[b+8>>2]|0)){if((k[b+4>>2]|0)==(c|0)?(f=b+28|0,(k[f>>2]|0)!=1):0)k[f>>2]=d}else{if((a|0)!=(k[b>>2]|0)){h=k[a+8>>2]|0;Qb[k[(k[h>>2]|0)+24>>2]&15](h,b,c,d,e);break}if((k[b+16>>2]|0)!=(c|0)?(h=b+20|0,(k[h>>2]|0)!=(c|0)):0){k[b+32>>2]=d;g=b+44|0;if((k[g>>2]|0)==4)break;f=b+52|0;i[f>>0]=0;d=b+53|0;i[d>>0]=0;a=k[a+8>>2]|0;_b[k[(k[a>>2]|0)+20>>2]&15](a,b,c,c,1,e);if(i[d>>0]|0)if(!(i[f>>0]|0)){f=1;d=13}else d=17;else{f=0;d=13}do if((d|0)==13){k[h>>2]=c;c=b+40|0;k[c>>2]=(k[c>>2]|0)+1;if((k[b+36>>2]|0)==1?(k[b+24>>2]|0)==2:0){i[b+54>>0]=1;if(f){d=17;break}else{f=4;break}}if(f)d=17;else f=4}while(0);if((d|0)==17)f=3;k[g>>2]=f;break}if((d|0)==1)k[b+32>>2]=1}while(0);return}function Rk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;k[a>>2]=6884;d=a+4|0;k[d>>2]=6912;e=a+60|0;b=k[e>>2]|0;f=a+64|0;if((b|0)!=(f|0)){c=b;while(1){b=k[c+20>>2]|0;if(b|0){E1(b);zba(b)}b=k[c+4>>2]|0;if(!b)while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((b|0)==(f|0))break;else c=b}}aD(e,k[f>>2]|0);f=a+40|0;k[f>>2]=6936;e=a+44|0;k[e>>2]=6960;up(f);$H(a+48|0);k[e>>2]=2024;e=a+20|0;k[e>>2]=6984;f=a+24|0;k[f>>2]=7008;up(e);$H(a+28|0);k[f>>2]=2024;k[a>>2]=1972;k[d>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[d>>2]=2024;return}function Sk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+16|0;g=l+8|0;h=l;j=a+916|0;d=k[j>>2]|0;i[a+858>>0]=i[d+764>>0]|0;if(i[d+474>>0]|0){d=a+1192|0;if(!(k[d>>2]|0)){e=cW(56)|0;Bj(e,a);f=k[d>>2]|0;k[d>>2]=0;if(f|0)Rb[k[(k[f>>2]|0)+36>>2]&2047](f);k[d>>2]=e}iR(a);d=cW(196)|0;$k(d,a,(k[j>>2]|0)+688|0);k[a+1196>>2]=d;k[h>>2]=1241;k[h+4>>2]=0;k[g>>2]=k[h>>2];k[g+4>>2]=k[h+4>>2];Bx(d+56|0,a,g);d=k[j>>2]|0}if(i[d+785>>0]|0){j=cW(120)|0;fm(j,a);k[a+1200>>2]=j}if(c){MM(a+924|0,b)|0;hm(a)}else Zc(a,b)|0;r=l;return}function Tk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=r;r=r+48|0;c=b+40|0;j=b+32|0;i=b+24|0;h=b+16|0;g=b+8|0;e=b;d=a+108|0;f=(k[d>>2]|0)+20|0;k[j>>2]=353;k[j+4>>2]=0;k[c>>2]=k[j>>2];k[c+4>>2]=k[j+4>>2];Sv(f,a,c);f=k[(k[d>>2]|0)+40>>2]|0;k[i>>2]=1282;k[i+4>>2]=0;k[c>>2]=k[i>>2];k[c+4>>2]=k[i+4>>2];Pw(f,a,c);f=k[(k[d>>2]|0)+44>>2]|0;k[h>>2]=354;k[h+4>>2]=0;k[c>>2]=k[h>>2];k[c+4>>2]=k[h+4>>2];Eu(f,a,c);f=k[(k[d>>2]|0)+48>>2]|0;k[g>>2]=1282;k[g+4>>2]=0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];Pw(f,a,c);d=k[(k[d>>2]|0)+52>>2]|0;k[e>>2]=1282;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];Pw(d,a,c);r=b;return}function Uk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+160|0;e=j;g=a+20|0;if((k[g>>2]|0)==(b|0)?(h=a+24|0,(c|0)>0?(k[h>>2]|0)!=(c|0):0):0){d=a+32|0;d=y0(k[d>>2]|0,k[d+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;b=M;f=_J()|0;f=n_(d|0,b|0,f|0,M|0)|0;b=M;d=(b|0)>0|(b|0)==0&f>>>0>0;f=d?f:0;if((k[2783]|0)<3){Qd(e,44780,145,2,0,0,0);d=Tn(un(Tn(e,44860,32)|0,f,d?b:0)|0,44893,19)|0;Mn(Tn(Mn(d,k[h>>2]|0)|0,44913,14)|0,c)|0;hi(e)}b=a+8|0;if(i[b>>0]|0){e=a+4|0;d=Ta(0,k[e>>2]|0)|0;k[e>>2]=d;i[b>>0]=0}k[h>>2]=c;b=k[g>>2]|0;if(tB(a,f)|0)k[a+12>>2]=b}r=j;return}function Vk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=a+52|0;b=k[l>>2]|0;e=k[b+452>>2]|0;g=b+448|0;do if((e|0)!=(g|0)){d=0;c=e;b=e;while(1){e=k[b+8>>2]|0;if(Ub[k[(k[e>>2]|0)+64>>2]&511](e)|0){c=4;break}d=d+1|0;b=k[c+4>>2]|0;c=b;if((c|0)==(g|0)){c=6;break}}if((c|0)==4)lb();else if((c|0)==6){h=d;f=k[l>>2]|0;break}}else{h=0;f=b}while(0);if((h|0)==(R9(f+424|0)|0)?(j=a+118|0,(i[j>>0]|0)==0):0){b=a+64|0;if(i[b>>0]|0){g=a+60|0;f=Ta(0,k[g>>2]|0)|0;k[g>>2]=f;i[b>>0]=0}tB(a+56|0,k[(k[l>>2]|0)+1856>>2]|0)|0;i[j>>0]=1}else c=12;if(((c|0)==12?(h|0)>=((R9((k[l>>2]|0)+424|0)|0)/3|0|0):0)?(m=a+117|0,(i[m>>0]|0)==0):0){b=a+64|0;if(i[b>>0]|0){j=a+60|0;h=Ta(0,k[j>>2]|0)|0;k[j>>2]=h;i[b>>0]=0}tB(a+56|0,k[(k[l>>2]|0)+1860>>2]|0)|0;i[m>>0]=1}return}function Wk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0.0;f=r;r=r+320|0;b=f+156|0;d=f;c=a+1184|0;e=k[c>>2]|0;do if((e|0)<0){if((k[2783]|0)<5){Qd(b,27921,403,4,0,0,0);Tn(b,28956,37)|0;hi(b)}}else{k[c>>2]=-1;c=$G(a+640|0,e)|0;if(!c){if((k[2783]|0)>=5)break;Qd(d,27921,409,4,0,0,0);Mn(Tn(Tn(d,27948,6)|0,28501,40)|0,e)|0;hi(d);break}b=k[a+1168>>2]|0;if(b|0)nB(b);AA(ed(a,c)|0);AE(a+336|0,e);b=k[(k[a+916>>2]|0)+204>>2]|0;if(b|0){a=k[b>>2]|0;e=k[a+52>>2]|0;g=+$b[k[a+56>>2]&7](b);Pb[e&15](b,g)}}while(0);r=f;return}function Xk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+160|0;e=j;g=a+20|0;if((k[g>>2]|0)==(b|0)?(h=a+24|0,(c|0)>0?(k[h>>2]|0)!=(c|0):0):0){d=a+32|0;d=y0(k[d>>2]|0,k[d+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;b=M;f=_J()|0;f=n_(d|0,b|0,f|0,M|0)|0;b=M;d=(b|0)>0|(b|0)==0&f>>>0>0;f=d?f:0;if((k[2783]|0)<3){Qd(e,44432,214,2,0,0,0);d=Tn(un(Tn(e,44860,32)|0,f,d?b:0)|0,44893,19)|0;Mn(Tn(Mn(d,k[h>>2]|0)|0,44913,14)|0,c)|0;hi(e)}b=a+8|0;if(i[b>>0]|0){e=a+4|0;d=Ta(0,k[e>>2]|0)|0;k[e>>2]=d;i[b>>0]=0}k[h>>2]=c;b=k[g>>2]|0;if(tB(a,f)|0)k[a+12>>2]=b}r=j;return}function Yk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0;l=r;r=r+16|0;j=l+4|0;f=l;if(!(k[c+4>>2]&1)){h=k[(k[a>>2]|0)+24>>2]|0;k[f>>2]=k[b>>2];k[j>>2]=k[f>>2];a=Vb[h&31](a,j,c,d,e&1)|0}else{c=LZ(c)|0;k[j>>2]=c;a=k_(j,111644)|0;oU(c)|0;c=k[a>>2]|0;if(e)Sb[k[c+24>>2]&511](j,a);else Sb[k[c+28>>2]&511](j,a);g=j+8+3|0;a=i[g>>0]|0;c=k[j>>2]|0;h=j+4|0;e=a<<24>>24<0?c:j;while(1){f=a<<24>>24<0;if((e|0)==((f?c:j)+((f?k[h>>2]|0:a&255)<<2)|0))break;a=k[e>>2]|0;c=k[b>>2]|0;if(c|0){d=c+24|0;f=k[d>>2]|0;if((f|0)==(k[c+28>>2]|0))a=cc[k[(k[c>>2]|0)+52>>2]&127](c,a)|0;else{k[d>>2]=f+4;k[f>>2]=a}if((a|0)==-1)k[b>>2]=0}e=e+4|0;a=i[g>>0]|0;c=k[j>>2]|0}a=k[b>>2]|0;_0(j)}r=l;return a|0}function Zk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i;e=k[a+8>>2]|0;d=a+4|0;c=k[d>>2]|0;if(e-c>>4>>>0<b>>>0){f=k[a>>2]|0;d=(c-f>>4)+b|0;if(d>>>0>268435455)J5(a);e=e-f|0;g=e>>3;d=e>>4>>>0<134217727?(g>>>0<d>>>0?d:g):268435455;k[h+12>>2]=0;k[h+16>>2]=a+8;if(!d)e=0;else e=cW(d<<4)|0;k[h>>2]=e;c=e+(c-f>>4<<4)|0;g=h+8|0;k[g>>2]=c;f=h+4|0;k[f>>2]=c;k[h+12>>2]=e+(d<<4);do{k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;c=c+16|0;b=b+-1|0}while((b|0)!=0);k[g>>2]=c;Tx(a,h);c=k[f>>2]|0;b=k[g>>2]|0;if((b|0)!=(c|0))k[g>>2]=b+(~((b+-16-c|0)>>>4)<<4);c=k[h>>2]|0;if(c|0)zba(c)}else do{k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;c=(k[d>>2]|0)+16|0;k[d>>2]=c;b=b+-1|0}while((b|0)!=0);r=i;return}function _k(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+160|0;e=j;f=b+11|0;d=i[f>>0]|0;g=b+4|0;c=k[g>>2]|0;if(((d<<24>>24<0?c:d&255)|0)==7)if(!(cA(b,0,-1,33763,7)|0))d=1;else{d=i[f>>0]|0;c=k[g>>2]|0;h=4}else h=4;do if((h|0)==4){if(((d<<24>>24<0?c:d&255)|0)==10?(cA(b,0,-1,33771,10)|0)==0:0){d=2;break}if((k[2783]|0)<4){Qd(e,33782,212,3,0,0,0);c=Tn(e,33807,26)|0;d=i[f>>0]|0;h=d<<24>>24<0;Tn(c,h?k[b>>2]|0:b,h?k[g>>2]|0:d&255)|0;hi(e);d=0}else d=0}while(0);c=a+72|0;if((d|0)!=(k[c>>2]|0)){k[c>>2]=d;a=a+88|0;h=(C9(k[a>>2]|0)|0)+200|0;AE((k[h>>2]|0)+456|0,k[a>>2]|0)}r=j;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+4|0;k[a>>2]=1972;k[e>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;d=a+20|0;X0(d);k[a>>2]=13552;k[e>>2]=13580;k[d>>2]=13604;d=a+44|0;k[d>>2]=d;k[a+48>>2]=d;k[a+52>>2]=0;k[a+36>>2]=3288;k[a+40>>2]=3312;d=a+64|0;k[d>>2]=d;k[a+68>>2]=d;k[a+72>>2]=0;k[a+56>>2]=3288;k[a+60>>2]=3312;d=a+84|0;k[d>>2]=d;k[a+88>>2]=d;k[a+92>>2]=0;k[a+76>>2]=3288;k[a+80>>2]=3312;d=a+104|0;k[d>>2]=d;k[a+108>>2]=d;k[a+112>>2]=0;k[a+96>>2]=3960;k[a+100>>2]=3984;d=a+116|0;K6(d);k[d>>2]=8536;k[a+124>>2]=0;k[a+128>>2]=b;i[a+132>>0]=0;i[a+133>>0]=1;i[a+134>>0]=0;k[a+136>>2]=-1;k[a+140>>2]=-1;iI(a+144|0,c);k[a+160>>2]=0;k[a+164>>2]=0;k[a+156>>2]=a+160;k[a+172>>2]=0;k[a+176>>2]=0;k[a+168>>2]=a+172;i[a+188>>0]=0;k[a+184>>2]=-1;k[a+180>>2]=1500;k[a+192>>2]=0;return}function al(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+1040|0;j=n+8|0;l=n;i=k[b>>2]|0;k[l>>2]=i;m=(a|0)!=0;g=m?d:256;a=m?a:j;f=i;a:do if((g|0)!=0&(i|0)!=0){d=0;i=c;while(1){h=i>>>2;c=h>>>0>=g>>>0;if(!(i>>>0>131|c)){c=i;break a}f=c?g:h;c=i-f|0;f=re(a,l,f,e)|0;if((f|0)==-1)break;i=(a|0)==(j|0);g=g-(i?0:f)|0;a=i?a:a+(f<<2)|0;d=f+d|0;f=k[l>>2]|0;if((g|0)!=0&(f|0)!=0)i=c;else break a}d=-1;g=0;f=k[l>>2]|0}else d=0;while(0);b:do if((f|0)!=0?(g|0)!=0&(c|0)!=0:0){h=a;while(1){a=gl(h,f,c,e)|0;if((a+2|0)>>>0<3)break;f=(k[l>>2]|0)+a|0;k[l>>2]=f;c=c-a|0;g=g+-1|0;d=d+1|0;if(!((g|0)!=0&(c|0)!=0))break b;else h=h+4|0}switch(a|0){case -1:{d=-1;break b}case 0:{k[l>>2]=0;break b}default:{k[e>>2]=0;break b}}}while(0);if(m)k[b>>2]=k[l>>2];r=n;return d|0}function bl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;d=r;r=r+176|0;b=d+12|0;c=d;if((k[2783]|0)<3){Qd(b,52211,1227,2,0,0,0);l=Tn(b,54961,18)|0;h=a+8|0;e=h+11|0;j=i[e>>0]|0;g=j<<24>>24<0;f=a+12|0;j=Tn(Tn(l,g?k[h>>2]|0:h,g?k[f>>2]|0:j&255)|0,54980,17)|0;e=i[e>>0]|0;g=e<<24>>24<0;Tn(Tn(j,g?k[h>>2]|0:h,g?k[f>>2]|0:e&255)|0,68623,1)|0;hi(b)}l=k[a+4>>2]|0;i[a+132>>0]=i[l+1669>>0]|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,54998,8);XD(l,a,0,c);p1(c);r=d;return}function cl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+160|0;g=h;c=b+8|0;c=eH(a,k[c>>2]|0,k[c+4>>2]|0)|0;d=((c|0)<0)<<31>>31;e=k[a+124>>2]|0;f=k[e>>2]|0;if(c>>>0>=f>>>0?((k[e+4>>2]|0)+f|0)>>>0>c>>>0:0){f=c-f|0;e=k[e+8>>2]|0;k[e+(f<<3)>>2]=0;k[e+(f<<3)+4>>2]=0}MJ(k[a+116>>2]|0,c,d);if(!(Cp(a,c)|0)){if((k[2783]|0)<4){Qd(g,52211,583,3,0,0,0);c=Tn(tn(Tn(g,53760,40)|0,c,d)|0,53801,29)|0;d=a+8|0;f=i[d+11>>0]|0;e=f<<24>>24<0;Tn(Tn(c,e?k[d>>2]|0:d,e?k[a+12>>2]|0:f&255)|0,68623,1)|0;hi(g)}}else Ex(k[a+4>>2]|0,a,c,(i[b+16>>0]|0)!=0);r=h;return}function dl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;j=m;if((d-(k[c>>2]|0)|0)<4){k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,102365,60);iz(a,j,b,k[c>>2]|0)|0;p1(j);r=m;return 0}k[e>>2]=0;d=0;a:while(1){f=k[c>>2]|0;k[c>>2]=f+1;f=i[f>>0]|0;g=k[e>>2]<<4;k[e>>2]=g;h=f<<24>>24;do if((f+-48&255)<10)k[e>>2]=h+-48+g;else{if((f+-97&255)<6){k[e>>2]=h+-87+g;break}if((f+-65&255)>=6){l=10;break a}k[e>>2]=h+-55+g}while(0);d=d+1|0;if((d|0)>=4){d=1;break}}if((l|0)==10){k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,102426,66);iz(a,j,b,k[c>>2]|0)|0;p1(j);d=0}r=m;return d|0}function el(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+160|0;e=h;do if(i[a+1439>>0]|0?(k[a+1576>>2]|0)>=2:0){if((d|0)<1){if((k[2783]|0)>=4)break;Qd(e,29209,885,3,0,0,0);Mn(Tn(Tn(Hn(Tn(e,29231,4)|0,a)|0,30253,3)|0,30185,42)|0,d)|0;hi(e);break}e=k[a+452>>2]|0;g=a+448|0;if((e|0)!=(g|0)){a=e;f=e;do{e=k[a+8>>2]|0;do if((e|0)!=(b|0)){if(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0){fc[k[(k[e>>2]|0)+92>>2]&255](e,c,d);break}if(Ub[k[(k[e>>2]|0)+64>>2]&511](e)|0)fc[k[(k[e>>2]|0)+92>>2]&255](e,c,d)}while(0);a=k[f+4>>2]|0;f=a}while((f|0)!=(g|0))}}while(0);r=h;return}function fl(a){a=a|0;az(a+328|0);qH(a+316|0);p1(a+292|0);p1(a+280|0);p1(a+264|0);p1(a+236|0);p1(a+224|0);qH(a+212|0);p1(a+188|0);p1(a+176|0);p1(a+160|0);p1(a+132|0);p1(a+120|0);p1(a+104|0);p1(a+76|0);p1(a+64|0);p1(a+44|0);rB(a+32|0);p1(a+20|0);p1(a+8|0);return}function gl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;j=r;r=r+16|0;e=j;g=(d|0)==0?110044:d;d=k[g>>2]|0;a:do if(!b)if(!d)d=0;else h=15;else{f=(a|0)==0?e:a;if(!c)d=-2;else{if(!d){d=i[b>>0]|0;a=d&255;if(d<<24>>24>-1){k[f>>2]=a;d=d<<24>>24!=0&1;break}d=a+-194|0;if(d>>>0>50){h=15;break}d=k[19652+(d<<2)>>2]|0;e=c+-1|0;if(e){b=b+1|0;h=9}}else{e=c;h=9}b:do if((h|0)==9){a=i[b>>0]|0;l=(a&255)>>>3;if((l+-16|l+(d>>26))>>>0>7){h=15;break a}while(1){b=b+1|0;d=(a&255)+-128|d<<6;e=e+-1|0;if((d|0)>=0)break;if(!e)break b;a=i[b>>0]|0;if((a&-64)<<24>>24!=-128){h=15;break a}}k[g>>2]=0;k[f>>2]=d;d=c-e|0;break a}while(0);k[g>>2]=d;d=-2}}while(0);if((h|0)==15){k[g>>2]=0;d=z0()|0;k[d>>2]=84;d=-1}r=j;return d|0}function hl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;b=r;r=r+48|0;d=b+32|0;j=b+24|0;h=b+16|0;g=b+8|0;f=b;i[a+134>>0]=0;i[a+132>>0]=0;i[a+133>>0]=0;e=cW(232)|0;jk(e,a+144|0);c=a+124|0;k[c>>2]=e;k[j>>2]=1277;k[j+4>>2]=0;k[d>>2]=k[j>>2];k[d+4>>2]=k[j+4>>2];kr(e+4|0,a,d)|0;e=(k[c>>2]|0)+108|0;k[h>>2]=347;k[h+4>>2]=0;k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];Rp(e,a,d)|0;e=(k[c>>2]|0)+56|0;k[g>>2]=1278;k[g+4>>2]=0;k[d>>2]=k[g>>2];k[d+4>>2]=k[g+4>>2];kr(e,a,d)|0;e=(k[c>>2]|0)+160|0;k[f>>2]=348;k[f+4>>2]=0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];Rp(e,a,d)|0;UK(k[c>>2]|0);r=b;return}function il(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=r;r=r+176|0;c=e+12|0;d=e;if((k[2783]|0)<5){Qd(c,52211,1212,4,0,0,0);f=Tn(c,55671,38)|0;h=i[b+11>>0]|0;g=h<<24>>24<0;h=Tn(Tn(f,g?k[b>>2]|0:b,g?k[b+4>>2]|0:h&255)|0,55710,17)|0;g=a+8|0;b=i[g+11>>0]|0;f=b<<24>>24<0;Tn(Tn(h,f?k[g>>2]|0:g,f?k[a+12>>2]|0:b&255)|0,68623,1)|0;hi(c)}h=k[a+4>>2]|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,55728,23);XD(h,a,1,d);p1(d);r=e;return}function jl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+208|0;g=m+184|0;h=m+192|0;j=m+168|0;l=m+176|0;e=m+160|0;d=m;k[l>>2]=b;if(!(fJ(a+24|0,b,((b|0)<0)<<31>>31)|0)){if((k[2783]|0)<4){Qd(d,44572,92,3,0,0,0);Tn(d,44605,57)|0;hi(d)}}else{f=cW(20)|0;i[f+8>>0]=0;k[f+4>>2]=-1;k[f>>2]=9544;k[f+16>>2]=0;k[e>>2]=335;k[e+4>>2]=0;k[g>>2]=k[e>>2];k[g+4>>2]=k[e+4>>2];cx(f,a,g)|0;d=k[a+4>>2]|0;if((c|0)<=0)c=k[d+1444>>2]|0;if(tB(f,~~(+(c|0)*+p[d+1488>>3]))|0)k[f+12>>2]=b;k[g>>2]=l;Dl(j,a+40|0,l,113528,g,h);k[(k[j>>2]|0)+20>>2]=f}r=m;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+176|0;d=g+156|0;e=g;if(ez(b)|0){f=a+424|0;c=0;do{k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;if(uG(b,c,d)|0){if(!(xo(a,d)|0))Dd(f,d)|0}else if((k[2783]|0)<4){Qd(e,29209,281,3,0,0,0);Ln(Tn(Tn(Hn(Tn(e,29231,4)|0,a)|0,30253,3)|0,29840,28)|0,c)|0;hi(e)}p1(d);c=c+1|0}while(c>>>0<(ez(b)|0)>>>0)}f=k[a+2272>>2]|0;Rb[k[(k[f>>2]|0)+32>>2]&2047](f);r=g;return}function ll(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=c;g=b;e=l-g|0;f=e>>2;d=a+8|0;j=k[a>>2]|0;h=j;do if(f>>>0>(k[d>>2]|0)-j>>2>>>0){kL(a);if(f>>>0>1073741823)J5(a);j=(k[d>>2]|0)-(k[a>>2]|0)|0;l=j>>1;nQ(a,j>>2>>>0<536870911?(l>>>0<f>>>0?f:l):1073741823);a=a+4|0;if((e|0)>0){fE(k[a>>2]|0,b|0,e|0)|0;k[a>>2]=(k[a>>2]|0)+(f<<2)}}else{i=a+4|0;e=(k[i>>2]|0)-j>>2;f=f>>>0>e>>>0;c=f?b+(e<<2)|0:c;e=c;a=e-g|0;d=a>>2;if(d|0)qO(j|0,b|0,a|0)|0;d=h+(d<<2)|0;if(f){a=l-e|0;if((a|0)<=0)break;fE(k[i>>2]|0,c|0,a|0)|0;k[i>>2]=(k[i>>2]|0)+(a>>2<<2);break}else{a=k[i>>2]|0;if((a|0)==(d|0))break;k[i>>2]=a+(~((a+-4-d|0)>>>2)<<2);break}}while(0);return}function ml(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=r;r=r+176|0;c=e+12|0;d=e;if((k[2783]|0)<3){Qd(c,52211,1222,2,0,0,0);f=Tn(c,55806,28)|0;h=i[b+11>>0]|0;g=h<<24>>24<0;h=Tn(Tn(f,g?k[b>>2]|0:b,g?k[b+4>>2]|0:h&255)|0,55710,17)|0;g=a+8|0;b=i[g+11>>0]|0;f=b<<24>>24<0;Tn(Tn(h,f?k[g>>2]|0:g,f?k[a+12>>2]|0:b&255)|0,68623,1)|0;hi(c)}h=k[a+4>>2]|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,55835,20);XD(h,a,2,d);p1(d);r=e;return}function nl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=r;r=r+192|0;c=f+32|0;d=f+16|0;e=f;if(!(i[a+133>>0]|0)){if((k[2783]|0)<3){Qd(c,52211,808,2,0,0,0);Tn(Tn(c,55651,8)|0,55660,10)|0;hi(c)}_I(k[a+100>>2]|0,k[(k[a+96>>2]|0)+16>>2]|0,b);mD(d,0);c=N6(d,56171)|0;nF(e,53096);GA(c,e)|0;Lv(e);c=N6(d,55007)|0;g=N6(c,55019)|0;Ix(e,b+12|0);GA(g,e)|0;Lv(e);c=N6(c,55023)|0;Ix(e,b);GA(c,e)|0;Lv(e);ph(a,d,a+8|0)|0;Lv(d)}r=f;return}function ol(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=r;r=r+176|0;c=e+12|0;d=e;if((k[2783]|0)<3){Qd(c,52211,1217,2,0,0,0);f=Tn(c,55752,33)|0;h=i[b+11>>0]|0;g=h<<24>>24<0;h=Tn(Tn(f,g?k[b>>2]|0:b,g?k[b+4>>2]|0:h&255)|0,55710,17)|0;g=a+8|0;b=i[g+11>>0]|0;f=b<<24>>24<0;Tn(Tn(h,f?k[g>>2]|0:g,f?k[a+12>>2]|0:b&255)|0,68623,1)|0;hi(c)}h=k[a+4>>2]|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,55786,19);XD(h,a,2,d);p1(d);r=e;return}function pl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;f=r;r=r+208|0;e=f;c=f+52|0;d=f+40|0;CV(e);do if(Ce(e,(i[b+11>>0]|0)<0?k[b>>2]|0:b)|0){c=(i[e+11>>0]|0)<0?k[e>>2]|0:e;$T(d);c=Rs(c,(i[d+11>>0]|0)<0?k[d>>2]|0:d,0)|0;p1(d);if(!c){k[a+64>>2]=46246;a=0;break}g=+p[e+16>>3];if(g-+q_()<0.0){k[a+64>>2]=46263;a=0;break}else{MM(a+20|0,e+24|0)|0;a=1;break}}else if((k[2783]|0)<3){Qd(c,46077,64,2,0,0,0);Tn(Tn(c,46107,15)|0,46228,17)|0;hi(c);a=0}else a=0;while(0);IZ(e);r=f;return a|0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+48|0;d=i+24|0;e=i+16|0;f=i;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;Mw(c,d);g=a+4|0;h=ur(g,d)|0;p1(d);if((h|0)==(a+8|0)){h=cW(64)|0;$D(h,b,a);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;Mw(c,f);k[d>>2]=f;wp(e,g,f,113531,d,i+36|0);k[(k[e>>2]|0)+28>>2]=h;p1(f);a=h}else a=k[h+28>>2]|0;r=i;return a|0}function rl(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=r;r=r+160|0;h=i;if(!(e>>>0>c>>>0|(e|0)==(c|0)&d>>>0>b>>>0)){if((k[2783]|0)<4){Qd(h,34448,64,3,0,0,0);a=Tn(h,34468,56)|0;g=n_(d|0,e|0,b|0,c|0)|0;Tn(Mn(Tn(tn(a,g,M)|0,34525,17)|0,f)|0,68623,1)|0;hi(h)}}else{j=n_(d|0,e|0,b|0,c|0)|0;h=a+32|0;k[(k[a+24>>2]|0)+(k[h>>2]<<2)>>2]=~~(+(f|0)*8.0/(+(j>>>0)+4294967296.0*+(M>>>0)));k[h>>2]=((k[h>>2]|0)+1|0)%(k[a+28>>2]|0)|0;h=a+4|0;qD((k[h>>2]|0)+424|0,a);h=(k[h>>2]|0)+2184|0;Lo(h,Ub[k[(k[a>>2]|0)+64>>2]&511](a)|0,b,c,d,e,f,g)}r=i;return}function sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;e=k[a+8>>2]|0;d=a+4|0;c=k[d>>2]|0;if(((e-c|0)/12|0)>>>0<b>>>0){f=k[a>>2]|0;d=((c-f|0)/12|0)+b|0;if(d>>>0>357913941)J5(a);i=(e-f|0)/12|0;e=i<<1;d=i>>>0<178956970?(e>>>0<d>>>0?d:e):357913941;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!d)e=0;else e=cW(d*12|0)|0;k[g>>2]=e;c=e+(((c-f|0)/12|0)*12|0)|0;f=g+8|0;k[f>>2]=c;k[g+4>>2]=c;k[g+12>>2]=e+(d*12|0);do{k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=(k[f>>2]|0)+12|0;k[f>>2]=c;b=b+-1|0}while((b|0)!=0);So(a,g);mG(g)}else do{k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=(k[d>>2]|0)+12|0;k[d>>2]=c;b=b+-1|0}while((b|0)!=0);r=h;return}function tl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=r;r=r+160|0;e=g;f=k[a>>2]|0;if(f>>>0<=c>>>0?((x9(a)|0)+f|0)>>>0>c>>>0:0){f=cF(a,c,0)|0;uk(f,b,d);if(gK(f)|0)cH(a,c)}else{if((k[2783]|0)<5){Qd(e,42602,147,4,0,0,0);f=Tn(Mn(Tn(Mn(Tn(e,42623,9)|0,c)|0,53962,10)|0,d)|0,42633,42)|0;f=Tn(Ln(f,k[a>>2]|0)|0,74996,6)|0;Tn(Ln(f,x9(a)|0)|0,68623,1)|0;hi(e)}if(b|0){J8(b);zba(b)}}r=g;return}function ul(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+16|0;o=q+2|0;p=q;c=b;d=c+16|0;do{i[c>>0]=0;c=c+1|0}while((c|0)<(d|0));n=a+11|0;c=i[n>>0]|0;c=(c<<24>>24<0?k[a+4>>2]|0:c&255)+-1|0;if((c|0)>-1){j=o+1|0;m=p+1|0;h=15;do{if((c|0)>0){d=i[n>>0]|0;e=k[a>>2]|0;f=i[(d<<24>>24<0?e:a)+(c+-1)>>0]|0}else{f=48;d=i[n>>0]|0;e=k[a>>2]|0}i[o>>0]=f;i[j>>0]=i[(d<<24>>24<0?e:a)+c>>0]|0;g=0;e=f;while(1){d=e<<24>>24;do if((e+-97&255)>=6){if((e+-65&255)<6){i[p+g>>0]=d+201;break}if((e+-48&255)<10){i[p+g>>0]=d+208;break}else{i[p+g>>0]=0;break}}else i[p+g>>0]=d+169;while(0);d=g+1|0;if((d|0)==2)break;g=d;e=i[o+d>>0]|0}i[b+h>>0]=(l[p>>0]|0)<<4|(l[m>>0]|0);h=h+-1|0;c=c+-2|0}while((h|c|0)>-1)}r=q;return}function vl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=r;r=r+16|0;d=a;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49940,8);VJ(b,d,c+8|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49949,6);VJ(b,d,c+20|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49956,5);TB(b,d,c)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49962,6);TB(b,d,c+4|0)|0;p1(d);r=a;return 1}function wl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;r8(c+12|0,d,4)|0;i[c+16>>0]=0;e=rQ(b)|0;d=c+4|0;k[d>>2]=e>>>1&16256|e&127|e>>>2&2080768|e>>>3&266338304;e=b+8|0;g=k[e>>2]|0;f=k[b>>2]|0;f=((l[f+g>>0]|0)<<8|(l[f+(g+1)>>0]|0))&65535;k[e>>2]=g+2;j[c+18>>1]=f;k[c+8>>2]=(k[b>>2]|0)+(k[e>>2]|0);f=k[e>>2]|0;g=b+4|0;h=k[g>>2]|0;k[g>>2]=(k[d>>2]|0)+f;switch(k[c>>2]|0){case 1:{Dk(0,b,c);break}case 2:{Ls(0,b,c);break}case 3:{Dk(0,b,c);break}case 4:{Ls(0,b,c);break}case 5:{Os(0,b,c);break}case 6:{Kj(0,b,c);break}default:{}}b=k[a+12>>2]|0;Sb[k[(k[b>>2]|0)+12>>2]&511](b,c);k[g>>2]=h;k[e>>2]=(k[d>>2]|0)+f;return}function xl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+32|0;l=q;p=a+8|0;i=k[p>>2]|0;f=k[a>>2]|0;h=f;if(((i-f|0)/12|0)>>>0<b>>>0){j=a+4|0;e=k[j>>2]|0;k[l+12>>2]=0;k[l+16>>2]=a+8;d=e;if(!b)g=0;else g=cW(b*12|0)|0;k[l>>2]=g;c=g+(((e-f|0)/12|0)*12|0)|0;m=l+8|0;k[m>>2]=c;n=l+4|0;k[n>>2]=c;o=l+12|0;k[o>>2]=g+(b*12|0);if((d|0)==(h|0))d=i;else{do{c=c+-12|0;d=d+-12|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[n>>2]=c}while((d|0)!=(h|0));f=k[a>>2]|0;e=k[j>>2]|0;d=k[p>>2]|0}k[a>>2]=c;k[n>>2]=f;k[j>>2]=k[m>>2];k[m>>2]=e;k[p>>2]=k[o>>2];k[o>>2]=d;k[l>>2]=k[n>>2];FG(l)}r=q;return}function yl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=r;r=r+16|0;d=a;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49763,5);VJ(b,d,c)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49769,10);VJ(b,d,c+12|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49780,5);VJ(b,d,c+24|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49786,10);VJ(b,d,c+36|0)|0;p1(d);r=a;return 1}function zl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0;n=r;r=r+16|0;m=n;g=k[a>>2]|0;a:do if(!g)g=0;else{o=b;h=d-o>>2;l=e+12|0;e=k[l>>2]|0;e=(e|0)>(h|0)?e-h|0:0;h=c;o=h-o|0;j=o>>2;if((o|0)>0?(Yb[k[(k[g>>2]|0)+48>>2]&31](g,b,j)|0)!=(j|0):0){k[a>>2]=0;g=0;break}do if((e|0)>0){k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;sB(m,e,f);if((Yb[k[(k[g>>2]|0)+48>>2]&31](g,(i[m+8+3>>0]|0)<0?k[m>>2]|0:m,e)|0)==(e|0)){_0(m);break}else{k[a>>2]=0;_0(m);g=0;break a}}while(0);o=d-h|0;d=o>>2;if((o|0)>0?(Yb[k[(k[g>>2]|0)+48>>2]&31](g,c,d)|0)!=(d|0):0){k[a>>2]=0;g=0;break}k[l>>2]=0}while(0);r=n;return g|0}function Al(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;d=k[a+4>>2]|0;e=k[a>>2]|0;c=((d-e|0)/56|0)+1|0;if(c>>>0>76695844)J5(a);i=((k[a+8>>2]|0)-e|0)/56|0;f=i<<1;f=i>>>0<38347922?(f>>>0<c>>>0?c:f):76695844;c=(d-e|0)/56|0;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!f)d=0;else d=cW(f*56|0)|0;k[g>>2]=d;i=d+(c*56|0)|0;k[g+4>>2]=i;k[g+12>>2]=d+(f*56|0);k[i>>2]=k[b>>2];iI(d+(c*56|0)+4|0,b+4|0);iI(d+(c*56|0)+16|0,b+16|0);iI(d+(c*56|0)+28|0,b+28|0);iI(d+(c*56|0)+40|0,b+40|0);j[d+(c*56|0)+52>>1]=j[b+52>>1]|0;k[g+8>>2]=i+56;rj(a,g);Iz(g);r=h;return}function Bl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=r;r=r+160|0;b=g;do if((N7(k[a+1256>>2]|0)|0?(i[a+1436>>0]|0)!=0:0)?(i[a+1432>>0]|0)!=0:0){c=a+1172|0;d=k[c>>2]|0;e=a+1364|0;f=k[e>>2]|0;if((f|0)>=(d|0)){a=f-d|0;break}if((k[2783]|0)<4){Qd(b,29209,828,3,0,0,0);a=Tn(Tn(Hn(Tn(b,29231,4)|0,a)|0,30253,3)|0,30148,16)|0;a=Tn(Tn(Mn(a,k[c>>2]|0)|0,30165,2)|0,30168,16)|0;Tn(Mn(a,k[e>>2]|0)|0,68623,1)|0;hi(b);a=0}else a=0}else a=0;while(0);r=g;return a|0}function Cl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{j=d+-36|0;f=c;c=c+-36|0;k[j>>2]=k[c>>2];k[j+4>>2]=k[c+4>>2];k[j+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;j=d+-24|0;e=f+-24|0;k[j>>2]=k[e>>2];k[j+4>>2]=k[e+4>>2];k[j+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=d+-12|0;f=f+-12|0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];k[e+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;d=(k[g>>2]|0)+-36|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;j=b+8|0;h=k[i>>2]|0;k[i>>2]=k[j>>2];k[j>>2]=h;a=a+8|0;j=b+12|0;i=k[a>>2]|0;k[a>>2]=k[j>>2];k[j>>2]=i;k[b>>2]=k[e>>2];return}function Dl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=r;r=r+16|0;h=j;f=b+4|0;d=k[f>>2]|0;do if(d){g=k[c>>2]|0;while(1){f=k[d+16>>2]|0;if((g|0)<(f|0)){f=k[d>>2]|0;if(!f){g=5;break}else d=f}else{if((f|0)>=(g|0)){g=10;break}c=d+4|0;f=k[c>>2]|0;if(!f){g=9;break}else d=f}}if((g|0)==5){k[h>>2]=d;c=d;f=d;break}else if((g|0)==9){k[h>>2]=d;f=d;break}else if((g|0)==10){k[h>>2]=d;c=h;f=d;break}}else{k[h>>2]=f;c=f}while(0);d=k[c>>2]|0;if(!d){d=cW(24)|0;k[d+16>>2]=k[k[e>>2]>>2];k[d+20>>2]=0;wF(b,f,c,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=j;return}function El(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i;e=k[a+8>>2]|0;d=a+4|0;c=k[d>>2]|0;if(e-c>>3>>>0<b>>>0){f=k[a>>2]|0;d=(c-f>>3)+b|0;if(d>>>0>536870911)J5(a);e=e-f|0;g=e>>2;d=e>>3>>>0<268435455?(g>>>0<d>>>0?d:g):536870911;k[h+12>>2]=0;k[h+16>>2]=a+8;if(!d)e=0;else e=cW(d<<3)|0;k[h>>2]=e;c=e+(c-f>>3<<3)|0;g=h+8|0;k[g>>2]=c;f=h+4|0;k[f>>2]=c;k[h+12>>2]=e+(d<<3);do{e=c;k[e>>2]=0;k[e+4>>2]=0;c=(k[g>>2]|0)+8|0;k[g>>2]=c;b=b+-1|0}while((b|0)!=0);$x(a,h);c=k[f>>2]|0;b=k[g>>2]|0;if((b|0)!=(c|0))k[g>>2]=b+(~((b+-8-c|0)>>>3)<<3);c=k[h>>2]|0;if(c|0)zba(c)}else do{h=c;k[h>>2]=0;k[h+4>>2]=0;c=(k[d>>2]|0)+8|0;k[d>>2]=c;b=b+-1|0}while((b|0)!=0);r=i;return}function Fl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=a+128|0;m=a+132|0;b=k[m>>2]|0;c=k[l>>2]|0;if((b|0)!=(c|0)){j=0;do{h=c;g=h+(j*312|0)+12|0;h=h+(j*312|0)+16|0;d=k[g>>2]|0;if((k[h>>2]|0)!=(d|0)){f=0;b=d;do{c=$Y(b+(f*372|0)|0)|0;if(c|0?i[c+60>>0]|0:0)Yl(a,c);e=b+(f*372|0)+80|0;d=b+(f*372|0)+84|0;b=k[e>>2]|0;if((k[d>>2]|0)!=(b|0)){c=0;do{b=WY(b+(c*340|0)|0)|0;if(b|0?i[b+60>>0]|0:0)Yl(a,b);c=c+1|0;b=k[e>>2]|0}while(c>>>0<(((k[d>>2]|0)-b|0)/340|0)>>>0)}f=f+1|0;b=k[g>>2]|0}while(f>>>0<(((k[h>>2]|0)-b|0)/372|0)>>>0);c=k[l>>2]|0;b=k[m>>2]|0}j=j+1|0}while(j>>>0<((b-c|0)/312|0)>>>0)}return}function Gl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;Bt(a,b);f=a+52|0;e=a+56|0;c=((k[e>>2]|0)-(k[f>>2]|0)|0)/12|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[f>>2]|0;if((k[e>>2]|0)!=(a|0)){d=0;do{g=k[a+(d*12|0)>>2]|0;i[c>>0]=g>>>24;i[(k[b>>2]|0)+1>>0]=g>>>16;i[(k[b>>2]|0)+2>>0]=g>>>8;i[(k[b>>2]|0)+3>>0]=g;g=(k[b>>2]|0)+4|0;k[b>>2]=g;h=k[(k[f>>2]|0)+(d*12|0)+4>>2]|0;i[g>>0]=h>>>24;i[(k[b>>2]|0)+1>>0]=h>>>16;i[(k[b>>2]|0)+2>>0]=h>>>8;i[(k[b>>2]|0)+3>>0]=h;h=(k[b>>2]|0)+4|0;k[b>>2]=h;g=k[(k[f>>2]|0)+(d*12|0)+8>>2]|0;i[h>>0]=g>>>24;i[(k[b>>2]|0)+1>>0]=g>>>16;i[(k[b>>2]|0)+2>>0]=g>>>8;i[(k[b>>2]|0)+3>>0]=g;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=d+1|0;a=k[f>>2]|0}while(d>>>0<(((k[e>>2]|0)-a|0)/12|0)>>>0)}return}function Hl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=a+72|0;e=i;d=k[e>>2]|0;e=k[e+4>>2]|0;f=_J()|0;c=M;k[i>>2]=f;k[i+4>>2]=c;if((d|0)==0&(e|0)==0){c=a+4|0;g=0;e=c;c=k[c>>2]|0}else{d=n_(f|0,c|0,d|0,e|0)|0;e=a+4|0;c=DT((k[e>>2]|0)+2060|0,b)|0;if((c|0)!=0?(g=k[c+16>>2]|0,(g|0)>0):0){f=k[e>>2]|0;c=g}else{c=k[e>>2]|0;f=c;c=k[c+1444>>2]|0}g=d-~~(+(c|0)*+p[f+1624>>3])|0;g=(g|0)<0?0:g;c=f}f=b+1|0;c=DT(c+2060|0,f)|0;if((c|0)!=0?(h=k[c+16>>2]|0,(h|0)>0):0){d=k[e>>2]|0;c=h}else{c=k[e>>2]|0;d=c;c=k[c+1444>>2]|0}c=~~(+(c|0)*+p[d+1624>>3])-g|0;br(a+24|0,(c|0)<0?0:c,f)|0;c=k[(k[e>>2]|0)+2056>>2]|0;d=a+64|0;if((c|0)<=((k[d>>2]|0)+f|0))while(1){Aj(a,c)|0;if((c|0)<((k[d>>2]|0)+f|0))c=c+1|0;else break}return}function Il(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0,j=0.0,l=0,m=0;m=r;r=r+16|0;l=m;f=b+4|0;d=k[f>>2]|0;do if(d){j=+p[c>>3];while(1){g=+p[d+16>>3];if(j<g){f=k[d>>2]|0;if(!f){h=5;break}else d=f}else{if(!(g<j)){h=10;break}c=d+4|0;f=k[c>>2]|0;if(!f){h=9;break}else d=f}}if((h|0)==5){k[l>>2]=d;c=d;f=d;break}else if((h|0)==9){k[l>>2]=d;f=d;break}else if((h|0)==10){k[l>>2]=d;c=l;f=d;break}}else{k[l>>2]=f;c=f}while(0);d=k[c>>2]|0;if(!d){d=cW(32)|0;p[d+16>>3]=+p[k[e>>2]>>3];k[d+24>>2]=0;wF(b,f,c,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=m;return}function Jl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;if(b>>>0>1073741807)x5(a);j=a+8|0;g=j+3|0;d=i[g>>0]|0;e=d<<24>>24<0;if(e){h=k[a+4>>2]|0;c=(k[j>>2]&2147483647)+-1|0}else{h=d&255;c=1}f=h>>>0>b>>>0?h:b;b=f>>>0<2;f=b?1:(f+4&-4)+-1|0;do if((f|0)!=(c|0)){do if(b){b=k[a>>2]|0;if(e){e=0;c=b;b=a;d=15}else{j1(a,b,(d&255)+1|0)|0;zba(b);d=17}}else{b=f+1|0;if(b>>>0>1073741823)Ra(109031,109068,1734,109109);b=cW(b<<2)|0;if(e){e=1;c=k[a>>2]|0;d=15;break}else{j1(b,a,(d&255)+1|0)|0;d=16;break}}while(0);if((d|0)==15){j1(b,c,(k[a+4>>2]|0)+1|0)|0;zba(c);if(e)d=16;else d=17}if((d|0)==16){k[j>>2]=f+1|-2147483648;k[a+4>>2]=h;k[a>>2]=b;break}else if((d|0)==17){i[g>>0]=h;break}}while(0);return}function Kl(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,f=0,g=0;e=a+272|0;f=a+52|0;c=k[f>>2]|0;d=+p[c+1144>>3];if(+p[e>>3]!=d){g=bc[k[(k[a>>2]|0)+156>>2]&3](a,d)|0;c=k[f>>2]|0;if(g)p[e>>3]=+p[c+1144>>3]}e=a+280|0;d=+p[c+1136>>3];if(+p[e>>3]!=d){Pb[k[(k[a>>2]|0)+160>>2]&15](a,d);p[e>>3]=+p[(k[f>>2]|0)+1136>>3]}e=a+288|0;c=k[e>>2]|0;a:do if(k[c+28+(b*24|0)+20>>2]|0){while(1){g=k[c+28+(b*24|0)+16>>2]|0;if(!(Yb[k[(k[a>>2]|0)+152>>2]&31](a,b,(k[(k[c+28+(b*24|0)+4>>2]|0)+(g>>>9<<2)>>2]|0)+((g&511)<<3)|0)|0))break;gE((k[e>>2]|0)+28+(b*24|0)|0);c=k[e>>2]|0;if(!(k[c+28+(b*24|0)+20>>2]|0))break a}if((i[a+308+(b*20|0)+8>>0]|0)==0?tB(a+308+(b*20|0)|0,500)|0:0)k[a+308+(b*20|0)+12>>2]=b}while(0);ii(a);SD(a);return}function Ll(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=a+8|0;e=k[h>>2]|0;j=a+4|0;c=k[j>>2]|0;if(((e-c|0)/20|0)>>>0<b>>>0){f=k[a>>2]|0;d=((c-f|0)/20|0)+b|0;if(d>>>0>214748364)J5(a);e=(e-f|0)/20|0;g=e<<1;d=e>>>0<107374182?(g>>>0<d>>>0?d:g):214748364;if(!d)e=0;else e=cW(d*20|0)|0;g=e+(((c-f|0)/20|0)*20|0)|0;f=e+(d*20|0)|0;e=g;c=g;do{k[c>>2]=-1;i[c+4>>0]=0;i[c+5>>0]=-1;k[c+8>>2]=-1;k[c+12>>2]=-1;k[c+16>>2]=-1;c=e+20|0;e=c;b=b+-1|0}while((b|0)!=0);b=k[a>>2]|0;d=(k[j>>2]|0)-b|0;c=g+(((d|0)/-20|0)*20|0)|0;if((d|0)>0)fE(c|0,b|0,d|0)|0;k[a>>2]=c;k[j>>2]=e;k[h>>2]=f;if(b|0)zba(b)}else do{k[c>>2]=-1;i[c+4>>0]=0;i[c+5>>0]=-1;k[c+8>>2]=-1;k[c+12>>2]=-1;k[c+16>>2]=-1;c=(k[j>>2]|0)+20|0;k[j>>2]=c;b=b+-1|0}while((b|0)!=0);return}function Ml(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;b=ui(a+8|0,k[a+4>>2]|0)|0;a:do if((b|0)!=0?(c=k[b+84>>2]|0,d=k[b+80>>2]|0,p=d,(c|0)!=(d|0)):0){n=a+16|0;l=i[n+11>>0]|0;o=l<<24>>24<0;l=o?k[a+20>>2]|0:l&255;m=(l|0)==0;j=(c-d|0)/340|0;h=0;while(1){b=p+(h*340|0)|0;d=p+(h*340|0)+44|0;c=i[d+11>>0]|0;e=c<<24>>24<0;c=c&255;do if(((e?k[p+(h*340|0)+48>>2]|0:c)|0)==(l|0)){f=k[d>>2]|0;g=e?f:d;a=o?k[n>>2]|0:n;if(e){if(m)break a;if(!(EI(g,a,l)|0))break a;else break}if(m)break a;if((f&255)<<24>>24==(i[a>>0]|0))do{c=c+-1|0;d=d+1|0;if(!c)break a;a=a+1|0}while((i[d>>0]|0)==(i[a>>0]|0))}while(0);h=h+1|0;if(h>>>0>=j>>>0){b=0;break}}}else b=0;while(0);return b|0}function Nl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0;n=r;r=r+48|0;m=n;l=j[a+130>>1]|0;if((l&255)<<24>>24!=0&(l&65535)<256?(i[a+133>>0]|0)==0:0){g=k[a+124>>2]|0;h=k[g>>2]|0;l=h>>>0>c>>>0;if(!l?((k[g+4>>2]|0)+h|0)>>>0>c>>>0:0)f=k[(k[g+8>>2]|0)+(c-h<<3)>>2]|0;else f=0;if((f|0)<=(d|0)){if(!l?((k[g+4>>2]|0)+h|0)>>>0>c>>>0:0)f=k[(k[g+8>>2]|0)+(c-h<<3)+4>>2]|0;else f=0;if((f|0)>(d|0)){h=xA(a,c)|0;k[m+4>>2]=7;k[m>>2]=8204;k[m+8>>2]=b;l=m+16|0;k[l>>2]=h;k[l+4>>2]=M;k[m+24>>2]=d;k[m+28>>2]=0;k[m+32>>2]=e;fB(k[a+108>>2]|0,m);e=k[b+8>>2]|0;m=a+136|0;k[m>>2]=(k[m>>2]|0)+e;m=a+4|0;$O(k[m>>2]|0,e);m=k[m>>2]|0;YA(m+176|0,m,c,d,a)}}}r=n;return}function Ol(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,q=0;h=r;r=r+64|0;g=h;HA(g,b,c,d);o=g+44|0;k[o>>2]=0;b=g+48|0;k[b>>2]=0;k[g>>2]=16008;j=g+56|0;k[j>>2]=0;d=g+60|0;k[d>>2]=0;e=k[a+4>>2]|0;f=a+8|0;c=k[f>>2]|0;q=e+c|0;m=c+4|0;k[f>>2]=m;i=l[q+3>>0]|0;n=(l[q+2>>0]|0)<<8|(l[q+1>>0]|0)<<16|i;k[o>>2]=l[q>>0];k[b>>2]=n;m=e+m|0;k[g+52>>2]=l[m>>0]|l[m+1>>0]<<8|l[m+2>>0]<<16|l[m+3>>0]<<24;m=e+(c+8)|0;b=c+12|0;k[f>>2]=b;k[j>>2]=(l[m+1>>0]|0)<<16|(l[m>>0]|0)<<24|(l[m+2>>0]|0)<<8|(l[m+3>>0]|0);if(!(i&1))e=12;else{b=e+b|0;k[d>>2]=b;q=c+13+(iC(b)|0)|0;k[f>>2]=q;e=a+12|0;if((q|0)>=(k[e>>2]|0)){k[e>>2]=0;k[f>>2]=0}e=(iC(b)|0)+13|0}q=k[a+28>>2]|0;hc[k[k[q>>2]>>2]&7](q,g,+p[a+40>>3]);O3(g);r=h;return e|0}function Pl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((a|0)==(k[b+8>>2]|0))Vt(0,b,c,d,e);else{r=b+52|0;m=j[r>>1]|0;h=m&255;l=b+53|0;m=(m&65535)>>>8&255;q=k[a+12>>2]|0;n=a+16+(q<<3)|0;i[r>>0]=0;i[l>>0]=0;RH(a+16|0,b,c,d,e,f);a:do if((q|0)>1){o=b+24|0;p=a+8|0;q=b+54|0;a=a+24|0;do{if(i[q>>0]|0)break a;g=j[r>>1]|0;if(!((g&255)<<24>>24)){if((g&65535)>=256?(k[p>>2]&1|0)==0:0)break a}else{if((k[o>>2]|0)==1)break a;if(!(k[p>>2]&2))break a}i[r>>0]=0;i[l>>0]=0;RH(a,b,c,d,e,f);a=a+8|0}while(a>>>0<n>>>0)}while(0);i[r>>0]=h;i[l>>0]=m}return}function Ql(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;k[a>>2]=13720;d=a+40|0;k[d>>2]=13856;e=a+44|0;k[e>>2]=13884;f=a+60|0;k[f>>2]=13908;b=a+108|0;c=k[b>>2]|0;if(c|0){if((k[c+12>>2]|0)<0)wc(k[c+8>>2]|0);zba(c);k[b>>2]=0}b=k[a+120>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=k[a+116>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[a+248>>2]|0;if(b|0)wc(b);JE(a+180|0);JE(a+124|0);ZC(a+96|0,k[a+100>>2]|0);b=a+76|0;k[b>>2]=13964;c=a+80|0;k[c>>2]=13988;up(b);$H(a+84|0);k[c>>2]=2024;eU(f);k[d>>2]=1972;k[e>>2]=2e3;Bo(d);dH(a+48|0,k[a+52>>2]|0);k[e>>2]=2024;lW(a);return}function Rl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+16|0;m=n;g=k[a>>2]|0;a:do if(!g)g=0;else{j=b;h=d-j|0;l=e+12|0;e=k[l>>2]|0;e=(e|0)>(h|0)?e-h|0:0;h=c;j=h-j|0;if((j|0)>0?(Yb[k[(k[g>>2]|0)+48>>2]&31](g,b,j)|0)!=(j|0):0){k[a>>2]=0;g=0;break}do if((e|0)>0){k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;yE(m,e,f);if((Yb[k[(k[g>>2]|0)+48>>2]&31](g,(i[m+11>>0]|0)<0?k[m>>2]|0:m,e)|0)==(e|0)){p1(m);break}else{k[a>>2]=0;p1(m);g=0;break a}}while(0);d=d-h|0;if((d|0)>0?(Yb[k[(k[g>>2]|0)+48>>2]&31](g,c,d)|0)!=(d|0):0){k[a>>2]=0;g=0;break}k[l>>2]=0}while(0);r=n;return g|0}function Sl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;h=r;r=r+48|0;f=h+24|0;j=h+16|0;g=h;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,b,c);k[f>>2]=g;Uo(j,a+132|0,g,113534,f,h+36|0);b=k[j>>2]|0;c=b+28|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,d,e);a=c+11|0;if((i[a>>0]|0)<0){i[k[c>>2]>>0]=0;k[b+32>>2]=0;a=c}else{i[c>>0]=0;i[a>>0]=0;a=c}Qm(c,0);k[a>>2]=k[f>>2];k[a+4>>2]=k[f+4>>2];k[a+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;p1(f);p1(g);r=h;return}function Tl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=a+4|0;m=k[o>>2]|0;n=k[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=k[n>>2]|0;l=a+12|0;j=k[l>>2]|0;c=j;if(d>>>0<j>>>0){e=d;g=((c-e>>2)+1|0)/2|0;c=d+(g<<2)|0;e=e-m|0;l=e>>2;f=c+(0-l<<2)|0;if(l){qO(f|0,m|0,e|0)|0;c=f;d=k[n>>2]|0}k[o>>2]=c;k[n>>2]=d+(g<<2);break}j=c-e>>1;j=(j|0)==0?1:j;g=cW(j<<2)|0;h=g;c=g+((j+3|0)>>>2<<2)|0;i=c;j=g+(j<<2)|0;if((m|0)==(d|0)){e=i;d=m}else{g=c;e=i;f=m;do{k[g>>2]=k[f>>2];g=e+4|0;e=g;f=f+4|0}while((f|0)!=(d|0));d=k[a>>2]|0}k[a>>2]=h;k[o>>2]=i;k[n>>2]=e;k[l>>2]=j;if(d){zba(d);c=k[o>>2]|0}}else c=m;while(0);k[c+-4>>2]=k[b>>2];k[o>>2]=(k[o>>2]|0)+-4;return}function Ul(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+32|0;l=p+16|0;d=p+8|0;m=p+4|0;n=p;o=(b|0)==-1;do if(!o){k[d>>2]=b;if(i[a+44>>0]|0)if((JL(d,4,1,k[a+32>>2]|0)|0)==1){c=14;break}else{a=-1;break}k[m>>2]=l;c=d+4|0;e=a+36|0;f=a+40|0;g=l+8|0;h=l;j=a+32|0;while(1){a=k[e>>2]|0;a=Zb[k[(k[a>>2]|0)+12>>2]&15](a,k[f>>2]|0,d,c,n,l,g,m)|0;if((k[n>>2]|0)==(d|0)){c=13;break}if((a|0)==3){c=7;break}if((a|1|0)!=1){c=13;break}d=(k[m>>2]|0)-h|0;if((JL(l,1,d,k[j>>2]|0)|0)!=(d|0)){c=13;break}if((a|0)==1)d=k[n>>2]|0;else{c=12;break}}if((c|0)==7)if((JL(d,1,1,k[j>>2]|0)|0)==1)c=12;else c=13;if((c|0)==12){c=14;break}else if((c|0)==13){a=-1;break}}else c=14;while(0);if((c|0)==14)a=o?0:b;r=p;return a|0}function Vl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;h=ez(b)|0;l=a+40|0;c=(h*3|0)>=(k[l>>2]|0);j=a+4|0;e=k[j>>2]|0;f=a+8|0;d=k[f>>2]|0;if((d|0)!=(e|0))do{g=d+-12|0;k[f>>2]=g;p1(g);d=k[f>>2]|0}while((d|0)!=(e|0));e=(h|0)<1;if(!(e|c)){d=0;do{c=y9(b,d)|0;if(!(oaa(c)|0)?!(kaa(c)|0):0)c=0;else c=(ez(c)|0)!=0;d=d+1|0}while(!((d|0)>=(h|0)|c))}if(c)c=1;else{xl(j,h);g=a+48|0;i[g>>0]=1;c=(h<<1)+2|0;if(!e){f=0;do{md(a,y9(b,f)|0);d=k[j>>2]|0;e=i[d+(f*12|0)+11>>0]|0;if(e<<24>>24<0)d=k[d+(f*12|0)+4>>2]|0;else d=e&255;c=d+c|0;f=f+1|0}while((f|0)<(h|0))}i[g>>0]=0;c=(c|0)>=(k[l>>2]|0)}return c|0}function Wl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+32|0;l=p+16|0;d=p+8|0;m=p+4|0;n=p;o=(b|0)==-1;do if(!o){i[d>>0]=b;if(i[a+44>>0]|0)if((JL(d,1,1,k[a+32>>2]|0)|0)==1){c=14;break}else{a=-1;break}k[m>>2]=l;c=d+1|0;e=a+36|0;f=a+40|0;g=l+8|0;h=l;j=a+32|0;while(1){a=k[e>>2]|0;a=Zb[k[(k[a>>2]|0)+12>>2]&15](a,k[f>>2]|0,d,c,n,l,g,m)|0;if((k[n>>2]|0)==(d|0)){c=13;break}if((a|0)==3){c=7;break}if((a|1|0)!=1){c=13;break}d=(k[m>>2]|0)-h|0;if((JL(l,1,d,k[j>>2]|0)|0)!=(d|0)){c=13;break}if((a|0)==1)d=k[n>>2]|0;else{c=12;break}}if((c|0)==7)if((JL(d,1,1,k[j>>2]|0)|0)==1)c=12;else c=13;if((c|0)==12){c=14;break}else if((c|0)==13){a=-1;break}}else c=14;while(0);if((c|0)==14)a=o?0:b;r=p;return a|0}function Xl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+32|0;c=h+8|0;d=h;k[c>>2]=0;GM(c,0,0,0);a=b+8|0;j=(_6(k[a>>2]|0)|0)+13|0;e=b+12|0;f=b+16|0;j=j+((k[f>>2]|0)-(k[e>>2]|0))|0;jR(c,j);k[c+4>>2]=j;g=cW(16)|0;k[g>>2]=0;GM(g,k[c>>2]|0,j,j);i[g+12>>0]=1;k[d>>2]=g;k[d+4>>2]=0;JX(d,k[b+4>>2]&255);b=k[a>>2]|0;Zo(d,k[b>>2]|0,k[b+4>>2]|0);OE(d,x9(k[a>>2]|0)|0);b=Raa(k[a>>2]|0)|0;MU(d,b,_6(k[a>>2]|0)|0);a=k[e>>2]|0;if((k[f>>2]|0)!=(a|0)){b=0;do{OE(d,k[a+(b<<2)>>2]|0);b=b+1|0;a=k[e>>2]|0}while(b>>>0<(k[f>>2]|0)-a>>2>>>0)}a=k[c>>2]|0;if(a|0)wba(a);r=h;return g|0}function Yl(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+160|0;i=m;j=b+64|0;l=b+68|0;d=k[j>>2]|0;if((k[l>>2]|0)!=(d|0)){h=a+212|0;e=0.0;g=0;f=k[b+56>>2]|0;a=d;while(1){b=a+(g<<5)|0;c=+p[b>>3];if(!(c>=0.0)){p[b>>3]=e;c=e}b=k[a+(g<<5)+8>>2]|0;if((b|0)<1&(k[2783]|0)<4){Qd(i,47907,502,3,0,0,0);d=Tn(i,47926,13)|0;Tn(Tn(Tn(d,(k[h>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48161,25)|0;hi(i)}a=a+(g<<5)+28|0;if(!(k[a>>2]|0))k[a>>2]=f;g=g+1|0;a=k[j>>2]|0;if(g>>>0>=(k[l>>2]|0)-a>>5>>>0)break;else{e=c+ +(b|0);f=f+1|0}}}r=m;return}function Zl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0;h=a+8|0;e=k[h>>2]|0;l=a+4|0;c=k[l>>2]|0;if(((e-c|0)/20|0)>>>0<b>>>0){f=k[a>>2]|0;d=((c-f|0)/20|0)+b|0;if(d>>>0>214748364)J5(a);e=(e-f|0)/20|0;g=e<<1;d=e>>>0<107374182?(g>>>0<d>>>0?d:g):214748364;if(!d)e=0;else e=cW(d*20|0)|0;g=e+(((c-f|0)/20|0)*20|0)|0;f=e+(d*20|0)|0;e=g;c=g;do{i[c>>0]=0;d=c+4|0;k[c+16>>2]=0;k[d>>2]=0;k[d+4>>2]=0;j[d+8>>1]=0;c=e+20|0;e=c;b=b+-1|0}while((b|0)!=0);b=k[a>>2]|0;d=(k[l>>2]|0)-b|0;c=g+(((d|0)/-20|0)*20|0)|0;if((d|0)>0)fE(c|0,b|0,d|0)|0;k[a>>2]=c;k[l>>2]=e;k[h>>2]=f;if(b|0)zba(b)}else do{i[c>>0]=0;h=c+4|0;k[c+16>>2]=0;k[h>>2]=0;k[h+4>>2]=0;j[h+8>>1]=0;c=(k[l>>2]|0)+20|0;k[l>>2]=c;b=b+-1|0}while((b|0)!=0);return}function _l(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+32|0;i=j;f=k[a+8>>2]|0;e=a+4|0;d=k[e>>2]|0;if(f-d>>2>>>0<b>>>0){g=k[a>>2]|0;e=(d-g>>2)+b|0;if(e>>>0>1073741823)J5(a);f=f-g|0;h=f>>1;e=f>>2>>>0<536870911?(h>>>0<e>>>0?e:h):1073741823;k[i+12>>2]=0;k[i+16>>2]=a+8;if(!e)f=0;else f=cW(e<<2)|0;k[i>>2]=f;d=f+(d-g>>2<<2)|0;h=i+8|0;k[h>>2]=d;g=i+4|0;k[g>>2]=d;k[i+12>>2]=f+(e<<2);do{k[d>>2]=k[c>>2];d=(k[h>>2]|0)+4|0;k[h>>2]=d;b=b+-1|0}while((b|0)!=0);By(a,i);d=k[g>>2]|0;b=k[h>>2]|0;if((b|0)!=(d|0))k[h>>2]=b+(~((b+-4-d|0)>>>2)<<2);d=k[i>>2]|0;if(d|0)zba(d)}else do{k[d>>2]=k[c>>2];d=(k[e>>2]|0)+4|0;k[e>>2]=d;b=b+-1|0}while((b|0)!=0);r=j;return}function $l(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=a+8|0;i=k[n>>2]|0;j=a+12|0;m=k[j>>2]|0;e=m;g=i;do if((i|0)==(m|0)){m=a+4|0;l=k[m>>2]|0;d=k[a>>2]|0;c=d;if(l>>>0>d>>>0){d=l;e=((d-c>>2)+1|0)/-2|0;f=l+(e<<2)|0;c=g-d|0;d=c>>2;if(!d)c=l;else{qO(f|0,l|0,c|0)|0;c=k[m>>2]|0}l=f+(d<<2)|0;k[n>>2]=l;k[m>>2]=c+(e<<2);c=l;break}h=e-c>>1;h=(h|0)==0?1:h;e=cW(h<<2)|0;f=e;c=e+(h>>>2<<2)|0;g=c;h=e+(h<<2)|0;if((l|0)==(i|0))c=g;else{e=c;c=g;d=l;do{k[e>>2]=k[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(i|0));d=k[a>>2]|0}k[a>>2]=f;k[m>>2]=g;k[n>>2]=c;k[j>>2]=h;if(d){zba(d);c=k[n>>2]|0}}else c=i;while(0);k[c>>2]=k[b>>2];k[n>>2]=(k[n>>2]|0)+4;return}function am(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=ez(b)|0;j=a+28|0;c=(h*3|0)>=(k[j>>2]|0);e=k[a>>2]|0;f=a+4|0;d=k[f>>2]|0;if((d|0)!=(e|0))do{g=d+-12|0;k[f>>2]=g;p1(g);d=k[f>>2]|0}while((d|0)!=(e|0));e=(h|0)<1;if(!(e|c)){d=0;do{c=y9(b,d)|0;if(!(oaa(c)|0)?!(kaa(c)|0):0)c=0;else c=(ez(c)|0)!=0;d=d+1|0}while(!((d|0)>=(h|0)|c))}if(c)c=1;else{xl(a,h);g=a+44|0;i[g>>0]=1;c=(h<<1)+2|0;if(!e){f=0;do{dd(a,y9(b,f)|0);d=k[a>>2]|0;e=i[d+(f*12|0)+11>>0]|0;if(e<<24>>24<0)d=k[d+(f*12|0)+4>>2]|0;else d=e&255;c=d+c|0;f=f+1|0}while((f|0)<(h|0))}i[g>>0]=0;c=(c|0)>=(k[j>>2]|0)}return c|0}function bm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+320|0;e=g+156|0;f=g;do if((k[b>>2]|0)==(k[b+4>>2]|0)){d=(k[2783]|0)<5;if((k[b+12>>2]|0)==(k[b+16>>2]|0)){if(d){Qd(f,51839,112,4,0,0,0);h=Tn(f,51985,16)|0;e=i[c+11>>0]|0;d=e<<24>>24<0;Tn(h,d?k[c>>2]|0:c,d?k[c+4>>2]|0:e&255)|0;hi(f)}JE(b);zba(b);Tv(a);break}else{if(d){Qd(e,51839,109,4,0,0,0);Tn(e,51957,27)|0;hi(e)}JE(b);zba(b);break}}else Sb[k[(k[a>>2]|0)+24>>2]&511](a,b);while(0);r=g;return}function cm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=i[b+11>>0]|0;m=l<<24>>24<0;l=m?k[b+4>>2]|0:l&255;a:do if(!l)j=0;else{h=m?k[b>>2]|0:b;j=(d|0)==0;e=0;while(1){g=i[h+e>>0]|0;if(j){j=0;break a}else f=0;while(1){if((i[c+f>>0]|0)==g<<24>>24)break;f=f+1|0;if(f>>>0>=d>>>0){j=e;break a}}e=e+1|0;if(e>>>0>=l>>>0){j=e;break}}}while(0);if(j>>>0<l>>>0){e=l+-1|0;b:do if(d){h=m?k[b>>2]|0:b;while(1){g=i[h+e>>0]|0;f=0;while(1){if((i[c+f>>0]|0)==g<<24>>24)break;f=f+1|0;if(f>>>0>=d>>>0)break b}e=e+-1|0}}while(0);nD(a,b,j,1-j+e|0,b)}else{k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,115628,0)}return}function dm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=r;r=r+176|0;c=e+12|0;d=e;if((k[2783]|0)<5){Qd(c,52211,844,4,0,0,0);f=Tn(c,53271,19)|0;h=i[b+11>>0]|0;g=h<<24>>24<0;h=Tn(Tn(f,g?k[b>>2]|0:b,g?k[b+4>>2]|0:h&255)|0,53291,16)|0;g=a+8|0;b=i[g+11>>0]|0;f=b<<24>>24<0;Tn(h,f?k[g>>2]|0:g,f?k[a+12>>2]|0:b&255)|0;hi(c)}h=k[a+4>>2]|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,53308,8);XD(h,a,0,d);p1(d);r=e;return}function em(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+176|0;h=l+168|0;g=l+8|0;i=l;j=a+4|0;e=k[j>>2]|0;d=k[e+1444>>2]|0;e=DT(e+2060|0,b)|0;if((e|0)!=0?(f=k[e+16>>2]|0,(f|0)>0):0)d=~~(+(f|0)*+p[(k[j>>2]|0)+1448>>3]);else if((k[2783]|0)<4){Qd(g,52211,999,3,0,0,0);Tn(Mn(Tn(Mn(Tn(g,52996,26)|0,d)|0,53023,19)|0,b)|0,68623,1)|0;hi(g)}j=k[(k[j>>2]|0)+1664>>2]|0;if(tB(c,(d|0)<(j|0)?j:d)|0)k[c+12>>2]=b;k[i>>2]=350;k[i+4>>2]=0;k[h>>2]=k[i>>2];k[h+4>>2]=k[i+4>>2];rx(c,a,h)|0;r=l;return}function fm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;c=r;r=r+32|0;d=c+16|0;g=c+8|0;e=c;h=a+4|0;k[a>>2]=1972;k[h>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;f=a+20|0;X0(f);k[a>>2]=1904;k[h>>2]=1932;k[f>>2]=1956;f=a+40|0;i[a+48>>0]=0;k[a+44>>2]=-1;k[f>>2]=1500;k[a+52>>2]=0;k[a+56>>2]=0;h=a+60|0;k[h>>2]=b;k[a+64>>2]=0;i[a+68>>0]=0;i[a+69>>0]=0;b=a+72|0;i[a+80>>0]=0;k[a+76>>2]=-1;k[b>>2]=1500;j=a+84|0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;i[j+12>>0]=0;k[a+100>>2]=-1;mD(a+104|0,6);k[a+36>>2]=k[(k[(k[h>>2]|0)+916>>2]|0)+640>>2];k[g>>2]=1227;k[g+4>>2]=0;k[d>>2]=k[g>>2];k[d+4>>2]=k[g+4>>2];mx(f,a,d)|0;k[e>>2]=1228;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];mx(b,a,d)|0;r=c;return}function gm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+4|0;a=k[d>>2]|0;do if(a){g=k[c>>2]|0;h=(g|0)==0;f=k[c+4>>2]|0;while(1){d=a+16|0;if(h)if(f>>>0<(k[a+20>>2]|0)>>>0)e=7;else{d=k[d>>2]|0;e=9}else{d=k[d>>2]|0;if((FJ(g,d)|0)<0)e=7;else e=9}if((e|0)==7){d=k[a>>2]|0;if(!d){e=8;break}else a=d}else if((e|0)==9){if(!d){if((k[a+20>>2]|0)>>>0>=f>>>0){e=15;break}}else if((FJ(d,g)|0)>=0){e=15;break}c=a+4|0;d=k[c>>2]|0;if(!d){e=14;break}else a=d}}if((e|0)==8){k[b>>2]=a;break}else if((e|0)==14){k[b>>2]=a;a=c;break}else if((e|0)==15){k[b>>2]=a;a=b;break}}else{k[b>>2]=d;a=d}while(0);return a|0}function hm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=r;r=r+48|0;e=b+24|0;f=b;g=b+16|0;h=cW(72)|0;d=a+916|0;c=k[d>>2]|0;uz(h,c+992|0,0,a+924|0,k[c+176>>2]|0);c=a+936|0;k[c>>2]=h;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,45965,6);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,27745,16);BP(h,e,f);p1(f);p1(e);f=(k[c>>2]|0)+4|0;k[g>>2]=314;k[g+4>>2]=0;k[e>>2]=k[g>>2];k[e+4>>2]=k[g+4>>2];vq(f,a,e)|0;H2(k[c>>2]|0,k[(k[d>>2]|0)+440>>2]|0);tP(k[c>>2]|0);r=b;return}function im(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+272|0;h=l+8|0;i=l;g=k[b>>2]|0;k[i>>2]=g;j=(a|0)!=0;f=j?d:256;a=j?a:h;d=g;a:do if((f|0)!=0&(g|0)!=0){e=0;g=d;while(1){d=c>>>0>=f>>>0;if(!(d|c>>>0>32)){d=g;break a}d=d?f:c;c=c-d|0;d=xi(a,i,d,0)|0;if((d|0)==-1)break;g=(a|0)==(h|0);f=f-(g?0:d)|0;a=g?a:a+d|0;e=d+e|0;d=k[i>>2]|0;if((f|0)!=0&(d|0)!=0)g=d;else break a}e=-1;f=0;d=k[i>>2]|0}else e=0;while(0);b:do if((d|0)!=0?(f|0)!=0&(c|0)!=0:0){g=a;while(1){a=yv(g,k[d>>2]|0,0)|0;if((a+1|0)>>>0<2)break;d=(k[i>>2]|0)+4|0;k[i>>2]=d;c=c+-1|0;f=f-a|0;e=e+1|0;if(!((f|0)!=0&(c|0)!=0))break b;else g=g+a|0}if(!a)k[i>>2]=0;else e=-1}while(0);if(j)k[b>>2]=k[i>>2];r=l;return e|0}function jm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=r;r=r+32|0;c=f+16|0;e=f;b=a+133|0;if(!(i[b>>0]|0)){i[b>>0]=1;nx(a);b=a+4|0;g=(w4(k[b>>2]|0)|0)+1196|0;if(k[g>>2]|0?(g=(w4(k[b>>2]|0)|0)+1196|0,d=a+8|0,tt((k[g>>2]|0)+156|0,d)|0,i[a+132>>0]|0):0){mD(c,0);g=N6(c,56171)|0;nF(e,53103);GA(g,e)|0;Lv(e);g=N6(c,55352)|0;nF(e,55359);GA(g,e)|0;Lv(e);g=(w4(k[b>>2]|0)|0)+1196|0;On(k[g>>2]|0,c,d)|0;Lv(c)}Rb[k[(k[a>>2]|0)+88>>2]&2047](a)}r=f;return}function km(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+48|0;c=h+32|0;j=h+24|0;d=h+16|0;e=h+8|0;f=h;g=a+52|0;k[g>>2]=b;k[j>>2]=119;k[j+4>>2]=0;k[c>>2]=k[j>>2];k[c+4>>2]=k[j+4>>2];Dv(b+76|0,a,c);if(i[a+49>>0]|0){j=(k[g>>2]|0)+456|0;k[d>>2]=332;k[d+4>>2]=0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];Gv(j,a,c)}j=(k[g>>2]|0)+176|0;k[e>>2]=47;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];wv(j,a,c);j=(k[g>>2]|0)+436|0;k[f>>2]=333;k[f+4>>2]=0;k[c>>2]=k[f>>2];k[c+4>>2]=k[f+4>>2];Qu(j,a,c);r=h;return}function lm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+224|0;m=s+120|0;o=s+80|0;p=s;q=s+136|0;d=o;e=d+40|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));k[m>>2]=k[c>>2];if((nc(0,b,m,p,o)|0)<0)c=-1;else{if((k[a+76>>2]|0)>-1)n=Eba(a)|0;else n=0;c=k[a>>2]|0;l=c&32;if((i[a+74>>0]|0)<1)k[a>>2]=c&-33;d=a+48|0;if(!(k[d>>2]|0)){e=a+44|0;f=k[e>>2]|0;k[e>>2]=q;g=a+28|0;k[g>>2]=q;h=a+20|0;k[h>>2]=q;k[d>>2]=80;j=a+16|0;k[j>>2]=q+80;c=nc(a,b,m,p,o)|0;if(f){Yb[k[a+36>>2]&31](a,0,0)|0;c=(k[h>>2]|0)==0?-1:c;k[e>>2]=f;k[d>>2]=0;k[j>>2]=0;k[g>>2]=0;k[h>>2]=0}}else c=nc(a,b,m,p,o)|0;d=k[a>>2]|0;k[a>>2]=d|l;if(n|0)Dba(a);c=(d&32|0)==0?c:-1}r=s;return c|0}function mm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i;e=k[a+8>>2]|0;d=a+4|0;c=k[d>>2]|0;if(e-c>>2>>>0<b>>>0){f=k[a>>2]|0;d=(c-f>>2)+b|0;if(d>>>0>1073741823)J5(a);e=e-f|0;g=e>>1;d=e>>2>>>0<536870911?(g>>>0<d>>>0?d:g):1073741823;k[h+12>>2]=0;k[h+16>>2]=a+8;if(!d)e=0;else e=cW(d<<2)|0;k[h>>2]=e;c=e+(c-f>>2<<2)|0;g=h+8|0;k[g>>2]=c;f=h+4|0;k[f>>2]=c;k[h+12>>2]=e+(d<<2);do{k[c>>2]=0;c=(k[g>>2]|0)+4|0;k[g>>2]=c;b=b+-1|0}while((b|0)!=0);By(a,h);c=k[f>>2]|0;b=k[g>>2]|0;if((b|0)!=(c|0))k[g>>2]=b+(~((b+-4-c|0)>>>2)<<2);c=k[h>>2]|0;if(c|0)zba(c)}else do{k[c>>2]=0;c=(k[d>>2]|0)+4|0;k[d>>2]=c;b=b+-1|0}while((b|0)!=0);r=i;return}function nm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+16|0;e=g+8|0;f=g;d=a+4|0;k[a>>2]=1972;k[d>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;h=a+20|0;X0(h);k[a+40>>2]=0;k[a+36>>2]=10656;k[a+44>>2]=b;k[a>>2]=10676;k[d>>2]=10708;k[h>>2]=10732;h=a+48|0;k[h>>2]=c;d=a+52|0;k[d>>2]=0;oJ(a+56|0);i[a+112>>0]=0;k[b+28>>2]=1e3;h=k[h>>2]|0;c=cW(336)|0;b=k[h+128>>2]|0;ao(c,h+132|0,k[b+100>>2]|0,k[b+96>>2]|0);b=k[d>>2]|0;k[d>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);k[d>>2]=c;k[f>>2]=340;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];uq(c+36|0,a,e)|0;BB(k[d>>2]|0);r=g;return}function om(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=r;r=r+32|0;f=e+16|0;h=e+8|0;g=e;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;k[a>>2]=7768;k[a+4>>2]=7796;j=a+28|0;k[j>>2]=j;k[a+32>>2]=j;k[a+36>>2]=0;k[a+20>>2]=7868;k[a+24>>2]=7892;k[a+40>>2]=b+4;k[a+44>>2]=b+44;k[a+48>>2]=b+64;k[a+52>>2]=b+84;i[a+56>>0]=0;k[a+60>>2]=b;k[a+64>>2]=c;c=a+68|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[c+16>>2]=0;k[c+20>>2]=0;k[a+92>>2]=d;d=a+96|0;i[a+104>>0]=0;k[a+100>>2]=-1;k[d>>2]=1500;k[a+108>>2]=0;k[h>>2]=331;k[h+4>>2]=0;k[f>>2]=k[h>>2];k[f+4>>2]=k[h+4>>2];ww(b+24|0,a,f);k[g>>2]=1259;k[g+4>>2]=0;k[f>>2]=k[g>>2];k[f+4>>2]=k[g+4>>2];ux(d,a,f)|0;r=e;return}function pm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=b;do if(!((e^a)&3)){d=(c|0)!=0;a:do if(d&(e&3|0)!=0)while(1){e=i[b>>0]|0;i[a>>0]=e;if(!(e<<24>>24))break a;c=c+-1|0;b=b+1|0;a=a+1|0;d=(c|0)!=0;if(!(d&(b&3|0)!=0)){f=5;break}}else f=5;while(0);if((f|0)==5)if(!d){c=0;break}if(i[b>>0]|0){b:do if(c>>>0>3){d=b;while(1){b=k[d>>2]|0;if((b&-2139062144^-2139062144)&b+-16843009|0){b=d;break b}k[a>>2]=b;c=c+-4|0;b=d+4|0;a=a+4|0;if(c>>>0>3)d=b;else break}}while(0);f=11}}else f=11;while(0);c:do if((f|0)==11)if(!c)c=0;else while(1){f=i[b>>0]|0;i[a>>0]=f;if(!(f<<24>>24))break c;c=c+-1|0;a=a+1|0;if(!c){c=0;break}else b=b+1|0}while(0);XG(a|0,0,c|0)|0;return a|0}function qm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+128|0;i=a+132|0;a=k[i>>2]|0;b=k[j>>2]|0;if((a|0)!=(b|0)){h=0;do{g=b;f=g+(h*312|0)+12|0;g=g+(h*312|0)+16|0;c=k[f>>2]|0;if((k[g>>2]|0)!=(c|0)){e=0;a=c;do{b=KU(a+(e*372|0)|0)|0;if(b|0)Tf(0,b);d=a+(e*372|0)+80|0;c=a+(e*372|0)+84|0;a=k[d>>2]|0;if((k[c>>2]|0)!=(a|0)){b=0;do{a=HU(a+(b*340|0)|0)|0;if(a|0)Tf(0,a);b=b+1|0;a=k[d>>2]|0}while(b>>>0<(((k[c>>2]|0)-a|0)/340|0)>>>0)}e=e+1|0;a=k[f>>2]|0}while(e>>>0<(((k[g>>2]|0)-a|0)/372|0)>>>0);b=k[j>>2]|0;a=k[i>>2]|0}h=h+1|0}while(h>>>0<((a-b|0)/312|0)>>>0)}return}function rm(a){a=a|0;var b=0.0,c=0,d=0,e=0,f=0;a:do switch((j[a+8>>1]&255)<<24>>24){case 1:{f=a;e=k[f+4>>2]|0;f=k[f>>2]|0;break}case 2:{if(_E(a)|0){f=a;e=k[f+4>>2]|0;f=k[f>>2]|0;break a}else{a=666;c=103027;d=a+31|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 3:{b=+p[a>>3];if(b<=9223372036854775808.0&b>=-9223372036854775808.0){e=+O(b)>=1.0?(b>0.0?~~+aa(+N(b/4294967296.0),4294967295.0)>>>0:~~+_((b-+(~~b>>>0))/4294967296.0)>>>0):0;f=~~b>>>0;break a}else{a=666;c=103058;d=a+26|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 0:{e=0;f=0;break}case 5:{e=0;f=l[a>>0]|0;break}default:{a=666;c=103084;d=a+35|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}}while(0);M=e;return f|0}function sm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+32|0;c=h+16|0;d=h+20|0;e=h+8|0;f=h;g=a+36|0;k[c>>2]=b;Dr(e,g,b,113525,c,d);j=k[e>>2]|0;k[f>>2]=0;a=(C9(k[a+88>>2]|0)|0)+208|0;a=vb(11,k[a>>2]|0,k[j+28>>2]|0,k[j+32>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,f|0)|0;if(a|0){k[c>>2]=b;Dr(e,g,b,113525,c,d);j=k[e>>2]|0;g=k[f>>2]|0;k[j+28>>2]=a;k[j+32>>2]=g}r=h;return}function tm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;k[a>>2]=7768;h=a+4|0;k[h>>2]=7796;b=k[a+64>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[a+60>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=a+68|0;c=a+88|0;if(k[c>>2]|0){d=a+72|0;e=a+84|0;do{f=k[e>>2]|0;f=k[(k[(k[d>>2]|0)+(f>>>10<<2)>>2]|0)+((f&1023)<<2)>>2]|0;QJ(b);if(f|0){g=k[f>>2]|0;if(g|0)wba(g);zba(f)}}while((k[c>>2]|0)!=0)}qL(a+96|0);lJ(b);f=a+20|0;k[f>>2]=7820;g=a+24|0;k[g>>2]=7844;up(f);$H(a+28|0);k[g>>2]=2024;k[a>>2]=1972;k[h>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[h>>2]=2024;return}function um(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+64|0;o=q;n=k[a>>2]|0;p=a+(k[n+-8>>2]|0)|0;n=k[n+-4>>2]|0;k[o>>2]=c;k[o+4>>2]=a;k[o+8>>2]=b;k[o+12>>2]=d;a=o+16|0;b=o+20|0;d=o+24|0;e=o+28|0;f=o+32|0;g=o+40|0;h=(n|0)==(c|0);l=a;m=l+36|0;do{k[l>>2]=0;l=l+4|0}while((l|0)<(m|0));j[a+36>>1]=0;i[a+38>>0]=0;a:do if(h){k[o+48>>2]=1;_b[k[(k[c>>2]|0)+20>>2]&15](c,o,p,p,1,0);a=(k[d>>2]|0)==1?p:0}else{Qb[k[(k[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(k[o+36>>2]|0){case 0:{a=(k[g>>2]|0)==1&(k[e>>2]|0)==1&(k[f>>2]|0)==1?k[b>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((k[d>>2]|0)!=1?!((k[g>>2]|0)==0&(k[e>>2]|0)==1&(k[f>>2]|0)==1):0){a=0;break}a=k[a>>2]|0}while(0);r=q;return a|0}function vm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;f=b+4|0;e=k[f>>2]|0;do if(e){f=k[c>>2]|0;while(1){c=k[e+16>>2]|0;if(f>>>0<c>>>0){c=k[e>>2]|0;if(!c){f=5;break}else e=c}else{if(c>>>0>=f>>>0){f=10;break}g=e+4|0;c=k[g>>2]|0;if(!c){f=9;break}else e=c}}if((f|0)==5){k[h>>2]=e;g=e;c=e;break}else if((f|0)==9){k[h>>2]=e;c=e;break}else if((f|0)==10){k[h>>2]=e;g=h;c=e;break}}else{k[h>>2]=f;g=f;c=f}while(0);e=k[g>>2]|0;if(!e){e=cW(20)|0;k[e+16>>2]=k[d>>2];wF(b,c,g,e);c=1}else c=0;k[a>>2]=e;i[a+4>>0]=c;r=j;return}function wm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;a=r;r=r+128|0;g=a;m=a+112|0;n=a+100|0;f=a+16|0;l=a+12|0;j=a+4|0;h=a+8|0;i[m>>0]=i[106911]|0;i[m+1>>0]=i[106912]|0;i[m+2>>0]=i[106913]|0;i[m+3>>0]=i[106914]|0;i[m+4>>0]=i[106915]|0;i[m+5>>0]=i[106916]|0;Yx(m+1|0,106917,0,k[c+4>>2]|0);o=J_()|0;k[g>>2]=e;e=n+(MN(n,12,o,m,g)|0)|0;m=Kz(n,e,c)|0;o=LZ(c)|0;k[g>>2]=o;Gf(n,m,e,f,l,j,g);oU(k[g>>2]|0)|0;k[h>>2]=k[b>>2];b=k[l>>2]|0;e=k[j>>2]|0;k[g>>2]=k[h>>2];e=zl(g,f,b,e,c,d)|0;r=a;return e|0}function xm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;a=r;r=r+128|0;g=a;m=a+122|0;n=a+108|0;f=a+16|0;l=a+12|0;j=a+4|0;h=a+8|0;i[m>>0]=i[106911]|0;i[m+1>>0]=i[106912]|0;i[m+2>>0]=i[106913]|0;i[m+3>>0]=i[106914]|0;i[m+4>>0]=i[106915]|0;i[m+5>>0]=i[106916]|0;Yx(m+1|0,106917,1,k[c+4>>2]|0);o=J_()|0;k[g>>2]=e;e=n+(MN(n,13,o,m,g)|0)|0;m=Kz(n,e,c)|0;o=LZ(c)|0;k[g>>2]=o;Gf(n,m,e,f,l,j,g);oU(k[g>>2]|0)|0;k[h>>2]=k[b>>2];b=k[l>>2]|0;e=k[j>>2]|0;k[g>>2]=k[h>>2];e=zl(g,f,b,e,c,d)|0;r=a;return e|0}function ym(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+32|0;g=l+16|0;h=l+8|0;d=l+4|0;e=l;j=a+52|0;c=(i[j>>0]|0)!=0;a:do if((b|0)==-1)if(c)b=-1;else{b=k[a+48>>2]|0;i[j>>0]=(b|0)!=-1&1}else{b:do if(c){c=a+48|0;k[d>>2]=k[c>>2];m=k[a+36>>2]|0;switch(Zb[k[(k[m>>2]|0)+12>>2]&15](m,k[a+40>>2]|0,d,d+4|0,e,g,g+8|0,h)|0){case 1:case 2:break;case 3:{i[g>>0]=k[c>>2];k[h>>2]=g+1;f=8;break}default:f=8}c:do if((f|0)==8){a=a+32|0;while(1){d=k[h>>2]|0;if(d>>>0<=g>>>0)break;m=d+-1|0;k[h>>2]=m;if((Oz(i[m>>0]|0,k[a>>2]|0)|0)==-1)break c}break b}while(0);b=-1;break a}else c=a+48|0;while(0);k[c>>2]=b;i[j>>0]=1}while(0);r=l;return b|0}function zm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;a=r;r=r+64|0;g=a;m=a+52|0;n=a+40|0;f=a+16|0;l=a+12|0;j=a+4|0;h=a+8|0;i[m>>0]=i[106911]|0;i[m+1>>0]=i[106912]|0;i[m+2>>0]=i[106913]|0;i[m+3>>0]=i[106914]|0;i[m+4>>0]=i[106915]|0;i[m+5>>0]=i[106916]|0;Yx(m+1|0,106917,0,k[c+4>>2]|0);o=J_()|0;k[g>>2]=e;e=n+(MN(n,12,o,m,g)|0)|0;m=Kz(n,e,c)|0;o=LZ(c)|0;k[g>>2]=o;Rf(n,m,e,f,l,j,g);oU(k[g>>2]|0)|0;k[h>>2]=k[b>>2];b=k[l>>2]|0;e=k[j>>2]|0;k[g>>2]=k[h>>2];e=Rl(g,f,b,e,c,d)|0;r=a;return e|0}function Am(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;a=r;r=r+64|0;g=a;m=a+52|0;n=a+39|0;f=a+16|0;l=a+12|0;j=a+4|0;h=a+8|0;i[m>>0]=i[106911]|0;i[m+1>>0]=i[106912]|0;i[m+2>>0]=i[106913]|0;i[m+3>>0]=i[106914]|0;i[m+4>>0]=i[106915]|0;i[m+5>>0]=i[106916]|0;Yx(m+1|0,106917,1,k[c+4>>2]|0);o=J_()|0;k[g>>2]=e;e=n+(MN(n,13,o,m,g)|0)|0;m=Kz(n,e,c)|0;o=LZ(c)|0;k[g>>2]=o;Rf(n,m,e,f,l,j,g);oU(k[g>>2]|0)|0;k[h>>2]=k[b>>2];b=k[l>>2]|0;e=k[j>>2]|0;k[g>>2]=k[h>>2];e=Rl(g,f,b,e,c,d)|0;r=a;return e|0}function Bm(a){a=a|0;az(a+292|0);qH(a+280|0);p1(a+256|0);p1(a+244|0);p1(a+228|0);p1(a+200|0);p1(a+188|0);qH(a+176|0);p1(a+152|0);p1(a+140|0);p1(a+124|0);p1(a+96|0);p1(a+84|0);p1(a+68|0);p1(a+40|0);p1(a+28|0);LH(a+12|0);p1(a);return}function Cm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+32|0;g=l+16|0;h=l+4|0;d=l+8|0;e=l;j=a+52|0;c=(i[j>>0]|0)!=0;a:do if((b|0)==-1)if(c)b=-1;else{b=k[a+48>>2]|0;i[j>>0]=(b|0)!=-1&1}else{b:do if(c){c=a+48|0;i[d>>0]=k[c>>2];m=k[a+36>>2]|0;switch(Zb[k[(k[m>>2]|0)+12>>2]&15](m,k[a+40>>2]|0,d,d+1|0,e,g,g+8|0,h)|0){case 1:case 2:break;case 3:{i[g>>0]=k[c>>2];k[h>>2]=g+1;f=8;break}default:f=8}c:do if((f|0)==8){a=a+32|0;while(1){d=k[h>>2]|0;if(d>>>0<=g>>>0)break;m=d+-1|0;k[h>>2]=m;if((Oz(i[m>>0]|0,k[a>>2]|0)|0)==-1)break c}break b}while(0);b=-1;break a}else c=a+48|0;while(0);k[c>>2]=b;i[j>>0]=1}while(0);r=l;return b|0}function Dm(a){a=a|0;var b=0.0,c=0,d=0,e=0,f=0;a:do switch((j[a+8>>1]&255)<<24>>24){case 1:{if(DF(a)|0){f=a;e=k[f+4>>2]|0;f=k[f>>2]|0;break a}else{a=666;c=103119;d=a+31|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 2:{f=a;e=k[f+4>>2]|0;f=k[f>>2]|0;break}case 3:{b=+p[a>>3];if(b<=18446744073709551616.0&b>=0.0){e=+O(b)>=1.0?(b>0.0?~~+aa(+N(b/4294967296.0),4294967295.0)>>>0:~~+_((b-+(~~b>>>0))/4294967296.0)>>>0):0;f=~~b>>>0;break a}else{a=666;c=103150;d=a+27|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 0:{e=0;f=0;break}case 5:{e=0;f=l[a>>0]|0;break}default:{a=666;c=103177;d=a+36|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}}while(0);M=e;return f|0}function Em(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;d=k[a+4>>2]|0;e=k[a>>2]|0;c=((d-e|0)/48|0)+1|0;if(c>>>0>89478485)J5(a);i=((k[a+8>>2]|0)-e|0)/48|0;f=i<<1;f=i>>>0<44739242?(f>>>0<c>>>0?c:f):89478485;c=(d-e|0)/48|0;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!f)d=0;else d=cW(f*48|0)|0;k[g>>2]=d;i=d+(c*48|0)|0;k[g+4>>2]=i;k[g+12>>2]=d+(f*48|0);iI(i,b);iI(d+(c*48|0)+12|0,b+12|0);iI(d+(c*48|0)+24|0,b+24|0);iI(d+(c*48|0)+36|0,b+36|0);k[g+8>>2]=i+48;Zj(a,g);wz(g);r=h;return}function Fm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;b=k[a+44>>2]|0;n=a+40|0;c=b;a:do if((c|0)==(n|0))a=0;else{l=k[a+52>>2]|0;m=l+2008|0;j=i[m+11>>0]|0;h=j<<24>>24<0;j=h?k[l+2012>>2]|0:j&255;l=(j|0)==0;while(1){g=b;d=g+40|0;b=i[d+11>>0]|0;e=b<<24>>24<0;b=b&255;do if(((e?k[g+44>>2]|0:b)|0)==(j|0)){f=k[d>>2]|0;g=e?f:d;a=h?k[m>>2]|0:m;if(e){if(l){a=1;break a}if(!(EI(g,a,j)|0)){a=1;break a}else break}if(l){a=1;break a}if((f&255)<<24>>24==(i[a>>0]|0))do{b=b+-1|0;d=d+1|0;if(!b){a=1;break a}a=a+1|0}while((i[d>>0]|0)==(i[a>>0]|0))}while(0);b=k[c+4>>2]|0;c=b;if((c|0)==(n|0)){a=0;break}}}while(0);return a|0}function Gm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;Bt(a,b);i[k[b>>2]>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;e=k[a+52>>2]|0;i[c>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;e=(k[b>>2]|0)+4|0;k[b>>2]=e;i[e>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;e=(k[b>>2]|0)+4|0;k[b>>2]=e;i[e>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;e=(k[b>>2]|0)+4|0;k[b>>2]=e;i[e>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;e=(k[b>>2]|0)+4|0;k[b>>2]=e;c=a+56|0;d=i[c+11>>0]|0;if(d<<24>>24<0){a=k[a+60>>2]|0;c=k[c>>2]|0}else a=d&255;d=a+1|0;fE(e|0,c|0,d|0)|0;k[b>>2]=(k[b>>2]|0)+d;return}function Hm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;ar(a,b);Tn(110732,68432,56)|0;d=a+52|0;c=a+56|0;b=k[d>>2]|0;if((k[c>>2]|0)!=(b|0)){a=0;do{e=b;f=Tn(110732,68489,1)|0;f=Tn(Ln(f,k[e+(a*12|0)>>2]|0)|0,103359,2)|0;f=Tn(Ln(f,k[e+(a*12|0)+4>>2]|0)|0,103359,2)|0;Tn(Ln(f,k[e+(a*12|0)+8>>2]|0)|0,68491,3)|0;a=a+1|0;b=k[d>>2]|0}while(a>>>0<(((k[c>>2]|0)-b|0)/12|0)>>>0)}Tn(110732,68429,2)|0;return}function Im(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;p=r;r=r+64|0;h=p+48|0;i=p+40|0;j=p+32|0;l=p+24|0;m=p+16|0;n=p+8|0;o=p;f=a+4|0;q=k[f>>2]|0;g=b+4|0;d=c+4|0;k[f>>2]=q-(k[g>>2]|0)+(k[d>>2]|0)+((k[c>>2]|0)-(k[b>>2]|0)<<3);f=k[b>>2]|0;g=k[g>>2]|0;c=k[c>>2]|0;d=k[d>>2]|0;e=q&31;b=(k[a>>2]|0)+(q>>>5<<2)|0;if((g|0)==(e|0)){k[h>>2]=f;k[h+4>>2]=g;k[i>>2]=c;k[i+4>>2]=d;k[j>>2]=b;k[j+4>>2]=g;Pm(o,h,i,j)}else{k[l>>2]=f;k[l+4>>2]=g;k[m>>2]=c;k[m+4>>2]=d;k[n>>2]=b;k[n+4>>2]=e;zg(o,l,m,n)}r=p;return}function Jm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=r;r=r+160|0;h=i;c=k[b>>2]|0;f=b+4|0;if((c|0)!=(k[f>>2]|0)){g=a+452|0;e=a+448|0;do{if((k[2783]|0)<3){Qd(h,29209,746,2,0,0,0);b=Tn(Tn(Hn(Tn(h,29231,4)|0,a)|0,30253,3)|0,30020,53)|0;Mn(b,k[c>>2]|0)|0;hi(h)}d=k[g>>2]|0;if((d|0)!=(e|0)){b=d;do{j=k[b+8>>2]|0;cc[k[(k[j>>2]|0)+84>>2]&127](j,k[c>>2]|0)|0;b=k[d+4>>2]|0;d=b}while((d|0)!=(e|0))}c=c+4|0}while((c|0)!=(k[f>>2]|0))}r=i;return}function Km(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=k[b>>2]|0;f=k[b+4>>2]|0;c=((k[c>>2]|0)-g<<3)+(k[c+4>>2]|0)-f|0;e=g;if((c|0)>0){if(!f){h=d;f=k[d>>2]|0;e=g}else{i=32-f|0;h=(c|0)<(i|0)?c:i;f=-1>>>(i-h|0)&-1<<f;i=k[e>>2]&f;g=k[d>>2]|0;k[g>>2]=k[g>>2]&~f;g=k[d>>2]|0;k[g>>2]=k[g>>2]|i;g=d+4|0;i=(k[g>>2]|0)+h|0;f=(k[d>>2]|0)+(i>>>5<<2)|0;k[d>>2]=f;k[g>>2]=i&31;e=e+4|0;k[b>>2]=e;c=c-h|0;h=d}g=c>>>5;qO(f|0,e|0,g<<2|0)|0;c=c-(g<<5)|0;e=(k[h>>2]|0)+(g<<2)|0;k[h>>2]=e;if((c|0)>0){g=(k[b>>2]|0)+(g<<2)|0;k[b>>2]=g;i=-1>>>(32-c|0);g=k[g>>2]&i;k[e>>2]=k[e>>2]&~i;i=k[h>>2]|0;k[i>>2]=k[i>>2]|g;k[d+4>>2]=c}}k[a>>2]=k[d>>2];k[a+4>>2]=k[d+4>>2];return}function Lm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+32|0;e=c+16|0;d=c;f=c+8|0;k[e>>2]=b;Dr(d,a+36|0,b,113525,e,c+24|0);d=k[d>>2]|0;k[d+28>>2]=0;k[d+32>>2]=0;d=cW(104)|0;g=(w4(k[a+88>>2]|0)|0)+916|0;er(d,(k[g>>2]|0)+992|0,k[a+76>>2]|0);HT(d,0,b);k[f>>2]=115;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];Jq(d+16|0,a,e)|0;Ot(d);r=c;return}function Mm(a){a=a|0;var b=0,c=0;k[a>>2]=14964;b=a+104|0;Ta(55,k[b>>2]|0)|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}b=a+84|0;k[b>>2]=2376;c=a+88|0;k[c>>2]=2400;up(b);$H(a+92|0);k[c>>2]=2024;c=a+64|0;k[c>>2]=2376;b=a+68|0;k[b>>2]=2400;up(c);$H(a+72|0);k[b>>2]=2024;b=a+44|0;k[b>>2]=2568;c=a+48|0;k[c>>2]=2592;up(b);$H(a+52|0);k[c>>2]=2024;c=a+24|0;k[c>>2]=14988;b=a+28|0;k[b>>2]=15012;up(c);$H(a+32|0);k[b>>2]=2024;b=a+4|0;k[b>>2]=2376;c=a+8|0;k[c>>2]=2400;up(b);$H(a+12|0);k[c>>2]=2024;return}function Nm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+160|0;c=h;f=a+2159|0;a:do if(!(i[f>>0]|0)){b=k[a+416>>2]|0;g=a+1612|0;e=$(k[a+1576>>2]|0,k[g>>2]|0)|0;d=e+b|0;if((e|0)>0){e=a+2024|0;do{if(!(TJ(e,b,0)|0))break a;b=b+1|0}while((b|0)<(d|0))}i[f>>0]=1;if((k[2783]|0)<3){Qd(c,29209,662,2,0,0,0);f=Tn(Tn(Hn(Tn(c,29231,4)|0,a)|0,30253,3)|0,30074,10)|0;Tn(Mn(f,k[g>>2]|0)|0,30085,9)|0;hi(c)}dF(a+96|0)}while(0);r=h;return}function Om(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=a+4|0;a=k[d>>2]|0;do if(a){h=i[c+11>>0]|0;g=h<<24>>24<0;h=g?k[c+4>>2]|0:h&255;g=g?k[c>>2]|0:c;while(1){c=a+16|0;f=i[c+11>>0]|0;e=f<<24>>24<0;f=e?k[a+20>>2]|0:f&255;d=f>>>0<h>>>0?f:h;if((d|0)!=0?(j=EI(g,e?k[c>>2]|0:c,d)|0,(j|0)!=0):0)if((j|0)<0)d=7;else d=9;else if(h>>>0<f>>>0)d=7;else d=9;if((d|0)==7){d=k[a>>2]|0;if(!d){d=8;break}else a=d}else if((d|0)==9){c=a+4|0;d=k[c>>2]|0;if(!d){d=11;break}else a=d}}if((d|0)==8){k[b>>2]=a;break}else if((d|0)==11){k[b>>2]=a;a=c;break}}else{k[b>>2]=d;a=d}while(0);return a|0}function Pm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=k[b>>2]|0;f=k[b+4>>2]|0;c=((k[c>>2]|0)-h<<3)+(k[c+4>>2]|0)-f|0;e=h;if((c|0)>0){if(!f){g=d;e=h}else{h=32-f|0;g=(c|0)<(h|0)?c:h;f=-1>>>(h-g|0)&-1<<f;h=k[e>>2]&f;e=k[d>>2]|0;k[e>>2]=k[e>>2]&~f;e=k[d>>2]|0;k[e>>2]=k[e>>2]|h;e=d+4|0;h=(k[e>>2]|0)+g|0;k[d>>2]=(k[d>>2]|0)+(h>>>5<<2);k[e>>2]=h&31;e=(k[b>>2]|0)+4|0;k[b>>2]=e;c=c-g|0;g=d}f=c>>>5;qO(k[d>>2]|0,e|0,f<<2|0)|0;c=c-(f<<5)|0;k[g>>2]=(k[g>>2]|0)+(f<<2);if((c|0)>0){h=(k[b>>2]|0)+(f<<2)|0;k[b>>2]=h;f=-1>>>(32-c|0);b=k[h>>2]&f;h=k[g>>2]|0;k[h>>2]=k[h>>2]&~f;h=k[g>>2]|0;k[h>>2]=k[h>>2]|b;k[d+4>>2]=c}}k[a>>2]=k[d>>2];k[a+4>>2]=k[d+4>>2];return}function Qm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;if(b>>>0>4294967279)x5(a);m=a+11|0;h=i[m>>0]|0;e=h<<24>>24<0;if(e){l=k[a+4>>2]|0;c=(k[a+8>>2]&2147483647)+-1|0}else{l=h&255;c=10}j=l>>>0>b>>>0?l:b;b=j>>>0<11;j=b?10:(j+16&-16)+-1|0;do if((j|0)!=(c|0)){do if(b){c=k[a>>2]|0;if(e){b=0;d=a;g=12}else{b=0;e=1;d=a;g=13}}else{d=cW(j+1|0)|0;if(e){b=1;c=k[a>>2]|0;g=12;break}else{b=1;e=0;c=a;g=13;break}}while(0);if((g|0)==12){f=b;e=1;b=k[a+4>>2]|0}else if((g|0)==13){f=b;b=h&255}b=b+1|0;if(b|0)fE(d|0,c|0,b|0)|0;if(e)zba(c);if(f){k[a+8>>2]=j+1|-2147483648;k[a+4>>2]=l;k[a>>2]=d;break}else{i[m>>0]=l;break}}while(0);return}function Rm(a){a=a|0;var b=0.0,c=0,d=0,e=0;a:do switch((j[a+8>>1]&255)<<24>>24){case 1:{if(aB(a)|0){e=k[a>>2]|0;break a}else{a=666;c=102795;d=a+28|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 2:{if(aB(a)|0){e=k[a>>2]|0;break a}else{a=666;c=102823;d=a+29|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 3:{b=+p[a>>3];if(b<=2147483647.0&b>=-2147483648.0){e=~~b;break a}else{a=666;c=102852;d=a+24|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 0:{e=0;break}case 5:{e=l[a>>0]|0;break}default:{a=666;c=102876;d=a+33|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}}while(0);return e|0}function Sm(a){a=a|0;var b=0.0,c=0,d=0,e=0;a:do switch((j[a+8>>1]&255)<<24>>24){case 1:{if(oD(a)|0){e=k[a>>2]|0;break a}else{a=666;c=102909;d=a+29|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 2:{if(oD(a)|0){e=k[a>>2]|0;break a}else{a=666;c=102938;d=a+30|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 3:{b=+p[a>>3];if(b<=4294967295.0&b>=0.0){e=~~b>>>0;break a}else{a=666;c=102968;d=a+25|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}break}case 0:{e=0;break}case 5:{e=l[a>>0]|0;break}default:{a=666;c=102993;d=a+34|0;do{i[a>>0]=i[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(d|0));Ib(123)}}while(0);return e|0}function Tm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;c=k[a+28>>2]|0;m=a+24|0;a=c;a:do if((a|0)==(m|0))p=12;else{n=b+8|0;j=i[n+11>>0]|0;o=j<<24>>24<0;j=o?k[b+12>>2]|0:j&255;l=(j|0)==0;while(1){h=k[c+8>>2]|0;e=h+8|0;d=i[e+11>>0]|0;f=d<<24>>24<0;d=d&255;do if(((f?k[h+12>>2]|0:d)|0)==(j|0)){g=k[e>>2]|0;h=f?g:e;b=o?k[n>>2]|0:n;if(f){if(l)break a;if(!(EI(h,b,j)|0))break a;else break}if(l)break a;if((g&255)<<24>>24==(i[b>>0]|0))do{d=d+-1|0;e=e+1|0;if(!d)break a;b=b+1|0}while((i[e>>0]|0)==(i[b>>0]|0))}while(0);c=k[a+4>>2]|0;a=c;if((a|0)==(m|0)){p=12;break}}}while(0);if((p|0)==12)c=m;return c|0}function Um(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;f=b+4|0;e=k[f>>2]|0;do if(e){f=k[c>>2]|0;while(1){c=k[e+16>>2]|0;if((f|0)<(c|0)){c=k[e>>2]|0;if(!c){f=5;break}else e=c}else{if((c|0)>=(f|0)){f=10;break}g=e+4|0;c=k[g>>2]|0;if(!c){f=9;break}else e=c}}if((f|0)==5){k[h>>2]=e;g=e;c=e;break}else if((f|0)==9){k[h>>2]=e;c=e;break}else if((f|0)==10){k[h>>2]=e;g=h;c=e;break}}else{k[h>>2]=f;g=f;c=f}while(0);e=k[g>>2]|0;if(!e){e=cW(20)|0;k[e+16>>2]=k[d>>2];wF(b,c,g,e);c=1}else c=0;k[a>>2]=e;i[a+4>>0]=c;r=j;return}function Vm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;b=g+24|0;h=g+16|0;e=g+8|0;f=g;c=a+88|0;d=(k[c>>2]|0)+516|0;k[h>>2]=1251;k[h+4>>2]=0;k[b>>2]=k[h>>2];k[b+4>>2]=k[h+4>>2];Ew(d,a,b);d=(k[c>>2]|0)+96|0;k[e>>2]=45;k[e+4>>2]=0;k[b>>2]=k[e>>2];k[b+4>>2]=k[e+4>>2];fv(d,a,b);d=k[a+96>>2]|0;e=k[(k[d>>2]|0)+20>>2]|0;c=maa(k[c>>2]|0)|0;c=cc[e&127](d,c)|0;d=a+100|0;e=k[d>>2]|0;k[d>>2]=0;if(e|0)Rb[k[(k[e>>2]|0)+4>>2]&2047](e);k[d>>2]=c;k[f>>2]=330;k[f+4>>2]=0;k[b>>2]=k[f>>2];k[b+4>>2]=k[f+4>>2];zq(c+16|0,a,b)|0;r=g;return}function Wm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+160|0;d=i;e=a+1576|0;h=k[e>>2]|0;f=$(h,b)|0;if((h|0)>0){g=a+2024|0;h=a+216|0;c=f;do{if(!(TJ(g,c,0)|0)){if((k[2783]|0)<4){Qd(d,29209,594,3,0,0,0);Mn(Tn(Mn(Tn(Tn(Hn(Tn(d,29231,4)|0,a)|0,30253,3)|0,30095,26)|0,b)|0,30122,25)|0,c)|0;hi(d)}}else rD(h,a,c);c=c+1|0}while((c|0)<((k[e>>2]|0)+f|0))}Ou(a);r=i;return}function Xm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+32|0;a=g+8|0;c=g;k[a>>2]=0;GM(a,0,0,0);e=b+40|0;d=e;d=((k[d>>2]|0)!=-1?1:(k[d+4>>2]|0)!=-1)?38:29;jR(a,d);k[a+4>>2]=d;f=cW(16)|0;k[f>>2]=0;GM(f,k[a>>2]|0,d,d);i[f+12>>0]=1;k[c>>2]=f;k[c+4>>2]=0;JX(c,k[b+4>>2]&255);d=b+8|0;Zo(c,k[d>>2]|0,k[d+4>>2]|0);OE(c,k[b+16>>2]|0);d=b+24|0;Zo(c,k[d>>2]|0,k[d+4>>2]|0);OE(c,k[b+32>>2]|0);OE(c,k[b+48>>2]|0);d=k[e>>2]|0;e=k[e+4>>2]|0;if(!((d|0)==-1&(e|0)==-1)){Zo(c,d,e);JX(c,i[b+52>>0]|0)}a=k[a>>2]|0;if(a|0)wba(a);r=g;return f|0}function Ym(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=r;r=r+32|0;b=d+24|0;e=d+16|0;c=d+8|0;f=d;k[e>>2]=1274;k[e+4>>2]=0;k[b>>2]=k[e>>2];k[b+4>>2]=k[e+4>>2];cr(a+128|0,a,b)|0;k[c>>2]=1275;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];cr(a+120|0,a,b)|0;c=a+100|0;e=(k[(k[(k[c>>2]|0)+128>>2]|0)+104>>2]|0)+36|0;k[f>>2]=346;k[f+4>>2]=0;k[b>>2]=k[f>>2];k[b+4>>2]=k[f+4>>2];lw(e,a,b);b=k[(k[(k[(k[c>>2]|0)+128>>2]|0)+104>>2]|0)+116>>2]|0;if(b|0){qo(a+104|0,b);e=k[c>>2]|0;f=k[(k[a+140>>2]|0)+72+(k[e+52>>2]<<2)>>2]|0;MM(f+8|0,e+64|0)|0;i[f+4>>0]=1}r=d;return}function Zm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;b=g+16|0;d=g;f=a+64|0;h=k[(k[f>>2]|0)+2272>>2]|0;if(Ub[k[(k[h>>2]|0)+28>>2]&511](h)|0?(c=a+96|0,(i[c>>0]|0)==0):0){mD(b,0);h=N6(b,56171)|0;nF(d,27626);GA(h,d)|0;Lv(d);h=N6(b,27643)|0;t$(d,1);GA(h,d)|0;Lv(d);XA(a,b);i[c>>0]=1;Lv(b)}h=k[(k[f>>2]|0)+2272>>2]|0;if(!(Ub[k[(k[h>>2]|0)+28>>2]&511](h)|0)?(e=a+96|0,i[e>>0]|0):0){mD(b,0);h=N6(b,56171)|0;nF(d,27626);GA(h,d)|0;Lv(d);h=N6(b,27643)|0;t$(d,0);GA(h,d)|0;Lv(d);XA(a,b);i[e>>0]=0;Lv(b)}r=g;return}function _m(a,b){a=a|0;b=b|0;var c=0,d=0;Bt(a,b);d=k[a+52>>2]|0;i[k[b>>2]>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+56>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[a+60>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+64>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=j[a+68>>1]|0;i[c>>0]=(a&65535)>>>8;i[(k[b>>2]|0)+1>>0]=a;a=(k[b>>2]|0)+2|0;k[b>>2]=a;i[a>>0]=0;i[(k[b>>2]|0)+1>>0]=0;k[b>>2]=(k[b>>2]|0)+2;return}function $m(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=r;r=r+16|0;f=g;if((d|0)==1){e=k[a+76>>2]|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;Qx(f,b,c);qU(e,f,1);p1(f)}else{e=a+80|0;d=i[e+11>>0]|0;if(d<<24>>24<0)d=k[a+84>>2]|0;else d=d&255;if(d|0)eZ(e,103283)|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;Qx(f,b,c);c=i[f+11>>0]|0;b=c<<24>>24<0;nw(e,b?k[f>>2]|0:f,b?k[f+4>>2]|0:c&255)|0;p1(f)}r=g;return}function an(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;a:do if(c){g=0;while(1){e=b+g|0;f=i[e>>0]|0;if(!(f<<24>>24))break;d=g+1|0;if(f<<24>>24==64){h=5;break}if(d>>>0<c>>>0)g=d;else break}if((h|0)==5)if(e){b=e+1|0;c=c+-1-g|0}if(c){d=0;while(1){f=b+d|0;g=i[f>>0]|0;if(!(g<<24>>24)){h=11;break a}e=d+1|0;if(g<<24>>24==58)break;if(e>>>0<c>>>0)d=e;else{h=11;break a}}if(!f){d=c;c=a;h=14}else{Uu(a,b,d)|0;g=(D6(f+1|0,0,10)|0)&65535;j[a+36>>1]=g}}else{c=0;h=11}}else{c=0;h=11}while(0);if((h|0)==11){d=c;c=a;h=14}if((h|0)==14){Uu(c,b,d)|0;j[a+36>>1]=i[a+38>>0]|0?443:80}return}function bn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;c=k[a+28>>2]|0;m=a+24|0;d=c;a:do if((d|0)==(m|0))a=0;else{l=i[b+11>>0]|0;h=l<<24>>24<0;l=h?k[b+4>>2]|0:l&255;h=h?k[b>>2]|0:b;j=(l|0)==0;a=c;while(1){a=k[a+8>>2]|0;e=a+8|0;b=i[e+11>>0]|0;c=b<<24>>24<0;b=b&255;do if(((c?k[a+12>>2]|0:b)|0)==(l|0)){f=k[e>>2]|0;g=c?f:e;if(c){if(j)break a;if(!(EI(g,h,l)|0))break a;else break}if(j)break a;if((f&255)<<24>>24==(i[h>>0]|0)){c=h;do{b=b+-1|0;e=e+1|0;if(!b)break a;c=c+1|0}while((i[e>>0]|0)==(i[c>>0]|0))}}while(0);a=k[d+4>>2]|0;d=a;if((d|0)==(m|0)){a=0;break}}}while(0);return a|0}function cn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=a+32|0;MM(g,b)|0;f=a+44|0;k[f>>2]=0;h=a+48|0;e=k[h>>2]|0;if(e&8|0){b=i[g+11>>0]|0;if(b<<24>>24<0){b=k[g>>2]|0;c=b;d=b;b=b+(k[a+36>>2]|0)|0}else{c=g;d=g;b=g+(b&255)|0}k[f>>2]=b;k[a+8>>2]=c;k[a+12>>2]=d;k[a+16>>2]=b}if(e&16|0){c=g+11|0;b=i[c>>0]|0;if(b<<24>>24<0){e=k[a+36>>2]|0;k[f>>2]=(k[g>>2]|0)+e;b=(k[a+40>>2]&2147483647)+-1|0;f=e}else{e=b&255;k[f>>2]=g+e;b=10;f=e}gD(g,b,0);b=i[c>>0]|0;if(b<<24>>24<0){c=k[g>>2]|0;e=c;d=k[a+36>>2]|0}else{e=g;d=b&255;c=g}b=a+24|0;k[b>>2]=c;k[a+20>>2]=c;k[a+28>>2]=e+d;if(k[h>>2]&3|0)k[b>>2]=c+f}return}function dn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;d=g+8|0;e=g;k[d>>2]=0;GM(d,0,0,0);f=b+8|0;a=a+4|0;h=(k[(k[f>>2]|0)+8>>2]|0)+15+(i[a>>0]|0?4:0)|0;jR(d,h);k[d+4>>2]=h;c=cW(16)|0;k[c>>2]=0;GM(c,k[d>>2]|0,h,h);i[c+12>>0]=1;k[e>>2]=c;k[e+4>>2]=0;JX(e,k[b+4>>2]&255);h=b+16|0;Zo(e,k[h>>2]|0,k[h+4>>2]|0);rO(e,k[b+24>>2]&65535);OE(e,k[b+32>>2]|0);if(i[a>>0]|0)OE(e,aK(k[f>>2]|0)|0);h=k[f>>2]|0;h=ub(22,k[h>>2]|0,k[h+4>>2]|0)|0;a=h;MU(e,a,k[(k[f>>2]|0)+8>>2]|0);if(h|0)wc(a);a=k[d>>2]|0;if(a|0)wba(a);r=g;return c|0}function en(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=a+8|0;e=k[h>>2]|0;i=a+4|0;c=k[i>>2]|0;if(((e-c|0)/12|0)>>>0<b>>>0){f=k[a>>2]|0;d=((c-f|0)/12|0)+b|0;if(d>>>0>357913941)J5(a);e=(e-f|0)/12|0;g=e<<1;d=e>>>0<178956970?(g>>>0<d>>>0?d:g):357913941;if(!d)e=0;else e=cW(d*12|0)|0;g=e+(((c-f|0)/12|0)*12|0)|0;f=e+(d*12|0)|0;c=g;e=g;do{k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=e+12|0;e=c;b=b+-1|0}while((b|0)!=0);b=k[a>>2]|0;d=(k[i>>2]|0)-b|0;c=g+(((d|0)/-12|0)*12|0)|0;if((d|0)>0)fE(c|0,b|0,d|0)|0;k[a>>2]=c;k[i>>2]=e;k[h>>2]=f;if(b|0)zba(b)}else do{k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=(k[i>>2]|0)+12|0;k[i>>2]=c;b=b+-1|0}while((b|0)!=0);return}function fn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;a=k[a+200>>2]|0;if((a|0)!=0?(b=k[(k[a+908>>2]|0)+8>>2]|0,(b|0)!=0):0){f=R9(b+424|0)|0;g=jb()|0;h=r;r=r+((1*(f*5<<2)|0)+15&-16)|0;a=k[b+452>>2]|0;e=b+448|0;if((a|0)!=(e|0)){d=0;b=a;c=a;while(1){b=k[b+8>>2]|0;a=b+8|0;if((i[a+11>>0]|0)<0)a=k[a>>2]|0;k[h+(d<<2)>>2]=a;a=Ub[k[(k[b>>2]|0)+32>>2]&511](b)|0;k[h+(d+1<<2)>>2]=a;a=Ub[k[(k[b>>2]|0)+28>>2]&511](b)|0;k[h+(d+2<<2)>>2]=a;a=Ub[k[(k[b>>2]|0)+36>>2]&511](b)|0;k[h+(d+3<<2)>>2]=a;b=Ub[k[(k[b>>2]|0)+60>>2]&511](b)|0;k[h+(d+4<<2)>>2]=b;b=k[c+4>>2]|0;c=b;if((c|0)==(e|0))break;else d=d+5|0}}a=ub(61,h|0,f|0)|0;Qa(g|0)}else a=-1;r=j;return a|0}function gn(a,b){a=a|0;b=b|0;var c=0,d=0;Bt(a,b);d=k[a+52>>2]|0;i[k[b>>2]>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+56>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[a+60>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+64>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[a+68>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4;return}function hn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;a=r;r=r+192|0;l=a;j=a+176|0;f=a+156|0;h=a+4|0;m=a+152|0;i[j>>0]=i[106900]|0;i[j+1>>0]=i[106901]|0;i[j+2>>0]=i[106902]|0;i[j+3>>0]=i[106903]|0;i[j+4>>0]=i[106904]|0;i[j+5>>0]=i[106905]|0;g=J_()|0;k[l>>2]=e;e=MN(f,20,g,j,l)|0;j=f+e|0;g=Kz(f,j,c)|0;o=LZ(c)|0;k[l>>2]=o;n=k_(l,111636)|0;oU(o)|0;ec[k[(k[n>>2]|0)+48>>2]&15](n,f,j,h)|0;e=h+(e<<2)|0;k[m>>2]=k[b>>2];k[l>>2]=k[m>>2];e=zl(l,h,(g|0)==(j|0)?e:h+(g-f<<2)|0,e,c,d)|0;r=a;return e|0}function jn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+16|0;d=c;ar(a,b);g=Tn(b,68583,6)|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,a+52|0,4);e=i[d+11>>0]|0;f=e<<24>>24<0;e=Tn(Tn(g,f?k[d>>2]|0:d,f?k[d+4>>2]|0:e&255)|0,68984,9)|0;Ln(e,k[a+56>>2]|0)|0;p1(d);if(k[a+48>>2]&1|0){f=Tn(b,68994,5)|0;g=k[a+60>>2]|0;g=(g|0)==0?104120:g;Tn(f,g,iC(g)|0)|0}r=c;return}function kn(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+1524>>2]|0;do if((b|0)==7)if(!(i[(k[(k[a+1256>>2]|0)+200>>2]|0)+1188>>0]|0)){b=k[a+1532>>2]|0;break}else{b=k[a+1528>>2]|0;break}while(0);c=a+2180|0;if((k[c>>2]|0)!=(b|0)){k[c>>2]=b;b=tj(a,b)|0;c=a+2164|0;d=k[c>>2]|0;if(d|0?(Rb[k[(k[d>>2]|0)+12>>2]&2047](d),e=k[(k[b>>2]|0)+60>>2]|0,d=k[c>>2]|0,d=Ub[k[(k[d>>2]|0)+64>>2]&511](d)|0,Sb[e&511](b,d),d=k[(k[b>>2]|0)+72>>2]|0,e=k[c>>2]|0,e=Ub[k[(k[e>>2]|0)+76>>2]&511](e)|0,Sb[d&511](b,e),e=k[c>>2]|0,e|0):0)Rb[k[(k[e>>2]|0)+4>>2]&2047](e);k[c>>2]=b;Rb[k[(k[b>>2]|0)+8>>2]&2047](b);if(i[a+2157>>0]|0){e=k[c>>2]|0;Sb[k[(k[e>>2]|0)+16>>2]&511](e,k[a+2024>>2]|0)}}return}function ln(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=r;r=r+16|0;c=d;do if(jaa(a)|0){to(c,a);e=i[c+11>>0]|0;if(((e<<24>>24<0?k[c+4>>2]|0:e&255)|0)==4){e=(cA(c,0,-1,108754,4)|0)==0;p1(c);if(e){i[b>>0]=1;a=1;break}}else p1(c);to(c,a);e=i[c+11>>0]|0;if(((e<<24>>24<0?k[c+4>>2]|0:e&255)|0)!=5){p1(c);a=0;break}e=(cA(c,0,-1,108748,5)|0)==0;p1(c);if(e){i[b>>0]=0;a=1}else a=0}else if(Ff(a,5)|0){a=($A(a)|0)&1;i[b>>0]=a;a=1}else a=0;while(0);r=d;return a|0}function mn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+16|0;e=g+8|0;f=g;c=k[a+20>>2]|0;if(c>>>0>=b>>>0){if(c>>>0>b>>>0){h=k[a+4>>2]|0;c=k[a+16>>2]|0;d=h+(((c>>>0)/146|0)<<2)|0;if((k[a+8>>2]|0)==(h|0))c=0;else c=(k[d>>2]|0)+(((c>>>0)%146|0)*28|0)|0;do if(b){c=((c-(k[d>>2]|0)|0)/28|0)+b|0;if((c|0)>0){h=d+(((c>>>0)/146|0)<<2)|0;d=h;c=(k[h>>2]|0)+(((c>>>0)%146|0)*28|0)|0;break}else{c=145-c|0;h=d+(((c|0)/-146|0)<<2)|0;d=h;c=(k[h>>2]|0)+((145-((c|0)%146|0)|0)*28|0)|0;break}}while(0);k[f>>2]=d;k[f+4>>2]=c;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];Lh(a,e)}}else jo(a,b-c|0);r=g;return}function nn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;a=k[a+4>>2]|0;a:do if(!a)a=0;else{j=i[b+11>>0]|0;h=j<<24>>24<0;j=h?k[b+4>>2]|0:j&255;h=h?k[b>>2]|0:b;while(1){d=a+16|0;c=i[d+11>>0]|0;e=c<<24>>24<0;c=e?k[a+20>>2]|0:c&255;f=c>>>0<j>>>0;b=f?c:j;if((b|0)!=0?(l=EI(h,e?k[d>>2]|0:d,b)|0,(l|0)!=0):0)if((l|0)<0)g=7;else g=8;else if(j>>>0<c>>>0)g=7;else g=8;if((g|0)!=7)if((g|0)==8){g=0;b=j>>>0<c>>>0?j:c;if((b|0)!=0?(m=EI(e?k[d>>2]|0:d,h,b)|0,(m|0)!=0):0){if((m|0)>=0){a=1;break a}}else g=10;if((g|0)==10?(0,!f):0){a=1;break a}a=a+4|0}a=k[a>>2]|0;if(!a){a=0;break}}}while(0);return a|0}function on(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0;if((b|0)!=(c|0)){i=d+4|0;j=c;e=k[i>>2]|0;do{l=(k[k[d>>2]>>2]|0)+4096-e>>2;g=b;h=j-g>>2;m=(h|0)>(l|0);h=m?l:h;f=b;b=m?b+(l<<2)|0:c;g=b-g|0;if(g|0)qO(e|0,f|0,g|0)|0;do if(h){f=k[d>>2]|0;e=((k[i>>2]|0)-(k[f>>2]|0)>>2)+h|0;if((e|0)>0){m=f+(e>>>10<<2)|0;k[d>>2]=m;e=(k[m>>2]|0)+((e&1023)<<2)|0;k[i>>2]=e;break}else{e=1023-e|0;m=f+(((e|0)/-1024|0)<<2)|0;k[d>>2]=m;e=(k[m>>2]|0)+(1023-((e|0)%1024|0)<<2)|0;k[i>>2]=e;break}}while(0)}while((b|0)!=(c|0))}l=k[d+4>>2]|0;m=a;k[m>>2]=k[d>>2];k[m+4>>2]=l;return}function pn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=(b|0)/8|0;j=(b|0)%8|0;h=((k[a+4>>2]<<1>>1)+7|0)/8|0;a:do if(!((h|0)<(e|0)|(e|0)<(0-h|0))){d=(j|0)>0;if((b|0)>7|d){c=h-e|0;h=k[a>>2]|0;qO(h|0,h+e|0,c|0)|0;XG((k[a>>2]|0)+c|0,0,e|0)|0;if(!d)break;e=8-j|0;if((c|0)>0)d=0;else break;while(1){h=c;c=c+-1|0;g=(k[a>>2]|0)+c|0;b=l[g>>0]|0;i[g>>0]=b<<j|d;if((h|0)<=1)break a;else d=b>>>e}}d=(j|0)<0;if(((b|0)<-7|d?(c=0-e|0,b=k[a>>2]|0,qO(b+c|0,b|0,h+e|0)|0,XG(k[a>>2]|0,0,c|0)|0,d):0)?(f=0-j|0,g=j+8|0,(h|0)>(c|0)):0){b=0;while(1){j=(k[a>>2]|0)+c|0;d=l[j>>0]|0;i[j>>0]=d>>>f|b;c=c+1|0;if((c|0)==(h|0))break;else b=d<<g}}}else XG(k[a>>2]|0,0,h|0)|0;while(0);return}function qn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;d=k[a+4>>2]|0;e=k[a>>2]|0;c=((d-e|0)/36|0)+1|0;if(c>>>0>119304647)J5(a);i=((k[a+8>>2]|0)-e|0)/36|0;f=i<<1;f=i>>>0<59652323?(f>>>0<c>>>0?c:f):119304647;c=(d-e|0)/36|0;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!f)d=0;else d=cW(f*36|0)|0;k[g>>2]=d;i=d+(c*36|0)|0;k[g+4>>2]=i;k[g+12>>2]=d+(f*36|0);iI(i,b);iI(d+(c*36|0)+12|0,b+12|0);iI(d+(c*36|0)+24|0,b+24|0);k[g+8>>2]=i+36;Cl(a,g);DB(g);r=h;return}function rn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;a=r;r=r+80|0;l=a;j=a+68|0;f=a+48|0;h=a+8|0;m=a+4|0;i[j>>0]=i[106900]|0;i[j+1>>0]=i[106901]|0;i[j+2>>0]=i[106902]|0;i[j+3>>0]=i[106903]|0;i[j+4>>0]=i[106904]|0;i[j+5>>0]=i[106905]|0;g=J_()|0;k[l>>2]=e;e=MN(f,20,g,j,l)|0;j=f+e|0;g=Kz(f,j,c)|0;o=LZ(c)|0;k[l>>2]=o;n=k_(l,111604)|0;oU(o)|0;ec[k[(k[n>>2]|0)+32>>2]&15](n,f,j,h)|0;e=h+e|0;k[m>>2]=k[b>>2];k[l>>2]=k[m>>2];e=Rl(l,h,(g|0)==(j|0)?e:h+(g-f)|0,e,c,d)|0;r=a;return e|0}function sn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{j=d+-32|0;f=c;c=c+-32|0;k[j>>2]=k[c>>2];k[j+4>>2]=k[c+4>>2];k[j+8>>2]=k[c+8>>2];k[j+12>>2]=k[c+12>>2];j=d+-16|0;e=f+-16|0;k[j>>2]=k[e>>2];k[j+4>>2]=k[e+4>>2];k[j+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[d+-4>>2]=k[f+-4>>2];d=(k[g>>2]|0)+-32|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;j=b+8|0;h=k[i>>2]|0;k[i>>2]=k[j>>2];k[j>>2]=h;a=a+8|0;j=b+12|0;i=k[a>>2]|0;k[a>>2]=k[j>>2];k[j>>2]=i;k[b>>2]=k[e>>2];return}function tn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+16|0;f=n+12|0;l=n+8|0;m=n;hM(m,a);if(i[m>>0]|0){g=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[f>>2]=g;g=k_(f,111660)|0;t6(f);h=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;j=k[h+24>>2]|0;e=h+76|0;d=k[e>>2]|0;if((d|0)==-1){d=LZ(h)|0;k[f>>2]=d;d=k_(f,111604)|0;d=cc[k[(k[d>>2]|0)+28>>2]&127](d,32)|0;t6(f);d=d<<24>>24;k[e>>2]=d}e=k[(k[g>>2]|0)+28>>2]|0;k[l>>2]=j;k[f>>2]=k[l>>2];if(!(Tb[e&63](g,f,h,d&255,b,c)|0)){l=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[l>>2]=k[l>>2]|5}}_B(m);r=n;return a|0}function un(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+16|0;f=n+12|0;l=n+8|0;m=n;hM(m,a);if(i[m>>0]|0){g=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[f>>2]=g;g=k_(f,111660)|0;t6(f);h=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;j=k[h+24>>2]|0;e=h+76|0;d=k[e>>2]|0;if((d|0)==-1){d=LZ(h)|0;k[f>>2]=d;d=k_(f,111604)|0;d=cc[k[(k[d>>2]|0)+28>>2]&127](d,32)|0;t6(f);d=d<<24>>24;k[e>>2]=d}e=k[(k[g>>2]|0)+20>>2]|0;k[l>>2]=j;k[f>>2]=k[l>>2];if(!(Tb[e&63](g,f,h,d&255,b,c)|0)){l=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[l>>2]=k[l>>2]|5}}_B(m);r=n;return a|0}function vn(a){a=a|0;var b=0.0,c=0,d=0,e=0,f=0,g=0;f=r;r=r+320|0;c=f+156|0;d=f;e=a+632|0;b=+p[e>>3];do if(!(b<0.0)){g=(Eb(112,k[a+440>>2]|0,+b)|0)==0;a=(k[2783]|0)<5;if(g){if(!a)break;Qd(d,75946,568,4,0,0,0);g=Tn(Tn(d,75982,6)|0,78861,28)|0;Qn(g,+p[e>>3])|0;hi(d);break}if(a){Qd(c,75946,565,4,0,0,0);g=Tn(Tn(c,75982,6)|0,78841,19)|0;Qn(g,+p[e>>3])|0;hi(c)}p[e>>3]=-1.0}while(0);r=f;return}function wn(a){a=a|0;var b=0,c=0,d=0,e=0;c=a+88|0;b=a+16|0;gr((k[c>>2]|0)+516|0,b);gr((k[c>>2]|0)+96|0,b);b=a+100|0;c=k[b>>2]|0;k[b>>2]=0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0;d=a+184|0;b=k[d>>2]|0;e=a+188|0;if((b|0)!=(e|0)){c=b;while(1){b=k[c+16>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[c+4>>2]|0;if(!b)while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((b|0)==(e|0))break;else c=b}}sG(d,k[e>>2]|0);k[a+192>>2]=0;k[d>>2]=e;k[e>>2]=0;return}function xn(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+8>>2]|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=a+12|0;d=l[d>>0]|l[d+1>>0]<<8|l[d+2>>0]<<16|l[d+3>>0]<<24;i[c>>0]=d;i[c+1>>0]=d>>8;i[c+2>>0]=d>>16;i[c+3>>0]=d>>24;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[a+44>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+48>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[a+52>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4;return}function yn(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;a=r;r=r+224|0;h=a+8|0;n=a;m=a+200|0;g=a+28|0;l=a+24|0;j=a+16|0;i=a+20|0;o=n;k[o>>2]=37;k[o+4>>2]=0;Yx(n+1|0,106908,0,k[c+4>>2]|0);o=J_()|0;p=h;k[p>>2]=e;k[p+4>>2]=f;e=m+(MN(m,23,o,n,h)|0)|0;f=Kz(m,e,c)|0;n=LZ(c)|0;k[h>>2]=n;Gf(m,f,e,g,l,j,h);oU(k[h>>2]|0)|0;k[i>>2]=k[b>>2];e=k[l>>2]|0;f=k[j>>2]|0;k[h>>2]=k[i>>2];f=zl(h,g,e,f,c,d)|0;r=a;return f|0}function zn(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;a=r;r=r+224|0;h=a+8|0;n=a;m=a+200|0;g=a+28|0;l=a+24|0;j=a+16|0;i=a+20|0;o=n;k[o>>2]=37;k[o+4>>2]=0;Yx(n+1|0,106908,1,k[c+4>>2]|0);o=J_()|0;p=h;k[p>>2]=e;k[p+4>>2]=f;e=m+(MN(m,23,o,n,h)|0)|0;f=Kz(m,e,c)|0;n=LZ(c)|0;k[h>>2]=n;Gf(m,f,e,g,l,j,h);oU(k[h>>2]|0)|0;k[i>>2]=k[b>>2];e=k[l>>2]|0;f=k[j>>2]|0;k[h>>2]=k[i>>2];f=zl(h,g,e,f,c,d)|0;r=a;return f|0}function An(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;a=r;r=r+96|0;h=a+8|0;n=a;m=a+71|0;g=a+28|0;l=a+24|0;j=a+16|0;i=a+20|0;o=n;k[o>>2]=37;k[o+4>>2]=0;Yx(n+1|0,106908,0,k[c+4>>2]|0);o=J_()|0;p=h;k[p>>2]=e;k[p+4>>2]=f;e=m+(MN(m,23,o,n,h)|0)|0;f=Kz(m,e,c)|0;n=LZ(c)|0;k[h>>2]=n;Rf(m,f,e,g,l,j,h);oU(k[h>>2]|0)|0;k[i>>2]=k[b>>2];e=k[l>>2]|0;f=k[j>>2]|0;k[h>>2]=k[i>>2];f=Rl(h,g,e,f,c,d)|0;r=a;return f|0}function Bn(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;a=r;r=r+96|0;h=a+8|0;n=a;m=a+71|0;g=a+28|0;l=a+24|0;j=a+16|0;i=a+20|0;o=n;k[o>>2]=37;k[o+4>>2]=0;Yx(n+1|0,106908,1,k[c+4>>2]|0);o=J_()|0;p=h;k[p>>2]=e;k[p+4>>2]=f;e=m+(MN(m,23,o,n,h)|0)|0;f=Kz(m,e,c)|0;n=LZ(c)|0;k[h>>2]=n;Rf(m,f,e,g,l,j,h);oU(k[h>>2]|0)|0;k[i>>2]=k[b>>2];e=k[l>>2]|0;f=k[j>>2]|0;k[h>>2]=k[i>>2];f=Rl(h,g,e,f,c,d)|0;r=a;return f|0}function Cn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+48|0;c=h;k[a>>2]=14788;if(!(i[a+88>>0]|0)){b=a+36|0;d=a+56|0;e=d+11|0;f=c;g=f+36|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(g|0));g=i[e>>0]|0;f=g<<24>>24<0;Bs(c,f?k[d>>2]|0:d,f?k[a+60>>2]|0:g&255);g=a+92|0;Hk(ql(k[a+32>>2]|0,g,c)|0,b);p1(c+24|0);p1(c+12|0);p1(c);c=g}else{b=a+36|0;c=a+92|0}p1(c);gG(b);g=a+24|0;k[g>>2]=14804;aE(g);g=a+16|0;k[g>>2]=14804;aE(g);eU(a);r=h;return}function Dn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0;f=r;r=r+64|0;g=f;HA(g,b,c,d);b=g+44|0;k[b>>2]=0;h=g+48|0;k[h>>2]=0;k[g>>2]=15924;d=g+52|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;n=a+4|0;j=a+8|0;c=k[j>>2]|0;m=(k[n>>2]|0)+c|0;k[j>>2]=c+4;c=(l[m+2>>0]|0)<<8|(l[m+1>>0]|0)<<16|(l[m+3>>0]|0);k[b>>2]=l[m>>0];k[h>>2]=c;h=e+-4|0;c=jb()|0;b=r;r=r+((1*(e+-3|0)|0)+15&-16)|0;m=k[j>>2]|0;fE(b|0,(k[n>>2]|0)+m|0,h|0)|0;k[j>>2]=m+h;i[b+h>>0]=0;dZ(d,b)|0;b=k[a+28>>2]|0;hc[k[k[b>>2]>>2]&7](b,g,+p[a+40>>3]);Qa(c|0);k[g>>2]=15924;p1(d);O3(g);r=f;return e|0}function En(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;j=r;r=r+32|0;f=j+12|0;g=j;h=a+124|0;i=a+128|0;d=k[i>>2]|0;e=k[h>>2]|0;c=e;if(((d-e|0)/96|0)>>>0>b>>>0){e=a+4|0;do{iI(f,c+(b*96|0)+68|0);l=(k[e>>2]|0)+1260|0;d=k[(k[h>>2]|0)+(b*96|0)+48>>2]|0;iI(g,f);wh(l,d,g,(k[h>>2]|0)+(b*96|0)+80|0);p1(g);p1(f);b=b+1|0;d=k[i>>2]|0;l=k[h>>2]|0;c=l}while(b>>>0<((d-l|0)/96|0)>>>0)}if((c|0)!=(d|0))_k((k[a+4>>2]|0)+1260|0,c+56|0);r=j;return}function Fn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;g=r;r=r+16|0;j=g+8|0;l=g;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;h=a+28|0;k[h>>2]=h;k[a+32>>2]=h;k[a+36>>2]=0;k[a+20>>2]=3288;k[a+24>>2]=3312;h=a+40|0;k[h>>2]=h;k[a+44>>2]=h;k[a+48>>2]=0;k[a>>2]=6600;k[a+4>>2]=6656;h=a+52|0;k[h>>2]=b;c=a+56|0;i[a+64>>0]=0;k[a+60>>2]=-1;k[c>>2]=1500;k[a+68>>2]=0;d=a+72|0;i[d>>0]=1;k[l>>2]=1255;k[l+4>>2]=0;k[j>>2]=k[l>>2];k[j+4>>2]=k[l+4>>2];vw(c,a,j)|0;b=k[h>>2]|0;if((i[b+1434>>0]|0)!=0?(i[b+1880>>0]|0)!=0:0)tB(c,k[b+1888>>2]|0)|0;else f=4;if((f|0)==4?(i[d>>0]=0,e=k[b+2164>>2]|0,e|0):0)Rb[k[(k[e>>2]|0)+56>>2]&2047](e);r=g;return}function Gn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;e=m+12|0;j=m+8|0;l=m;hM(l,a);if(i[l>>0]|0){f=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[e>>2]=f;f=k_(e,111660)|0;t6(e);g=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;h=k[g+24>>2]|0;d=g+76|0;c=k[d>>2]|0;if((c|0)==-1){c=LZ(g)|0;k[e>>2]=c;c=k_(e,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,32)|0;t6(e);c=c<<24>>24;k[d>>2]=c}d=k[(k[f>>2]|0)+24>>2]|0;k[j>>2]=h;k[e>>2]=k[j>>2];if(!(Vb[d&31](f,e,g,c&255,b&65535)|0)){j=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[j>>2]=k[j>>2]|5}}_B(l);r=m;return a|0}function Hn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;e=m+12|0;j=m+8|0;l=m;hM(l,a);if(i[l>>0]|0){f=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[e>>2]=f;f=k_(e,111660)|0;t6(e);g=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;h=k[g+24>>2]|0;d=g+76|0;c=k[d>>2]|0;if((c|0)==-1){c=LZ(g)|0;k[e>>2]=c;c=k_(e,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,32)|0;t6(e);c=c<<24>>24;k[d>>2]=c}d=k[(k[f>>2]|0)+40>>2]|0;k[j>>2]=h;k[e>>2]=k[j>>2];if(!(Vb[d&31](f,e,g,c&255,b)|0)){j=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[j>>2]=k[j>>2]|5}}_B(l);r=m;return a|0}function In(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=r;r=r+32|0;c=g;p[c>>3]=-1.0;j=c+8|0;k[j>>2]=-1;e=c+12|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;e=b+4|0;f=k[e>>2]|0;h=k[b>>2]|0;d=(f-h>>5)+-1|0;a=c+28|0;k[a>>2]=(k[h+(d<<5)+28>>2]|0)+1;i=k[h+(d<<5)+8>>2]|0;k[j>>2]=i;p[c>>3]=+(i|0)+ +p[h+(d<<5)>>3];d=f;if((d|0)==(k[b+8>>2]|0)){Vn(b,c);a=c+16|0}else{j=f;k[j>>2]=k[c>>2];k[j+4>>2]=k[c+4>>2];k[j+8>>2]=k[c+8>>2];k[j+12>>2]=k[c+12>>2];j=c+16|0;iI(d+16|0,j);k[d+28>>2]=k[a>>2];k[e>>2]=(k[e>>2]|0)+32;a=j}p1(a);r=g;return}function Jn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=a+4|0;b=k[g>>2]|0;i=a+16|0;c=k[i>>2]|0;d=b+(((c>>>0)/341|0)<<2)|0;h=a+8|0;if((k[h>>2]|0)==(b|0)){f=0;e=a+20|0;b=0}else{e=a+20|0;f=c+(k[e>>2]|0)|0;f=(k[b+(((f>>>0)/341|0)<<2)>>2]|0)+(((f>>>0)%341|0)*12|0)|0;b=(k[d>>2]|0)+(((c>>>0)%341|0)*12|0)|0}a=d;a:while(1){do{if((b|0)==(f|0))break a;p1(b);b=b+12|0}while((b-(k[a>>2]|0)|0)!=4092);b=a+4|0;a=b;b=k[b>>2]|0}k[e>>2]=0;a=k[g>>2]|0;b=(k[h>>2]|0)-a>>2;if(b>>>0>2)do{zba(k[a>>2]|0);b=(k[g>>2]|0)+4|0;k[g>>2]=b;a=b;b=(k[h>>2]|0)-a>>2}while(b>>>0>2);switch(b|0){case 1:{k[i>>2]=170;break}case 2:{k[i>>2]=341;break}default:{}}return}function Kn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=r;r=r+16|0;b=f;k[a>>2]=14676;c=a+4|0;k[c>>2]=14704;d=a+20|0;k[d>>2]=14728;e=a+36|0;g=(w4(k[e>>2]|0)|0)+1196|0;if(k[g>>2]|0){g=(w4(k[e>>2]|0)|0)+1196|0;g=k[g>>2]|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,55856,7);tt(g+156|0,b)|0;p1(b)}qL(a+40|0);eU(d);k[a>>2]=1972;k[c>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[c>>2]=2024;r=f;return}function Ln(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;e=m+12|0;j=m+8|0;l=m;hM(l,a);if(i[l>>0]|0){f=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[e>>2]=f;f=k_(e,111660)|0;t6(e);g=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;h=k[g+24>>2]|0;d=g+76|0;c=k[d>>2]|0;if((c|0)==-1){c=LZ(g)|0;k[e>>2]=c;c=k_(e,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,32)|0;t6(e);c=c<<24>>24;k[d>>2]=c}d=k[(k[f>>2]|0)+24>>2]|0;k[j>>2]=h;k[e>>2]=k[j>>2];if(!(Vb[d&31](f,e,g,c&255,b)|0)){j=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[j>>2]=k[j>>2]|5}}_B(l);r=m;return a|0}function Mn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;e=m+12|0;j=m+8|0;l=m;hM(l,a);if(i[l>>0]|0){f=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[e>>2]=f;f=k_(e,111660)|0;t6(e);g=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;h=k[g+24>>2]|0;d=g+76|0;c=k[d>>2]|0;if((c|0)==-1){c=LZ(g)|0;k[e>>2]=c;c=k_(e,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,32)|0;t6(e);c=c<<24>>24;k[d>>2]=c}d=k[(k[f>>2]|0)+16>>2]|0;k[j>>2]=h;k[e>>2]=k[j>>2];if(!(Vb[d&31](f,e,g,c&255,b)|0)){j=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[j>>2]=k[j>>2]|5}}_B(l);r=m;return a|0}function Nn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;e=m+12|0;j=m+8|0;l=m;hM(l,a);if(i[l>>0]|0){f=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[e>>2]=f;f=k_(e,111660)|0;t6(e);g=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;h=k[g+24>>2]|0;d=g+76|0;c=k[d>>2]|0;if((c|0)==-1){c=LZ(g)|0;k[e>>2]=c;c=k_(e,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,32)|0;t6(e);c=c<<24>>24;k[d>>2]=c}d=k[(k[f>>2]|0)+12>>2]|0;k[j>>2]=h;k[e>>2]=k[j>>2];if(!(Vb[d&31](f,e,g,c&255,b)|0)){j=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[j>>2]=k[j>>2]|5}}_B(l);r=m;return a|0}function On(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+176|0;d=f;e=f+16|0;if(!(i[a+132>>0]|0))if((k[2783]|0)<3){Qd(e,50515,195,2,0,0,0);jr(Tn(e,50833,75)|0,b)|0;hi(e);a=0}else a=0;else{e=N6(b,50649)|0;Ix(d,(k[a+128>>2]|0)+884|0);GA(e,d)|0;Lv(d);e=N6(b,50830)|0;Ix(d,c);GA(e,d)|0;Lv(d);e=N6(b,56001)|0;fY(d,k[a+136>>2]|0);GA(e,d)|0;Lv(d);lt(a,b);a=1}r=f;return a|0}function Pn(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0,g=0.0,h=0,j=0,l=0,m=0,n=0,o=0;l=a+52|0;h=k[l>>2]|0;if(!(i[h+1189>>0]|0)){o=i[a+185>>0]^1;f=a+184|0;i[f>>0]=o;if(o<<24>>24){n=f;j=4}}else{n=a+184|0;i[n>>0]=1;j=4}if((j|0)==4?(m=k[b+12>>2]|0,e=k[h+908>>2]|0,d=e,(d|0)!=(h+904|0)):0){do{g=+WG(k[e+8>>2]|0,m);if(g>=0.0)break;e=k[d+4>>2]|0;d=e}while((d|0)!=((k[l>>2]|0)+904|0));if(!(g<0.0)){d=k[l>>2]|0;if(!(i[d+1189>>0]|0))c=+xY(laa(d)|0,m)*1.0e3;else c=+p[a+200>>3];p[a+192>>3]=g-c;i[a+185>>0]=1;i[n>>0]=0}}Sb[k[(k[a>>2]|0)+128>>2]&511](a,b);o=a+200|0;p[o>>3]=+p[o>>3]+ +(k[b+16>>2]|0);return}function Qn(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;e=m+12|0;j=m+8|0;l=m;hM(l,a);if(i[l>>0]|0){f=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[e>>2]=f;f=k_(e,111660)|0;t6(e);g=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;h=k[g+24>>2]|0;d=g+76|0;c=k[d>>2]|0;if((c|0)==-1){c=LZ(g)|0;k[e>>2]=c;c=k_(e,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,32)|0;t6(e);c=c<<24>>24;k[d>>2]=c}d=k[(k[f>>2]|0)+32>>2]|0;k[j>>2]=h;k[e>>2]=k[j>>2];if(!(ic[d&7](f,e,g,c&255,b)|0)){j=a+(k[(k[a>>2]|0)+-12>>2]|0)+16|0;k[j>>2]=k[j>>2]|5}}_B(l);r=m;return a|0}function Rn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=$B(a)|0;if(c){e=c+12|0;d=i[e+11>>0]|0;if(d<<24>>24<0)c=k[c+16>>2]|0;else c=d&255;if(c){MM(b,e)|0;c=1}else f=7}else f=7;do if((f|0)==7){c=gC(a)|0;if(c|0){e=c+12|0;d=i[e+11>>0]|0;if(d<<24>>24<0)c=k[c+16>>2]|0;else c=d&255;if(c|0){MM(b,e)|0;c=1;break}}c=mC(a)|0;if(c){e=c+12|0;d=i[e+11>>0]|0;if(d<<24>>24<0)c=k[c+16>>2]|0;else c=d&255;if(c){MM(b,e)|0;c=1}else c=0}else c=0}while(0);return c|0}function Sn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=Tn(b,34372,5)|0;c=a+36|0;f=i[c+11>>0]|0;e=f<<24>>24<0;f=Tn(Tn(Tn(d,e?k[c>>2]|0:c,e?k[a+40>>2]|0:f&255)|0,102493,1)|0,34378,11)|0;f=Tn(Mn(f,k[a+60>>2]|0)|0,34390,9)|0;e=a+64|0;c=i[e+11>>0]|0;d=c<<24>>24<0;Tn(Tn(Tn(f,d?k[e>>2]|0:e,d?k[a+68>>2]|0:c&255)|0,102493,1)|0,103298,1)|0;return b|0}function Tn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;g=m+12|0;j=m;l=m+8|0;hM(j,a);if(i[j>>0]|0){h=(k[a>>2]|0)+-12|0;k[l>>2]=k[a+(k[h>>2]|0)+24>>2];h=a+(k[h>>2]|0)|0;e=b+c|0;f=(k[h+4>>2]&176|0)==32?e:b;d=h+76|0;c=k[d>>2]|0;if((c|0)==-1){c=LZ(h)|0;k[g>>2]=c;c=k_(g,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,32)|0;t6(g);c=c<<24>>24;k[d>>2]=c}k[g>>2]=k[l>>2];if(!(Rl(g,b,f,e,h,c&255)|0)){l=a+(k[(k[a>>2]|0)+-12>>2]|0)|0;v4(l,k[l+16>>2]|5)}}_B(j);r=m;return a|0}function Un(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;b=Ic(a,b,c,d,e)|0;if(b>>>0<e>>>0?(f=Tn(110732,69550,54)|0,g=e-b|0,f=Ln(Tn(Tn(f,d,iC(d)|0)|0,69605,17)|0,g)|0,d=LZ(f+(k[(k[f>>2]|0)+-12>>2]|0)|0)|0,k[h>>2]=d,d=k_(h,111604)|0,d=cc[k[(k[d>>2]|0)+28>>2]&127](d,10)|0,t6(h),Ss(f,d)|0,UA(f)|0,f=a+8|0,h=(k[f>>2]|0)+g|0,k[f>>2]=h,g=a+12|0,(h|0)>=(k[g>>2]|0)):0){k[g>>2]=0;k[f>>2]=0}r=i;return e|0}function Vn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;d=k[a+4>>2]|0;e=k[a>>2]|0;c=(d-e>>5)+1|0;if(c>>>0>134217727)J5(a);i=(k[a+8>>2]|0)-e|0;f=i>>4;f=i>>5>>>0<67108863?(f>>>0<c>>>0?c:f):134217727;c=d-e>>5;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!f)d=0;else d=cW(f<<5)|0;k[g>>2]=d;i=d+(c<<5)|0;k[g+4>>2]=i;k[g+12>>2]=d+(f<<5);k[i>>2]=k[b>>2];k[i+4>>2]=k[b+4>>2];k[i+8>>2]=k[b+8>>2];k[i+12>>2]=k[b+12>>2];iI(d+(c<<5)+16|0,b+16|0);k[d+(c<<5)+28>>2]=k[b+28>>2];k[g+8>>2]=i+32;sn(a,g);PH(g);r=h;return}function Wn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=r;r=r+16|0;d=g;a:do if(!b)a=0;else{do if(c|0){f=(a|0)==0?d:a;a=i[b>>0]|0;d=a&255;if(a<<24>>24>-1){k[f>>2]=d;a=a<<24>>24!=0&1;break a}a=d+-194|0;if(a>>>0<=50){d=b+1|0;e=k[19652+(a<<2)>>2]|0;if(c>>>0<4?e&-2147483648>>>((c*6|0)+-6|0)|0:0)break;a=l[d>>0]|0;c=a>>>3;if((c+-16|c+(e>>26))>>>0<=7){a=a+-128|e<<6;if((a|0)>=0){k[f>>2]=a;a=2;break a}d=(l[b+2>>0]|0)+-128|0;if(d>>>0<=63){d=d|a<<6;if((d|0)>=0){k[f>>2]=d;a=3;break a}a=(l[b+3>>0]|0)+-128|0;if(a>>>0<=63){k[f>>2]=a|d<<6;a=4;break a}}}}}while(0);a=z0()|0;k[a>>2]=84;a=-1}while(0);r=g;return a|0}function Xn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=a+4|0;b=k[g>>2]|0;i=a+16|0;c=k[i>>2]|0;d=b+(((c>>>0)/146|0)<<2)|0;h=a+8|0;if((k[h>>2]|0)==(b|0)){f=0;e=a+20|0;b=0}else{e=a+20|0;f=c+(k[e>>2]|0)|0;f=(k[b+(((f>>>0)/146|0)<<2)>>2]|0)+(((f>>>0)%146|0)*28|0)|0;b=(k[d>>2]|0)+(((c>>>0)%146|0)*28|0)|0}a=d;a:while(1){do{if((b|0)==(f|0))break a;p1(b+12|0);b=b+28|0}while((b-(k[a>>2]|0)|0)!=4088);b=a+4|0;a=b;b=k[b>>2]|0}k[e>>2]=0;a=k[g>>2]|0;b=(k[h>>2]|0)-a>>2;if(b>>>0>2)do{zba(k[a>>2]|0);b=(k[g>>2]|0)+4|0;k[g>>2]=b;a=b;b=(k[h>>2]|0)-a>>2}while(b>>>0>2);switch(b|0){case 1:{k[i>>2]=73;break}case 2:{k[i>>2]=146;break}default:{}}return}function Yn(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0;h=r;r=r+16|0;g=h;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;b=0;while(1){if((b|0)==3)break;k[g+(b<<2)>>2]=0;b=b+1|0}j=i[f+11>>0]|0;l=j<<24>>24<0;b=l?k[f>>2]|0:f;f=b+(l?k[f+4>>2]|0:j&255)|0;while(1){if(b>>>0>=f>>>0)break;Jx(g,i[b>>0]|0);b=b+1|0}b=F9((c|0)==-1?-1:c<<1,d,e,(i[g+11>>0]|0)<0?k[g>>2]|0:g)|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;f=0;while(1){if((f|0)==3)break;k[a+(f<<2)>>2]=0;f=f+1|0}f=b+(iC(b)|0)|0;while(1){if(b>>>0>=f>>>0)break;Jx(a,i[b>>0]|0);b=b+1|0}p1(g);r=h;return}function Zn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0;e=r;r=r+64|0;f=e;HA(f,b,c,d);m=f+44|0;k[m>>2]=0;d=f+48|0;k[d>>2]=0;k[f>>2]=15560;g=k[a+4>>2]|0;c=a+8|0;b=k[c>>2]|0;n=g+b|0;h=b+4|0;k[c>>2]=h;i=(l[n+2>>0]|0)<<8|(l[n+1>>0]|0)<<16|(l[n+3>>0]|0);k[m>>2]=l[n>>0];k[d>>2]=i;h=g+h|0;d=b+6|0;k[c>>2]=d;j[f+52>>1]=(l[h>>0]|0)<<8|(l[h+1>>0]|0);d=g+d|0;h=b+8|0;k[c>>2]=h;j[f+54>>1]=(l[d>>0]|0)<<8|(l[d+1>>0]|0);h=g+h|0;d=b+10|0;k[c>>2]=d;j[f+56>>1]=(l[h>>0]|0)<<8|(l[h+1>>0]|0);d=g+d|0;k[c>>2]=b+12;j[f+58>>1]=(l[d>>0]|0)<<8|(l[d+1>>0]|0);d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,f,+p[a+40>>3]);O3(f);r=e;return 12}function _n(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;ar(a,b);Tn(b,68901,7)|0;Ez(b,a+52|0,16);Tn(b,68909,9)|0;e=a+68|0;if(k[e>>2]|0){f=a+72|0;d=0;do{Vp(b,(k[f>>2]|0)+(d<<4)|0);c=k[e>>2]|0;if((d|0)!=(c+-1|0)){Tn(b,103359,2)|0;c=k[e>>2]|0}d=d+1|0}while(d>>>0<c>>>0)}Tn(b,103292,1)|0;f=Tn(b,67772,8)|0;Ln(f,k[a+76>>2]|0)|0;return}function $n(a,b){a=a|0;b=b|0;var c=0,d=0;Es(a,b);i[k[b>>2]>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=j[a+46>>1]|0;i[c>>0]=(d&65535)>>>8;i[(k[b>>2]|0)+1>>0]=d;d=(k[b>>2]|0)+2|0;k[b>>2]=d;c=j[a+48>>1]|0;i[d>>0]=(c&65535)>>>8;i[(k[b>>2]|0)+1>>0]=c;c=(k[b>>2]|0)+2|0;k[b>>2]=c;i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[a+52>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4;return}function ao(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=a+4|0;k[a>>2]=1972;k[f>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;e=a+20|0;X0(e);k[a>>2]=14084;k[f>>2]=14120;k[e>>2]=14144;k[a+40>>2]=0;k[a+36>>2]=14180;k[a+48>>2]=0;k[a+44>>2]=10984;e=a+52|0;iI(e,b);b=a+64|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,115628,0);k[a+76>>2]=c;i[a+88>>0]=0;k[a+84>>2]=-1;k[a+80>>2]=1500;k[a+92>>2]=0;i[a+104>>0]=0;k[a+100>>2]=-1;k[a+96>>2]=1500;k[a+108>>2]=0;k[a+112>>2]=0;k[a+116>>2]=0;ry(a+120|0,e);k[a+328>>2]=d;i[a+332>>0]=0;i[a+333>>0]=0;return}function bo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+32|0;e=c+12|0;d=c;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,45953,11);f=i[b+11>>0]|0;g=f<<24>>24<0;f=nw(d,g?k[b>>2]|0:b,g?k[b+4>>2]|0:f&255)|0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];k[e+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;oZ(e);p1(e);p1(d);if(pl(a,b)|0)Ok(a,1);else te(a,b);r=c;return}function co(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=17196;k[a+28>>2]=17432;k[a+32>>2]=17460;k[a+208>>2]=17484;e=a+440|0;Ta(84,k[e>>2]|0)|0;c=a+668|0;k[c>>2]=2376;b=a+672|0;k[b>>2]=2400;up(c);$H(a+676|0);k[b>>2]=2024;b=a+648|0;k[b>>2]=9544;c=k[a+664>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);PV(b);b=a+640|0;c=a+648|0;do{c=c+-4|0;d=k[c>>2]|0;if((d|0)!=-1){Ta(2,d|0)|0;k[c>>2]=-1}}while((c|0)!=(b|0));VD(a+448|0);b=k[e>>2]|0;if((b|0)!=-1){Ta(2,b|0)|0;k[e>>2]=-1}b=k[a+436>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);GL(a+392|0);h3(a+384|0);io(a);return}function eo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0.0;d=a+4|0;if((b|0)!=(c|0)){a=k[d>>2]|0;do{iI(a,b);g=+p[b+24>>3];p[a+16>>3]=+p[b+16>>3];p[a+24>>3]=g;e=a+32|0;f=b+32|0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];k[e+8>>2]=k[f+8>>2];k[e+12>>2]=k[f+12>>2];k[e+16>>2]=k[f+16>>2];i[e+20>>0]=i[f+20>>0]|0;iI(a+56|0,b+56|0);iI(a+68|0,b+68|0);e=a+80|0;f=b+80|0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];k[e+8>>2]=k[f+8>>2];k[e+12>>2]=k[f+12>>2];b=b+96|0;a=(k[d>>2]|0)+96|0;k[d>>2]=a}while((b|0)!=(c|0))}return}function fo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=a+4|0;k[a>>2]=1972;k[f>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;e=a+20|0;X0(e);k[a>>2]=12948;k[f>>2]=12984;k[e>>2]=13008;e=a+44|0;k[e>>2]=e;k[a+48>>2]=e;k[a+52>>2]=0;k[a+36>>2]=13072;k[a+40>>2]=13096;k[a+60>>2]=0;k[a+56>>2]=10984;iI(a+64|0,b);k[a+76>>2]=c;i[a+88>>0]=0;k[a+84>>2]=-1;k[a+80>>2]=1500;k[a+92>>2]=0;i[a+104>>0]=0;k[a+100>>2]=-1;k[a+96>>2]=1500;k[a+108>>2]=0;k[a+112>>2]=0;k[a+116>>2]=0;iZ(a+120|0,b);k[a+132>>2]=d;i[a+136>>0]=0;d=a+140|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;return}function go(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,q=0;h=r;r=r+80|0;g=h;HA(g,b,c,d);o=g+44|0;k[o>>2]=0;d=g+48|0;k[d>>2]=0;k[g>>2]=16036;m=g+52|0;k[m>>2]=0;c=g+56|0;i[c>>0]=0;f=k[a+4>>2]|0;e=a+8|0;b=k[e>>2]|0;q=f+b|0;n=b+4|0;k[e>>2]=n;j=(l[q+2>>0]|0)<<8|(l[q+1>>0]|0)<<16|(l[q+3>>0]|0);k[o>>2]=l[q>>0];k[d>>2]=j;n=f+n|0;d=b+8|0;k[e>>2]=d;j=i[n+3>>0]|0;k[m>>2]=(l[n+1>>0]|0)<<8|(l[n>>0]|0)<<16|(l[n+2>>0]|0);i[c>>0]=j;c=g+57|0;d=f+d|0;f=c+16|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(f|0));k[e>>2]=b+24;q=k[a+28>>2]|0;hc[k[k[q>>2]>>2]&7](q,g,+p[a+40>>3]);O3(g);r=h;return 24}function ho(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=r;r=r+32|0;h=j+12|0;i=j;a=a+8|0;g=k[a>>2]|0;do if(g|0)if((c|0)!=0&(e|0)!=0){g=cW(28)|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,c,d);k[i>>2]=0;k[i+4>>2]=0;k[i+8>>2]=0;wE(i,e,f);k[g>>2]=b;iI(g+4|0,h);iI(g+16|0,i);p1(i);p1(h);i=k[a>>2]|0;Sb[k[(k[i>>2]|0)+28>>2]&511](i,g);zba(e);break}else{Sb[k[(k[g>>2]|0)+28>>2]&511](g,0);break}while(0);r=j;return}function io(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=16660;k[a+28>>2]=16896;k[a+32>>2]=16924;e=a+208|0;k[e>>2]=16948;c=a+288|0;b=k[c>>2]|0;if(b|0){Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=k[c>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[c>>2]=0}b=a+296|0;c=k[b>>2]|0;if(c|0){zba(c);k[b>>2]=0}$H(a+348|0);b=a+308|0;c=a+348|0;do{d=c;c=c+-20|0;k[c>>2]=17156;d=k[d+-4>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);PV(c)}while((c|0)!=(b|0));p1(a+260|0);p1(a+248|0);p1(a+236|0);p1(a+224|0);eU(e);MB(a);return}function jo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;j=a+8|0;d=k[j>>2]|0;i=a+4|0;e=k[i>>2]|0;g=d-e>>2;h=a+16|0;c=k[h>>2]|0;l=a+20|0;f=k[l>>2]|0;g=((g|0)==0?0:(g*146|0)+-1|0)-(f+c)|0;if(g>>>0<b>>>0){Bc(a,b-g|0);f=k[l>>2]|0;c=k[h>>2]|0;e=k[i>>2]|0;d=k[j>>2]|0}c=c+f|0;a=e+(((c>>>0)/146|0)<<2)|0;if((d|0)==(e|0))c=0;else c=(k[a>>2]|0)+(((c>>>0)%146|0)*28|0)|0;if(b|0){d=b;do{b=c;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;d=d+-1|0;c=c+28|0;if((c-(k[a>>2]|0)|0)==4088){c=a+4|0;a=c;c=k[c>>2]|0}k[l>>2]=(k[l>>2]|0)+1}while((d|0)!=0)}return}function ko(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;g=j;h=a+424|0;d=k[a+452>>2]|0;i=a+448|0;if((d|0)!=(i|0)){e=d;f=d;do{d=k[e+8>>2]|0;if(!(Ub[k[(k[d>>2]|0)+64>>2]&511](d)|0))dv(d,c);e=k[f+4>>2]|0;f=e}while((f|0)!=(i|0))}i0(a+2024|0,c);i=k[a+2164>>2]|0;fc[k[(k[i>>2]|0)+36>>2]&255](i,b,c);rD(a+136|0,c,b);jX(h,b);i=cW(40)|0;iI(g,b+8|0);wM(i,5,c,g);II(a,i);p1(g);r=j;return}function lo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;g=j;h=a+424|0;d=k[a+452>>2]|0;i=a+448|0;if((d|0)!=(i|0)){e=d;f=d;do{d=k[e+8>>2]|0;if(!(Ub[k[(k[d>>2]|0)+64>>2]&511](d)|0))dv(d,c);e=k[f+4>>2]|0;f=e}while((f|0)!=(i|0))}i0(a+2024|0,c);i=k[a+2164>>2]|0;fc[k[(k[i>>2]|0)+40>>2]&255](i,b,c);rD(a+136|0,c,b);jX(h,b);i=cW(40)|0;iI(g,b+8|0);wM(i,4,c,g);II(a,i);p1(g);r=j;return}function mo(a,b){a=a|0;b=b|0;var c=0;_F(a,b);c=Tn(110732,68696,14)|0;c=Tn(Gn(c,j[a+46>>1]|0)|0,68388,12)|0;c=Tn(Gn(c,j[a+48>>1]|0)|0,68711,12)|0;b=a+52|0;a=Tn(Ln(c,k[b>>2]|0)|0,68489,1)|0;a=Tn(Ln(a,(k[b>>2]|0)>>>16)|0,104158,1)|0;Tn(Ln(a,k[b>>2]&65535)|0,68623,1)|0;return}function no(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;d=f;e=c+11|0;if((!(y6((i[e>>0]|0)<0?k[c>>2]|0:c,56774)|0)?!(y6((i[e>>0]|0)<0?k[c>>2]|0:c,56782)|0):0)?!(y6((i[e>>0]|0)<0?k[c>>2]|0:c,50479)|0):0){b=b+12|0;nD(d,b,0,(ZD(b,47,-1)|0)+1|0,b);e=i[e>>0]|0;b=e<<24>>24<0;e=nw(d,b?k[c>>2]|0:c,b?k[c+4>>2]|0:e&255)|0;k[a>>2]=k[e>>2];k[a+4>>2]=k[e+4>>2];k[a+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;p1(d)}else iI(a,c);r=f;return}function oo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=r;g=b+4|0;e=k[g>>2]|0;d=k[b>>2]|0;h=r;r=r+((1*(((e-d|0)/72|0)<<2<<2)|0)+15&-16)|0;f=a+24|0;if((d|0)!=(e|0)){e=0;while(1){k[h+(e<<2)>>2]=k[d+12>>2];k[h+((e|1)<<2)>>2]=k[d+28>>2];k[h+((e|2)<<2)>>2]=k[d+32>>2];j=(hD(k[f>>2]|0,d+16|0)|0)&1;k[h+((e|3)<<2)>>2]=j;d=d+72|0;if((d|0)==(k[g>>2]|0))break;else e=e+4|0}}Zv(k[f>>2]|0)|0;e=k[a+20>>2]|0;j=((k[g>>2]|0)-(k[b>>2]|0)|0)/72|0;hb(141,e|0,h|0,4,j|0,a|0,379,Zv(k[f>>2]|0)|0,c&1|0)|0;r=i;return}function po(a){a=a|0;var b=0,c=0,d=0;b=k[a+908>>2]|0;d=a+904|0;c=b;if((c|0)!=(d|0))do{pt(k[b+8>>2]|0);b=k[c+4>>2]|0;c=b}while((c|0)!=(d|0));b=k[a+1168>>2]|0;if(b|0)wn(b);b=a+936|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}cj(a+640|0,0);cj(a+704|0,0);b=a+1048|0;c=k[b>>2]|0;k[b>>2]=0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0;b=a+896|0;c=k[b>>2]|0;k[b>>2]=0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0;iR(a);b=a+1200|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+12>>2]&2047](c);k[b>>2]=0}return}function qo(a,b){a=a|0;b=b|0;var c=0,d=0;if(!(i[a+248>>0]|0)){c=a+128|0;if((c|0)!=(b|0))bj(c,k[b>>2]|0,k[b+4>>2]|0);MM(a+140|0,b+12|0)|0;c=a+152|0;d=b+24|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[c+12>>2]=k[d+12>>2];k[c+16>>2]=k[d+16>>2];k[c+20>>2]=k[d+20>>2];k[c+24>>2]=k[d+24>>2];i[a+180>>0]=i[b+52>>0]|0;MM(a+184|0,b+56|0)|0;MM(a+196|0,b+68|0)|0;qm(a);Fl(a);Sg(a);i[a+236>>0]=0}return}function ro(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a+24|0;d=k[a+44>>2]|0;if((d|0)<(b|0)){aM(f);d=a+4|0;c=DT((k[d>>2]|0)+2060|0,b)|0;if((c|0)!=0?(e=k[c+16>>2]|0,(e|0)>0):0)c=e;else c=k[(k[d>>2]|0)+1444>>2]|0;Oq(f,c,b)|0;c=k[(k[d>>2]|0)+2056>>2]|0;d=a+64|0;if((c|0)<=((k[d>>2]|0)+b|0))while(1){Sb[k[(k[a>>2]|0)+92>>2]&511](a,c);if((c|0)<((k[d>>2]|0)+b|0))c=c+1|0;else break}}else if((d|0)>(b|0)){aM(f);d=a+4|0;e=DT((k[d>>2]|0)+2060|0,b)|0;if(!((e|0)!=0?(c=k[e+16>>2]|0,(c|0)>0):0))c=k[(k[d>>2]|0)+1444>>2]|0;Oq(f,c,b)|0}return}function so(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+16|0;e=g;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;d=Ta(3,0)|0;c=d;if(d){dZ(a,c)|0;wc(c);c=a+11|0;d=i[c>>0]|0;if(d<<24>>24<0)d=k[a+4>>2]|0;else f=5}else{c=a+11|0;d=0;f=5}if((f|0)==5)d=d&255;if(!d){IH(e,k[b+504>>2]|0);if((i[c>>0]|0)<0){i[k[a>>2]>>0]=0;k[a+4>>2]=0}else{i[a>>0]=0;i[c>>0]=0}Qm(a,0);k[a>>2]=k[e>>2];k[a+4>>2]=k[e+4>>2];k[a+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;p1(e);if((i[c>>0]|0)<0)a=k[a>>2]|0;Ta(4,a|0)|0}r=g;return}function to(a,b){a=a|0;b=b|0;var c=0;switch((j[b+8>>1]&255)<<24>>24){case 0:{k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,115628,0);break}case 4:{c=k[b>>2]|0;c=(c|0)==0?115628:c;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,c,iC(c)|0);break}case 5:{c=(i[b>>0]|0)!=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,c?108754:108748,c?4:5);break}case 1:{c=b;tx(a,k[c>>2]|0,k[c+4>>2]|0);break}case 2:{c=b;cD(a,k[c>>2]|0,k[c+4>>2]|0);break}case 3:{Gj(a,+p[b>>3]);break}default:{a=666;b=102761;c=a+34|0;do{i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0}while((a|0)<(c|0));Ib(123)}}return}function uo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=b&255;d=(c|0)!=0;a:do if(d&(a&3|0)!=0){e=b&255;while(1){if((i[a>>0]|0)==e<<24>>24){g=6;break a}a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){g=5;break}}}else g=5;while(0);if((g|0)==5)if(d)g=6;else c=0;b:do if((g|0)==6){e=b&255;if((i[a>>0]|0)!=e<<24>>24){d=$(f,16843009)|0;c:do if(c>>>0>3)while(1){f=k[a>>2]^d;if((f&-2139062144^-2139062144)&f+-16843009|0)break;a=a+4|0;c=c+-4|0;if(c>>>0<=3){g=11;break c}}else g=11;while(0);if((g|0)==11)if(!c){c=0;break}while(1){if((i[a>>0]|0)==e<<24>>24)break b;a=a+1|0;c=c+-1|0;if(!c){c=0;break}}}}while(0);return (c|0?a:0)|0}function vo(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var j=0;h=r;r=r+160|0;g=h;if(!(Bv(a,d,e)|0)){if((k[2783]|0)<4){Qd(g,74588,399,3,0,0,0);Tn(Tn(g,74629,15)|0,74645,66)|0;hi(g)}}else{g=a+370|0;if(i[g>>0]|0){e=k[a+288>>2]|0;Wb[k[(k[e>>2]|0)+24>>2]&3](e,f,1);i[g>>0]=0}g=a+372|0;if(i[g>>0]|0?(i[g>>0]=0,j=a+376|0,+p[j>>3]<f):0){p[j>>3]=f;Pb[k[(k[a>>2]|0)+176>>2]&15](a,f)}j=k[a+288>>2]|0;Qb[k[(k[j>>2]|0)+16>>2]&15](j,b,c,d,1)}r=h;return}function wo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=r;r=r+16|0;f=i;h=a+4|0;k[a>>2]=1972;k[h>>2]=2e3;g=a+8|0;k[a+12>>2]=0;k[a+16>>2]=0;k[g>>2]=a+12;c=k[b+8>>2]|0;e=b+12|0;if((c|0)==(e|0))c=2e3;else{d=c;while(1){c=d+16|0;j=k[c>>2]|0;fc[k[(k[j>>2]|0)+12>>2]&255](j,b,a);vm(f,g,c,c);c=k[d+4>>2]|0;if(!c)while(1){c=k[d+8>>2]|0;if((k[c>>2]|0)==(d|0))break;else d=c}else while(1){d=k[c>>2]|0;if(!d)break;else c=d}if((c|0)==(e|0))break;else d=c}c=k[h>>2]|0}Rb[k[c+12>>2]&2047](h);r=i;return}function xo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;e=a+2008|0;d=i[b+11>>0]|0;h=d<<24>>24<0;d=d&255;j=h?k[b+4>>2]|0:d;g=i[e+11>>0]|0;c=g<<24>>24<0;a:do if((j|0)==((c?k[a+2012>>2]|0:g&255)|0)){f=k[b>>2]|0;g=h?f:b;c=c?k[e>>2]|0:e;e=(j|0)==0;if(h){if(e){c=1;break}if(!(EI(g,c,j)|0)){c=1;break}else{l=9;break}}if(!e)if((f&255)<<24>>24==(i[c>>0]|0)){e=b;while(1){d=d+-1|0;e=e+1|0;if(!d){c=1;break a}c=c+1|0;if((i[e>>0]|0)!=(i[c>>0]|0)){l=9;break}}}else l=9;else c=1}else l=9;while(0);if((l|0)==9)c=(bn(a+424|0,b)|0)!=0;return c|0}function yo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+48|0;f=l+16|0;e=l;d=l+32|0;k[d>>2]=b;g=d+4|0;j=a+48|0;m=k[j>>2]|0;k[g>>2]=c-((m|0)!=0&1);h=a+44|0;k[d+8>>2]=k[h>>2];k[d+12>>2]=m;if(!(k[27499]|0)){k[f>>2]=k[a+60>>2];k[f+4>>2]=d;k[f+8>>2]=2;d=y1(Jb(145,f|0)|0)|0}else{Bb(1302,a|0);k[e>>2]=k[a+60>>2];k[e+4>>2]=d;k[e+8>>2]=2;d=y1(Jb(145,e|0)|0)|0;Ha(0)}if((d|0)>=1){g=k[g>>2]|0;if(d>>>0>g>>>0){e=k[h>>2]|0;f=a+4|0;k[f>>2]=e;k[a+8>>2]=e+(d-g);if(!(k[j>>2]|0))d=c;else{k[f>>2]=e+1;i[b+(c+-1)>>0]=i[e>>0]|0;d=c}}}else{k[a>>2]=k[a>>2]|d&48^16;k[a+8>>2]=0;k[a+4>>2]=0}r=l;return d|0}function zo(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0;j=a+4|0;m=k[j>>2]|0;g=m+1|0;k[j>>2]=g;i=k[a>>2]|0;f=l[(k[i>>2]|0)+m>>0]|0;e=m+2|0;k[j>>2]=e;g=l[(k[i>>2]|0)+g>>0]|0;h=m+3|0;k[j>>2]=h;e=l[(k[i>>2]|0)+e>>0]|0;d=m+4|0;k[j>>2]=d;h=l[(k[i>>2]|0)+h>>0]|0;c=m+5|0;k[j>>2]=c;d=l[(k[i>>2]|0)+d>>0]|0;b=m+6|0;k[j>>2]=b;c=l[(k[i>>2]|0)+c>>0]|0;a=m+7|0;k[j>>2]=a;b=l[(k[i>>2]|0)+b>>0]|0;k[j>>2]=m+8;a=l[(k[i>>2]|0)+a>>0]|0;f=BZ(f|0,0,56)|0;i=M;g=BZ(g|0,0,48)|0;i=M|i;e=BZ(e|0,0,40)|0;h=i|M|h;d=BZ(d|0,0,24)|0;h=h|M;c=BZ(c|0,0,16)|0;h=h|M;b=BZ(b|0,0,8)|0;M=h|M;return g|f|e|d|c|b|a|0}function Ao(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+176|0;b=e+156|0;d=e;if((X9(k[c>>2]|0)|0)!=200){if((k[2783]|0)<4){Qd(d,46077,118,3,0,0,0);b=Tn(Tn(d,46107,15)|0,46123,32)|0;Mn(b,X9(k[c>>2]|0)|0)|0;hi(d)}}else{KJ(b,k[c>>2]|0);JI(a,b);p1(b)}b=a+56|0;d=k[b>>2]|0;k[b>>2]=0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=0;r=e;return}function Bo(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;d=i+4|0;e=i;f=a+4|0;Rb[k[(k[f>>2]|0)+8>>2]&2047](f);g=a+8|0;b=k[g>>2]|0;h=a+12|0;if((b|0)!=(h|0)){do{c=k[b+16>>2]|0;Sb[k[(k[c>>2]|0)+8>>2]&511](c,a);c=k[b+4>>2]|0;if(!c)while(1){c=k[b+8>>2]|0;if((k[c>>2]|0)==(b|0)){b=c;break}else b=c}else{b=c;while(1){c=k[b>>2]|0;if(!c)break;else b=c}}}while((b|0)!=(h|0));b=k[g>>2]|0}if((b|0)!=(h|0))do{k[e>>2]=b;k[d>>2]=k[e>>2];b=Rz(g,d)|0}while((b|0)!=(h|0));Rb[k[(k[f>>2]|0)+12>>2]&2047](f);r=i;return}function Co(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;g=r;r=r+160|0;f=g;c=a+440|0;yb(96,k[c>>2]|0,k[a+640>>2]|0,k[a+644>>2]|0)|0;c=k[c>>2]|0;if((c|0)==-1)c=0;else c=Ta(113,c|0)|0;d=a+648|0;e=a+656|0;if(i[e>>0]|0){h=a+652|0;j=Ta(0,k[h>>2]|0)|0;k[h>>2]=j;i[e>>0]=0}do if((b|0)==0|(c|0)>0){if((b|0)<=99){if(!(tB(d,c|0?20:0)|0))break;k[a+660>>2]=b+1;break}if((k[2783]|0)<5){Qd(f,75946,798,4,0,0,0);Tn(f,81609,73)|0;hi(f)}dF(a+668|0)}else dF(a+668|0);while(0);r=g;return}function Do(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=a+88|0;a:do if(k[j>>2]|0){c=a+60|0;d=a+92|0;e=a+72|0;f=a+84|0;g=a+68|0;while(1){b=a4(k[c>>2]|0)|0;if(b>>>0>=(k[d>>2]|0)>>>0)break;l=k[f>>2]|0;l=k[(k[(k[e>>2]|0)+(l>>>10<<2)>>2]|0)+((l&1023)<<2)>>2]|0;if(!(gX(k[c>>2]|0,l)|0)){h=5;break}QJ(g);if(l|0){b=k[l>>2]|0;if(b|0)wba(b);zba(l)}if(!(k[j>>2]|0))break a}if(((h|0)==5?(i[a+56>>0]|0)==0:0)?(Vi(a,l),l|0):0){b=k[l>>2]|0;if(b|0)wba(b);zba(l)}if(k[j>>2]|0)tB(a+96|0,5)|0}while(0);return}function Eo(a,b){a=a|0;b=b|0;var c=0,d=0;ar(a,b);d=Tn(110732,68388,12)|0;d=Tn(Ln(d,k[a+52>>2]|0)|0,68401,13)|0;Tn(Ln(d,k[a+56>>2]|0)|0,68415,13)|0;d=a+60|0;c=a+64|0;b=k[d>>2]|0;if((k[c>>2]|0)!=(b|0)){a=0;do{Tn(Ln(110732,k[b+(a<<2)>>2]|0)|0,103359,2)|0;a=a+1|0;b=k[d>>2]|0}while(a>>>0<(k[c>>2]|0)-b>>2>>>0)}Tn(110732,68429,2)|0;return}function Fo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a+20>>2]=b;e=a+48|0;AZ(k[e>>2]|0);eY(k[e>>2]|0,(i[b+36>>0]|0)!=0);fA(k[e>>2]|0,k[b+16>>2]|0,b+20|0);c=k[b+40>>2]|0;d=b+44|0;a=k[e>>2]|0;if((c|0)!=(d|0))do{BP(a,c+16|0,c+28|0);a=k[c+4>>2]|0;if(!a){a=c;while(1){c=k[a+8>>2]|0;if((k[c>>2]|0)==(a|0))break;else a=c}}else while(1){c=k[a>>2]|0;if(!c){c=a;break}else a=c}a=k[e>>2]|0}while((c|0)!=(d|0));H2(a,k[b+32>>2]|0);tP(k[e>>2]|0);return}function Go(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;Bt(a,b);f=a+52|0;e=a+56|0;c=(k[e>>2]|0)-(k[f>>2]|0)>>3;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[f>>2]|0;if((k[e>>2]|0)!=(a|0)){d=0;do{h=k[a+(d<<3)>>2]|0;i[c>>0]=h>>>24;i[(k[b>>2]|0)+1>>0]=h>>>16;i[(k[b>>2]|0)+2>>0]=h>>>8;i[(k[b>>2]|0)+3>>0]=h;h=(k[b>>2]|0)+4|0;k[b>>2]=h;g=k[(k[f>>2]|0)+(d<<3)+4>>2]|0;i[h>>0]=g>>>24;i[(k[b>>2]|0)+1>>0]=g>>>16;i[(k[b>>2]|0)+2>>0]=g>>>8;i[(k[b>>2]|0)+3>>0]=g;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=d+1|0;a=k[f>>2]|0}while(d>>>0<(k[e>>2]|0)-a>>3>>>0)}return}function Ho(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=r;r=r+16|0;d=a;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,56364,2);VJ(b,d,c)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49665,4);VJ(b,d,c+12|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49928,11);VJ(b,d,c+24|0)|0;p1(d);r=a;return 1}function Io(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=r;r=r+160|0;b=c;if((k[2783]|0)<3){Qd(b,43163,348,2,0,0,0);Tn(b,43215,14)|0;hi(b)}do if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0){if(Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0?(b=a+144|0,!((k[b>>2]|0)==0&(k[b+4>>2]|0)==0)):0)break;b=a+136|0;d=b;if(!((k[d>>2]|0)==0&(k[d+4>>2]|0)==0)){d=_J()|0;f=b;f=n_(d|0,M|0,k[f>>2]|0,k[f+4>>2]|0)|0;d=a+96|0;e=d;e=y0(f|0,M|0,k[e>>2]|0,k[e+4>>2]|0)|0;k[d>>2]=e;k[d+4>>2]=M;d=b;k[d>>2]=0;k[d+4>>2]=0}}while(0);r$(a+12|0);r=c;return}function Jo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;Bt(a,b);d=a+52|0;g=k[d>>2]|0;i[k[b>>2]>>0]=g>>>24;i[(k[b>>2]|0)+1>>0]=g>>>16;i[(k[b>>2]|0)+2>>0]=g>>>8;i[(k[b>>2]|0)+3>>0]=g;g=(k[b>>2]|0)+4|0;k[b>>2]=g;f=a+60|0;e=a+64|0;a=(k[e>>2]|0)-(k[f>>2]|0)>>2;i[g>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;a=(k[b>>2]|0)+4|0;k[b>>2]=a;if((k[d>>2]|0)==0?(c=k[f>>2]|0,(k[e>>2]|0)!=(c|0)):0){d=0;do{g=k[c+(d<<2)>>2]|0;i[a>>0]=g>>>24;i[(k[b>>2]|0)+1>>0]=g>>>16;i[(k[b>>2]|0)+2>>0]=g>>>8;i[(k[b>>2]|0)+3>>0]=g;a=(k[b>>2]|0)+4|0;k[b>>2]=a;d=d+1|0;c=k[f>>2]|0}while(d>>>0<(k[e>>2]|0)-c>>2>>>0)}return}function Ko(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+16|0;d=g+8|0;e=g;h=i[b+11>>0]|0;a:do if(((h<<24>>24<0?k[b+4>>2]|0:h&255)|0)!=0?(f=(k[a+8>>2]|0)+24|0,k[d>>2]=b,gq(e,f,b,113530,d,g+12|0),f=k[e>>2]|0,c=k[f+28>>2]|0,f=k[f+32>>2]|0,(c|0)!=(f|0)):0)while(1){a=i[c+4+11>>0]|0;if(a<<24>>24<0)a=k[c+8>>2]|0;else a=a&255;c=c+56|0;if(a|0){a=1;break a}if((c|0)==(f|0)){a=0;break}}else a=0;while(0);r=g;return a|0}function Lo(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;do if(b)if(h){h=a+60|0;b=cW(32)|0;k[b+8>>2]=g;g=b+16|0;k[g>>2]=c;k[g+4>>2]=d;g=b+24|0;k[g>>2]=e;k[g+4>>2]=f;k[b+4>>2]=h;g=k[h>>2]|0;k[b>>2]=g;k[g+4>>2]=b;k[h>>2]=b;h=a+68|0;k[h>>2]=(k[h>>2]|0)+1;AE(a+20|0,a);break}else{AE(a+40|0,a);break}else if(h){h=a+72|0;b=cW(32)|0;k[b+8>>2]=g;g=b+16|0;k[g>>2]=c;k[g+4>>2]=d;g=b+24|0;k[g>>2]=e;k[g+4>>2]=f;k[b+4>>2]=h;g=k[h>>2]|0;k[b>>2]=g;k[g+4>>2]=b;k[h>>2]=b;h=a+80|0;k[h>>2]=(k[h>>2]|0)+1}while(0);return}function Mo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;mO(a,b,0);mO(a+16|0,b,0);c=k[a+32>>2]|0;if(!(c>>>0>=b>>>0?c>>>0<((x9(a)|0)+b|0)>>>0:0))wQ(a,b);g=a+36|0;c=k[a+40>>2]|0;a=k[a+44>>2]|0;d=a+c|0;if(c>>>0>b>>>0){e=a+b|0;c=e>>>0<c>>>0?c:e;if(c>>>0<d>>>0)do{if(DT(g,c)|0?(f=DT(g,c)|0,f|0):0){dG(f);zba(f)}c=c+1|0}while(c>>>0<d>>>0)}else{a=d>>>0<b>>>0?d:b;if(c>>>0<a>>>0)do{if(DT(g,c)|0?(e=DT(g,c)|0,e|0):0){dG(e);zba(e)}c=c+1|0}while(c>>>0<a>>>0)}Gt(g,b);return}function No(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=12948;b=a+4|0;k[b>>2]=12984;c=a+20|0;k[c>>2]=13008;d=a+112|0;e=k[d>>2]|0;if(e|0){Rb[k[(k[e>>2]|0)+4>>2]&2047](e);k[d>>2]=0}p1(a+140|0);F4(a+120|0);qL(a+96|0);qL(a+80|0);p1(a+64|0);d=a+56|0;k[d>>2]=10844;aE(d);d=a+36|0;k[d>>2]=13024;e=a+40|0;k[e>>2]=13048;up(d);$H(a+44|0);k[e>>2]=2024;eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function Oo(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=a+4|0;b=k[g>>2]|0;i=a+16|0;c=k[i>>2]|0;d=b+(c>>>9<<2)|0;h=a+8|0;if((k[h>>2]|0)==(b|0)){f=0;e=a+20|0;b=0}else{e=a+20|0;f=c+(k[e>>2]|0)|0;f=(k[b+(f>>>9<<2)>>2]|0)+((f&511)<<3)|0;b=(k[d>>2]|0)+((c&511)<<3)|0}a=d;a:while(1){do{if((b|0)==(f|0))break a;Ta(20,k[b>>2]|0)|0;b=b+8|0}while((b-(k[a>>2]|0)|0)!=4096);b=a+4|0;a=b;b=k[b>>2]|0}k[e>>2]=0;a=k[g>>2]|0;b=(k[h>>2]|0)-a>>2;if(b>>>0>2)do{zba(k[a>>2]|0);b=(k[g>>2]|0)+4|0;k[g>>2]=b;a=b;b=(k[h>>2]|0)-a>>2}while(b>>>0>2);switch(b|0){case 1:{k[i>>2]=256;break}case 2:{k[i>>2]=512;break}default:{}}return}function Po(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+224|0;e=j;f=j+28|0;g=j+184|0;h=j+24|0;i=k[d>>2]|0;zX(e,b,c);if((k[2783]|0)<3){Qd(f,43163,289,2,0,0,0);Tn(Mn(Tn(Ln(Tn(f,43193,10)|0,i)|0,67767,4)|0,c)|0,43204,10)|0;hi(f)}k[h>>2]=0;jJ(g,1,i,c,h);k[g+16>>2]=k[d+4>>2];k[k[g>>2]>>2]=e;Pn(a,g);k[k[g>>2]>>2]=0;zba(d);dG(g);J8(e);r=j;return}function Qo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=r;r=r+160|0;c=d;if((k[2783]|0)<4){Qd(c,52211,1028,3,0,0,0);h=Tn(Mn(Tn(c,53043,10)|0,b)|0,53054,21)|0;g=a+8|0;e=i[g+11>>0]|0;f=e<<24>>24<0;Tn(Tn(h,f?k[g>>2]|0:g,f?k[a+12>>2]|0:e&255)|0,68623,1)|0;hi(c)}Cp(a,b)|0;MJ(k[a+116>>2]|0,b,((b|0)<0)<<31>>31);TD(a,b);ko(k[a+4>>2]|0,a,b);r=d;return}function Ro(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0,n=0;if((1073741806-b|0)>>>0<c>>>0)x5(a);l=a+8|0;if((i[l+3>>0]|0)<0)n=k[a>>2]|0;else n=a;if(b>>>0<536870887){c=c+b|0;j=b<<1;c=c>>>0<j>>>0?j:c;c=c>>>0<2?2:c+4&-4;if(c>>>0>1073741823)Ra(109031,109068,1734,109109);else m=c}else m=1073741807;j=cW(m<<2)|0;if(e|0)j1(j,n,e)|0;if(g|0)j1(j+(e<<2)|0,h,g)|0;c=d-f|0;d=c-e|0;if(d|0)j1(j+(e<<2)+(g<<2)|0,n+(e<<2)+(f<<2)|0,d)|0;if((b|0)!=1)zba(n);k[a>>2]=j;k[l>>2]=m|-2147483648;g=c+g|0;k[a+4>>2]=g;k[j+(g<<2)>>2]=0;return}function So(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{f=d+-12|0;e=c;c=c+-12|0;k[f>>2]=0;j=d+-8|0;k[j>>2]=0;k[d+-4>>2]=0;k[f>>2]=k[c>>2];f=e+-8|0;k[j>>2]=k[f>>2];e=e+-4|0;k[d+-4>>2]=k[e>>2];k[e>>2]=0;k[f>>2]=0;k[c>>2]=0;d=(k[g>>2]|0)+-12|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;j=b+8|0;h=k[i>>2]|0;k[i>>2]=k[j>>2];k[j>>2]=h;a=a+8|0;j=b+12|0;i=k[a>>2]|0;k[a>>2]=k[j>>2];k[j>>2]=i;k[b>>2]=k[e>>2];return}function To(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0;m=r;r=r+32|0;j=m;g=a+8|0;h=k[g>>2]|0;p[a+40>>3]=+p[a+32>>3]+ +(h|0);if(c>>>0<8)c=0;else{c=k[a+4>>2]|0;f=c+h|0;d=h+4|0;k[g>>2]=d;f=(l[f+1>>0]|0)<<16|(l[f>>0]|0)<<24|(l[f+2>>0]|0)<<8|(l[f+3>>0]|0);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;i[j+16>>0]=0;d=c+d|0;k[j>>2]=l[d>>0]|l[d+1>>0]<<8|l[d+2>>0]<<16|l[d+3>>0]<<24;d=h+8|0;k[g>>2]=d;if(!(eE(j,69545,4)|0)){e=j;c=c+d|0;d=e+16|0;do{i[e>>0]=i[c>>0]|0;e=e+1|0;c=c+1|0}while((e|0)<(d|0));k[g>>2]=h+24;c=24}else c=8;c=(Un(a,b,f,j,f-c|0)|0)+c|0}r=m;return c|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=r;r=r+16|0;g=h;f=ak(b,g,c)|0;d=k[f>>2]|0;if(!d){d=cW(40)|0;c=d+16|0;e=k[e>>2]|0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];k[c+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=d+28|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wF(b,k[g>>2]|0,f,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=h;return}function Vo(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;p=k[a+712>>2]|0;o=k[a+716>>2]|0;c=o;d=p;a:do if((p|0)!=(o|0)?(b=k[a+1168>>2]|0,(b|0)!=0):0){n=k[b+96>>2]|0;l=n+36|0;o=i[l+11>>0]|0;m=o<<24>>24<0;n=n+40|0;o=o&255;f=c-d>>2;a=0;while(1){b=k[p+(a<<2)>>2]|0;g=b+36|0;if(m)j=k[n>>2]|0;else j=o;c=i[g+11>>0]|0;h=c<<24>>24<0;c=h?k[b+40>>2]|0:c&255;if(m)e=k[l>>2]|0;else e=l;d=c>>>0<j>>>0;b=d?c:j;if(!((b|0)!=0?(EI(e,h?k[g>>2]|0:g,b)|0)!=0:0))q=10;if((q|0)==10?(q=0,j>>>0>=c>>>0&(d^1)):0)break a;a=a+1|0;if(a>>>0>=f>>>0){a=-1;break}}}else a=-1;while(0);return a|0}function Wo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=r;r=r+16|0;d=a;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49827,1);RT(b,d,c)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49829,1);TB(b,d,c+8|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49831,1);TB(b,d,c+12|0)|0;p1(d);r=a;return 1}function Xo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=b+8|0;h=eH(a,k[h>>2]|0,k[h+4>>2]|0)|0;b=((h|0)<0)<<31>>31;d=a+116|0;mO(k[d>>2]|0,h,b);c=k[a+120>>2]|0;if(c|0){g=k[(k[a+4>>2]|0)+1576>>2]|0;g=A5(h|0,b|0,g|0,((g|0)<0)<<31>>31|0)|0;mO(c,g,M)}e=a+144|0;f=k[e>>2]|0;g=((f|0)<0)<<31>>31;b=k[d>>2]|0;d=b;c=k[d>>2]|0;d=k[d+4>>2]|0;if(!(!(g>>>0<d>>>0|(g|0)==(d|0)&f>>>0<c>>>0)?(d=y0(x9(b)|0,0,c|0,d|0)|0,c=M,g>>>0<c>>>0|(g|0)==(c|0)&f>>>0<d>>>0):0))k[e>>2]=h;b=k[a+124>>2]|0;if(b|0)Tt(b,h);ku(a+216|0,h);Qaa(k[a+4>>2]|0,a);return}function Yo(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=r;r=r+16|0;g=h;iI(g,b);if(e|0)Pp(e+60|0,g);if(d|0)Pp(d+92|0,g);if(c|0)Pp(c+24|0,g);Pp(f+52|0,g);no(a,f,g);p1(g);r=h;return}function Zo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=KZ(b|0,c|0,56)|0;d=a+4|0;e=k[d>>2]|0;k[d>>2]=e+1;i[(k[k[a>>2]>>2]|0)+e>>0]=f;e=KZ(b|0,c|0,48)|0;f=k[d>>2]|0;k[d>>2]=f+1;i[(k[k[a>>2]>>2]|0)+f>>0]=e;f=KZ(b|0,c|0,40)|0;e=k[d>>2]|0;k[d>>2]=e+1;i[(k[k[a>>2]>>2]|0)+e>>0]=f;e=k[d>>2]|0;k[d>>2]=e+1;i[(k[k[a>>2]>>2]|0)+e>>0]=c;e=KZ(b|0,c|0,24)|0;f=k[d>>2]|0;k[d>>2]=f+1;i[(k[k[a>>2]>>2]|0)+f>>0]=e;f=KZ(b|0,c|0,16)|0;e=k[d>>2]|0;k[d>>2]=e+1;i[(k[k[a>>2]>>2]|0)+e>>0]=f;e=KZ(b|0,c|0,8)|0;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=e;c=k[d>>2]|0;k[d>>2]=c+1;i[(k[k[a>>2]>>2]|0)+c>>0]=b;return}function _o(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;c=i[b+11>>0]|0;l=c<<24>>24<0;d=l?k[b>>2]|0:b;c=l?k[b+4>>2]|0:c&255;if(c>>>0<3)c=0;else{j=d+c|0;l=d;g=j;a:do if((c|0)>=3?(h=j+-2|0,(h|0)!=(d|0)):0){c=l;while(1){while(1){if((i[d>>0]|0)==58){e=46821;f=d;break}d=d+1|0;if((d|0)==(h|0)){c=g;break a}else c=d}do{e=e+1|0;if((e|0)==46824)break a;f=f+1|0}while((i[f>>0]|0)==(i[e>>0]|0));d=d+1|0;if((d|0)==(h|0)){c=g;break}else c=d}}else c=g;while(0);c=(c|0)==(j|0)?0:1-l+c|0}nD(a,b,c,-1,b);return}function $o(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;d=i+12|0;c=i+8|0;e=i+4|0;f=i;h=a+8|0;g=k[h>>2]|0;if(g>>>0<=b>>>0){if(g>>>0<b>>>0){b=b-g|0;e=cW(16)|0;k[e>>2]=0;p[e+8>>3]=0.0;c=e;d=b+-1|0;if(!d)d=1;else{do{f=cW(16)|0;p[f+8>>3]=0.0;g=c+4|0;k[g>>2]=f;k[f>>2]=c;c=k[g>>2]|0;d=d+-1|0}while((d|0)!=0);d=b}g=c;k[g+4>>2]=a;f=k[a>>2]|0;k[e>>2]=f;k[f+4>>2]=e;k[a>>2]=g;k[h>>2]=(k[h>>2]|0)+d}}else{h=qt(a,b)|0;k[e>>2]=h;k[f>>2]=a;k[c>>2]=k[e>>2];k[d>>2]=k[f>>2];vE(a,c,d)|0}r=i;return}function ap(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=r;r=r+32|0;c=e+16|0;d=e;if(!(i[a+133>>0]|0)){_I(k[a+100>>2]|0,k[(k[a+96>>2]|0)+16>>2]|0,b);mD(c,0);f=N6(c,56171)|0;nF(d,53076);GA(f,d)|0;Lv(d);f=N6(c,55007)|0;g=N6(f,55019)|0;Ix(d,b+12|0);GA(g,d)|0;Lv(d);f=N6(f,55023)|0;Ix(d,b);GA(f,d)|0;Lv(d);ph(a,c,a+8|0)|0;Lv(c)}r=e;return}function bp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;ar(a,b);Tn(110732,68495,26)|0;d=a+52|0;c=a+56|0;b=k[d>>2]|0;if((k[c>>2]|0)!=(b|0)){a=0;do{e=b;f=Tn(110732,68489,1)|0;f=Tn(Ln(f,k[e+(a<<3)>>2]|0)|0,103359,2)|0;Tn(Ln(f,k[e+(a<<3)+4>>2]|0)|0,68491,3)|0;a=a+1|0;b=k[d>>2]|0}while(a>>>0<(k[c>>2]|0)-b>>3>>>0)}Tn(110732,68429,2)|0;return}function cp(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a=ui(a+8|0,k[a+4>>2]|0)|0;c=a+8|0;b=i[c+11>>0]|0;if(b<<24>>24<0){a=k[a+12>>2]|0;c=k[c>>2]|0}else a=b&255;if(a>>>0<4)a=2;else{f=c+a|0;g=c;e=f;a:do if((a|0)>=4?(h=f+-3|0,(h|0)!=(c|0)):0){a=g;while(1){while(1){if((i[c>>0]|0)==109){b=50482;d=c;break}b=c+1|0;if((b|0)==(h|0)){a=e;break a}else{a=b;c=b}}do{b=b+1|0;if((b|0)==50486)break a;d=d+1|0}while((i[d>>0]|0)==(i[b>>0]|0));b=c+1|0;if((b|0)==(h|0)){a=e;break}else{a=b;c=b}}}else a=e;while(0);a=(a|0)==(f|0)|(a-g|0)==-1?2:1}return a|0}function dp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;f=b;e=a+8|0;m=e+3|0;d=i[m>>0]|0;if(d<<24>>24<0){l=k[a+4>>2]|0;e=(k[e>>2]&2147483647)+-1|0}else{l=d&255;e=1}j=c-f>>2;do if(j|0){if((e-l|0)>>>0<j>>>0){$r(a,e,l+j-e|0,l,l,0,0);d=i[m>>0]|0}h=d<<24>>24<0;if(h)g=k[a>>2]|0;else g=a;f=l+((c-f|0)>>>2)|0;e=g+(l<<2)|0;d=b;while(1){if((d|0)==(c|0))break;k[e>>2]=k[d>>2];e=e+4|0;d=d+4|0}k[g+(f<<2)>>2]=0;d=l+j|0;if(h){k[a+4>>2]=d;break}else{i[m>>0]=d;break}}while(0);return a|0}function ep(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0;j=i[a+11>>0]|0;h=j<<24>>24<0;g=a+4|0;e=k[g>>2]|0;j=j&255;do if((h?e:j)|0){if((b|0)!=(c|0)){e=c;f=b;while(1){e=e+-4|0;if(f>>>0>=e>>>0)break;m=k[f>>2]|0;k[f>>2]=k[e>>2];k[e>>2]=m;f=f+4|0}e=k[g>>2]|0}m=h?k[a>>2]|0:a;c=c+-4|0;a=m+(h?e:j)|0;e=m;while(1){f=i[e>>0]|0;g=f<<24>>24>0&f<<24>>24!=127;if(b>>>0>=c>>>0)break;if(g?(f<<24>>24|0)!=(k[b>>2]|0):0){l=10;break}b=b+4|0;e=(a-e|0)>1?e+1|0:e}if((l|0)==10){k[d>>2]=4;break}if(g?((k[c>>2]|0)+-1|0)>>>0>=f<<24>>24>>>0:0)k[d>>2]=4}while(0);return}function fp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0;g=r;r=r+64|0;f=g;HA(f,b,c,d);n=f+44|0;k[n>>2]=0;j=f+48|0;k[j>>2]=0;k[f>>2]=15168;d=k[a+4>>2]|0;e=a+8|0;b=k[e>>2]|0;m=d+b|0;c=b+4|0;k[e>>2]=c;h=i[m>>0]|0;m=(l[m+2>>0]|0)<<8|(l[m+1>>0]|0)<<16|(l[m+3>>0]|0);k[n>>2]=h&255;k[j>>2]=m;if(h<<24>>24==1){b=Ay(a)|0;e=12;c=M}else{c=d+c|0;k[e>>2]=b+8;e=8;b=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);c=0}n=f+56|0;k[n>>2]=b;k[n+4>>2]=c;n=k[a+28>>2]|0;hc[k[k[n>>2]>>2]&7](n,f,+p[a+40>>3]);O3(f);r=g;return e|0}function gp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0;g=r;r=r+64|0;f=g;HA(f,b,c,d);n=f+44|0;k[n>>2]=0;j=f+48|0;k[j>>2]=0;k[f>>2]=15616;d=k[a+4>>2]|0;e=a+8|0;b=k[e>>2]|0;m=d+b|0;c=b+4|0;k[e>>2]=c;h=i[m>>0]|0;m=(l[m+2>>0]|0)<<8|(l[m+1>>0]|0)<<16|(l[m+3>>0]|0);k[n>>2]=h&255;k[j>>2]=m;if(!(h<<24>>24)){c=d+c|0;k[e>>2]=b+8;e=8;b=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);c=0}else{b=Ay(a)|0;e=12;c=M}n=f+56|0;k[n>>2]=b;k[n+4>>2]=c;n=k[a+28>>2]|0;hc[k[k[n>>2]>>2]&7](n,f,+p[a+40>>3]);O3(f);r=g;return e|0}function hp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=r;r=r+16|0;e=g+12|0;f=g;k[e>>2]=0;d=La(33,k[a>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0,e|0,d&1|0)|0;b=d;if(!d)a=0;else{a=k[e>>2]|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,b,a);a=c+11|0;if((i[a>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;a=c}else{i[c>>0]=0;i[a>>0]=0;a=c}Qm(c,0);k[a>>2]=k[f>>2];k[a+4>>2]=k[f+4>>2];k[a+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;p1(f);wc(b);a=1}r=g;return a|0}function ip(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0,g=0;f=r;r=r+160|0;d=f;g=a+116|0;e=k[g>>2]|0;k[g>>2]=b;AE(a+36|0,b);if((k[b+48>>2]|0)==1){c=+rh(a);if(c<=0.0)if((k[2783]|0)<4){Qd(d,49969,132,3,0,0,0);Tn(d,49996,30)|0;hi(d);c=2.0}else c=2.0;c=c*1.0e3;tB(a+96|0,~~(c>1296.0e6?1296.0e6:c))|0}if(e|0){p1(e+68|0);p1(e+56|0);p1(e+12|0);nI(e);zba(e)}r=f;return}function jp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0;e=r;r=r+64|0;f=e;HA(f,b,c,d);k[f>>2]=15896;c=f+44|0;k[c>>2]=0;i=f+48|0;k[i>>2]=0;d=f+52|0;k[d>>2]=0;h=k[a+4>>2]|0;b=a+8|0;g=k[b>>2]|0;m=h+g|0;j=g+4|0;k[b>>2]=j;k[c>>2]=(l[m+1>>0]|0)<<16|(l[m>>0]|0)<<24|(l[m+2>>0]|0)<<8|(l[m+3>>0]|0);j=h+j|0;c=g+8|0;k[b>>2]=c;k[i>>2]=(l[j+1>>0]|0)<<16|(l[j>>0]|0)<<24|(l[j+2>>0]|0)<<8|(l[j+3>>0]|0);c=h+c|0;k[b>>2]=g+12;k[d>>2]=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);d=k[a+28>>2]|0;hc[k[k[d>>2]>>2]&7](d,f,+p[a+40>>3]);O3(f);r=e;return 12}function kp(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=14084;d=a+4|0;k[d>>2]=14120;e=a+20|0;k[e>>2]=14144;b=a+112|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}b=k[a+116>>2]|0;if(b|0){JE(b);zba(b)}lA(a+120|0);qL(a+96|0);qL(a+80|0);p1(a+64|0);p1(a+52|0);c=a+44|0;k[c>>2]=10844;aE(c);c=a+36|0;k[c>>2]=14160;aE(c);eU(e);k[a>>2]=1972;k[d>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[d>>2]=2024;return}function lp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;Bt(a,b);c=k[b>>2]|0;d=a+52|0;e=c+16|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));c=(k[b>>2]|0)+16|0;k[b>>2]=c;if(k[a+44>>2]|0){d=a+68|0;e=k[d>>2]|0;i[c>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;e=(k[b>>2]|0)+4|0;k[b>>2]=e;c=k[d>>2]<<4;fE(e|0,k[a+72>>2]|0,c|0)|0;c=(k[b>>2]|0)+c|0;k[b>>2]=c}e=a+76|0;d=k[e>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;e=k[e>>2]|0;fE(d|0,k[a+80>>2]|0,e|0)|0;k[b>>2]=(k[b>>2]|0)+e;return}function mp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+48|0;d=g+36|0;e=g;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;f=e;h=f+36|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(h|0));MM(e,c)|0;qn(d,e);h=NJ(k[a+4>>2]|0,d,0,b)|0;p1(e+24|0);p1(e+12|0);p1(e);rB(d);r=g;return h|0}function np(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+32|0;d=e;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49625,7);a=WA(b,d)|0;p1(d);if(a|0){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;MM(d,tz(a)|0)|0;MM(c+4|0,d)|0;b=d+12|0;MM(c+16|0,b)|0;i[c>>0]=1;p1(b);p1(d)}r=e;return}function op(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+32|0;b=h+16|0;c=h+8|0;f=h;g=cW(336)|0;xJ(g,a+84|0,k[a+100>>2]|0,k[a+96>>2]|0);d=a+124|0;e=k[d>>2]|0;k[d>>2]=0;if(e|0)Rb[k[(k[e>>2]|0)+12>>2]&2047](e);k[d>>2]=g;k[c>>2]=338;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];Fq(g+36|0,a,b)|0;g=(k[d>>2]|0)+44|0;k[f>>2]=49;k[f+4>>2]=0;k[b>>2]=k[f>>2];k[b+4>>2]=k[f+4>>2];dq(g,a+20|0,b)|0;BB(k[d>>2]|0);r=h;return}function pp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if(c&2048){i[a>>0]=43;a=a+1|0}if(c&1024){i[a>>0]=35;a=a+1|0}g=c&260;d=c>>>14;f=(g|0)==260;if(f)e=0;else{i[a>>0]=46;i[a+1>>0]=42;e=1;a=a+2|0}while(1){c=i[b>>0]|0;if(!(c<<24>>24))break;i[a>>0]=c;b=b+1|0;a=a+1|0}a:do switch(g&511){case 4:if(!(d&1)){i[a>>0]=102;break a}else{i[a>>0]=70;break a}case 256:if(!(d&1)){i[a>>0]=101;break a}else{i[a>>0]=69;break a}default:{c=(d&1|0)!=0;if(f)if(c){i[a>>0]=65;break a}else{i[a>>0]=97;break a}else if(c){i[a>>0]=71;break a}else{i[a>>0]=103;break a}}}while(0);return e|0}function qp(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+32|0;b=h+16|0;c=h+8|0;f=h;g=cW(156)|0;fo(g,a+84|0,k[a+100>>2]|0,k[a+96>>2]|0);d=a+104|0;e=k[d>>2]|0;k[d>>2]=0;if(e|0)Rb[k[(k[e>>2]|0)+12>>2]&2047](e);k[d>>2]=g;k[c>>2]=345;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];Dw(g+36|0,a,b);g=(k[d>>2]|0)+56|0;k[f>>2]=49;k[f+4>>2]=0;k[b>>2]=k[f>>2];k[b+4>>2]=k[f+4>>2];dq(g,a+20|0,b)|0;fC(k[d>>2]|0);r=h;return}function rp(a){a=a|0;var b=0,c=0;if(!(i[113532]|0)){c=_J()|0;b=109280;k[b>>2]=c;k[b+4>>2]=M;i[113532]=1}b=k[27320]|0;b=Vaa(RK()|0,b)|0;if(!(i[113533]|0)){c=bb(0)|0;k[27492]=c;i[113533]=1}c=Tn(a,103290,1)|0;k[c+(k[(k[c>>2]|0)+-12>>2]|0)+76>>2]=48;k[c+(k[(k[c>>2]|0)+-12>>2]|0)+12>>2]=3;c=Tn(Ln(c,(b>>>0)/1e3|0)|0,69224,1)|0;k[c+(k[(k[c>>2]|0)+-12>>2]|0)+12>>2]=3;c=Ln(c,(b>>>0)%1e3|0)|0;k[c+(k[(k[c>>2]|0)+-12>>2]|0)+76>>2]=32;Tn(c,68429,2)|0;return}function sp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;j=m+4|0;l=m;h=a+8|0;h=Ub[k[(k[h>>2]|0)+8>>2]&511](h)|0;a=i[h+8+3>>0]|0;if(a<<24>>24<0)g=k[h+4>>2]|0;else g=a&255;a=i[h+20+3>>0]|0;if(a<<24>>24<0)a=k[h+16>>2]|0;else a=a&255;do if((g|0)!=(0-a|0)){k[l>>2]=k[d>>2];k[j>>2]=k[l>>2];a=(zd(c,j,h,h+24|0,f,e,0)|0)-h|0;g=k[b>>2]|0;if((g|0)==12&(a|0)==0){k[b>>2]=0;break}if((g|0)<12&(a|0)==12)k[b>>2]=g+12}else k[e>>2]=k[e>>2]|4;while(0);r=m;return}function tp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;g=a+36|0;c=k[g>>2]|0;a=k[c+16>>2]|0;c=k[c+12>>2]|0;e=c;a:do if((a|0)==(c|0))f=5;else{d=a-c>>4;c=0;while(1){a=e+(c<<4)|0;c=c+1|0;if((k[a>>2]|0)==(b|0))break a;if(c>>>0>=d>>>0){f=5;break}}}while(0);if((f|0)==5){M3(h);k[h>>2]=b;a=k[g>>2]|0;c=a+16|0;d=k[c>>2]|0;if((d|0)==(k[a+20>>2]|0))Kp(a+12|0,h);else{k[d>>2]=b;yD(d+4|0,h+4|0);k[c>>2]=(k[c>>2]|0)+16}a=(k[(k[g>>2]|0)+16>>2]|0)+-16|0;m2(h)}r=i;return a|0}function up(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;m=r;r=r+16|0;f=m+12|0;e=m+8|0;g=m+4|0;h=m;i=a+4|0;Rb[k[(k[i>>2]|0)+8>>2]&2047](i);j=a+8|0;d=a+12|0;l=j;b=k[d>>2]|0;c=b;if((c|0)!=(j|0)){do{b=b+8|0;n=k[b>>2]|0;n=Ub[k[(k[n>>2]|0)+8>>2]&511](n)|0;Sb[k[(k[n>>2]|0)+4>>2]&511](n,a);b=k[b>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[c+4>>2]|0;c=b}while((c|0)!=(j|0));b=k[d>>2]|0}k[g>>2]=b;k[h>>2]=l;k[e>>2]=k[g>>2];k[f>>2]=k[h>>2];vE(j,e,f)|0;Rb[k[(k[i>>2]|0)+12>>2]&2047](i);r=m;return}function vp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;j=m+4|0;l=m;h=a+8|0;h=Ub[k[(k[h>>2]|0)+8>>2]&511](h)|0;a=i[h+11>>0]|0;if(a<<24>>24<0)g=k[h+4>>2]|0;else g=a&255;a=i[h+12+11>>0]|0;if(a<<24>>24<0)a=k[h+16>>2]|0;else a=a&255;do if((g|0)!=(0-a|0)){k[l>>2]=k[d>>2];k[j>>2]=k[l>>2];a=(Td(c,j,h,h+24|0,f,e,0)|0)-h|0;g=k[b>>2]|0;if((g|0)==12&(a|0)==0){k[b>>2]=0;break}if((g|0)<12&(a|0)==12)k[b>>2]=g+12}else k[e>>2]=k[e>>2]|4;while(0);r=m;return}function wp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=r;r=r+16|0;g=h;f=ak(b,g,c)|0;d=k[f>>2]|0;if(!d){d=cW(32)|0;c=d+16|0;e=k[e>>2]|0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];k[c+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[d+28>>2]=0;wF(b,k[g>>2]|0,f,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=h;return}function xp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+32|0;j=l;do if((((i[a+130>>0]|0?(i[a+133>>0]|0)==0:0)?(g=a+120|0,d=k[g>>2]|0,d|0):0)?(f=d,e=k[f>>2]|0,f=k[f+4>>2]|0,h=((b|0)<0)<<31>>31,!(f>>>0>h>>>0|(f|0)==(h|0)&e>>>0>b>>>0)):0)?(f=y0(x9(d)|0,0,e|0,f|0)|0,e=M,h>>>0<e>>>0|(h|0)==(e|0)&b>>>0<f>>>0):0){d=k[g>>2]|0;if(d|0?TJ(d,b,h)|0:0)break;oN(a);e=xA(a,b)|0;k[j+4>>2]=14;k[j>>2]=8188;f=j+8|0;k[f>>2]=e;k[f+4>>2]=M;k[j+16>>2]=c;fB(k[a+108>>2]|0,j);fJ(k[g>>2]|0,b,h)|0}while(0);r=l;return}function yp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=r;r=r+160|0;b=d;c=a+131|0;if(!(i[c>>0]|0)){if((k[2783]|0)<4){Qd(b,52211,418,3,0,0,0);g=Tn(b,54123,36)|0;f=a+8|0;c=i[f+11>>0]|0;e=c<<24>>24<0;Tn(Tn(g,e?k[f>>2]|0:f,e?k[a+12>>2]|0:c&255)|0,54160,26)|0;hi(b)}}else{i[c>>0]=0;g=a+4|0;CL(k[g>>2]|0,a);g=k[(k[g>>2]|0)+2272>>2]|0;Sb[k[(k[g>>2]|0)+40>>2]&511](g,a);Rb[k[(k[a>>2]|0)+104>>2]&2047](a)}r=d;return}function zp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;e=k[a+4>>2]|0;f=k[a>>2]|0;c=(e-f>>2)+1|0;if(c>>>0>1073741823)J5(a);i=(k[a+8>>2]|0)-f|0;d=i>>1;c=i>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!c)d=0;else d=cW(c<<2)|0;k[g>>2]=d;f=d+(e-f>>2<<2)|0;e=g+8|0;k[e>>2]=f;i=g+4|0;k[i>>2]=f;k[g+12>>2]=d+(c<<2);k[f>>2]=k[b>>2];k[e>>2]=(k[e>>2]|0)+4;By(a,g);c=k[i>>2]|0;d=k[e>>2]|0;if((d|0)!=(c|0))k[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);c=k[g>>2]|0;if(c|0)zba(c);r=h;return}function Ap(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+160|0;d=g;f=b+11|0;c=i[f>>0]|0;if(c<<24>>24<0){c=k[b+4>>2]|0;if((c|0)>255)if((k[2783]|0)<5){Qd(d,46487,22,4,0,0,0);Tn(Mn(Tn(d,46510,68)|0,c)|0,46579,19)|0;hi(d);c=255}else c=255}else c=c&255;d=a+4|0;i[(k[k[a>>2]>>2]|0)+(k[d>>2]|0)>>0]=c;e=(k[d>>2]|0)+1|0;k[d>>2]=e;if((i[f>>0]|0)<0)b=k[b>>2]|0;fE((k[k[a>>2]>>2]|0)+e|0,b|0,c|0)|0;k[d>>2]=(k[d>>2]|0)+c;r=g;return}function Bp(a){a=a|0;var b=0,c=0,d=0,e=0;d=a+356|0;if(k[d>>2]|0){e=a+352|0;do{b=k[e>>2]|0;c=k[b+8>>2]|0;if(c){dG(c);zba(c);b=k[e>>2]|0}c=b+4|0;k[(k[b>>2]|0)+4>>2]=k[c>>2];k[k[c>>2]>>2]=k[b>>2];k[d>>2]=(k[d>>2]|0)+-1;zba(b)}while((k[d>>2]|0)!=0)}i[a+360>>0]=1;c=a+288|0;b=k[c>>2]|0;if(k[b+48>>2]|0)do{gE(b+28|0);b=k[c>>2]|0}while((k[b+48>>2]|0)!=0);if(k[b+72>>2]|0)do{gE(b+52|0);b=k[c>>2]|0}while((k[b+72>>2]|0)!=0);AE((k[a+52>>2]|0)+296|0,1);return}function Cp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=r;r=r+176|0;c=f+156|0;d=f+160|0;e=f;k[c>>2]=b;b=Xx(a+184|0,c)|0;k[d>>2]=b;if((b|0)==(a+188|0))if((k[2783]|0)<4){Qd(e,52211,1097,3,0,0,0);a=Tn(e,52320,29)|0;Tn(Mn(a,k[c>>2]|0)|0,52350,45)|0;hi(e);a=0}else a=0;else{Jk(a,d);a=1}r=f;return a|0}function Dp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,439,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=4268;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Ep(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=r;r=r+48|0;b=e+16|0;c=e;d=e+32|0;mD(b,0);f=N6(b,56171)|0;nF(c,52290);GA(f,c)|0;Lv(c);c=a+4|0;f=(w4(k[c>>2]|0)|0)+1196|0;c=k[c>>2]|0;if(!(k[f>>2]|0)){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,52299,20);XD(c,a,0,d);p1(d)}else{f=(w4(c)|0)+1196|0;On(k[f>>2]|0,b,a+8|0)|0}Lv(b);r=e;return}function Fp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;a=cW(56)|0;l=zo(b)|0;j=M;e=xF(b)|0;g=zo(b)|0;f=M;c=xF(b)|0;d=xF(b)|0;h=a+8|0;k[h>>2]=l;k[h+4>>2]=j;k[a+16>>2]=e;e=a+24|0;k[e>>2]=g;k[e+4>>2]=f;k[a+32>>2]=c;c=a+40|0;e=c;k[e>>2]=-1;k[e+4>>2]=-1;k[a+48>>2]=d;d=a+52|0;i[d>>0]=0;k[a>>2]=8156;k[a+4>>2]=16;if((f2(b)|0)>8){j=zo(b)|0;l=c;k[l>>2]=j;k[l+4>>2]=M;l=(lZ(b)|0)<<24>>24!=0&1;i[d>>0]=l}return a|0}function Gp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;f=b;l=a+11|0;d=i[l>>0]|0;if(d<<24>>24<0){j=k[a+4>>2]|0;e=(k[a+8>>2]&2147483647)+-1|0}else{j=d&255;e=10}h=c-f|0;do if(h|0){if((e-j|0)>>>0<h>>>0){kv(a,e,j+h-e|0,j,j,0,0);d=i[l>>0]|0}if(d<<24>>24<0)g=k[a>>2]|0;else g=a;f=c+(j-f)|0;e=g+j|0;d=b;while(1){if((d|0)==(c|0))break;i[e>>0]=i[d>>0]|0;e=e+1|0;d=d+1|0}i[g+f>>0]=0;d=j+h|0;if((i[l>>0]|0)<0){k[a+4>>2]=d;break}else{i[l>>0]=d;break}}while(0);return a|0}function Hp(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;i=a+4|0;b=k[i>>2]|0;l=a+16|0;c=k[l>>2]|0;d=b+(c>>>10<<2)|0;j=a+8|0;h=k[j>>2]|0;f=h;g=b;if((h|0)==(b|0)){h=0;e=a+20|0;a=0}else{e=a+20|0;h=c+(k[e>>2]|0)|0;h=(k[b+(h>>>10<<2)>>2]|0)+((h&1023)<<2)|0;a=(k[d>>2]|0)+((c&1023)<<2)|0}a:while(1){do{if((a|0)==(h|0))break a;a=a+4|0}while((a-(k[d>>2]|0)|0)!=4096);a=d+4|0;d=a;a=k[a>>2]|0}k[e>>2]=0;a=f-g>>2;if(a>>>0>2)do{zba(k[b>>2]|0);b=(k[i>>2]|0)+4|0;k[i>>2]=b;a=(k[j>>2]|0)-b>>2}while(a>>>0>2);switch(a|0){case 1:{k[l>>2]=512;break}case 2:{k[l>>2]=1024;break}default:{}}return}function Ip(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=r;r=r+160|0;d=f;e=a+436|0;b=k[e>>2]|0;do if(!b){b=k[a+52>>2]|0;if((b|0)!=0?(c=k[b+916>>2]|0,(c|0)!=0):0){a=Ta(131,k[c+208>>2]|0)|0;if((a|0)==-1){if((k[2783]|0)>=4){b=0;break}Qd(d,97006,33,3,0,0,0);Tn(Tn(d,97041,10)|0,97052,37)|0;hi(d);b=0;break}b=cW(48)|0;zG(b,a);a=k[e>>2]|0;k[e>>2]=0;if(a|0)Rb[k[(k[a>>2]|0)+4>>2]&2047](a);k[e>>2]=b}else b=0}while(0);r=f;return b|0}function Jp(a){a=a|0;var b=0,c=0,d=0,e=0;yS(a);k[a+40>>2]=0;k[a+44>>2]=0;k[a+36>>2]=a+40;k[a>>2]=8576;k[a+28>>2]=8732;k[a+32>>2]=8760;i[a+48>>0]=1;i[a+49>>0]=1;k[a+52>>2]=0;k[a+56>>2]=-1;b=a+64|0;c=a+132|0;d=b;e=d+64|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));i[b+64>>0]=0;k[c>>2]=-1;d=a+136|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;k[d+24>>2]=0;k[d+28>>2]=0;d=_J()|0;e=a+168|0;k[e>>2]=d;k[e+4>>2]=M;i[a+176>>0]=1;k[a+180>>2]=0;i[a+184>>0]=1;i[a+185>>0]=0;e=a+192|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;e=yb(24,a|0,1261,1262)|0;k[a+60>>2]=e;return}function Kp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;d=k[a+4>>2]|0;e=k[a>>2]|0;c=(d-e>>4)+1|0;if(c>>>0>268435455)J5(a);i=(k[a+8>>2]|0)-e|0;f=i>>3;f=i>>4>>>0<134217727?(f>>>0<c>>>0?c:f):268435455;c=d-e>>4;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!f)d=0;else d=cW(f<<4)|0;k[g>>2]=d;i=d+(c<<4)|0;k[g+4>>2]=i;k[g+12>>2]=d+(f<<4);k[i>>2]=k[b>>2];yD(d+(c<<4)+4|0,b+4|0);k[g+8>>2]=i+16;_r(a,g);hI(g);r=h;return}function Lp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;a=cW(56)|0;l=zo(b)|0;j=M;e=xF(b)|0;g=zo(b)|0;f=M;c=xF(b)|0;d=xF(b)|0;k[a+4>>2]=4;k[a>>2]=8236;h=a+8|0;k[h>>2]=l;k[h+4>>2]=j;k[a+16>>2]=e;e=a+24|0;k[e>>2]=g;k[e+4>>2]=f;k[a+32>>2]=c;c=a+40|0;e=c;k[e>>2]=-1;k[e+4>>2]=-1;k[a+48>>2]=d;d=a+52|0;i[d>>0]=0;if((f2(b)|0)>7){j=zo(b)|0;l=c;k[l>>2]=j;k[l+4>>2]=M;l=(lZ(b)|0)<<24>>24!=0&1;i[d>>0]=l}return a|0}function Mp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=2068;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Np(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+32|0;d=c+16|0;g=c+8|0;e=c;MW(a,b);k[a+92>>2]=0;k[a+96>>2]=0;k[a+88>>2]=a+92;k[a>>2]=10104;k[a+80>>2]=10216;k[a+84>>2]=10244;p[a+104>>3]=-1.0;i[a+112>>0]=1;b=a+4|0;f=(w4(k[b>>2]|0)|0)+496|0;k[g>>2]=100;k[g+4>>2]=1;k[d>>2]=k[g>>2];k[d+4>>2]=k[g+4>>2];Uv(f,a,d);b=(w4(k[b>>2]|0)|0)+296|0;k[e>>2]=337;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];aw(b,a,d);r=c;return}function Op(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;do if(i[(k[a+288>>2]|0)+84>>0]|0){c=a+296|0;d=k[c>>2]|0;if(!d){d=cW(8)|0;e=b;a=k[e+4>>2]|0;b=d;k[b>>2]=k[e>>2];k[b+4>>2]=a;k[c>>2]=d;break}else{e=d+4|0;i[e>>0]=(i[e>>0]|0)==0?i[b+4>>0]|0:1;e=(k[c>>2]|0)+5|0;i[e>>0]=(i[e>>0]|0)==0?i[b+5>>0]|0:1;e=(k[c>>2]|0)+6|0;i[e>>0]=(i[e>>0]|0)==0?i[b+6>>0]|0:1;i[(k[c>>2]|0)+7>>0]=1;Sb[k[(k[a>>2]|0)+196>>2]&511](a,k[c>>2]|0);break}}else{e=cW(8)|0;f=b;c=k[f+4>>2]|0;d=e;k[d>>2]=k[f>>2];k[d+4>>2]=c;k[a+296>>2]=e;Sb[k[(k[a>>2]|0)+196>>2]&511](a,b)}while(0);return}function Pp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;c=e;if(((i[a>>0]|0?(d=b+11|0,!(y6((i[d>>0]|0)<0?k[b>>2]|0:b,56774)|0)):0)?!(y6((i[d>>0]|0)<0?k[b>>2]|0:b,56782)|0):0)?!(y6((i[d>>0]|0)<0?k[b>>2]|0:b,50479)|0):0){vA(c,a+4|0,b);if((i[d>>0]|0)<0){i[k[b>>2]>>0]=0;k[b+4>>2]=0}else{i[b>>0]=0;i[d>>0]=0}Qm(b,0);k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];k[b+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;p1(c)}r=e;return}function Qp(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=5972;b=a+16|0;k[b>>2]=5988;d=a+20|0;k[d>>2]=6016;sG(a+184|0,k[a+188>>2]|0);qL(a+148|0);HQ(a+136|0);$H(a+116|0);HQ(a+104|0);c=k[a+100>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);c=a+36|0;GL(a+44|0);k[c>>2]=6040;aE(c);k[b>>2]=1972;k[d>>2]=2e3;Bo(b);dH(a+24|0,k[a+28>>2]|0);k[d>>2]=2024;eU(a);return}function Rp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=13640;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Sp(a,b){a=a|0;b=b|0;ar(a,b);b=Tn(110732,68654,9)|0;b=Tn(Ln(b,k[a+52>>2]|0)|0,68664,31)|0;Ln(b,k[a+56>>2]|0)|0;b=Tn(110732,67833,23)|0;b=Tn(Ln(b,k[a+60>>2]|0)|0,67857,19)|0;b=Tn(Ln(b,k[a+64>>2]|0)|0,67877,20)|0;Ln(b,k[a+68>>2]|0)|0;return}function Tp(a,b){a=a|0;b=b|0;ar(a,b);b=Tn(110732,68043,14)|0;b=Tn(Ln(b,k[a+52>>2]|0)|0,68546,18)|0;b=Tn(Ln(b,k[a+56>>2]|0)|0,68068,11)|0;b=Tn(Ln(b,k[a+60>>2]|0)|0,68565,10)|0;Ln(b,k[a+64>>2]|0)|0;b=Tn(110732,68576,6)|0;Gn(b,j[a+68>>1]|0)|0;return}function Up(a){a=a|0;var b=0,c=0,d=0;k[a>>2]=5848;b=a+16|0;k[b>>2]=5864;c=a+20|0;k[c>>2]=5892;d=k[a+76>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);OL(a+60|0,k[a+64>>2]|0);Zy(a+48|0,k[a+52>>2]|0);Qw(a+36|0,k[a+40>>2]|0);k[b>>2]=1972;k[c>>2]=2e3;Bo(b);dH(a+24|0,k[a+28>>2]|0);k[c>>2]=2024;eU(a);return}function Vp(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;Ez(a,b,4);i[d>>0]=45;Tn(a,d,1)|0;Ez(a,b+4|0,2);i[d>>0]=45;Tn(a,d,1)|0;Ez(a,b+6|0,2);i[d>>0]=45;Tn(a,d,1)|0;Ez(a,b+8|0,2);i[d>>0]=45;Tn(a,d,1)|0;Ez(a,b+10|0,6);r=c;return}function Wp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=4668;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Xp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+32|0;g=h;f=k[a+8>>2]|0;c=k[a+4>>2]|0;if(f-c>>2>>>0<b>>>0){e=k[a>>2]|0;c=c-e>>2;d=c+b|0;if(d>>>0>1073741823)J5(a);e=f-e|0;f=e>>1;CE(g,e>>2>>>0<536870911?(f>>>0<d>>>0?d:f):1073741823,c,a+16|0);d=g+8|0;c=k[d>>2]|0;do{k[c>>2]=0;c=(k[d>>2]|0)+4|0;k[d>>2]=c;b=b+-1|0}while((b|0)!=0);By(a,g);wG(g)}else fQ(a,b);r=h;return}function Yp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;e=i[a+11>>0]|0;if(e<<24>>24<0){e=k[a+4>>2]|0;a=k[a>>2]|0}else e=e&255;if(!(e>>>0<c>>>0|(e-c|0)>>>0<d>>>0)){if(d){l=a+e|0;j=b+d|0;c=a+c|0;h=l;a:do if((h-c|0)<(d|0))c=h;else{g=l+(1-d)|0;while(1){while(1){f=c;if((f|0)==(g|0)){c=h;break a}if((i[f>>0]|0)==(i[b>>0]|0)){e=b;d=f;break}c=f+1|0}do{e=e+1|0;if((e|0)==(j|0))break a;d=d+1|0}while((i[d>>0]|0)==(i[e>>0]|0));c=f+1|0}}while(0);c=(c|0)==(l|0)?-1:c-a|0}}else c=-1;return c|0}function Zp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+16|0;d=c+8|0;e=c;X0(a);k[a+28>>2]=0;k[a+32>>2]=0;k[a+24>>2]=a+28;k[a>>2]=5848;k[a+16>>2]=5864;k[a+20>>2]=5892;k[a+40>>2]=0;k[a+44>>2]=0;k[a+36>>2]=a+40;k[a+52>>2]=0;k[a+56>>2]=0;k[a+48>>2]=a+52;k[a+64>>2]=0;k[a+68>>2]=0;k[a+60>>2]=a+64;k[a+72>>2]=0;f=cW(20)|0;FY(f,e$(b)|0);k[a+76>>2]=f;i[a+80>>0]=0;k[a+84>>2]=2147483647;k[a+88>>2]=b;k[e>>2]=44;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];qv(b+236|0,a,d);r=c;return}function _p(a,b){a=+a;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;p[u>>3]=a;e=k[u>>2]|0;f=k[u+4>>2]|0;c=KZ(e|0,f|0,52)|0;c=c&2047;d=c+-1023|0;do if((d|0)>51){p[b>>3]=a;if((e|0)==0&(f&1048575|0)==0|(d|0)!=1024){k[u>>2]=0;k[u+4>>2]=f&-2147483648;a=+p[u>>3]}}else{if(c>>>0<1023){e=b;k[e>>2]=0;k[e+4>>2]=f&-2147483648;break}c=KZ(-1,1048575,d|0)|0;d=M;if((c&e|0)==0&(d&f|0)==0){p[b>>3]=a;k[u>>2]=0;k[u+4>>2]=f&-2147483648;a=+p[u>>3];break}else{c=e&~c;e=f&~d;k[u>>2]=c;k[u+4>>2]=e;g=+p[u>>3];f=b;k[f>>2]=c;k[f+4>>2]=e;a=a-g;break}}while(0);return +a}function $p(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+11>>0]|0;h=d<<24>>24<0;d=d&255;j=h?k[a+4>>2]|0:d;g=i[b+11>>0]|0;c=g<<24>>24<0;a:do if((j|0)==((c?k[b+4>>2]|0:g&255)|0)){f=k[a>>2]|0;g=h?f:a;c=c?k[b>>2]|0:b;e=(j|0)==0;b:do if(h){if(!e?EI(g,c,j)|0:0){c=0;break a}}else if(!e){if((f&255)<<24>>24==(i[c>>0]|0))e=a;else{c=0;break a}while(1){d=d+-1|0;e=e+1|0;if(!d)break b;c=c+1|0;if((i[e>>0]|0)!=(i[c>>0]|0)){c=0;break a}}}while(0);if(+o[a+32>>2]==+o[b+32>>2])c=(k[a+48>>2]|0)==(k[b+48>>2]|0);else c=0}else c=0;while(0);return c|0}function aq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=r;r=r+208|0;f=j;h=j+156|0;g=a+20|0;if(i[g>>0]|0){if((k[2783]|0)<5){Qd(f,44155,98,4,0,0,0);Tn(f,44186,75)|0;hi(f)}}else{i[g>>0]=1;i[h>>0]=b;f=h+1|0;b=f+16|0;do{i[f>>0]=i[c>>0]|0;f=f+1|0;c=c+1|0}while((f|0)<(b|0));f=h+17|0;c=d;b=f+16|0;do{i[f>>0]=i[c>>0]|0;f=f+1|0;c=c+1|0}while((f|0)<(b|0));d=h+33|0;i[d>>0]=e;i[d+1>>0]=e>>8;i[d+2>>0]=e>>16;i[d+3>>0]=e>>24;Pa(k[a+28>>2]|0,44262,h|0,37,0,0)}r=j;return}function bq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=a+96|0;c=k[f>>2]|0;g=a+100|0;if((c|0)!=(g|0)){b=0;do{d=c+20|0;e=k[d>>2]|0;if((e|0)!=(b|0)){hx(a,e);b=k[d>>2]|0;if(!b)b=0;else Rb[k[(k[b>>2]|0)+4>>2]&2047](b)}d=k[c+4>>2]|0;if(!d)while(1){d=k[c+8>>2]|0;if((k[d>>2]|0)==(c|0)){c=d;break}else c=d}else{c=d;while(1){d=k[c>>2]|0;if(!d)break;else c=d}}}while((c|0)!=(g|0))}ZC(f,k[g>>2]|0);k[a+104>>2]=0;k[f>>2]=g;k[g>>2]=0;return}function cq(a,b,c){a=a|0;b=+b;c=+c;var d=0.0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;d=c-b;p[a+864>>3]=d;j=a+856|0;l=a+916|0;e=k[l>>2]|0;do if(!(i[j>>0]|0)){if(d<+p[e+736>>3]*+(k[a+872>>2]|0)/1.0e3){i[j>>0]=1;j=_J()|0;l=a+848|0;k[l>>2]=j;k[l+4>>2]=M}}else{h=a+872|0;m=d<+p[e+744>>3]*+(k[h>>2]|0)/1.0e3;e=_J()|0;f=M;g=a+848|0;if(m){m=g;k[m>>2]=e;k[m+4>>2]=f;break}m=g;m=n_(e|0,f|0,k[m>>2]|0,k[m+4>>2]|0)|0;if(+(m>>>0)+4294967296.0*+(M>>>0)>+p[(k[l>>2]|0)+728>>3]*+(k[h>>2]|0))i[j>>0]=0}while(0);bE(a+496|0,b,c);return}function dq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,52047,439,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=10500;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function eq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,52047,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=14200;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function fq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+1036|0;b=k[g>>2]|0;j=a+1040|0;if((b|0)!=(k[j>>2]|0)){h=a+908|0;i=a+904|0;f=a+912|0;while(1){d=k[b>>2]|0;c=k[h>>2]|0;a:do if((c|0)!=(i|0)){e=d;a=c;while(1){if((k[c+8>>2]|0)==(e|0))break;c=k[a+4>>2]|0;a=c;if((a|0)==(i|0))break a}if((a|0)!=(i|0)?(e=a+4|0,k[(k[a>>2]|0)+4>>2]=k[e>>2],k[k[e>>2]>>2]=k[a>>2],k[f>>2]=(k[f>>2]|0)+-1,zba(a),d|0):0)Rb[k[(k[d>>2]|0)+12>>2]&2047](d)}while(0);c=b+4|0;if((c|0)==(k[j>>2]|0))break;else b=c}a=k[g>>2]|0;if((c|0)!=(a|0))k[j>>2]=c+(~((b-a|0)>>>2)<<2)}return}function gq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=r;r=r+16|0;g=h;f=ak(b,g,c)|0;d=k[f>>2]|0;if(!d){d=cW(40)|0;iI(d+16|0,k[e>>2]|0);k[d+28>>2]=0;k[d+32>>2]=0;k[d+36>>2]=0;wF(b,k[g>>2]|0,f,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=h;return}function hq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,50254,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=13120;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function iq(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=12548;c=a+40|0;k[c>>2]=12684;d=a+44|0;k[d>>2]=12712;e=a+60|0;k[e>>2]=12736;GL(a+400|0);h3(a+392|0);aC(a+368|0,k[a+372>>2]|0);b=a+360|0;if((k[a+364>>2]|0)<0)wc(k[b>>2]|0);k[b>>2]=0;mr(a+80|0);b=k[a+76>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);eU(e);k[c>>2]=1972;k[d>>2]=2e3;Bo(c);dH(a+48|0,k[a+52>>2]|0);k[d>>2]=2024;lW(a);return}function jq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=12768;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+60|0)+4|0,d,d);a=1}r=g;return a|0}function kq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=13924;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+60|0)+4|0,d,d);a=1}r=g;return a|0}function lq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,74712,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=17068;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+208|0)+4|0,d,d);a=1}r=g;return a|0}function mq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,g=0;g=cW(32)|0;c=g+16|0;k[c>>2]=k[b>>2];k[c+4>>2]=k[b+4>>2];k[c+8>>2]=k[b+8>>2];k[c+12>>2]=k[b+12>>2];d=a+4|0;b=k[d>>2]|0;do if(b){f=+p[c>>3];while(1)if(f<+p[b+16>>3]){c=k[b>>2]|0;if(!c){c=5;break}else b=c}else{d=b+4|0;c=k[d>>2]|0;if(!c){c=8;break}else b=c}if((c|0)==5){e=b;break}else if((c|0)==8){e=b;b=d;break}}else{e=d;b=d}while(0);wF(a,e,b,g);return g|0}function nq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,74712,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=17044;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+208|0)+4|0,d,d);a=1}r=g;return a|0}function oq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+16|0;h=l;k[a>>2]=0;j=a+4|0;k[j>>2]=0;k[a+8>>2]=0;d=k[b+4>>2]|0;g=b+8|0;if((d|0)!=(k[g>>2]|0)){e=c+11|0;f=a+8|0;b=d;do{d=k[b>>2]|0;k[h>>2]=d;d=Az(d)|0;do if(!(KC((i[d+11>>0]|0)<0?k[d>>2]|0:d,(i[e>>0]|0)<0?k[c>>2]|0:c)|0)){d=k[j>>2]|0;if((d|0)==(k[f>>2]|0)){zp(a,h);break}else{k[d>>2]=k[h>>2];k[j>>2]=(k[j>>2]|0)+4;break}}while(0);b=b+4|0}while((b|0)!=(k[g>>2]|0))}r=l;return}function pq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,74712,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=17020;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+208|0)+4|0,d,d);a=1}r=g;return a|0}function qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=r;r=r+16|0;d=g+8|0;e=g;f=a+1168|0;c=k[f>>2]|0;if(!c)c=0;else{sL(c);h=k[c+128>>2]|0;i=cW(12)|0;k[i+8>>2]=c;k[i>>2]=a+1172;c=a+1176|0;j=k[c>>2]|0;k[i+4>>2]=j;k[j>>2]=i;k[c>>2]=i;c=a+1180|0;k[c>>2]=(k[c>>2]|0)+1;c=h+1|0}j=cW(200)|0;Pi(j,a,b);k[j+132>>2]=c;k[e>>2]=324;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];rq(j+36|0,a,d)|0;Vm(j);k[f>>2]=j;r=g;return j|0}function rq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=4644;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function sq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+32|0;g=h;e=k[a+4>>2]|0;f=k[a>>2]|0;c=(e-f>>2)+1|0;if(c>>>0>1073741823)J5(a);i=(k[a+8>>2]|0)-f|0;d=i>>1;c=i>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!c)d=0;else d=cW(c<<2)|0;k[g>>2]=d;f=d+(e-f>>2<<2)|0;e=g+8|0;i=g+4|0;k[i>>2]=f;k[g+12>>2]=d+(c<<2);k[f>>2]=k[b>>2];k[e>>2]=f+4;By(a,g);c=k[i>>2]|0;d=k[e>>2]|0;if((d|0)!=(c|0))k[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);c=k[g>>2]|0;if(c|0)zba(c);r=h;return}function tq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;a:do if(c){h=i[b+11>>0]|0;g=h<<24>>24<0;h=g?k[b+4>>2]|0:h&255;g=g?k[b>>2]|0:b;while(1){a=c;while(1){b=a+16|0;f=i[b+11>>0]|0;e=f<<24>>24<0;f=e?k[a+20>>2]|0:f&255;c=h>>>0<f>>>0?h:f;if((c|0)!=0?(j=EI(e?k[b>>2]|0:b,g,c)|0,(j|0)!=0):0){if((j|0)>=0)break}else l=6;if((l|0)==6?(l=0,f>>>0>=h>>>0):0)break;a=k[a+4>>2]|0;if(!a)break a}c=k[a>>2]|0;if(!c){d=a;break}else d=a}}while(0);return d|0}function uq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,52047,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=10752;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=4148;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function wq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=a+11|0;e=i[j>>0]|0;f=e<<24>>24<0;if(f)h=k[a+4>>2]|0;else h=e&255;if(h>>>0<b>>>0)w5(a);if(f)e=(k[a+8>>2]&2147483647)+-1|0;else e=10;if((e-h|0)>>>0>=d>>>0){if(d|0){if(f)g=k[a>>2]|0;else g=a;f=h-b|0;e=g+b|0;if(f){qO(e+d|0,e|0,f|0)|0;c=e>>>0<=c>>>0&(g+h|0)>>>0>c>>>0?c+d|0:c}qO(e|0,c|0,d|0)|0;c=h+d|0;if((i[j>>0]|0)<0)k[a+4>>2]=c;else i[j>>0]=c;i[g+c>>0]=0}}else ks(a,e,h+d-e|0,h,b,0,d,c);return a|0}function xq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=r;r=r+16|0;e=f;d=b+28|0;c=i[d+11>>0]|0;if(c<<24>>24<0)c=k[b+32>>2]|0;else c=c&255;if(!c)MM(d,(k[a+916>>2]|0)+688|0)|0;c=i[b+88+11>>0]|0;if(c<<24>>24<0)c=k[b+92>>2]|0;else c=c&255;if(!c){a=b+40|0;c=i[a+11>>0]|0;if(c<<24>>24<0)c=k[b+44>>2]|0;else c=c&255;if(!c)c=0;else{mE(e,a);kF(b,e);p1(e);c=1}}else c=1;r=f;return c|0}function yq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;h=i[c+11>>0]|0;g=h<<24>>24<0;h=g?k[c+4>>2]|0:h&255;j=r;r=r+((1*(h+1|0)|0)+15&-16)|0;g=g?k[c>>2]|0:c;if((h|0)>0){b=0;c=0;f=0;do{d=i[g+f>>0]|0;e=d<<24>>24;do if(d<<24>>24!=45)if(c){c=(T8(e)|0)&255;i[j+b>>0]=c;b=b+1|0;c=0;break}else{i[j+b>>0]=d;b=b+1|0;c=0;break}else c=1;while(0);f=f+1|0}while((f|0)!=(h|0))}else b=0;i[j+b>>0]=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,j,iC(j)|0);r=l;return}function zq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=6168;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function Aq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=r;r=r+160|0;d=f+156|0;e=f;g=k[b+104>>2]|0;k[d>>2]=g;c=b+108|0;if((g|0)<=(k[c>>2]|0)){b=a+96|0;do{g=(pz(b,d)|0)==0;if(g&(k[2783]|0)<4){Qd(e,50909,659,3,0,0,0);g=Tn(e,50924,119)|0;Tn(Mn(g,k[d>>2]|0)|0,68623,1)|0;hi(e)}g=k[d>>2]|0;k[d>>2]=g+1}while((g|0)<(k[c>>2]|0))}r=f;return}function Bq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,92655,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=17768;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+88|0)+4|0,d,d);a=1}r=g;return a|0}function Cq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+160|0;c=e;d=k[a+64>>2]|0;d=cc[k[(k[d>>2]|0)+12>>2]&127](d,b)|0;if(!d){if((k[2783]|0)<4){Qd(c,42816,54,3,0,0,0);d=Tn(c,42836,32)|0;d=Tn(Nn(d,(i[b+12>>0]|0)!=0)|0,74996,6)|0;Tn(Ln(d,k[b+4>>2]|0)|0,42869,23)|0;hi(c)}}else{AE(a+20|0,d);Rb[k[(k[d>>2]|0)+4>>2]&2047](d)}r=e;return}function Dq(a,b){a=a|0;b=b|0;var c=0,d=0;d=k[a+8>>2]|0;i[k[b>>2]>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=a+12|0;c=l[c>>0]|l[c+1>>0]<<8|l[c+2>>0]<<16|l[c+3>>0]<<24;i[d>>0]=c;i[d+1>>0]=c>>8;i[d+2>>0]=c>>16;i[d+3>>0]=c>>24;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+44>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[a+48>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4;return}function Eq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=4692;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Fq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,52047,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=10524;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Gq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=c+16|0;e=k[d>>2]|0;if(!e)if(!(vJ(c)|0)){d=k[d>>2]|0;f=5}else d=0;else{d=e;f=5}a:do if((f|0)==5){g=c+20|0;f=k[g>>2]|0;e=f;if((d-f|0)>>>0<b>>>0){d=Yb[k[c+36>>2]&31](c,a,b)|0;break}b:do if((i[c+75>>0]|0)>-1){d=b;while(1){if(!d){f=b;d=0;break b}f=d+-1|0;if((i[a+f>>0]|0)==10)break;else d=f}if((Yb[k[c+36>>2]&31](c,a,d)|0)>>>0<d>>>0)break a;f=b-d|0;a=a+d|0;e=k[g>>2]|0}else{f=b;d=0}while(0);fE(e|0,a|0,f|0)|0;k[g>>2]=(k[g>>2]|0)+f;d=d+f|0}while(0);return d|0}function Hq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=5200;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+20|0)+4|0,d,d);a=1}r=g;return a|0}function Iq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+160|0;c=e;d=t3(b,0)|0;switch((d&255)<<24>>24){case 5:break;case 7:{LB(a,b);break}case 8:{i[a+85>>0]=1;r$(a+20|0);break}case 6:{FZ(a);break}case 9:{xD(a,b);break}case 10:{xz(a,b);break}default:if((k[2783]|0)<5){Qd(c,92751,198,4,0,0,0);Mn(Tn(c,93092,43)|0,d&255)|0;hi(c)}}r=e;return}function Jq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56791,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=5948;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}function Kq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=14060;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+60|0)+4|0,d,d);a=1}r=g;return a|0}function Lq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,56574,222,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=14516;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,((b|0)==0?0:b+60|0)+4|0,d,d);a=1}r=g;return a|0}function Mq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=r;r=r+16|0;g=h;f=ak(b,g,c)|0;d=k[f>>2]|0;if(!d){d=cW(36)|0;iI(d+16|0,k[e>>2]|0);k[d+32>>2]=0;k[d+28>>2]=5224;wF(b,k[g>>2]|0,f,d);f=1}else f=0;k[a>>2]=d;i[a+4>>0]=f;r=h;return}function Nq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+176|0;d=g+156|0;e=g;f=a+4|0;if(k[f>>2]|0)if((k[2783]|0)<4){Qd(e,34010,338,3,0,0,0);Tn(e,92705,45)|0;hi(e);a=0}else a=0;else{h=k[c>>2]|0;c=k[c+4>>2]|0;e=cW(16)|0;k[e>>2]=6144;k[e+4>>2]=b;k[e+8>>2]=h;k[e+12>>2]=c;k[f>>2]=e;k[d>>2]=a;vm(g+160|0,b+4|0,d,d);a=1}r=g;return a|0}
function Cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+32|0;u=v+12|0;t=v;p=b+11|0;m=i[p>>0]|0;o=m<<24>>24<0;q=b+4|0;l=o?k[b>>2]|0:b;m=o?k[q>>2]|0:m&255;if(m>>>0>=3){n=l+m|0;o=l;h=n;a:do if((m|0)>=3?(j=n+-2|0,(j|0)!=(l|0)):0){d=o;e=l;while(1){while(1){if((i[e>>0]|0)==58){f=46821;g=e;break}e=e+1|0;if((e|0)==(j|0)){d=h;break a}else d=e}do{f=f+1|0;if((f|0)==46824)break a;g=g+1|0}while((i[g>>0]|0)==(i[f>>0]|0));e=e+1|0;if((e|0)==(j|0)){d=h;break}else d=e}}else d=h;while(0);if(!((d|0)==(n|0)|(d-o|0)==-1))MM(c,b)|0;else s=12}else s=12;do if((s|0)==12){if(m|0?(i[l>>0]|0)==47:0){xj(t,a+12|0);d=i[p>>0]|0;s=d<<24>>24<0;d=nw(t,s?k[b>>2]|0:b,s?k[q>>2]|0:d&255)|0;k[u>>2]=k[d>>2];k[u+4>>2]=k[d+4>>2];k[u+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=c+11|0;if((i[d>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;d=c}else{i[c>>0]=0;i[d>>0]=0;d=c}Qm(c,0);k[d>>2]=k[u>>2];k[d+4>>2]=k[u+4>>2];k[d+8>>2]=k[u+8>>2];k[u>>2]=0;k[u+4>>2]=0;k[u+8>>2]=0;p1(u);p1(t);break}vA(u,a+12|0,b);d=c+11|0;if((i[d>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;d=c}else{i[c>>0]=0;i[d>>0]=0;d=c}Qm(c,0);k[d>>2]=k[u>>2];k[d+4>>2]=k[u+4>>2];k[d+8>>2]=k[u+8>>2];k[u>>2]=0;k[u+4>>2]=0;k[u+8>>2]=0;p1(u)}while(0);r=v;return}function Df(a,b){a=+a;b=+b;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;p[u>>3]=a;g=k[u>>2]|0;i=k[u+4>>2]|0;p[u>>3]=b;l=k[u>>2]|0;m=k[u+4>>2]|0;d=KZ(g|0,i|0,52)|0;d=d&2047;j=KZ(l|0,m|0,52)|0;j=j&2047;n=i&-2147483648;f=BZ(l|0,m|0,1)|0;h=M;a:do if(!((f|0)==0&(h|0)==0)?(e=m&2147483647,!(e>>>0>2146435072|(e|0)==2146435072&l>>>0>0|(d|0)==2047)):0){c=BZ(g|0,i|0,1)|0;e=M;if(!(e>>>0>h>>>0|(e|0)==(h|0)&c>>>0>f>>>0))return +((c|0)==(f|0)&(e|0)==(h|0)?a*0.0:a);if(!d){c=BZ(g|0,i|0,12)|0;e=M;if((e|0)>-1|(e|0)==-1&c>>>0>4294967295){d=0;do{d=d+-1|0;c=BZ(c|0,e|0,1)|0;e=M}while((e|0)>-1|(e|0)==-1&c>>>0>4294967295)}else d=0;g=BZ(g|0,i|0,1-d|0)|0;f=M}else f=i&1048575|1048576;if(!j){e=BZ(l|0,m|0,12)|0;h=M;if((h|0)>-1|(h|0)==-1&e>>>0>4294967295){c=0;do{c=c+-1|0;e=BZ(e|0,h|0,1)|0;h=M}while((h|0)>-1|(h|0)==-1&e>>>0>4294967295)}else c=0;l=BZ(l|0,m|0,1-c|0)|0;j=c;i=M}else i=m&1048575|1048576;e=n_(g|0,f|0,l|0,i|0)|0;c=M;h=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;b:do if((d|0)>(j|0)){while(1){if(h){if((e|0)==0&(c|0)==0)break}else{e=g;c=f}g=BZ(e|0,c|0,1)|0;f=M;d=d+-1|0;e=n_(g|0,f|0,l|0,i|0)|0;c=M;h=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;if((d|0)<=(j|0))break b}b=a*0.0;break a}while(0);if(h){if((e|0)==0&(c|0)==0){b=a*0.0;break}}else{c=f;e=g}if(c>>>0<1048576|(c|0)==1048576&e>>>0<0)do{e=BZ(e|0,c|0,1)|0;c=M;d=d+-1|0}while(c>>>0<1048576|(c|0)==1048576&e>>>0<0);if((d|0)>0){m=y0(e|0,c|0,0,-1048576)|0;c=M;d=BZ(d|0,0,52)|0;c=c|M;d=m|d}else{d=KZ(e|0,c|0,1-d|0)|0;c=M}k[u>>2]=d;k[u+4>>2]=c|n;b=+p[u>>3]}else o=3;while(0);if((o|0)==3){b=a*b;b=b/b}return +b}function Ef(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+352|0;c=h+336|0;d=h+324|0;e=h+156|0;f=h+168|0;g=h;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,56593,8);j=nE(b,d,c)|0;p1(d);if(!j){If(k[a+36>>2]|0,b);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,56602,8);j=vG(b,e,d)|0;p1(e);if(j){g=a+56|0;i[g>>0]=0;j=a+57|0;i[j>>0]=1;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,56611,7);rG(b,e,g)|0;p1(e);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,56619,7);rG(b,e,j)|0;p1(e);j=a+58|0;i[j>>0]=0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,56627,12);rG(b,e,j)|0;p1(e);_P(a,k[d>>2]|0)}else{if((k[2783]|0)<5){Qd(f,55864,63,4,0,0,0);Tn(f,56640,56)|0;hi(f)}Yz(a)}}else{if((k[2783]|0)<5){Qd(g,55864,67,4,0,0,0);e=Tn(g,56697,29)|0;j=i[c+11>>0]|0;f=j<<24>>24<0;Tn(e,f?k[c>>2]|0:c,f?k[c+4>>2]|0:j&255)|0;hi(g)}Yz(a)}p1(c);r=h;return}function Ff(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;f=r;r=r+16|0;e=f;a:do switch(b|0){case 0:{if(uZ(a)|0?+gA(a)==0.0:0){b=1;break a}b=a+8|0;switch((j[b>>1]&255)<<24>>24){case 5:{if(!(i[a>>0]|0)){b=1;break a}else{c=0;d=8}break}case 4:{to(e,a);c=i[e+11>>0]|0;if(((c<<24>>24<0?k[e+4>>2]|0:c&255)|0)==0?(cA(e,0,-1,115628,0)|0)==0:0)b=1;else{c=1;d=8}break}default:{c=0;d=8}}do if((d|0)==8){d=j[b>>1]|0;b=d&255;switch((d&255)<<24>>24){case 6:{if(!(k[(k[a>>2]|0)+8>>2]|0))d=12;else d=11;break}case 7:{if(!(k[(k[a>>2]|0)+8>>2]|0))d=12;else d=11;break}default:d=11}if((d|0)==11){b=b<<16>>16==0;if(c)break;else break a}else if((d|0)==12)if(c){b=1;break}else{b=1;break a}}while(0);p1(e);break}case 1:{if(aB(a)|0)b=1;else{b=j[a+8>>1]&255;if(b<<16>>16==3?(g=+p[a>>3],g<=2147483647.0&g>=-2147483648.0):0){b=1;break a}r=f;return b<<16>>16==5|b<<16>>16==0|0}break}case 2:{if(oD(a)|0)b=1;else{b=j[a+8>>1]&255;if(b<<16>>16==3?(g=+p[a>>3],g<=4294967295.0&g>=0.0):0){b=1;break a}b=b<<16>>16==5|b<<16>>16==0}break}case 3:{if(uZ(a)|0)b=1;else{b=j[a+8>>1]&255;b=b<<16>>16==5|b<<16>>16==0}break}case 5:{if(uZ(a)|0)b=1;else{b=j[a+8>>1]&255;b=b<<16>>16==5|b<<16>>16==0}break}case 4:{if(!(uZ(a)|0)){b=j[a+8>>1]|0;if((b&254)<6){r=f;return (49>>>(b&63)&1)!=0|0}else b=0}else b=1;break}case 6:{b=j[a+8>>1]&255;b=b<<16>>16==6|b<<16>>16==0;break}case 7:{b=j[a+8>>1]&255;b=b<<16>>16==7|b<<16>>16==0;break}default:b=0}while(0);r=f;return b|0}function Gf(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;u=r;r=r+16|0;t=u;s=k_(g,111636)|0;l=k_(g,111644)|0;Sb[k[(k[l>>2]|0)+20>>2]&511](t,l);p=t+11|0;o=i[p>>0]|0;q=t+4|0;a:do if((o<<24>>24<0?k[q>>2]|0:o&255)|0){k[f>>2]=d;g=i[a>>0]|0;switch(g<<24>>24){case 43:case 45:{o=cc[k[(k[s>>2]|0)+44>>2]&127](s,g)|0;g=k[f>>2]|0;k[f>>2]=g+4;k[g>>2]=o;g=a+1|0;break}default:g=a}b:do if((c-g|0)>1?(i[g>>0]|0)==48:0){h=g+1|0;switch(i[h>>0]|0){case 88:case 120:break;default:break b}o=cc[k[(k[s>>2]|0)+44>>2]&127](s,48)|0;n=k[f>>2]|0;k[f>>2]=n+4;k[n>>2]=o;n=cc[k[(k[s>>2]|0)+44>>2]&127](s,i[h>>0]|0)|0;o=k[f>>2]|0;k[f>>2]=o+4;k[o>>2]=n;g=g+2|0}while(0);c:do if((g|0)!=(c|0)){h=c;j=g;while(1){h=h+-1|0;if(j>>>0>=h>>>0)break c;o=i[j>>0]|0;i[j>>0]=i[h>>0]|0;i[h>>0]=o;j=j+1|0}}while(0);o=Ub[k[(k[l>>2]|0)+16>>2]&511](l)|0;n=g;h=0;j=0;while(1){if(n>>>0>=c>>>0)break;l=i[p>>0]|0;m=l<<24>>24<0;v=i[(m?k[t>>2]|0:t)+h>>0]|0;if(v<<24>>24!=0&(j|0)==(v<<24>>24|0)){j=k[f>>2]|0;k[f>>2]=j+4;k[j>>2]=o;h=(h>>>0<((m?k[q>>2]|0:l&255)+-1|0)>>>0&1)+h|0;j=0}m=cc[k[(k[s>>2]|0)+44>>2]&127](s,i[n>>0]|0)|0;v=k[f>>2]|0;k[f>>2]=v+4;k[v>>2]=m;n=n+1|0;j=j+1|0}g=d+(g-a<<2)|0;j=k[f>>2]|0;if((g|0)!=(j|0)){h=j;while(1){h=h+-4|0;if(g>>>0>=h>>>0){g=j;break a}v=k[g>>2]|0;k[g>>2]=k[h>>2];k[h>>2]=v;g=g+4|0}}}else{ec[k[(k[s>>2]|0)+48>>2]&15](s,a,c,d)|0;g=d+(c-a<<2)|0;k[f>>2]=g}while(0);k[e>>2]=(b|0)==(c|0)?g:d+(b-a<<2)|0;p1(t);r=u;return}function Hf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+64|0;n=p+16|0;m=p;c=p+44|0;o=p+32|0;mD(n,0);j=N6(n,56171)|0;nF(m,53107);GA(j,m)|0;Lv(m);if(U5(b,56001)|0?(j=gB(b,56001)|0,d=a+4|0,fY(m,k[(k[d>>2]|0)+2088>>2]|0),j=g7(j,m)|0,Lv(m),j):0){o=k[d>>2]|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,54935,22);XD(o,a,0,c);p1(c)}else e=4;do if((e|0)==4){do if(i[a+128>>0]|0){d=a+8|0;b=a+4|0;j=k[b>>2]|0;e=j+2008|0;h=i[e+11>>0]|0;f=h<<24>>24<0;h=f?k[j+2012>>2]|0:h&255;j=i[d+11>>0]|0;g=j<<24>>24<0;j=g?k[a+12>>2]|0:j&255;c=j>>>0<h>>>0?j:h;if((c|0)!=0?(l=EI(f?k[e>>2]|0:e,g?k[d>>2]|0:d,c)|0,(l|0)!=0):0){c=N6(n,53177)|0;if((l|0)<0)e=9;else e=10}else{c=N6(n,53177)|0;if(h>>>0<j>>>0)e=9;else e=10}if((e|0)==9){nF(m,53186);GA(c,m)|0;Lv(m);break}else if((e|0)==10){nF(m,54958);GA(c,m)|0;Lv(m);break}}else{b=N6(n,53177)|0;nF(m,53186);GA(b,m)|0;Lv(m);b=a+4|0}while(0);m=(w4(k[b>>2]|0)|0)+1196|0;b=k[b>>2]|0;if(!(k[m>>2]|0)){k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;wE(o,52299,20);XD(b,a,0,o);p1(o);break}else{o=(w4(b)|0)+1196|0;On(k[o>>2]|0,n,a+8|0)|0;break}}while(0);Lv(n);r=p;return}function If(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=r;r=r+368|0;c=i+352|0;d=i;e=i+196|0;f=i+184|0;g=i+28|0;h=i+16|0;k[c>>2]=-1;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,29636,6);j=vG(b,d,c)|0;j=(k[c>>2]|0)<0|j^1;p1(d);if(j){if((k[2783]|0)<5){Qd(e,29209,235,4,0,0,0);j=Tn(Tn(Hn(Tn(e,29231,4)|0,a)|0,30253,3)|0,29643,39)|0;Tn(Mn(j,k[c>>2]|0)|0,29683,12)|0;hi(e)}}else{j=k[c>>2]|0;Mf(a,j,x9(a+2024|0)|0,0);mD(d,0);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,56388,5);j=ZH(b,f,d)|0;p1(f);if(!j){if((k[2783]|0)<4){Qd(g,29209,244,3,0,0,0);Tn(Tn(Hn(Tn(g,29231,4)|0,a)|0,30253,3)|0,29696,42)|0;hi(g)}}else kl(a,d);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,29739,7);j=nE(b,h,f)|0;p1(h);if(j)Ng(a,f);p1(f);Lv(d)}r=i;return}function Jf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=r;r=r+80|0;x=z+64|0;s=z+24|0;t=z+8|0;u=z;o=a+312|0;v=Rv(o)|0;w=a+44|0;k[(k[w>>2]|0)+28>>2]=v;o=$L(o)|0;b=k[o>>2]|0;q=o+4|0;if((b|0)!=(k[q>>2]|0)){b=GG(k[w>>2]|0,b)|0;if((b|0)<0)b=~~(+p[k[o>>2]>>3]/+(v|0));k[x>>2]=0;y=x+4|0;k[y>>2]=0;k[x+8>>2]=0;c=k[o>>2]|0;if((k[q>>2]|0)!=(c|0)){j=s+16|0;l=s+32|0;m=s+36|0;n=x+8|0;h=0;do{k[s>>2]=k[6];k[s+4>>2]=k[7];k[s+8>>2]=k[8];k[s+12>>2]=k[9];k[j>>2]=k[6];k[j+4>>2]=k[7];k[j+8>>2]=k[8];k[j+12>>2]=k[9];k[l>>2]=0;k[m>>2]=0;g=c+(h<<5)|0;D0(t,+p[g>>3],v);k[s>>2]=k[t>>2];k[s+4>>2]=k[t+4>>2];k[s+8>>2]=k[t+8>>2];k[s+12>>2]=k[t+12>>2];D0(t,+(k[c+(h<<5)+8>>2]|0),v);k[j>>2]=k[t>>2];k[j+4>>2]=k[t+4>>2];k[j+8>>2]=k[t+8>>2];k[j+12>>2]=k[t+12>>2];k[l>>2]=k[c+(h<<5)+28>>2];e=c+(h<<5)+16|0;d=i[e+11>>0]|0;if(d<<24>>24<0)c=k[c+(h<<5)+20>>2]|0;else c=d&255;if(c|0){EU(e,t,u)|0;k[m>>2]=~~(+p[u>>3]-+p[t>>3]+1.0)>>>0}c=k[y>>2]|0;if((c|0)==(k[n>>2]|0))Tr(x,s);else{d=c;e=s;f=d+40|0;do{k[d>>2]=k[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));k[y>>2]=c+40}_C(k[w>>2]|0,h+b|0,+p[g>>3]);h=h+1|0;c=k[o>>2]|0}while(h>>>0<(k[q>>2]|0)-c>>5>>>0)}b=k[a+40>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,x);b=k[x>>2]|0;c=b;if(b|0){d=k[y>>2]|0;if((d|0)!=(b|0))k[y>>2]=d+(~(((d+-40-c|0)>>>0)/40|0)*40|0);zba(b)}}r=z;return}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,h=0,j=0,m=0,n=0;h=r;r=r+48|0;e=h+32|0;f=h+8|0;n=h+24|0;m=h;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,92636,18);iy(f,b,e);p1(e);j=cW(20)|0;xL(j,f);g=a+104|0;k[g>>2]=j;k[n>>2]=370;k[n+4>>2]=0;k[e>>2]=k[n>>2];k[e+4>>2]=k[n+4>>2];Bq(j,a,e)|0;j=(k[g>>2]|0)+8|0;k[m>>2]=1298;k[m+4>>2]=0;k[e>>2]=k[m>>2];k[e+4>>2]=k[m+4>>2];lr(j,a,e)|0;NO(e);F$(e,0.0,99);F$(e,0.0,105);F$(e,+(k[c>>2]&255),99);F$(e,+(k[c+4>>2]&255),99);F$(e,(i[c+8>>0]|0)==0?1.0:+((i[b+453>>0]^1)&255),99);if(!(i[c+9>>0]|0))d=1.0;else d=+((i[b+452>>0]^1)&255);F$(e,d,99);if(!(i[b+454>>0]|0))d=+(l[a+84>>0]|0);else d=1.0;F$(e,d,99);F$(e,+(l[c+13>>0]|0),99);F$(e,+(l[c+12>>0]|0),99);F$(e,+(l[b+484>>0]|0),99);F$(e,+(l[c+14>>0]|0),99);F$(e,+(l[c+15>>0]|0),99);F$(e,+(l[c+16>>0]|0),99);F$(e,+(l[c+17>>0]|0),99);F$(e,+(l[c+18>>0]|0),99);F$(e,+(l[c+19>>0]|0),99);F$(e,+(l[c+20>>0]|0),99);F$(e,+(l[c+21>>0]|0),99);a=b+612|0;c=i[a+11>>0]|0;if(c<<24>>24<0){c=k[b+616>>2]|0;a=k[a>>2]|0}else c=c&255;l_(e,a,c+1|0);P_(k[g>>2]|0,e);_R(e);p1(f);r=h;return}function Lf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+400|0;f=n+376|0;g=n;h=n+364|0;c=n+352|0;d=n+340|0;e=n+328|0;j=n+172|0;l=n+16|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;mD(g,0);k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,55007,11);do if(ZH(b,c,g)|0){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,55019,3);if(!(nE(g,d,f)|0)){p1(d);p1(c);m=6;break}k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,55023,4);b=nE(g,e,h)|0;p1(e);p1(d);p1(c);if(b){b=JO(h,f)|0;if(b|0){XI(k[a+100>>2]|0,k[(k[a+96>>2]|0)+16>>2]|0,b);break}if((k[2783]|0)<4){Qd(l,52211,753,3,0,0,0);Tn(l,55072,57)|0;hi(l)}}else m=6}else{p1(c);m=6}while(0);if((m|0)==6?(k[2783]|0)<4:0){Qd(j,52211,746,3,0,0,0);d=Tn(j,55028,43)|0;e=a+8|0;m=i[e+11>>0]|0;l=m<<24>>24<0;Tn(d,l?k[e>>2]|0:e,l?k[a+12>>2]|0:m&255)|0;hi(j)}p1(h);Lv(g);p1(f);r=n;return}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0;m=r;r=r+160|0;l=m;f=j[a+2156>>1]|0;do if(!((d|0)==0&(f&255)<<24>>24!=0)){k[a+416>>2]=b;e=a+2157|0;h=a+2164|0;d=k[h>>2]|0;if((f&65535)<256){if((Ub[k[(k[d>>2]|0)+76>>2]&511](d)|0)>(b|0)){b=k[h>>2]|0;b=Ub[k[(k[b>>2]|0)+76>>2]&511](b)|0}if((k[a+2084>>2]|0)!=1)Z2(a+2024|0,b);i[e>>0]=1;d=k[h>>2]|0;Sb[k[(k[d>>2]|0)+16>>2]&511](d,b);WC(a+236|0,a,b,0);b=k[a+452>>2]|0;d=a+448|0;if((b|0)==(d|0))break;e=b;do{a=k[e+8>>2]|0;Rb[k[(k[a>>2]|0)+68>>2]&2047](a);e=k[b+4>>2]|0;b=e}while((b|0)!=(d|0))}else{if(Ub[k[(k[d>>2]|0)+68>>2]&511](d)|0)break;if((k[a+2084>>2]|0)==1)break;f=a+2056|0;g=(k[f>>2]|0)-b|0;d=~~(+(c|0)*+p[a+1384>>3]);e=~~+p[a+1392>>3];if((g|0)<=(d|0)&(g|0)>(0-e|0)){a=k[h>>2]|0;Sb[k[(k[a>>2]|0)+48>>2]&511](a,b);break}if((k[2783]|0)<4?(i[(k[(k[a+1256>>2]|0)+200>>2]|0)+1189>>0]|0)!=0:0){Qd(l,29209,419,3,0,0,0);h=Tn(Mn(Tn(Tn(Hn(Tn(l,29231,4)|0,a)|0,30253,3)|0,29869,76)|0,b)|0,29946,15)|0;Mn(Tn(Mn(Tn(Mn(Tn(Ln(h,k[f>>2]|0)|0,29962,10)|0,g)|0,29973,23)|0,d)|0,29997,22)|0,e)|0;hi(l)}_s(a,b,1);break}}while(0);r=m;return}function Nf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=k[e+4>>2]|0;c=a;k[c>>2]=k[e>>2];k[c+4>>2]=d;iI(a+8|0,b+8|0);iI(a+20|0,b+20|0);QD(a+32|0,b+32|0);iI(a+44|0,b+44|0);k[a+56>>2]=k[b+56>>2];i[a+60>>0]=i[b+60>>0]|0;iI(a+64|0,b+64|0);iI(a+76|0,b+76|0);i[a+88>>0]=i[b+88>>0]|0;c=a+92|0;d=b+92|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;iI(a+104|0,b+104|0);i[a+116>>0]=i[b+116>>0]|0;iI(a+120|0,b+120|0);iI(a+132|0,b+132|0);i[a+144>>0]=i[b+144>>0]|0;c=a+148|0;d=b+148|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;iI(a+160|0,b+160|0);i[a+172>>0]=i[b+172>>0]|0;iI(a+176|0,b+176|0);iI(a+188|0,b+188|0);c=b+200|0;d=k[c+4>>2]|0;e=a+200|0;k[e>>2]=k[c>>2];k[e+4>>2]=d;i[a+208>>0]=i[b+208>>0]|0;ot(a+212|0,b+212|0);iI(a+224|0,b+224|0);iI(a+236|0,b+236|0);i[a+248>>0]=i[b+248>>0]|0;e=a+252|0;d=b+252|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];i[e+8>>0]=i[d+8>>0]|0;iI(a+264|0,b+264|0);i[a+276>>0]=i[b+276>>0]|0;iI(a+280|0,b+280|0);iI(a+292|0,b+292|0);e=b+304|0;d=k[e+4>>2]|0;c=a+304|0;k[c>>2]=k[e>>2];k[c+4>>2]=d;i[a+312>>0]=i[b+312>>0]|0;ot(a+316|0,b+316|0);PD(a+328|0,b+328|0);return}function Of(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+176|0;c=e+160|0;d=e;k[c>>2]=b;k[c+4>>2]=0;b=lZ(c)|0;do switch(b<<24>>24){case 12:{b=bh(0,c)|0;break}case 5:{b=_j(0,c)|0;break}case 2:{b=cW(8)|0;k[b+4>>2]=2;k[b>>2]=8012;break}case 1:{b=cW(8)|0;k[b+4>>2]=1;k[b>>2]=8028;break}case 6:{b=iG(0,c)|0;break}case 4:{b=Lp(0,c)|0;break}case 10:{b=MI(0,c)|0;break}case 11:{b=cW(16)|0;c=zo(c)|0;k[b+4>>2]=11;k[b>>2]=8044;d=b+8|0;k[d>>2]=c;k[d+4>>2]=M;break}case 7:{b=nu(a,c)|0;break}case 13:{b=cW(8)|0;k[b+4>>2]=13;k[b>>2]=8060;break}case 14:{b=rJ(0,c)|0;break}case 15:{b=Yf(0,c)|0;break}case 16:{b=Fp(0,c)|0;break}case 8:{b=cW(16)|0;c=zo(c)|0;k[b+4>>2]=8;k[b>>2]=8076;d=b+8|0;k[d>>2]=c;k[d+4>>2]=M;break}case 9:{b=cW(16)|0;c=zo(c)|0;k[b+4>>2]=9;k[b>>2]=8092;d=b+8|0;k[d>>2]=c;k[d+4>>2]=M;break}case 17:{b=cW(12)|0;d=dO(c)|0;k[b+4>>2]=17;k[b>>2]=8108;j[b+8>>1]=d;break}case 18:{b=gH(0,c)|0;break}case 19:{b=xH(0,c)|0;break}default:if((k[2783]|0)<4){Qd(d,42924,90,3,0,0,0);Mn(Tn(d,42937,52)|0,b&255)|0;hi(d);b=0}else b=0}while(0);r=e;return b|0}function Pf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;ar(a,b);f=Tn(b,68043,14)|0;c=a+56|0;c=Tn(tn(f,k[c>>2]|0,k[c+4>>2]|0)|0,68058,9)|0;f=a+64|0;tn(c,k[f>>2]|0,k[f+4>>2]|0)|0;f=Tn(b,68068,11)|0;c=a+72|0;f=Tn(Ln(f,k[c>>2]|0)|0,68004,5)|0;e=a+80|0;d=e;tn(f,k[d>>2]|0,k[d+4>>2]|0)|0;d=Tn(b,68080,8)|0;c=A5(k[e>>2]|0,k[e+4>>2]|0,k[c>>2]|0,0)|0;tn(d,c,M)|0;c=Tn(b,68089,6)|0;d=a+88|0;c=Tn(Ln(c,(k[d>>2]|0)>>>16)|0,104158,1)|0;Ln(c,k[d>>2]&65535)|0;d=Tn(b,68096,5)|0;c=a+92|0;d=Tn(Ln(d,(k[c>>2]|0)>>>8)|0,104158,1)|0;Ln(d,k[c>>2]&255)|0;c=Tn(b,68102,9)|0;c=c+(k[(k[c>>2]|0)+-12>>2]|0)+4|0;k[c>>2]=k[c>>2]&-75|8;c=0;do{f=Tn(b,68126,2)|0;Tn(Ln(f,k[a+96+(c<<2)>>2]|0)|0,103359,2)|0;c=c+1|0}while((c|0)!=9);f=Tn(b,103292,1)|0;f=f+(k[(k[f>>2]|0)+-12>>2]|0)+4|0;k[f>>2]=k[f>>2]&-75|2;f=Tn(b,68112,13)|0;Ln(f,k[a+132>>2]|0)|0;return}function Qf(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var l=0,n=0;k[c>>2]=a;k[f>>2]=d;if(h&2)if((e-d|0)<3)a=1;else{k[f>>2]=d+1;i[d>>0]=-17;l=k[f>>2]|0;k[f>>2]=l+1;i[l>>0]=-69;l=k[f>>2]|0;k[f>>2]=l+1;i[l>>0]=-65;l=4}else l=4;a:do if((l|0)==4){n=b;a=k[c>>2]|0;while(1){if(a>>>0>=b>>>0){a=0;break a}d=j[a>>1]|0;l=d&65535;if(l>>>0>g>>>0){a=2;break a}do if((d&65535)<128){a=k[f>>2]|0;if((e-a|0)<1){a=1;break a}k[f>>2]=a+1;i[a>>0]=d}else{if((d&65535)<2048){a=k[f>>2]|0;if((e-a|0)<2){a=1;break a}k[f>>2]=a+1;i[a>>0]=l>>>6|192;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=l&63|128;break}if((d&65535)<55296){a=k[f>>2]|0;if((e-a|0)<3){a=1;break a}k[f>>2]=a+1;i[a>>0]=l>>>12|224;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=l>>>6&63|128;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=l&63|128;break}if((d&65535)>=56320){if((d&65535)<57344){a=2;break a}a=k[f>>2]|0;if((e-a|0)<3){a=1;break a}k[f>>2]=a+1;i[a>>0]=l>>>12|224;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=l>>>6&63|128;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=l&63|128;break}if((n-a|0)<4){a=1;break a}a=a+2|0;d=m[a>>1]|0;if((d&64512|0)!=56320){a=2;break a}if((e-(k[f>>2]|0)|0)<4){a=1;break a}h=l&960;if(((h<<10)+65536|l<<10&64512|d&1023)>>>0>g>>>0){a=2;break a}k[c>>2]=a;a=(h>>>6)+1|0;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=a>>>2|240;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=l>>>2&15|a<<4&48|128;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=l<<4&48|d>>>6&15|128;l=k[f>>2]|0;k[f>>2]=l+1;i[l>>0]=d&63|128}while(0);a=(k[c>>2]|0)+2|0;k[c>>2]=a}}while(0);return a|0}function Rf(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;s=r;r=r+16|0;q=s;p=k_(g,111604)|0;l=k_(g,111620)|0;Sb[k[(k[l>>2]|0)+20>>2]&511](q,l);n=q+11|0;m=i[n>>0]|0;o=q+4|0;if((m<<24>>24<0?k[o>>2]|0:m&255)|0){k[f>>2]=d;g=i[a>>0]|0;switch(g<<24>>24){case 43:case 45:{m=cc[k[(k[p>>2]|0)+28>>2]&127](p,g)|0;g=k[f>>2]|0;k[f>>2]=g+1;i[g>>0]=m;g=a+1|0;break}default:g=a}a:do if((c-g|0)>1?(i[g>>0]|0)==48:0){h=g+1|0;switch(i[h>>0]|0){case 88:case 120:break;default:break a}m=cc[k[(k[p>>2]|0)+28>>2]&127](p,48)|0;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=m;j=cc[k[(k[p>>2]|0)+28>>2]&127](p,i[h>>0]|0)|0;m=k[f>>2]|0;k[f>>2]=m+1;i[m>>0]=j;g=g+2|0}while(0);b:do if((g|0)!=(c|0)){h=c;j=g;while(1){h=h+-1|0;if(j>>>0>=h>>>0)break b;m=i[j>>0]|0;i[j>>0]=i[h>>0]|0;i[h>>0]=m;j=j+1|0}}while(0);m=Ub[k[(k[l>>2]|0)+16>>2]&511](l)|0;l=g;h=0;j=0;while(1){if(l>>>0>=c>>>0)break;t=i[((i[n>>0]|0)<0?k[q>>2]|0:q)+h>>0]|0;if(t<<24>>24!=0&(j|0)==(t<<24>>24|0)){j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=m;j=i[n>>0]|0;h=(h>>>0<((j<<24>>24<0?k[o>>2]|0:j&255)+-1|0)>>>0&1)+h|0;j=0}u=cc[k[(k[p>>2]|0)+28>>2]&127](p,i[l>>0]|0)|0;t=k[f>>2]|0;k[f>>2]=t+1;i[t>>0]=u;l=l+1|0;j=j+1|0}g=d+(g-a)|0;h=k[f>>2]|0;if((g|0)!=(h|0)){while(1){h=h+-1|0;if(g>>>0>=h>>>0)break;u=i[g>>0]|0;i[g>>0]=i[h>>0]|0;i[h>>0]=u;g=g+1|0}g=k[f>>2]|0}}else{ec[k[(k[p>>2]|0)+32>>2]&15](p,a,c,d)|0;g=d+(c-a)|0;k[f>>2]=g}k[e>>2]=(b|0)==(c|0)?g:d+(b-a)|0;p1(q);r=s;return}function Sf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0;o=b;if((((e&4|0)!=0?(o-a|0)>2:0)?(i[a>>0]|0)==-17:0)?(i[a+1>>0]|0)==-69:0){e=0;n=(i[a+2>>0]|0)==-65?a+3|0:a}else{e=0;n=a}a:while(1){if(!(e>>>0<c>>>0&n>>>0<b>>>0)){f=39;break}k=i[n>>0]|0;m=k&255;if(m>>>0>d>>>0){f=39;break}do if(k<<24>>24<=-1){if((k&255)<194){f=39;break a}if((k&255)<224){if((o-n|0)<2){f=39;break a}f=l[n+1>>0]|0;if((f&192|0)!=128){f=39;break a}if((f&63|m<<6&1984)>>>0>d>>>0){f=39;break a}else{f=n+2|0;break}}if((k&255)<240){g=n;if((o-g|0)<3){f=39;break a}h=i[n+1>>0]|0;f=i[n+2>>0]|0;switch(k<<24>>24){case -32:{if((h&-32)<<24>>24!=-96){f=19;break a}break}case -19:{if((h&-32)<<24>>24!=-128){f=21;break a}break}default:if((h&-64)<<24>>24!=-128){f=23;break a}}f=f&255;if((f&192|0)!=128){f=39;break a}if(((h&255)<<6&4032|m<<12&61440|f&63)>>>0>d>>>0){f=39;break a}else{f=n+3|0;break}}if((k&255)>=245){f=39;break a}g=n;if((c-e|0)>>>0<2|(o-g|0)<4){f=39;break a}j=i[n+1>>0]|0;f=i[n+2>>0]|0;h=i[n+3>>0]|0;switch(k<<24>>24){case -16:{if((j+112&255)>=48){f=30;break a}break}case -12:{if((j&-16)<<24>>24!=-128){f=32;break a}break}default:if((j&-64)<<24>>24!=-128){f=34;break a}}g=f&255;if((g&192|0)!=128){f=39;break a}f=h&255;if((f&192|0)!=128){f=39;break a}if(((j&255)<<12&258048|m<<18&1835008|g<<6&4032|f&63)>>>0>d>>>0){f=39;break a}else{e=e+1|0;f=n+4|0}}else f=n+1|0;while(0);e=e+1|0;n=f}if((f|0)==19)e=g-a|0;else if((f|0)==21)e=g-a|0;else if((f|0)==23)e=g-a|0;else if((f|0)==30)e=g-a|0;else if((f|0)==32)e=g-a|0;else if((f|0)==34)e=g-a|0;else if((f|0)==39)e=n-a|0;return e|0}function Tf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0;s=r;r=r+48|0;n=s+32|0;o=s;q=b+4|0;a=k[q>>2]|0;c=k[b>>2]|0;e=c;if((a|0)!=(c|0)){d=a-c>>5;a=0;c=0;do{m=(k[e+(c<<5)+12>>2]|0)>0;a=a|m;c=c+1|0}while(c>>>0<d>>>0&(m^1));if(a){ot(n,b);c=k[b>>2]|0;a=k[q>>2]|0;if((a|0)!=(c|0))do{k[q>>2]=a+-32;p1(a+-16|0);a=k[q>>2]|0}while((a|0)!=(c|0));g=n+4|0;a=k[n>>2]|0;if((k[g>>2]|0)!=(a|0)){h=b+8|0;i=o+8|0;j=o+12|0;l=o+16|0;m=o+28|0;f=0;do{c=a+(f<<5)|0;d=a+(f<<5)+12|0;e=k[d>>2]|0;k[d>>2]=0;d=k[q>>2]|0;if((d|0)==(k[h>>2]|0))Vn(b,c);else{k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[d+12>>2]=k[c+12>>2];iI(d+16|0,a+(f<<5)+16|0);k[d+28>>2]=k[a+(f<<5)+28>>2];k[q>>2]=(k[q>>2]|0)+32}if((e|0)>0){c=a+(f<<5)+8|0;a=0;do{p[o>>3]=-1.0;k[i>>2]=-1;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[j+16>>2]=0;k[i>>2]=k[c>>2];d=k[q>>2]|0;if((d|0)==(k[h>>2]|0))Vn(b,o);else{k[d>>2]=k[o>>2];k[d+4>>2]=k[o+4>>2];k[d+8>>2]=k[o+8>>2];k[d+12>>2]=k[o+12>>2];iI(d+16|0,l);k[d+28>>2]=k[m>>2];k[q>>2]=(k[q>>2]|0)+32}p1(l);a=a+1|0}while((a|0)!=(e|0))}f=f+1|0;a=k[n>>2]|0}while(f>>>0<(k[g>>2]|0)-a>>5>>>0)}qH(n)}}r=s;return}function Uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=r;r=r+16|0;h=i;e=a+8|0;a:do if(k[e>>2]|0?(g=k[a>>2]|0,d=a+4|0,k[a>>2]=d,k[(k[d>>2]|0)+8>>2]=0,k[d>>2]=0,k[e>>2]=0,d=k[g+4>>2]|0,d=(d|0)==0?g:d,d|0):0){g=k[c>>2]|0;e=k[b>>2]|0;f=e;while(1){if((f|0)==(g|0))break;j=d+16|0;MM(j,f+16|0)|0;MM(d+28|0,f+28|0)|0;f=ds(d)|0;j=Om(a,h,j)|0;wF(a,k[h>>2]|0,j,d);d=k[e+4>>2]|0;if(!d){d=e;while(1){e=k[d+8>>2]|0;if((k[e>>2]|0)==(d|0))break;else d=e}}else while(1){e=k[d>>2]|0;if(!e){e=d;break}else d=e}k[b>>2]=e;if(!f)break a;else{d=f;f=e}}e=k[d+8>>2]|0;if(e){d=e;while(1){e=k[d+8>>2]|0;if(!e)break;else d=e}}Zu(a,d)}while(0);d=k[b>>2]|0;f=k[c>>2]|0;if((d|0)!=(f|0)){e=d;while(1){ft(a,e+16|0)|0;e=k[d+4>>2]|0;if(!e)while(1){e=k[d+8>>2]|0;if((k[e>>2]|0)==(d|0)){d=e;break}else d=e}else{d=e;while(1){e=k[d>>2]|0;if(!e)break;else d=e}}k[b>>2]=d;if((d|0)==(f|0))break;else e=d}}r=i;return}function Vf(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,m=0,n=0,o=0,p=0,q=0,r=0;k[c>>2]=a;k[f>>2]=d;if(h&4){a=k[c>>2]|0;d=b;if((((d-a|0)>2?(i[a>>0]|0)==-17:0)?(i[a+1>>0]|0)==-69:0)?(i[a+2>>0]|0)==-65:0)k[c>>2]=a+3}else d=b;a:while(1){p=k[c>>2]|0;a=p>>>0<b>>>0;if(!a){r=40;break}q=k[f>>2]|0;if(q>>>0>=e>>>0){r=40;break}m=i[p>>0]|0;o=m&255;do if(m<<24>>24>-1){if(o>>>0>g>>>0){a=2;break a}k[q>>2]=o;k[c>>2]=p+1}else{if((m&255)<194){a=2;break a}if((m&255)<224){if((d-p|0)<2){a=1;break a}a=l[p+1>>0]|0;if((a&192|0)!=128){a=2;break a}a=a&63|o<<6&1984;if(a>>>0>g>>>0){a=2;break a}k[q>>2]=a;k[c>>2]=p+2;break}if((m&255)<240){if((d-p|0)<3){a=1;break a}h=i[p+1>>0]|0;a=i[p+2>>0]|0;switch(m<<24>>24){case -32:{if((h&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((h&-32)<<24>>24!=-128){a=2;break a}break}default:if((h&-64)<<24>>24!=-128){a=2;break a}}a=a&255;if((a&192|0)!=128){a=2;break a}a=(h&255)<<6&4032|o<<12&61440|a&63;if(a>>>0>g>>>0){a=2;break a}k[q>>2]=a;k[c>>2]=p+3;break}if((m&255)>=245){a=2;break a}if((d-p|0)<4){a=1;break a}n=i[p+1>>0]|0;a=i[p+2>>0]|0;j=i[p+3>>0]|0;switch(m<<24>>24){case -16:{if((n+112&255)>=48){a=2;break a}break}case -12:{if((n&-16)<<24>>24!=-128){a=2;break a}break}default:if((n&-64)<<24>>24!=-128){a=2;break a}}h=a&255;if((h&192|0)!=128){a=2;break a}a=j&255;if((a&192|0)!=128){a=2;break a}a=(n&255)<<12&258048|o<<18&1835008|h<<6&4032|a&63;if(a>>>0>g>>>0){a=2;break a}k[q>>2]=a;k[c>>2]=p+4}while(0);k[f>>2]=(k[f>>2]|0)+4}if((r|0)==40)a=a&1;return a|0}function Wf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;Bt(a,b);d=k[a+56>>2]|0;i[k[b>>2]>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+64>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[a+72>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;i[d>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+80>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=j[a+88>>1]|0;i[c>>0]=(d&65535)>>>8;i[(k[b>>2]|0)+1>>0]=d;d=(k[b>>2]|0)+2|0;k[b>>2]=d;c=j[a+90>>1]|0;i[d>>0]=(c&65535)>>>8;i[(k[b>>2]|0)+1>>0]=c;c=(k[b>>2]|0)+2|0;k[b>>2]=c;d=j[a+92>>1]|0;i[c>>0]=(d&65535)>>>8;i[(k[b>>2]|0)+1>>0]=d;d=(k[b>>2]|0)+2|0;k[b>>2]=d;i[d>>0]=0;i[(k[b>>2]|0)+1>>0]=0;d=(k[b>>2]|0)+2|0;k[b>>2]=d;c=0;do{e=k[a+96+(c<<2)>>2]|0;i[d>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=c+1|0}while((c|0)!=9);e=k[a+132>>2]|0;i[d>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;d=(k[b>>2]|0)+4|0;k[b>>2]=d;e=k[a+136>>2]|0;i[d>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;k[b>>2]=(k[b>>2]|0)+4;return}function Xf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;j=a+4|0;m=k[b>>2]|0;b=m;a:do if((m|0)!=(j|0)){h=k[d>>2]|0;i=(h|0)==0;if(!i){e=k[m+16>>2]|0;if((FJ(h,e)|0)<0){l=6;break}}else{if((k[d+4>>2]|0)>>>0<(k[m+20>>2]|0)>>>0){l=6;break}e=k[m+16>>2]|0}if(!e){if((k[m+20>>2]|0)>>>0>=(k[d+4>>2]|0)>>>0)l=31}else if((FJ(e,h)|0)>=0)l=31;if((l|0)==31){k[c>>2]=b;b=c;break}f=m+4|0;b=k[f>>2]|0;g=(b|0)==0;if(g){e=m;while(1){b=k[e+8>>2]|0;if((k[b>>2]|0)==(e|0))break;else e=b}}else while(1){e=k[b>>2]|0;if(!e)break;else b=e}do if((b|0)!=(j|0)){if(i){if((k[d+4>>2]|0)>>>0<(k[b+20>>2]|0)>>>0)break}else if((FJ(h,k[b+16>>2]|0)|0)<0)break;b=gm(a,c,d)|0;break a}while(0);if(g){k[c>>2]=m;b=f;break}else{k[c>>2]=b;break}}else l=6;while(0);b:do if((l|0)==6){do if((m|0)!=(k[a>>2]|0)){b=k[m>>2]|0;if(!b){b=m;while(1){e=k[b+8>>2]|0;if((k[e>>2]|0)==(b|0))b=e;else break}}else while(1){e=k[b+4>>2]|0;if(!e){e=b;break}else b=e}b=e;f=k[e+16>>2]|0;if(!f){if((k[e+20>>2]|0)>>>0<(k[d+4>>2]|0)>>>0)break}else if((FJ(f,k[d>>2]|0)|0)<0)break;b=gm(a,c,d)|0;break b}while(0);if(!(k[m>>2]|0)){k[c>>2]=m;b=m;break}else{k[c>>2]=b;b=b+4|0;break}}while(0);return b|0}function Yf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;v=r;r=r+112|0;t=v+88|0;o=v;p=v+76|0;u=v+64|0;q=xF(b)|0;k[t>>2]=t;s=t+4|0;k[s>>2]=t;k[t+8>>2]=0;if((q|0)>0){c=o+4|0;d=o+8|0;e=o+12|0;f=o+16|0;g=o+12|0;h=o+24|0;j=o+32|0;l=o+48|0;m=o+56|0;n=o+8|0;a=0;do{VH(p,b);y=_J()|0;z=M;z=n_(y|0,z|0,(xF(b)|0)+100|0,0)|0;y=M;B=zo(b)|0;A=M;w=lZ(b)|0;k[e>>2]=0;k[f>>2]=0;k[d>>2]=g;k[o>>2]=6464;k[c>>2]=6492;x=h;k[x>>2]=B;k[x+4>>2]=A;iI(j,p);x=l;k[x>>2]=z;k[x+4>>2]=y;i[m>>0]=w;Ts(t,o);k[o>>2]=6464;k[c>>2]=6492;p1(j);k[o>>2]=1972;k[c>>2]=2e3;Bo(o);dH(n,k[g>>2]|0);k[c>>2]=2024;p1(p);a=a+1|0}while((a|0)!=(q|0));a=k[s>>2]|0}else a=t;e=cW(20)|0;k[u>>2]=u;d=u+4|0;k[d>>2]=u;k[u+8>>2]=0;c=a;if((c|0)==(t|0))a=u;else{do{ov(u,a+8|0);a=k[c+4>>2]|0;c=a}while((c|0)!=(t|0));a=k[d>>2]|0}k[e+4>>2]=15;k[e>>2]=8172;d=e+8|0;k[d>>2]=d;k[e+12>>2]=d;k[e+16>>2]=0;c=a;if((c|0)!=(u|0))do{ov(d,a+8|0);a=k[c+4>>2]|0;c=a}while((c|0)!=(u|0));tE(u);tE(t);r=v;return e|0}function Zf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0;o=b;if((((e&4|0)!=0?(o-a|0)>2:0)?(i[a>>0]|0)==-17:0)?(i[a+1>>0]|0)==-69:0){n=0;e=(i[a+2>>0]|0)==-65?a+3|0:a}else{n=0;e=a}a:while(1){if(!(n>>>0<c>>>0&e>>>0<b>>>0)){f=40;break}k=i[e>>0]|0;m=k&255;do if(k<<24>>24<=-1){if((k&255)<194){f=40;break a}if((k&255)<224){if((o-e|0)<2){f=40;break a}f=l[e+1>>0]|0;if((f&192|0)!=128){f=40;break a}if((f&63|m<<6&1984)>>>0>d>>>0){f=40;break a}e=e+2|0;break}if((k&255)<240){g=e;if((o-g|0)<3){f=40;break a}h=i[e+1>>0]|0;f=i[e+2>>0]|0;switch(k<<24>>24){case -32:{if((h&-32)<<24>>24!=-96){f=20;break a}break}case -19:{if((h&-32)<<24>>24!=-128){f=22;break a}break}default:if((h&-64)<<24>>24!=-128){f=24;break a}}f=f&255;if((f&192|0)!=128){f=40;break a}if(((h&255)<<6&4032|m<<12&61440|f&63)>>>0>d>>>0){f=40;break a}else{e=e+3|0;break}}if((k&255)>=245){f=40;break a}g=e;if((o-g|0)<4){f=40;break a}j=i[e+1>>0]|0;f=i[e+2>>0]|0;h=i[e+3>>0]|0;switch(k<<24>>24){case -16:{if((j+112&255)>=48){f=31;break a}break}case -12:{if((j&-16)<<24>>24!=-128){f=33;break a}break}default:if((j&-64)<<24>>24!=-128){f=35;break a}}g=f&255;if((g&192|0)!=128){f=40;break a}f=h&255;if((f&192|0)!=128){f=40;break a}if(((j&255)<<12&258048|m<<18&1835008|g<<6&4032|f&63)>>>0>d>>>0){f=40;break a}else e=e+4|0}else{if(m>>>0>d>>>0){f=40;break a}e=e+1|0}while(0);n=n+1|0}if((f|0)==20)e=g-a|0;else if((f|0)==22)e=g-a|0;else if((f|0)==24)e=g-a|0;else if((f|0)==31)e=g-a|0;else if((f|0)==33)e=g-a|0;else if((f|0)==35)e=g-a|0;else if((f|0)==40)e=e-a|0;return e|0}function _f(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+336|0;g=h+324|0;e=h+168|0;f=h+156|0;d=h;do if((X9(k[c>>2]|0)|0)==200){KJ(g,k[c>>2]|0);b=a+112|0;d=k[b>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=0;if(!(kk(a,g)|0))fw(a);dZ(a+140|0,115628)|0;p1(g)}else{if((X9(k[c>>2]|0)|0)==302){b=a+112|0;d=k[b>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=0;b=a+140|0;MM(b,nb(k[c>>2]|0)|0)|0;if((k[2783]|0)<3){Qd(e,49969,91,2,0,0,0);c=Tn(e,52102,25)|0;g=i[b+11>>0]|0;f=g<<24>>24<0;Tn(c,f?k[b>>2]|0:b,f?k[a+144>>2]|0:g&255)|0;hi(e)}Qi(a);break}iI(g,b+56|0);e=X9(k[c>>2]|0)|0;KJ(f,k[c>>2]|0);if((k[2783]|0)<5){Qd(d,49969,98,4,0,0,0);Mn(Tn(d,50098,32)|0,e)|0;hi(d)}fw(a);b=a+112|0;d=k[b>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=0;dZ(a+140|0,115628)|0;b=k[a+60>>2]|0;if(b|0)jc[k[(k[b>>2]|0)+8>>2]&63](b,g,e,f);p1(f);p1(g)}while(0);r=h;return}function $f(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+576|0;n=w+424|0;q=w;m=w+24|0;v=w+16|0;p=w+12|0;s=w+8|0;h=w+564|0;j=w+4|0;o=w+464|0;k[v>>2]=m;u=v+4|0;k[u>>2]=1306;a=LZ(e)|0;k[s>>2]=a;a=k_(s,111636)|0;i[h>>0]=0;k[j>>2]=k[c>>2];l=k[e+4>>2]|0;k[n>>2]=k[j>>2];if(oc(b,n,d,s,l,f,h,a,v,p,m+400|0)|0){ec[k[(k[a>>2]|0)+48>>2]&15](a,108071,108081,n)|0;a=(k[p>>2]|0)-(k[v>>2]|0)|0;if((a|0)>392){a=lc((a>>2)+2|0)|0;d=a;if(!a)a=0}else{a=o;d=0}if(i[h>>0]|0){i[a>>0]=45;a=a+1|0}l=n+40|0;m=n;j=k[v>>2]|0;while(1){if(j>>>0>=(k[p>>2]|0)>>>0)break;h=k[j>>2]|0;e=n;while(1){if((e|0)==(l|0)){e=l;break}if((k[e>>2]|0)==(h|0))break;e=e+4|0}i[a>>0]=i[108071+(e-m>>2)>>0]|0;j=j+4|0;a=a+1|0}i[a>>0]=0;k[q>>2]=g;bZ(o,107972,q)|0;if(d|0)wc(d)}a=k[b>>2]|0;do if(a){d=k[a+12>>2]|0;if((d|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[d>>2]|0;if((a|0)==-1){k[b>>2]=0;e=1;break}else{e=(k[b>>2]|0)==0;break}}else e=1;while(0);a=k[c>>2]|0;do if(a){d=k[a+12>>2]|0;if((d|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[d>>2]|0;if((a|0)!=-1)if(e)break;else{t=32;break}else{k[c>>2]=0;t=30;break}}else t=30;while(0);if((t|0)==30?e:0)t=32;if((t|0)==32)k[f>>2]=k[f>>2]|2;d=k[b>>2]|0;oU(k[s>>2]|0)|0;a=k[v>>2]|0;k[v>>2]=0;if(a|0)Rb[k[u>>2]&2047](a);r=w;return d|0}function ag(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;o=r;r=r+32|0;j=o+16|0;i=o+12|0;m=o+8|0;g=o+4|0;h=o;k[m>>2]=100;a=b+4|0;k[g>>2]=k[a>>2];k[h>>2]=b;n=b+8|0;l=k[n>>2]|0;k[i>>2]=k[g>>2];k[j>>2]=k[h>>2];ie(i,j,l,m)|0;if(k[n>>2]|0){c=k[a>>2]|0;a=k[c+4>>2]|0;e=a;i=c+8|0;j=c+24|0;d=j;f=k[d>>2]|0;d=k[d+4>>2]|0;a:do if((e|0)==(b|0)){h=0;g=c;e=f;c=0;a=0}else{h=0;l=a;g=c;c=0;a=0;while(1){while(1){m=l;p=m+16|0;q=k[p+4>>2]|0;if(!(d>>>0>q>>>0|((d|0)==(q|0)?f>>>0>(k[p>>2]|0)>>>0:0)))break;k[i>>2]=(k[i>>2]|0)+(k[m+8>>2]|0);f=j;s=k[f>>2]|0;f=k[f+4>>2]|0;q=m+24|0;m=k[q>>2]|0;q=k[q+4>>2]|0;p=f>>>0<q>>>0|(f|0)==(q|0)&s>>>0<m>>>0;d=j;k[d>>2]=p?m:s;k[d+4>>2]=p?q:f;d=l;l=k[e+4>>2]|0;f=d;e=f+4|0;k[(k[f>>2]|0)+4>>2]=k[e>>2];k[k[e>>2]>>2]=k[d>>2];k[n>>2]=(k[n>>2]|0)+-1;zba(d);e=l;d=j;f=k[d>>2]|0;d=k[d+4>>2]|0;if((e|0)==(b|0)){e=f;break a}}h=(k[i>>2]|0)+h|0;l=g+16|0;i=k[l>>2]|0;l=k[l+4>>2]|0;c=y0(f|0,d|0,c|0,a|0)|0;c=n_(c|0,M|0,i|0,l|0)|0;a=M;l=k[e+4>>2]|0;e=l;i=m+8|0;j=m+24|0;d=j;f=k[d>>2]|0;d=k[d+4>>2]|0;if((e|0)==(b|0)){g=m;e=f;break}else g=m}}while(0);s=g+16|0;s=n_(e|0,d|0,k[s>>2]|0,k[s+4>>2]|0)|0;a=y0(s|0,M|0,c|0,a|0)|0;c=M;if(!((a|0)==0&(c|0)==0))a=~~(+((k[i>>2]|0)+h|0)*8.0*1.0e3/((+(a>>>0)+4294967296.0*+(c>>>0))*1024.0));else a=0}else a=0;r=o;return a|0}function bg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;l=r;r=r+208|0;d=l+192|0;f=l+168|0;g=l+184|0;n=l+176|0;m=l+160|0;h=l;k[g>>2]=c;j=cW(128)|0;e=a+4|0;o=k[e>>2]|0;p=(w4(o)|0)+896|0;er(j,o+1952|0,k[p>>2]|0);k[j>>2]=12752;p=j+112|0;o=p;k[o>>2]=0;k[o+4>>2]=0;k[j+120>>2]=0;k[j+104>>2]=c;o=_J()|0;c=p;k[c>>2]=o;k[c+4>>2]=M;c=j+24|0;aE(c);G4(j,1);k[n>>2]=122;k[n+4>>2]=0;k[d>>2]=k[n>>2];k[d+4>>2]=k[n+4>>2];jq(c,a,d)|0;k[m>>2]=123;k[m+4>>2]=0;k[d>>2]=k[m>>2];k[d+4>>2]=k[m+4>>2];jq(j+16|0,a,d)|0;c=j+56|0;b=(Ud(a+80|0,b,j,0)|0)^1;if((k[2783]|0)<5&b){Qd(h,47640,386,4,0,0,0);n=Tn(h,47656,10)|0;n=Tn(Tn(Mn(n,k[(k[e>>2]|0)+2088>>2]|0)|0,68429,2)|0,47754,25)|0;n=Tn(Mn(n,k[g>>2]|0)|0,47780,10)|0;p=i[j+67>>0]|0;o=p<<24>>24<0;Tn(n,o?k[c>>2]|0:c,o?k[j+60>>2]|0:p&255)|0;hi(h)}k[d>>2]=g;Dl(f,a+368|0,g,113535,d,l+200|0);k[(k[f>>2]|0)+20>>2]=j;r=l;return}function cg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;c=r;r=r+64|0;d=c+40|0;n=c;j=c+32|0;h=c+24|0;g=c+16|0;f=c+8|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,47891,4);gx(a,b,d);p1(d);m=a+40|0;l=a+44|0;k[m>>2]=1972;k[l>>2]=2e3;k[a+52>>2]=0;k[a+56>>2]=0;k[a+48>>2]=a+52;e=a+60|0;X0(e);k[a>>2]=12548;k[m>>2]=12684;k[l>>2]=12712;k[e>>2]=12736;e=cW(20)|0;FY(e,e$(b)|0);k[a+76>>2]=e;ue(a+80|0,w4(b)|0,0,b+2088|0);VU(a+352|0,0,0,0);k[a+372>>2]=0;k[a+376>>2]=0;k[a+368>>2]=a+372;p[a+384>>3]=0.0;e=a+392|0;K6(e);l=a+400|0;k[l>>2]=1520;m=a+404|0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[m+12>>2]=0;k[m+16>>2]=0;k[m+20>>2]=0;m=a+428|0;i[a+436>>0]=0;k[a+432>>2]=-1;k[m>>2]=1500;k[a+440>>2]=0;k[n>>2]=1235;k[n+4>>2]=0;k[d>>2]=k[n>>2];k[d+4>>2]=k[n+4>>2];Ww(m,l,d)|0;k[e>>2]=1576;k[l>>2]=1600;k[a+444>>2]=-1;b=(m1(w4(b)|0)|0)+36|0;k[j>>2]=343;k[j+4>>2]=0;k[d>>2]=k[j>>2];k[d+4>>2]=k[j+4>>2];Vv(b,a,d);k[h>>2]=1264;k[h+4>>2]=0;k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];qr(a+96|0,a,d)|0;k[g>>2]=1265;k[g+4>>2]=0;k[d>>2]=k[g>>2];k[d+4>>2]=k[g+4>>2];qr(a+104|0,a,d)|0;k[f>>2]=1266;k[f+4>>2]=0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];qr(e,a,d)|0;r=c;return}function dg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;g=r;r=r+336|0;d=g+324|0;b=g+168|0;e=g+12|0;f=g;Gz(d,k[(k[a+108>>2]|0)+60>>2]|0);if((k[2783]|0)<3){Qd(b,52211,824,2,0,0,0);j=Tn(b,53317,17)|0;h=d+11|0;n=i[h>>0]|0;m=n<<24>>24<0;c=d+4|0;n=Tn(Tn(j,m?k[d>>2]|0:d,m?k[c>>2]|0:n&255)|0,53335,10)|0;m=a+8|0;j=i[m+11>>0]|0;l=j<<24>>24<0;Tn(Tn(n,l?k[m>>2]|0:m,l?k[a+12>>2]|0:j&255)|0,68623,1)|0;hi(b);b=h}else{b=d+11|0;c=d+4|0}n=i[b>>0]|0;if(((n<<24>>24<0?k[c>>2]|0:n&255)|0)==4?(cA(d,0,-1,53346,4)|0)==0:0)bt(a);else{if((k[2783]|0)<3){Qd(e,52211,828,2,0,0,0);j=Tn(e,53351,15)|0;m=a+8|0;l=i[m+11>>0]|0;n=l<<24>>24<0;l=Tn(Tn(j,n?k[m>>2]|0:m,n?k[a+12>>2]|0:l&255)|0,53367,17)|0;n=i[b>>0]|0;m=n<<24>>24<0;Tn(Tn(l,m?k[d>>2]|0:d,m?k[c>>2]|0:n&255)|0,53385,15)|0;hi(e)}n=k[a+4>>2]|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,53401,16);XD(n,a,0,f);p1(f)}p1(d);r=g;return}function eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+16|0;o=y+12|0;q=y+8|0;s=y;t=a+60|0;c=k[t>>2]|0;u=a+64|0;if((c|0)!=(u|0)){v=a+48|0;w=b+11|0;p=b+4|0;n=a+88|0;while(1){m=c+16|0;k[o>>2]=m;rk(s,v,m,113525,o,q);h=k[s>>2]|0;e=h+20|0;d=i[e+11>>0]|0;g=d<<24>>24<0;d=d&255;h=g?k[h+24>>2]|0:d;l=i[w>>0]|0;a=l<<24>>24<0;a:do if((h|0)==((a?k[p>>2]|0:l&255)|0)){j=k[e>>2]|0;l=g?j:e;a=a?k[b>>2]|0:b;f=(h|0)==0;b:do if(g){if(!f?EI(l,a,h)|0:0){x=17;break a}}else if(!f){if((j&255)<<24>>24!=(i[a>>0]|0)){x=17;break a}while(1){d=d+-1|0;e=e+1|0;if(!d)break b;a=a+1|0;if((i[e>>0]|0)!=(i[a>>0]|0)){x=17;break a}}}while(0);e=k[m>>2]|0;a=k[c+4>>2]|0;if(!a){d=c;while(1){a=k[d+8>>2]|0;if((k[a>>2]|0)==(d|0))break;else d=a}}else while(1){d=k[a>>2]|0;if(!d)break;else a=d}k[q>>2]=c;k[o>>2]=k[q>>2];Rz(t,o)|0;Wm(k[n>>2]|0,e)}else x=17;while(0);c:do if((x|0)==17){x=0;a=k[c+4>>2]|0;if(a|0)while(1){c=k[a>>2]|0;if(!c)break c;else a=c}while(1){a=k[c+8>>2]|0;if((k[a>>2]|0)==(c|0))break;else c=a}}while(0);if((a|0)==(u|0))break;else c=a}}r=y;return}function fg(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+432|0;u=t+424|0;a=t+24|0;s=t+16|0;l=t+8|0;o=t+4|0;h=t+428|0;m=t;k[s>>2]=a;q=s+4|0;k[q>>2]=1306;j=LZ(e)|0;k[o>>2]=j;j=k_(o,111636)|0;i[h>>0]=0;n=k[c>>2]|0;k[m>>2]=n;e=k[e+4>>2]|0;k[u>>2]=k[m>>2];m=n;if(oc(b,u,d,o,e,f,h,j,s,l,a+400|0)|0){a=g+8+3|0;if((i[a>>0]|0)<0){k[k[g>>2]>>2]=0;k[g+4>>2]=0}else{k[g>>2]=0;i[a>>0]=0}if(i[h>>0]|0)jw(g,cc[k[(k[j>>2]|0)+44>>2]&127](j,45)|0);j=cc[k[(k[j>>2]|0)+44>>2]&127](j,48)|0;e=k[l>>2]|0;h=e+-4|0;a=k[s>>2]|0;while(1){if(a>>>0>=h>>>0)break;if((k[a>>2]|0)!=(j|0))break;a=a+4|0}dp(g,a,e)|0}a=k[b>>2]|0;do if(a){e=k[a+12>>2]|0;if((e|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[e>>2]|0;if((a|0)==-1){k[b>>2]=0;e=1;break}else{e=(k[b>>2]|0)==0;break}}else e=1;while(0);do if(n){a=k[m+12>>2]|0;if((a|0)==(k[m+16>>2]|0))a=Ub[k[(k[n>>2]|0)+36>>2]&511](m)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(e)break;else{p=27;break}else{k[c>>2]=0;p=25;break}}else p=25;while(0);if((p|0)==25?e:0)p=27;if((p|0)==27)k[f>>2]=k[f>>2]|2;e=k[b>>2]|0;oU(k[o>>2]|0)|0;a=k[s>>2]|0;k[s>>2]=0;if(a|0)Rb[k[q>>2]&2047](a);r=t;return e|0}function gg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,q=0,s=0,t=0;s=r;r=r+64|0;q=s;HA(q,b,c,d);b=q+44|0;k[b>>2]=0;d=q+48|0;k[d>>2]=0;k[q>>2]=16120;n=q+52|0;k[n>>2]=0;o=q+56|0;k[o>>2]=0;k[q+60>>2]=0;g=a+4|0;m=k[g>>2]|0;h=a+8|0;j=k[h>>2]|0;e=m+j|0;f=j+4|0;k[h>>2]=f;c=(l[e+2>>0]|0)<<8|(l[e+1>>0]|0)<<16|(l[e+3>>0]|0);k[b>>2]=l[e>>0];k[d>>2]=c;f=i[m+f>>0]|0;k[h>>2]=j+5;j=f&255;m=q+52|0;RF(m,j);if(!(f<<24>>24))d=5;else{f=0;d=5;do{c=k[m>>2]|0;t=k[h>>2]|0;b=(k[g>>2]|0)+t|0;k[h>>2]=t+4;k[c+(f*20|0)>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);b=k[h>>2]|0;t=i[(k[g>>2]|0)+b>>0]|0;k[h>>2]=b+1;b=c+(f*20|0)+5|0;i[c+(f*20|0)+4>>0]=(t&255)>>>7;t=t&127;e=t&255;i[b>>0]=e;if((t|0)!=0?(t|0)!=1:0)d=d+5|0;else{t=k[h>>2]|0;e=(k[g>>2]|0)+t|0;k[h>>2]=t+4;k[c+(f*20|0)+8>>2]=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);d=d+9|0;e=i[b>>0]|0}if(e<<24>>24==1){t=k[h>>2]|0;e=(k[g>>2]|0)+t|0;k[h>>2]=t+4;k[c+(f*20|0)+12>>2]=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);d=d+4|0;e=i[b>>0]|0}if(e<<24>>24==4){b=k[h>>2]|0;t=(k[g>>2]|0)+b|0;k[h>>2]=b+4;k[c+(f*20|0)+16>>2]=(l[t+1>>0]|0)<<16|(l[t>>0]|0)<<24|(l[t+2>>0]|0)<<8|(l[t+3>>0]|0);d=d+4|0}f=f+1|0}while((f|0)!=(j|0))}e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,q,+p[a+40>>3]);k[q>>2]=16120;e=k[n>>2]|0;b=e;if(e|0){c=k[o>>2]|0;if((c|0)!=(e|0))k[o>>2]=c+(~(((c+-20-b|0)>>>0)/20|0)*20|0);zba(e)}O3(q);r=s;return d|0}function hg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0;s=r;r=r+96|0;h=s+56|0;g=s+48|0;j=s+40|0;f=s+84|0;l=s;m=s+72|0;n=s+60|0;p[j>>3]=0.0;o=b+8|0;e=k[o>>2]|0;q=b+4|0;d=k[q>>2]|0;c=e-d|0;if((c|0)<0){k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,102514,28);iz(a,f,b,0)|0;p1(f);c=0}else{k[f>>2]=6712357;if((c|0)<33){fE(l|0,d|0,c|0)|0;i[l+c>>0]=0;k[g>>2]=j;c=bZ(l,f,g)|0}else{k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;Qx(l,d,e);c=(i[l+11>>0]|0)<0?k[l>>2]|0:l;k[h>>2]=j;c=bZ(c,f,h)|0;p1(l)}if((c|0)==1){c=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;c=k[(k[(k[a+4>>2]|0)+(c>>>10<<2)>>2]|0)+((c&1023)<<2)>>2]|0;J$(l,+p[j>>3]);GA(c,l)|0;Lv(l);c=1}else{q=k[q>>2]|0;c=k[o>>2]|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;Qx(n,q,c);c=xX(n,0,102493)|0;k[m>>2]=k[c>>2];k[m+4>>2]=k[c+4>>2];k[m+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=eZ(m,102495)|0;k[l>>2]=k[c>>2];k[l+4>>2]=k[c+4>>2];k[l+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;iz(a,l,b,0)|0;p1(l);p1(m);p1(n);c=0}}r=s;return c|0}function ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0.0,j=0.0,l=0.0,m=0,n=0;g=r;r=r+336|0;c=g+324|0;d=g+168|0;e=g+156|0;f=g;k[c>>2]=b;b=Xx(a+184|0,c)|0;if((b|0)==(a+188|0)){if((k[2783]|0)<5){Qd(f,52211,1055,4,0,0,0);e=Tn(f,52961,34)|0;Tn(Mn(e,k[c>>2]|0)|0,52810,41)|0;hi(f)}}else{f=k[b+20>>2]|0;l=+((k[f+80>>2]|0)>>>0)*1.0e3;b=_J()|0;f=f+72|0;f=n_(b|0,M|0,k[f>>2]|0,k[f+4>>2]|0)|0;l=l/((+(f>>>0)+4294967296.0*+(M>>>0))*128.0);f=a+4|0;b=(DT((k[f>>2]|0)+2060|0,k[c>>2]|0)|0)+20|0;l=+((k[b>>2]|0)>>>7>>>0)/l;b=(DT((k[f>>2]|0)+2060|0,k[c>>2]|0)|0)+16|0;f=k[f>>2]|0;h=+(k[b>>2]|0)/1.0e3*+p[f+1456>>3];j=+(k[f+1664>>2]|0)/1.0e3;if(l>(h<j?j:h)){if((k[2783]|0)<3){Qd(d,52211,1051,2,0,0,0);n=Tn(d,52852,34)|0;n=Tn(Mn(n,k[c>>2]|0)|0,52887,12)|0;m=a+8|0;f=i[m+11>>0]|0;b=f<<24>>24<0;Tn(Tn(n,b?k[m>>2]|0:m,b?k[a+12>>2]|0:f&255)|0,52900,33)|0;hi(d)}n=k[c>>2]|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,52934,26);m=a+196|0;k[m>>2]=(k[m>>2]|0)+1;cc[k[(k[a>>2]|0)+84>>2]&127](a,n)|0;p1(e)}}r=g;return}function jg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;var g=0.0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+160|0;m=o+144|0;f=o;n=o+8|0;do if(Yg(a,b,f,0)|0){g=+p[f>>3];if(!(!(g>=d)|!(g<=e))){p[c>>3]=g;f=1;break}h=n+4|0;k[n>>2]=4176;j=n+56|0;k[j>>2]=4196;GK(n+56|0,h);k[n+128>>2]=0;k[n+132>>2]=-1;k[n>>2]=4216;k[n+56>>2]=4236;sT(h);k[h>>2]=1740;l=n+36|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[n+52>>2]=16;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;cn(h,m);p1(m);f=i[b+11>>0]|0;c=f<<24>>24<0;Tn(Qn(Tn(Qn(Tn(Tn(n,c?k[b>>2]|0:b,c?k[b+4>>2]|0:f&255)|0,47314,24)|0,d)|0,103359,2)|0,e)|0,103292,1)|0;Yr(m,h);f=a+148|0;c=k[f>>2]|0;if(c>>>0<(k[a+152>>2]|0)>>>0){k[c>>2]=k[m>>2];k[c+4>>2]=k[m+4>>2];k[c+8>>2]=k[m+8>>2];k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[f>>2]=(k[f>>2]|0)+12}else sj(a+144|0,m);p1(m);k[n>>2]=4216;k[j>>2]=4236;k[h>>2]=1740;p1(l);I3(h);Qaa(n,4248);N8(j);f=0}else f=0;while(0);r=o;return f|0}function kg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+160|0;l=n+140|0;f=n+136|0;m=n;do if($g(a,b,f,0)|0){f=k[f>>2]|0;if(!((f|0)<(d|0)|(f|0)>(e|0))){k[c>>2]=f;f=1;break}g=m+4|0;k[m>>2]=4176;h=m+56|0;k[h>>2]=4196;GK(m+56|0,g);k[m+128>>2]=0;k[m+132>>2]=-1;k[m>>2]=4216;k[m+56>>2]=4236;sT(g);k[g>>2]=1740;j=m+36|0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[m+52>>2]=16;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;cn(g,l);p1(l);f=i[b+11>>0]|0;c=f<<24>>24<0;Tn(Mn(Tn(Mn(Tn(Tn(m,c?k[b>>2]|0:b,c?k[b+4>>2]|0:f&255)|0,47314,24)|0,d)|0,103359,2)|0,e)|0,103292,1)|0;Yr(l,g);f=a+148|0;c=k[f>>2]|0;if(c>>>0<(k[a+152>>2]|0)>>>0){k[c>>2]=k[l>>2];k[c+4>>2]=k[l+4>>2];k[c+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[f>>2]=(k[f>>2]|0)+12}else sj(a+144|0,l);p1(l);k[m>>2]=4216;k[h>>2]=4236;k[g>>2]=1740;p1(j);I3(g);Qaa(m,4248);N8(h);f=0}else f=0;while(0);r=n;return f|0}function lg(a){a=a|0;var b=0,c=0,d=0.0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+336|0;e=m+312|0;f=m+156|0;g=m;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,31087,6);oZ(e);p1(e);b=k[a+1064>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);c=a+1068|0;b=k[c>>2]|0;if(b|0){Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=k[c>>2]|0;k[c>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[c>>2]=0}d=+q_();j=a+1072|0;d=d-+p[j>>3];if((k[2783]|0)<3){Qd(f,30665,236,2,0,0,0);c=Qn(Tn(f,31094,21)|0,d)|0;i[e>>0]=115;Tn(c,e,1)|0;hi(f)}e=a+200|0;a:do if((d>+p[a+864>>3]?(h=k[e>>2]|0,(h|0)!=0):0)?(i[h+1189>>0]|0)!=0:0){switch(k[a+560>>2]|0){case 2:break;case 3:{if(!(db()|0)){l=21;break a}break}default:{l=21;break a}}if((k[2783]|0)<3){Qd(g,30665,249,2,0,0,0);Tn(g,31116,46)|0;hi(g)}c=a+204|0;b=k[c>>2]|0;if(b|0){Rb[k[(k[b>>2]|0)+16>>2]&2047](b);b=k[c>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[c>>2]=0}dR(a);h=cW(1208)|0;Fc(h,a);k[e>>2]=h;Pg(a,1)|0}else l=21;while(0);if((l|0)==21){b=k[e>>2]|0;if(b|0)CA(b);b=k[a+204>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+24>>2]&2047](b)}p[j>>3]=C;r=m;return}function mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;j=r;r=r+176|0;d=j+152|0;e=j+16|0;f=j;m=_J()|0;l=M;g=e+4|0;k[e>>2]=4176;h=e+56|0;k[h>>2]=4196;GK(e+56|0,g);k[e+128>>2]=0;k[e+132>>2]=-1;k[e>>2]=4216;k[e+56>>2]=4236;sT(g);k[g>>2]=1740;c=e+36|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[e+52>>2]=16;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;cn(g,d);p1(d);tn(e,m,l)|0;if((gF(b,63,0)|0)==-1){FE(d,b,60737);Yr(f,g);m=i[f+11>>0]|0;l=m<<24>>24<0;m=nw(d,l?k[f>>2]|0:f,l?k[f+4>>2]|0:m&255)|0;k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;p1(f);p1(d)}else{FE(d,b,60725);Yr(f,g);m=i[f+11>>0]|0;l=m<<24>>24<0;m=nw(d,l?k[f>>2]|0:f,l?k[f+4>>2]|0:m&255)|0;k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;p1(f);p1(d)}k[e>>2]=4216;k[h>>2]=4236;k[g>>2]=1740;p1(c);I3(g);Qaa(e,4248);N8(h);r=j;return}function ng(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;i=(c-b|0)/72|0;d=a+8|0;e=k[a>>2]|0;f=e;do if(i>>>0>(((k[d>>2]|0)-e|0)/72|0)>>>0){_t(a);if(i>>>0>59652323)J5(a);else{h=((k[d>>2]|0)-(k[a>>2]|0)|0)/72|0;j=h<<1;lO(a,h>>>0<29826161?(j>>>0<i>>>0?i:j):59652323);Br(a,b,c,i);break}}else{j=a+4|0;g=((k[j>>2]|0)-e|0)/72|0;h=i>>>0>g>>>0;g=h?b+(g*72|0)|0:c;if((g|0)==(b|0))e=f;else{e=b;d=f;do{MM(d,e)|0;k[d+12>>2]=k[e+12>>2];MM(d+16|0,e+16|0)|0;l=e+28|0;b=k[l+4>>2]|0;f=d+28|0;k[f>>2]=k[l>>2];k[f+4>>2]=b;MM(d+36|0,e+36|0)|0;MM(d+48|0,e+48|0)|0;MM(d+60|0,e+60|0)|0;e=e+72|0;d=d+72|0}while((e|0)!=(g|0));e=d}if(h){Br(a,g,c,i-(((k[j>>2]|0)-(k[a>>2]|0)|0)/72|0)|0);break}d=k[j>>2]|0;if((d|0)!=(e|0))do{l=d+-72|0;k[j>>2]=l;p1(d+-12|0);p1(d+-24|0);p1(d+-36|0);p1(d+-56|0);p1(l);d=k[j>>2]|0}while((d|0)!=(e|0))}while(0);return}function og(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+160|0;u=w;v=a+224|0;s=v+11|0;c=i[s>>0]|0;if(c<<24>>24<0)d=k[a+228>>2]|0;else d=c&255;if(!d){t=b+80|0;d=k[b+84>>2]|0;b=k[t>>2]|0;m=b;a:do if((d|0)!=(b|0)){n=a+44|0;p=i[n+11>>0]|0;o=p<<24>>24<0;p=o?k[a+48>>2]|0:p&255;q=(p|0)==0;j=(d-b|0)/340|0;h=0;b:while(1){l=m+(h*340|0)+44|0;b=i[l+11>>0]|0;e=b<<24>>24<0;b=b&255;do if(((e?k[m+(h*340|0)+48>>2]|0:b)|0)==(p|0)){f=k[l>>2]|0;g=e?f:l;d=o?k[n>>2]|0:n;if(e){if(q)break b;if(!(EI(g,d,p)|0))break b;else break}if(q)break b;if((f&255)<<24>>24==(i[d>>0]|0)){e=l;do{b=b+-1|0;e=e+1|0;if(!b)break b;d=d+1|0}while((i[e>>0]|0)==(i[d>>0]|0))}}while(0);h=h+1|0;if(h>>>0>=j>>>0)break a}MM(v,l)|0;c=i[s>>0]|0}while(0);if(c<<24>>24<0)c=k[a+228>>2]|0;else c=c&255;if(!c){if((k[2783]|0)<3){Qd(u,47907,146,2,0,0,0);s=Tn(u,47926,13)|0;s=Tn(Tn(Tn(s,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48265,35)|0;Tn(Mn(s,k[a+40>>2]|0)|0,48301,20)|0;hi(u)}MM(v,(k[t>>2]|0)+44|0)|0}}r=w;return}function pg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0;g=b+44|0;h=k[g>>2]|0;m=b+24|0;n=k[m>>2]|0;j=n;if(h>>>0<n>>>0){k[g>>2]=n;l=j}else l=h;g=f&24;a:do if(!g){n=a;k[n>>2]=0;k[n+4>>2]=0;n=a+8|0;k[n>>2]=-1;k[n+4>>2]=-1}else{if((e|0)==1&(g|0)==24){n=a;k[n>>2]=0;k[n+4>>2]=0;n=a+8|0;k[n>>2]=-1;k[n+4>>2]=-1;break}b:do switch(e|0){case 0:{g=0;h=0;break}case 1:if(!(f&8)){h=j-(k[b+20>>2]|0)|0;g=h;h=((h|0)<0)<<31>>31;break b}else{h=(k[b+12>>2]|0)-(k[b+8>>2]|0)|0;g=h;h=((h|0)<0)<<31>>31;break b}case 2:{g=b+32|0;if((i[g+11>>0]|0)<0)g=k[g>>2]|0;h=l-g|0;g=h;h=((h|0)<0)<<31>>31;break}default:{n=a;k[n>>2]=0;k[n+4>>2]=0;n=a+8|0;k[n>>2]=-1;k[n+4>>2]=-1;break a}}while(0);h=y0(g|0,h|0,c|0,d|0)|0;j=M;if((j|0)>=0){g=b+32|0;if((i[g+11>>0]|0)<0)g=k[g>>2]|0;d=l-g|0;c=((d|0)<0)<<31>>31;if(!((c|0)<(j|0)|(c|0)==(j|0)&d>>>0<h>>>0)){g=f&8;if(!((h|0)==0&(j|0)==0)){if(g|0?(k[b+12>>2]|0)==0:0){n=a;k[n>>2]=0;k[n+4>>2]=0;n=a+8|0;k[n>>2]=-1;k[n+4>>2]=-1;break}if((f&16|0)!=0&(n|0)==0){n=a;k[n>>2]=0;k[n+4>>2]=0;n=a+8|0;k[n>>2]=-1;k[n+4>>2]=-1;break}}if(g|0){k[b+12>>2]=(k[b+8>>2]|0)+h;k[b+16>>2]=l}if(f&16|0)k[m>>2]=(k[b+20>>2]|0)+h;n=a;k[n>>2]=0;k[n+4>>2]=0;n=a+8|0;k[n>>2]=h;k[n+4>>2]=j;break}}n=a;k[n>>2]=0;k[n+4>>2]=0;n=a+8|0;k[n>>2]=-1;k[n+4>>2]=-1}while(0);return}function qg(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+240|0;n=w+24|0;q=w;m=w+140|0;v=w+16|0;p=w+12|0;s=w+8|0;h=w+136|0;j=w+4|0;o=w+36|0;k[v>>2]=m;u=v+4|0;k[u>>2]=1306;a=LZ(e)|0;k[s>>2]=a;a=k_(s,111604)|0;i[h>>0]=0;k[j>>2]=k[c>>2];l=k[e+4>>2]|0;k[n>>2]=k[j>>2];if(pc(b,n,d,s,l,f,h,a,v,p,m+100|0)|0){ec[k[(k[a>>2]|0)+32>>2]&15](a,107961,107971,n)|0;a=(k[p>>2]|0)-(k[v>>2]|0)|0;if((a|0)>98){a=lc(a+2|0)|0;d=a;if(!a)a=0}else{a=o;d=0}if(i[h>>0]|0){i[a>>0]=45;a=a+1|0}l=n+10|0;m=n;j=k[v>>2]|0;while(1){if(j>>>0>=(k[p>>2]|0)>>>0)break;h=i[j>>0]|0;e=n;while(1){if((e|0)==(l|0)){e=l;break}if((i[e>>0]|0)==h<<24>>24)break;e=e+1|0}i[a>>0]=i[107961+(e-m)>>0]|0;j=j+1|0;a=a+1|0}i[a>>0]=0;k[q>>2]=g;bZ(o,107972,q)|0;if(d|0)wc(d)}a=k[b>>2]|0;do if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0))if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1){k[b>>2]=0;a=0;break}else{a=k[b>>2]|0;break}}else a=0;while(0);a=(a|0)==0;d=k[c>>2]|0;do if(d){if((k[d+12>>2]|0)==(k[d+16>>2]|0)?(Ub[k[(k[d>>2]|0)+36>>2]&511](d)|0)==-1:0){k[c>>2]=0;t=27;break}if(!a)t=28}else t=27;while(0);if((t|0)==27?a:0)t=28;if((t|0)==28)k[f>>2]=k[f>>2]|2;d=k[b>>2]|0;oU(k[s>>2]|0)|0;a=k[v>>2]|0;k[v>>2]=0;if(a|0)Rb[k[u>>2]&2047](a);r=w;return d|0}function rg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+112|0;n=p+72|0;o=p+44|0;m=p;j=p+32|0;f=p+28|0;g=p+16|0;c=a+108|0;if(!(i[c>>0]|0)){i[c>>0]=1;RR(n,b,0);RR(o,b,1);c=(j0(n)|0)==0;c=c?o:n;d=cp(c)|0;k[m>>2]=d;d=k[a+40>>2]|0;if(d|0)Sb[k[(k[d>>2]|0)+8>>2]&511](d,m);if(!(k[b+48>>2]|0)){D0(m,+SV(c),1);c=k[a+48>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,m)}else{c=k[a+48>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,8)}k[m>>2]=0;l=m+4|0;k[l>>2]=0;k[m+8>>2]=0;k[j>>2]=0;h=j+4|0;k[h>>2]=0;k[j+8>>2]=0;k[f>>2]=a;k[g>>2]=0;zj(f,b,g,m);k[g>>2]=1;zj(f,b,g,j);c=k[a+56>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,m);c=k[a+64>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,j);k[g>>2]=0;e=g+4|0;k[e>>2]=0;k[g+8>>2]=0;Fg(f,b,g);c=k[a+72>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,g);c=k[g>>2]|0;d=c;if(c|0){a=k[e>>2]|0;if((a|0)!=(c|0))k[e>>2]=a+(~((a+-4-d|0)>>>2)<<2);zba(c)}c=k[j>>2]|0;d=c;if(c|0){a=k[h>>2]|0;if((a|0)!=(c|0))k[h>>2]=a+(~((a+-4-d|0)>>>2)<<2);zba(c)}c=k[m>>2]|0;d=c;if(c|0){a=k[l>>2]|0;if((a|0)!=(c|0))k[l>>2]=a+(~((a+-4-d|0)>>>2)<<2);zba(c)}P1(o);P1(n)}r=p;return}function sg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a=k[b>>2]|0;do if(a){f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[f>>2]|0;if((a|0)==-1){k[b>>2]=0;g=1;break}else{g=(k[b>>2]|0)==0;break}}else g=1;while(0);f=k[c>>2]|0;do if(f){a=k[f+12>>2]|0;if((a|0)==(k[f+16>>2]|0))a=Ub[k[(k[f>>2]|0)+36>>2]&511](f)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(g){h=f;i=17;break}else{i=16;break}else{k[c>>2]=0;i=14;break}}else i=14;while(0);if((i|0)==14)if(g)i=16;else{h=0;i=17}a:do if((i|0)==16)k[d>>2]=k[d>>2]|6;else if((i|0)==17){a=k[b>>2]|0;f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[f>>2]|0;if((Yb[k[(k[e>>2]|0)+52>>2]&31](e,a,0)|0)<<24>>24!=37){k[d>>2]=k[d>>2]|4;break}a=k[b>>2]|0;f=a+12|0;g=k[f>>2]|0;if((g|0)==(k[a+16>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;a=k[b>>2]|0;if(!a)f=1;else i=25}else{k[f>>2]=g+4;i=25}do if((i|0)==25){f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[f>>2]|0;if((a|0)==-1){k[b>>2]=0;f=1;break}else{f=(k[b>>2]|0)==0;break}}while(0);do if(h){a=k[h+12>>2]|0;if((a|0)==(k[h+16>>2]|0))a=Ub[k[(k[h>>2]|0)+36>>2]&511](h)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(f)break a;else break;else{k[c>>2]=0;i=37;break}}else i=37;while(0);if((i|0)==37?!f:0)break;k[d>>2]=k[d>>2]|2}while(0);return}function tg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;Bt(a,b);d=k[a+56>>2]|0;i[k[b>>2]>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+64>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[a+72>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+80>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[a+88>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+92>>2]|0;i[d>>0]=(c&65535)>>>8;i[(k[b>>2]|0)+1>>0]=c;c=(k[b>>2]|0)+2|0;k[b>>2]=c;i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;c=(k[b>>2]|0)+2|0;k[b>>2]=c;i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=0;do{e=k[a+96+(d<<2)>>2]|0;i[c>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=d+1|0}while((d|0)!=9);d=0;do{i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=d+1|0}while((d|0)!=6);e=k[a+132>>2]|0;i[c>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;k[b>>2]=(k[b>>2]|0)+4;return}function ug(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+336|0;e=h+312|0;f=h+156|0;g=h;rl(a,0,0,1,0,0,0);Aq(a,b);if(!c){k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,115628,0);c=0}else{d=X9(k[c>>2]|0)|0;KJ(e,k[c>>2]|0);c=d}d=(k[2783]|0)<5;if((c|0)==(k[3715]|0)){if(d){Qd(g,50909,609,4,0,0,0);f=Tn(g,51271,26)|0;f=Tn(Mn(f,k[b+104>>2]|0)|0,51129,1)|0;f=Tn(Tn(Mn(f,k[b+108>>2]|0)|0,51298,3)|0,51325,26)|0;Tn(Mn(f,Q9(b)|0)|0,68623,1)|0;hi(g)}}else if(d){Qd(f,50909,606,4,0,0,0);g=Tn(f,51271,26)|0;g=Tn(Mn(g,k[b+104>>2]|0)|0,51129,1)|0;Mn(Tn(Tn(Mn(g,k[b+108>>2]|0)|0,51298,3)|0,51302,22)|0,c)|0;hi(f)}hx(a,b);WC((w4(k[a+4>>2]|0)|0)+356|0,b+56|0,c,e);p1(e);r=h;return}function vg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;iI(a,b);aA(a+12|0,b+12|0);i[a+24>>0]=i[b+24>>0]|0;iI(a+28|0,b+28|0);iI(a+40|0,b+40|0);i[a+52>>0]=i[b+52>>0]|0;c=a+56|0;d=b+56|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;iI(a+68|0,b+68|0);i[a+80>>0]=i[b+80>>0]|0;iI(a+84|0,b+84|0);iI(a+96|0,b+96|0);i[a+108>>0]=i[b+108>>0]|0;c=a+112|0;d=b+112|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;iI(a+124|0,b+124|0);i[a+136>>0]=i[b+136>>0]|0;iI(a+140|0,b+140|0);iI(a+152|0,b+152|0);c=b+164|0;d=k[c+4>>2]|0;e=a+164|0;k[e>>2]=k[c>>2];k[e+4>>2]=d;i[a+172>>0]=i[b+172>>0]|0;ot(a+176|0,b+176|0);iI(a+188|0,b+188|0);iI(a+200|0,b+200|0);i[a+212>>0]=i[b+212>>0]|0;e=a+216|0;d=b+216|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];i[e+8>>0]=i[d+8>>0]|0;iI(a+228|0,b+228|0);i[a+240>>0]=i[b+240>>0]|0;iI(a+244|0,b+244|0);iI(a+256|0,b+256|0);e=b+268|0;d=k[e+4>>2]|0;c=a+268|0;k[c>>2]=k[e>>2];k[c+4>>2]=d;i[a+276>>0]=i[b+276>>0]|0;ot(a+280|0,b+280|0);PD(a+292|0,b+292|0);p[a+304>>3]=+p[b+304>>3];return}function wg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;n=(c-b|0)/96|0;d=a+8|0;e=k[a>>2]|0;f=e;do if(n>>>0>(((k[d>>2]|0)-e|0)/96|0)>>>0){qz(a);if(n>>>0>44739242)J5(a);else{m=((k[d>>2]|0)-(k[a>>2]|0)|0)/96|0;o=m<<1;BO(a,m>>>0<22369621?(o>>>0<n>>>0?n:o):44739242);eo(a,b,c,n);break}}else{o=a+4|0;l=((k[o>>2]|0)-e|0)/96|0;m=n>>>0>l>>>0;l=m?b+(l*96|0)|0:c;if((l|0)==(b|0))e=f;else{d=f;do{MM(d,b)|0;e=d+16|0;f=b+16|0;g=e;h=f;j=g+36|0;do{k[g>>2]=k[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));i[e+36>>0]=i[f+36>>0]|0;MM(d+56|0,b+56|0)|0;MM(d+68|0,b+68|0)|0;j=d+80|0;h=b+80|0;k[j>>2]=k[h>>2];k[j+4>>2]=k[h+4>>2];k[j+8>>2]=k[h+8>>2];k[j+12>>2]=k[h+12>>2];b=b+96|0;d=d+96|0}while((b|0)!=(l|0));e=d}if(m){eo(a,l,c,n-(((k[o>>2]|0)-(k[a>>2]|0)|0)/96|0)|0);break}d=k[o>>2]|0;if((d|0)!=(e|0))do{n=d+-96|0;k[o>>2]=n;p1(d+-28|0);p1(d+-40|0);p1(n);d=k[o>>2]|0}while((d|0)!=(e|0))}while(0);return}function xg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+160|0;h=o+144|0;l=o;j=l+8|0;k[j>>2]=1664;m=l+12|0;k[l>>2]=1704;n=l+64|0;k[n>>2]=1724;k[l+4>>2]=0;GK(l+64|0,m);k[l+136>>2]=0;k[l+140>>2]=-1;k[l>>2]=1644;k[l+64>>2]=1684;k[j>>2]=1664;sT(m);k[m>>2]=1740;j=l+44|0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[l+60>>2]=24;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;cn(m,h);p1(h);b=a+76|0;c=i[b+11>>0]|0;d=c<<24>>24<0;if(d)e=k[a+80>>2]|0;else e=c&255;g=l+8|0;if(e|0)Tn(Tn(g,d?k[b>>2]|0:b,d?k[a+80>>2]|0:c&255)|0,51129,1)|0;c=a+88|0;e=i[c+11>>0]|0;d=e<<24>>24<0;Tn(g,d?k[c>>2]|0:c,d?k[a+92>>2]|0:e&255)|0;if(i[a+104>>0]|0?(f=a+100|0,(k[f>>2]|0)>0):0){e=Tn(g,27380,1)|0;Mn(e,k[f>>2]|0)|0}c=a+16|0;Yr(h,m);b=c+11|0;if((i[b>>0]|0)<0){i[k[c>>2]>>0]=0;k[a+20>>2]=0;b=c}else{i[c>>0]=0;i[b>>0]=0;b=c}Qm(c,0);k[b>>2]=k[h>>2];k[b+4>>2]=k[h+4>>2];k[b+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;p1(h);k[l>>2]=1644;k[n>>2]=1684;k[g>>2]=1664;k[m>>2]=1740;p1(j);I3(m);Qaa(l,1800);N8(n);r=o;return}function yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+16|0;q=t;f=k[d>>2]|0;s=d+4|0;e=k[s>>2]|0;if((e|0)!=(f|0))do{p=e+-12|0;k[s>>2]=p;p1(p);e=k[s>>2]|0}while((e|0)!=(f|0));m=a+11|0;g=i[m>>0]|0;h=g<<24>>24<0;n=a+4|0;f=k[n>>2]|0;if(!((h?f:g&255)|0))j=0;else{o=(c|0)==0;p=d+8|0;j=0;l=0;do{h=i[(h?k[a>>2]|0:a)+l>>0]|0;a:do if(!o){e=0;while(1){if((i[b+e>>0]|0)==h<<24>>24)break;e=e+1|0;if(e>>>0>=c>>>0)break a}if((l|0)!=(j|0)){nD(q,a,j,l-j|0,a);e=k[s>>2]|0;if(e>>>0<(k[p>>2]|0)>>>0){k[e>>2]=k[q>>2];k[e+4>>2]=k[q+4>>2];k[e+8>>2]=k[q+8>>2];k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;k[s>>2]=(k[s>>2]|0)+12}else sj(d,q);p1(q);g=i[m>>0]|0;f=k[n>>2]|0}j=l+1|0}while(0);l=l+1|0;h=g<<24>>24<0}while(l>>>0<(h?f:g&255)>>>0)}e=g&255;if((j|0)!=((h?f:e)|0)){nD(q,a,j,(g<<24>>24<0?f:e)-j|0,a);e=k[s>>2]|0;if(e>>>0<(k[d+8>>2]|0)>>>0){k[e>>2]=k[q>>2];k[e+4>>2]=k[q+4>>2];k[e+8>>2]=k[q+8>>2];k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;k[s>>2]=(k[s>>2]|0)+12}else sj(d,q);p1(q)}r=t;return ((k[s>>2]|0)-(k[d>>2]|0)|0)/12|0|0}function zg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;e=k[b>>2]|0;l=b+4|0;g=k[l>>2]|0;f=((k[c>>2]|0)-e<<3)+(k[c+4>>2]|0)-g|0;if((f|0)>0){if(!g)c=d+4|0;else{i=32-g|0;j=(f|0)<(i|0)?f:i;i=-1>>>(i-j|0)&-1<<g&k[e>>2];c=d+4|0;g=k[c>>2]|0;q=32-g|0;h=q>>>0<j>>>0?q:j;e=k[d>>2]|0;k[e>>2]=k[e>>2]&~(-1>>>(q-h|0)&-1<<g);e=k[c>>2]|0;g=k[l>>2]|0;if(e>>>0>g>>>0){q=k[d>>2]|0;k[q>>2]=k[q>>2]|i<<e-g}else{q=k[d>>2]|0;k[q>>2]=k[q>>2]|i>>>(g-e|0)}g=(k[c>>2]|0)+h|0;e=(k[d>>2]|0)+(g>>>5<<2)|0;k[d>>2]=e;k[c>>2]=g&31;g=j-h|0;if((g|0)>0){k[e>>2]=k[e>>2]&~(-1>>>(32-g|0));q=k[d>>2]|0;k[q>>2]=k[q>>2]|i>>>((k[l>>2]|0)+h|0);k[c>>2]=g}e=(k[b>>2]|0)+4|0;k[b>>2]=e;f=f-j|0}h=k[c>>2]|0;j=32-h|0;h=-1<<h;if(f>>>0>31){i=~h;g=f;do{l=k[e>>2]|0;q=k[d>>2]|0;k[q>>2]=k[q>>2]&i;q=k[d>>2]|0;k[q>>2]=k[q>>2]|l<<k[c>>2];q=(k[d>>2]|0)+4|0;k[d>>2]=q;k[q>>2]=k[q>>2]&h;q=k[d>>2]|0;k[q>>2]=k[q>>2]|l>>>j;g=g+-32|0;e=(k[b>>2]|0)+4|0;k[b>>2]=e}while(g>>>0>31);f=f&31}if((f|0)!=0?(n=k[e>>2]&-1>>>(32-f|0),m=(j|0)<(f|0)?j:f,p=k[d>>2]|0,k[p>>2]=k[p>>2]&~(-1<<k[c>>2]&-1>>>(j-m|0)),p=k[d>>2]|0,k[p>>2]=k[p>>2]|n<<k[c>>2],p=(k[c>>2]|0)+m|0,o=(k[d>>2]|0)+(p>>>5<<2)|0,k[d>>2]=o,k[c>>2]=p&31,p=f-m|0,(p|0)>0):0){k[o>>2]=k[o>>2]&~(-1>>>(32-p|0));q=k[d>>2]|0;k[q>>2]=k[q>>2]|n>>>m;k[c>>2]=p}}else c=d+4|0;k[a>>2]=k[d>>2];k[a+4>>2]=k[c>>2];return}function Ag(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+144|0;u=t+24|0;a=t+32|0;s=t+16|0;l=t+8|0;o=t+4|0;h=t+28|0;m=t;k[s>>2]=a;q=s+4|0;k[q>>2]=1306;j=LZ(e)|0;k[o>>2]=j;j=k_(o,111604)|0;i[h>>0]=0;n=k[c>>2]|0;k[m>>2]=n;e=k[e+4>>2]|0;k[u>>2]=k[m>>2];m=n;if(pc(b,u,d,o,e,f,h,j,s,l,a+100|0)|0){a=g+11|0;if((i[a>>0]|0)<0){i[k[g>>2]>>0]=0;k[g+4>>2]=0}else{i[g>>0]=0;i[a>>0]=0}if(i[h>>0]|0)Jx(g,cc[k[(k[j>>2]|0)+28>>2]&127](j,45)|0);j=cc[k[(k[j>>2]|0)+28>>2]&127](j,48)|0;e=k[l>>2]|0;h=e+-1|0;a=k[s>>2]|0;while(1){if(a>>>0>=h>>>0)break;if((i[a>>0]|0)!=j<<24>>24)break;a=a+1|0}Gp(g,a,e)|0}a=k[b>>2]|0;do if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0))if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1){k[b>>2]=0;a=0;break}else{a=k[b>>2]|0;break}}else a=0;while(0);a=(a|0)==0;do if(n){if((k[m+12>>2]|0)==(k[m+16>>2]|0)?(Ub[k[(k[n>>2]|0)+36>>2]&511](m)|0)==-1:0){k[c>>2]=0;p=22;break}if(!a)p=23}else p=22;while(0);if((p|0)==22?a:0)p=23;if((p|0)==23)k[f>>2]=k[f>>2]|2;e=k[b>>2]|0;oU(k[o>>2]|0)|0;a=k[s>>2]|0;k[s>>2]=0;if(a|0)Rb[k[q>>2]&2047](a);r=t;return e|0}function Bg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;e=r;r=r+160|0;d=e;do if(!(Ub[k[(k[b>>2]|0)+20>>2]&511](b)|0)){switch(c|0){case 1:{pT(a+36|0,b+8|0);AE((k[a+20>>2]|0)+316|0,b);break}case 2:{ZI(a+36|0,b+8|0);AE((k[a+20>>2]|0)+316|0,b);break}default:{}}if((Tm(a,b)|0)==(a+24|0)){if((k[2783]|0)>=4)break;Qd(d,30228,94,3,0,0,0);h=Tn(Tn(Hn(Tn(d,30248,4)|0,a)|0,30253,3)|0,30346,28)|0;g=b+8|0;c=i[g+11>>0]|0;f=c<<24>>24<0;c=Tn(Tn(h,f?k[g>>2]|0:g,f?k[b+12>>2]|0:c&255)|0,30375,50)|0;Tn(Ln(c,k[a+32>>2]|0)|0,68623,1)|0;hi(d);break}do if(!(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0))if(!(i[b+128>>0]|0)){h=a+744|0;k[h>>2]=(k[h>>2]|0)+-1;break}else{h=a+748|0;k[h>>2]=(k[h>>2]|0)+-1;break}while(0);Rb[k[(k[b>>2]|0)+8>>2]&2047](b);if(!(i[(k[a+20>>2]|0)+2158>>0]|0)){h=cW(8)|0;k[h>>2]=5440;k[h+4>>2]=b;nL(a+752|0,h);break}else{$j(a,b);break}}while(0);r=e;return}function Cg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+320|0;d=j+156|0;e=j;i=a+24|0;f=a+44|0;g=k[f>>2]|0;if((g|0)<(b|0)){if((k[2783]|0)<3){Qd(d,44432,73,2,0,0,0);g=Tn(Mn(Tn(d,44466,46)|0,b)|0,75088,10)|0;g=Tn(Mn(g,k[f>>2]|0)|0,44513,10)|0;Tn(Mn(g,(k[f>>2]|0)-b|0)|0,68623,1)|0;hi(d)}aM(i);d=a+4|0;c=DT((k[d>>2]|0)+2060|0,b)|0;if((c|0)!=0?(h=k[c+16>>2]|0,(h|0)>0):0)c=h;else c=k[(k[d>>2]|0)+1444>>2]|0;br(i,c,b)|0;c=k[(k[d>>2]|0)+2056>>2]|0;d=a+64|0;if((c|0)<=((k[d>>2]|0)+b|0))while(1){Aj(a,c)|0;if((c|0)<((k[d>>2]|0)+b|0))c=c+1|0;else break}}else if((g|0)>(b|0)){if((k[2783]|0)<3){Qd(e,44432,83,2,0,0,0);h=Tn(Mn(Tn(e,44524,47)|0,b)|0,44513,10)|0;Tn(Mn(h,(k[f>>2]|0)-b|0)|0,68623,1)|0;hi(e)}aM(i);d=a+4|0;e=DT((k[d>>2]|0)+2060|0,b)|0;if(!((e|0)!=0?(c=k[e+16>>2]|0,(c|0)>0):0))c=k[(k[d>>2]|0)+1444>>2]|0;br(i,c,b)|0}r=j;return}function Dg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+80|0;e=q+64|0;h=q+8|0;j=q+56|0;l=q+48|0;m=q+40|0;n=q+32|0;o=q;p=a+288|0;if((k[p>>2]|0)==0?(f=a+52|0,c=k[f>>2]|0,g=k[c+1128>>2]|0,g|0):0){d=i[c+1160>>0]|0;if((g|0)==(Ub[k[(k[a>>2]|0)+168>>2]&511](a)|0)){c=cW(88)|0;eG(c);k[p>>2]=c;He(a,b,0);c=0}else{c=cW(108)|0;OC(c);k[p>>2]=c;He(a,b,1);c=1}i[a+361>>0]=c;b=(k[(k[f>>2]|0)+916>>2]|0)+400|0;lj(h,a,b,g,Ub[k[(k[a>>2]|0)+168>>2]&511](a)|0);i[(k[p>>2]|0)+84>>0]=d;g=k[p>>2]|0;fc[k[(k[g>>2]|0)+8>>2]&255](g,(k[(k[f>>2]|0)+916>>2]|0)+400|0,h);h=(k[p>>2]|0)+4|0;k[j>>2]=363;k[j+4>>2]=0;k[e>>2]=k[j>>2];k[e+4>>2]=k[j+4>>2];lq(h,a,e)|0;j=(k[p>>2]|0)+12|0;k[l>>2]=364;k[l+4>>2]=0;k[e>>2]=k[l>>2];k[e+4>>2]=k[l+4>>2];nq(j,a,e)|0;l=(k[p>>2]|0)+76|0;k[m>>2]=188;k[m+4>>2]=1;k[e>>2]=k[m>>2];k[e+4>>2]=k[m+4>>2];pq(l,a,e)|0;p=(k[p>>2]|0)+20|0;k[n>>2]=1293;k[n+4>>2]=0;k[e>>2]=k[n>>2];k[e+4>>2]=k[n+4>>2];Zq(p,a,e)|0;p=(k[f>>2]|0)+1096|0;k[o>>2]=2;k[o+4>>2]=0;k[e>>2]=k[o>>2];k[e+4>>2]=k[o+4>>2];Pu(p,a,e)}r=q;return}function Eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;c=k[a+44>>2]|0;u=a+40|0;a=c;if((a|0)!=(u|0)){v=b+4|0;w=b+8|0;do{d=k[v>>2]|0;e=d;if((e|0)!=(b|0)){t=c;p=t+40|0;q=p+11|0;r=t+44|0;s=t+56|0;t=t+64|0;c=d;do{o=c;g=o+40|0;f=i[g+11>>0]|0;j=f<<24>>24<0;f=f&255;l=j?k[o+44>>2]|0:f;n=i[q>>0]|0;d=n<<24>>24<0;a:do if((l|0)==((d?k[r>>2]|0:n&255)|0)){m=k[g>>2]|0;n=j?m:g;d=d?k[p>>2]|0:p;h=(l|0)==0;b:do if(j){if(!h?EI(n,d,l)|0:0){x=18;break a}}else if(!h){if((m&255)<<24>>24!=(i[d>>0]|0)){x=18;break a}while(1){f=f+-1|0;g=g+1|0;if(!f)break b;d=d+1|0;if((i[g>>0]|0)!=(i[d>>0]|0)){x=18;break a}}}while(0);j=s;m=k[j>>2]|0;j=k[j+4>>2]|0;d=o+56|0;n=d;l=k[n+4>>2]|0;if(!((m|0)==0&(j|0)==0|(j>>>0>l>>>0|((j|0)==(l|0)?m>>>0>=(k[n>>2]|0)>>>0:0)))){i[t>>0]=i[o+64>>0]|0;m=d;n=k[m+4>>2]|0;o=s;k[o>>2]=k[m>>2];k[o+4>>2]=n}o=k[e+4>>2]|0;n=c;m=n+4|0;k[(k[n>>2]|0)+4>>2]=k[m>>2];k[k[m>>2]>>2]=k[c>>2];k[w>>2]=(k[w>>2]|0)+-1;n=n+8|0;Rb[k[(k[n>>2]|0)+8>>2]&2047](n);zba(c);c=o}else x=18;while(0);if((x|0)==18){x=0;c=k[e+4>>2]|0}e=c}while((e|0)!=(b|0))}c=k[a+4>>2]|0;a=c}while((a|0)!=(u|0))}return}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+32|0;s=t+24|0;p=t+12|0;q=t;y3(s,b);s=EX(s)|0;if(s|0?(d=k[s+12>>2]|0,m=k[s+16>>2]|0,(d|0)!=(m|0)):0){n=c+4|0;o=c+8|0;do{e=k[d+80>>2]|0;j=k[d+84>>2]|0;if((e|0)!=(j|0)){l=d+56|0;do{f=e+8|0;h=i[f+11>>0]|0;if((((h<<24>>24<0?k[e+12>>2]|0:h&255)|0)==8?(cA(f,0,-1,50245,8)|0)==0:0)?i[e+60>>0]|0:0){h=cW(132)|0;kD(h,e+44|0,k[e+56>>2]|0,k[a>>2]|0);k[h+52>>2]=2;f=h+96|0;k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;wE(q,115628,0);Yo(p,q,s,d,e,b);g=h+107|0;if((i[g>>0]|0)<0){i[k[f>>2]>>0]=0;k[h+100>>2]=0}else{i[f>>0]=0;i[g>>0]=0}Qm(f,0);k[f>>2]=k[p>>2];k[f+4>>2]=k[p+4>>2];k[f+8>>2]=k[p+8>>2];k[p>>2]=0;k[p+4>>2]=0;k[p+8>>2]=0;p1(p);p1(q);MM(h+84|0,l)|0;k[p>>2]=h;f=k[n>>2]|0;if(f>>>0<(k[o>>2]|0)>>>0){k[f>>2]=h;k[n>>2]=(k[n>>2]|0)+4}else zp(c,p)}e=e+340|0}while((e|0)!=(j|0))}d=d+372|0}while((d|0)!=(m|0))}r=t;return}function Gg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0.0,l=0,m=0,n=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0.0;w=r;r=r+176|0;u=w+156|0;q=w;k[u>>2]=u;s=u+4|0;k[s>>2]=u;t=u+8|0;k[t>>2]=0;v=a+4|0;e=k[v>>2]|0;f=k[e+1576>>2]|0;j=1.0/+(f|0);l=a+124|0;m=a+128|0;h=k[m>>2]|0;g=k[l>>2]|0;if(((h-g|0)/96|0)>>>0>b>>>0){n=a+108|0;do{i=$(f,k[g+(b*96|0)+48>>2]|0)|0;if((f|0)>0){h=0;do{g=h+i|0;e=e+2024|0;f=k[e>>2]|0;do if(g>>>0>=f>>>0?g>>>0<((x9(e)|0)+f|0)>>>0:0){if(fJ(k[n>>2]|0,g,((g|0)<0)<<31>>31)|0){x=+(~~(j*+o[(k[l>>2]|0)+(b*96|0)+32>>2]*1.0e3)|0);f=cW(24)|0;k[f+8>>2]=g;p[f+16>>3]=x;k[f+4>>2]=u;g=k[u>>2]|0;k[f>>2]=g;k[g+4>>2]=f;k[u>>2]=f;k[t>>2]=(k[t>>2]|0)+1;break}if((k[2783]|0)<5){Qd(q,50909,731,4,0,0,0);Tn(Mn(Tn(q,51044,20)|0,g)|0,51065,24)|0;hi(q)}}while(0);h=h+1|0;e=k[v>>2]|0;f=k[e+1576>>2]|0}while((h|0)<(f|0));g=k[l>>2]|0;h=k[m>>2]|0}b=b+1|0}while(b>>>0<((h-g|0)/96|0)>>>0);f=k[s>>2]|0}else f=u;b=f;if((b|0)!=(u|0)?(d=f,Ku(e,a,k[d+8>>2]|0,~~+p[d+16>>3],0),d=k[b+4>>2]|0,c=d,(c|0)!=(u|0)):0)do{t=d;Ku(k[v>>2]|0,a,k[t+8>>2]|0,~~+p[t+16>>3],0);d=k[c+4>>2]|0;c=d}while((c|0)!=(u|0));$H(u);r=w;return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;m=r;r=r+336|0;d=m+328|0;e=m+332|0;f=m+320|0;g=m+312|0;h=m+316|0;j=m+156|0;l=m;k[g>>2]=b;b=a+184|0;n=Xx(b,g)|0;k[h>>2]=n;if((n|0)!=(a+188|0)){if((k[2783]|0)<5){Qd(j,52211,1111,4,0,0,0);q=Tn(j,52542,31)|0;q=Tn(Mn(q,k[g>>2]|0)|0,52574,17)|0;p=a+8|0;n=i[p+11>>0]|0;o=n<<24>>24<0;Tn(Tn(q,o?k[p>>2]|0:p,o?k[a+12>>2]|0:n&255)|0,68623,1)|0;hi(j)}Jk(a,h)}k[d>>2]=g;Dl(f,b,g,113537,d,e);k[(k[f>>2]|0)+20>>2]=c;q=k[(k[a+4>>2]|0)+1408>>2]|0;q=(q|0)<(Ub[k[(k[a>>2]|0)+60>>2]&511](a)|0);if(q&(k[2783]|0)<4){Qd(l,52211,1118,3,0,0,0);n=Tn(l,52592,26)|0;o=a+8|0;q=i[o+11>>0]|0;p=q<<24>>24<0;Tn(Tn(n,p?k[o>>2]|0:o,p?k[a+12>>2]|0:q&255)|0,52619,14)|0;hi(l)}r=m;return}function Ig(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+32|0;c=h+16|0;d=h;OS(a,c);f=a+94|0;if(i[f>>0]|0){e=a+80|0;b=i[e+11>>0]|0;if(b<<24>>24<0)b=k[a+84>>2]|0;else b=b&255;if(b|0){b=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;qU(k[(k[(k[a+4>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0,e,0);dZ(e,115628)|0}}switch(k[c>>2]|0){case 1:{b=Ge(a,0)|0;g=16;break}case 3:{b=sh(a,0)|0;g=16;break}case 6:{b=pe(a,c)|0;g=16;break}case 5:{b=Fw(a,c)|0;g=16;break}case 7:{b=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;b=k[(k[(k[a+4>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0;t$(d,1);GA(b,d)|0;Lv(d);b=1;g=16;break}case 8:{b=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;b=k[(k[(k[a+4>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0;t$(d,0);GA(b,d)|0;Lv(d);b=1;g=16;break}case 9:{b=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;b=k[(k[(k[a+4>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0;mD(d,0);GA(b,d)|0;Lv(d);b=1;g=16;break}default:{k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,102108,46);iz(a,d,c,0)|0;p1(d);b=0}}if((g|0)==16)if(i[f>>0]|0){k[a+72>>2]=k[a+68>>2];g=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;k[a+76>>2]=k[(k[(k[a+4>>2]|0)+(g>>>10<<2)>>2]|0)+((g&1023)<<2)>>2]}r=h;return b|0}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+192|0;h=m+12|0;j=m+168|0;l=m;e=b+11|0;d=i[e>>0]|0;g=b+4|0;a=k[g>>2]|0;do if(((d<<24>>24<0?a:d&255)|0)==5)if(!(cA(b,0,-1,45362,5)|0)){k[c>>2]=1;a=1;break}else{d=i[e>>0]|0;a=k[g>>2]|0;f=5;break}else f=5;while(0);a:do if((f|0)==5){do if(((d<<24>>24<0?a:d&255)|0)==5)if(!(cA(b,0,-1,45368,5)|0)){k[c>>2]=2;a=1;break a}else{d=i[e>>0]|0;a=k[g>>2]|0;break}while(0);do if(((d<<24>>24<0?a:d&255)|0)==9)if(!(cA(b,0,-1,45374,9)|0)){k[c>>2]=3;a=1;break a}else{d=i[e>>0]|0;a=k[g>>2]|0;break}while(0);if(((d<<24>>24<0?a:d&255)|0)==15?(cA(b,0,-1,45384,15)|0)==0:0){k[c>>2]=4;a=1;break}if((k[2783]|0)<5){Qd(h,45008,390,4,0,0,0);g=Tn(h,45037,20)|0;WD(l,45400,b);a=eZ(l,103308)|0;k[j>>2]=k[a>>2];k[j+4>>2]=k[a+4>>2];k[j+8>>2]=k[a+8>>2];k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;a=i[j+11>>0]|0;c=a<<24>>24<0;Tn(g,c?k[j>>2]|0:j,c?k[j+4>>2]|0:a&255)|0;p1(j);p1(l);hi(h);a=0}else a=0}while(0);r=m;return a|0}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=c-b>>5;e=a+8|0;g=k[a>>2]|0;d=g;a:do if(f>>>0>(k[e>>2]|0)-g>>5>>>0){WE(a);if(f>>>0>134217727)J5(a);g=(k[e>>2]|0)-(k[a>>2]|0)|0;h=g>>4;QP(a,g>>5>>>0<67108863?(h>>>0<f>>>0?f:h):134217727);a=a+4|0;if((b|0)!=(c|0)){d=k[a>>2]|0;do{k[d>>2]=k[b>>2];k[d+4>>2]=k[b+4>>2];k[d+8>>2]=k[b+8>>2];k[d+12>>2]=k[b+12>>2];iI(d+16|0,b+16|0);k[d+28>>2]=k[b+28>>2];b=b+32|0;d=(k[a>>2]|0)+32|0;k[a>>2]=d}while((b|0)!=(c|0))}}else{h=a+4|0;a=(k[h>>2]|0)-g>>5;e=f>>>0>a>>>0;f=b+(a<<5)|0;a=e?f:c;if((a|0)!=(b|0))do{k[d>>2]=k[b>>2];k[d+4>>2]=k[b+4>>2];k[d+8>>2]=k[b+8>>2];k[d+12>>2]=k[b+12>>2];MM(d+16|0,b+16|0)|0;k[d+28>>2]=k[b+28>>2];b=b+32|0;d=d+32|0}while((b|0)!=(a|0));if(!e){b=k[h>>2]|0;if((b|0)==(d|0))break;while(1){k[h>>2]=b+-32;p1(b+-16|0);b=k[h>>2]|0;if((b|0)==(d|0))break a}}if((a|0)!=(c|0)){b=f;d=k[h>>2]|0;do{k[d>>2]=k[b>>2];k[d+4>>2]=k[b+4>>2];k[d+8>>2]=k[b+8>>2];k[d+12>>2]=k[b+12>>2];iI(d+16|0,b+16|0);k[d+28>>2]=k[b+28>>2];b=b+32|0;d=(k[h>>2]|0)+32|0;k[h>>2]=d}while((b|0)!=(c|0))}}while(0);return}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+48|0;t=w;u=w+32|0;if((i[a+237>>0]|0)!=0?(v=a+124|0,d=k[v>>2]|0,(d|0)!=0):0)if(hy(d,b,c)|0){c=~~+p[(k[v>>2]|0)+24>>3];b=j0(a+208|0)|0;k[b+180>>2]=k[(k[v>>2]|0)+36>>2];d=k[v>>2]|0;e=k[d+4>>2]|0;if((e|0)!=(k[d+8>>2]|0)){j=t+8|0;l=t+12|0;m=t+16|0;n=m+11|0;o=t+20|0;q=b+248|0;s=b+252|0;g=b+244|0;h=t+28|0;f=+p[d+24>>3]+ +p[d+16>>3];d=e;do{p[t>>3]=-1.0;k[j>>2]=-1;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[j>>2]=k[d+8>>2];b=d+4|0;Hj(u,f,f+ +((k[b>>2]|0)>>>0)+-1.0);if((i[n>>0]|0)<0){i[k[m>>2]>>0]=0;k[o>>2]=0}else{i[m>>0]=0;i[n>>0]=0}Qm(m,0);k[m>>2]=k[u>>2];k[m+4>>2]=k[u+4>>2];k[m+8>>2]=k[u+8>>2];k[u>>2]=0;k[u+4>>2]=0;k[u+8>>2]=0;p1(u);f=f+ +((k[b>>2]|0)>>>0);b=k[q>>2]|0;if((b|0)==(k[s>>2]|0))Vn(g,t);else{k[b>>2]=k[t>>2];k[b+4>>2]=k[t+4>>2];k[b+8>>2]=k[t+8>>2];k[b+12>>2]=k[t+12>>2];iI(b+16|0,m);k[b+28>>2]=k[h>>2];k[q>>2]=(k[q>>2]|0)+32}p1(m);d=d+20|0}while((d|0)!=(k[(k[v>>2]|0)+8>>2]|0))}Fl(a)}else c=-1;r=w;return c|0}function Mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0;n=r;r=r+16|0;h=n+4|0;l=n;f=a+8|0;e=j[b+8>>1]|0;g=j[f>>1]&-512|e&255;j[f>>1]=g;m=a+12|0;k[m>>2]=0;a:do switch((e&255)<<24>>24){case 5:case 3:case 2:case 1:case 0:{h=b;l=k[h+4>>2]|0;k[a>>2]=k[h>>2];k[a+4>>2]=l;break}case 4:{d=k[b>>2]|0;if(!d){k[a>>2]=0;break a}c=iC(d)|0;c=c>>>0>2147483646?2147483646:c;e=lc(c+1|0)|0;if(!e){c=666;d=102695;e=c+39|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));Ib(123)}else{fE(e|0,d|0,c|0)|0;i[e+c>>0]=0;k[a>>2]=e;j[f>>1]=g|256;break a}break}case 7:case 6:{f=cW(12)|0;g=k[b>>2]|0;c=f+4|0;k[c>>2]=0;k[f+8>>2]=0;k[f>>2]=c;d=k[g>>2]|0;g=g+4|0;if((d|0)!=(g|0)){e=c;while(1){c=d+16|0;k[l>>2]=e;k[h>>2]=k[l>>2];zr(f,h,c,c)|0;c=k[d+4>>2]|0;if(!c)while(1){c=k[d+8>>2]|0;if((k[c>>2]|0)==(d|0))break;else d=c}else while(1){d=k[c>>2]|0;if(!d)break;else c=d}if((c|0)==(g|0))break;else d=c}}k[a>>2]=f;break}default:{}}while(0);d=b+12|0;if(k[d>>2]|0){c=vba(16)|0;k[c>>2]=3;c=c+4|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[m>>2]=c;c=0;do{e=k[(k[d>>2]|0)+(c<<2)>>2]|0;if(e|0)ox((k[m>>2]|0)+(c<<2)|0,e);c=c+1|0}while((c|0)!=3)}r=n;return}function Ng(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;m=r;r=r+528|0;c=m+180|0;f=m+336|0;g=m+520|0;h=m+168|0;j=m+156|0;l=m;if((k[2783]|0)<3){Qd(c,29209,257,2,0,0,0);o=Tn(Tn(Hn(Tn(c,29231,4)|0,a)|0,30253,3)|0,29747,32)|0;n=b+11|0;d=i[n>>0]|0;e=d<<24>>24<0;Tn(o,e?k[b>>2]|0:b,e?k[b+4>>2]|0:d&255)|0;hi(c);d=b;e=b;c=n}else{d=b;e=b;c=b+11|0}cd(f,(i[c>>0]|0)<0?k[d>>2]|0:e);k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,38191,16);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,115628,0);o=Sd(f,h,g,j)|0;p1(j);p1(h);if(o?(o=i[g>>0]|0,i[a+1436>>0]=o,o<<24>>24==0):0){if((k[2783]|0)<3){Qd(l,29209,263,2,0,0,0);Tn(Tn(Hn(Tn(l,29231,4)|0,a)|0,30253,3)|0,29780,59)|0;hi(l)}Zr(a+424|0,1)}kc(a+1360|0,f);CI(a+460|0);AE(a+356|0,a);VD(f);r=m;return}function Og(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+32|0;j=l+12|0;g=l;e=Ml(a)|0;do if(e){f=$B(a)|0;if(f|0?i[f+60>>0]|0:0){XQ(g,f,b,e);jD(j,a,g);e=c+11|0;if((i[e>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;e=c}else{i[c>>0]=0;i[e>>0]=0;e=c}Qm(c,0);k[e>>2]=k[j>>2];k[e+4>>2]=k[j+4>>2];k[e+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;p1(j);p1(g);MM(d,b+16|0)|0;e=1;break}e=gC(a)|0;if(e){h=k[b+28>>2]|0;g=k[e+76>>2]|0;jD(j,a,g+(h*48|0)|0);e=c+11|0;if((i[e>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;e=c}else{i[c>>0]=0;i[e>>0]=0;e=c}Qm(c,0);k[e>>2]=k[j>>2];k[e+4>>2]=k[j+4>>2];k[e+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;p1(j);f=g+(h*48|0)+12|0;e=i[f+11>>0]|0;if(e<<24>>24<0)e=k[g+(h*48|0)+16>>2]|0;else e=e&255;if(!e){MM(d,b+16|0)|0;e=1;break}else{MM(d,f)|0;e=1;break}}else e=0}else e=0;while(0);r=l;return e|0}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+208|0;e=h+188|0;g=h+176|0;c=h+20|0;d=h+8|0;f=h;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;a:do if(bf(a,g)|0){do if(i[a+650>>0]|0){if(ib()|0?db()|0:0)break;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,30893,23);ub(5,k[a+1048>>2]|0,((i[e+11>>0]|0)<0?k[e>>2]|0:e)|0)|0;p1(e);c=0;break a}while(0);c=a+200|0;if(b){b=(k[c>>2]|0)+36|0;k[f>>2]=114;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];rv(b,a,e)}Sk(k[c>>2]|0,g,(i[a+392>>0]|0)!=0);c=1}else{if((k[2783]|0)<5){Qd(c,30665,101,4,0,0,0);Tn(c,30733,40)|0;hi(c)}k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,30774,21);f=k[a+352>>2]|0;c=i[f+11>>0]|0;b=c<<24>>24<0;c=nw(d,b?k[f>>2]|0:f,b?k[f+4>>2]|0:c&255)|0;k[e>>2]=k[c>>2];k[e+4>>2]=k[c+4>>2];k[e+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;ub(5,k[a+1048>>2]|0,((i[e+11>>0]|0)<0?k[e>>2]|0:e)|0)|0;p1(e);p1(d);c=0}while(0);p1(g);r=h;return c|0}function Qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=j[a+8>>1]|0;a:do if(!((c^j[b+8>>1])&255))switch((c&255)<<24>>24){case 0:{a=1;break a}case 1:{f=a;a=b;a=(k[f>>2]|0)==(k[a>>2]|0)?(k[f+4>>2]|0)==(k[a+4>>2]|0):0;break a}case 2:{f=a;a=b;a=(k[f>>2]|0)==(k[a>>2]|0)?(k[f+4>>2]|0)==(k[a+4>>2]|0):0;break a}case 3:{a=+p[a>>3]==+p[b>>3];break a}case 5:{a=(i[a>>0]|0)==(i[b>>0]|0);break a}case 4:{c=k[a>>2]|0;a=k[b>>2]|0;if((c|0)==(a|0)){a=1;break a}if((c|0)==0|(a|0)==0){a=0;break a}a=(FJ(c,a)|0)==0;break a}case 7:case 6:{c=k[a>>2]|0;d=k[b>>2]|0;if((k[c+8>>2]|0)!=(k[d+8>>2]|0)){a=0;break a}a=k[c>>2]|0;f=c+4|0;b=a;if((b|0)==(f|0)){a=1;break a}c=k[d>>2]|0;while(1){d=c;e=k[b+16>>2]|0;if(!e){if((k[b+20>>2]|0)!=(k[d+20>>2]|0)){a=0;break a}}else if(FJ(e,k[d+16>>2]|0)|0){a=0;break a}if(!(Qg(b+24|0,d+24|0)|0)){a=0;break a}b=k[a+4>>2]|0;if(!b)while(1){b=k[a+8>>2]|0;if((k[b>>2]|0)==(a|0))break;else a=b}else{a=b;while(1){b=k[a>>2]|0;if(!b){b=a;break}else a=b}}a=b;d=c;c=k[d+4>>2]|0;if(!c)while(1){c=k[d+8>>2]|0;if((k[c>>2]|0)==(d|0))break;else d=c}else while(1){d=k[c>>2]|0;if(!d)break;else c=d}if((b|0)==(f|0)){a=1;break}}break}default:{a=0;break a}}else a=0;while(0);return a|0}function Rg(a){a=a|0;var b=0.0,c=0.0,d=0,e=0,f=0,g=0,h=0;g=a+4|0;f=w4(k[g>>2]|0)|0;i[f+1189>>0]=i[a+164>>0]^1;f=v0(k[g>>2]|0)|0;h=a+124|0;if(+xY(f,k[(k[h>>2]|0)+48>>2]|0)>0.0){f=v0(k[g>>2]|0)|0;b=+xY(f,k[(k[h>>2]|0)+48>>2]|0)}else b=0.0;f=a+128|0;a=k[f>>2]|0;d=k[h>>2]|0;e=d;if((a|0)==(d|0))c=0.0;else{d=(a-d|0)/96|0;c=0.0;a=0;do{c=c+ +o[e+(a*96|0)+32>>2];a=a+1|0}while(a>>>0<d>>>0)}e=(w4(k[g>>2]|0)|0)+1189|0;a=k[g>>2]|0;a:do if(!(i[e>>0]|0)){e=(w4(a)|0)+1188|0;i[e>>0]=1}else{switch(k[a+1836>>2]|0){case 0:break;case 2:{if(!(c>+(k[a+1840>>2]|0)))break a;break}default:break a}e=(w4(a)|0)+1188|0;i[e>>0]=1}while(0);e=(w4(k[g>>2]|0)|0)+1188|0;if(i[e>>0]|0){e=(w4(k[g>>2]|0)|0)+1136|0;if(+p[e>>3]!=c){e=(w4(k[g>>2]|0)|0)+1136|0;p[e>>3]=c}c=b+c;e=(w4(k[g>>2]|0)|0)+1144|0;if(+p[e>>3]!=c){e=(w4(k[g>>2]|0)|0)+1144|0;p[e>>3]=c}}e=(v0(k[g>>2]|0)|0)+28|0;k[e>>2]=1e3;if((k[f>>2]|0)!=(k[h>>2]|0)){a=0;do{d=v0(k[g>>2]|0)|0;e=k[(k[h>>2]|0)+(a*96|0)+48>>2]|0;_C(d,e,+yaa(+(b*1.0e3)));e=k[h>>2]|0;b=b+ +o[e+(a*96|0)+32>>2];a=a+1|0}while(a>>>0<(((k[f>>2]|0)-e|0)/96|0)>>>0)}return}function Sg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+320|0;b=g+156|0;f=g;e=a+208|0;c=j0(e)|0;a:do if(!c){if((k[2783]|0)<4){Qd(b,47907,81,3,0,0,0);f=Tn(b,47926,13)|0;Tn(Tn(Tn(f,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48187,5)|0;hi(b)}}else{og(a,c);b=Ml(e)|0;h=$B(e)|0;c=gC(e)|0;d=(c|0)!=0;if(!((h|0)!=0|d)?i[b+60>>0]|0:0)Yc(a);af(a);if(i[a+236>>0]|0){h=($L(e)|0)!=0;i[a+238>>0]=h&1;do if(!h){b=$B(e)|0;if(d){yj(0,c);break}if(b|0){Bf(a,b);i[a+248>>0]=1;break}if((k[2783]|0)>=5)break a;Qd(f,47907,116,4,0,0,0);h=Tn(f,47926,13)|0;Tn(Tn(Tn(h,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48193,64)|0;hi(f);break a}while(0);if(i6(a+216|0)|0)i[a+248>>0]=1}r$(a+24|0)}while(0);r=g;return}function Tg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0.0;n=r;r=r+320|0;c=n+156|0;g=n;do if(b|0){if((i[a+373>>0]|0)!=0&(k[2783]|0)<5){Qd(c,74588,180,4,0,0,0);l=Tn(c,74975,20)|0;l=Tn(Mn(l,k[b+12>>2]|0)|0,74996,6)|0;Tn(Ln(l,k[b+20>>2]|0)|0,75003,29)|0;hi(c)}j=a+52|0;c=k[j>>2]|0;e=k[(k[c+916>>2]|0)+616>>2]|0;f=a+369|0;l=a+364|0;do if(!(i[f>>0]|0)){d=k[l>>2]|0;if((((d|0)>-1?(h=b+12|0,(d+e|0)!=(k[h>>2]|0)):0)?(i[c+1189>>0]|0)==0&(k[2783]|0)<4:0)?(Qd(g,74588,189,3,0,0,0),d=Tn(g,75033,54)|0,d=Tn(Mn(d,k[l>>2]|0)|0,75088,10)|0,Mn(d,k[h>>2]|0)|0,hi(g),i[f>>0]|0):0){c=k[j>>2]|0;m=11;break}c=b+12|0}else m=11;while(0);if((m|0)==11){m=laa(c)|0;c=b+12|0;o=+xY(m,(k[c>>2]|0)/(e|0)|0);m=k[a+288>>2]|0;Wb[k[(k[m>>2]|0)+24>>2]&3](m,o,0);Pb[k[(k[a>>2]|0)+164>>2]&15](a,o);i[f>>0]=0}k[l>>2]=k[c>>2];if((k[(k[j>>2]|0)+1128>>2]|0)==1){bG(a,b);break}else{Pe(a,b);break}}while(0);r=n;return}function Ug(a){a=a|0;var b=0;if((i[109344]|0)==0?E3(109344)|0:0){if((i[109352]|0)==0?E3(109352)|0:0){b=112016;do{k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}b=b+12|0}while((b|0)!=112304)}dZ(112016,107181)|0;dZ(112028,107189)|0;dZ(112040,107198)|0;dZ(112052,107204)|0;dZ(112064,107210)|0;dZ(112076,107214)|0;dZ(112088,107219)|0;dZ(112100,107224)|0;dZ(112112,107231)|0;dZ(112124,107241)|0;dZ(112136,107249)|0;dZ(112148,107258)|0;dZ(112160,107267)|0;dZ(112172,107271)|0;dZ(112184,107275)|0;dZ(112196,107279)|0;dZ(112208,107210)|0;dZ(112220,107283)|0;dZ(112232,107287)|0;dZ(112244,107291)|0;dZ(112256,107295)|0;dZ(112268,107299)|0;dZ(112280,107303)|0;dZ(112292,107307)|0;k[28076]=112016}return k[28076]|0}function Vg(a,b,c,d,e,f,g,h,j,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;m=m|0;n=n|0;o=o|0;var p=0,q=0;a:do if(a<<24>>24==f<<24>>24)if(i[b>>0]|0){i[b>>0]=0;c=k[e>>2]|0;k[e>>2]=c+1;i[c>>0]=46;e=i[h+11>>0]|0;if(((e<<24>>24<0?k[h+4>>2]|0:e&255)|0)!=0?(p=k[m>>2]|0,(p-j|0)<160):0){j=k[n>>2]|0;k[m>>2]=p+4;k[p>>2]=j;p=0}else p=0}else p=-1;else{if(a<<24>>24==g<<24>>24?(g=i[h+11>>0]|0,(g<<24>>24<0?k[h+4>>2]|0:g&255)|0):0){if(!(i[b>>0]|0)){p=-1;break}p=k[m>>2]|0;if((p-j|0)>=160){p=0;break}j=k[n>>2]|0;k[m>>2]=p+4;k[p>>2]=j;k[n>>2]=0;p=0;break}g=o+32|0;f=0;while(1){p=o+f|0;if((f|0)==32){p=g;break}if((i[p>>0]|0)==a<<24>>24)break;else f=f+1|0}f=p-o|0;if((f|0)>31)p=-1;else{g=i[106657+f>>0]|0;switch(f|0){case 24:case 25:{p=k[e>>2]|0;if((p|0)!=(d|0)?(l[p+-1>>0]&95|0)!=(l[c>>0]&127|0):0){p=-1;break a}k[e>>2]=p+1;i[p>>0]=g;p=0;break a}case 23:case 22:{i[c>>0]=80;p=k[e>>2]|0;k[e>>2]=p+1;i[p>>0]=g;p=0;break a}default:{p=g&95;if((((p|0)==(i[c>>0]|0)?(i[c>>0]=p|128,i[b>>0]|0):0)?(i[b>>0]=0,c=i[h+11>>0]|0,(c<<24>>24<0?k[h+4>>2]|0:c&255)|0):0)?(q=k[m>>2]|0,(q-j|0)<160):0){j=k[n>>2]|0;k[m>>2]=q+4;k[q>>2]=j}m=k[e>>2]|0;k[e>>2]=m+1;i[m>>0]=g;if((f|0)>21){p=0;break a}k[n>>2]=(k[n>>2]|0)+1;p=0;break a}}}}while(0);return p|0}function Wg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:while(1){a=k[b>>2]|0;do if(a){f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[f>>2]|0;if((a|0)==-1){k[b>>2]=0;g=1;break}else{g=(k[b>>2]|0)==0;break}}else g=1;while(0);f=k[c>>2]|0;do if(f){a=k[f+12>>2]|0;if((a|0)==(k[f+16>>2]|0))a=Ub[k[(k[f>>2]|0)+36>>2]&511](f)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(g){g=f;break}else{g=f;break a}else{k[c>>2]=0;h=15;break}}else h=15;while(0);if((h|0)==15){h=0;if(g){g=0;break}else g=0}a=k[b>>2]|0;f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[f>>2]|0;if(!(Yb[k[(k[e>>2]|0)+12>>2]&31](e,8192,a)|0))break;a=k[b>>2]|0;f=a+12|0;g=k[f>>2]|0;if((g|0)==(k[a+16>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[f>>2]=g+4;continue}}a=k[b>>2]|0;do if(a){f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=k[f>>2]|0;if((a|0)==-1){k[b>>2]=0;f=1;break}else{f=(k[b>>2]|0)==0;break}}else f=1;while(0);do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(f)break;else{h=39;break}else{k[c>>2]=0;h=37;break}}else h=37;while(0);if((h|0)==37?f:0)h=39;if((h|0)==39)k[d>>2]=k[d>>2]|2;return}function Xg(a){a=a|0;var b=0;if((i[109424]|0)==0?E3(109424)|0:0){if((i[109432]|0)==0?E3(109432)|0:0){b=112828;do{k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[b+(a<<2)>>2]=0;a=a+1|0}b=b+12|0}while((b|0)!=113116)}cZ(112828,24344)|0;cZ(112840,24376)|0;cZ(112852,24412)|0;cZ(112864,24436)|0;cZ(112876,24460)|0;cZ(112888,24476)|0;cZ(112900,24496)|0;cZ(112912,24516)|0;cZ(112924,24544)|0;cZ(112936,24584)|0;cZ(112948,24616)|0;cZ(112960,24652)|0;cZ(112972,24688)|0;cZ(112984,24704)|0;cZ(112996,24720)|0;cZ(113008,24736)|0;cZ(113020,24460)|0;cZ(113032,24752)|0;cZ(113044,24768)|0;cZ(113056,24784)|0;cZ(113068,24800)|0;cZ(113080,24816)|0;cZ(113092,24832)|0;cZ(113104,24848)|0;k[28279]=112828}return k[28279]|0}function Yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+160|0;j=m+140|0;f=m+136|0;l=m;d=Ju(a,b)|0;if((d|0)==(a+136|0))d=0;else{d=d+28|0;if((i[d+11>>0]|0)<0)d=k[d>>2]|0;e=+Waa(d,f);if(!(i[k[f>>2]>>0]|0)){p[c>>3]=e;d=1}else{c=l+4|0;k[l>>2]=4176;g=l+56|0;k[g>>2]=4196;GK(l+56|0,c);k[l+128>>2]=0;k[l+132>>2]=-1;k[l>>2]=4216;k[l+56>>2]=4236;sT(c);k[c>>2]=1740;h=l+36|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[l+52>>2]=16;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;cn(c,j);p1(j);d=i[b+11>>0]|0;f=d<<24>>24<0;Tn(Tn(l,f?k[b>>2]|0:b,f?k[b+4>>2]|0:d&255)|0,47368,34)|0;Yr(j,c);d=a+148|0;f=k[d>>2]|0;if(f>>>0<(k[a+152>>2]|0)>>>0){k[f>>2]=k[j>>2];k[f+4>>2]=k[j+4>>2];k[f+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[d>>2]=(k[d>>2]|0)+12}else sj(a+144|0,j);p1(j);k[l>>2]=4216;k[g>>2]=4236;k[c>>2]=1740;p1(h);I3(c);Qaa(l,4248);N8(g);d=0}}r=m;return d|0}function Zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;Bt(a,b);f=a+60|0;h=a+64|0;c=(k[h>>2]|0)-(k[f>>2]|0)>>4;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;g=a+48|0;d=k[g>>2]|0;if(d&1){d=k[a+52>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[g>>2]|0}if(d&4){e=k[a+56>>2]|0;i[c>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;c=(k[b>>2]|0)+4|0;k[b>>2]=c}d=k[f>>2]|0;if((k[h>>2]|0)!=(d|0)){e=0;do{a=k[g>>2]|0;if(a&256){a=k[d+(e<<4)>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[g>>2]|0}if(a&512){a=k[d+(e<<4)+4>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[g>>2]|0}if(a&1024){a=k[d+(e<<4)+8>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;c=(k[b>>2]|0)+4|0;k[b>>2]=c;a=k[g>>2]|0}if(a&2048){a=k[d+(e<<4)+12>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;c=(k[b>>2]|0)+4|0;k[b>>2]=c}e=e+1|0;d=k[f>>2]|0}while(e>>>0<(k[h>>2]|0)-d>>4>>>0)}return}function _g(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0;i=(c-b|0)/56|0;d=a+8|0;e=k[a>>2]|0;f=e;do if(i>>>0>(((k[d>>2]|0)-e|0)/56|0)>>>0){Uw(a);if(i>>>0>76695844)J5(a);else{h=((k[d>>2]|0)-(k[a>>2]|0)|0)/56|0;l=h<<1;cO(a,h>>>0<38347922?(l>>>0<i>>>0?i:l):76695844);Xt(a,b,c,i);break}}else{l=a+4|0;g=((k[l>>2]|0)-e|0)/56|0;h=i>>>0>g>>>0;g=h?b+(g*56|0)|0:c;if((g|0)==(b|0))e=f;else{e=b;d=f;do{k[d>>2]=k[e>>2];MM(d+4|0,e+4|0)|0;MM(d+16|0,e+16|0)|0;MM(d+28|0,e+28|0)|0;MM(d+40|0,e+40|0)|0;j[d+52>>1]=j[e+52>>1]|0;e=e+56|0;d=d+56|0}while((e|0)!=(g|0));e=d}if(h){Xt(a,g,c,i-(((k[l>>2]|0)-(k[a>>2]|0)|0)/56|0)|0);break}d=k[l>>2]|0;if((d|0)!=(e|0))do{k[l>>2]=d+-56;p1(d+-16|0);p1(d+-28|0);p1(d+-40|0);p1(d+-52|0);d=k[l>>2]|0}while((d|0)!=(e|0))}while(0);return}function $g(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+160|0;h=l+140|0;e=l+136|0;j=l;d=Ju(a,b)|0;if((d|0)==(a+136|0))d=0;else{d=d+28|0;if((i[d+11>>0]|0)<0)d=k[d>>2]|0;d=z5(d,e,10)|0;if(!(i[k[e>>2]>>0]|0)){k[c>>2]=d;d=1}else{c=j+4|0;k[j>>2]=4176;f=j+56|0;k[f>>2]=4196;GK(j+56|0,c);k[j+128>>2]=0;k[j+132>>2]=-1;k[j>>2]=4216;k[j+56>>2]=4236;sT(c);k[c>>2]=1740;g=j+36|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[j+52>>2]=16;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;cn(c,h);p1(h);d=i[b+11>>0]|0;e=d<<24>>24<0;Tn(Tn(j,e?k[b>>2]|0:b,e?k[b+4>>2]|0:d&255)|0,47339,28)|0;Yr(h,c);d=a+148|0;e=k[d>>2]|0;if(e>>>0<(k[a+152>>2]|0)>>>0){k[e>>2]=k[h>>2];k[e+4>>2]=k[h+4>>2];k[e+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[d>>2]=(k[d>>2]|0)+12}else sj(a+144|0,h);p1(h);k[j>>2]=4216;k[f>>2]=4236;k[c>>2]=1740;p1(g);I3(c);Qaa(j,4248);N8(f);d=0}}r=l;return d|0}function ah(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0;h=r;r=r+160|0;e=h;g=b+8|0;c=k[g>>2]|0;d=c;d=eH(a,k[d>>2]|0,k[d+4>>2]|0)|0;k[c>>2]=d;k[c+4>>2]=((d|0)<0)<<31>>31;c=a+116|0;d=k[c>>2]|0;if(!d){if((k[2783]|0)<4){Qd(e,52211,377,3,0,0,0);Tn(e,54187,34)|0;hi(e)}e=cW(16)|0;d=k[g>>2]|0;l=d;m=k[l>>2]|0;l=k[l+4>>2]|0;VU(e,m,l,x9(d)|0);k[c>>2]=e;c=cW(12)|0;e=k[g>>2]|0;d=k[e>>2]|0;e=x9(e)|0;k[c>>2]=d;k[c+4>>2]=0;k[c+8>>2]=0;pI(c,e);k[a+124>>2]=c;c=k[a+4>>2]|0;if(i[c+1439>>0]|0?(f=k[c+1576>>2]|0,(f|0)>1):0){m=cW(16)|0;l=k[g>>2]|0;d=l;d=A5(k[d>>2]|0,k[d+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=M;VU(m,d,e,((x9(l)|0)>>>0)/(f>>>0)|0);k[a+120>>2]=m}}else eJ(d,k[g>>2]|0);d=a+216|0;ku(d,k[k[g>>2]>>2]|0);WI(d,x9(k[g>>2]|0)|0);d=a+144|0;c=k[d>>2]|0;if((c|0)<0){c=k[k[g>>2]>>2]|0;k[d>>2]=c}if(cc[k[(k[a>>2]|0)+56>>2]&127](a,c)|0)do{m=(k[d>>2]|0)+1|0;k[d>>2]=m}while(cc[k[(k[a>>2]|0)+56>>2]&127](a,m)|0);d=a+130|0;c=j[d>>1]|0;if(!((c&255)<<24>>24))i[d>>0]=1;if((c&65535)>=256)CM(a);Qs(k[a+4>>2]|0,a,k[g>>2]|0,b+12|0);r=h;return}function bh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+32|0;e=h+12|0;j=h;g=cW(88)|0;VH(e,b);VH(j,b);c=(lZ(b)|0)&255;d=zo(b)|0;f=M;a=xF(b)|0;k[g+4>>2]=12;k[g>>2]=8268;iI(g+8|0,e);iI(g+20|0,j);k[g+32>>2]=c;c=g+40|0;k[c>>2]=d;k[c+4>>2]=f;k[g+48>>2]=a;a=g+52|0;i[a>>0]=0;c=g+56|0;f=g+80|0;k[f>>2]=0;d=g+84|0;i[d>>0]=0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[c+16>>2]=0;i[c+20>>0]=0;p1(j);p1(e);if((((f2(b)|0)>0?(j=(lZ(b)|0)&255,i[a>>0]=j&1,i[g+76>>0]=j>>>1&1,i[d>>0]=j>>>2&1,(f2(b)|0)>3):0)?(j=xF(b)|0,k[c>>2]=j,(f2(b)|0)>1):0)?(j=(dO(b)|0)&65535,k[g+60>>2]=j,(f2(b)|0)>0):0){a=g+64|0;VH(e,b);c=g+75|0;if((i[c>>0]|0)<0){i[k[a>>2]>>0]=0;k[g+68>>2]=0}else{i[a>>0]=0;i[c>>0]=0}Qm(a,0);k[a>>2]=k[e>>2];k[a+4>>2]=k[e+4>>2];k[a+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;p1(e);if((f2(b)|0)>0){j=(lZ(b)|0)&255;k[f>>2]=j}}r=h;return g|0}function ch(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+256|0;h=j+232|0;g=j+220|0;d=j+168|0;e=j;f=j+12|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,50649,4);nE(b,g,h)|0;p1(g);c=ur(a+156|0,h)|0;if((c|0)!=(a+160|0)){c=k[c+32>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,b)}else{k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,56171,3);nE(b,d,g)|0;p1(d);c=ur(a+168|0,g)|0;if((c|0)!=(a+172|0)){c=k[c+32>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,b)}else{iT(d);yA(e,d,b);if((k[2783]|0)<4){Qd(f,50515,273,3,0,0,0);c=Tn(f,50654,52)|0;b=i[e+11>>0]|0;a=b<<24>>24<0;Tn(c,a?k[e>>2]|0:e,a?k[e+4>>2]|0:b&255)|0;hi(f)}p1(e);bQ(d)}p1(g)}p1(h);r=j;return}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;Es(a,b);i[k[b>>2]>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=0;do{i[d>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=c+1|0}while((c|0)!=3);c=j[a+46>>1]|0;i[d>>0]=(c&65535)>>>8;i[(k[b>>2]|0)+1>>0]=c;c=(k[b>>2]|0)+2|0;k[b>>2]=c;d=j[a+48>>1]|0;i[c>>0]=(d&65535)>>>8;i[(k[b>>2]|0)+1>>0]=d;d=(k[b>>2]|0)+2|0;k[b>>2]=d;c=k[a+52>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[a+56>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;d=(k[b>>2]|0)+4|0;k[b>>2]=d;i[d>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=j[a+60>>1]|0;i[d>>0]=(c&65535)>>>8;i[(k[b>>2]|0)+1>>0]=c;c=(k[b>>2]|0)+2|0;k[b>>2]=c;d=a+62|0;e=c+32|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));e=(k[b>>2]|0)+32|0;k[b>>2]=e;f=j[a+96>>1]|0;i[e>>0]=(f&65535)>>>8;i[(k[b>>2]|0)+1>>0]=f;f=(k[b>>2]|0)+2|0;k[b>>2]=f;i[f>>0]=-1;i[(k[b>>2]|0)+1>>0]=-1;k[b>>2]=(k[b>>2]|0)+2;f=a+32|0;e=a+36|0;c=k[f>>2]|0;if((k[e>>2]|0)!=(c|0)){d=0;do{a=k[c+(d<<2)>>2]|0;Sb[k[(k[a>>2]|0)+12>>2]&511](a,b);d=d+1|0;c=k[f>>2]|0}while(d>>>0<(k[e>>2]|0)-c>>2>>>0)}return}function eh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0.0,l=0,m=0,n=0,o=0,q=0;q=r;r=r+32|0;m=q+16|0;n=q;o=q+8|0;g=a+120|0;e=k[g>>2]|0;h=a+116|0;i=e;j=+p[b>>3];a:do if((i|0)==(h|0))l=4;else{d=e;f=i;while(1){if(+p[d+8>>3]==j)break a;d=k[f+4>>2]|0;f=d;if((f|0)==(h|0)){l=4;break}}}while(0);if((l|0)==4){d=cW(16)|0;p[d+8>>3]=j;k[d>>2]=h;k[d+4>>2]=i;k[e>>2]=d;k[g>>2]=d;e=a+124|0;k[e>>2]=(k[e>>2]|0)+1;e=cW(200)|0;h=k[a+88>>2]|0;i=(k[h+916>>2]|0)+992|0;h=k[h+896>>2]|0;d=a+176|0;g=d;f=k[g>>2]|0;g=k[g+4>>2]|0;l=y0(f|0,g|0,1,0)|0;k[d>>2]=l;k[d+4>>2]=M;er(e,i,h);k[e>>2]=6128;h=e+104|0;i=h;k[i>>2]=0;k[i+4>>2]=0;i=e+112|0;d=i+40|0;do{k[i>>2]=k[c>>2];i=i+4|0;c=c+4|0}while((i|0)<(d|0));i=e+152|0;k[i>>2]=f;k[i+4>>2]=g;i=e+160|0;c=b;d=i+40|0;do{k[i>>2]=k[c>>2];i=i+4|0;c=c+4|0}while((i|0)<(d|0));k[n>>2]=e;i=_J()|0;l=h;k[l>>2]=i;k[l+4>>2]=M;k[o>>2]=116;k[o+4>>2]=0;k[m>>2]=k[o>>2];k[m+4>>2]=k[o+4>>2];Nq(e+16|0,a,m)|0;o=k[a+100>>2]|0;ec[k[(k[o>>2]|0)+8>>2]&15](o,b,e,0)|0;vm(m,a+184|0,n,n);o=a+164|0;k[o>>2]=(k[o>>2]|0)+1}r=q;return}function fh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+16|0;p=q;j=c;while(1){if((j|0)==(d|0)){j=d;break}if(!(i[j>>0]|0))break;j=j+1|0}k[h>>2]=f;k[e>>2]=c;n=g;o=a+8|0;a=f;while(1){if((a|0)==(g|0)|(c|0)==(d|0)){a=33;break}l=b;f=k[l+4>>2]|0;m=p;k[m>>2]=k[l>>2];k[m+4>>2]=f;m=j;f=O0(k[o>>2]|0)|0;l=al(a,e,m-c|0,n-a>>2,b)|0;if(f|0)O0(f)|0;if((l|0)==-1){j=a;a=10;break}a=(k[h>>2]|0)+(l<<2)|0;k[h>>2]=a;if((a|0)==(g|0)){a=30;break}c=k[e>>2]|0;if((j|0)==(d|0))j=d;else{j=O0(k[o>>2]|0)|0;c=gl(a,c,1,b)|0;if(j|0)O0(j)|0;if(c|0){c=2;a=29;break}k[h>>2]=(k[h>>2]|0)+4;c=(k[e>>2]|0)+1|0;k[e>>2]=c;j=c;while(1){if((j|0)==(d|0)){j=d;break}if(!(i[j>>0]|0))break;j=j+1|0}a=k[h>>2]|0}}do if((a|0)==10){a:while(1){k[h>>2]=j;if((c|0)==(k[e>>2]|0)){a=19;break}a=O0(k[o>>2]|0)|0;j=gl(j,c,m-c|0,p)|0;if(a|0)O0(a)|0;switch(j|0){case -1:{a=15;break a}case -2:{a=16;break a}case 0:{c=c+1|0;break}default:c=c+j|0}j=(k[h>>2]|0)+4|0;a=10}if((a|0)==15){k[e>>2]=c;c=2;a=29;break}else if((a|0)==16){k[e>>2]=c;c=1;a=29;break}else if((a|0)==19){k[e>>2]=c;c=(c|0)!=(d|0)&1;a=29;break}}else if((a|0)==30){c=k[e>>2]|0;a=33}while(0);if((a|0)!=29)if((a|0)==33)c=(c|0)!=(d|0)&1;r=q;return c|0}function gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=a+8|0;a:do if(k[e>>2]|0?(g=k[a>>2]|0,d=a+4|0,k[a>>2]=d,k[(k[d>>2]|0)+8>>2]=0,k[d>>2]=0,k[e>>2]=0,d=k[g+4>>2]|0,d=(d|0)==0?g:d,d|0):0){g=k[c>>2]|0;e=k[b>>2]|0;f=e;while(1){if((f|0)==(g|0))break;p[d+16>>3]=+p[f+16>>3];k[d+24>>2]=k[f+24>>2];f=ds(d)|0;Et(a,d)|0;d=k[e+4>>2]|0;if(!d){d=e;while(1){e=k[d+8>>2]|0;if((k[e>>2]|0)==(d|0))break;else d=e}}else while(1){e=k[d>>2]|0;if(!e){e=d;break}else d=e}k[b>>2]=e;if(!f)break a;else{d=f;f=e}}e=k[d+8>>2]|0;if(e){d=e;while(1){e=k[d+8>>2]|0;if(!e)break;else d=e}}fF(a,d)}while(0);d=k[b>>2]|0;f=k[c>>2]|0;if((d|0)!=(f|0)){e=d;while(1){mq(a,e+16|0)|0;e=k[d+4>>2]|0;if(!e)while(1){e=k[d+8>>2]|0;if((k[e>>2]|0)==(d|0)){d=e;break}else d=e}else{d=e;while(1){e=k[d>>2]|0;if(!e)break;else d=e}}k[b>>2]=d;if((d|0)==(f|0))break;else e=d}}return}function hh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;c=k[a+8>>2]|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;f=a+12|0;f=l[f>>0]|l[f+1>>0]<<8|l[f+2>>0]<<16|l[f+3>>0]<<24;i[c>>0]=f;i[c+1>>0]=f>>8;i[c+2>>0]=f>>16;i[c+3>>0]=f>>24;c=(k[b>>2]|0)+4|0;k[b>>2]=c;i[c>>0]=i[a+44>>0]|0;c=(k[b>>2]|0)+1|0;k[b>>2]=c;i[c>>0]=i[a+45>>0]|0;c=(k[b>>2]|0)+1|0;k[b>>2]=c;i[c>>0]=i[a+46>>0]|0;c=(k[b>>2]|0)+1|0;k[b>>2]=c;i[c>>0]=i[a+47>>0]|0;c=(k[b>>2]|0)+1|0;k[b>>2]=c;i[c>>0]=l[a+48>>0]|0|252;c=(k[b>>2]|0)+1|0;k[b>>2]=c;f=a+52|0;g=a+56|0;i[c>>0]=((k[g>>2]|0)-(k[f>>2]|0)|0)>>>3|224;c=(k[b>>2]|0)+1|0;k[b>>2]=c;d=k[f>>2]|0;if((k[g>>2]|0)!=(d|0)){e=0;do{j=k[d+(e<<3)+4>>2]|0;i[c>>0]=(j&65535)>>>8;i[(k[b>>2]|0)+1>>0]=j;j=(k[b>>2]|0)+2|0;k[b>>2]=j;h=k[f>>2]|0;c=k[h+(e<<3)+4>>2]|0;fE(j|0,k[h+(e<<3)>>2]|0,c|0)|0;c=(k[b>>2]|0)+c|0;k[b>>2]=c;e=e+1|0;d=k[f>>2]|0}while(e>>>0<(k[g>>2]|0)-d>>3>>>0)}g=a+64|0;f=a+68|0;i[c>>0]=((k[f>>2]|0)-(k[g>>2]|0)|0)>>>3;c=(k[b>>2]|0)+1|0;k[b>>2]=c;d=k[g>>2]|0;if((k[f>>2]|0)!=(d|0)){e=0;do{a=k[d+(e<<3)+4>>2]|0;i[c>>0]=(a&65535)>>>8;i[(k[b>>2]|0)+1>>0]=a;a=(k[b>>2]|0)+2|0;k[b>>2]=a;h=k[g>>2]|0;j=k[h+(e<<3)+4>>2]|0;fE(a|0,k[h+(e<<3)>>2]|0,j|0)|0;c=(k[b>>2]|0)+j|0;k[b>>2]=c;e=e+1|0;d=k[g>>2]|0}while(e>>>0<(k[f>>2]|0)-d>>3>>>0)}return}function ih(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;j=r;r=r+80|0;f=j;g=j+64|0;d=a+44|0;h=a+40|0;e=d;while(1){e=k[e>>2]|0;if((e|0)==(h|0))break;else e=e+4|0}e=a+52|0;iI(g,(k[e>>2]|0)+2008|0);p=a+104|0;q=k[p>>2]|0;p=k[p+4>>2]|0;o=i[a+116>>0]|0;l=f+4|0;k[f+12>>2]=0;k[f+16>>2]=0;m=f+12|0;k[f+8>>2]=m;k[f>>2]=6464;k[l>>2]=6492;n=f+24|0;k[n>>2]=q;k[n+4>>2]=p;n=f+32|0;iI(n,g);p=f+48|0;k[p>>2]=0;k[p+4>>2]=0;i[f+56>>0]=o;Ts(c,f);k[f>>2]=6464;k[l>>2]=6492;p1(n);k[f>>2]=1972;k[l>>2]=2e3;Bo(f);dH(f+8|0,k[m>>2]|0);k[l>>2]=2024;p1(g);Eg(a,c);if(kd(a,b,c)|0){g=k[e>>2]|0;e=k[g+452>>2]|0;g=g+448|0;if((e|0)!=(g|0)){c=e;f=e;do{e=k[c+8>>2]|0;if((e|0)!=(b|0))Rb[k[(k[e>>2]|0)+104>>2]&2047](e);c=k[f+4>>2]|0;f=c}while((f|0)!=(g|0))}dF(a+20|0);while(1){d=k[d>>2]|0;if((d|0)==(h|0))break;else d=d+4|0}}Vk(a);r=j;return}function jh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;q=r;r=r+16|0;p=q;n=q+8|0;j=c;while(1){if((j|0)==(d|0)){j=d;break}if(!(k[j>>2]|0))break;j=j+4|0}k[h>>2]=f;k[e>>2]=c;m=g;o=a+8|0;a:while(1){if((f|0)==(g|0)|(c|0)==(d|0)){j=35;break}s=b;l=k[s+4>>2]|0;a=p;k[a>>2]=k[s>>2];k[a+4>>2]=l;a=O0(k[o>>2]|0)|0;l=im(f,e,j-c>>2,m-f|0,b)|0;if(a|0)O0(a)|0;switch(l|0){case -1:{j=10;break a}case 0:{c=1;j=32;break a}default:{}}f=(k[h>>2]|0)+l|0;k[h>>2]=f;if((f|0)==(g|0)){j=33;break}if((j|0)==(d|0)){j=d;c=k[e>>2]|0}else{f=O0(k[o>>2]|0)|0;c=yv(n,0,b)|0;if(f|0)O0(f)|0;if((c|0)==-1){c=2;j=31;break}if(c>>>0>(m-(k[h>>2]|0)|0)>>>0){c=1;j=31;break}else f=n;while(1){if(!c)break;l=i[f>>0]|0;s=k[h>>2]|0;k[h>>2]=s+1;i[s>>0]=l;f=f+1|0;c=c+-1|0}c=(k[e>>2]|0)+4|0;k[e>>2]=c;j=c;while(1){if((j|0)==(d|0)){j=d;break}if(!(k[j>>2]|0))break;j=j+4|0}f=k[h>>2]|0}}if((j|0)==10){k[h>>2]=f;while(1){if((c|0)==(k[e>>2]|0))break;s=k[c>>2]|0;j=O0(k[o>>2]|0)|0;f=yv(f,s,p)|0;if(j|0)O0(j)|0;if((f|0)==-1)break;f=(k[h>>2]|0)+f|0;k[h>>2]=f;c=c+4|0}k[e>>2]=c;c=2;j=32}else if((j|0)==31)j=32;else if((j|0)==33){c=k[e>>2]|0;j=35}if((j|0)!=32)if((j|0)==35)c=(c|0)!=(d|0)&1;r=q;return c|0}function kh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0;p=r;r=r+64|0;g=p+48|0;h=p+40|0;j=p+24|0;m=p+12|0;n=p;k[g>>2]=0;GM(g,0,0,0);o=b+8|0;a=i[o+11>>0]|0;if(a<<24>>24<0)e=k[b+12>>2]|0;else e=a&255;f=b+20|0;a=i[f+11>>0]|0;if(a<<24>>24<0)c=k[b+24>>2]|0;else c=a&255;d=b+64|0;a=i[d+11>>0]|0;if(a<<24>>24<0)a=k[b+68>>2]|0;else a=a&255;a=e+25+c+a|0;jR(g,a);k[g+4>>2]=a;c=cW(16)|0;k[c>>2]=0;GM(c,k[g>>2]|0,a,a);i[c+12>>0]=1;k[h>>2]=c;k[h+4>>2]=0;JX(h,k[b+4>>2]&255);iI(j,o);Ap(h,j);p1(j);iI(m,f);Ap(h,m);p1(m);JX(h,k[b+32>>2]&255);a=b+40|0;Zo(h,k[a>>2]|0,k[a+4>>2]|0);OE(h,k[b+48>>2]|0);JX(h,((l[b+76>>0]|0)<<1|(l[b+52>>0]|0)|(l[b+84>>0]|0)<<2)&255);OE(h,k[b+56>>2]|0);rO(h,k[b+60>>2]&65535);iI(n,d);Ap(h,n);p1(n);JX(h,k[b+80>>2]&255);a=k[g>>2]|0;if(a|0)wba(a);r=p;return c|0}function lh(a,b,c,d,e,f,g,h,j,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;m=m|0;n=n|0;o=o|0;var p=0,q=0;a:do if((a|0)==(f|0))if(i[b>>0]|0){i[b>>0]=0;c=k[e>>2]|0;k[e>>2]=c+1;i[c>>0]=46;e=i[h+11>>0]|0;if(((e<<24>>24<0?k[h+4>>2]|0:e&255)|0)!=0?(p=k[m>>2]|0,(p-j|0)<160):0){j=k[n>>2]|0;k[m>>2]=p+4;k[p>>2]=j;p=0}else p=0}else p=-1;else{if((a|0)==(g|0)?(g=i[h+11>>0]|0,(g<<24>>24<0?k[h+4>>2]|0:g&255)|0):0){if(!(i[b>>0]|0)){p=-1;break}p=k[m>>2]|0;if((p-j|0)>=160){p=0;break}j=k[n>>2]|0;k[m>>2]=p+4;k[p>>2]=j;k[n>>2]=0;p=0;break}g=o+128|0;f=0;while(1){p=o+(f<<2)|0;if((f|0)==32){p=g;break}if((k[p>>2]|0)==(a|0))break;else f=f+1|0}f=p-o|0;p=f>>2;if((f|0)<=124){g=i[106657+p>>0]|0;switch(p|0){case 24:case 25:{p=k[e>>2]|0;if((p|0)!=(d|0)?(l[p+-1>>0]&95|0)!=(l[c>>0]&127|0):0){p=-1;break a}k[e>>2]=p+1;i[p>>0]=g;p=0;break a}case 23:case 22:{i[c>>0]=80;break}default:{p=g&95;if((((p|0)==(i[c>>0]|0)?(i[c>>0]=p|128,i[b>>0]|0):0)?(i[b>>0]=0,c=i[h+11>>0]|0,(c<<24>>24<0?k[h+4>>2]|0:c&255)|0):0)?(q=k[m>>2]|0,(q-j|0)<160):0){j=k[n>>2]|0;k[m>>2]=q+4;k[q>>2]=j}}}m=k[e>>2]|0;k[e>>2]=m+1;i[m>>0]=g;if((f|0)>84)p=0;else{k[n>>2]=(k[n>>2]|0)+1;p=0}}else p=-1}while(0);return p|0}function mh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=r;r=r+16|0;g=h;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;switch(c<<24>>24){case 3:case 0:{a:do if(!d){f=b+8|0;e=0;c=f;b=k[b>>2]|0;f=k[f>>2]|0}else{c=b+8|0;f=k[c>>2]|0;b=k[b>>2]|0;e=0;do{if(!(i[b+(f+e)>>0]|0))break a;e=e+1|0}while(e>>>0<d>>>0)}while(0);k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,b+f|0,e);f=a+11|0;if((i[f>>0]|0)<0){i[k[a>>2]>>0]=0;k[a+4>>2]=0}else{i[a>>0]=0;i[f>>0]=0}Qm(a,0);k[a>>2]=k[g>>2];k[a+4>>2]=k[g+4>>2];k[a+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);break}default:{b:do if(d>>>0>1){c=k[b+8>>2]|0;f=k[b>>2]|0;e=1;do{j=c+e|0;if((i[f+(j+-1)>>0]|0)==0?(i[f+j>>0]|0)==0:0)break b;e=e+1|0}while(e>>>0<d>>>0)}else e=1;while(0);k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,115628,0);c=a+11|0;if((i[c>>0]|0)<0){i[k[a>>2]>>0]=0;k[a+4>>2]=0}else{i[a>>0]=0;i[c>>0]=0}Qm(a,0);k[a>>2]=k[g>>2];k[a+4>>2]=k[g+4>>2];k[a+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);c=b+8|0}}k[c>>2]=e+1+(k[c>>2]|0);r=h;return}function nh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a=k[b>>2]|0;do if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0))if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1){k[b>>2]=0;a=0;break}else{a=k[b>>2]|0;break}}else a=0;while(0);f=(a|0)==0;a=k[c>>2]|0;do if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[c>>2]=0;h=11;break}if(f){g=a;h=13}else h=12}else h=11;while(0);if((h|0)==11)if(f)h=12;else{g=0;h=13}a:do if((h|0)==12)k[d>>2]=k[d>>2]|6;else if((h|0)==13){a=k[b>>2]|0;f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=l[f>>0]|0;if((Yb[k[(k[e>>2]|0)+36>>2]&31](e,a&255,0)|0)<<24>>24!=37){k[d>>2]=k[d>>2]|4;break}a=k[b>>2]|0;f=a+12|0;e=k[f>>2]|0;if((e|0)==(k[a+16>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;a=k[b>>2]|0;if(!a)a=0;else h=21}else{k[f>>2]=e+1;h=21}do if((h|0)==21)if((k[a+12>>2]|0)==(k[a+16>>2]|0))if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1){k[b>>2]=0;a=0;break}else{a=k[b>>2]|0;break}while(0);a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;h=30;break}if(a)break a}else h=30;while(0);if((h|0)==30?!a:0)break;k[d>>2]=k[d>>2]|2}while(0);return}function oh(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+320|0;c=l+156|0;h=l;g=a+52|0;f=k[g>>2]|0;if((f|0)!=0?(i[f+1188>>0]|0)!=0:0){if((k[2783]|0)<3){Qd(c,74588,591,2,0,0,0);Qn(Tn(Tn(c,74629,15)|0,74906,25)|0,b)|0;hi(c)}i[a+369>>0]=1;i[a+370>>0]=1;i[a+373>>0]=0;i[a+368>>0]=0;i[a+292>>0]=0;d=a+288|0;c=k[d>>2]|0;if(k[c+48>>2]|0)do{gE(c+28|0);c=k[d>>2]|0}while((k[c+48>>2]|0)!=0);if(k[c+72>>2]|0)do{gE(c+52|0);c=k[d>>2]|0}while((k[c+72>>2]|0)!=0);e=a+356|0;if(k[e>>2]|0){f=a+352|0;do{c=k[f>>2]|0;d=k[c+8>>2]|0;if(d){dG(d);zba(d);c=k[f>>2]|0}d=c+4|0;k[(k[c>>2]|0)+4>>2]=k[d>>2];k[k[d>>2]>>2]=k[c>>2];k[e>>2]=(k[e>>2]|0)+-1;zba(c)}while((k[e>>2]|0)!=0)}i[a+360>>0]=1;AE((k[g>>2]|0)+296|0,1);c=k[g>>2]|0;if(c|0)hf(c,b);UI(a,b)}else j=17;if((j|0)==17?(k[2783]|0)<3:0){Qd(h,74588,623,2,0,0,0);Tn(Tn(h,74629,15)|0,74932,42)|0;hi(h)}r=l;return}function ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+192|0;e=l+168|0;f=l+12|0;g=l;h=a+4|0;m=(w4(k[h>>2]|0)|0)+1196|0;d=k[h>>2]|0;if(k[m>>2]|0){m=(w4(d)|0)+1196|0;if(On(k[m>>2]|0,b,c)|0)a=1;else j=4}else{k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,52299,20);XD(d,a,0,e);p1(e);j=4}if((j|0)==4){if((k[2783]|0)<5){Qd(f,52211,1205,4,0,0,0);j=Tn(f,55605,45)|0;e=i[c+11>>0]|0;m=e<<24>>24<0;c=Tn(Tn(j,m?k[c>>2]|0:c,m?k[c+4>>2]|0:e&255)|0,54980,17)|0;e=a+8|0;m=i[e+11>>0]|0;j=m<<24>>24<0;Tn(Tn(c,j?k[e>>2]|0:e,j?k[a+12>>2]|0:m&255)|0,68623,1)|0;hi(f)}m=k[h>>2]|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,115628,0);XD(m,a,0,g);p1(g);a=0}r=l;return a|0}function qh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=(c-b|0)/48|0;d=a+8|0;e=k[a>>2]|0;f=e;do if(i>>>0>(((k[d>>2]|0)-e|0)/48|0)>>>0){rw(a);if(i>>>0>89478485)J5(a);else{h=((k[d>>2]|0)-(k[a>>2]|0)|0)/48|0;j=h<<1;HO(a,h>>>0<44739242?(j>>>0<i>>>0?i:j):89478485);lx(a,b,c,i);break}}else{j=a+4|0;g=((k[j>>2]|0)-e|0)/48|0;h=i>>>0>g>>>0;g=h?b+(g*48|0)|0:c;if((g|0)==(b|0))e=f;else{e=b;d=f;do{MM(d,e)|0;MM(d+12|0,e+12|0)|0;MM(d+24|0,e+24|0)|0;MM(d+36|0,e+36|0)|0;e=e+48|0;d=d+48|0}while((e|0)!=(g|0));e=d}if(h){lx(a,g,c,i-(((k[j>>2]|0)-(k[a>>2]|0)|0)/48|0)|0);break}d=k[j>>2]|0;if((d|0)!=(e|0))do{i=d+-48|0;k[j>>2]=i;p1(d+-12|0);p1(d+-24|0);p1(d+-36|0);p1(i);d=k[j>>2]|0}while((d|0)!=(e|0))}while(0);return}function rh(a){a=a|0;var b=0.0,c=0,d=0,e=0,f=0,g=0,h=0,i=0.0,j=0.0,l=0,m=0,n=0,o=0,q=0,s=0,t=0;t=r;r=r+224|0;q=t+184|0;s=t+156|0;o=t;l=a+116|0;c=k[l>>2]|0;if(!c)b=2.0;else{RR(q,c,0);RR(s,k[l>>2]|0,1);d=(j0(q)|0)==0;d=d?s:q;c=j0(d)|0;if((c|0)==0?(k[20]|0)==(k[21]|0):0)b=+p[(k[l>>2]|0)+32>>3];else e=5;do if((e|0)==5){MM(d+16|0,(k[c+80>>2]|0)+44|0)|0;m=$L(d)|0;if(!m){b=+p[(k[l>>2]|0)+32>>3];break}h=Rv(d)|0;n=m+4|0;c=k[n>>2]|0;d=k[m>>2]|0;f=d;if((c|0)==(d|0))b=0.0;else{g=c-d>>5;e=0;b=0.0;do{b=b+ +(k[f+(e<<5)+8>>2]|0);e=e+1|0}while(e>>>0<g>>>0)}i=b/+(h|0);j=i/6.0;b=+p[(k[l>>2]|0)+32>>3];b=b<0.0?0.0:b;if(b>i){f=a+152|0;e=k[f>>2]|0;if((e|0)<1){if((k[2783]|0)<4){Qd(o,49969,182,3,0,0,0);Qn(Tn(Qn(Tn(o,50027,36)|0,b)|0,50064,33)|0,i)|0;hi(o);c=k[f>>2]|0}else c=e;k[f>>2]=c+1;d=k[m>>2]|0;c=k[n>>2]|0}b=i/+(c-d>>5>>>0)}b=j<b?b:j}while(0);P1(s);P1(q)}r=t;return +b}function sh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+32|0;h=l;j=l+16|0;f=a+20|0;g=a+16|0;c=(k[f>>2]|0)+-1+(k[g>>2]|0)|0;e=a+4|0;c=k[(k[(k[e>>2]|0)+(c>>>10<<2)>>2]|0)+((c&1023)<<2)>>2]|0;mD(h,6);GA(c,h)|0;Lv(h);c=a+68|0;b=k[c>>2]|0;d=k[a+64>>2]|0;a:do if((b|0)!=(d|0))while(1){switch(i[b>>0]|0){case 10:case 13:case 9:case 32:break;default:break a}b=b+1|0;k[c>>2]=b;if((b|0)==(d|0)){b=d;break a}}while(0);do if((i[b>>0]|0)!=93){b=0;b:while(1){d=(k[f>>2]|0)+-1+(k[g>>2]|0)|0;c=b+1|0;d=M9(k[(k[(k[e>>2]|0)+(d>>>10<<2)>>2]|0)+((d&1023)<<2)>>2]|0,b)|0;k[h>>2]=d;sA(a,h);d=Ig(a)|0;KI(a);if(!d){c=8;break}Se(a,h)|0;c:while(1){switch(k[h>>2]|0){case 4:{c=14;break b}case 10:break c;case 12:break;default:{c=12;break b}}Se(a,h)|0}b=c}if((c|0)==8){DI(a,4)|0;b=0;break}else if((c|0)==12){k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,102543,39);iz(a,j,h,0)|0;DI(a,4)|0;p1(j);b=0;break}else if((c|0)==14){b=1;break}}else{Se(a,h)|0;b=1}while(0);r=l;return b|0}function th(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,q=0;i=r;r=r+80|0;h=i;HA(h,b,c,d);o=h+44|0;k[o>>2]=0;d=h+48|0;k[d>>2]=0;k[h>>2]=15140;f=a+4|0;n=k[f>>2]|0;g=a+8|0;m=k[g>>2]|0;q=n+m|0;j=m+4|0;k[g>>2]=j;b=l[q+3>>0]|0;c=(l[q+2>>0]|0)<<8|(l[q+1>>0]|0)<<16|b;k[o>>2]=l[q>>0];k[d>>2]=c;j=n+j|0;k[g>>2]=m+8;k[h+52>>2]=(l[j+1>>0]|0)<<16|(l[j>>0]|0)<<24|(l[j+2>>0]|0)<<8|(l[j+3>>0]|0);if(!(b&1))b=8;else{c=Ay(a)|0;b=h+56|0;k[b>>2]=c;k[b+4>>2]=M;b=16;c=k[d>>2]|0}if(c&2){o=k[g>>2]|0;q=(k[f>>2]|0)+o|0;k[g>>2]=o+4;k[h+64>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);b=b|4}if(c&8){o=k[g>>2]|0;q=(k[f>>2]|0)+o|0;k[g>>2]=o+4;k[h+68>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);b=b+4|0}if(c&16){o=k[g>>2]|0;q=(k[f>>2]|0)+o|0;k[g>>2]=o+4;k[h+72>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);b=b+4|0}if(c&32){o=k[g>>2]|0;q=(k[f>>2]|0)+o|0;k[g>>2]=o+4;k[h+76>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);b=b+4|0}q=k[a+28>>2]|0;hc[k[k[q>>2]>>2]&7](q,h,+p[a+40>>3]);q=(k[g>>2]|0)+(e-b)|0;k[g>>2]=q;b=a+12|0;if((q|0)>=(k[b>>2]|0)){k[b>>2]=0;k[g>>2]=0}O3(h);r=i;return e|0}function uh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+32|0;d=e;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49848,9);TB(b,d,c)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49858,22);TB(b,d,c+4|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49786,10);VJ(b,d,c+12|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49881,15);Cu(b,d,c+8|0)|0;p1(d);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,49897,14);a=WA(b,d)|0;p1(d);if(a|0){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;cu(0,a,d)|0;MM(c+28|0,d)|0;b=d+12|0;MM(c+40|0,b)|0;i[c+24>>0]=1;p1(b);p1(d)}r=e;return 1}function vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;c=r;r=r+32|0;d=c+16|0;h=c+8|0;f=c;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,51835,3);gx(a,b,d);p1(d);j=a+40|0;g=a+44|0;k[j>>2]=1972;k[g>>2]=2e3;k[a+52>>2]=0;k[a+56>>2]=0;k[a+48>>2]=a+52;e=a+60|0;X0(e);k[a>>2]=13720;k[j>>2]=13856;k[g>>2]=13884;k[e>>2]=13908;e=a+84|0;k[e>>2]=e;k[a+88>>2]=e;k[a+92>>2]=0;k[a+76>>2]=14012;k[a+80>>2]=14036;k[a+100>>2]=0;k[a+104>>2]=0;k[a+96>>2]=a+100;k[a+108>>2]=0;k[a+112>>2]=0;e=a+116|0;g=cW(20)|0;FY(g,e$(b)|0);k[e>>2]=g;oJ(a+124|0);oJ(a+180|0);i[a+236>>0]=0;i[a+237>>0]=1;k[a+240>>2]=0;k[a+244>>2]=0;k[a+248>>2]=0;g=cW(336)|0;b=a+4|0;j=k[b>>2]|0;ao(g,(k[j+2004>>2]|0)+40|0,j+1360|0,k[e>>2]|0);e=a+120|0;k[e>>2]=g;k[h>>2]=349;k[h+4>>2]=0;k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];Kq(g+36|0,a,d)|0;e=(k[e>>2]|0)+44|0;b=w4(k[b>>2]|0)|0;k[f>>2]=40;k[f+4>>2]=0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];Dp(e,b,d)|0;Fi(a);r=c;return}function wh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+48|0;j=l+16|0;f=l+8|0;g=l;k[g>>2]=b;i[a+80>>0]=1;e=a+84|0;if((k[e>>2]|0)>(b|0))k[e>>2]=b;PA(j,a,c);b=c+11|0;if((i[b>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;b=c}else{i[c>>0]=0;i[b>>0]=0;b=c}Qm(c,0);k[b>>2]=k[j>>2];k[b+4>>2]=k[j+4>>2];k[b+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;p1(j);NI(a,c);k[j>>2]=g;rk(f,a+48|0,g,113525,j,l+44|0);g=k[f>>2]|0;h=g+20|0;iI(j,c);f=j+12|0;a=f;b=d;e=a+16|0;do{i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0}while((a|0)<(e|0));b=h+11|0;if((i[b>>0]|0)<0){i[k[h>>2]>>0]=0;k[g+24>>2]=0;b=h}else{i[h>>0]=0;i[b>>0]=0;b=h}Qm(h,0);k[b>>2]=k[j>>2];k[b+4>>2]=k[j+4>>2];k[b+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;d=g+32|0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];k[d+8>>2]=k[f+8>>2];k[d+12>>2]=k[f+12>>2];p1(j);r=l;return}function xh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+64|0;s=t+56|0;q=t+48|0;f=t+16|0;g=t+8|0;h=t+40|0;n=t+24|0;i=t;o=a+4|0;d=k[o>>2]|0;if(d>>>0<b>>>0){m=a+8|0;e=k[m>>2]|0;l=e<<5;p=b-d|0;if(l>>>0<p>>>0|d>>>0>(l-p|0)>>>0){k[n>>2]=0;j=n+4|0;k[j>>2]=0;l=n+8|0;k[l>>2]=0;if((b|0)<0)J5(a);d=e<<6;b=b+31&-32;Rr(n,e<<5>>>0<1073741823?(d>>>0<b>>>0?b:d):2147483647);b=k[o>>2]|0;k[j>>2]=b+p;e=k[a>>2]|0;d=k[n>>2]|0;u=f;k[u>>2]=e;k[u+4>>2]=0;k[g>>2]=e+(b>>>5<<2);k[g+4>>2]=b&31;k[h>>2]=d;k[h+4>>2]=0;k[q>>2]=k[f>>2];k[q+4>>2]=k[f+4>>2];k[s>>2]=k[g>>2];k[s+4>>2]=k[g+4>>2];Km(i,q,s,h);d=i;b=k[d>>2]|0;d=k[d+4>>2]|0;e=k[a>>2]|0;k[a>>2]=k[n>>2];k[n>>2]=e;n=k[o>>2]|0;k[o>>2]=k[j>>2];k[j>>2]=n;o=k[m>>2]|0;k[m>>2]=k[l>>2];k[l>>2]=o;if(e|0)zba(e)}else{u=(k[a>>2]|0)+(d>>>5<<2)|0;k[o>>2]=b;b=u;d=d&31}do if(p|0)if(c){k[s>>2]=b;k[s+4>>2]=d;Tz(s,p);break}else{k[q>>2]=b;k[q+4>>2]=d;Jz(q,p);break}while(0)}else k[o>>2]=b;r=t;return}function yh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=e+8|0;a:while(1){a=k[b>>2]|0;do if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0))if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1){k[b>>2]=0;a=0;break}else{a=k[b>>2]|0;break}}else a=0;while(0);a=(a|0)==0;e=k[c>>2]|0;do if(e){if((k[e+12>>2]|0)!=(k[e+16>>2]|0))if(a)break;else break a;if((Ub[k[(k[e>>2]|0)+36>>2]&511](e)|0)!=-1)if(a)break;else break a;else{k[c>>2]=0;h=12;break}}else h=12;while(0);if((h|0)==12){h=0;if(a){e=0;break}else e=0}a=k[b>>2]|0;f=k[a+12>>2]|0;if((f|0)==(k[a+16>>2]|0))a=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else a=l[f>>0]|0;if((a&255)<<24>>24<=-1)break;if(!(j[(k[g>>2]|0)+(a<<24>>24<<1)>>1]&8192))break;a=k[b>>2]|0;e=a+12|0;f=k[e>>2]|0;if((f|0)==(k[a+16>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[e>>2]=f+1;continue}}a=k[b>>2]|0;do if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0))if((Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1){k[b>>2]=0;a=0;break}else{a=k[b>>2]|0;break}}else a=0;while(0);a=(a|0)==0;do if(e){if((k[e+12>>2]|0)==(k[e+16>>2]|0)?(Ub[k[(k[e>>2]|0)+36>>2]&511](e)|0)==-1:0){k[c>>2]=0;h=32;break}if(!a)h=33}else h=32;while(0);if((h|0)==32?a:0)h=33;if((h|0)==33)k[d>>2]=k[d>>2]|2;return}function zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;m=r;r=r+320|0;f=m+312|0;d=m+156|0;g=m;h=b+108|0;j=b+104|0;l=d2(k[c>>2]|0,f)|0;e=aaa(k[c>>2]|0)|0;do if((R9(k[c>>2]|0)|0)<1){if((k[2783]|0)<5){Qd(d,50909,574,4,0,0,0);Tn(d,51483,37)|0;hi(d)}}else{d=k[b+116>>2]|0;if((d|0)>0?(d|0)==(R9(k[c>>2]|0)|0):0)break;_J()|0;n=b+128|0;o=k[n>>2]|0;n=k[n+4>>2]|0;d=_J()|0;rl(a,o,n,d,M,e,1);if(k[f>>2]|0){jf(a,l,b,e,R9(k[c>>2]|0)|0);break}if((k[2783]|0)<5){Qd(g,50909,593,4,0,0,0);l=Tn(g,51521,52)|0;j=Tn(Mn(l,k[j>>2]|0)|0,51129,1)|0;j=Tn(Mn(j,k[h>>2]|0)|0,51574,4)|0;l=b+56|0;o=i[l+11>>0]|0;n=o<<24>>24<0;Tn(j,n?k[l>>2]|0:l,n?k[b+60>>2]|0:o&255)|0;hi(g)}hx(a,b)}while(0);r=m;return}function Ah(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;b=g+16|0;c=g+8|0;d=g;e=pk(a)|0;f=a+204|0;k[f>>2]=e;if(!e){if((k[a+560>>2]|0)!=7){k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,30917,21);ub(5,k[a+1048>>2]|0,((i[b+11>>0]|0)<0?k[b>>2]|0:b)|0)|0;p1(b)}}else{h=a+200|0;tJ(k[h>>2]|0,e);e=k[f>>2]|0;Sb[k[(k[e>>2]|0)+8>>2]&511](e,k[h>>2]|0);e=(k[f>>2]|0)+4|0;k[c>>2]=1247;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];rr(e,a,b)|0;e=(k[f>>2]|0)+12|0;k[d>>2]=1248;k[d+4>>2]=0;k[b>>2]=k[d>>2];k[b+4>>2]=k[d+4>>2];rr(e,a,b)|0;e=k[f>>2]|0;Sb[k[(k[e>>2]|0)+12>>2]&511](e,a+208|0);e=k[f>>2]|0;if(!(Ub[k[(k[e>>2]|0)+28>>2]&511](e)|0)){h=k[f>>2]|0;b=a+1068|0;if((Ub[k[(k[h>>2]|0)+32>>2]&511](h)|0)==2){c=cW(24)|0;mF(c);d=k[b>>2]|0;k[b>>2]=0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=c}else{c=cW(8)|0;k[c+4>>2]=0;k[c>>2]=5768;d=k[b>>2]|0;k[b>>2]=0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=c}k[c+4>>2]=a;h=k[b>>2]|0;Rb[k[(k[h>>2]|0)+8>>2]&2047](h)}Ta(6,k[a+1048>>2]|0)|0;AE(a+36|0,k[f>>2]|0)}r=g;return}function Bh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+112|0;g=l;h=l+88|0;j=a+4|0;Ki(h,k[(k[j>>2]|0)+2004>>2]|0);f=k[j>>2]|0;c=k[f+2084>>2]|0;d=xA(a,k[f+2024>>2]|0)|0;e=M;m=(x9((k[j>>2]|0)+2024|0)|0)==0;b=k[j>>2]|0;if(m)b=k[b+1376>>2]|0;else b=x9(b+2024|0)|0;yx(g,h,f+2008|0,c,d,e,b);p1(h);k[g+80>>2]=k[1990];b=k[j>>2]|0;i[g+52>>0]=i[b+1609>>0]|0;b=(Vd(w4(b)|0)|0)==3&1;i[g+76>>0]=b;b=k[j>>2]|0;k[g+56>>2]=k[b+1380>>2];k[g+60>>2]=k[b+1576>>2];c=g+64|0;b=(C9(b)|0)+200|0;mE(h,(k[(k[b>>2]|0)+940>>2]|0)+40|0);b=c+11|0;if((i[b>>0]|0)<0){i[k[c>>2]>>0]=0;k[g+68>>2]=0;b=c}else{i[c>>0]=0;i[b>>0]=0;b=c}Qm(c,0);k[b>>2]=k[h>>2];k[b+4>>2]=k[h+4>>2];k[b+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;p1(h);i[g+84>>0]=i[(k[j>>2]|0)+1845>>0]|0;oN(a);fB(k[a+108>>2]|0,g);i[a+129>>0]=1;k[g>>2]=8268;p1(c);p1(g+20|0);p1(g+8|0);r=l;return}function Ch(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0;l=r;r=r+176|0;g=l+168|0;h=l+156|0;j=l+160|0;f=l;k[h>>2]=b;e=Xx(a+184|0,h)|0;k[j>>2]=e;if((e|0)==(a+188|0))if((k[2783]|0)<4){Qd(f,52211,1138,3,0,0,0);e=Tn(Tn(f,53515,103)|0,53619,10)|0;Tn(Mn(e,k[h>>2]|0)|0,68623,1)|0;hi(f);e=0}else e=0;else{b=k[e+20>>2]|0;f=b+80|0;k[f>>2]=(k[f>>2]|0)+(k[d+8>>2]|0);e=b+4|0;if(!(k[e>>2]|0)){h=DT((k[a+4>>2]|0)+2060|0,k[h>>2]|0)|0;xh(b,(k[h+4>>2]|0)-(k[h>>2]|0)>>2,0)}h=(k[b>>2]|0)+(c>>>5<<2)|0;k[h>>2]=k[h>>2]|1<<(c&31);h=k[b>>2]|0;c=k[e>>2]|0;k[g>>2]=h;k[g+4>>2]=0;if(!(gv(g,(h+(c>>>5<<2)-h<<3)+(c&31)|0)|0)){h=b+72|0;g=k[h>>2]|0;h=k[h+4>>2]|0;c=_J()|0;rl(a,g,h,c,M,k[f>>2]|0,1);if(!(i[a+133>>0]|0)){Jk(a,j);e=1}else e=1}else e=0}r=l;return e|0}function Dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;j=r;r=r+192|0;g=j+180|0;h=j+168|0;e=j+156|0;d=j;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,91921,9);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,91931,28);dJ(b,h,g,e)|0;p1(e);p1(h);h=a+28|0;e=k[(k[h>>2]|0)+940>>2]|0;c=e+40|0;if((k[2783]|0)<3){Qd(d,91960,27,2,0,0,0);m=Tn(d,91988,16)|0;l=c+11|0;n=i[l>>0]|0;f=n<<24>>24<0;n=Tn(Tn(m,f?k[c>>2]|0:c,f?k[e+44>>2]|0:n&255)|0,92005,14)|0;e=g+11|0;f=i[e>>0]|0;m=f<<24>>24<0;Tn(Tn(n,m?k[g>>2]|0:g,m?k[g+4>>2]|0:f&255)|0,92020,27)|0;hi(d);f=g;d=l}else{e=g+11|0;f=g;d=c+11|0}if((i[d>>0]|0)<0)c=k[c>>2]|0;e=yb(115,((i[e>>0]|0)<0?k[f>>2]|0:g)|0,c|0,k[b>>2]|0)|0;c=a+32|0;d=k[c>>2]|0;if((d|0)!=-1){Ta(2,d|0)|0;k[c>>2]=-1}k[c>>2]=e;po(k[h>>2]|0);p1(g);r=j;return}function Eh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;h=r;r=r+192|0;b=h+176|0;c=h+168|0;e=h+12|0;f=h;g=a+4|0;d=(w4(k[g>>2]|0)|0)+1196|0;do if(k[d>>2]|0){l=cW(24)|0;kB(l,a);k[l>>2]=14460;k[l+20>>2]=0;j=a+96|0;k[j>>2]=l;U$(l)|0;l=(w4(k[g>>2]|0)|0)+1196|0;l=k[l>>2]|0;d=a+8|0;k[c>>2]=24;k[c+4>>2]=1;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];Yj(l,d,a,b);b=c2(k[g>>2]|0)|0;c=k[j>>2]|0;c=mp(b,c,(C9(k[g>>2]|0)|0)+808|0)|0;k[a+100>>2]=c;if(c|0){nN(a);break}if((k[2783]|0)<5){Qd(e,52211,150,4,0,0,0);c=Tn(e,52229,45)|0;l=i[d+11>>0]|0;j=l<<24>>24<0;Tn(c,j?k[d>>2]|0:d,j?k[a+12>>2]|0:l&255)|0;hi(e)}l=k[g>>2]|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,52275,14);XD(l,a,2,f);p1(f)}while(0);r=h;return}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=c-b>>4;e=a+8|0;g=k[a>>2]|0;d=g;a:do if(f>>>0>(k[e>>2]|0)-g>>4>>>0){sF(a);if(f>>>0>268435455)J5(a);g=(k[e>>2]|0)-(k[a>>2]|0)|0;h=g>>3;_O(a,g>>4>>>0<134217727?(h>>>0<f>>>0?f:h):268435455);a=a+4|0;if((b|0)!=(c|0)){d=k[a>>2]|0;do{k[d>>2]=k[b>>2];yD(d+4|0,b+4|0);b=b+16|0;d=(k[a>>2]|0)+16|0;k[a>>2]=d}while((b|0)!=(c|0))}}else{h=a+4|0;a=(k[h>>2]|0)-g>>4;e=f>>>0>a>>>0;f=b+(a<<4)|0;a=e?f:c;if((a|0)!=(b|0))do{k[d>>2]=k[b>>2];if((d|0)!=(b|0))ng(d+4|0,k[b+4>>2]|0,k[b+8>>2]|0);b=b+16|0;d=d+16|0}while((b|0)!=(a|0));if(!e){b=k[h>>2]|0;if((b|0)==(d|0))break;while(1){c=b+-16|0;k[h>>2]=c;m2(c);b=k[h>>2]|0;if((b|0)==(d|0))break a}}if((a|0)!=(c|0)){b=f;d=k[h>>2]|0;do{k[d>>2]=k[b>>2];yD(d+4|0,b+4|0);b=b+16|0;d=(k[h>>2]|0)+16|0;k[h>>2]=d}while((b|0)!=(c|0))}}while(0);return}function Gh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0,o=0,q=0;n=r;r=r+80|0;m=n;HA(m,b,c,d);q=m+44|0;k[q>>2]=0;c=m+48|0;k[c>>2]=0;k[m>>2]=15504;d=a+4|0;f=k[d>>2]|0;h=a+8|0;e=k[h>>2]|0;o=f+e|0;b=e+4|0;k[h>>2]=b;g=i[o>>0]|0;o=(l[o+2>>0]|0)<<8|(l[o+1>>0]|0)<<16|(l[o+3>>0]|0);k[q>>2]=g&255;k[c>>2]=o;if(g<<24>>24==1){CF(70108)|0;g=Ay(a)|0;k[m+52>>2]=g;g=Ay(a)|0;k[m+56>>2]=g;g=k[h>>2]|0;c=(k[d>>2]|0)+g|0;k[h>>2]=g+4;k[m+60>>2]=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);c=Ay(a)|0;g=36;e=k[d>>2]|0;b=k[h>>2]|0}else{b=f+b|0;c=e+8|0;k[h>>2]=c;k[m+52>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);c=f+c|0;b=e+12|0;k[h>>2]=b;k[m+56>>2]=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);b=f+b|0;c=e+16|0;k[h>>2]=c;k[m+60>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);c=f+c|0;b=e+20|0;k[h>>2]=b;g=24;c=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);e=f}k[m+64>>2]=c;k[h>>2]=b+2;j[m+68>>1]=(l[e+b+1>>0]|0)&127;q=b+4|0;k[h>>2]=q;e=a+12|0;if((q|0)>=(k[e>>2]|0)){k[e>>2]=0;k[h>>2]=0}q=k[a+28>>2]|0;hc[k[k[q>>2]>>2]&7](q,m,+p[a+40>>3]);O3(m);r=n;return g|0}function Hh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;k[a>>2]=b;break a}case 10:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=0;break a}case 12:{d=(k[c>>2]|0)+(8-1)&~(8-1);b=d;e=k[b>>2]|0;b=k[b+4>>2]|0;k[c>>2]=d+8;d=a;k[d>>2]=e;k[d+4>>2]=b;break a}case 13:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&65535;k[e+4>>2]=0;break a}case 15:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&255)<<24>>24;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&255;k[e+4>>2]=0;break a}case 17:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}case 18:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}default:break a}while(0);while(0);return}function Ih(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;g=r;r=r+16|0;d=g;if((i[a+180>>0]|0)==0?(e=a+144|0,f=a+148|0,c=k[e>>2]|0,(k[f>>2]|0)!=(c|0)):0){a=0;do{j=c;m=j+(a*12|0)|0;h=i[m+11>>0]|0;l=h<<24>>24<0;h=Tn(110900,l?k[m>>2]|0:m,l?k[j+(a*12|0)+4>>2]|0:h&255)|0;j=LZ(h+(k[(k[h>>2]|0)+-12>>2]|0)|0)|0;k[d>>2]=j;j=k_(d,111604)|0;j=cc[k[(k[j>>2]|0)+28>>2]&127](j,10)|0;t6(d);Ss(h,j)|0;UA(h)|0;a=a+1|0;c=k[e>>2]|0}while(a>>>0<(((k[f>>2]|0)-c|0)/12|0)>>>0);c=Tn(110900,47461,6)|0;m=LZ(c+(k[(k[c>>2]|0)+-12>>2]|0)|0)|0;k[d>>2]=m;m=k_(d,111604)|0;m=cc[k[(k[m>>2]|0)+28>>2]&127](m,10)|0;t6(d);Ss(c,m)|0;UA(c)|0;c=i[b+11>>0]|0;m=c<<24>>24<0;c=Tn(110900,m?k[b>>2]|0:b,m?k[b+4>>2]|0:c&255)|0;m=LZ(c+(k[(k[c>>2]|0)+-12>>2]|0)|0)|0;k[d>>2]=m;m=k_(d,111604)|0;m=cc[k[(k[m>>2]|0)+28>>2]&127](m,10)|0;t6(d);Ss(c,m)|0;UA(c)|0;c=0}else c=1;r=g;return c|0}function Jh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+336|0;q=v+300|0;l=v+48|0;j=v+32|0;g=v+24|0;f=v+8|0;i=v;n=v+304|0;o=v+296|0;m=v+68|0;u=v+64|0;s=v+60|0;t=v+56|0;h=i;k[h>>2]=37;k[h+4>>2]=0;h=pp(i+1|0,106906,k[c+4>>2]|0)|0;k[o>>2]=n;a=J_()|0;if(h){k[f>>2]=k[c+8>>2];p[f+8>>3]=e;a=MN(n,30,a,i,f)|0}else{p[g>>3]=e;a=MN(n,30,a,i,g)|0}if((a|0)>29){a=J_()|0;if(h){k[j>>2]=k[c+8>>2];p[j+8>>3]=e;a=ZP(o,a,i,j)|0}else{p[l>>3]=e;a=ZP(o,a,i,l)|0}f=k[o>>2]|0;if(!f){h=k[o>>2]|0;l=h}else{l=f;h=f}}else{l=0;h=k[o>>2]|0}i=h+a|0;j=Kz(h,i,c)|0;if((h|0)!=(n|0)){a=lc(a<<3)|0;if(!a){f=a;g=a;a=k[o>>2]|0}else{f=a;g=a;a=h}}else{f=m;g=0;a=n}o=LZ(c)|0;k[q>>2]=o;Zd(a,j,i,f,u,s,q);oU(k[q>>2]|0)|0;k[t>>2]=k[b>>2];u=k[u>>2]|0;a=k[s>>2]|0;k[q>>2]=k[t>>2];a=zl(q,f,u,a,c,d)|0;k[b>>2]=a;if(g|0)wc(g);wc(l);r=v;return a|0}function Kh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+336|0;q=v+300|0;l=v+48|0;j=v+32|0;g=v+24|0;f=v+8|0;i=v;n=v+304|0;o=v+296|0;m=v+68|0;u=v+64|0;s=v+60|0;t=v+56|0;h=i;k[h>>2]=37;k[h+4>>2]=0;h=pp(i+1|0,115628,k[c+4>>2]|0)|0;k[o>>2]=n;a=J_()|0;if(h){k[f>>2]=k[c+8>>2];p[f+8>>3]=e;a=MN(n,30,a,i,f)|0}else{p[g>>3]=e;a=MN(n,30,a,i,g)|0}if((a|0)>29){a=J_()|0;if(h){k[j>>2]=k[c+8>>2];p[j+8>>3]=e;a=ZP(o,a,i,j)|0}else{p[l>>3]=e;a=ZP(o,a,i,l)|0}f=k[o>>2]|0;if(!f){h=k[o>>2]|0;l=h}else{l=f;h=f}}else{l=0;h=k[o>>2]|0}i=h+a|0;j=Kz(h,i,c)|0;if((h|0)!=(n|0)){a=lc(a<<3)|0;if(!a){f=a;g=a;a=k[o>>2]|0}else{f=a;g=a;a=h}}else{f=m;g=0;a=n}o=LZ(c)|0;k[q>>2]=o;Zd(a,j,i,f,u,s,q);oU(k[q>>2]|0)|0;k[t>>2]=k[b>>2];u=k[u>>2]|0;a=k[s>>2]|0;k[q>>2]=k[t>>2];a=zl(q,f,u,a,c,d)|0;k[b>>2]=a;if(g|0)wc(g);wc(l);r=v;return a|0}function Lh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;o=a+20|0;p=a+16|0;g=k[p>>2]|0;c=g+(k[o>>2]|0)|0;q=a+4|0;f=k[q>>2]|0;d=f+(((c>>>0)/146|0)<<2)|0;n=a+8|0;a=(k[n>>2]|0)==(f|0);if(a)l=0;else l=(k[d>>2]|0)+(((c>>>0)%146|0)*28|0)|0;e=k[b+4>>2]|0;if((l|0)!=(e|0)?(i=k[b>>2]|0,h=i,i=e-(k[i>>2]|0)|0,m=((d-h>>2)*146|0)+((l-(k[d>>2]|0)|0)/28|0)+((i|0)/-28|0)|0,(m|0)>0):0){c=f+(((g>>>0)/146|0)<<2)|0;if(a)a=0;else a=(k[c>>2]|0)+(((g>>>0)%146|0)*28|0)|0;do if((e|0)!=(a|0)?(j=((h-c>>2)*146|0)+((i|0)/28|0)+((a-(k[c>>2]|0)|0)/-28|0)|0,(j|0)!=0):0){a=((a-(k[c>>2]|0)|0)/28|0)+j|0;if((a|0)>0){j=c+(((a>>>0)/146|0)<<2)|0;c=j;a=(k[j>>2]|0)+(((a>>>0)%146|0)*28|0)|0;break}else{a=145-a|0;j=c+(((a|0)/-146|0)<<2)|0;c=j;a=(k[j>>2]|0)+((145-((a|0)%146|0)|0)*28|0)|0;break}}while(0);a:while(1){do{if((a|0)==(l|0))break a;p1(a+12|0);a=a+28|0}while((a-(k[c>>2]|0)|0)!=4088);a=c+4|0;c=a;a=k[a>>2]|0}m=(k[o>>2]|0)-m|0;k[o>>2]=m;a=k[n>>2]|0;l=a-(k[q>>2]|0)>>2;if((((l|0)==0?0:(l*146|0)+-1|0)-(m+(k[p>>2]|0))|0)>>>0>291)do{zba(k[a+-4>>2]|0);a=(k[n>>2]|0)+-4|0;k[n>>2]=a;m=a-(k[q>>2]|0)>>2}while((((m|0)==0?0:(m*146|0)+-1|0)-((k[o>>2]|0)+(k[p>>2]|0))|0)>>>0>291)}return}function Mh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;t=r;r=r+32|0;p=t+16|0;q=t+8|0;m=t+4|0;n=t;e=a+52|0;if(i[e>>0]|0){d=a+48|0;c=k[d>>2]|0;if(b){k[d>>2]=-1;i[e>>0]=0}}else{c=k[a+44>>2]|0;c=(c|0)>1?c:1;o=a+32|0;d=0;while(1){if((d|0)>=(c|0)){s=8;break}e=_D(k[o>>2]|0)|0;if((e|0)==-1){c=-1;break}i[p+d>>0]=e;d=d+1|0}if((s|0)==8){do if(!(i[a+53>>0]|0)){g=a+40|0;h=a+36|0;j=q+1|0;a:while(1){u=k[g>>2]|0;e=u;d=k[e>>2]|0;e=k[e+4>>2]|0;v=k[h>>2]|0;f=p+c|0;switch(Zb[k[(k[v>>2]|0)+16>>2]&15](v,u,p,f,m,q,j,n)|0){case 3:{s=15;break a}case 2:{s=17;break a}case 1:break;default:break a}v=k[g>>2]|0;k[v>>2]=d;k[v+4>>2]=e;if((c|0)==8){s=17;break}d=_D(k[o>>2]|0)|0;if((d|0)==-1){s=17;break}i[f>>0]=d;c=c+1|0}if((s|0)==15)i[q>>0]=i[p>>0]|0;else if((s|0)==17){c=-1;break}s=18}else{i[q>>0]=i[p>>0]|0;s=18}while(0);b:do if((s|0)==18){if(b){c=i[q>>0]|0;k[a+48>>2]=c&255}else{while(1){if((c|0)<=0)break;c=c+-1|0;if((Oz(l[p+c>>0]|0,k[o>>2]|0)|0)==-1){c=-1;break b}}c=i[q>>0]|0}c=c&255}while(0)}}r=t;return c|0}function Nh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=(c-b|0)/36|0;d=a+8|0;e=k[a>>2]|0;f=e;do if(i>>>0>(((k[d>>2]|0)-e|0)/36|0)>>>0){sz(a);if(i>>>0>119304647)J5(a);else{h=((k[d>>2]|0)-(k[a>>2]|0)|0)/36|0;j=h<<1;AO(a,h>>>0<59652323?(j>>>0<i>>>0?i:j):119304647);jA(a,b,c,i);break}}else{j=a+4|0;g=((k[j>>2]|0)-e|0)/36|0;h=i>>>0>g>>>0;g=h?b+(g*36|0)|0:c;if((g|0)==(b|0))e=f;else{e=b;d=f;do{MM(d,e)|0;MM(d+12|0,e+12|0)|0;MM(d+24|0,e+24|0)|0;e=e+36|0;d=d+36|0}while((e|0)!=(g|0));e=d}if(h){jA(a,g,c,i-(((k[j>>2]|0)-(k[a>>2]|0)|0)/36|0)|0);break}d=k[j>>2]|0;if((d|0)!=(e|0))do{i=d+-36|0;k[j>>2]=i;p1(d+-12|0);p1(d+-24|0);p1(i);d=k[j>>2]|0}while((d|0)!=(e|0))}while(0);return}function Oh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;o=r;r=r+32|0;n=o+16|0;j=o+8|0;l=o;m=c+4|0;e=k[m>>2]|0;g=k[b+4>>2]|0;if((e|0)!=(g|0)?(i=k[c>>2]|0,f=k[b>>2]|0,f=(e-(k[i>>2]|0)>>2)+(i-f<<8)-(g-(k[f>>2]|0)>>2)|0,(f|0)>0):0){g=k[c>>2]|0;while(1){if((e|0)==(k[g>>2]|0)){i=g+-4|0;k[c>>2]=i;e=(k[i>>2]|0)+4096|0;k[m>>2]=e}else i=g;h=e+-4|0;k[m>>2]=h;b=k[i>>2]|0;g=e-b>>2;p=(g|0)>(f|0);g=p?f:g;t=d;s=k[t+4>>2]|0;q=l;k[q>>2]=k[t>>2];k[q+4>>2]=s;k[n>>2]=k[l>>2];k[n+4>>2]=k[l+4>>2];vk(j,p?e+(0-f<<2)|0:b,e,n,0);e=j;b=k[e>>2]|0;e=k[e+4>>2]|0;p=d;k[p>>2]=b;k[p+4>>2]=e;f=f-g|0;g=g+-1|0;do if(g){g=(h-(k[i>>2]|0)>>2)-g|0;if((g|0)>0){t=i+(g>>>10<<2)|0;k[c>>2]=t;h=(k[t>>2]|0)+((g&1023)<<2)|0;k[m>>2]=h;g=t;break}else{h=1023-g|0;g=i+(((h|0)/-1024|0)<<2)|0;k[c>>2]=g;h=(k[g>>2]|0)+(1023-((h|0)%1024|0)<<2)|0;k[m>>2]=h;break}}else g=i;while(0);if((f|0)<=0)break;else e=h}}else{e=d;b=k[e>>2]|0;e=k[e+4>>2]|0}t=a;k[t>>2]=b;k[t+4>>2]=e;r=o;return}function Ph(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+176|0;q=v+72|0;m=v+48|0;l=v+32|0;h=v+24|0;f=v+8|0;j=v;n=v+134|0;o=v+68|0;g=v+76|0;u=v+64|0;s=v+60|0;t=v+56|0;i=j;k[i>>2]=37;k[i+4>>2]=0;i=pp(j+1|0,106906,k[c+4>>2]|0)|0;k[o>>2]=n;a=J_()|0;if(i){k[f>>2]=k[c+8>>2];p[f+8>>3]=e;a=MN(n,30,a,j,f)|0}else{p[h>>3]=e;a=MN(n,30,a,j,h)|0}if((a|0)>29){a=J_()|0;if(i){k[l>>2]=k[c+8>>2];p[l+8>>3]=e;a=ZP(o,a,j,l)|0}else{p[m>>3]=e;a=ZP(o,a,j,m)|0}f=k[o>>2]|0;if(!f){h=k[o>>2]|0;l=h}else{l=f;h=f}}else{l=0;h=k[o>>2]|0}i=h+a|0;j=Kz(h,i,c)|0;if((h|0)!=(n|0)){a=lc(a<<1)|0;if(!a){g=0;f=0;a=k[o>>2]|0}else{g=a;f=a;a=h}}else{f=0;a=n}o=LZ(c)|0;k[q>>2]=o;ee(a,j,i,g,u,s,q);oU(k[q>>2]|0)|0;k[t>>2]=k[b>>2];u=k[u>>2]|0;b=k[s>>2]|0;k[q>>2]=k[t>>2];d=Rl(q,g,u,b,c,d)|0;wc(f);wc(l);r=v;return d|0}function Qh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+176|0;q=v+72|0;m=v+48|0;l=v+32|0;h=v+24|0;f=v+8|0;j=v;n=v+134|0;o=v+68|0;g=v+76|0;u=v+64|0;s=v+60|0;t=v+56|0;i=j;k[i>>2]=37;k[i+4>>2]=0;i=pp(j+1|0,115628,k[c+4>>2]|0)|0;k[o>>2]=n;a=J_()|0;if(i){k[f>>2]=k[c+8>>2];p[f+8>>3]=e;a=MN(n,30,a,j,f)|0}else{p[h>>3]=e;a=MN(n,30,a,j,h)|0}if((a|0)>29){a=J_()|0;if(i){k[l>>2]=k[c+8>>2];p[l+8>>3]=e;a=ZP(o,a,j,l)|0}else{p[m>>3]=e;a=ZP(o,a,j,m)|0}f=k[o>>2]|0;if(!f){h=k[o>>2]|0;l=h}else{l=f;h=f}}else{l=0;h=k[o>>2]|0}i=h+a|0;j=Kz(h,i,c)|0;if((h|0)!=(n|0)){a=lc(a<<1)|0;if(!a){g=0;f=0;a=k[o>>2]|0}else{g=a;f=a;a=h}}else{f=0;a=n}o=LZ(c)|0;k[q>>2]=o;ee(a,j,i,g,u,s,q);oU(k[q>>2]|0)|0;k[t>>2]=k[b>>2];u=k[u>>2]|0;b=k[s>>2]|0;k[q>>2]=k[t>>2];d=Rl(q,g,u,b,c,d)|0;wc(f);wc(l);r=v;return d|0}function Rh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,q=0;m=r;r=r+64|0;j=m;HA(j,b,c,d);o=j+44|0;k[o>>2]=0;e=j+48|0;k[e>>2]=0;k[j>>2]=15420;h=j+52|0;k[h>>2]=0;i=j+56|0;k[i>>2]=0;k[j+60>>2]=0;b=a+4|0;g=k[b>>2]|0;c=a+8|0;f=k[c>>2]|0;q=g+f|0;d=f+4|0;k[c>>2]=d;n=(l[q+2>>0]|0)<<8|(l[q+1>>0]|0)<<16|(l[q+3>>0]|0);k[o>>2]=l[q>>0];k[e>>2]=n;d=g+d|0;k[c>>2]=f+8;d=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);f=j+52|0;QF(f,d);if(!d)d=8;else{g=d*12|0;e=0;do{q=k[f>>2]|0;n=k[c>>2]|0;o=(k[b>>2]|0)+n|0;k[c>>2]=n+4;k[q+(e*12|0)>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);o=k[c>>2]|0;n=(k[b>>2]|0)+o|0;k[c>>2]=o+4;k[q+(e*12|0)+4>>2]=(l[n+1>>0]|0)<<16|(l[n>>0]|0)<<24|(l[n+2>>0]|0)<<8|(l[n+3>>0]|0);n=k[c>>2]|0;o=(k[b>>2]|0)+n|0;k[c>>2]=n+4;k[q+(e*12|0)+8>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);e=e+1|0}while((e|0)!=(d|0));d=g+8|0}e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,j,+p[a+40>>3]);k[j>>2]=15420;e=k[h>>2]|0;b=e;if(e|0){c=k[i>>2]|0;if((c|0)!=(e|0))k[i>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);zba(e)}O3(j);r=m;return d|0}function Sh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0;m=r;r=r+16|0;h=m;b=m+8|0;j=a+24|0;switch(k[j>>2]|0){case 0:{d=a+12|0;e=a+8|0;f=k[e>>2]|0;g=(k[d>>2]|0)-f|0;if(g>>>0<8)b=1;else{n=(k[a+4>>2]|0)+f|0;c=l[n+1>>0]<<16|l[n>>0]<<24|l[n+2>>0]<<8|l[n+3>>0];k[b>>2]=0;i[b+4>>0]=0;n=n+4|0;k[b>>2]=l[n>>0]|l[n+1>>0]<<8|l[n+2>>0]<<16|l[n+3>>0]<<24;do if((c|0)!=1){if(c>>>0>134217728){k[h>>2]=c;k[h+4>>2]=b;kZ(69412,h)|0;n=(k[e>>2]|0)+8|0;k[e>>2]=n;if((n|0)>=(k[d>>2]|0)){k[d>>2]=0;k[e>>2]=0}k[a+20>>2]=c+-8;k[j>>2]=1;b=1;break}if(!c){JL(69477,67,1,k[4854]|0)|0;b=0;break}if(g>>>0>=c>>>0){To(a,0,c)|0;b=Sh(a)|0;break}if(!(i[a+48>>0]|0)){cE(a,c);b=1;break}else{p[a+40>>3]=+(f|0)+ +p[a+32>>3];eF(a,c,b);b=1;break}}else{JL(69369,42,1,k[4854]|0)|0;b=0}while(0)}break}case 1:{e=a+20|0;f=a+12|0;n=k[f>>2]|0;c=a+8|0;a=k[c>>2]|0;b=n-a|0;d=k[e>>2]|0;b=b>>>0<d>>>0?b:d;a=b+a|0;k[c>>2]=a;if((a|0)>=(n|0)){k[f>>2]=0;k[c>>2]=0}n=d-b|0;k[e>>2]=n;if(!n){k[j>>2]=0;b=1}else b=1;break}default:b=1}r=m;return b|0}function Th(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=r;r=r+16|0;f=g;d=Ta(53,k[a+4>>2]|0)|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,d,iC(d)|0);wc(d);d=f+11|0;b=i[d>>0]|0;e=f+4|0;a=k[e>>2]|0;if(((b<<24>>24<0?a:b&255)|0)==3)if(!(cA(f,0,-1,63973,3)|0))a=0;else{b=i[d>>0]|0;a=k[e>>2]|0;c=4}else c=4;do if((c|0)==4){if(((b<<24>>24<0?a:b&255)|0)==8){if(!(cA(f,0,-1,63977,8)|0)){a=1;break}b=i[d>>0]|0;a=k[e>>2]|0}if(((b<<24>>24<0?a:b&255)|0)==9){if(!(cA(f,0,-1,63986,9)|0)){a=2;break}b=i[d>>0]|0;a=k[e>>2]|0}if(((b<<24>>24<0?a:b&255)|0)==9){if(!(cA(f,0,-1,63996,9)|0)){a=3;break}b=i[d>>0]|0;a=k[e>>2]|0}if(((b<<24>>24<0?a:b&255)|0)==6){if(!(cA(f,0,-1,64006,6)|0)){a=4;break}b=i[d>>0]|0;a=k[e>>2]|0}if(((b<<24>>24<0?a:b&255)|0)==12){if(!(cA(f,0,-1,64013,12)|0)){a=5;break}b=i[d>>0]|0;a=k[e>>2]|0}if(((b<<24>>24<0?a:b&255)|0)==6){a=(cA(f,0,-1,64026,6)|0)==0;a=a?6:7}else a=7}while(0);p1(f);r=g;return a|0}function Uh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;s=r;r=r+32|0;o=s+16|0;p=s+8|0;l=s+4|0;m=s;e=a+52|0;if(i[e>>0]|0){d=a+48|0;c=k[d>>2]|0;if(b){k[d>>2]=-1;i[e>>0]=0}}else{c=k[a+44>>2]|0;c=(c|0)>1?c:1;n=a+32|0;d=0;while(1){if((d|0)>=(c|0)){q=8;break}e=_D(k[n>>2]|0)|0;if((e|0)==-1){c=-1;break}i[o+d>>0]=e;d=d+1|0}if((q|0)==8){do if(!(i[a+53>>0]|0)){g=a+40|0;h=a+36|0;j=p+4|0;a:while(1){t=k[g>>2]|0;e=t;d=k[e>>2]|0;e=k[e+4>>2]|0;u=k[h>>2]|0;f=o+c|0;switch(Zb[k[(k[u>>2]|0)+16>>2]&15](u,t,o,f,l,p,j,m)|0){case 3:{q=15;break a}case 2:{q=17;break a}case 1:break;default:break a}u=k[g>>2]|0;k[u>>2]=d;k[u+4>>2]=e;if((c|0)==8){q=17;break}d=_D(k[n>>2]|0)|0;if((d|0)==-1){q=17;break}i[f>>0]=d;c=c+1|0}if((q|0)==15)k[p>>2]=i[o>>0];else if((q|0)==17){c=-1;break}q=18}else{k[p>>2]=i[o>>0];q=18}while(0);b:do if((q|0)==18){if(b){c=k[p>>2]|0;k[a+48>>2]=c;break}while(1){if((c|0)<=0)break;c=c+-1|0;if((Oz(i[o+c>>0]|0,k[n>>2]|0)|0)==-1){c=-1;break b}}c=k[p>>2]|0}while(0)}}r=s;return c|0}function Vh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,q=0,s=0,t=0;q=r;r=r+64|0;o=q;HA(o,b,c,d);c=o+44|0;k[c>>2]=0;f=o+48|0;k[f>>2]=0;k[o>>2]=16092;k[o+52>>2]=0;k[o+56>>2]=0;k[o+60>>2]=0;h=a+4|0;g=k[h>>2]|0;j=a+8|0;n=k[j>>2]|0;b=g+n|0;m=n+4|0;k[j>>2]=m;d=(l[b+2>>0]|0)<<8|(l[b+1>>0]|0)<<16|(l[b+3>>0]|0);k[c>>2]=l[b>>0];k[f>>2]=d;m=g+m|0;k[j>>2]=n+8;m=(l[m+1>>0]|0)<<16|(l[m>>0]|0)<<24|(l[m+2>>0]|0)<<8|(l[m+3>>0]|0);n=o+52|0;Xz(n,m);if(!m)e=8;else{g=0;e=8;do{d=(k[n>>2]|0)+(g*12|0)|0;c=k[j>>2]|0;f=(k[h>>2]|0)+c|0;k[j>>2]=c+4;f=(l[f+1>>0]|0)<<16|(l[f>>0]|0)<<24|(l[f+2>>0]|0)<<8|(l[f+3>>0]|0);jH(d,f);e=e+4|0;if(f){c=f<<2;b=0;do{s=k[j>>2]|0;t=(k[h>>2]|0)+s|0;k[j>>2]=s+4;s=(l[t+2>>0]|0)<<8|(l[t+1>>0]|0)<<16|(l[t+3>>0]|0);i[(k[d>>2]|0)+(b<<3)>>0]=i[t>>0]|0;k[(k[d>>2]|0)+(b<<3)+4>>2]=s;b=b+1|0}while((b|0)!=(f|0));e=e+c|0}g=g+1|0}while((g|0)!=(m|0))}t=k[a+28>>2]|0;hc[k[k[t>>2]>>2]&7](t,o,+p[a+40>>3]);k[o>>2]=16092;SF(o+52|0);O3(o);r=q;return e|0}function Wh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=r;r=r+48|0;c=i+40|0;d=i+32|0;e=i+24|0;f=i+16|0;g=i+8|0;h=i;if((Vd(a)|0)==2){j=cW(192)|0;At(j,b,k[a+896>>2]|0,(k[a+916>>2]|0)+400|0,a+836|0,a+1056|0);b=j}else{j=cW(116)|0;rA(j,b,k[a+896>>2]|0,(k[a+916>>2]|0)+400|0,a);b=j}k[d>>2]=315;k[d+4>>2]=0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];Eq(b+44|0,a,c)|0;k[e>>2]=316;k[e+4>>2]=0;k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];Wp(b+52|0,a,c)|0;k[f>>2]=317;k[f+4>>2]=0;k[c>>2]=k[f>>2];k[c+4>>2]=k[f+4>>2];Wp(b+60|0,a,c)|0;k[g>>2]=318;k[g+4>>2]=0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];Wp(b+68|0,a,c)|0;k[h>>2]=40;k[h+4>>2]=0;k[c>>2]=k[h>>2];k[c+4>>2]=k[h+4>>2];Dp(b+76|0,a,c)|0;r=i;return b+20|0}function Xh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+80|0;c=f+16|0;d=f;e=(C9(k[a+36>>2]|0)|0)+204|0;e=k[e>>2]|0;if(e|0?Ub[k[(k[e>>2]|0)+40>>2]&511](e)|0:0){g=N6(b,56196)|0;Sb[k[(k[e>>2]|0)+36>>2]&511](c,e);e=N6(g,56200)|0;b=c;rY(d,k[b>>2]|0,k[b+4>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56211)|0;fY(d,k[c+16>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56225)|0;fY(d,k[c+12>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56237)|0;b=c+8|0;fY(d,k[b>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56250)|0;h=c+24|0;rY(d,k[h>>2]|0,k[h+4>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56269)|0;h=c+48|0;rY(d,k[h>>2]|0,k[h+4>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56290)|0;h=c+56|0;rY(d,k[h>>2]|0,k[h+4>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56311)|0;h=c+32|0;rY(d,k[h>>2]|0,k[h+4>>2]|0);GA(e,d)|0;Lv(d);e=N6(g,56327)|0;c=c+40|0;rY(d,k[c>>2]|0,k[c+4>>2]|0);GA(e,d)|0;Lv(d);c=N6(g,56343)|0;e=a+60|0;fY(d,(k[b>>2]|0)-(k[e>>2]|0)|0);GA(c,d)|0;Lv(d);k[e>>2]=k[b>>2]}r=f;return}function Yh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0;k[c>>2]=a;k[f>>2]=d;l=e;if(h&2)if((l-d|0)<3)a=1;else{k[f>>2]=d+1;i[d>>0]=-17;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=-69;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=-65;j=4}else j=4;a:do if((j|0)==4){a=k[c>>2]|0;while(1){if(a>>>0>=b>>>0){a=0;break a}d=k[a>>2]|0;if(d>>>0>g>>>0|(d&-2048|0)==55296){a=2;break a}do if(d>>>0>=128){if(d>>>0<2048){a=k[f>>2]|0;if((l-a|0)<2){a=1;break a}k[f>>2]=a+1;i[a>>0]=d>>>6|192;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=d&63|128;break}a=k[f>>2]|0;e=l-a|0;if(d>>>0<65536){if((e|0)<3){a=1;break a}k[f>>2]=a+1;i[a>>0]=d>>>12|224;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=d>>>6&63|128;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=d&63|128;break}else{if((e|0)<4){a=1;break a}k[f>>2]=a+1;i[a>>0]=d>>>18|240;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=d>>>12&63|128;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=d>>>6&63|128;j=k[f>>2]|0;k[f>>2]=j+1;i[j>>0]=d&63|128;break}}else{a=k[f>>2]|0;if((l-a|0)<1){a=1;break a}k[f>>2]=a+1;i[a>>0]=d}while(0);a=(k[c>>2]|0)+4|0;k[c>>2]=a}}while(0);return a|0}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+32|0;h=j+12|0;f=j;e=$B(a)|0;if(e){d=i[e+88+11>>0]|0;if(d<<24>>24<0)d=k[e+92>>2]|0;else d=d&255;if(d){TS(f,e,Ml(a)|0);jD(h,a,f);d=b+11|0;if((i[d>>0]|0)<0){i[k[b>>2]>>0]=0;k[b+4>>2]=0;d=b}else{i[b>>0]=0;i[d>>0]=0;d=b}Qm(b,0);k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];k[d+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;p1(h);p1(f);d=1}else g=10}else g=10;if((g|0)==10){d=hE(a)|0;if(!d)d=0;else{MM(c,d+12|0)|0;jD(h,a,d);d=b+11|0;if((i[d>>0]|0)<0){i[k[b>>2]>>0]=0;k[b+4>>2]=0;d=b}else{i[b>>0]=0;i[d>>0]=0;d=b}Qm(b,0);k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];k[d+8>>2]=k[h+8>>2];k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;p1(h);d=1}}r=j;return d|0}function _h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=r;r=r+320|0;d=h+156|0;e=h;f=a+4|0;Mu(k[f>>2]|0,b,a);g=$L(a+288|0)|0;c=v0(k[f>>2]|0)|0;c=GG(c,k[g>>2]|0)|0;do if((c|0)<0){if((k[2783]|0)<4){Qd(d,47640,225,3,0,0,0);i=Tn(d,47656,10)|0;Mn(Tn(Tn(Mn(i,k[(k[f>>2]|0)+2088>>2]|0)|0,68429,2)|0,47667,28)|0,b)|0;hi(d)}}else{c=b-c|0;if((c|0)>=0?(i=k[g>>2]|0,c>>>0<(k[g+4>>2]|0)-i>>5>>>0):0){bg(a,i+(c<<5)|0,b);break}if((k[2783]|0)<4){Qd(e,47640,230,3,0,0,0);i=Tn(e,47656,10)|0;Mn(Tn(Mn(Tn(Tn(Mn(i,k[(k[f>>2]|0)+2088>>2]|0)|0,68429,2)|0,47696,43)|0,b)|0,47740,13)|0,c)|0;hi(e)}}while(0);r=h;return}function $h(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+80|0;e=g;ar(a,b);f=Tn(b,67781,7)|0;Ln(f,k[a+52>>2]|0)|0;f=a+48|0;c=k[f>>2]|0;if(c&1){d=Tn(b,67789,18)|0;c=a+56|0;tn(d,k[c>>2]|0,k[c+4>>2]|0)|0;c=k[f>>2]|0}if(c&2){c=Tn(b,67808,24)|0;Ln(c,k[a+64>>2]|0)|0;c=k[f>>2]|0}if(c&8){c=Tn(b,67833,23)|0;Ln(c,k[a+68>>2]|0)|0;c=k[f>>2]|0}if(c&16){c=Tn(b,67857,19)|0;Ln(c,k[a+72>>2]|0)|0;c=k[f>>2]|0}if(c&32){d=k[a+76>>2]|0;c=e;a=0;do{if((a|0)>0&(a&7|0)==0){i[c>>0]=32;c=c+1|0}i[c>>0]=1<<31-a&d|0?49:48;c=c+1|0;a=a+1|0}while((a|0)!=32);i[c>>0]=0;c=Tn(b,67877,20)|0;Tn(c,e,iC(e)|0)|0;c=k[f>>2]|0}if(c&131072|0)Tn(b,67898,23)|0;r=g;return}function ai(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+176|0;f=i+164|0;g=i+160|0;h=i+156|0;c=i;k[h>>2]=b;d=a+40|0;b=Xx(d,h)|0;e=b;if((b|0)==(a+44|0)){if((k[2783]|0)<5){Qd(c,44572,113,4,0,0,0);g=Tn(Tn(c,44663,94)|0,75088,10)|0;g=Tn(Mn(g,k[h>>2]|0)|0,44758,21)|0;h=a+24|0;a=h;a=Tn(tn(g,k[a>>2]|0,k[a+4>>2]|0)|0,68735,5)|0;Tn(Ln(a,x9(h)|0)|0,68623,1)|0;hi(c)}}else{b=k[b+20>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[g>>2]=e;k[f>>2]=k[g>>2];Rz(d,f)|0;g=k[h>>2]|0;MJ(a+24|0,g,((g|0)<0)<<31>>31);if(!(Aj(a,k[h>>2]|0)|0)){b=DT((k[a+4>>2]|0)+2060|0,k[h>>2]|0)|0;if(!b)b=0;else b=k[b+16>>2]|0;IN(a,k[h>>2]|0,b)}}r=i;return}function bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+160|0;f=p+136|0;m=p;n=m+4|0;k[m>>2]=4176;o=m+56|0;k[o>>2]=4196;GK(m+56|0,n);k[m+128>>2]=0;k[m+132>>2]=-1;k[m>>2]=4216;k[m+56>>2]=4236;sT(n);k[n>>2]=1740;l=m+36|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[m+52>>2]=16;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;cn(n,f);p1(f);f=b+11|0;e=i[f>>0]|0;g=e<<24>>24<0;j=b+4|0;d=k[j>>2]|0;h=g?d:e&255;if(h){Tn(m,g?k[b>>2]|0:b,h)|0;e=i[f>>0]|0;d=k[j>>2]|0}b=c+11|0;if((e<<24>>24<0?d:e&255)|0){j=i[b>>0]|0;d=c+4|0;if((j<<24>>24<0?k[d>>2]|0:j&255)|0)Tn(m,103294,1)|0}else d=c+4|0;j=i[b>>0]|0;b=j<<24>>24<0;d=b?k[d>>2]|0:j&255;if(d|0)Tn(m,b?k[c>>2]|0:c,d)|0;Yr(a,n);k[m>>2]=4216;k[o>>2]=4236;k[n>>2]=1740;p1(l);I3(n);Qaa(m,4248);N8(o);r=p;return}function ci(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;Bt(a,b);i[k[b>>2]>>0]=3;e=(k[b>>2]|0)+1|0;k[b>>2]=e;d=a+80|0;c=a+88|0;i[e>>0]=(k[d>>2]|0)+22+(k[c>>2]|0);e=(k[b>>2]|0)+1|0;k[b>>2]=e;f=j[a+56>>1]|0;i[e>>0]=(f&65535)>>>8;i[(k[b>>2]|0)+1>>0]=f;f=(k[b>>2]|0)+2|0;k[b>>2]=f;i[f>>0]=i[a+58>>0]|0;f=(k[b>>2]|0)+1|0;k[b>>2]=f;i[f>>0]=4;f=(k[b>>2]|0)+1|0;k[b>>2]=f;i[f>>0]=(k[d>>2]|0)+15;f=(k[b>>2]|0)+1|0;k[b>>2]=f;i[f>>0]=i[a+64>>0]|0;f=(k[b>>2]|0)+1|0;k[b>>2]=f;i[f>>0]=i[a+65>>0]|0;f=(k[b>>2]|0)+1|0;k[b>>2]=f;e=k[a+68>>2]|0;i[f>>0]=e>>>16;i[(k[b>>2]|0)+1>>0]=e>>>8;i[(k[b>>2]|0)+2>>0]=e;e=(k[b>>2]|0)+3|0;k[b>>2]=e;f=k[a+72>>2]|0;i[e>>0]=f>>>24;i[(k[b>>2]|0)+1>>0]=f>>>16;i[(k[b>>2]|0)+2>>0]=f>>>8;i[(k[b>>2]|0)+3>>0]=f;f=(k[b>>2]|0)+4|0;k[b>>2]=f;e=k[a+76>>2]|0;i[f>>0]=e>>>24;i[(k[b>>2]|0)+1>>0]=e>>>16;i[(k[b>>2]|0)+2>>0]=e>>>8;i[(k[b>>2]|0)+3>>0]=e;e=(k[b>>2]|0)+4|0;k[b>>2]=e;i[e>>0]=5;e=(k[b>>2]|0)+1|0;k[b>>2]=e;i[e>>0]=k[d>>2];e=(k[b>>2]|0)+1|0;k[b>>2]=e;d=k[d>>2]|0;fE(e|0,k[a+84>>2]|0,d|0)|0;d=(k[b>>2]|0)+d|0;k[b>>2]=d;i[d>>0]=6;d=(k[b>>2]|0)+1|0;k[b>>2]=d;i[d>>0]=k[c>>2];d=(k[b>>2]|0)+1|0;k[b>>2]=d;c=k[c>>2]|0;fE(d|0,k[a+92>>2]|0,c|0)|0;k[b>>2]=(k[b>>2]|0)+c;return}function di(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+64|0;c=h+44|0;d=h+32|0;e=h+16|0;f=h;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,50649,4);nE(b,d,c)|0;p1(d);g=RI(a,c)|0;a=k[(k[(k[a+1256>>2]|0)+200>>2]|0)+1196>>2]|0;do if(a|0){if(g|0){Sb[k[(k[g>>2]|0)+24>>2]&511](g,b);break}k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,56171,3);nE(b,e,d)|0;p1(e);g=i[d+11>>0]|0;if(!(((g<<24>>24<0?k[d+4>>2]|0:g&255)|0)==13?!(cA(d,0,-1,53082,13)|0):0)){mD(e,0);g=N6(e,56171)|0;nF(f,53103);GA(g,f)|0;Lv(f);g=N6(e,55352)|0;nF(f,29372);GA(g,f)|0;Lv(f);On(a,e,c)|0;Lv(e)}p1(d)}while(0);p1(c);r=h;return}function ei(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+64|0;j=n+48|0;l=n;fj(a,b,c)|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,49752,10);oq(j,b,l);p1(l);b=k[j>>2]|0;m=j+4|0;if((b|0)==(k[m>>2]|0))c=b;else{i=c+80|0;h=c+84|0;d=c+76|0;e=l+36|0;f=l+24|0;g=l+12|0;do{a=l;c=a+48|0;do{k[a>>2]=0;a=a+4|0}while((a|0)<(c|0));yl(0,k[b>>2]|0,l)|0;a=k[i>>2]|0;if((a|0)==(k[h>>2]|0))Em(d,l);else{iI(a,l);iI(a+12|0,g);iI(a+24|0,f);iI(a+36|0,e);k[i>>2]=(k[i>>2]|0)+48}p1(e);p1(f);p1(g);p1(l);b=b+4|0}while((b|0)!=(k[m>>2]|0));c=k[j>>2]|0}a=c;if(c|0){if((b|0)!=(c|0))k[m>>2]=b+(~((b+-4-a|0)>>>2)<<2);zba(c)}r=n;return 1}function fi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+176|0;o=t+168|0;p=t+40|0;q=t+36|0;s=t+32|0;m=t;l=t+24|0;n=t+16|0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;b=0;while(1){if((b|0)==3)break;k[m+(b<<2)>>2]=0;b=b+1|0}k[l+4>>2]=0;k[l>>2]=25852;h=i[f+8+3>>0]|0;j=h<<24>>24<0;b=j?k[f>>2]|0:f;h=b+((j?k[f+4>>2]|0:h&255)<<2)|0;j=p+32|0;f=b;b=0;while(1){if(!((b|0)!=2&f>>>0<h>>>0))break;k[s>>2]=f;g=Zb[k[(k[l>>2]|0)+12>>2]&15](l,o,f,h,s,p,j,q)|0;b=p;while(1){if(b>>>0>=(k[q>>2]|0)>>>0)break;Jx(m,i[b>>0]|0);b=b+1|0}f=k[s>>2]|0;b=g}f=F9((c|0)==-1?-1:c<<1,d,e,(i[m+11>>0]|0)<0?k[m>>2]|0:m)|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;k[a+(b<<2)>>2]=0;b=b+1|0}k[n+4>>2]=0;k[n>>2]=25900;h=f+(iC(f)|0)|0;j=h;l=p+128|0;b=0;while(1){if(!((b|0)!=2&f>>>0<h>>>0))break;k[s>>2]=f;g=Zb[k[(k[n>>2]|0)+16>>2]&15](n,o,f,(j-f|0)>32?f+32|0:h,s,p,l,q)|0;b=p;while(1){if(b>>>0>=(k[q>>2]|0)>>>0)break;jw(a,k[b>>2]|0);b=b+4|0}f=k[s>>2]|0;b=g}p1(m);r=t;return}function gi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;mI(a,b,0)|0;f=a+8|0;c=(k[f>>2]|0)+2|0;k[f>>2]=c;g=a+12|0;d=k[g>>2]|0;if((c|0)>=(d|0)){k[g>>2]=0;k[f>>2]=0;c=0;d=0}c=c+2|0;k[f>>2]=c;if((c|0)>=(d|0)){k[g>>2]=0;k[f>>2]=0;c=0;d=0}c=c+12|0;k[f>>2]=c;if((c|0)>=(d|0)){k[g>>2]=0;k[f>>2]=0;c=0}e=a+4|0;a=(k[e>>2]|0)+c|0;k[f>>2]=c+2;j[b+46>>1]=(l[a>>0]|0)<<8|(l[a+1>>0]|0);a=k[f>>2]|0;c=(k[e>>2]|0)+a|0;k[f>>2]=a+2;j[b+48>>1]=(l[c>>0]|0)<<8|(l[c+1>>0]|0);c=k[f>>2]|0;a=(k[e>>2]|0)+c|0;k[f>>2]=c+4;k[b+52>>2]=(l[a+1>>0]|0)<<16|(l[a>>0]|0)<<24|(l[a+2>>0]|0)<<8|(l[a+3>>0]|0);a=k[f>>2]|0;c=(k[e>>2]|0)+a|0;k[f>>2]=a+4;k[b+56>>2]=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);c=(k[f>>2]|0)+4|0;k[f>>2]=c;if((c|0)>=(k[g>>2]|0)){k[g>>2]=0;k[f>>2]=0;c=0}d=(k[e>>2]|0)+c|0;k[f>>2]=c+2;j[b+60>>1]=(l[d>>0]|0)<<8|(l[d+1>>0]|0);c=b+62|0;d=(k[e>>2]|0)+(k[f>>2]|0)|0;a=c+32|0;do{i[c>>0]=i[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(a|0));k[f>>2]=(k[f>>2]|0)+32;i[b+94>>0]=0;a=k[f>>2]|0;e=(k[e>>2]|0)+a|0;k[f>>2]=a+2;j[b+96>>1]=(l[e>>0]|0)<<8|(l[e+1>>0]|0);b=(k[f>>2]|0)+2|0;k[f>>2]=b;if((b|0)>=(k[g>>2]|0)){k[g>>2]=0;k[f>>2]=0}return 78}function hi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;l=r;r=r+16|0;h=l;j=a+140|0;c=j+11|0;b=i[c>>0]|0;if(b<<24>>24<0)b=k[a+144>>2]|0;else b=b&255;if(b|0){e=Tn(a,103346,3)|0;g=i[c>>0]|0;f=g<<24>>24<0;Tn(e,f?k[j>>2]|0:j,f?k[a+144>>2]|0:g&255)|0}d=LZ(a+(k[(k[a>>2]|0)+-12>>2]|0)|0)|0;k[h>>2]=d;d=k_(h,111604)|0;d=cc[k[(k[d>>2]|0)+28>>2]&127](d,10)|0;t6(h);Ss(a,d)|0;UA(a)|0;d=a+4|0;Yr(h,d);e=a+136|0;if((k[e>>2]|0)>=(k[2784]|0)){g=k[4854]|0;Y8((i[h+11>>0]|0)<0?k[h>>2]|0:h,g)|0;Ru(g)|0}b=k[27490]|0;c=b;if((c|0)!=109956){f=h+11|0;g=h+4|0;do{if((k[e>>2]|0)>=(k[b+12>>2]|0)){m=i[f>>0]|0;n=m<<24>>24<0;lC(k[b+8>>2]|0,n?k[h>>2]|0:h,n?k[g>>2]|0:m&255,0,0)|0}b=k[c+4>>2]|0;c=b}while((c|0)!=109956)}p1(h);p1(j);k[a>>2]=4216;n=a+56|0;k[n>>2]=4236;k[d>>2]=1740;p1(a+36|0);I3(d);Qaa(a,4248);N8(n);r=l;return}function ii(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=a+356|0;r=a+360|0;a:do if(k[m>>2]|0){o=a+352|0;p=a+48|0;b=a+52|0;q=a+288|0;if(i[r>>0]|0){while(1){i[r>>0]=0;c=k[o>>2]|0;n=k[c+8>>2]|0;if(!(i[p>>0]|0)){d=k[(k[(k[b>>2]|0)+916>>2]|0)+616>>2]|0;d=((k[n+12>>2]|0)%(d|0)|0|0)==(d+-1|0)&1}else d=1;l=n+4|0;g=k[l>>2]|0;e=k[n>>2]|0;f=g-e>>2;if(!f)d=0;else{j=(d|0)!=0;d=0;h=0;while(1){c=k[e+(h<<2)>>2]|0;if((c|0)!=0?(k[c+8>>2]|0)!=0:0){d=k[q>>2]|0;jc[k[(k[d>>2]|0)+20>>2]&63](d,c,0,j&(h|0)==(f+-1|0));d=1;e=k[n>>2]|0;c=k[l>>2]|0}else c=g;h=h+1|0;f=c-e>>2;if(h>>>0>=f>>>0)break;else g=c}c=k[o>>2]|0}l=c+4|0;k[(k[c>>2]|0)+4>>2]=k[l>>2];k[k[l>>2]>>2]=k[c>>2];k[m>>2]=(k[m>>2]|0)+-1;zba(c);dG(n);zba(n);if(d)break;i[r>>0]=1;if(!(k[m>>2]|0)){c=15;break a}}if(!(k[m>>2]|0))c=15;else c=16}else c=16}else c=15;while(0);if((c|0)==15){b=a+52|0;if(!(i[r>>0]|0))c=16;else AE((k[b>>2]|0)+296|0,1)}if((c|0)==16)AE((k[b>>2]|0)+296|0,0);return}function ji(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{j=d+-72|0;f=c;c=c+-72|0;k[j>>2]=k[c>>2];k[j+4>>2]=k[c+4>>2];k[j+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[d+-60>>2]=k[f+-60>>2];j=d+-56|0;l=f+-56|0;k[j>>2]=k[l>>2];k[j+4>>2]=k[l+4>>2];k[j+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;l=f+-44|0;j=k[l+4>>2]|0;e=d+-44|0;k[e>>2]=k[l>>2];k[e+4>>2]=j;e=d+-36|0;j=f+-36|0;k[e>>2]=k[j>>2];k[e+4>>2]=k[j+4>>2];k[e+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;j=d+-24|0;e=f+-24|0;k[j>>2]=k[e>>2];k[j+4>>2]=k[e+4>>2];k[j+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=d+-12|0;f=f+-12|0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];k[e+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;d=(k[g>>2]|0)+-72|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;l=b+8|0;j=k[i>>2]|0;k[i>>2]=k[l>>2];k[l>>2]=j;i=a+8|0;l=b+12|0;j=k[i>>2]|0;k[i>>2]=k[l>>2];k[l>>2]=j;k[b>>2]=k[e>>2];return}function ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;h=r;r=r+16|0;f=h;e=Tn(b,67767,4)|0;Ln(e,k[a+8>>2]|0)|0;e=Tn(b,68919,5)|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,a+44|0,4);g=i[f+11>>0]|0;c=g<<24>>24<0;g=Tn(Tn(e,c?k[f>>2]|0:f,c?k[f+4>>2]|0:g&255)|0,68925,5)|0;Ln(g,k[a+48>>2]|0)|0;p1(f);Tn(b,68931,13)|0;g=a+52|0;c=a+56|0;if((k[c>>2]|0)!=(k[g>>2]|0)){d=f+11|0;e=f+4|0;a=0;do{m=Tn(b,103341,1)|0;j=(k[g>>2]|0)+(a<<2)|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,j,4);j=i[d>>0]|0;l=j<<24>>24<0;Tn(m,l?k[f>>2]|0:f,l?k[e>>2]|0:j&255)|0;p1(f);a=a+1|0}while(a>>>0<(k[c>>2]|0)-(k[g>>2]|0)>>2>>>0)}Tn(b,103356,2)|0;r=h;return}function li(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;h=a+4|0;l=k[b>>2]|0;b=l;do if((l|0)!=(h|0)?(i=k[d>>2]|0,e=k[l+16>>2]|0,(i|0)>=(e|0)):0){if((e|0)>=(i|0)){k[c>>2]=b;b=c;break}f=l+4|0;b=k[f>>2]|0;g=(b|0)==0;if(g){e=l;while(1){b=k[e+8>>2]|0;if((k[b>>2]|0)==(e|0))break;else e=b}}else while(1){e=k[b>>2]|0;if(!e)break;else b=e}if((b|0)!=(h|0)?(i|0)>=(k[b+16>>2]|0):0){b=js(a,c,d)|0;break}if(g){k[c>>2]=l;b=f;break}else{k[c>>2]=b;break}}else j=3;while(0);do if((j|0)==3){if((l|0)!=(k[a>>2]|0)){b=k[l>>2]|0;if(!b){e=l;while(1){b=k[e+8>>2]|0;if((k[b>>2]|0)==(e|0))e=b;else break}}else while(1){e=k[b+4>>2]|0;if(!e)break;else b=e}if((k[b+16>>2]|0)>=(k[d>>2]|0)){b=js(a,c,d)|0;break}}if(!(k[l>>2]|0)){k[c>>2]=l;b=l;break}else{k[c>>2]=b;b=b+4|0;break}}while(0);return b|0}function mi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+160|0;d=j;if((b|0)!=0&(k[2783]|0)<4){Qd(d,64033,328,3,0,0,0);Tn(d,64062,52)|0;hi(d)}d=k[a+4>>2]|0;e=k[a>>2]|0;g=(d-e|0)/36|0;h=r;r=r+((1*(g*3<<2)|0)+15&-16)|0;XG(h|0,0,g*12|0)|0;f=e;if((d|0)!=(e|0)){e=0;do{a=f+(e*36|0)|0;b=i[a+11>>0]|0;d=b<<24>>24<0;if(d)b=k[f+(e*36|0)+4>>2]|0;else b=b&255;if(b|0){if(d)a=k[a>>2]|0;k[h+(e*3<<2)>>2]=a}a=f+(e*36|0)+12|0;b=i[a+11>>0]|0;d=b<<24>>24<0;if(d)b=k[f+(e*36|0)+16>>2]|0;else b=b&255;if(b|0){if(d)a=k[a>>2]|0;k[h+((e*3|0)+1<<2)>>2]=a}a=f+(e*36|0)+24|0;b=i[a+11>>0]|0;d=b<<24>>24<0;if(d)b=k[f+(e*36|0)+28>>2]|0;else b=b&255;if(b|0){if(d)a=k[a>>2]|0;k[h+((e*3|0)+2<<2)>>2]=a}e=e+1|0}while(e>>>0<g>>>0)}a=cW(12)|0;k[a>>2]=14948;e=a+4|0;k[e>>2]=-1;k[a+8>>2]=c;b=Ua(54,a|0,1286,12,1287,359,360,1288,361,h|0,4,g|0)|0;if((b|0)==-1){Rb[k[(k[a>>2]|0)+4>>2]&2047](a);a=0}else{d=k[e>>2]|0;if((d|0)!=-1){Ta(2,d|0)|0;k[e>>2]=-1}k[e>>2]=b}r=j;return a|0}function ni(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+176|0;g=l+168|0;f=l;j=l+160|0;if((i[a+49>>0]|0)!=0?x7(b)|0:0){LC(a);_J()|0;d=(k[c+12>>2]|0)/(k[(k[(k[a+52>>2]|0)+916>>2]|0)+616>>2]|0)|0;vy(g,b,d);e=g+4|0;if((k[e>>2]|0)!=16&(k[2783]|0)<5){Qd(f,43163,224,4,0,0,0);h=Tn(f,43343,37)|0;Mn(h,k[e>>2]|0)|0;hi(f)}f=IC(b,d)|0;e=cW(8)|0;k[e>>2]=d;k[e+4>>2]=k[c+16>>2];h=a+180|0;aq(k[h>>2]|0,k[b+72>>2]|0,k[g>>2]|0,f,e);e=c+4|0;a=k[c>>2]|0;if(((k[e>>2]|0)-a|0)>0){f=j+4|0;b=j+4|0;d=0;do{a=k[a+(d<<2)>>2]|0;a=ub(22,k[a>>2]|0,k[a+4>>2]|0)|0;k[j>>2]=a;k[f>>2]=8944;z$(k[h>>2]|0,a,k[(k[(k[c>>2]|0)+(d<<2)>>2]|0)+8>>2]|0);a=k[j>>2]|0;k[j>>2]=0;if(a|0)Sb[k[k[b>>2]>>2]&511](b,a);d=d+1|0;a=k[c>>2]|0}while((d|0)<((k[e>>2]|0)-a>>2|0))}nY(k[h>>2]|0)}else Pn(a,c);r=l;return}function oi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=r;r=r+32|0;e=d+16|0;g=d+8|0;f=d;gx(a,b,c);h=a+40|0;c=a+44|0;k[h>>2]=1972;k[c>>2]=2e3;k[a+52>>2]=0;k[a+56>>2]=0;k[a+48>>2]=a+52;b=a+60|0;X0(b);k[a>>2]=14244;k[h>>2]=14392;k[c>>2]=14420;k[b>>2]=14444;b=a+84|0;k[b>>2]=b;k[a+88>>2]=b;k[a+92>>2]=0;k[a+76>>2]=3288;k[a+80>>2]=3312;b=a+96|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;k[b+28>>2]=0;j[b+32>>1]=0;i[b+34>>0]=0;i[a+131>>0]=1;i[a+132>>0]=1;i[a+133>>0]=0;i[a+134>>0]=0;k[a+136>>2]=0;k[a+140>>2]=0;k[a+144>>2]=-1;k[a+148>>2]=3;b=a+152|0;i[a+160>>0]=0;k[a+156>>2]=-1;k[b>>2]=1500;k[a+164>>2]=0;c=a+168|0;i[a+176>>0]=0;k[a+172>>2]=-1;k[c>>2]=1500;k[a+180>>2]=0;k[a+188>>2]=0;k[a+192>>2]=0;k[a+184>>2]=a+188;k[a+196>>2]=0;k[a+200>>2]=0;k[a+204>>2]=-1;k[a+208>>2]=-1;i[a+212>>0]=0;k[a+216>>2]=0;k[a+220>>2]=0;k[a+224>>2]=0;k[g>>2]=1283;k[g+4>>2]=0;k[e>>2]=k[g>>2];k[e+4>>2]=k[g+4>>2];Cx(b,a,e)|0;k[f>>2]=1284;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];Cx(c,a,e)|0;r=d;return}function pi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=(c-b|0)/12|0;e=a+8|0;g=k[a>>2]|0;d=g;a:do if(f>>>0>(((k[e>>2]|0)-g|0)/12|0)>>>0){UD(a);if(f>>>0>357913941)J5(a);g=((k[e>>2]|0)-(k[a>>2]|0)|0)/12|0;h=g<<1;DM(a,g>>>0<178956970?(h>>>0<f>>>0?f:h):357913941);a=a+4|0;if((b|0)!=(c|0)){d=k[a>>2]|0;do{iI(d,b);b=b+12|0;d=(k[a>>2]|0)+12|0;k[a>>2]=d}while((b|0)!=(c|0))}}else{h=a+4|0;a=((k[h>>2]|0)-g|0)/12|0;e=f>>>0>a>>>0;f=b+(a*12|0)|0;a=e?f:c;if((a|0)!=(b|0))do{MM(d,b)|0;b=b+12|0;d=d+12|0}while((b|0)!=(a|0));if(!e){b=k[h>>2]|0;if((b|0)==(d|0))break;while(1){c=b+-12|0;k[h>>2]=c;p1(c);b=k[h>>2]|0;if((b|0)==(d|0))break a}}if((a|0)!=(c|0)){b=f;d=k[h>>2]|0;do{iI(d,b);b=b+12|0;d=(k[h>>2]|0)+12|0;k[h>>2]=d}while((b|0)!=(c|0))}}while(0);return}function qi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=a+4|0;c=k[f>>2]|0;g=a+100|0;if(c>>>0<(k[g>>2]|0)>>>0){k[f>>2]=c+1;c=l[c>>0]|0}else c=ys(a)|0;switch(c|0){case 43:case 45:{d=(c|0)==45&1;c=k[f>>2]|0;if(c>>>0<(k[g>>2]|0)>>>0){k[f>>2]=c+1;c=l[c>>0]|0}else c=ys(a)|0;if((b|0)!=0&(c+-48|0)>>>0>9?(k[g>>2]|0)!=0:0)k[f>>2]=(k[f>>2]|0)+-1;break}default:d=0}if((c+-48|0)>>>0>9)if(!(k[g>>2]|0)){d=-2147483648;c=0}else{k[f>>2]=(k[f>>2]|0)+-1;d=-2147483648;c=0}else{e=0;do{e=c+-48+(e*10|0)|0;c=k[f>>2]|0;if(c>>>0<(k[g>>2]|0)>>>0){k[f>>2]=c+1;c=l[c>>0]|0}else c=ys(a)|0}while((c+-48|0)>>>0<10&(e|0)<214748364);b=((e|0)<0)<<31>>31;if((c+-48|0)>>>0<10)do{b=WV(e|0,b|0,10,0)|0;e=M;c=y0(c|0,((c|0)<0)<<31>>31|0,-48,-1)|0;e=y0(c|0,M|0,b|0,e|0)|0;b=M;c=k[f>>2]|0;if(c>>>0<(k[g>>2]|0)>>>0){k[f>>2]=c+1;c=l[c>>0]|0}else c=ys(a)|0}while((c+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&e>>>0<2061584302));if((c+-48|0)>>>0<10)do{c=k[f>>2]|0;if(c>>>0<(k[g>>2]|0)>>>0){k[f>>2]=c+1;c=l[c>>0]|0}else c=ys(a)|0}while((c+-48|0)>>>0<10);if(k[g>>2]|0)k[f>>2]=(k[f>>2]|0)+-1;g=(d|0)!=0;c=n_(0,0,e|0,b|0)|0;d=g?M:b;c=g?c:e}M=d;return c|0}function ri(a){a=a|0;var b=0;a=k[4825]|0;ZE(111236,a,111292);k[27639]=23248;k[27641]=23268;k[27640]=0;GK(110564,111236);k[27659]=0;k[27660]=-1;YE(111300,a,111356);k[27661]=23288;k[27663]=23308;k[27662]=0;GK(110652,111300);k[27681]=0;k[27682]=-1;a=k[4883]|0;sC(111364,a,111412);k[27683]=23328;k[27684]=23348;GK(110736,111364);k[27702]=0;k[27703]=-1;rC(111420,a,111468);k[27704]=23368;k[27705]=23388;GK(110820,111420);k[27723]=0;k[27724]=-1;a=k[4854]|0;sC(111476,a,111524);k[27725]=23328;k[27726]=23348;GK(110904,111476);k[27744]=0;k[27745]=-1;b=k[110900+(k[(k[27725]|0)+-12>>2]|0)+24>>2]|0;k[27767]=23328;k[27768]=23348;GK(111072,b);k[27786]=0;k[27787]=-1;rC(111532,a,111580);k[27746]=23368;k[27747]=23388;GK(110988,111532);k[27765]=0;k[27766]=-1;a=k[110984+(k[(k[27746]|0)+-12>>2]|0)+24>>2]|0;k[27788]=23368;k[27789]=23388;GK(111156,a);k[27807]=0;k[27808]=-1;k[110556+(k[(k[27639]|0)+-12>>2]|0)+72>>2]=110732;k[110644+(k[(k[27661]|0)+-12>>2]|0)+72>>2]=110816;a=110900+(k[(k[27725]|0)+-12>>2]|0)+4|0;k[a>>2]=k[a>>2]|8192;a=110984+(k[(k[27746]|0)+-12>>2]|0)+4|0;k[a>>2]=k[a>>2]|8192;k[110900+(k[(k[27725]|0)+-12>>2]|0)+72>>2]=110732;k[110984+(k[(k[27746]|0)+-12>>2]|0)+72>>2]=110816;return}function si(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+48|0;g=m+24|0;h=m+16|0;j=m;f=b+12|0;a=k[f>>2]|0;l=b+8|0;c=a;if((c|0)==(l|0))a=5;else{e=0;d=c;do{c=i[a+40+11>>0]|0;if(c<<24>>24<0)a=k[a+44>>2]|0;else a=c&255;e=e+14+a|0;a=k[d+4>>2]|0;d=a}while((d|0)!=(l|0));a=e+5|0}k[g>>2]=0;GM(g,0,0,0);jR(g,a);k[g+4>>2]=a;e=cW(16)|0;k[e>>2]=0;GM(e,k[g>>2]|0,a,a);i[e+12>>0]=1;k[h>>2]=e;k[h+4>>2]=0;JX(h,k[b+4>>2]&255);OE(h,k[b+16>>2]|0);a=k[f>>2]|0;c=a;if((c|0)!=(l|0))do{iI(j,a+40|0);Ap(h,j);p1(j);d=a+56|0;b=d;if((k[b>>2]|0)==0&(k[b+4>>2]|0)==0)OE(h,0);else{f=_J()|0;b=d;b=n_(f|0,M|0,k[b>>2]|0,k[b+4>>2]|0)|0;OE(h,b)}b=a+32|0;Zo(h,k[b>>2]|0,k[b+4>>2]|0);JX(h,i[a+64>>0]|0);a=k[c+4>>2]|0;c=a}while((c|0)!=(l|0));a=k[g>>2]|0;if(a|0)wba(a);r=m;return e|0}function ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;p=r;r=r+32|0;o=p+16|0;l=p+8|0;m=p;f=k[c+4>>2]|0;n=b+4|0;g=k[n>>2]|0;h=g;if((f|0)!=(g|0)?(j=k[c>>2]|0,e=k[b>>2]|0,e=(f-(k[j>>2]|0)>>2)+(j-e<<8)-(h-(k[e>>2]|0)>>2)|0,(e|0)>0):0){c=d;j=e;i=k[b>>2]|0;e=k[c>>2]|0;c=k[c+4>>2]|0;while(1){q=(k[i>>2]|0)+4096|0;f=q-g>>2;s=(f|0)>(j|0);f=s?j:f;t=m;k[t>>2]=e;k[t+4>>2]=c;k[o>>2]=k[m>>2];k[o+4>>2]=k[m+4>>2];on(l,g,s?g+(j<<2)|0:q,o,0);c=l;e=k[c>>2]|0;c=k[c+4>>2]|0;q=d;k[q>>2]=e;k[q+4>>2]=c;j=j-f|0;do if(f){f=(h-(k[i>>2]|0)>>2)+f|0;if((f|0)>0){t=i+(f>>>10<<2)|0;k[b>>2]=t;g=(k[t>>2]|0)+((f&1023)<<2)|0;k[n>>2]=g;h=g;f=t;break}else{g=1023-f|0;f=i+(((g|0)/-1024|0)<<2)|0;k[b>>2]=f;g=(k[f>>2]|0)+(1023-((g|0)%1024|0)<<2)|0;k[n>>2]=g;h=g;break}}else f=i;while(0);if((j|0)<=0)break;else i=f}}else{c=d;e=k[c>>2]|0;c=k[c+4>>2]|0}t=a;k[t>>2]=e;k[t+4>>2]=c;r=p;return}function ui(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;a=k[a+4>>2]|0;a:do if(((a|0)!=0?(c=k[a>>2]|0,!((c|0)==0?1:(c|0)==(k[a+4>>2]|0))):0)?(n=(b|0)==0?50467:50473,d=k[c+16>>2]|0,e=k[c+12>>2]|0,o=e,(d|0)!=(e|0)):0){m=n+5|0;l=(d-e|0)/372|0;a=0;while(1){c=o+(a*372|0)+8|0;b=i[c+11>>0]|0;if(b<<24>>24<0)d=k[o+(a*372|0)+12>>2]|0;else d=b&255;if(!d){b=k[o+(a*372|0)+80>>2]|0;b=(b|0)==(k[o+(a*372|0)+84>>2]|0)?c:b+8|0;c=b;b=i[b+11>>0]|0}if(b<<24>>24<0){b=k[c+4>>2]|0;c=k[c>>2]|0}else b=b&255;if(b>>>0>=5){h=c+b|0;j=c;g=h;b:do if((b|0)>=5?(p=h+-4|0,(p|0)!=(c|0)):0){f=i[n>>0]|0;b=j;while(1){while(1){if((i[c>>0]|0)==f<<24>>24){d=n;e=c;break}c=c+1|0;if((c|0)==(p|0)){b=g;break b}else b=c}do{d=d+1|0;if((d|0)==(m|0))break b;e=e+1|0}while((i[e>>0]|0)==(i[d>>0]|0));c=c+1|0;if((c|0)==(p|0)){b=g;break}else b=c}}else b=g;while(0);if(!((b|0)==(h|0)|(b-j|0)==-1))break}a=a+1|0;if(a>>>0>=l>>>0){a=0;break a}}a=o+(a*372|0)|0}else a=0;while(0);return a|0}function vi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+160|0;d=l;switch(k[(k[a+4>>2]|0)+1536>>2]|0){case 0:{j=n4(0,(k[b+4>>2]|0)-(k[b>>2]|0)>>2)|0;fc[k[(k[a>>2]|0)+88>>2]&255](a,k[(k[b>>2]|0)+(j<<2)>>2]|0,c);break}case 1:{g=b+4|0;e=(k[g>>2]|0)-(k[b>>2]|0)>>2;i=jb()|0;j=r;r=r+((1*(e<<2)|0)+15&-16)|0;e=k[b>>2]|0;if((k[g>>2]|0)==(e|0))d=0;else{d=0;f=0;do{h=k[e+(f<<2)>>2]|0;h=Ub[k[(k[h>>2]|0)+36>>2]&511](h)|0;k[j+(f<<2)>>2]=h;d=h+d|0;f=f+1|0;e=k[b>>2]|0}while(f>>>0<(k[g>>2]|0)-e>>2>>>0)}h=n4(0,d)|0;e=k[g>>2]|0;d=k[b>>2]|0;g=d;a:do if((e|0)!=(d|0)){f=e-d>>2;d=0;e=0;while(1){e=(k[j+(d<<2)>>2]|0)+e|0;if(h>>>0<=e>>>0)break;d=d+1|0;if(d>>>0>=f>>>0)break a}fc[k[(k[a>>2]|0)+88>>2]&255](a,k[g+(d<<2)>>2]|0,c)}while(0);Qa(i|0);break}default:if((k[2783]|0)<5){Qd(d,44343,126,4,0,0,0);Tn(Tn(d,44379,13)|0,44393,38)|0;hi(d)}}r=l;return}function wi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i+12|0;f=i;if(!(j[b+8>>1]&255)){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0}else{k[h>>2]=0;g=h+4|0;k[g>>2]=0;k[h+8>>2]=0;xl(h,k[(k[b>>2]|0)+8>>2]|0);e=k[b>>2]|0;c=k[e>>2]|0;e=e+4|0;d=c;if((d|0)==(e|0))b=h+8|0;else{b=h+8|0;while(1){d=k[d+16>>2]|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,d,iC(d)|0);d=k[g>>2]|0;if(d>>>0<(k[b>>2]|0)>>>0){k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];k[d+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[g>>2]=(k[g>>2]|0)+12}else sj(h,f);p1(f);d=k[c+4>>2]|0;if(!d)while(1){d=k[c+8>>2]|0;if((k[d>>2]|0)==(c|0))break;else c=d}else{c=d;while(1){d=k[c>>2]|0;if(!d){d=c;break}else c=d}}if((d|0)==(e|0))break;else c=d}}k[a>>2]=k[h>>2];k[a+4>>2]=k[g>>2];k[a+8>>2]=k[b>>2];k[b>>2]=0;k[g>>2]=0;k[h>>2]=0;nG(h)}r=i;return}function xi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;a:do if(!a){c=k[b>>2]|0;d=k[c>>2]|0;if(!d)c=0;else{a=c;c=0;do{if(d>>>0>127){d=yv(g,d,0)|0;if((d|0)==-1){c=-1;break a}}else d=1;c=d+c|0;a=a+4|0;d=k[a>>2]|0}while((d|0)!=0)}}else{b:do if(c>>>0>3){d=c;e=k[b>>2]|0;while(1){f=k[e>>2]|0;if((f+-1|0)>>>0>126){if(!f)break;f=yv(a,f,0)|0;if((f|0)==-1){c=-1;break a}a=a+f|0;d=d-f|0}else{i[a>>0]=f;a=a+1|0;d=d+-1|0;e=k[b>>2]|0}e=e+4|0;k[b>>2]=e;if(d>>>0<=3)break b}i[a>>0]=0;k[b>>2]=0;c=c-d|0;break a}else d=c;while(0);if(d){e=k[b>>2]|0;while(1){f=k[e>>2]|0;if((f+-1|0)>>>0>126){if(!f){e=19;break}f=yv(g,f,0)|0;if((f|0)==-1){c=-1;break a}if(d>>>0<f>>>0){e=22;break}yv(a,k[e>>2]|0,0)|0;a=a+f|0;d=d-f|0}else{i[a>>0]=f;a=a+1|0;d=d+-1|0;e=k[b>>2]|0}e=e+4|0;k[b>>2]=e;if(!d)break a}if((e|0)==19){i[a>>0]=0;k[b>>2]=0;c=c-d|0;break}else if((e|0)==22){c=c-d|0;break}}}while(0);r=h;return c|0}function yi(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=13552;b=a+4|0;k[b>>2]=13580;c=a+20|0;k[c>>2]=13604;JA(a);qL(a+180|0);ws(a+168|0,k[a+172>>2]|0);ws(a+156|0,k[a+160>>2]|0);p1(a+144|0);h3(a+116|0);d=a+96|0;k[d>>2]=2568;e=a+100|0;k[e>>2]=2592;up(d);$H(a+104|0);k[e>>2]=2024;e=a+76|0;k[e>>2]=2376;d=a+80|0;k[d>>2]=2400;up(e);$H(a+84|0);k[d>>2]=2024;d=a+56|0;k[d>>2]=2376;e=a+60|0;k[e>>2]=2400;up(d);$H(a+64|0);k[e>>2]=2024;e=a+36|0;k[e>>2]=2376;d=a+40|0;k[d>>2]=2400;up(e);$H(a+44|0);k[d>>2]=2024;eU(c);k[a>>2]=1972;k[b>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[b>>2]=2024;return}function zi(a){a=a|0;var b=0,c=0,d=0,e=0;e=r;r=r+16|0;b=e;c=k[(k[(k[a+1256>>2]|0)+200>>2]|0)+1196>>2]|0;if(c|0?(d=a+2269|0,i[d>>0]|0):0){gr(c+36|0,a);aE(c+116|0);gr(c+76|0,a);gr(c+96|0,a);gr(c+56|0,a);k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,53076,5);c=c+168|0;tt(c,b)|0;p1(b);k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,53082,13);tt(c,b)|0;p1(b);k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,52290,8);tt(c,b)|0;p1(b);i[d>>0]=0}r=e;return}function Ai(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+16|0;o=u;do if((b|0)!=-1){p=a+12|0;q=a+8|0;s=(k[p>>2]|0)-(k[q>>2]|0)|0;t=a+24|0;j=k[t>>2]|0;m=a+28|0;c=k[m>>2]|0;if((j|0)==(c|0)){h=a+48|0;if(!(k[h>>2]&16)){c=-1;break}f=a+20|0;g=k[f>>2]|0;n=a+44|0;l=(k[n>>2]|0)-g|0;e=a+32|0;Jx(e,0);c=e+11|0;if((i[c>>0]|0)<0)d=(k[a+40>>2]&2147483647)+-1|0;else d=10;gD(e,d,0);c=i[c>>0]|0;if(c<<24>>24<0){d=k[e>>2]|0;c=k[a+36>>2]|0}else{d=e;c=c&255}c=d+c|0;k[f>>2]=d;k[m>>2]=c;j=d+(j-g)|0;k[t>>2]=j;d=d+l|0;k[n>>2]=d;l=n;e=n;g=c}else{d=a+44|0;l=d;h=a+48|0;e=d;d=k[d>>2]|0;g=c}f=j+1|0;k[o>>2]=f;d=k[(f>>>0<d>>>0?e:o)>>2]|0;k[l>>2]=d;if(k[h>>2]&8|0){c=a+32|0;if((i[c+11>>0]|0)<0)c=k[c>>2]|0;k[q>>2]=c;k[p>>2]=c+s;k[a+16>>2]=d}if((j|0)==(g|0)){c=cc[k[(k[a>>2]|0)+52>>2]&127](a,b&255)|0;break}else{k[t>>2]=f;i[j>>0]=b;c=b&255;break}}else c=0;while(0);r=u;return c|0}function Bi(a,b){a=a|0;b=b|0;var c=0,d=0;_F(a,b);d=Tn(b,68157,7)|0;d=Tn(Gn(d,j[a+46>>1]|0)|0,68165,8)|0;Gn(d,j[a+48>>1]|0)|0;d=Tn(b,68187,6)|0;c=a+52|0;d=Tn(Ln(d,(k[c>>2]|0)>>>16)|0,104158,1)|0;Ln(d,k[c>>2]&65535)|0;c=Tn(b,68194,6)|0;d=a+56|0;c=Tn(Ln(c,(k[d>>2]|0)>>>16)|0,104158,1)|0;Ln(c,k[d>>2]&65535)|0;d=Tn(b,68201,12)|0;Gn(d,j[a+60>>1]|0)|0;d=Tn(b,68214,13)|0;c=a+62|0;Tn(Tn(d,c,iC(c)|0)|0,103308,1)|0;b=Tn(b,68228,7)|0;Gn(b,j[a+96>>1]|0)|0;return}function Ci(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;Bt(a,b);c=k[a+52>>2]|0;i[k[b>>2]>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;e=a+48|0;d=k[e>>2]|0;if(d&1){i[c>>0]=0;i[(k[b>>2]|0)+1>>0]=0;i[(k[b>>2]|0)+2>>0]=0;i[(k[b>>2]|0)+3>>0]=0;d=(k[b>>2]|0)+4|0;k[b>>2]=d;c=k[a+56>>2]|0;i[d>>0]=c>>>24;i[(k[b>>2]|0)+1>>0]=c>>>16;i[(k[b>>2]|0)+2>>0]=c>>>8;i[(k[b>>2]|0)+3>>0]=c;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[e>>2]|0}if(d&2){d=k[a+64>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[e>>2]|0}if(d&8){d=k[a+68>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[e>>2]|0}if(d&16){d=k[a+72>>2]|0;i[c>>0]=d>>>24;i[(k[b>>2]|0)+1>>0]=d>>>16;i[(k[b>>2]|0)+2>>0]=d>>>8;i[(k[b>>2]|0)+3>>0]=d;c=(k[b>>2]|0)+4|0;k[b>>2]=c;d=k[e>>2]|0}if(d&32|0){a=k[a+76>>2]|0;i[c>>0]=a>>>24;i[(k[b>>2]|0)+1>>0]=a>>>16;i[(k[b>>2]|0)+2>>0]=a>>>8;i[(k[b>>2]|0)+3>>0]=a;k[b>>2]=(k[b>>2]|0)+4}return}function Di(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;k[a>>2]=5456;d=a+4|0;k[d>>2]=5484;e=a+20|0;k[e>>2]=5508;f=a+96|0;nX(f);b=a+204|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}b=a+200|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+12>>2]&2047](c);k[b>>2]=0}b=k[a+1068>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[a+1064>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);p1(a+1052|0);b=a+1048|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}Ev(a+400|0);VD(a+208|0);gt(a+180|0);Qy(f);c=a+76|0;k[c>>2]=5524;f=a+80|0;k[f>>2]=5548;up(c);$H(a+84|0);k[f>>2]=2024;f=a+56|0;k[f>>2]=2376;c=a+60|0;k[c>>2]=2400;up(f);$H(a+64|0);k[c>>2]=2024;c=a+36|0;k[c>>2]=5572;f=a+40|0;k[f>>2]=5596;up(c);$H(a+44|0);k[f>>2]=2024;eU(e);k[a>>2]=1972;k[d>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[d>>2]=2024;return}function Ei(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0;m=r;r=r+16|0;d=m;f=b+44|0;h=a+4|0;j=a+8|0;g=(k[h>>2]|0)+(k[j>>2]|0)|0;g=l[g>>0]|l[g+1>>0]<<8|l[g+2>>0]<<16|l[g+3>>0]<<24;i[f>>0]=g;i[f+1>>0]=g>>8;i[f+2>>0]=g>>16;i[f+3>>0]=g>>24;f=k[j>>2]|0;g=(k[h>>2]|0)+(f+4)|0;k[j>>2]=f+8;k[b+48>>2]=(l[g+1>>0]|0)<<16|(l[g>>0]|0)<<24|(l[g+2>>0]|0)<<8|(l[g+3>>0]|0);if(c&3|0){g=Tn(Tn(110732,70287,10)|0,70298,85)|0;f=LZ(g+(k[(k[g>>2]|0)+-12>>2]|0)|0)|0;k[d>>2]=f;f=k_(d,111604)|0;f=cc[k[(k[f>>2]|0)+28>>2]&127](f,10)|0;t6(d);Ss(g,f)|0;UA(g)|0}e=(c+-8|0)>>>2;f=b+52|0;BI(f,e);if(e|0){d=0;g=k[j>>2]|0;do{n=(k[f>>2]|0)+(d<<2)|0;o=(k[h>>2]|0)+g|0;o=l[o>>0]|l[o+1>>0]<<8|l[o+2>>0]<<16|l[o+3>>0]<<24;i[n>>0]=o;i[n+1>>0]=o>>8;i[n+2>>0]=o>>16;i[n+3>>0]=o>>24;g=(k[j>>2]|0)+4|0;k[j>>2]=g;d=d+1|0}while((d|0)!=(e|0))}o=k[a+28>>2]|0;hc[k[k[o>>2]>>2]&7](o,b,+p[a+40>>3]);r=m;return c|0}function Fi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=r;r=r+48|0;e=j+36|0;f=j+24|0;g=j+12|0;h=j;d=a+4|0;c=w4(k[d>>2]|0)|0;k[c+1128>>2]=1;c=Is(c+1056|0,(k[d>>2]|0)+2088|0)|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;b=w4(k[d>>2]|0)|0;WQ(b,(k[(k[d>>2]|0)+2004>>2]|0)+64|0,e,f);d=i[e+11>>0]|0;b=f+11|0;if(!((d<<24>>24<0?k[e+4>>2]|0:d&255)|0)){a=f+4|0;d=115628}else{d=i[b>>0]|0;l=f+4|0;a=l;d=((d<<24>>24<0?k[l>>2]|0:d&255)|0)==0?115628:103359}FE(h,e,d);l=i[b>>0]|0;d=l<<24>>24<0;l=nw(h,d?k[f>>2]|0:f,d?k[a>>2]|0:l&255)|0;k[g>>2]=k[l>>2];k[g+4>>2]=k[l+4>>2];k[g+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;p1(h);MM(c+8|0,g)|0;i[c+4>>0]=1;jR(c+24|0,0);k[c+28>>2]=0;i[c+20>>0]=1;p1(g);p1(f);p1(e);r=j;return}function Gi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,q=0,s=0;m=r;r=r+80|0;j=m;HA(j,b,c,d);q=j+44|0;k[q>>2]=0;e=j+48|0;k[e>>2]=0;k[j>>2]=15392;g=j+60|0;k[g>>2]=0;i=j+64|0;k[i>>2]=0;k[j+68>>2]=0;c=a+4|0;n=k[c>>2]|0;d=a+8|0;f=k[d>>2]|0;s=n+f|0;b=f+4|0;k[d>>2]=b;o=(l[s+2>>0]|0)<<8|(l[s+1>>0]|0)<<16|(l[s+3>>0]|0);k[q>>2]=l[s>>0];k[e>>2]=o;b=n+b|0;e=f+8|0;k[d>>2]=e;b=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);k[j+52>>2]=b;e=n+e|0;k[d>>2]=f+12;e=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);f=j+56|0;k[f>>2]=e;if((b|0)==0?(h=j+60|0,BI(h,e),(k[f>>2]|0)!=0):0){e=0;do{s=k[d>>2]|0;b=(k[c>>2]|0)+s|0;k[d>>2]=s+4;k[(k[h>>2]|0)+(e<<2)>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);e=e+1|0;b=k[f>>2]|0}while(e>>>0<b>>>0);d=(b<<2)+12|0}else d=12;e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,j,+p[a+40>>3]);k[j>>2]=15392;e=k[g>>2]|0;b=e;if(e|0){c=k[i>>2]|0;if((c|0)!=(e|0))k[i>>2]=c+(~((c+-4-b|0)>>>2)<<2);zba(e)}O3(j);r=m;return d|0}function Hi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;f=r;r=r+48|0;c=f+24|0;d=f+12|0;e=f;if(_Y(b,1)|0){j=k[a+12>>2]|0;ME(e,b,1);dt(d,e);g=xX(d,0,103341)|0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];k[c+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;g=i[c+11>>0]|0;h=g<<24>>24<0;Tn(j,h?k[c>>2]|0:c,h?k[c+4>>2]|0:g&255)|0;p1(c);p1(d);p1(e)}if(_Y(b,2)|0){j=a+12|0;Tn(k[j>>2]|0,103283,1)|0;e=k[j>>2]|0;ME(d,b,2);dt(c,d);h=i[c+11>>0]|0;g=h<<24>>24<0;Tn(e,g?k[c>>2]|0:c,g?k[c+4>>2]|0:h&255)|0;p1(c);p1(d);Tn(k[j>>2]|0,103283,1)|0}r=f;return}function Ii(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+336|0;c=g+324|0;d=g+168|0;e=g+156|0;f=g;k[c>>2]=b;b=Xx(a+184|0,c)|0;if((b|0)==(a+188|0)){if((k[2783]|0)<5){Qd(f,52211,1069,4,0,0,0);e=Tn(f,52765,44)|0;Tn(Mn(e,k[c>>2]|0)|0,52810,41)|0;hi(f)}}else if(!(k[(k[b+20>>2]|0)+80>>2]|0)){if((k[2783]|0)<3){Qd(d,52211,1065,2,0,0,0);f=Tn(d,52678,38)|0;f=Tn(Mn(f,k[c>>2]|0)|0,52717,25)|0;Tn(Mn(f,k[(k[a+4>>2]|0)+1512>>2]|0)|0,52743,2)|0;hi(d)}f=k[c>>2]|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,52746,18);d=a+196|0;k[d>>2]=(k[d>>2]|0)+1;cc[k[(k[a>>2]|0)+84>>2]&127](a,f)|0;p1(e)}r=g;return}function Ji(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=r;r=r+208|0;c=g;d=g+196|0;e=g+184|0;h=g+16|0;f=g+28|0;Mg(c,gB(b,55007)|0);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,55023,4);nE(c,e,d)|0;p1(e);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,55019,3);nE(c,h,e)|0;p1(h);b=JO(d,e)|0;if(!b){if((k[2783]|0)<4){Qd(f,52211,699,3,0,0,0);Tn(f,55294,57)|0;hi(f)}}else{f=a+100|0;h=a+96|0;XI(k[f>>2]|0,k[(k[h>>2]|0)+16>>2]|0,b);rZ(k[f>>2]|0,k[(k[h>>2]|0)+8>>2]|0)}p1(e);p1(d);Lv(c);r=g;return}function Ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;f=r;r=r+160|0;c=f+144|0;d=f;if((i[b+104>>0]|0)!=0?(e=b+100|0,(k[e>>2]|0)>0):0){j=d+8|0;k[j>>2]=1664;h=d+12|0;k[d>>2]=1704;g=d+64|0;k[g>>2]=1724;k[d+4>>2]=0;GK(d+64|0,h);k[d+136>>2]=0;k[d+140>>2]=-1;k[d>>2]=1644;k[d+64>>2]=1684;k[j>>2]=1664;sT(h);k[h>>2]=1740;j=d+44|0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[d+60>>2]=24;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;cn(h,c);p1(c);l=d+8|0;o=b+88|0;m=i[o+11>>0]|0;n=m<<24>>24<0;b=Tn(l,n?k[o>>2]|0:o,n?k[b+92>>2]|0:m&255)|0;i[c>>0]=95;c=Tn(b,c,1)|0;Mn(c,k[e>>2]|0)|0;Yr(a,h);k[d>>2]=1644;k[g>>2]=1684;k[l>>2]=1664;k[h>>2]=1740;p1(j);I3(h);Qaa(d,1800);N8(g)}else iI(a,b+88|0);r=f;return}function Li(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,q=0;m=r;r=r+64|0;j=m;HA(j,b,c,d);o=j+44|0;k[o>>2]=0;e=j+48|0;k[e>>2]=0;k[j>>2]=15448;h=j+52|0;k[h>>2]=0;i=j+56|0;k[i>>2]=0;k[j+60>>2]=0;b=a+4|0;g=k[b>>2]|0;c=a+8|0;f=k[c>>2]|0;q=g+f|0;d=f+4|0;k[c>>2]=d;n=(l[q+2>>0]|0)<<8|(l[q+1>>0]|0)<<16|(l[q+3>>0]|0);k[o>>2]=l[q>>0];k[e>>2]=n;d=g+d|0;k[c>>2]=f+8;d=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);f=j+52|0;jH(f,d);if(!d)d=8;else{g=d<<3;e=0;do{q=k[f>>2]|0;o=k[c>>2]|0;n=(k[b>>2]|0)+o|0;k[c>>2]=o+4;k[q+(e<<3)>>2]=(l[n+1>>0]|0)<<16|(l[n>>0]|0)<<24|(l[n+2>>0]|0)<<8|(l[n+3>>0]|0);n=k[c>>2]|0;o=(k[b>>2]|0)+n|0;k[c>>2]=n+4;k[q+(e<<3)+4>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);e=e+1|0}while((e|0)!=(d|0));d=g+8|0}e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,j,+p[a+40>>3]);k[j>>2]=15448;e=k[h>>2]|0;b=e;if(e|0){c=k[i>>2]|0;if((c|0)!=(e|0))k[i>>2]=c+(~((c+-8-b|0)>>>3)<<3);zba(e)}O3(j);r=m;return d|0}function Mi(a,b,c,d,e,f,g,h,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0;o=k[d>>2]|0;p=(o|0)==(c|0);do if(p){m=(i[l+24>>0]|0)==a<<24>>24;if(!m?(i[l+25>>0]|0)!=a<<24>>24:0){n=5;break}k[d>>2]=c+1;i[c>>0]=m?43:45;k[e>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=i[g+11>>0]|0;if(a<<24>>24==f<<24>>24?((n<<24>>24<0?k[g+4>>2]|0:n&255)|0)!=0:0){m=k[j>>2]|0;if((m-h|0)>=160){m=0;break}d=k[e>>2]|0;k[j>>2]=m+4;k[m>>2]=d;k[e>>2]=0;m=0;break}g=l+26|0;f=0;while(1){m=l+f|0;if((f|0)==26){m=g;break}if((i[m>>0]|0)==a<<24>>24)break;else f=f+1|0}m=m-l|0;if((m|0)>23)m=-1;else{switch(b|0){case 10:case 8:{if((m|0)>=(b|0)){m=-1;break a}break}case 16:{if((m|0)>=22){if(p){m=-1;break a}if((o-c|0)>=3){m=-1;break a}if((i[o+-1>>0]|0)!=48){m=-1;break a}k[e>>2]=0;m=i[106657+m>>0]|0;k[d>>2]=o+1;i[o>>0]=m;m=0;break a}break}default:{}}m=i[106657+m>>0]|0;k[d>>2]=o+1;i[o>>0]=m;k[e>>2]=(k[e>>2]|0)+1;m=0}}while(0);return m|0}function Ni(a,b,c,d,e,f,g,h,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0;o=k[d>>2]|0;p=(o|0)==(c|0);do if(p){m=(k[l+96>>2]|0)==(a|0);if(!m?(k[l+100>>2]|0)!=(a|0):0){n=5;break}k[d>>2]=c+1;i[c>>0]=m?43:45;k[e>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=i[g+11>>0]|0;if((a|0)==(f|0)?((n<<24>>24<0?k[g+4>>2]|0:n&255)|0)!=0:0){m=k[j>>2]|0;if((m-h|0)>=160){m=0;break}d=k[e>>2]|0;k[j>>2]=m+4;k[m>>2]=d;k[e>>2]=0;m=0;break}g=l+104|0;f=0;while(1){m=l+(f<<2)|0;if((f|0)==26){m=g;break}if((k[m>>2]|0)==(a|0))break;else f=f+1|0}m=m-l|0;f=m>>2;if((m|0)>92)m=-1;else{switch(b|0){case 10:case 8:{if((f|0)>=(b|0)){m=-1;break a}break}case 16:{if((m|0)>=88){if(p){m=-1;break a}if((o-c|0)>=3){m=-1;break a}if((i[o+-1>>0]|0)!=48){m=-1;break a}k[e>>2]=0;m=i[106657+f>>0]|0;k[d>>2]=o+1;i[o>>0]=m;m=0;break a}break}default:{}}m=i[106657+f>>0]|0;k[d>>2]=o+1;i[o>>0]=m;k[e>>2]=(k[e>>2]|0)+1;m=0}}while(0);return m|0}function Oi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=r;r=r+48|0;c=j+32|0;d=j+20|0;f=j+8|0;g=j;if(!(i[a+332>>0]|0)){b=cW(104)|0;h=a+76|0;er(b,(k[h>>2]|0)+592|0,k[a+328>>2]|0);e=a+112|0;k[e>>2]=b;b=a+64|0;l=i[b+11>>0]|0;if(((l<<24>>24<0?k[a+68>>2]|0:l&255)|0)==0?(cA(b,0,-1,115628,0)|0)==0:0)b=a+52|0;iI(d,b);b=k[e>>2]|0;if(!(i[(k[h>>2]|0)+248>>0]|0))HT(b,0,d);else{iI(f,d);mg(c,f);HT(b,0,c);p1(c);p1(f)}o7(k[e>>2]|0,k[(k[h>>2]|0)+184>>2]|0);l=(k[e>>2]|0)+16|0;k[g>>2]=129;k[g+4>>2]=0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];eq(l,a,c)|0;Ot(k[e>>2]|0);p1(d)}r=j;return}function Pi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0;d=r;r=r+32|0;e=d+16|0;m=d;f=d+8|0;X0(a);k[a+28>>2]=0;k[a+32>>2]=0;k[a+24>>2]=a+28;k[a>>2]=5972;k[a+16>>2]=5988;k[a+20>>2]=6016;h=a+36|0;k[h>>2]=6040;k[a+40>>2]=0;g=a+44|0;k[g>>2]=1520;l=a+48|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[l+20>>2]=0;l=a+72|0;i[a+80>>0]=0;k[a+76>>2]=-1;k[l>>2]=1500;k[a+84>>2]=0;k[m>>2]=1235;k[m+4>>2]=0;k[e>>2]=k[m>>2];k[e+4>>2]=k[m+4>>2];Ww(l,g,e)|0;k[h>>2]=6060;k[g>>2]=6084;k[a+88>>2]=b;b=Xaa(c)|0;k[a+92>>2]=k[b>>2];k[a+96>>2]=c;b=a+100|0;c=a+116|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[c>>2]=c;k[a+120>>2]=c;k[a+124>>2]=0;k[a+128>>2]=-1;k[a+132>>2]=-1;k[a+136>>2]=0;k[a+140>>2]=0;k[a+144>>2]=0;c=a+148|0;i[a+156>>0]=0;k[a+152>>2]=-1;k[c>>2]=1500;b=a+160|0;g=a+176|0;k[g>>2]=0;k[g+4>>2]=0;k[a+188>>2]=0;k[a+192>>2]=0;k[b>>2]=0;k[b+4>>2]=0;j[b+8>>1]=0;k[a+184>>2]=a+188;k[f>>2]=1250;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];jx(c,a,e)|0;r=d;return}function Qi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=r;r=r+48|0;c=j+32|0;d=j+20|0;f=j+8|0;g=j;if(!(i[a+136>>0]|0)){b=cW(104)|0;h=a+76|0;er(b,(k[h>>2]|0)+592|0,k[a+132>>2]|0);e=a+112|0;k[e>>2]=b;b=a+140|0;l=i[b+11>>0]|0;if(((l<<24>>24<0?k[a+144>>2]|0:l&255)|0)==0?(cA(b,0,-1,115628,0)|0)==0:0)b=a+64|0;iI(d,b);b=k[e>>2]|0;if(!(i[(k[h>>2]|0)+248>>0]|0))HT(b,0,d);else{iI(f,d);mg(c,f);HT(b,0,c);p1(c);p1(f)}o7(k[e>>2]|0,k[(k[h>>2]|0)+184>>2]|0);l=(k[e>>2]|0)+16|0;k[g>>2]=125;k[g+4>>2]=0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];hq(l,a,c)|0;Ot(k[e>>2]|0);p1(d)}r=j;return}function Ri(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=(c-b|0)/340|0;e=a+8|0;g=k[a>>2]|0;d=g;a:do if(f>>>0>(((k[e>>2]|0)-g|0)/340|0)>>>0){hF(a);if(f>>>0>12632256)J5(a);g=((k[e>>2]|0)-(k[a>>2]|0)|0)/340|0;h=g<<1;aO(a,g>>>0<6316128?(h>>>0<f>>>0?f:h):12632256);a=a+4|0;if((b|0)!=(c|0)){d=k[a>>2]|0;do{Nf(d,b);b=b+340|0;d=(k[a>>2]|0)+340|0;k[a>>2]=d}while((b|0)!=(c|0))}}else{h=a+4|0;a=((k[h>>2]|0)-g|0)/340|0;e=f>>>0>a>>>0;f=b+(a*340|0)|0;a=e?f:c;if((a|0)!=(b|0))do{Ke(d,b)|0;b=b+340|0;d=d+340|0}while((b|0)!=(a|0));if(!e){b=k[h>>2]|0;if((b|0)==(d|0))break;while(1){c=b+-340|0;k[h>>2]=c;fl(c);b=k[h>>2]|0;if((b|0)==(d|0))break a}}if((a|0)!=(c|0)){b=f;d=k[h>>2]|0;do{Nf(d,b);b=b+340|0;d=(k[h>>2]|0)+340|0;k[h>>2]=d}while((b|0)!=(c|0))}}while(0);return}function Si(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;j=r;r=r+16|0;i=j;k[i>>2]=b;f=b+2024|0;c=k[f>>2]|0;e=b+2164|0;d=k[e>>2]|0;h=b;if(c>>>0<=(Ub[k[(k[d>>2]|0)+64>>2]&511](d)|0)>>>0){d=1;do{d=d&(TJ(f,c,0)|0);c=c+1|0;l=k[e>>2]|0}while(c>>>0<=(Ub[k[(k[l>>2]|0)+64>>2]&511](l)|0)>>>0);if(d)g=5}else g=5;if((g|0)==5){d=k[a+908>>2]|0;e=a+904|0;a:do if((d|0)==(e|0))c=d;else{c=d;while(1){if((k[d+8>>2]|0)==(b|0))break a;d=k[c+4>>2]|0;c=d;if((c|0)==(e|0)){c=e;break}}}while(0);c=k[c+4>>2]|0;d=c;if((d|0)!=(e|0))do{c=c+8|0;l=k[(k[c>>2]|0)+2164>>2]|0;if(Ub[k[(k[l>>2]|0)+68>>2]&511](l)|0){l=k[(k[c>>2]|0)+2164>>2]|0;Sb[k[(k[l>>2]|0)+60>>2]&511](l,2147483647);l=k[(k[c>>2]|0)+2164>>2]|0;Rb[k[(k[l>>2]|0)+56>>2]&2047](l)}c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0));c=a+1040|0;d=k[c>>2]|0;if((d|0)==(k[a+1044>>2]|0))zp(a+1036|0,i);else{k[d>>2]=h;k[c>>2]=(k[c>>2]|0)+4}nL(a+992|0,0)}r=j;return}function Ti(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0;n=r;r=r+96|0;m=n;HA(m,b,c,d);o=m+44|0;k[o>>2]=0;e=m+48|0;k[e>>2]=0;k[m>>2]=15812;g=m+68|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;h=k[a+4>>2]|0;j=a+8|0;d=k[j>>2]|0;c=h+d|0;b=d+4|0;k[j>>2]=b;f=i[c>>0]|0;c=(l[c+2>>0]|0)<<8|(l[c+1>>0]|0)<<16|(l[c+3>>0]|0);k[o>>2]=f&255;k[e>>2]=c;e=m+52|0;b=h+b|0;c=e+16|0;do{i[e>>0]=i[b>>0]|0;e=e+1|0;b=b+1|0}while((e|0)<(c|0));b=d+20|0;k[j>>2]=b;if(!(f<<24>>24)){e=a+12|0;c=24;d=e;e=k[e>>2]|0}else{c=h+b|0;b=d+24|0;k[j>>2]=b;c=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);k[g>>2]=c;k[m+72>>2]=h+b;c=c<<4;b=b+c|0;k[j>>2]=b;d=a+12|0;e=k[d>>2]|0;if((b|0)>=(e|0)){k[d>>2]=0;k[j>>2]=0;e=0;b=0}c=(c|4)+24|0}g=h+b|0;o=b+4|0;k[j>>2]=o;b=(l[g+1>>0]|0)<<16|(l[g>>0]|0)<<24|(l[g+2>>0]|0)<<8|(l[g+3>>0]|0);k[m+76>>2]=b;k[m+80>>2]=h+o;o=o+b|0;k[j>>2]=o;if((o|0)>=(e|0)){k[d>>2]=0;k[j>>2]=0}o=k[a+28>>2]|0;hc[k[k[o>>2]>>2]&7](o,m,+p[a+40>>3]);O3(m);r=n;return c+b|0}function Ui(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=(c-b|0)/372|0;e=a+8|0;g=k[a>>2]|0;d=g;a:do if(f>>>0>(((k[e>>2]|0)-g|0)/372|0)>>>0){oF(a);if(f>>>0>11545611)J5(a);g=((k[e>>2]|0)-(k[a>>2]|0)|0)/372|0;h=g<<1;bO(a,g>>>0<5772805?(h>>>0<f>>>0?f:h):11545611);a=a+4|0;if((b|0)!=(c|0)){d=k[a>>2]|0;do{yf(d,b);b=b+372|0;d=(k[a>>2]|0)+372|0;k[a>>2]=d}while((b|0)!=(c|0))}}else{h=a+4|0;a=((k[h>>2]|0)-g|0)/372|0;e=f>>>0>a>>>0;f=b+(a*372|0)|0;a=e?f:c;if((a|0)!=(b|0))do{Ld(d,b)|0;b=b+372|0;d=d+372|0}while((b|0)!=(a|0));if(!e){b=k[h>>2]|0;if((b|0)==(d|0))break;while(1){c=b+-372|0;k[h>>2]=c;Ej(c);b=k[h>>2]|0;if((b|0)==(d|0))break a}}if((a|0)!=(c|0)){b=f;d=k[h>>2]|0;do{yf(d,b);b=b+372|0;d=(k[h>>2]|0)+372|0;k[h>>2]=d}while((b|0)!=(c|0))}}while(0);return}function Vi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;c=r;r=r+160|0;h=c+136|0;e=c;f=e+4|0;k[e>>2]=4176;d=e+56|0;k[d>>2]=4196;GK(e+56|0,f);k[e+128>>2]=0;k[e+132>>2]=-1;k[e>>2]=4216;k[e+56>>2]=4236;sT(f);k[f>>2]=1740;g=e+36|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[e+52>>2]=16;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;cn(f,h);p1(h);j=Tn(e,42766,31)|0;j=Tn(Nn(j,(i[b+12>>0]|0)!=0)|0,74996,6)|0;b=Tn(Ln(j,k[b+4>>2]|0)|0,42798,17)|0;Ln(b,a4(k[a+60>>2]|0)|0)|0;b=k[a+44>>2]|0;Yr(h,f);AE(b,h);p1(h);k[e>>2]=4216;k[d>>2]=4236;k[f>>2]=1740;p1(g);I3(f);Qaa(e,4248);N8(d);r=c;return}function Wi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0;n=r;r=r+64|0;f=n+24|0;g=n+48|0;l=n+40|0;h=n;if(!(j[a+8>>1]&255)){j[f+8>>1]=6;k[f+12>>2]=0;m=cW(12)|0;e=m+4|0;k[e>>2]=0;k[m+8>>2]=0;k[m>>2]=e;k[f>>2]=m;GA(a,f)|0;Lv(f)}k[l>>2]=0;m=l+4|0;k[m>>2]=b;d=k[a>>2]|0;c=d+4|0;c=jv(d,l,k[c>>2]|0,c)|0;d=c;do if((c|0)!=((k[a>>2]|0)+4|0)){b=c+16|0;e=k[b>>2]|0;if(!e)if((k[c+20>>2]|0)==(k[m>>2]|0)){i=11;break}else{i=7;break}else{c=k[l>>2]|0;if(!(FJ(e,c)|0))break;else{i=7;break}}}else i=7;while(0);if((i|0)==7){qw(h,l);c=h+8|0;Mg(c,113540);b=k[a>>2]|0;k[g>>2]=d;k[f>>2]=k[g>>2];b=(zr(b,f,h,h)|0)+16|0;Lv(c);c=k[h>>2]|0;if(c|0?(k[h+4>>2]|0)==1:0)wc(c);i=11}if((i|0)==11)c=k[l>>2]|0;if((c|0)!=0&(k[m>>2]|0)==1)wc(c);r=n;return b+8|0}function Xi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;f=r;r=r+192|0;h=f+168|0;b=f+12|0;c=f;d=a+4|0;g=c2(k[d>>2]|0)|0;e=a+100|0;j=k[e>>2]|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,53190,18);j=_q(g,j,h)|0;g=a+104|0;k[g>>2]=j;p1(h);if(!(k[g>>2]|0)){if((k[2783]|0)<5){Qd(b,52211,131,4,0,0,0);e=Tn(b,53209,42)|0;g=a+8|0;j=i[g+11>>0]|0;h=j<<24>>24<0;Tn(e,h?k[g>>2]|0:g,h?k[a+12>>2]|0:j&255)|0;hi(b)}j=k[d>>2]|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,53252,18);XD(j,a,2,c);p1(c)}else{j=lI(a)|0;k[a+108>>2]=j;Tk(a);yZ(k[e>>2]|0,k[(k[a+96>>2]|0)+12>>2]|0)}r=f;return}function Yi(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+64|0;a=f+48|0;b=f+36|0;c=f+24|0;d=f+12|0;e=f;g=i[109955]|0;if(!((g<<24>>24<0?k[27487]|0:g&255)|0)){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,32304,13);WD(c,32318,d);g=eZ(c,56450)|0;k[b>>2]=k[g>>2];k[b+4>>2]=k[g+4>>2];k[b+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;JU(e);g=i[e+11>>0]|0;h=g<<24>>24<0;g=nw(b,h?k[e>>2]|0:e,h?k[e+4>>2]|0:g&255)|0;k[a>>2]=k[g>>2];k[a+4>>2]=k[g+4>>2];k[a+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;if((i[109955]|0)<0){i[k[27486]>>0]=0;k[27487]=0}else{i[109944]=0;i[109955]=0}Qm(109944,0);k[27486]=k[a>>2];k[27487]=k[a+4>>2];k[27488]=k[a+8>>2];k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;p1(a);p1(e);p1(b);p1(c);p1(d)}r=f;return 109944}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0;m=r;r=r+64|0;f=m+24|0;g=m+48|0;l=m+40|0;i=m;if(!(j[a+8>>1]&255)){j[f+8>>1]=7;k[f+12>>2]=0;e=cW(12)|0;d=e+4|0;k[d>>2]=0;k[e+8>>2]=0;k[e>>2]=d;k[f>>2]=e;GA(a,f)|0;Lv(f)}NB(l,b,c?0:2);d=k[a>>2]|0;c=d+4|0;c=jv(d,l,k[c>>2]|0,c)|0;d=c;do if((c|0)!=((k[a>>2]|0)+4|0)){b=c+16|0;e=k[b>>2]|0;if(!e)if((k[c+20>>2]|0)==(k[l+4>>2]|0))break;else{h=7;break}else if(!(FJ(e,k[l>>2]|0)|0))break;else{h=7;break}}else h=7;while(0);if((h|0)==7){qw(i,l);c=i+8|0;Mg(c,113540);b=k[a>>2]|0;k[g>>2]=d;k[f>>2]=k[g>>2];b=(zr(b,f,i,i)|0)+16|0;Lv(c);c=k[i>>2]|0;if(c|0?(k[i+4>>2]|0)==1:0)wc(c)}b=b+8|0;c=k[l>>2]|0;if(c|0?(k[l+4>>2]|0)==1:0)wc(c);r=m;return b|0}function _i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;switch(b-a>>2|0){case 1:case 0:{d=1;break}case 2:{d=b+-4|0;if(cc[k[c>>2]&127](k[d>>2]|0,k[a>>2]|0)|0){c=k[a>>2]|0;k[a>>2]=k[d>>2];k[d>>2]=c;d=1}else d=1;break}case 3:{pr(a,a+4|0,b+-4|0,c)|0;d=1;break}case 4:{ju(a,a+4|0,a+8|0,b+-4|0,c)|0;d=1;break}case 5:{fr(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;d=1;break}default:{f=a+8|0;pr(a,a+4|0,f,c)|0;d=a+12|0;a:do if((d|0)==(b|0)){e=1;d=0}else{e=0;while(1){if(cc[k[c>>2]&127](k[d>>2]|0,k[f>>2]|0)|0){h=k[d>>2]|0;i=h;g=d;while(1){k[g>>2]=k[f>>2];if((f|0)==(a|0))break;g=f+-4|0;if(cc[k[c>>2]&127](i,k[g>>2]|0)|0){j=f;f=g;g=j}else break}k[f>>2]=h;e=e+1|0;if((e|0)==8){e=0;d=(d+4|0)==(b|0);break a}}f=d+4|0;if((f|0)==(b|0)){e=1;d=0;break}else{j=d;d=f;f=j}}}while(0);d=d|e}}return d|0}function $i(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;k[a>>2]=14244;f=a+40|0;k[f>>2]=14392;g=a+44|0;k[g>>2]=14420;h=a+60|0;k[h>>2]=14444;d=a+108|0;b=k[d>>2]|0;if(b|0)H5(b);e=a+100|0;b=k[e>>2]|0;if(b|0?(Th(b)|0)!=1:0)E5(k[e>>2]|0);b=k[a+96>>2]|0;if(b|0)Ub[k[(k[b>>2]|0)+44>>2]&511](b)|0;b=k[a+116>>2]|0;if(b|0){if((k[b+12>>2]|0)<0)wc(k[b+8>>2]|0);zba(b)}b=k[a+124>>2]|0;if(b|0){c=k[b+8>>2]|0;if(c|0)wc(c);zba(b)}b=k[d>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=k[e>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[a+224>>2]|0;if(b|0)wc(b);fD(a+184|0,k[a+188>>2]|0);qL(a+168|0);qL(a+152|0);d=a+76|0;k[d>>2]=2376;e=a+80|0;k[e>>2]=2400;up(d);$H(a+84|0);k[e>>2]=2024;eU(h);k[f>>2]=1972;k[g>>2]=2e3;Bo(f);dH(a+48|0,k[a+52>>2]|0);k[g>>2]=2024;lW(a);return}function aj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+192|0;c=l+184|0;f=l+164|0;g=l+176|0;h=l+8|0;j=l;e=a+4|0;k[a>>2]=1972;k[e>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;d=a+20|0;X0(d);k[a>>2]=14676;k[e>>2]=14704;k[d>>2]=14728;d=a+36|0;k[d>>2]=b;e=a+40|0;i[a+48>>0]=0;k[a+44>>2]=-1;k[e>>2]=1500;k[a+52>>2]=0;i[a+56>>0]=0;i[a+57>>0]=1;i[a+58>>0]=0;k[a+60>>2]=0;k[a+64>>2]=0;b=(w4(b)|0)+1196|0;if(!(k[b>>2]|0)){if((k[2783]|0)<5){Qd(h,55864,20,4,0,0,0);Tn(h,55879,44)|0;hi(h)}}else{h=(w4(k[d>>2]|0)|0)+1196|0;h=k[h>>2]|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,55856,7);k[g>>2]=355;k[g+4>>2]=0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];bk(h,f,a,c);p1(f)}k[j>>2]=1285;k[j+4>>2]=0;k[c>>2]=k[j>>2];k[c+4>>2]=k[j+4>>2];Kx(e,a,c)|0;r=l;return}function bj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=(c-b|0)/312|0;e=a+8|0;g=k[a>>2]|0;d=g;a:do if(f>>>0>(((k[e>>2]|0)-g|0)/312|0)>>>0){WF(a);if(f>>>0>13765920)J5(a);g=((k[e>>2]|0)-(k[a>>2]|0)|0)/312|0;h=g<<1;UO(a,g>>>0<6882960?(h>>>0<f>>>0?f:h):13765920);a=a+4|0;if((b|0)!=(c|0)){d=k[a>>2]|0;do{vg(d,b);b=b+312|0;d=(k[a>>2]|0)+312|0;k[a>>2]=d}while((b|0)!=(c|0))}}else{h=a+4|0;a=((k[h>>2]|0)-g|0)/312|0;e=f>>>0>a>>>0;f=b+(a*312|0)|0;a=e?f:c;if((a|0)!=(b|0))do{gf(d,b)|0;b=b+312|0;d=d+312|0}while((b|0)!=(a|0));if(!e){b=k[h>>2]|0;if((b|0)==(d|0))break;while(1){c=b+-312|0;k[h>>2]=c;Bm(c);b=k[h>>2]|0;if((b|0)==(d|0))break a}}if((a|0)!=(c|0)){b=f;d=k[h>>2]|0;do{vg(d,b);b=b+312|0;d=(k[h>>2]|0)+312|0;k[h>>2]=d}while((b|0)!=(c|0))}}while(0);return}function cj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;s=r;r=r+48|0;m=s+44|0;l=s+40|0;n=s+36|0;o=s+32|0;p=s;j=a+8|0;q=a+12|0;c=k[q>>2]|0;h=k[j>>2]|0;d=h;if((c|0)!=(h|0)){f=(b|0)==0;g=b+4|0;h=b+8|0;e=0;do{c=d+(e<<2)|0;do if(f){c=k[c>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+12>>2]&2047](c)}else{d=k[g>>2]|0;if((d|0)==(k[h>>2]|0)){zp(b,c);break}else{k[d>>2]=k[c>>2];k[g>>2]=(k[g>>2]|0)+4;break}}while(0);e=e+1|0;c=k[q>>2]|0;t=k[j>>2]|0;d=t}while(e>>>0<c-t>>2>>>0)}if((c|0)!=(d|0))k[q>>2]=c+(~((c+-4-d|0)>>>2)<<2);OW(p);if((a+24|0)!=(p|0)){k[n>>2]=k[p+4>>2];k[o>>2]=p+8;k[l>>2]=k[n>>2];k[m>>2]=k[o>>2];gh(a+28|0,l,m)}t=a+40|0;q=p+16|0;k[t>>2]=k[q>>2];k[t+4>>2]=k[q+4>>2];k[t+8>>2]=k[q+8>>2];k[t+12>>2]=k[q+12>>2];XV(p);i[a+56>>0]=0;i[a+4>>0]=0;r=s;return}function dj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0.0;h=r;r=r+32|0;g=h;d=k[a+4>>2]|0;e=k[a>>2]|0;c=((d-e|0)/96|0)+1|0;if(c>>>0>44739242)J5(a);j=((k[a+8>>2]|0)-e|0)/96|0;f=j<<1;f=j>>>0<22369621?(f>>>0<c>>>0?c:f):44739242;c=(d-e|0)/96|0;k[g+12>>2]=0;k[g+16>>2]=a+8;if(!f)d=0;else d=cW(f*96|0)|0;k[g>>2]=d;j=d+(c*96|0)|0;k[g+4>>2]=j;k[g+12>>2]=d+(f*96|0);iI(j,b);l=+p[b+24>>3];p[d+(c*96|0)+16>>3]=+p[b+16>>3];p[d+(c*96|0)+24>>3]=l;f=d+(c*96|0)+32|0;e=b+32|0;k[f>>2]=k[e>>2];k[f+4>>2]=k[e+4>>2];k[f+8>>2]=k[e+8>>2];k[f+12>>2]=k[e+12>>2];k[f+16>>2]=k[e+16>>2];i[f+20>>0]=i[e+20>>0]|0;iI(d+(c*96|0)+56|0,b+56|0);iI(d+(c*96|0)+68|0,b+68|0);f=d+(c*96|0)+80|0;b=b+80|0;k[f>>2]=k[b>>2];k[f+4>>2]=k[b+4>>2];k[f+8>>2]=k[b+8>>2];k[f+12>>2]=k[b+12>>2];k[g+8>>2]=j+96;fk(a,g);VB(g);r=h;return}function ej(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=r;r=r+16|0;c=b+8|0;d=b;e=a+4|0;k[a>>2]=1972;k[e>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;f=a+20|0;X0(f);k[a>>2]=5456;k[e>>2]=5484;k[f>>2]=5508;f=a+44|0;k[f>>2]=f;k[a+48>>2]=f;k[a+52>>2]=0;k[a+36>>2]=5620;k[a+40>>2]=5644;f=a+64|0;k[f>>2]=f;k[a+68>>2]=f;k[a+72>>2]=0;k[a+56>>2]=3288;k[a+60>>2]=3312;f=a+84|0;k[f>>2]=f;k[a+88>>2]=f;k[a+92>>2]=0;k[a+76>>2]=5668;k[a+80>>2]=5692;f=a+400|0;Nu(a+96|0,f);e=cW(8)|0;Aaa(e);k[e>>2]=5716;k[e+4>>2]=a;k[a+176>>2]=e;FY(a+180|0,e);k[a+204>>2]=0;cd(a+208|0,115628);i[a+392>>0]=0;i[a+393>>0]=0;$d(f);f=_J()|0;e=a+1032|0;k[e>>2]=f;k[e+4>>2]=M;e=a+1040|0;k[e>>2]=0;k[e+4>>2]=0;k[a+1048>>2]=-1;e=a+1052|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;p[a+1072>>3]=C;k[d>>2]=1246;k[d+4>>2]=0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];Zx(a+128|0,a,c);c=cW(1208)|0;Fc(c,a);k[a+200>>2]=c;r=b;return}function fj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;e=h;uh(a,b,c)|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,49797,11);TB(b,e,c+56|0)|0;p1(e);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,49809,15);d=WA(b,e)|0;p1(e);f=(d|0)!=0;if(f){k[e>>2]=0;g=e+4|0;k[g>>2]=0;k[e+8>>2]=0;jj(a,d,e)|0;a=c+64|0;if((a|0)!=(e|0))Kg(a,k[e>>2]|0,k[g>>2]|0);i[c+60>>0]=1;qH(e)}k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,49642,8);g=TB(b,e,c+52|0)|0;p1(e);r=h;return f|g|0}function gj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+32|0;d=j+16|0;e=j+12|0;h=j;k[h+4>>2]=0;k[h+8>>2]=0;i=h+4|0;k[h>>2]=i;b=k[a+184>>2]|0;g=a+188|0;f=i;if((b|0)!=(g|0)){c=b;while(1){c=c+16|0;k[e>>2]=f;k[d>>2]=k[e>>2];yr(h,d,c,c)|0;c=k[b+4>>2]|0;if(!c)while(1){c=k[b+8>>2]|0;if((k[c>>2]|0)==(b|0)){b=c;break}else b=c}else{b=c;while(1){c=k[b>>2]|0;if(!c)break;else b=c}}if((b|0)==(g|0))break;else c=b}b=k[h>>2]|0;if((b|0)!=(i|0)){c=b;while(1){cc[k[(k[a>>2]|0)+84>>2]&127](a,k[c+16>>2]|0)|0;b=k[c+4>>2]|0;if(!b)while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((b|0)==(i|0))break;else c=b}}}fD(h,k[i>>2]|0);r=j;return}function hj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+48|0;g=o+40|0;n=o+16|0;h=o+8|0;j=o+12|0;l=o+4|0;m=o;if(!(k[d+4>>2]&1)){k[h>>2]=-1;m=k[(k[a>>2]|0)+16>>2]|0;k[j>>2]=k[b>>2];k[l>>2]=k[c>>2];k[n>>2]=k[j>>2];k[g>>2]=k[l>>2];n=Tb[m&63](a,n,g,d,e,h)|0;k[b>>2]=n;switch(k[h>>2]|0){case 0:{i[f>>0]=0;break}case 1:{i[f>>0]=1;break}default:{i[f>>0]=1;k[e>>2]=4}}g=k[b>>2]|0}else{j=LZ(d)|0;k[g>>2]=j;l=k_(g,111636)|0;oU(j)|0;j=LZ(d)|0;k[g>>2]=j;a=k_(g,111644)|0;oU(j)|0;Sb[k[(k[a>>2]|0)+24>>2]&511](n,a);Sb[k[(k[a>>2]|0)+28>>2]&511](n+12|0,a);k[m>>2]=k[c>>2];a=n+24|0;k[g>>2]=k[m>>2];g=(zd(b,g,n,a,l,e,1)|0)==(n|0)&1;i[f>>0]=g;g=k[b>>2]|0;do{a=a+-12|0;_0(a)}while((a|0)!=(n|0))}r=o;return g|0}function ij(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+48|0;g=o+40|0;n=o+16|0;h=o+8|0;j=o+12|0;l=o+4|0;m=o;if(!(k[d+4>>2]&1)){k[h>>2]=-1;m=k[(k[a>>2]|0)+16>>2]|0;k[j>>2]=k[b>>2];k[l>>2]=k[c>>2];k[n>>2]=k[j>>2];k[g>>2]=k[l>>2];n=Tb[m&63](a,n,g,d,e,h)|0;k[b>>2]=n;switch(k[h>>2]|0){case 0:{i[f>>0]=0;break}case 1:{i[f>>0]=1;break}default:{i[f>>0]=1;k[e>>2]=4}}g=k[b>>2]|0}else{j=LZ(d)|0;k[g>>2]=j;l=k_(g,111604)|0;oU(j)|0;j=LZ(d)|0;k[g>>2]=j;a=k_(g,111620)|0;oU(j)|0;Sb[k[(k[a>>2]|0)+24>>2]&511](n,a);Sb[k[(k[a>>2]|0)+28>>2]&511](n+12|0,a);k[m>>2]=k[c>>2];a=n+24|0;k[g>>2]=k[m>>2];g=(Td(b,g,n,a,l,e,1)|0)==(n|0)&1;i[f>>0]=g;g=k[b>>2]|0;do{a=a+-12|0;p1(a)}while((a|0)!=(n|0))}r=o;return g|0}function jj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+48|0;j=n+32|0;l=n;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,49825,1);oq(j,b,l);p1(l);b=k[j>>2]|0;m=j+4|0;if((b|0)==(k[m>>2]|0))d=b;else{i=l+8|0;d=l+12|0;e=c+4|0;f=c+8|0;g=l+16|0;h=l+28|0;do{p[l>>3]=-1.0;k[i>>2]=-1;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;Wo(0,k[b>>2]|0,l)|0;a=k[e>>2]|0;if((a|0)==(k[f>>2]|0))Vn(c,l);else{k[a>>2]=k[l>>2];k[a+4>>2]=k[l+4>>2];k[a+8>>2]=k[l+8>>2];k[a+12>>2]=k[l+12>>2];iI(a+16|0,g);k[a+28>>2]=k[h>>2];k[e>>2]=(k[e>>2]|0)+32}p1(g);b=b+4|0}while((b|0)!=(k[m>>2]|0));d=k[j>>2]|0}a=d;if(d|0){if((b|0)!=(d|0))k[m>>2]=b+(~((b+-4-a|0)>>>2)<<2);zba(d)}r=n;return 1}function kj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;if((i[a+130>>0]|0?(i[a+133>>0]|0)==0:0)?(oN(a),m=b+12|0,!(cc[k[(k[a>>2]|0)+56>>2]&127](a,k[m>>2]|0)|0)):0){n=a+4|0;j=k[(k[n>>2]|0)+2056>>2]|0;o=cW(56)|0;f=k[m>>2]|0;g=((f|0)<0)<<31>>31;h=k[b+16>>2]|0;j=pA(a,j)|0;l=M;b=k[b+20>>2]|0;e=o+4|0;if(c){c=o+8|0;k[c>>2]=f;k[c+4>>2]=g;k[o+16>>2]=h;h=o+24|0;k[h>>2]=j;k[h+4>>2]=l;k[o+32>>2]=b;l=o+40|0;k[l>>2]=-1;k[l+4>>2]=-1;k[o+48>>2]=d;k[o>>2]=8156;k[e>>2]=16}else{k[e>>2]=4;k[o>>2]=8236;c=o+8|0;k[c>>2]=f;k[c+4>>2]=g;k[o+16>>2]=h;h=o+24|0;k[h>>2]=j;k[h+4>>2]=l;k[o+32>>2]=b;l=o+40|0;k[l>>2]=-1;k[l+4>>2]=-1;k[o+48>>2]=d}b=o+52|0;i[b>>0]=0;if((Vd(w4(k[n>>2]|0)|0)|0)==3){m=xA(a,k[m>>2]|0)|0;n=o+40|0;k[n>>2]=m;k[n+4>>2]=M;i[b>>0]=(k[a+204>>2]|0)>>>31}fB(k[a+108>>2]|0,o);Rb[k[(k[o>>2]|0)+4>>2]&2047](o)}return}function lj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0;n=b+248|0;l=n+11|0;g=i[l>>0]|0;m=b+252|0;f=k[m>>2]|0;if(((g<<24>>24<0?f:g&255)|0)==9){h=(cA(n,0,-1,75702,9)|0)==0&1;g=i[l>>0]|0;f=k[m>>2]|0}else h=0;i[a+14>>0]=h;if(((g<<24>>24<0?f:g&255)|0)==9){h=(cA(n,0,-1,74843,9)|0)==0&1;g=i[l>>0]|0;f=k[m>>2]|0}else h=0;i[a+15>>0]=h;if(((g<<24>>24<0?f:g&255)|0)==10)f=(cA(n,0,-1,74853,10)|0)==0&1;else f=0;i[a+16>>0]=f;k[a>>2]=d;k[a+4>>2]=e;e=(Ub[k[(k[b>>2]|0)+200>>2]&511](b)|0)&1;i[a+8>>0]=e;e=(Ub[k[(k[b>>2]|0)+204>>2]&511](b)|0)&1;i[a+9>>0]=e;e=j[c+452>>1]|0;i[a+10>>0]=e;i[a+11>>0]=(e&65535)>>>8;e=j[c+380>>1]|0;i[a+18>>0]=e;i[a+19>>0]=(e&65535)>>>8;e=(Ub[k[(k[b>>2]|0)+216>>2]&511](b)|0)&1;i[a+13>>0]=e;e=(Ub[k[(k[b>>2]|0)+208>>2]&511](b)|0)&1;i[a+12>>0]=e;if(!(i[c+384>>0]|0))f=0;else f=(vaa()|0)&1;i[a+17>>0]=f;c=j[c+456>>1]|0;i[a+20>>0]=c;i[a+21>>0]=(c&65535)>>>8;return}function mj(a){a=a|0;var b=0,c=0.0,d=0,e=0,f=0;f=a+288|0;d=j0(f)|0;b=d+8|0;e=i[b+11>>0]|0;if(((e<<24>>24<0?k[d+12>>2]|0:e&255)|0)==10){b=(cA(b,0,-1,47896,10)|0)==0;b=b?1:2}else b=2;e=a+4|0;d=(w4(k[e>>2]|0)|0)+1128|0;k[d>>2]=b;b=e7(f)|0;d=$L(f)|0;c=+p[b+304>>3];if(!(c>0.0))c=+p[a+248>>3];b=a+296|0;if(c>0.0?i6(b)|0:0){b=(w4(k[e>>2]|0)|0)+1144|0;p[b>>3]=c;b=0}else if(i6(b)|0)b=0;else{b=(w4(k[e>>2]|0)|0)+1144|0;p[b>>3]=C;b=(k[d+4>>2]|0)-(k[d>>2]|0)>>5>>>1}a=(w4(k[e>>2]|0)|0)+1056|0;a=Is(a,(k[e>>2]|0)+2088|0)|0;MM(a+8|0,CG(f)|0)|0;i[a+4>>0]=1;c=+(Rv(f)|0);c=+p[(k[d>>2]|0)+(b<<5)>>3]/c;f=(w4(k[e>>2]|0)|0)+1152|0;p[f>>3]=c;f=(w4(k[e>>2]|0)|0)+1076|0;AE(f,(k[e>>2]|0)+2088|0);return}function nj(a,b){a=a|0;b=b|0;do switch(k[b+4>>2]|0){case 12:{a=kh(0,b)|0;break}case 5:{a=Xl(0,b)|0;break}case 2:{a=JC(0,b)|0;break}case 1:{a=JC(0,b)|0;break}case 6:{a=It(0,b)|0;break}case 4:{a=Xm(0,b)|0;break}case 10:{a=Av(0,b)|0;break}case 11:{a=gz(0,b)|0;break}case 7:{a=dn(a,b)|0;break}case 13:{a=JC(0,b)|0;break}case 14:{a=lv(0,b)|0;break}case 15:{a=si(0,b)|0;break}case 16:{a=Xm(0,b)|0;break}case 8:{a=gz(0,b)|0;break}case 9:{a=gz(0,b)|0;break}case 17:{a=Lz(0,b)|0;break}case 18:{a=Wr(0,b)|0;break}case 19:{a=mu(0,b)|0;break}default:a=0}while(0);return a|0}function oj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=a+68|0;b=k[g>>2]|0;h=b+-1|0;d=k[a+64>>2]|0;a:do if((b|0)!=(d|0)){c=b+1|0;k[g>>2]=c;e=i[b>>0]|0;b:do switch(e<<24>>24){case 42:{if(!(QC(a)|0)){b=0;break a}break}case 47:{b=c;while(1){if((b|0)==(d|0))break b;c=b+1|0;k[g>>2]=c;switch(i[b>>0]|0){case 10:case 13:break b;default:b=c}}}default:{b=0;break a}}while(0);if(!(i[a+94>>0]|0))b=1;else{b=k[a+72>>2]|0;c:do if(b){d:do if(b>>>0<h>>>0)while(1){switch(i[b>>0]|0){case 13:case 10:{b=0;break c}default:{}}b=b+1|0;if(b>>>0>=h>>>0)break d}while(0);if(e<<24>>24==42?(f=k[g>>2]|0,h>>>0<f>>>0):0){b=h;while(1){switch(i[b>>0]|0){case 13:case 10:{b=0;break c}default:{}}b=b+1|0;if(b>>>0>=f>>>0){b=1;break c}}}else b=1}else b=0;while(0);$m(a,h,k[g>>2]|0,b);b=1}}else b=0;while(0);return b|0}function pj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+48|0;c=f+24|0;d=f+12|0;e=f;if(_Y(b,1)|0){ME(e,b,1);dt(d,e);g=xX(d,0,103341)|0;k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];k[c+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;g=i[c+11>>0]|0;h=g<<24>>24<0;nw(a+16|0,h?k[c>>2]|0:c,h?k[c+4>>2]|0:g&255)|0;p1(c);p1(d);p1(e)}if(_Y(b,2)|0){h=a+16|0;eZ(h,103283)|0;ME(d,b,2);dt(c,d);g=i[c+11>>0]|0;e=g<<24>>24<0;nw(h,e?k[c>>2]|0:c,e?k[c+4>>2]|0:g&255)|0;p1(c);p1(d);eZ(h,103283)|0}r=f;return}function qj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=r;r=r+192|0;b=e+24|0;c=e+12|0;d=e;if((k[2783]|0)<4){Qd(b,52211,1172,3,0,0,0);j=Tn(b,55442,39)|0;h=a+8|0;g=i[h+11>>0]|0;f=g<<24>>24<0;g=Tn(Tn(j,f?k[h>>2]|0:h,f?k[a+12>>2]|0:g&255)|0,55482,18)|0;f=a+4|0;Tn(Mn(g,(k[(k[f>>2]|0)+1472>>2]|0)/1e3|0)|0,55501,16)|0;hi(b);b=f}else b=a+4|0;b=k[b>>2]|0;if(!(i[a+130>>0]|0)){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,55534,33);XD(b,a,1,d);p1(d)}else{k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,55518,15);XD(b,a,1,c);p1(c)}r=e;return}function rj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0;h=k[a>>2]|0;i=a+4|0;c=k[i>>2]|0;g=b+4|0;if((c|0)==(h|0)){e=g;f=a;d=k[g>>2]|0;c=h}else{d=k[g>>2]|0;do{f=c;c=c+-56|0;k[d+-56>>2]=k[c>>2];e=d+-52|0;l=f+-52|0;k[e>>2]=k[l>>2];k[e+4>>2]=k[l+4>>2];k[e+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;l=d+-40|0;e=f+-40|0;k[l>>2]=k[e>>2];k[l+4>>2]=k[e+4>>2];k[l+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=d+-28|0;l=f+-28|0;k[e>>2]=k[l>>2];k[e+4>>2]=k[l+4>>2];k[e+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;l=d+-16|0;e=f+-16|0;k[l>>2]=k[e>>2];k[l+4>>2]=k[e+4>>2];k[l+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;j[d+-4>>1]=j[f+-4>>1]|0;d=(k[g>>2]|0)+-56|0;k[g>>2]=d}while((c|0)!=(h|0));e=g;f=a;c=k[a>>2]|0}k[f>>2]=d;k[e>>2]=c;l=b+8|0;h=k[i>>2]|0;k[i>>2]=k[l>>2];k[l>>2]=h;a=a+8|0;l=b+12|0;i=k[a>>2]|0;k[a>>2]=k[l>>2];k[l>>2]=i;k[b>>2]=k[e>>2];return}function sj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;m=o;n=a+4|0;d=k[n>>2]|0;e=k[a>>2]|0;c=((d-e|0)/12|0)+1|0;if(c>>>0>357913941)J5(a);l=a+8|0;j=((k[l>>2]|0)-e|0)/12|0;f=j<<1;f=j>>>0<178956970?(f>>>0<c>>>0?c:f):357913941;k[m+12>>2]=0;k[m+16>>2]=a+8;if(!f)g=0;else g=cW(f*12|0)|0;k[m>>2]=g;c=g+(((d-e|0)/12|0)*12|0)|0;h=m+8|0;i=m+4|0;k[i>>2]=c;j=m+12|0;k[j>>2]=g+(f*12|0);k[c>>2]=k[b>>2];k[c+4>>2]=k[b+4>>2];k[c+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[h>>2]=c+12;e=k[a>>2]|0;d=k[n>>2]|0;if((d|0)!=(e|0)){do{c=c+-12|0;d=d+-12|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[i>>2]=c}while((d|0)!=(e|0));e=k[a>>2]|0;d=k[n>>2]|0}k[a>>2]=c;k[i>>2]=e;k[n>>2]=k[h>>2];k[h>>2]=d;n=k[l>>2]|0;k[l>>2]=k[j>>2];k[j>>2]=n;k[m>>2]=k[i>>2];FG(m);r=o;return}function tj(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+160|0;c=d;switch(b|0){case 0:{c=cW(20)|0;f$(c,a);a=c;break}case 1:{c=cW(40)|0;zy(c,a);a=c;break}case 2:{c=cW(80)|0;oy(c,a);a=c;break}case 3:{c=cW(56)|0;zS(c,a);a=c;break}case 4:{c=cW(72)|0;M_(c,a);a=c;break}case 5:{c=cW(80)|0;MW(c,a);a=c;break}case 6:{c=cW(120)|0;Np(c,a);a=c;break}default:{if((k[2783]|0)<5){Qd(c,29209,144,4,0,0,0);b=Tn(Tn(Hn(Tn(c,29231,4)|0,a)|0,30253,3)|0,29236,26)|0;Tn(Mn(b,k[a+1524>>2]|0)|0,29263,37)|0;hi(c)}c=cW(80)|0;oy(c,a);a=c}}r=d;return a|0}function uj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0;m=a+11|0;f=i[m>>0]|0;h=f<<24>>24<0;if(h)l=k[a+4>>2]|0;else l=f&255;if(l>>>0<b>>>0)w5(a);g=l-b|0;f=g>>>0<c>>>0?g:c;if(h)c=(k[a+8>>2]&2147483647)+-1|0;else c=10;if((f-l+c|0)>>>0<e>>>0)ks(a,c,l+e-f-c|0,l,b,f,e,d);else{if(h)h=k[a>>2]|0;else h=a;do if((f|0)!=(e|0)){g=g-f|0;if(!g){c=b;j=25}else{c=h+b|0;if(f>>>0>e>>>0){if(e|0)qO(c|0,d|0,e|0)|0;qO(c+e|0,c+f|0,g|0)|0;break}do if(c>>>0<d>>>0&(h+l|0)>>>0>d>>>0){if((c+f|0)>>>0<=d>>>0){c=b;d=d+(e-f)|0;break}if(f|0)qO(c|0,d|0,f|0)|0;c=f+b|0;d=d+e|0;e=e-f|0;f=0}else c=b;while(0);j=h+c|0;qO(j+e|0,j+f|0,g|0)|0;j=25}}else{f=e;c=b;j=25}while(0);if((j|0)==25)if(!e)e=0;else qO(h+c|0,d|0,e|0)|0;e=e-f+l|0;if((i[m>>0]|0)<0)k[a+4>>2]=e;else i[m>>0]=e;i[h+e>>0]=0}return a|0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=r;r=r+176|0;d=g;f=g+156|0;rl(a,0,0,1,0,0,0);e=b+104|0;pz(a+368|0,e)|0;if((k[2783]|0)<4){Qd(d,47640,447,3,0,0,0);i=Tn(d,47656,10)|0;h=a+4|0;i=Tn(Tn(Mn(i,k[(k[h>>2]|0)+2088>>2]|0)|0,68429,2)|0,47791,25)|0;e=Tn(Mn(i,k[e>>2]|0)|0,47817,24)|0;Mn(e,X9(k[c>>2]|0)|0)|0;hi(d);d=h}else d=a+4|0;vD(a,b);h=(w4(k[d>>2]|0)|0)+356|0;i=X9(k[c>>2]|0)|0;KJ(f,k[c>>2]|0);WC(h,b+56|0,i,f);p1(f);r=g;return}function wj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=a+116|0;a:do if((i[d>>0]|0)!=b<<24>>24?(i[d>>0]=b,e=k[a+44>>2]|0,r=a+40|0,f=e,(f|0)!=(r|0)):0){m=a+52|0;q=k[m>>2]|0;n=q+2008|0;p=i[n+11>>0]|0;o=p<<24>>24<0;p=o?k[q+2012>>2]|0:p&255;q=(p|0)==0;a=e;b:while(1){g=a+40|0;e=i[g+11>>0]|0;h=e<<24>>24<0;e=e&255;do if(((h?k[a+44>>2]|0:e)|0)==(p|0)){j=k[g>>2]|0;l=h?j:g;d=o?k[n>>2]|0:n;if(h){if(q)break b;if(!(EI(l,d,p)|0))break b;else break}if(q)break b;if((j&255)<<24>>24==(i[d>>0]|0))do{e=e+-1|0;g=g+1|0;if(!e)break b;d=d+1|0}while((i[g>>0]|0)==(i[d>>0]|0))}while(0);a=k[f+4>>2]|0;f=a;if((f|0)==(r|0))break a}i[a+64>>0]=b;if(c?(t=k[m>>2]|0,s=k[t+452>>2]|0,t=t+448|0,(s|0)!=(t|0)):0){d=s;a=s;do{s=k[d+8>>2]|0;Rb[k[(k[s>>2]|0)+104>>2]&2047](s);d=k[a+4>>2]|0;a=d}while((a|0)!=(t|0))}}while(0);return}function xj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;l=i[b+11>>0]|0;m=l<<24>>24<0;n=m?k[b>>2]|0:b;l=m?k[b+4>>2]|0:l&255;do if(l>>>0>=3){m=n+l|0;j=n;g=m;a:do if((l|0)>=3?(h=m+-2|0,(h|0)!=(n|0)):0){d=j;c=n;while(1){while(1){if((i[c>>0]|0)==58){e=46821;f=c;break}c=c+1|0;if((c|0)==(h|0)){d=g;break a}else d=c}do{e=e+1|0;if((e|0)==46824)break a;f=f+1|0}while((i[f>>0]|0)==(i[e>>0]|0));c=c+1|0;if((c|0)==(h|0)){d=g;break}else d=c}}else d=g;while(0);c=d-j|0;if(!((d|0)==(m|0)|(c|0)==-1)){nD(a,b,0,gF(b,47,c+3|0)|0,b);break}if((l>>>0>2?(i[n>>0]|0)==47:0)?(i[n+1>>0]|0)==47:0)nD(a,b,0,gF(b,47,2)|0,b);else o=16}else o=16;while(0);if((o|0)==16){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,115628,0)}return}function yj(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0;t=r;r=r+48|0;l=t+32|0;q=t;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;s=b+64|0;if((s|0)!=(l|0))Kg(s,0,0);i[b+60>>0]=1;a=k[b+76>>2]|0;e=b+80|0;if((a|0)!=(k[e>>2]|0)){f=q+8|0;g=q+12|0;h=q+28|0;j=b+52|0;m=b+68|0;n=b+72|0;o=q+16|0;c=k[b+56>>2]|0;d=0.0;while(1){k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[h>>2]=c;k[f>>2]=k[j>>2];p[q>>3]=d;b=k[m>>2]|0;if((b|0)==(k[n>>2]|0))Vn(s,q);else{k[b>>2]=k[q>>2];k[b+4>>2]=k[q+4>>2];k[b+8>>2]=k[q+8>>2];k[b+12>>2]=k[q+12>>2];iI(b+16|0,o);k[b+28>>2]=k[h>>2];k[m>>2]=(k[m>>2]|0)+32}d=d+ +(k[f>>2]|0);p1(o);a=a+48|0;if((a|0)==(k[e>>2]|0))break;else c=c+1|0}}qH(l);r=t;return}function zj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+32|0;o=s+4|0;p=s;RR(o,b,k[c>>2]|0);q=j0(o)|0;if(q|0?(e=k[q+80>>2]|0,m=k[q+84>>2]|0,(e|0)!=(m|0)):0){n=o+16|0;g=b+12|0;h=q+56|0;j=d+4|0;l=d+8|0;do{f=e+44|0;MM(n,f)|0;b=cW(132)|0;kD(b,f,k[e+56>>2]|0,k[a>>2]|0);k[b+52>>2]=k[c>>2];MM(b+96|0,g)|0;MM(b+64|0,CG(o)|0)|0;f=(NW(q)|0)&1;i[b+48>>0]=f;k[b+76>>2]=k[e>>2];k[b+80>>2]=k[e+4>>2];MM(b+84|0,h)|0;k[p>>2]=b;f=k[j>>2]|0;if(f>>>0<(k[l>>2]|0)>>>0){k[f>>2]=b;k[j>>2]=(k[j>>2]|0)+4}else zp(d,p);e=e+340|0}while((e|0)!=(m|0))}P1(o);r=s;return}function Aj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+16|0;h=l+12|0;i=l;c=a+4|0;a:do if((DT((k[c>>2]|0)+2060|0,b)|0)!=0?!(bX((k[c>>2]|0)+2024|0,b)|0):0){k[i>>2]=0;j=i+4|0;k[j>>2]=0;k[i+8>>2]=0;f=k[c>>2]|0;c=k[f+452>>2]|0;f=f+448|0;do if((c|0)!=(f|0)){g=i+8|0;d=c;e=c;do{d=k[d+8>>2]|0;k[h>>2]=d;c=d;do if(Ny(a,b,d)|0){d=k[j>>2]|0;if((d|0)==(k[g>>2]|0)){zp(i,h);break}else{k[d>>2]=c;k[j>>2]=(k[j>>2]|0)+4;break}}while(0);d=k[e+4>>2]|0;e=d}while((e|0)!=(f|0));c=k[j>>2]|0;if((k[i>>2]|0)==(c|0)){if(!c)break;zba(c);break}vi(a,i,b);c=k[i>>2]|0;d=c;if(c|0){e=k[j>>2]|0;if((e|0)!=(c|0))k[j>>2]=e+(~((e+-4-d|0)>>>2)<<2);zba(c)}c=1;break a}while(0);c=0}else c=0;while(0);r=l;return c|0}function Bj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;g=r;r=r+192|0;d=g+168|0;h=g+156|0;e=g;f=a+4|0;k[a>>2]=6700;k[f>>2]=6760;k[a+8>>2]=6776;c=a+20|0;k[c>>2]=c;k[a+24>>2]=c;k[a+28>>2]=0;k[a+12>>2]=3288;k[a+16>>2]=3312;k[a+44>>2]=0;k[a+48>>2]=0;k[a+40>>2]=a+44;c=a+52|0;i[c>>0]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;l=b+920|0;j=yJ(k[l>>2]|0,a,d)|0;b=a+32|0;k[b>>2]=j;l=k[l>>2]|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,115628,0);j=_q(l,j,h)|0;a=a+36|0;k[a>>2]=j;p1(h);if(!(k[a>>2]|0)){if((k[2783]|0)<4){Qd(e,34236,21,3,0,0,0);Tn(e,34261,47)|0;hi(e)}i[c>>0]=1}else yZ(k[b>>2]|0,f);rB(d);r=g;return}function Cj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;m=p+16|0;l=p;h=p+32|0;n=a+28|0;g=k[n>>2]|0;k[h>>2]=g;o=a+20|0;g=(k[o>>2]|0)-g|0;k[h+4>>2]=g;k[h+8>>2]=b;k[h+12>>2]=c;i=a+60|0;j=a+44|0;f=2;b=g+c|0;while(1){if(!(k[27499]|0)){k[m>>2]=k[i>>2];k[m+4>>2]=h;k[m+8>>2]=f;e=y1(Kb(146,m|0)|0)|0}else{Bb(1303,a|0);k[l>>2]=k[i>>2];k[l+4>>2]=h;k[l+8>>2]=f;e=y1(Kb(146,l|0)|0)|0;Ha(0)}if((b|0)==(e|0)){b=6;break}if((e|0)<0){b=8;break}b=b-e|0;d=k[h+4>>2]|0;if(e>>>0<=d>>>0)if((f|0)==2){k[n>>2]=(k[n>>2]|0)+e;f=2;g=h}else g=h;else{g=k[j>>2]|0;k[n>>2]=g;k[o>>2]=g;e=e-d|0;f=f+-1|0;g=h+8|0;d=k[h+12>>2]|0}k[g>>2]=(k[g>>2]|0)+e;k[g+4>>2]=d-e;h=g}if((b|0)==6){m=k[j>>2]|0;k[a+16>>2]=m+(k[a+48>>2]|0);a=m;k[n>>2]=a;k[o>>2]=a}else if((b|0)==8){k[a+16>>2]=0;k[n>>2]=0;k[o>>2]=0;k[a>>2]=k[a>>2]|32;if((f|0)==2)c=0;else c=c-(k[h+4>>2]|0)|0}r=p;return c|0}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=r;r=r+160|0;e=g;d=k[a+296>>2]|0;do if(d){f=a+288|0;c=k[f>>2]|0;d=i[d+5>>0]|0;if(i[c+84>>0]|0)if(!(d<<24>>24)){Kl(a,b);break}else d=1;if(!((b|0)==0|d<<24>>24==0)){Kl(a,b);break}d=a+360|0;if(!(i[d>>0]|0)){i[d>>0]=1;Kl(a,b);break}if((k[2783]|0)<4){Qd(e,74588,478,3,0,0,0);Tn(Tn(e,74629,15)|0,74759,83)|0;hi(e);c=k[f>>2]|0}if(k[c+48>>2]|0)do{gE(c+28|0);c=k[f>>2]|0}while((k[c+48>>2]|0)!=0);if(k[c+72>>2]|0)do{gE(c+52|0);c=k[f>>2]|0}while((k[c+72>>2]|0)!=0)}else{i[a+360>>0]=1;Kl(a,b)}while(0);r=g;return}function Ej(a){a=a|0;az(a+360|0);qH(a+348|0);p1(a+324|0);p1(a+312|0);p1(a+296|0);p1(a+268|0);p1(a+256|0);qH(a+244|0);p1(a+220|0);p1(a+208|0);p1(a+192|0);p1(a+164|0);p1(a+152|0);p1(a+136|0);p1(a+108|0);p1(a+96|0);GH(a+80|0);rB(a+68|0);p1(a+56|0);p1(a+44|0);rB(a+32|0);p1(a+20|0);p1(a+8|0);return}
function id(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+480|0;m=t+472|0;f=t+468|0;e=t+312|0;o=t+156|0;p=t;if(i[a+858>>0]|0?(q=Zv(a)|0,(q|0)!=-1):0){k[m>>2]=2147483647;k[f>>2]=2147483647;n=k[a+916>>2]|0;c=k[n+204>>2]|0;if(c|0?i[n+765>>0]|0:0)fc[k[(k[c>>2]|0)+48>>2]&255](c,m,f);n=a+648|0;c=q+1|0;l=k[n>>2]|0;d=l;do if((c>>>0<(k[a+652>>2]|0)-l>>2>>>0?(b=k[d+(c<<2)>>2]|0,(k[a+860>>2]|0)>(k[b+60>>2]|0)):0)?(i[a+856>>0]|0)==0:0){l=k[d+(q<<2)>>2]|0;if((k[f>>2]|0)<=(k[l+80>>2]|0)?(k[m>>2]|0)<=(k[l+76>>2]|0):0)break;if((k[2783]|0)<3){Qd(e,27921,843,2,0,0,0);b=Tn(Tn(Tn(e,27948,6)|0,28542,20)|0,28563,8)|0;b=Tn(Mn(b,k[(k[(k[n>>2]|0)+(q<<2)>>2]|0)+60>>2]|0)|0,28572,4)|0;Mn(b,k[(k[(k[n>>2]|0)+(c<<2)>>2]|0)+60>>2]|0)|0;hi(e);b=k[(k[n>>2]|0)+(c<<2)>>2]|0}l=Xaa(b)|0;fe(a,k[l>>2]|0,0)}while(0);a:do if((q|0)>0){h=k[a+860>>2]|0;j=k[n>>2]|0;l=a+856|0;g=k[f>>2]|0;e=k[m>>2]|0;f=j+(q<<2)|0;c=q;while(1){d=c;c=c+-1|0;b=k[j+(c<<2)>>2]|0;if((h|0)<=(k[b+60>>2]|0))if(!c)break;else continue;if(!((i[l>>0]|0)!=0?(h|0)<=(k[(k[j+(d<<2)>>2]|0)+60>>2]|0):0)){if((h|0)<(k[(k[f>>2]|0)+60>>2]|0)){s=23;break}if((g|0)<(k[b+80>>2]|0)?(e|0)<(k[b+76>>2]|0):0){s=23;break}}if((d|0)<=1)break a}if((s|0)==23){if((k[2783]|0)<3){Qd(o,27921,865,2,0,0,0);b=Tn(Tn(Tn(o,27948,6)|0,28577,22)|0,28600,7)|0;b=Tn(Mn(b,k[(k[(k[n>>2]|0)+(q<<2)>>2]|0)+60>>2]|0)|0,28608,5)|0;Mn(b,k[(k[(k[n>>2]|0)+(c<<2)>>2]|0)+60>>2]|0)|0;hi(o);b=k[(k[n>>2]|0)+(c<<2)>>2]|0}s=Xaa(b)|0;fe(a,k[s>>2]|0,0);break}if((h|0)<(k[(k[f>>2]|0)+60>>2]|0)){if((k[2783]|0)<3){Qd(p,27921,874,2,0,0,0);b=Tn(Tn(Tn(p,27948,6)|0,28577,22)|0,28600,7)|0;b=Tn(Mn(b,k[(k[(k[n>>2]|0)+(q<<2)>>2]|0)+60>>2]|0)|0,28608,5)|0;Mn(b,k[(k[k[n>>2]>>2]|0)+60>>2]|0)|0;hi(p);b=k[n>>2]|0}else b=j;fe(a,k[(k[b>>2]|0)+60>>2]|0,0)}}while(0)}r=t;return}function jd(a,b,c,d,e,f,g,h,l,m,n,o,p,q,r){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;k[c>>2]=a;z=q+11|0;H=q+4|0;A=p+11|0;B=p+4|0;C=(d&512|0)==0;D=g+8|0;E=(r|0)>0;F=o+11|0;G=o+4|0;y=0;while(1){if((y|0)==4)break;a:do switch(i[l+y>>0]|0){case 0:{k[b>>2]=k[c>>2];break}case 1:{k[b>>2]=k[c>>2];w=cc[k[(k[g>>2]|0)+28>>2]&127](g,32)|0;x=k[c>>2]|0;k[c>>2]=x+1;i[x>>0]=w;break}case 3:{x=i[z>>0]|0;s=x<<24>>24<0;if((s?k[H>>2]|0:x&255)|0){w=i[(s?k[q>>2]|0:q)>>0]|0;x=k[c>>2]|0;k[c>>2]=x+1;i[x>>0]=w}break}case 2:{t=i[A>>0]|0;s=t<<24>>24<0;t=s?k[B>>2]|0:t&255;if(!(C|(t|0)==0)){x=s?k[p>>2]|0:p;u=x+t|0;s=k[c>>2]|0;t=x;while(1){if((t|0)==(u|0))break;i[s>>0]=i[t>>0]|0;s=s+1|0;t=t+1|0}k[c>>2]=s}break}case 4:{t=k[c>>2]|0;e=h?e+1|0:e;u=e;while(1){if(u>>>0>=f>>>0)break;s=i[u>>0]|0;if(s<<24>>24<=-1)break;if(!(j[(k[D>>2]|0)+(s<<24>>24<<1)>>1]&2048))break;u=u+1|0}if(E){v=r;while(1){s=(v|0)>0;if(!(u>>>0>e>>>0&s))break;x=u+-1|0;s=i[x>>0]|0;w=k[c>>2]|0;k[c>>2]=w+1;i[w>>0]=s;v=v+-1|0;u=x}if(s)w=cc[k[(k[g>>2]|0)+28>>2]&127](g,48)|0;else w=0;s=v;while(1){v=k[c>>2]|0;k[c>>2]=v+1;if((s|0)<=0)break;i[v>>0]=w;s=s+-1|0}i[v>>0]=m}b:do if((u|0)==(e|0)){w=cc[k[(k[g>>2]|0)+28>>2]&127](g,48)|0;x=k[c>>2]|0;k[c>>2]=x+1;i[x>>0]=w}else{x=i[F>>0]|0;s=x<<24>>24<0;if(!((s?k[G>>2]|0:x&255)|0)){w=-1;v=0;x=0}else{w=i[(s?k[o>>2]|0:o)>>0]|0;v=0;x=0}while(1){if((u|0)==(e|0))break b;if((x|0)==(w|0)){w=k[c>>2]|0;k[c>>2]=w+1;i[w>>0]=n;v=v+1|0;w=i[F>>0]|0;s=w<<24>>24<0;if(v>>>0<(s?k[G>>2]|0:w&255)>>>0){w=i[(s?k[o>>2]|0:o)+v>>0]|0;w=w<<24>>24==127?-1:w<<24>>24;s=0}else{w=x;s=0}}else s=x;I=u+-1|0;J=i[I>>0]|0;x=k[c>>2]|0;k[c>>2]=x+1;i[x>>0]=J;x=s+1|0;u=I}}while(0);s=k[c>>2]|0;if((t|0)!=(s|0))while(1){s=s+-1|0;if(t>>>0>=s>>>0)break a;J=i[t>>0]|0;i[t>>0]=i[s>>0]|0;i[s>>0]=J;t=t+1|0}break}default:{}}while(0);y=y+1|0}e=i[z>>0]|0;s=e<<24>>24<0;e=s?k[H>>2]|0:e&255;if(e>>>0>1){J=s?k[q>>2]|0:q;t=J+e|0;s=k[c>>2]|0;e=J;while(1){e=e+1|0;if((e|0)==(t|0))break;i[s>>0]=i[e>>0]|0;s=s+1|0}k[c>>2]=s}switch((d&176)<<24>>24){case 32:{k[b>>2]=k[c>>2];break}case 16:break;default:k[b>>2]=a}return}function kd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=r;r=r+48|0;y=E+32|0;C=E+28|0;x=E+24|0;g=E+16|0;z=E+20|0;A=E+8|0;f=c+4|0;k[x>>2]=k[f>>2];k[g>>2]=c;D=k[c+8>>2]|0;k[C>>2]=k[x>>2];k[y>>2]=k[g>>2];qe(C,y,D,E)|0;D=a+40|0;C=a+44|0;f=k[f>>2]|0;g=f;a:do if((g|0)==(c|0)){f=0;e=a+52|0;d=a+48|0}else{d=a+48|0;e=a+52|0;u=a+116|0;v=b+8|0;w=v+11|0;x=b+12|0;t=b+76|0;s=A+4|0;h=0;a=k[C>>2]|0;while(1){f=f+8|0;b=a;b:do if((b|0)==(D|0))B=5;else while(1){if(Jr(f,a+8|0)|0)break b;a=k[b+4>>2]|0;b=a;if((b|0)==(D|0)){B=5;break}}while(0);if((B|0)==5){B=0;if((k[d>>2]|0)>>>0>=(k[(k[e>>2]|0)+1852>>2]|0)>>>0){f=h;break a}}k[z>>2]=a;k[y>>2]=k[z>>2];n=jt(D,y,f)|0;q=n+8|0;h=n+40|0;l=k[e>>2]|0;b=l+2008|0;f=i[h+11>>0]|0;o=f<<24>>24<0;f=f&255;p=o?k[n+44>>2]|0:f;m=i[b+11>>0]|0;j=m<<24>>24<0;c:do if((p|0)==((j?k[l+2012>>2]|0:m&255)|0)){l=k[h>>2]|0;m=o?l:h;b=j?k[b>>2]|0:b;j=(p|0)==0;d:do if(o){if(!j?EI(m,b,p)|0:0)break c}else if(!j){if((l&255)<<24>>24==(i[b>>0]|0)){j=h;l=f}else break c;while(1){l=l+-1|0;j=j+1|0;if(!l)break d;b=b+1|0;if((i[j>>0]|0)!=(i[b>>0]|0))break c}}while(0);m=n+56|0;k[m>>2]=0;k[m+4>>2]=0;i[n+64>>0]=i[u>>0]|0}while(0);n=i[w>>0]|0;b=n<<24>>24<0;e:do if((p|0)==((b?k[x>>2]|0:n&255)|0)){l=k[h>>2]|0;m=o?l:h;b=b?k[v>>2]|0:v;j=(p|0)==0;f:do if(o){if(!j?EI(m,b,p)|0:0)break e}else if(!j){if((l&255)<<24>>24!=(i[b>>0]|0))break e;while(1){f=f+-1|0;h=h+1|0;if(!f)break f;b=b+1|0;if((i[h>>0]|0)!=(i[b>>0]|0))break e}}while(0);k[A>>2]=1252;k[s>>2]=0;k[y>>2]=k[A>>2];k[y+4>>2]=k[A+4>>2];Mx(t,q,y)}while(0);f=k[g+4>>2]|0;g=f;if((g|0)==(c|0)){f=1;break}else h=1}}while(0);a=k[(k[e>>2]|0)+1852>>2]|0;if((k[d>>2]|0)>>>0>a>>>0){d=k[C>>2]|0;if((a|0)>-1){if(a){b=a;while(1){d=k[d+4>>2]|0;if((b|0)>1)b=b+-1|0;else break}}}else{b=a;while(1){d=k[d>>2]|0;if((b|0)<-1)b=b+1|0;else break}}b=d;if((b|0)!=(D|0)){a=b;do{C=d+8|0;Rb[k[(k[C>>2]|0)+16>>2]&2047](C);d=k[a+4>>2]|0;a=d}while((a|0)!=(D|0));a=k[(k[e>>2]|0)+1852>>2]|0}Ck(D,a)}r=E;return f|0}function ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0.0;d=r;r=r+16|0;f=d;g=N6(b,83514)|0;e=a+36|0;Ix(f,(k[(k[e>>2]|0)+2004>>2]|0)+16|0);GA(g,f)|0;Lv(f);g=N6(b,55943)|0;Ix(f,(k[(k[e>>2]|0)+2004>>2]|0)+76|0);GA(g,f)|0;Lv(f);g=N6(b,55952)|0;Ix(f,(k[(k[e>>2]|0)+2004>>2]|0)+40|0);GA(g,f)|0;Lv(f);g=N6(b,55968)|0;Ix(f,(k[(k[e>>2]|0)+2004>>2]|0)+4|0);GA(g,f)|0;Lv(f);g=N6(b,55983)|0;Ix(f,(k[(k[e>>2]|0)+2004>>2]|0)+52|0);GA(g,f)|0;Lv(f);g=N6(b,56001)|0;fY(f,k[(k[(k[e>>2]|0)+2004>>2]|0)+100>>2]|0);GA(g,f)|0;Lv(f);g=N6(b,56009)|0;Ix(f,(k[e>>2]|0)+2008|0);GA(g,f)|0;Lv(f);g=N6(b,56016)|0;fY(f,k[(k[e>>2]|0)+2084>>2]|0);GA(g,f)|0;Lv(f);g=N6(b,56025)|0;fY(f,1);GA(g,f)|0;Lv(f);g=N6(b,56031)|0;DZ(f,k[(k[e>>2]|0)+2056>>2]|0);GA(g,f)|0;Lv(f);g=N6(b,56035)|0;DZ(f,k[(k[e>>2]|0)+2024>>2]|0);GA(g,f)|0;Lv(f);g=N6(b,56047)|0;DZ(f,x9((k[e>>2]|0)+2024|0)|0);GA(g,f)|0;Lv(f);g=N6(b,56058)|0;DZ(f,~~(+p[(k[e>>2]|0)+2112>>3]*.0009765625)>>>0);GA(g,f)|0;Lv(f);g=N6(b,56069)|0;c=(k[e>>2]|0)+2120|0;h=+p[c>>3];p[c>>3]=0.0;DZ(f,~~(h*.0009765625)>>>0);GA(g,f)|0;Lv(f);g=N6(b,56089)|0;DZ(f,~~(+p[(k[e>>2]|0)+2128>>3]*.0009765625)>>>0);GA(g,f)|0;Lv(f);g=N6(b,56098)|0;c=(k[e>>2]|0)+2136|0;h=+p[c>>3];p[c>>3]=0.0;DZ(f,~~(h*.0009765625)>>>0);GA(g,f)|0;Lv(f);g=N6(b,56116)|0;DZ(f,~~(+p[(k[e>>2]|0)+2096>>3]*.0009765625)>>>0);GA(g,f)|0;Lv(f);g=N6(b,56130)|0;c=(k[e>>2]|0)+2104|0;h=+p[c>>3];p[c>>3]=0.0;DZ(f,~~(h*.0009765625)>>>0);GA(g,f)|0;Lv(f);g=N6(b,56148)|0;fY(f,Bl(k[e>>2]|0)|0);GA(g,f)|0;Lv(f);g=N6(b,56156)|0;DZ(f,k[(k[e>>2]|0)+2152>>2]|0);GA(g,f)|0;Lv(f);g=N6(b,56164)|0;t$(f,N7(C9(k[e>>2]|0)|0)|0);GA(g,f)|0;Lv(f);g=N6(b,56171)|0;nF(f,56175);GA(g,f)|0;Lv(f);g=N6(b,56184)|0;c=a+64|0;DZ(f,(k[(k[e>>2]|0)+2152>>2]|0)-(k[c>>2]|0)|0);GA(g,f)|0;Lv(f);k[c>>2]=k[(k[e>>2]|0)+2152>>2];xk(a,b);c=j[a+56>>1]|0;if(!((c&255)<<24>>24))c=(c&65535)>>>8&255;else{Wd(a,b);c=i[a+57>>0]|0}if(c<<24>>24)Xh(a,b);r=d;return}function md(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;n=r;r=r+32|0;g=n+12|0;j=n;switch(Paa(b)|0){case 0:{k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,103285,4);cw(a,g);p1(g);break}case 1:{tx(g,k8(b)|0,M);cw(a,g);p1(g);break}case 2:{cD(g,W7(b)|0,M);cw(a,g);p1(g);break}case 3:{Gj(g,+gA(b));cw(a,g);p1(g);break}case 4:{Wc(g,Yaa(b)|0);cw(a,g);p1(g);break}case 5:{m=$A(b)|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,m?108754:108748,m?4:5);cw(a,g);p1(g);break}case 6:{uf(a,b);break}case 7:{wi(g,b);e=g+4|0;if((k[g>>2]|0)==(k[e>>2]|0)){k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,103343,2);cw(a,j);p1(j)}else{k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,103296,1);Ht(a);f=a+16|0;h=i[j+11>>0]|0;l=h<<24>>24<0;nw(f,l?k[j>>2]|0:j,l?k[j+4>>2]|0:h&255)|0;p1(j);eD(a);h=j+11|0;l=j+4|0;c=k[g>>2]|0;while(1){m=CZ(b,c)|0;Ut(a,m);if((i[c+11>>0]|0)<0)d=k[c>>2]|0;else d=c;Wc(j,d);Ht(a);d=i[h>>0]|0;o=d<<24>>24<0;nw(f,o?k[j>>2]|0:j,o?k[l>>2]|0:d&255)|0;p1(j);eZ(f,103346)|0;md(a,m);c=c+12|0;if((c|0)==(k[e>>2]|0))break;eZ(f,103294)|0;pj(a,m)}pj(a,m);QR(a);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,103298,1);Ht(a);o=i[j+11>>0]|0;m=o<<24>>24<0;nw(f,m?k[j>>2]|0:j,m?k[j+4>>2]|0:o&255)|0;p1(j)}nG(g);break}default:{}}r=n;return}function nd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;d=k[b>>2]|0;do if(d){c=k[b+4>>2]|0;if(!c){e=b;c=b;f=7;break}else while(1){d=k[c>>2]|0;if(!d){f=5;break}else c=d}}else{c=b;f=5}while(0);if((f|0)==5){d=k[c+4>>2]|0;if(!d){j=c+8|0;m=0;l=c;d=0;h=c}else{e=c;f=7}}if((f|0)==7){j=e+8|0;k[d+8>>2]=k[j>>2];m=1;l=e;h=c}c=k[j>>2]|0;if((k[c>>2]|0)==(l|0)){k[c>>2]=d;if((l|0)==(a|0)){c=d;g=0}else{c=a;g=k[(k[j>>2]|0)+4>>2]|0}}else{k[c+4>>2]=d;c=a;g=k[k[j>>2]>>2]|0}a=l+12|0;f=(i[a>>0]|0)!=0;if((l|0)!=(b|0)){n=b+8|0;e=k[n>>2]|0;k[j>>2]=e;if((k[k[n>>2]>>2]|0)==(b|0))k[e>>2]=l;else k[e+4>>2]=l;e=k[b>>2]|0;k[h>>2]=e;k[e+8>>2]=l;e=k[b+4>>2]|0;k[l+4>>2]=e;if(e|0)k[e+8>>2]=l;i[a>>0]=i[b+12>>0]|0;c=(c|0)==(b|0)?l:c}do if(f&(c|0)!=0){if(m){i[d+12>>0]=1;break}else e=c;while(1){c=g+8|0;d=k[c>>2]|0;a=g+12|0;f=(i[a>>0]|0)!=0;if((k[d>>2]|0)==(g|0)){if(f){c=g;a=e}else{i[a>>0]=1;i[d+12>>0]=0;UH(k[c>>2]|0);a=k[g+4>>2]|0;c=k[a>>2]|0;a=(e|0)==(a|0)?g:e}d=k[c>>2]|0;e=(d|0)==0;if(!e?(i[d+12>>0]|0)==0:0){f=48;break}n=k[c+4>>2]|0;if(n|0?(i[n+12>>0]|0)==0:0){f=47;break}i[c+12>>0]=0;c=k[c+8>>2]|0;d=c+12|0;if((c|0)==(a|0)|(i[d>>0]|0)==0){f=44;break}d=k[c+8>>2]|0;d=(k[d>>2]|0)==(c|0)?d+4|0:d;c=a}else{if(f)c=g;else{i[a>>0]=1;i[d+12>>0]=0;kI(k[c>>2]|0);n=k[g>>2]|0;c=k[n+4>>2]|0;e=(e|0)==(n|0)?g:e}a=k[c>>2]|0;if(a|0?(i[a+12>>0]|0)==0:0){f=33;break}d=k[c+4>>2]|0;if(d|0?(i[d+12>>0]|0)==0:0){f=34;break}i[c+12>>0]=0;c=k[c+8>>2]|0;if((c|0)==(e|0)){c=e;f=31;break}if(!(i[c+12>>0]|0)){f=31;break}d=k[c+8>>2]|0;d=(k[d>>2]|0)==(c|0)?d+4|0:d;c=e}g=k[d>>2]|0;e=c}if((f|0)==31){i[c+12>>0]=1;break}else if((f|0)==33){d=k[c+4>>2]|0;if(!d)f=35;else f=34}else if((f|0)==44){i[d>>0]=1;break}else if((f|0)==47)if(e)f=49;else f=48;if((f|0)==34)if(!(i[d+12>>0]|0))f=36;else f=35;else if((f|0)==48)if(!(i[d+12>>0]|0))f=50;else f=49;if((f|0)==35){i[a+12>>0]=1;i[c+12>>0]=0;UH(c);c=k[c+8>>2]|0;f=36}else if((f|0)==49){i[(k[c+4>>2]|0)+12>>0]=1;i[c+12>>0]=0;kI(c);c=k[c+8>>2]|0;f=50}if((f|0)==36){n=c+8|0;b=(k[n>>2]|0)+12|0;i[c+12>>0]=i[b>>0]|0;i[b>>0]=1;i[(k[c+4>>2]|0)+12>>0]=1;kI(k[n>>2]|0);break}else if((f|0)==50){n=c+8|0;b=(k[n>>2]|0)+12|0;i[c+12>>0]=i[b>>0]|0;i[b>>0]=1;i[(k[c>>2]|0)+12>>0]=1;UH(k[n>>2]|0);break}}while(0);return}function od(a,b,c,d,e,f,g,h,j,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;k[c>>2]=a;B=p+8+3|0;I=p+4|0;C=o+8+3|0;D=o+4|0;E=(d&512|0)==0;F=(q|0)>0;G=n+11|0;H=n+4|0;A=0;while(1){if((A|0)==4)break;a:do switch(i[j+A>>0]|0){case 0:{k[b>>2]=k[c>>2];break}case 1:{k[b>>2]=k[c>>2];y=cc[k[(k[g>>2]|0)+44>>2]&127](g,32)|0;z=k[c>>2]|0;k[c>>2]=z+4;k[z>>2]=y;break}case 3:{z=i[B>>0]|0;r=z<<24>>24<0;if((r?k[I>>2]|0:z&255)|0){y=k[(r?k[p>>2]|0:p)>>2]|0;z=k[c>>2]|0;k[c>>2]=z+4;k[z>>2]=y}break}case 2:{v=i[C>>0]|0;r=v<<24>>24<0;v=r?k[D>>2]|0:v&255;if(!(E|(v|0)==0)){u=r?k[o>>2]|0:o;s=u+(v<<2)|0;t=k[c>>2]|0;r=t;while(1){if((u|0)==(s|0))break;k[r>>2]=k[u>>2];r=r+4|0;u=u+4|0}k[c>>2]=t+(v<<2)}break}case 4:{s=k[c>>2]|0;e=h?e+4|0:e;r=e;while(1){if(r>>>0>=f>>>0)break;if(!(Yb[k[(k[g>>2]|0)+12>>2]&31](g,2048,k[r>>2]|0)|0))break;r=r+4|0}if(F){u=q;while(1){t=(u|0)>0;if(!(r>>>0>e>>>0&t))break;z=r+-4|0;x=k[z>>2]|0;y=k[c>>2]|0;k[c>>2]=y+4;k[y>>2]=x;u=u+-1|0;r=z}if(t)w=cc[k[(k[g>>2]|0)+44>>2]&127](g,48)|0;else w=0;v=k[c>>2]|0;while(1){t=v+4|0;if((u|0)<=0)break;k[v>>2]=w;u=u+-1|0;v=t}k[c>>2]=t;k[v>>2]=l}if((r|0)==(e|0)){y=cc[k[(k[g>>2]|0)+44>>2]&127](g,48)|0;z=k[c>>2]|0;r=z+4|0;k[c>>2]=r;k[z>>2]=y}else{z=i[G>>0]|0;y=z<<24>>24<0;z=y?k[H>>2]|0:z&255;if(!z){v=-1;t=0;w=0}else{v=i[(y?k[n>>2]|0:n)>>0]|0;t=0;w=0}while(1){if((r|0)==(e|0))break;u=k[c>>2]|0;if((w|0)==(v|0)){x=u+4|0;k[c>>2]=x;k[u>>2]=m;t=t+1|0;if(t>>>0<z>>>0){v=i[(y?k[n>>2]|0:n)+t>>0]|0;v=v<<24>>24==127?-1:v<<24>>24;w=0;u=x}else{v=w;w=0;u=x}}x=r+-4|0;J=k[x>>2]|0;k[c>>2]=u+4;k[u>>2]=J;w=w+1|0;r=x}r=k[c>>2]|0}if((s|0)!=(r|0))while(1){r=r+-4|0;if(s>>>0>=r>>>0)break a;J=k[s>>2]|0;k[s>>2]=k[r>>2];k[r>>2]=J;s=s+4|0}break}default:{}}while(0);A=A+1|0}e=i[B>>0]|0;r=e<<24>>24<0;e=r?k[I>>2]|0:e&255;if(e>>>0>1){r=r?k[p>>2]|0:p;u=r+4|0;r=r+(e<<2)|0;s=k[c>>2]|0;t=r-u|0;e=s;while(1){if((u|0)==(r|0))break;k[e>>2]=k[u>>2];e=e+4|0;u=u+4|0}k[c>>2]=s+(t>>>2<<2)}switch((d&176)<<24>>24){case 32:{k[b>>2]=k[c>>2];break}case 16:break;default:k[b>>2]=a}return}function pd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+80|0;A=F+72|0;y=F+64|0;x=F+56|0;t=F+16|0;u=F+8|0;v=F+48|0;z=F+40|0;p=F+32|0;q=F+24|0;s=F;D=b+4|0;n=k[D>>2]|0;C=b+16|0;j=k[C>>2]|0;e=n+(j>>>10<<2)|0;E=b+8|0;o=(k[E>>2]|0)==(n|0);if(o)m=0;else m=(k[e>>2]|0)+((j&1023)<<2)|0;l=e;d=k[c+4>>2]|0;if((d|0)!=(m|0)){f=k[c>>2]|0;f=(d-(k[f>>2]|0)>>2)+(f-l<<8)-(m-(k[e>>2]|0)>>2)|0;do if(f){c=(m-(k[e>>2]|0)>>2)+f|0;if((c|0)>0){i=e+(c>>>10<<2)|0;e=i;i=(k[i>>2]|0)+((c&1023)<<2)|0;w=0;break}else{i=1023-c|0;w=e+(((i|0)/-1024|0)<<2)|0;e=w;i=(k[w>>2]|0)+(1023-((i|0)%1024|0)<<2)|0;w=0;break}}else{f=0;e=l;i=m;w=1}while(0);g=b+20|0;h=k[g>>2]|0;if(f>>>0>(h+-1|0)>>>1>>>0){c=e;v=i-(k[e>>2]|0)|0;d=v>>2;b=d+1|0;if((v|0)>-4){d=c+(b>>>10<<2)|0;c=(k[d>>2]|0)+((b&1023)<<2)|0}else{v=1022-d|0;d=c+(((v|0)/-1024|0)<<2)|0;c=(k[d>>2]|0)+(1023-((v|0)%1024|0)<<2)|0}k[p>>2]=d;k[p+4>>2]=c;c=j+h|0;d=n+(c>>>10<<2)|0;if(o)c=0;else c=(k[d>>2]|0)+((c&1023)<<2)|0;k[q>>2]=d;k[q+4>>2]=c;k[s>>2]=e;k[s+4>>2]=i;k[x>>2]=k[p>>2];k[x+4>>2]=k[p+4>>2];k[y>>2]=k[q>>2];k[y+4>>2]=k[q+4>>2];k[A>>2]=k[s>>2];k[A+4>>2]=k[s+4>>2];ti(z,x,y,A);A=(k[g>>2]|0)+-1|0;k[g>>2]=A;d=k[E>>2]|0;z=d-(k[D>>2]|0)|0;c=k[C>>2]|0;if((((z|0)==0?0:(z<<8)+-1|0)-(A+c)|0)>>>0>2047){zba(k[d+-4>>2]|0);k[E>>2]=(k[E>>2]|0)+-4;c=k[C>>2]|0}e=c;d=w}else{c=i;d=w;B=10}}else{f=0;e=l;c=m;d=1;g=b+20|0;B=10}if((B|0)==10){k[t>>2]=l;k[t+4>>2]=m;k[u>>2]=e;k[u+4>>2]=c;b=e;B=c-(k[e>>2]|0)|0;c=B>>2;e=c+1|0;if((B|0)>-4){B=b+(e>>>10<<2)|0;c=(k[B>>2]|0)+((e&1023)<<2)|0;e=B}else{c=1022-c|0;e=b+(((c|0)/-1024|0)<<2)|0;c=(k[e>>2]|0)+(1023-((c|0)%1024|0)<<2)|0}k[v>>2]=e;k[v+4>>2]=c;k[x>>2]=k[t>>2];k[x+4>>2]=k[t+4>>2];k[y>>2]=k[u>>2];k[y+4>>2]=k[u+4>>2];k[A>>2]=k[v>>2];k[A+4>>2]=k[v+4>>2];Oh(z,x,y,A);k[g>>2]=(k[g>>2]|0)+-1;c=(k[C>>2]|0)+1|0;k[C>>2]=c;if(c>>>0>2047){zba(k[k[D>>2]>>2]|0);k[D>>2]=(k[D>>2]|0)+4;e=(k[C>>2]|0)+-1024|0;k[C>>2]=e}else e=c}D=k[D>>2]|0;b=D+(e>>>10<<2)|0;if((k[E>>2]|0)==(D|0)){c=0;e=0}else{c=0;e=(k[b>>2]|0)+((e&1023)<<2)|0}E=a;k[E>>2]=c|b;k[E+4>>2]=e;do if(!d){d=a+4|0;c=(e-(k[b>>2]|0)>>2)+f|0;if((c|0)>0){E=b+(c>>>10<<2)|0;k[a>>2]=E;k[d>>2]=(k[E>>2]|0)+((c&1023)<<2);break}else{E=1023-c|0;D=b+(((E|0)/-1024|0)<<2)|0;k[a>>2]=D;k[d>>2]=(k[D>>2]|0)+(1023-((E|0)%1024|0)<<2);break}}while(0);r=F;return}function qd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0.0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+160|0;z=F+144|0;C=F;B=C+8|0;k[B>>2]=1664;D=C+12|0;k[C>>2]=1704;E=C+64|0;k[E>>2]=1724;k[C+4>>2]=0;GK(C+64|0,D);k[C+136>>2]=0;k[C+140>>2]=-1;k[C>>2]=1644;k[C+64>>2]=1684;k[B>>2]=1664;sT(D);k[D>>2]=1740;B=C+44|0;k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;k[B+12>>2]=0;k[C+60>>2]=24;k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;cn(D,z);p1(z);x=b+11|0;g=i[x>>0]|0;w=g<<24>>24<0;f=k[b>>2]|0;h=w?f:b;y=b+4|0;e=k[y>>2]|0;A=C+8|0;if((w?e:g&255)|0){q=(c|0)==0;s=c+28|0;t=(d|0)==0;u=z+11|0;v=z+4|0;w=d+44|0;o=d+56|0;d=-1;n=0;m=-1;while(1){l=g<<24>>24<0?f:b;e=l+n|0;f=i[e>>0]|0;do if(f<<24>>24==36){if((m|0)<0){qB(A,h,e-h|0)|0;l=n;g=i[x>>0]|0;break}h=l+m+1|0;g=((d|0)<0?n:d)-m+-1|0;if((d|0)>0?(n+-1-d|0)>1:0){f=i[l+(d+1)>>0]|0;e=z5(l+d+2|0,0,10)|0}else{f=32;e=1}k[C+(k[(k[C>>2]|0)+-12>>2]|0)+12>>2]=e;k[C+(k[(k[C>>2]|0)+-12>>2]|0)+76>>2]=f<<24>>24;do if(g){if(!(eE(49440,h,g)|0)){k[C+(k[(k[C>>2]|0)+-12>>2]|0)+8>>2]=0;m=A+(k[(k[A>>2]|0)+-12>>2]|0)+4|0;k[m>>2]=k[m>>2]&-261|4;if(q)j=-1.0;else j=+p[c>>3];Qn(A,j)|0;break}if(!(eE(49445,h,g)|0)){if(q)e=-1;else e=k[s>>2]|0;Ln(A,e)|0;break}if(!(eE(49452,h,g)|0)){if(t){k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;wE(z,49469,3)}else iI(z,w);m=i[u>>0]|0;l=m<<24>>24<0;Tn(A,l?k[z>>2]|0:z,l?k[v>>2]|0:m&255)|0;p1(z);break}else{if(eE(49473,h,g)|0)break;if(t)e=-1;else e=k[o>>2]|0;Mn(A,e)|0;break}}else{i[z>>0]=36;Tn(A,z,1)|0}while(0);g=i[x>>0]|0;l=-1;d=-1;h=(g<<24>>24<0?k[b>>2]|0:b)+n+1|0}else{l=m;d=(m|0)>-1&f<<24>>24==37?n:d}while(0);n=n+1|0;e=k[y>>2]|0;f=k[b>>2]|0;if(n>>>0>=(g<<24>>24<0?e:g&255)>>>0)break;else m=l}}z=g<<24>>24<0;qB(A,h,(z?f:b)+(z?e:g&255)-h|0)|0;Yr(a,D);k[C>>2]=1644;k[E>>2]=1684;k[A>>2]=1664;k[D>>2]=1740;p1(B);I3(D);Qaa(C,1800);N8(E);r=F;return}function rd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;i=o+4|0;f=o;b=a+16|0;c=k[b>>2]|0;do if(c>>>0>340){k[b>>2]=c+-341;l=a+4|0;j=k[l>>2]|0;n=k[j>>2]|0;j=j+4|0;k[l>>2]=j;m=a+8|0;h=k[m>>2]|0;i=a+12|0;g=k[i>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=j;else{qO(e|0,j|0,b|0)|0;b=k[l>>2]|0}a=e+(c<<2)|0;k[m>>2]=a;k[l>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((j|0)==(h|0))b=f;else{d=b;b=f;c=j;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[l>>2]=f;k[m>>2]=b;k[i>>2]=g;if(c){zba(c);b=k[m>>2]|0}}else b=h;while(0);k[b>>2]=n;k[m>>2]=(k[m>>2]|0)+4}else{n=a+8|0;b=k[n>>2]|0;m=a+4|0;c=b-(k[m>>2]|0)|0;l=a+12|0;d=k[l>>2]|0;e=d-(k[a>>2]|0)|0;if(c>>>0>=e>>>0){b=e>>1;b=(b|0)==0?1:b;k[i+16>>2]=a+12;j=cW(b<<2)|0;k[i>>2]=j;g=j+(c>>2<<2)|0;h=i+8|0;k[h>>2]=g;e=i+4|0;k[e>>2]=g;g=i+12|0;k[g>>2]=j+(b<<2);b=cW(4092)|0;k[f>>2]=b;$l(i,f);b=k[n>>2]|0;c=k[m>>2]|0;if((b|0)!=(c|0)){do{b=b+-4|0;Tl(i,b);c=k[m>>2]|0}while((b|0)!=(c|0));b=k[n>>2]|0}d=k[a>>2]|0;k[a>>2]=k[i>>2];k[i>>2]=d;k[m>>2]=k[e>>2];k[e>>2]=c;k[n>>2]=k[h>>2];k[h>>2]=b;a=k[l>>2]|0;k[l>>2]=k[g>>2];k[g>>2]=a;if((b|0)!=(c|0))k[h>>2]=b+(~((b+-4-c|0)>>>2)<<2);if(d|0)zba(d);break}if((d|0)!=(b|0)){n=cW(4092)|0;k[i>>2]=n;$l(a,i);break}j=cW(4092)|0;k[i>>2]=j;Tl(a,i);i=k[m>>2]|0;j=k[i>>2]|0;i=i+4|0;k[m>>2]=i;h=k[n>>2]|0;g=k[l>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(i>>>0>c>>>0){b=i;d=((b-d>>2)+1|0)/-2|0;e=i+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=i;else{qO(e|0,i|0,b|0)|0;b=k[m>>2]|0}a=e+(c<<2)|0;k[n>>2]=a;k[m>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((i|0)==(h|0))b=f;else{d=b;b=f;c=i;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[m>>2]=f;k[n>>2]=b;k[l>>2]=g;if(c){zba(c);b=k[n>>2]|0}}else b=h;while(0);k[b>>2]=j;k[n>>2]=(k[n>>2]|0)+4}while(0);r=o;return}function sd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;i=o+4|0;f=o;b=a+16|0;c=k[b>>2]|0;do if(c>>>0>511){k[b>>2]=c+-512;l=a+4|0;j=k[l>>2]|0;n=k[j>>2]|0;j=j+4|0;k[l>>2]=j;m=a+8|0;h=k[m>>2]|0;i=a+12|0;g=k[i>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=j;else{qO(e|0,j|0,b|0)|0;b=k[l>>2]|0}a=e+(c<<2)|0;k[m>>2]=a;k[l>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((j|0)==(h|0))b=f;else{d=b;b=f;c=j;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[l>>2]=f;k[m>>2]=b;k[i>>2]=g;if(c){zba(c);b=k[m>>2]|0}}else b=h;while(0);k[b>>2]=n;k[m>>2]=(k[m>>2]|0)+4}else{n=a+8|0;b=k[n>>2]|0;m=a+4|0;c=b-(k[m>>2]|0)|0;l=a+12|0;d=k[l>>2]|0;e=d-(k[a>>2]|0)|0;if(c>>>0>=e>>>0){b=e>>1;b=(b|0)==0?1:b;k[i+16>>2]=a+12;j=cW(b<<2)|0;k[i>>2]=j;g=j+(c>>2<<2)|0;h=i+8|0;k[h>>2]=g;e=i+4|0;k[e>>2]=g;g=i+12|0;k[g>>2]=j+(b<<2);b=cW(4096)|0;k[f>>2]=b;$l(i,f);b=k[n>>2]|0;c=k[m>>2]|0;if((b|0)!=(c|0)){do{b=b+-4|0;Tl(i,b);c=k[m>>2]|0}while((b|0)!=(c|0));b=k[n>>2]|0}d=k[a>>2]|0;k[a>>2]=k[i>>2];k[i>>2]=d;k[m>>2]=k[e>>2];k[e>>2]=c;k[n>>2]=k[h>>2];k[h>>2]=b;a=k[l>>2]|0;k[l>>2]=k[g>>2];k[g>>2]=a;if((b|0)!=(c|0))k[h>>2]=b+(~((b+-4-c|0)>>>2)<<2);if(d|0)zba(d);break}if((d|0)!=(b|0)){n=cW(4096)|0;k[i>>2]=n;$l(a,i);break}j=cW(4096)|0;k[i>>2]=j;Tl(a,i);i=k[m>>2]|0;j=k[i>>2]|0;i=i+4|0;k[m>>2]=i;h=k[n>>2]|0;g=k[l>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(i>>>0>c>>>0){b=i;d=((b-d>>2)+1|0)/-2|0;e=i+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=i;else{qO(e|0,i|0,b|0)|0;b=k[m>>2]|0}a=e+(c<<2)|0;k[n>>2]=a;k[m>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((i|0)==(h|0))b=f;else{d=b;b=f;c=i;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[m>>2]=f;k[n>>2]=b;k[l>>2]=g;if(c){zba(c);b=k[n>>2]|0}}else b=h;while(0);k[b>>2]=j;k[n>>2]=(k[n>>2]|0)+4}while(0);r=o;return}function td(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+208|0;n=o+168|0;c=o+12|0;d=o;g=b+40|0;l=g;l=eH(a,k[l>>2]|0,k[l+4>>2]|0)|0;m=g;k[m>>2]=l;k[m+4>>2]=((l|0)<0)<<31>>31;if(rc(a,b)|0){e=a+116|0;d=k[e>>2]|0;if(!d){d=cW(16)|0;m=g;c=b+48|0;VU(d,k[m>>2]|0,k[m+4>>2]|0,k[c>>2]|0);k[e>>2]=d;d=cW(12)|0;e=k[c>>2]|0;k[d>>2]=k[g>>2];k[d+4>>2]=0;k[d+8>>2]=0;pI(d,e);k[a+124>>2]=d;d=a+4|0;e=k[d>>2]|0;if((i[e+1439>>0]|0)!=0?(f=k[e+1576>>2]|0,(f|0)>1):0){m=cW(16)|0;l=g;l=A5(k[l>>2]|0,k[l+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;VU(m,l,M,(k[c>>2]|0)/(f|0)|0);k[a+120>>2]=m;m=d}else m=d}else{c=b+48|0;D5(d,k[c>>2]|0);f=g;mO(k[e>>2]|0,k[f>>2]|0,k[f+4>>2]|0);e=a+124|0;pI(k[e>>2]|0,k[c>>2]|0);Tt(k[e>>2]|0,k[g>>2]|0);e=a+120|0;f=k[e>>2]|0;d=a+4|0;if(!f)m=d;else{m=k[(k[d>>2]|0)+1576>>2]|0;D5(f,(k[c>>2]|0)/(m|0)|0);l=k[e>>2]|0;j=g;m=A5(k[j>>2]|0,k[j+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;mO(l,m,M);m=d}}k[a+144>>2]=k[g>>2];k[a+148>>2]=k[b+32>>2];l=i[b+52>>0]|0;i[a+134>>0]=l;M7(k[a+112>>2]|0,l<<24>>24?(i[(k[m>>2]|0)+1609>>0]|0)!=0:0);l=a+216|0;ku(l,k[g>>2]|0);WI(l,k[c>>2]|0);l=k[m>>2]|0;j=k[l+2024>>2]|0;Hu(n,l+2024|0,0);l=n+8|0;h=(x9(k[l>>2]|0)|0)==0;c=k[l>>2]|0;f=c;d=k[f>>2]|0;if(!h){h=n+12|0;e=0;g=0;b=k[f+4>>2]|0;while(1){f=((g|0)<0)<<31>>31;b=y0(d|0,b|0,g|0,f|0)|0;if(TJ(c,b,M)|0){d=k[m>>2]|0;b=k[l>>2]|0;b=y0(k[b>>2]|0,k[b+4>>2]|0,g|0,f|0)|0;b=(DT(d+2060|0,b)|0)+20|0;k[(k[h>>2]|0)+(e<<2)>>2]=k[b>>2];e=e+1|0}g=g+1|0;b=g>>>0<(x9(k[l>>2]|0)|0)>>>0;c=k[l>>2]|0;f=c;d=k[f>>2]|0;if(!b)break;else b=k[f+4>>2]|0}}h=xA(a,d)|0;m=c;k[m>>2]=h;k[m+4>>2]=M;fB(k[a+108>>2]|0,n);a=k[l>>2]|0;m=JY(0,j|0,32)|0;k[a>>2]=m;k[a+4>>2]=M;qS(n)}else{if((k[2783]|0)<4){Qd(c,52211,365,3,0,0,0);j=Tn(c,54222,29)|0;l=a+8|0;n=i[l+11>>0]|0;m=n<<24>>24<0;Tn(j,m?k[l>>2]|0:l,m?k[a+12>>2]|0:n&255)|0;hi(c)}n=k[a+4>>2]|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,54252,13);XD(n,a,2,d);p1(d)}r=o;return}function ud(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;i=o+4|0;f=o;b=a+16|0;c=k[b>>2]|0;do if(c>>>0>145){k[b>>2]=c+-146;l=a+4|0;j=k[l>>2]|0;n=k[j>>2]|0;j=j+4|0;k[l>>2]=j;m=a+8|0;h=k[m>>2]|0;i=a+12|0;g=k[i>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=j;else{qO(e|0,j|0,b|0)|0;b=k[l>>2]|0}a=e+(c<<2)|0;k[m>>2]=a;k[l>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((j|0)==(h|0))b=f;else{d=b;b=f;c=j;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[l>>2]=f;k[m>>2]=b;k[i>>2]=g;if(c){zba(c);b=k[m>>2]|0}}else b=h;while(0);k[b>>2]=n;k[m>>2]=(k[m>>2]|0)+4}else{n=a+8|0;b=k[n>>2]|0;m=a+4|0;c=b-(k[m>>2]|0)|0;l=a+12|0;d=k[l>>2]|0;e=d-(k[a>>2]|0)|0;if(c>>>0>=e>>>0){b=e>>1;b=(b|0)==0?1:b;k[i+16>>2]=a+12;j=cW(b<<2)|0;k[i>>2]=j;g=j+(c>>2<<2)|0;h=i+8|0;k[h>>2]=g;e=i+4|0;k[e>>2]=g;g=i+12|0;k[g>>2]=j+(b<<2);b=cW(4088)|0;k[f>>2]=b;$l(i,f);b=k[n>>2]|0;c=k[m>>2]|0;if((b|0)!=(c|0)){do{b=b+-4|0;Tl(i,b);c=k[m>>2]|0}while((b|0)!=(c|0));b=k[n>>2]|0}d=k[a>>2]|0;k[a>>2]=k[i>>2];k[i>>2]=d;k[m>>2]=k[e>>2];k[e>>2]=c;k[n>>2]=k[h>>2];k[h>>2]=b;a=k[l>>2]|0;k[l>>2]=k[g>>2];k[g>>2]=a;if((b|0)!=(c|0))k[h>>2]=b+(~((b+-4-c|0)>>>2)<<2);if(d|0)zba(d);break}if((d|0)!=(b|0)){n=cW(4088)|0;k[i>>2]=n;$l(a,i);break}j=cW(4088)|0;k[i>>2]=j;Tl(a,i);i=k[m>>2]|0;j=k[i>>2]|0;i=i+4|0;k[m>>2]=i;h=k[n>>2]|0;g=k[l>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(i>>>0>c>>>0){b=i;d=((b-d>>2)+1|0)/-2|0;e=i+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=i;else{qO(e|0,i|0,b|0)|0;b=k[m>>2]|0}a=e+(c<<2)|0;k[n>>2]=a;k[m>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((i|0)==(h|0))b=f;else{d=b;b=f;c=i;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[m>>2]=f;k[n>>2]=b;k[l>>2]=g;if(c){zba(c);b=k[n>>2]|0}}else b=h;while(0);k[b>>2]=j;k[n>>2]=(k[n>>2]|0)+4}while(0);r=o;return}function vd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;i=o+4|0;f=o;b=a+16|0;c=k[b>>2]|0;do if(c>>>0>1023){k[b>>2]=c+-1024;l=a+4|0;j=k[l>>2]|0;n=k[j>>2]|0;j=j+4|0;k[l>>2]=j;m=a+8|0;h=k[m>>2]|0;i=a+12|0;g=k[i>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=j;else{qO(e|0,j|0,b|0)|0;b=k[l>>2]|0}a=e+(c<<2)|0;k[m>>2]=a;k[l>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((j|0)==(h|0))b=f;else{d=b;b=f;c=j;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[l>>2]=f;k[m>>2]=b;k[i>>2]=g;if(c){zba(c);b=k[m>>2]|0}}else b=h;while(0);k[b>>2]=n;k[m>>2]=(k[m>>2]|0)+4}else{n=a+8|0;b=k[n>>2]|0;m=a+4|0;c=b-(k[m>>2]|0)|0;l=a+12|0;d=k[l>>2]|0;e=d-(k[a>>2]|0)|0;if(c>>>0>=e>>>0){b=e>>1;b=(b|0)==0?1:b;k[i+16>>2]=a+12;j=cW(b<<2)|0;k[i>>2]=j;g=j+(c>>2<<2)|0;h=i+8|0;k[h>>2]=g;e=i+4|0;k[e>>2]=g;g=i+12|0;k[g>>2]=j+(b<<2);b=cW(4096)|0;k[f>>2]=b;$l(i,f);b=k[n>>2]|0;c=k[m>>2]|0;if((b|0)!=(c|0)){do{b=b+-4|0;Tl(i,b);c=k[m>>2]|0}while((b|0)!=(c|0));b=k[n>>2]|0}d=k[a>>2]|0;k[a>>2]=k[i>>2];k[i>>2]=d;k[m>>2]=k[e>>2];k[e>>2]=c;k[n>>2]=k[h>>2];k[h>>2]=b;a=k[l>>2]|0;k[l>>2]=k[g>>2];k[g>>2]=a;if((b|0)!=(c|0))k[h>>2]=b+(~((b+-4-c|0)>>>2)<<2);if(d|0)zba(d);break}if((d|0)!=(b|0)){n=cW(4096)|0;k[i>>2]=n;$l(a,i);break}j=cW(4096)|0;k[i>>2]=j;Tl(a,i);i=k[m>>2]|0;j=k[i>>2]|0;i=i+4|0;k[m>>2]=i;h=k[n>>2]|0;g=k[l>>2]|0;b=g;f=h;do if((h|0)==(g|0)){c=k[a>>2]|0;d=c;if(i>>>0>c>>>0){b=i;d=((b-d>>2)+1|0)/-2|0;e=i+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=i;else{qO(e|0,i|0,b|0)|0;b=k[m>>2]|0}a=e+(c<<2)|0;k[n>>2]=a;k[m>>2]=b+(d<<2);b=a;break}g=b-d>>1;g=(g|0)==0?1:g;d=cW(g<<2)|0;e=d;b=d+(g>>>2<<2)|0;f=b;g=d+(g<<2)|0;if((i|0)==(h|0))b=f;else{d=b;b=f;c=i;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[m>>2]=f;k[n>>2]=b;k[l>>2]=g;if(c){zba(c);b=k[n>>2]|0}}else b=h;while(0);k[b>>2]=j;k[n>>2]=(k[n>>2]|0)+4}while(0);r=o;return}function wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+480|0;e=t+312|0;n=t+156|0;o=t;p=a+104|0;q=$L(a+312|0)|0;j=k[q>>2]|0;l=q+4|0;f=k[l>>2]|0;do if((j|0)==(f|0))if((k[2783]|0)<5){Qd(e,50281,212,4,0,0,0);m=Tn(e,50305,13)|0;s=a+100|0;p=k[s>>2]|0;n=p+36|0;q=i[n+11>>0]|0;o=q<<24>>24<0;q=Tn(Tn(m,o?k[n>>2]|0:n,o?k[p+40>>2]|0:q&255)|0,50319,1)|0;Tn(es(Tn(Tn(Mn(q,k[(k[s>>2]|0)+60>>2]|0)|0,68429,2)|0,50321,27)|0,b)|0,50349,27)|0;hi(e);e=0}else e=0;else{h=k[b+32>>2]|0;f=f-j>>5;e=0;while(1){g=e+1|0;if((k[j+(e<<5)+28>>2]|0)==(h|0)){s=7;break}if(g>>>0<f>>>0)e=g;else break}if((s|0)==7?(m=j+(e<<5)|0,m|0):0){if(Ud(p,m,c,d)|0){e=1;break}if((k[2783]|0)>=5){e=0;break}Qd(o,50281,230,4,0,0,0);m=Tn(o,50305,13)|0;e=a+100|0;q=k[e>>2]|0;n=q+36|0;s=i[n+11>>0]|0;p=s<<24>>24<0;s=Tn(Tn(m,p?k[n>>2]|0:n,p?k[q+40>>2]|0:s&255)|0,50319,1)|0;es(Tn(Tn(Mn(s,k[(k[e>>2]|0)+60>>2]|0)|0,68429,2)|0,50439,27)|0,b)|0;hi(o);e=0;break}if((k[2783]|0)<4){Qd(n,50281,220,3,0,0,0);d=Tn(n,50305,13)|0;e=a+100|0;p=k[e>>2]|0;m=p+36|0;s=i[m+11>>0]|0;o=s<<24>>24<0;s=Tn(Tn(d,o?k[m>>2]|0:m,o?k[p+40>>2]|0:s&255)|0,50319,1)|0;e=Tn(Tn(Mn(s,k[(k[e>>2]|0)+60>>2]|0)|0,68429,2)|0,50377,41)|0;e=Tn(Ln(e,k[b+32>>2]|0)|0,50419,19)|0;e=Tn(Ln(e,k[(k[q>>2]|0)+28>>2]|0)|0,51129,1)|0;Tn(Ln(e,k[(k[l>>2]|0)+-4>>2]|0)|0,103292,1)|0;hi(n);e=0}else e=0}while(0);r=t;return e|0}function xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;a:while(1){j=b;l=b+-4|0;while(1){b:while(1){i=a;d=j-i|0;e=d>>2;switch(e|0){case 1:case 0:break a;case 2:{m=5;break a}case 3:{m=7;break a}case 4:{m=8;break a}case 5:{m=9;break a}default:{}}if((d|0)<124){m=11;break a}g=a+(((e|0)/2|0)<<2)|0;if((d|0)>3996){d=(e|0)/4|0;d=fr(a,a+(d<<2)|0,g,g+(d<<2)|0,l,c)|0}else d=pr(a,g,l,c)|0;if(cc[k[c>>2]&127](k[a>>2]|0,k[g>>2]|0)|0){e=l;break}else e=l;while(1){e=e+-4|0;if((a|0)==(e|0))break;if(cc[k[c>>2]&127](k[e>>2]|0,k[g>>2]|0)|0){m=29;break b}}d=a+4|0;if(!(cc[k[c>>2]&127](k[a>>2]|0,k[l>>2]|0)|0)){if((d|0)==(l|0))break a;while(1){if(cc[k[c>>2]&127](k[a>>2]|0,k[d>>2]|0)|0)break;d=d+4|0;if((d|0)==(l|0))break a}i=k[d>>2]|0;k[d>>2]=k[l>>2];k[l>>2]=i;d=d+4|0}if((d|0)==(l|0))break a;else e=l;while(1){while(1){f=d+4|0;if(cc[k[c>>2]&127](k[a>>2]|0,k[d>>2]|0)|0)break;else d=f}do e=e+-4|0;while(cc[k[c>>2]&127](k[a>>2]|0,k[e>>2]|0)|0);if(d>>>0>=e>>>0){a=d;continue b}i=k[d>>2]|0;k[d>>2]=k[e>>2];k[e>>2]=i;d=f}}if((m|0)==29){m=0;h=k[a>>2]|0;k[a>>2]=k[e>>2];k[e>>2]=h;d=d+1|0}f=a+4|0;c:do if(f>>>0<e>>>0){h=g;while(1){while(1){g=f+4|0;if(cc[k[c>>2]&127](k[f>>2]|0,k[h>>2]|0)|0)f=g;else break}do e=e+-4|0;while(!(cc[k[c>>2]&127](k[e>>2]|0,k[h>>2]|0)|0));if(f>>>0>e>>>0){e=h;break c}n=k[f>>2]|0;k[f>>2]=k[e>>2];k[e>>2]=n;h=(h|0)==(f|0)?e:h;f=g;d=d+1|0}}else e=g;while(0);if((f|0)!=(e|0)?cc[k[c>>2]&127](k[e>>2]|0,k[f>>2]|0)|0:0){n=k[f>>2]|0;k[f>>2]=k[e>>2];k[e>>2]=n;d=d+1|0}if(!d){d=_i(a,f,c)|0;e=f+4|0;if(_i(e,b,c)|0){m=45;break}if(d){a=e;continue}}n=f;if((n-i|0)>=(j-n|0)){m=44;break}xd(a,f,c);a=f+4|0}if((m|0)==44){m=0;xd(f+4|0,b,c);b=f;continue}else if((m|0)==45){m=0;if(d)break;else{b=f;continue}}}if((m|0)==5){if(cc[k[c>>2]&127](k[l>>2]|0,k[a>>2]|0)|0){n=k[a>>2]|0;k[a>>2]=k[l>>2];k[l>>2]=n}}else if((m|0)==7)pr(a,a+4|0,l,c)|0;else if((m|0)==8)ju(a,a+4|0,a+8|0,l,c)|0;else if((m|0)==9)fr(a,a+4|0,a+8|0,a+12|0,l,c)|0;else if((m|0)==11)Yt(a,b,c);return}function yd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;n=a+4|0;o=k[n>>2]|0;c=o&-8;j=a+c|0;h=k[27519]|0;d=o&3;if(!((d|0)!=1&a>>>0>=h>>>0&a>>>0<j>>>0))kb();e=k[j+4>>2]|0;if(!(e&1))kb();if(!d){if(b>>>0<256){a=0;return a|0}if(c>>>0>=(b+4|0)>>>0?(c-b|0)>>>0<=k[27635]<<1>>>0:0)return a|0;a=0;return a|0}if(c>>>0>=b>>>0){c=c-b|0;if(c>>>0<=15)return a|0;m=a+b|0;k[n>>2]=o&1|b|2;k[m+4>>2]=c|3;o=m+c+4|0;k[o>>2]=k[o>>2]|1;yc(m,c);return a|0}if((j|0)==(k[27521]|0)){c=(k[27518]|0)+c|0;if(c>>>0<=b>>>0){a=0;return a|0}m=c-b|0;l=a+b|0;k[n>>2]=o&1|b|2;k[l+4>>2]=m|1;k[27521]=l;k[27518]=m;return a|0}if((j|0)==(k[27520]|0)){d=(k[27517]|0)+c|0;if(d>>>0<b>>>0){a=0;return a|0}c=d-b|0;if(c>>>0>15){d=a+b|0;m=d+c|0;k[n>>2]=o&1|b|2;k[d+4>>2]=c|1;k[m>>2]=c;o=m+4|0;k[o>>2]=k[o>>2]&-2}else{k[n>>2]=o&1|d|2;d=a+d+4|0;k[d>>2]=k[d>>2]|1;d=0;c=0}k[27517]=c;k[27520]=d;return a|0}if(e&2|0){a=0;return a|0}l=(e&-8)+c|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;f=e>>>3;do if(e>>>0>=256){g=k[j+24>>2]|0;e=k[j+12>>2]|0;do if((e|0)==(j|0)){e=j+16|0;d=e+4|0;c=k[d>>2]|0;if(!c){c=k[e>>2]|0;if(!c){i=0;break}else d=e}while(1){e=c+20|0;f=k[e>>2]|0;if(f|0){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<h>>>0)kb();else{k[d>>2]=0;i=c;break}}else{f=k[j+8>>2]|0;if(f>>>0<h>>>0)kb();c=f+12|0;if((k[c>>2]|0)!=(j|0))kb();d=e+8|0;if((k[d>>2]|0)==(j|0)){k[c>>2]=e;k[d>>2]=f;i=e;break}else kb()}while(0);if(g|0){c=k[j+28>>2]|0;d=110364+(c<<2)|0;if((j|0)==(k[d>>2]|0)){k[d>>2]=i;if(!i){k[27516]=k[27516]&~(1<<c);break}}else{if(g>>>0<(k[27519]|0)>>>0)kb();c=g+16|0;if((k[c>>2]|0)==(j|0))k[c>>2]=i;else k[g+20>>2]=i;if(!i)break}e=k[27519]|0;if(i>>>0<e>>>0)kb();k[i+24>>2]=g;c=j+16|0;d=k[c>>2]|0;do if(d|0)if(d>>>0<e>>>0)kb();else{k[i+16>>2]=d;k[d+24>>2]=i;break}while(0);c=k[c+4>>2]|0;if(c|0)if(c>>>0<(k[27519]|0)>>>0)kb();else{k[i+20>>2]=c;k[c+24>>2]=i;break}}}else{d=k[j+8>>2]|0;e=k[j+12>>2]|0;c=110100+(f<<1<<2)|0;if((d|0)!=(c|0)){if(d>>>0<h>>>0)kb();if((k[d+12>>2]|0)!=(j|0))kb()}if((e|0)==(d|0)){k[27515]=k[27515]&~(1<<f);break}if((e|0)!=(c|0)){if(e>>>0<h>>>0)kb();c=e+8|0;if((k[c>>2]|0)==(j|0))g=c;else kb()}else g=e+8|0;k[d+12>>2]=e;k[g>>2]=d}while(0);if(m>>>0<16){k[n>>2]=l|o&1|2;o=a+l+4|0;k[o>>2]=k[o>>2]|1;return a|0}else{l=a+b|0;k[n>>2]=o&1|b|2;k[l+4>>2]=m|3;o=l+m+4|0;k[o>>2]=k[o>>2]|1;yc(l,m);return a|0}return 0}function zd(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;x=r;r=r+112|0;h=x;l=(d-c|0)/12|0;if(l>>>0>100){j=lc(l)|0;if(!j){h=0;v=0}else{h=j;v=j}}else v=0;j=0;n=c;o=h;while(1){if((n|0)==(d|0))break;m=i[n+8+3>>0]|0;if(m<<24>>24<0)m=k[n+4>>2]|0;else m=m&255;if(!m){i[o>>0]=2;j=j+1|0;l=l+-1|0}else i[o>>0]=1;n=n+12|0;o=o+1|0}u=0;s=j;a:while(1){j=k[a>>2]|0;do if(j){m=k[j+12>>2]|0;if((m|0)==(k[j+16>>2]|0))j=Ub[k[(k[j>>2]|0)+36>>2]&511](j)|0;else j=k[m>>2]|0;if((j|0)==-1){k[a>>2]=0;o=1;break}else{o=(k[a>>2]|0)==0;break}}else o=1;while(0);m=k[b>>2]|0;if(m){j=k[m+12>>2]|0;if((j|0)==(k[m+16>>2]|0))j=Ub[k[(k[m>>2]|0)+36>>2]&511](m)|0;else j=k[j>>2]|0;if((j|0)==-1){k[b>>2]=0;m=0;j=1}else j=0}else{m=0;j=1}n=k[a>>2]|0;if(!((l|0)!=0&(o^j)))break;j=k[n+12>>2]|0;if((j|0)==(k[n+16>>2]|0))j=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else j=k[j>>2]|0;if(!g)j=cc[k[(k[e>>2]|0)+28>>2]&127](e,j)|0;t=u+1|0;p=c;o=0;q=h;while(1){if((p|0)==(d|0))break;do if((i[q>>0]|0)==1){n=p+8+3|0;if((i[n>>0]|0)<0)m=k[p>>2]|0;else m=p;m=k[m+(u<<2)>>2]|0;if(!g)m=cc[k[(k[e>>2]|0)+28>>2]&127](e,m)|0;if((j|0)!=(m|0)){i[q>>0]=0;m=o;n=s;l=l+-1|0;break}m=i[n>>0]|0;if(m<<24>>24<0)m=k[p+4>>2]|0;else m=m&255;if((m|0)==(t|0)){i[q>>0]=2;m=1;n=s+1|0;l=l+-1|0}else{m=1;n=s}}else{m=o;n=s}while(0);p=p+12|0;o=m;q=q+1|0;s=n}if(!o){u=t;continue}j=k[a>>2]|0;m=j+12|0;n=k[m>>2]|0;if((n|0)==(k[j+16>>2]|0))Ub[k[(k[j>>2]|0)+40>>2]&511](j)|0;else k[m>>2]=n+4;if((s+l|0)>>>0>1){n=c;o=h;j=s}else{u=t;continue}while(1){if((n|0)==(d|0)){u=t;s=j;continue a}if((i[o>>0]|0)==2){m=i[n+8+3>>0]|0;if(m<<24>>24<0)m=k[n+4>>2]|0;else m=m&255;if((m|0)!=(t|0)){i[o>>0]=0;j=j+-1|0}}n=n+12|0;o=o+1|0}}do if(n){j=k[n+12>>2]|0;if((j|0)==(k[n+16>>2]|0))j=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else j=k[j>>2]|0;if((j|0)==-1){k[a>>2]=0;l=1;break}else{l=(k[a>>2]|0)==0;break}}else l=1;while(0);do if(m){j=k[m+12>>2]|0;if((j|0)==(k[m+16>>2]|0))j=Ub[k[(k[m>>2]|0)+36>>2]&511](m)|0;else j=k[j>>2]|0;if((j|0)!=-1)if(l)break;else{w=77;break}else{k[b>>2]=0;w=41;break}}else w=41;while(0);if((w|0)==41)if(l)w=77;if((w|0)==77)k[f>>2]=k[f>>2]|2;while(1){if((c|0)==(d|0)){w=81;break}if((i[h>>0]|0)==2)break;c=c+12|0;h=h+1|0}if((w|0)==81){k[f>>2]=k[f>>2]|4;c=d}wc(v);r=x;return c|0}function Ad(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+512|0;b=u+336|0;c=u+168|0;n=u+492|0;o=u+324|0;l=u+12|0;p=u;h=a+640|0;do if((i[a+644>>0]|0)!=0?(m=a+704|0,(i[a+708>>0]|0)!=0):0){d=j[(k[a+916>>2]|0)+852>>1]|0;f=(d&255)<<24>>24==0;d=(d&65535)<256;if(f?(k[a+648>>2]|0)==(k[a+652>>2]|0):0){if((k[2783]|0)>=5){b=0;break}Qd(b,27921,671,4,0,0,0);Tn(Tn(b,27948,6)|0,28237,60)|0;hi(b);b=0;break}g=a+832|0;i[g>>0]=0;if(!(!d?(k[a+648>>2]|0)!=(k[a+652>>2]|0):0))if((k[a+712>>2]|0)!=(k[a+716>>2]|0)){if(f){if((k[2783]|0)>=5){b=0;break}Qd(c,27921,680,4,0,0,0);Tn(Tn(c,27948,6)|0,28298,43)|0;hi(c);b=0;break}k[n>>2]=0;f=n+4|0;k[f>>2]=0;k[n+8>>2]=0;k[o>>2]=0;b=o+4|0;k[b>>2]=0;k[o+8>>2]=0;ty(m,o,n);c=k[o>>2]|0;d=c;if(c|0){e=k[b>>2]|0;if((e|0)!=(c|0))k[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);zba(c)}ty(h,n,0);i[g>>0]=1;b=k[n>>2]|0;c=b;if(b|0){d=k[f>>2]|0;if((d|0)!=(b|0))k[f>>2]=d+(~((d+-4-c|0)>>>2)<<2);zba(b)}f=1}h=k[a+648>>2]|0;if(((h|0)!=(k[a+652>>2]|0)?i[(k[h>>2]|0)+48>>0]|0:0)?(k[a+712>>2]|0)!=(k[a+716>>2]|0):0){if((k[2783]|0)<4){Qd(l,27921,696,3,0,0,0);Tn(Tn(l,27948,6)|0,28342,111)|0;hi(l)}k[n>>2]=0;b=n+4|0;k[b>>2]=0;k[n+8>>2]=0;ty(m,n,0);c=k[n>>2]|0;d=c;if(c|0){e=k[b>>2]|0;if((e|0)!=(c|0))k[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);zba(c)}}if(f){i[a+1160>>0]=0;i[a+1161>>0]=1}else{h=a+712|0;l=a+716|0;i[a+1160>>0]=(k[h>>2]|0)!=(k[l>>2]|0)&1;i[a+1161>>0]=1;eP(a)|0;if((k[h>>2]|0)==(k[l>>2]|0)?(k[n>>2]=0,q=n+4|0,k[q>>2]=0,k[n+8>>2]=0,s=cW(128)|0,k[p>>2]=0,k[p+4>>2]=0,k[p+8>>2]=0,wE(p,75658,7),Wt(s,p,0),k[o>>2]=s,zp(n,o),p1(p),ty(m,n,0),s=k[n>>2]|0,t=s,s|0):0){b=k[q>>2]|0;if((b|0)!=(s|0))k[q>>2]=b+(~((b+-4-t|0)>>>2)<<2);zba(s)}AE(a+396|0,a+712|0)}rL(a)|0;rf(a);b=1}else b=0;while(0);r=u;return b|0}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=r;r=r+384|0;J=M+372|0;I=M;k[J>>2]=0;k[J+4>>2]=0;k[J+8>>2]=0;wE(J,56364,2);VJ(b,J,c)|0;p1(J);k[J>>2]=0;k[J+4>>2]=0;k[J+8>>2]=0;wE(J,49642,8);ek(0,b,J,c+304|0)|0;p1(J);k[I>>2]=0;k[I+4>>2]=0;k[I+8>>2]=0;wE(I,49651,13);oq(J,b,I);p1(I);d=k[J>>2]|0;L=J+4|0;a:do if((d|0)==(k[L>>2]|0))K=8;else{g=I+96|0;h=I+124|0;j=I+128|0;l=I+132|0;m=I+136|0;n=I+152|0;o=I+180|0;p=I+184|0;q=I+188|0;s=I+192|0;t=I+208|0;u=I+236|0;v=I+240|0;w=I+244|0;x=I+284|0;y=I+288|0;z=I+292|0;A=I+296|0;B=I+312|0;C=I+340|0;D=I+344|0;E=I+348|0;F=c+16|0;G=c+20|0;H=c+12|0;while(1){e=I;f=e+92|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));i[I+92>>0]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;i[g+24>>0]=0;k[h>>2]=1;k[j>>2]=0;i[l>>0]=0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;i[m+12>>0]=0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;k[n+12>>2]=0;k[n+16>>2]=0;k[n+20>>2]=0;i[n+24>>0]=0;k[o>>2]=1;k[p>>2]=0;i[q>>0]=0;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;i[s+12>>0]=0;k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=0;k[t+12>>2]=0;k[t+16>>2]=0;k[t+20>>2]=0;k[t+24>>2]=0;k[u>>2]=1;i[v>>0]=0;e=w;f=e+36|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));i[w+36>>0]=0;k[x>>2]=1;k[y>>2]=0;i[z>>0]=0;k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;i[A+12>>0]=0;k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;k[B+12>>2]=0;k[B+16>>2]=0;k[B+20>>2]=0;k[B+24>>2]=0;k[C>>2]=1;i[D>>0]=0;k[E>>2]=0;k[E+4>>2]=0;k[E+8>>2]=0;k[E+12>>2]=0;k[E+16>>2]=0;k[E+20>>2]=0;if(!(sc(a,k[d>>2]|0,I)|0))break;e=k[F>>2]|0;if((e|0)==(k[G>>2]|0))Xq(H,I);else{yf(e,I);k[F>>2]=(k[F>>2]|0)+372}Ej(I);d=d+4|0;if((d|0)==(k[L>>2]|0)){K=8;break a}}Ej(I);a=0}while(0);if((K|0)==8){np(a,b,c+24|0);a=1}d=k[J>>2]|0;e=d;if(d|0){f=k[L>>2]|0;if((f|0)!=(d|0))k[L>>2]=f+(~((f+-4-e|0)>>>2)<<2);zba(d)}r=M;return a|0}function Cd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;f=k[a>>2]|0;do if(f){g=k[f+12>>2]|0;if((g|0)==(k[f+16>>2]|0))f=Ub[k[(k[f>>2]|0)+36>>2]&511](f)|0;else f=k[g>>2]|0;if((f|0)==-1){k[a>>2]=0;h=1;break}else{h=(k[a>>2]|0)==0;break}}else h=1;while(0);g=k[b>>2]|0;do if(g){f=k[g+12>>2]|0;if((f|0)==(k[g+16>>2]|0))f=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else f=k[f>>2]|0;if((f|0)!=-1)if(h){p=17;break}else{p=16;break}else{k[b>>2]=0;p=14;break}}else p=14;while(0);if((p|0)==14)if(h)p=16;else{g=0;p=17}a:do if((p|0)==16){k[c>>2]=k[c>>2]|6;f=0}else if((p|0)==17){f=k[a>>2]|0;h=k[f+12>>2]|0;if((h|0)==(k[f+16>>2]|0))f=Ub[k[(k[f>>2]|0)+36>>2]&511](f)|0;else f=k[h>>2]|0;if(!(Yb[k[(k[d>>2]|0)+12>>2]&31](d,2048,f)|0)){k[c>>2]=k[c>>2]|4;f=0;break}f=(Yb[k[(k[d>>2]|0)+52>>2]&31](d,f,0)|0)<<24>>24;h=k[a>>2]|0;i=h+12|0;j=k[i>>2]|0;if((j|0)==(k[h+16>>2]|0)){Ub[k[(k[h>>2]|0)+40>>2]&511](h)|0;l=g;i=g}else{k[i>>2]=j+4;l=g;i=g}while(1){f=f+-48|0;o=e+-1|0;g=k[a>>2]|0;do if(g){h=k[g+12>>2]|0;if((h|0)==(k[g+16>>2]|0))g=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else g=k[h>>2]|0;if((g|0)==-1){k[a>>2]=0;j=1;break}else{j=(k[a>>2]|0)==0;break}}else j=1;while(0);do if(i){g=k[i+12>>2]|0;if((g|0)==(k[i+16>>2]|0))g=Ub[k[(k[i>>2]|0)+36>>2]&511](i)|0;else g=k[g>>2]|0;if((g|0)==-1){k[b>>2]=0;n=0;m=0;g=1;break}else{n=l;m=l;g=(l|0)==0;break}}else{n=l;m=0;g=1}while(0);h=k[a>>2]|0;if(!((e|0)>1&(j^g)))break;g=k[h+12>>2]|0;if((g|0)==(k[h+16>>2]|0))g=Ub[k[(k[h>>2]|0)+36>>2]&511](h)|0;else g=k[g>>2]|0;if(!(Yb[k[(k[d>>2]|0)+12>>2]&31](d,2048,g)|0))break a;f=((Yb[k[(k[d>>2]|0)+52>>2]&31](d,g,0)|0)<<24>>24)+(f*10|0)|0;g=k[a>>2]|0;h=g+12|0;i=k[h>>2]|0;if((i|0)==(k[g+16>>2]|0)){Ub[k[(k[g>>2]|0)+40>>2]&511](g)|0;e=o;l=n;i=m;continue}else{k[h>>2]=i+4;e=o;l=n;i=m;continue}}do if(h){g=k[h+12>>2]|0;if((g|0)==(k[h+16>>2]|0))g=Ub[k[(k[h>>2]|0)+36>>2]&511](h)|0;else g=k[g>>2]|0;if((g|0)==-1){k[a>>2]=0;h=1;break}else{h=(k[a>>2]|0)==0;break}}else h=1;while(0);do if(n){g=k[n+12>>2]|0;if((g|0)==(k[n+16>>2]|0))g=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else g=k[g>>2]|0;if((g|0)!=-1)if(h)break a;else break;else{k[b>>2]=0;p=60;break}}else p=60;while(0);if((p|0)==60?!h:0)break;k[c>>2]=k[c>>2]|2}while(0);return f|0}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+640|0;j=h+624|0;c=h+468|0;f=h+312|0;e=h+156|0;g=h;iI(j,b);d=jG(a+36|0,j)|0;p1(j);do if(d)if((k[2783]|0)<3){Qd(c,30228,126,2,0,0,0);f=Tn(Tn(Hn(Tn(c,30248,4)|0,a)|0,30253,3)|0,30426,18)|0;j=i[b+11>>0]|0;g=j<<24>>24<0;Tn(Tn(f,g?k[b>>2]|0:b,g?k[b+4>>2]|0:j&255)|0,30445,26)|0;hi(c);c=0}else c=0;else{d=a+748|0;if((k[d>>2]|0)>=(k[a+116>>2]|0)){if((k[2783]|0)>=3){c=0;break}Qd(e,30228,140,2,0,0,0);g=Tn(Tn(Hn(Tn(e,30248,4)|0,a)|0,30253,3)|0,30426,18)|0;c=i[b+11>>0]|0;j=c<<24>>24<0;Tn(Tn(g,j?k[b>>2]|0:b,j?k[b+4>>2]|0:c&255)|0,30487,63)|0;hi(e);c=0;break}c=(k[2783]|0)<3;if(!(i[a+188>>0]|0)){if(!c){c=0;break}Qd(g,30228,142,2,0,0,0);f=Tn(Tn(Hn(Tn(g,30248,4)|0,a)|0,30253,3)|0,30426,18)|0;c=i[b+11>>0]|0;j=c<<24>>24<0;Tn(Tn(f,j?k[b>>2]|0:b,j?k[b+4>>2]|0:c&255)|0,30551,40)|0;hi(g);c=0;break}if(c){Qd(f,30228,131,2,0,0,0);e=Tn(Tn(Hn(Tn(f,30248,4)|0,a)|0,30253,3)|0,30472,14)|0;j=i[b+11>>0]|0;g=j<<24>>24<0;Tn(e,g?k[b>>2]|0:b,g?k[b+4>>2]|0:j&255)|0;hi(f)}c=cW(228)|0;j=a+20|0;oi(c,k[j>>2]|0,b);f=cW(12)|0;k[f+8>>2]=c;k[f>>2]=a+24;g=a+28|0;b=k[g>>2]|0;k[f+4>>2]=b;k[b>>2]=f;k[g>>2]=f;g=a+32|0;k[g>>2]=(k[g>>2]|0)+1;k[d>>2]=(k[d>>2]|0)+1;Rb[k[(k[c>>2]|0)+128>>2]&2047](c);AE((k[j>>2]|0)+36|0,c)}while(0);r=h;return c|0}function Ed(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=r;r=r+352|0;s=D+208|0;t=D+200|0;u=D+196|0;C=D+184|0;B=D+172|0;v=D+168|0;w=D+8|0;x=D+4|0;y=D;z=D+337|0;q=D+336|0;Mv(C,d,s,t,u);k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[B+(a<<2)>>2]=0;a=a+1|0}n=B+11|0;p=B+8|0;if((i[n>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(B,a,0);a=(i[n>>0]|0)<0?k[B>>2]|0:B;k[v>>2]=a;k[x>>2]=w;k[y>>2]=0;i[z>>0]=1;i[q>>0]=69;m=B+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;l=0;h=1}else{l=g;h=0}}else{l=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(h){g=0;break}else g=0}d=i[n>>0]|0;d=d<<24>>24<0?k[m>>2]|0:d&255;if((k[v>>2]|0)==(a+d|0)){gD(B,d<<1,0);if((i[n>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(B,a,0);a=(i[n>>0]|0)<0?k[B>>2]|0:B;k[v>>2]=a+d}h=l+12|0;d=k[h>>2]|0;j=l+16|0;if((d|0)==(k[j>>2]|0))d=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else d=k[d>>2]|0;if(lh(d,z,q,a,v,k[t>>2]|0,k[u>>2]|0,C,w,x,y,s)|0)break;d=k[h>>2]|0;if((d|0)==(k[j>>2]|0)){Ub[k[(k[l>>2]|0)+40>>2]&511](l)|0;g=l;continue}else{k[h>>2]=d+4;g=l;continue}}u=i[C+11>>0]|0;if(!((i[z>>0]|0)==0?1:((u<<24>>24<0?k[C+4>>2]|0:u&255)|0)==0)?(A=k[x>>2]|0,(A-w|0)<160):0){z=k[y>>2]|0;k[x>>2]=A+4;k[A>>2]=z}F=+XC(a,k[v>>2]|0,e);o[f>>2]=F;ep(C,w,k[x>>2]|0,e);if(l){a=k[l+12>>2]|0;if((a|0)==(k[l+16>>2]|0))a=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{E=49;break}else{k[c>>2]=0;E=47;break}}else E=47;while(0);if((E|0)==47?d:0)E=49;if((E|0)==49)k[e>>2]=k[e>>2]|2;E=k[b>>2]|0;p1(B);p1(C);r=D;return E|0}function Fd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=r;r=r+352|0;s=D+208|0;t=D+200|0;u=D+196|0;C=D+184|0;B=D+172|0;v=D+168|0;w=D+8|0;x=D+4|0;y=D;z=D+337|0;q=D+336|0;Mv(C,d,s,t,u);k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[B+(a<<2)>>2]=0;a=a+1|0}n=B+11|0;o=B+8|0;if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(B,a,0);a=(i[n>>0]|0)<0?k[B>>2]|0:B;k[v>>2]=a;k[x>>2]=w;k[y>>2]=0;i[z>>0]=1;i[q>>0]=69;m=B+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;l=0;h=1}else{l=g;h=0}}else{l=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(h){g=0;break}else g=0}d=i[n>>0]|0;d=d<<24>>24<0?k[m>>2]|0:d&255;if((k[v>>2]|0)==(a+d|0)){gD(B,d<<1,0);if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(B,a,0);a=(i[n>>0]|0)<0?k[B>>2]|0:B;k[v>>2]=a+d}h=l+12|0;d=k[h>>2]|0;j=l+16|0;if((d|0)==(k[j>>2]|0))d=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else d=k[d>>2]|0;if(lh(d,z,q,a,v,k[t>>2]|0,k[u>>2]|0,C,w,x,y,s)|0)break;d=k[h>>2]|0;if((d|0)==(k[j>>2]|0)){Ub[k[(k[l>>2]|0)+40>>2]&511](l)|0;g=l;continue}else{k[h>>2]=d+4;g=l;continue}}u=i[C+11>>0]|0;if(!((i[z>>0]|0)==0?1:((u<<24>>24<0?k[C+4>>2]|0:u&255)|0)==0)?(A=k[x>>2]|0,(A-w|0)<160):0){z=k[y>>2]|0;k[x>>2]=A+4;k[A>>2]=z}F=+XC(a,k[v>>2]|0,e);p[f>>3]=F;ep(C,w,k[x>>2]|0,e);if(l){a=k[l+12>>2]|0;if((a|0)==(k[l+16>>2]|0))a=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{E=49;break}else{k[c>>2]=0;E=47;break}}else E=47;while(0);if((E|0)==47?d:0)E=49;if((E|0)==49)k[e>>2]=k[e>>2]|2;E=k[b>>2]|0;p1(B);p1(C);r=D;return E|0}function Gd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=r;r=r+320|0;v=y;t=y+208|0;w=y+192|0;x=y+180|0;u=y+176|0;p=y+16|0;q=y+8|0;s=y+4|0;k[w>>2]=0;k[w+4>>2]=0;k[w+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[w+(a<<2)>>2]=0;a=a+1|0}a=LZ(d)|0;k[x>>2]=a;o=k_(x,111636)|0;ec[k[(k[o>>2]|0)+48>>2]&15](o,106657,106683,t)|0;oU(a)|0;k[x>>2]=0;k[x+4>>2]=0;k[x+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[x+(a<<2)>>2]=0;a=a+1|0}o=x+11|0;n=x+8|0;if((i[o>>0]|0)<0)a=(k[n>>2]&2147483647)+-1|0;else a=10;gD(x,a,0);a=(i[o>>0]|0)<0?k[x>>2]|0:x;k[u>>2]=a;k[q>>2]=p;k[s>>2]=0;m=x+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;l=0;h=1}else{l=g;h=0}}else{l=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;z=22;break}}else z=22;while(0);if((z|0)==22){z=0;if(h){g=0;break}else g=0}d=i[o>>0]|0;d=d<<24>>24<0?k[m>>2]|0:d&255;if((k[u>>2]|0)==(a+d|0)){gD(x,d<<1,0);if((i[o>>0]|0)<0)a=(k[n>>2]&2147483647)+-1|0;else a=10;gD(x,a,0);a=(i[o>>0]|0)<0?k[x>>2]|0:x;k[u>>2]=a+d}h=l+12|0;d=k[h>>2]|0;j=l+16|0;if((d|0)==(k[j>>2]|0))d=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else d=k[d>>2]|0;if(Ni(d,16,a,u,s,0,w,p,q,t)|0)break;d=k[h>>2]|0;if((d|0)==(k[j>>2]|0)){Ub[k[(k[l>>2]|0)+40>>2]&511](l)|0;g=l;continue}else{k[h>>2]=d+4;g=l;continue}}gD(x,(k[u>>2]|0)-a|0,0);t=(i[o>>0]|0)<0?k[x>>2]|0:x;u=J_()|0;k[v>>2]=f;if((sQ(t,u,106690,v)|0)!=1)k[e>>2]=4;if(l){a=k[l+12>>2]|0;if((a|0)==(k[l+16>>2]|0))a=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{z=51;break}else{k[c>>2]=0;z=49;break}}else z=49;while(0);if((z|0)==49?d:0)z=51;if((z|0)==51)k[e>>2]=k[e>>2]|2;z=k[b>>2]|0;p1(x);p1(w);r=y;return z|0}function Hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0;l=r;r=r+48|0;h=l+28|0;g=l+16|0;f=l+4|0;d=l;m=_J()|0;e=a+1040|0;k[e>>2]=m;k[e+4>>2]=M;e=a+208|0;fE(e|0,b|0,131)|0;if((e|0)!=(b|0)){k[f>>2]=k[b+132>>2];k[d>>2]=b+136;k[g>>2]=k[f>>2];k[h>>2]=k[d>>2];Uf(a+340|0,g,h);pi(a+352|0,k[b+144>>2]|0,k[b+148>>2]|0);pi(a+364|0,k[b+156>>2]|0,k[b+160>>2]|0);pi(a+376|0,k[b+168>>2]|0,k[b+172>>2]|0)}j[a+388>>1]=j[b+180>>1]|0;i[a+392>>0]=c&1;b=k[b>>2]|0;c=a+1048|0;d=k[c>>2]|0;if((d|0)!=-1){Ta(2,d|0)|0;k[c>>2]=-1}k[c>>2]=b;kc(a+400|0,e);d=a+1064|0;if(!(i[a+872>>0]|0)){b=cW(8)|0;k[b+4>>2]=0;k[b>>2]=5768;c=k[d>>2]|0;k[d>>2]=0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[d>>2]=b}else{b=cW(24)|0;mF(b);c=k[d>>2]|0;k[d>>2]=0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[d>>2]=b}k[b+4>>2]=a;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,30714,7);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,115628,0);m=dJ(e,g,h,f)|0;p1(f);p1(g);if(!m){k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,30722,10);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,115628,0);dJ(e,g,h,f)|0;p1(f);p1(g)}MM(a+164|0,h)|0;bo(a+96|0,a+836|0);if(i[a+956>>0]|0){d=a+960|0;c=d+11|0;b=i[c>>0]|0;if(b<<24>>24<0)b=k[a+964>>2]|0;else b=b&255;if(!b){so(g,a);if((i[c>>0]|0)<0){i[k[d>>2]>>0]=0;k[a+964>>2]=0;b=d}else{i[d>>0]=0;i[c>>0]=0;b=d}Qm(d,0);k[b>>2]=k[g>>2];k[b+4>>2]=k[g+4>>2];k[b+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g)}}m=Pg(a,1)|0;p1(h);r=l;return m|0}function Id(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=r;r=r+304|0;p=A+200|0;q=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;u=A+4|0;v=A;w=NV(d)|0;_z(y,d,p,q);k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[z+(a<<2)>>2]=0;a=a+1|0}n=z+11|0;o=z+8|0;if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a;k[u>>2]=t;k[v>>2]=0;m=z+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;l=0;h=1}else{l=g;h=0}}else{l=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(h){g=0;break}else g=0}d=i[n>>0]|0;d=d<<24>>24<0?k[m>>2]|0:d&255;if((k[s>>2]|0)==(a+d|0)){gD(z,d<<1,0);if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a+d}h=l+12|0;d=k[h>>2]|0;j=l+16|0;if((d|0)==(k[j>>2]|0))d=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else d=k[d>>2]|0;if(Ni(d,w,a,s,v,k[q>>2]|0,y,t,u,p)|0)break;d=k[h>>2]|0;if((d|0)==(k[j>>2]|0)){Ub[k[(k[l>>2]|0)+40>>2]&511](l)|0;g=l;continue}else{k[h>>2]=d+4;g=l;continue}}q=i[y+11>>0]|0;if((q<<24>>24<0?k[y+4>>2]|0:q&255)|0?(x=k[u>>2]|0,(x-t|0)<160):0){v=k[v>>2]|0;k[u>>2]=x+4;k[x>>2]=v}x=Gu(a,k[s>>2]|0,e,w)|0;k[f>>2]=x;k[f+4>>2]=M;ep(y,t,k[u>>2]|0,e);if(l){a=k[l+12>>2]|0;if((a|0)==(k[l+16>>2]|0))a=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{B=49;break}else{k[c>>2]=0;B=47;break}}else B=47;while(0);if((B|0)==47?d:0)B=49;if((B|0)==49)k[e>>2]=k[e>>2]|2;B=k[b>>2]|0;p1(z);p1(y);r=A;return B|0}function Jd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=r;r=r+304|0;p=A+200|0;q=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;u=A+4|0;v=A;w=NV(d)|0;_z(y,d,p,q);k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[z+(a<<2)>>2]=0;a=a+1|0}n=z+11|0;o=z+8|0;if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a;k[u>>2]=t;k[v>>2]=0;m=z+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;l=0;h=1}else{l=g;h=0}}else{l=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(h){g=0;break}else g=0}d=i[n>>0]|0;d=d<<24>>24<0?k[m>>2]|0:d&255;if((k[s>>2]|0)==(a+d|0)){gD(z,d<<1,0);if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a+d}h=l+12|0;d=k[h>>2]|0;j=l+16|0;if((d|0)==(k[j>>2]|0))d=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else d=k[d>>2]|0;if(Ni(d,w,a,s,v,k[q>>2]|0,y,t,u,p)|0)break;d=k[h>>2]|0;if((d|0)==(k[j>>2]|0)){Ub[k[(k[l>>2]|0)+40>>2]&511](l)|0;g=l;continue}else{k[h>>2]=d+4;g=l;continue}}q=i[y+11>>0]|0;if((q<<24>>24<0?k[y+4>>2]|0:q&255)|0?(x=k[u>>2]|0,(x-t|0)<160):0){v=k[v>>2]|0;k[u>>2]=x+4;k[x>>2]=v}x=Bw(a,k[s>>2]|0,e,w)|0;k[f>>2]=x;k[f+4>>2]=M;ep(y,t,k[u>>2]|0,e);if(l){a=k[l+12>>2]|0;if((a|0)==(k[l+16>>2]|0))a=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{B=49;break}else{k[c>>2]=0;B=47;break}}else B=47;while(0);if((B|0)==47?d:0)B=49;if((B|0)==49)k[e>>2]=k[e>>2]|2;B=k[b>>2]|0;p1(z);p1(y);r=A;return B|0}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=a+8|0;c=i[d+11>>0]|0;if(c<<24>>24<0){e=k[a+12>>2]|0;d=k[d>>2]|0}else e=c&255;c=iC(b)|0;if(e>>>0>=c>>>0)if(c){l=d+e|0;h=b+c|0;m=d;j=l;a:do if((e|0)>=(c|0)?(n=l+(1-c)|0,(n|0)!=(d|0)):0){g=i[b>>0]|0;c=m;while(1){while(1){if((i[d>>0]|0)==g<<24>>24){e=b;f=d;break}d=d+1|0;if((d|0)==(n|0)){c=j;break a}else c=d}do{e=e+1|0;if((e|0)==(h|0))break a;f=f+1|0}while((i[f>>0]|0)==(i[e>>0]|0));d=d+1|0;if((d|0)==(n|0)){c=j;break}else c=d}}else c=j;while(0);if((c|0)==(l|0)|(c-m|0)==-1)o=16;else c=1}else c=1;else o=16;b:do if((o|0)==16){c=k[a+84>>2]|0;d=k[a+80>>2]|0;o=d;if((c|0)!=(d|0)){p=iC(b)|0;q=(p|0)==0;r=b+p|0;s=1-p|0;n=(c-d|0)/340|0;m=0;do{d=o+(m*340|0)+8|0;c=i[d+11>>0]|0;if(c<<24>>24<0){c=k[o+(m*340|0)+12>>2]|0;d=k[d>>2]|0}else c=c&255;if(c>>>0>=p>>>0){if(q){c=1;break b}j=d+c|0;l=d;h=j;c:do if((c|0)>=(p|0)?(t=j+s|0,(t|0)!=(d|0)):0){g=i[b>>0]|0;c=l;while(1){while(1){if((i[d>>0]|0)==g<<24>>24){e=b;f=d;break}d=d+1|0;if((d|0)==(t|0)){c=h;break c}else c=d}do{e=e+1|0;if((e|0)==(r|0))break c;f=f+1|0}while((i[f>>0]|0)==(i[e>>0]|0));d=d+1|0;if((d|0)==(t|0)){c=h;break}else c=d}}else c=h;while(0);if(!((c|0)==(j|0)|(c-l|0)==-1)){c=1;break b}}m=m+1|0}while(m>>>0<n>>>0)}d=k[a+72>>2]|0;c=k[a+68>>2]|0;o=c;if((d|0)==(c|0))c=0;else{p=iC(b)|0;q=(p|0)==0;r=b+p|0;s=1-p|0;n=(d-c|0)/36|0;m=0;while(1){d=o+(m*36|0)+24|0;c=i[d+11>>0]|0;if(c<<24>>24<0){c=k[o+(m*36|0)+28>>2]|0;d=k[d>>2]|0}else c=c&255;if(c>>>0>=p>>>0){if(q){c=1;break b}j=d+c|0;l=d;h=j;d:do if((c|0)>=(p|0)?(u=j+s|0,(u|0)!=(d|0)):0){g=i[b>>0]|0;c=l;while(1){while(1){if((i[d>>0]|0)==g<<24>>24){e=b;f=d;break}d=d+1|0;if((d|0)==(u|0)){c=h;break d}else c=d}do{e=e+1|0;if((e|0)==(r|0))break d;f=f+1|0}while((i[f>>0]|0)==(i[e>>0]|0));d=d+1|0;if((d|0)==(u|0)){c=h;break}else c=d}}else c=h;while(0);if(!((c|0)==(j|0)|(c-l|0)==-1)){c=1;break b}}m=m+1|0;if(m>>>0>=n>>>0){c=0;break}}}}while(0);return c|0}function Ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=b;d=k[e+4>>2]|0;c=a;k[c>>2]=k[e>>2];k[c+4>>2]=d;MM(a+8|0,b+8|0)|0;MM(a+20|0,b+20|0)|0;c=(a|0)==(b|0);if(c){MM(a+44|0,b+44|0)|0;MM(a+56|0,b+56|0)|0}else{Nh(a+32|0,k[b+32>>2]|0,k[b+36>>2]|0);MM(a+44|0,b+44|0)|0;MM(a+56|0,b+56|0)|0;Nh(a+68|0,k[b+68>>2]|0,k[b+72>>2]|0);Ri(a+80|0,k[b+80>>2]|0,k[b+84>>2]|0)}i[a+92>>0]=i[b+92>>0]|0;MM(a+96|0,b+96|0)|0;MM(a+108|0,b+108|0)|0;i[a+120>>0]=i[b+120>>0]|0;f=a+124|0;d=b+124|0;k[f>>2]=k[d>>2];k[f+4>>2]=k[d+4>>2];i[f+8>>0]=i[d+8>>0]|0;MM(a+136|0,b+136|0)|0;i[a+148>>0]=i[b+148>>0]|0;MM(a+152|0,b+152|0)|0;MM(a+164|0,b+164|0)|0;i[a+176>>0]=i[b+176>>0]|0;f=a+180|0;d=b+180|0;k[f>>2]=k[d>>2];k[f+4>>2]=k[d+4>>2];i[f+8>>0]=i[d+8>>0]|0;MM(a+192|0,b+192|0)|0;i[a+204>>0]=i[b+204>>0]|0;MM(a+208|0,b+208|0)|0;MM(a+220|0,b+220|0)|0;f=b+232|0;d=k[f+4>>2]|0;e=a+232|0;k[e>>2]=k[f>>2];k[e+4>>2]=d;i[a+240>>0]=i[b+240>>0]|0;if(!c)Kg(a+244|0,k[b+244>>2]|0,k[b+248>>2]|0);MM(a+256|0,b+256|0)|0;MM(a+268|0,b+268|0)|0;i[a+280>>0]=i[b+280>>0]|0;d=a+284|0;e=b+284|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];i[d+8>>0]=i[e+8>>0]|0;MM(a+296|0,b+296|0)|0;i[a+308>>0]=i[b+308>>0]|0;MM(a+312|0,b+312|0)|0;MM(a+324|0,b+324|0)|0;d=b+336|0;e=k[d+4>>2]|0;f=a+336|0;k[f>>2]=k[d>>2];k[f+4>>2]=e;i[a+344>>0]=i[b+344>>0]|0;if(!c){Kg(a+348|0,k[b+348>>2]|0,k[b+352>>2]|0);qh(a+360|0,k[b+360>>2]|0,k[b+364>>2]|0)}return a|0}function Md(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=r;r=r+304|0;q=B+200|0;s=B+196|0;z=B+184|0;A=B+172|0;t=B+168|0;u=B+8|0;v=B+4|0;w=B;x=NV(d)|0;_z(z,d,q,s);k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[A+(a<<2)>>2]=0;a=a+1|0}o=A+11|0;p=A+8|0;if((i[o>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(A,a,0);a=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=a;k[v>>2]=u;k[w>>2]=0;n=A+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;m=0;h=1}else{m=g;h=0}}else{m=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;C=19;break}}else C=19;while(0);if((C|0)==19){C=0;if(h){g=0;break}else g=0}d=i[o>>0]|0;d=d<<24>>24<0?k[n>>2]|0:d&255;if((k[t>>2]|0)==(a+d|0)){gD(A,d<<1,0);if((i[o>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(A,a,0);a=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=a+d}h=m+12|0;d=k[h>>2]|0;l=m+16|0;if((d|0)==(k[l>>2]|0))d=Ub[k[(k[m>>2]|0)+36>>2]&511](m)|0;else d=k[d>>2]|0;if(Ni(d,x,a,t,w,k[s>>2]|0,z,u,v,q)|0)break;d=k[h>>2]|0;if((d|0)==(k[l>>2]|0)){Ub[k[(k[m>>2]|0)+40>>2]&511](m)|0;g=m;continue}else{k[h>>2]=d+4;g=m;continue}}s=i[z+11>>0]|0;if((s<<24>>24<0?k[z+4>>2]|0:s&255)|0?(y=k[v>>2]|0,(y-u|0)<160):0){w=k[w>>2]|0;k[v>>2]=y+4;k[y>>2]=w}y=it(a,k[t>>2]|0,e,x)|0;j[f>>1]=y;ep(z,u,k[v>>2]|0,e);if(m){a=k[m+12>>2]|0;if((a|0)==(k[m+16>>2]|0))a=Ub[k[(k[m>>2]|0)+36>>2]&511](m)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{C=49;break}else{k[c>>2]=0;C=47;break}}else C=47;while(0);if((C|0)==47?d:0)C=49;if((C|0)==49)k[e>>2]=k[e>>2]|2;C=k[b>>2]|0;p1(A);p1(z);r=B;return C|0}function Nd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=r;r=r+304|0;p=A+200|0;q=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;u=A+4|0;v=A;w=NV(d)|0;_z(y,d,p,q);k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[z+(a<<2)>>2]=0;a=a+1|0}n=z+11|0;o=z+8|0;if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a;k[u>>2]=t;k[v>>2]=0;m=z+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;l=0;h=1}else{l=g;h=0}}else{l=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(h){g=0;break}else g=0}d=i[n>>0]|0;d=d<<24>>24<0?k[m>>2]|0:d&255;if((k[s>>2]|0)==(a+d|0)){gD(z,d<<1,0);if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a+d}h=l+12|0;d=k[h>>2]|0;j=l+16|0;if((d|0)==(k[j>>2]|0))d=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else d=k[d>>2]|0;if(Ni(d,w,a,s,v,k[q>>2]|0,y,t,u,p)|0)break;d=k[h>>2]|0;if((d|0)==(k[j>>2]|0)){Ub[k[(k[l>>2]|0)+40>>2]&511](l)|0;g=l;continue}else{k[h>>2]=d+4;g=l;continue}}q=i[y+11>>0]|0;if((q<<24>>24<0?k[y+4>>2]|0:q&255)|0?(x=k[u>>2]|0,(x-t|0)<160):0){v=k[v>>2]|0;k[u>>2]=x+4;k[x>>2]=v}x=Ct(a,k[s>>2]|0,e,w)|0;k[f>>2]=x;ep(y,t,k[u>>2]|0,e);if(l){a=k[l+12>>2]|0;if((a|0)==(k[l+16>>2]|0))a=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{B=49;break}else{k[c>>2]=0;B=47;break}}else B=47;while(0);if((B|0)==47?d:0)B=49;if((B|0)==49)k[e>>2]=k[e>>2]|2;B=k[b>>2]|0;p1(z);p1(y);r=A;return B|0}function Od(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=r;r=r+304|0;p=A+200|0;q=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;u=A+4|0;v=A;w=NV(d)|0;_z(y,d,p,q);k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[z+(a<<2)>>2]=0;a=a+1|0}n=z+11|0;o=z+8|0;if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a;k[u>>2]=t;k[v>>2]=0;m=z+4|0;g=k[b>>2]|0;a:while(1){if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)==-1){k[b>>2]=0;l=0;h=1}else{l=g;h=0}}else{l=0;h=1}g=k[c>>2]|0;do if(g){d=k[g+12>>2]|0;if((d|0)==(k[g+16>>2]|0))d=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else d=k[d>>2]|0;if((d|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(h){g=0;break}else g=0}d=i[n>>0]|0;d=d<<24>>24<0?k[m>>2]|0:d&255;if((k[s>>2]|0)==(a+d|0)){gD(z,d<<1,0);if((i[n>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(z,a,0);a=(i[n>>0]|0)<0?k[z>>2]|0:z;k[s>>2]=a+d}h=l+12|0;d=k[h>>2]|0;j=l+16|0;if((d|0)==(k[j>>2]|0))d=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else d=k[d>>2]|0;if(Ni(d,w,a,s,v,k[q>>2]|0,y,t,u,p)|0)break;d=k[h>>2]|0;if((d|0)==(k[j>>2]|0)){Ub[k[(k[l>>2]|0)+40>>2]&511](l)|0;g=l;continue}else{k[h>>2]=d+4;g=l;continue}}q=i[y+11>>0]|0;if((q<<24>>24<0?k[y+4>>2]|0:q&255)|0?(x=k[u>>2]|0,(x-t|0)<160):0){v=k[v>>2]|0;k[u>>2]=x+4;k[x>>2]=v}x=Vq(a,k[s>>2]|0,e,w)|0;k[f>>2]=x;ep(y,t,k[u>>2]|0,e);if(l){a=k[l+12>>2]|0;if((a|0)==(k[l+16>>2]|0))a=Ub[k[(k[l>>2]|0)+36>>2]&511](l)|0;else a=k[a>>2]|0;if((a|0)==-1){k[b>>2]=0;d=1}else d=0}else d=1;do if(g){a=k[g+12>>2]|0;if((a|0)==(k[g+16>>2]|0))a=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else a=k[a>>2]|0;if((a|0)!=-1)if(d)break;else{B=49;break}else{k[c>>2]=0;B=47;break}}else B=47;while(0);if((B|0)==47?d:0)B=49;if((B|0)==49)k[e>>2]=k[e>>2]|2;B=k[b>>2]|0;p1(z);p1(y);r=A;return B|0}function Pd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+336|0;g=n+312|0;e=n+156|0;f=n;k[a+36>>2]=c;i[c+40>>0]=0;l=a+24|0;yg(b,44999,4,l)|0;b=k[l>>2]|0;j=a+28|0;a:do if((b|0)!=(k[j>>2]|0)){do{cm(g,b,45004,3);d=b+11|0;if((i[d>>0]|0)<0){i[k[b>>2]>>0]=0;k[b+4>>2]=0;d=b}else{i[b>>0]=0;i[d>>0]=0;d=b}Qm(b,0);k[d>>2]=k[g>>2];k[d+4>>2]=k[g+4>>2];k[d+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);b=b+12|0}while((b|0)!=(k[j>>2]|0));d=k[l>>2]|0;if((d|0)!=(b|0)){h=i[d+11>>0]|0;if(((h<<24>>24<0?k[d+4>>2]|0:h&255)|0)==7?(cA(d,0,-1,45073,7)|0)==0:0){d=k[c>>2]|0;e=c+4|0;b=k[e>>2]|0;if((b|0)!=(d|0))do{h=b+-96|0;k[e>>2]=h;p1(b+-28|0);p1(b+-40|0);p1(h);b=k[e>>2]|0}while((b|0)!=(d|0));d=a+12|0;nD(g,a,0,(ZD(a,47,-1)|0)+1|0,a);b=d+11|0;if((i[b>>0]|0)<0){i[k[d>>2]>>0]=0;k[a+16>>2]=0;b=d}else{i[d>>0]=0;i[b>>0]=0;b=d}Qm(d,0);k[b>>2]=k[g>>2];k[b+4>>2]=k[g+4>>2];k[b+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);h=a+40|0;k[h>>2]=1;d=k[j>>2]|0;b=k[l>>2]|0;if(((d-b|0)/12|0)>>>0>1){g=1;do{e=b;f=i[e+(g*12|0)+11>>0]|0;if(f<<24>>24<0)e=k[e+(g*12|0)+4>>2]|0;else e=f&255;if(!e)e=g;else{if(!(tc(a)|0)){b=0;break a}e=k[h>>2]|0;b=k[l>>2]|0;d=k[j>>2]|0}g=e+1|0;k[h>>2]=g}while(g>>>0<((d-b|0)/12|0)>>>0)}MM(c+44|0,a)|0;b=1;break}if((k[2783]|0)<5){Qd(f,45008,113,4,0,0,0);Tn(Tn(f,45037,20)|0,45081,20)|0;hi(f);b=0}else b=0}else m=8}else m=8;while(0);if((m|0)==8)if((k[2783]|0)<4){Qd(e,45008,109,3,0,0,0);Tn(Tn(e,45037,20)|0,45058,14)|0;hi(e);b=0}else b=0;r=n;return b|0}function Qd(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0;m=r;r=r+160|0;j=m+136|0;l=m;g=a+4|0;k[a>>2]=4176;k[a+56>>2]=4196;GK(a+56|0,g);k[a+128>>2]=0;k[a+132>>2]=-1;k[a>>2]=4216;k[a+56>>2]=4236;sT(g);k[g>>2]=1740;h=a+36|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[a+52>>2]=16;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;cn(g,j);p1(j);g=a+136|0;k[g>>2]=d;h=a+140|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[a+152>>2]=50;if(1)VC(a);Tn(a,46645,5)|0;if((k[g>>2]|0)>=3){switch(d|0){case 0:{g=46688;break}case 1:{g=46680;break}case 2:{g=46675;break}case 3:{g=46667;break}case 4:{g=46661;break}default:g=46651}d=Tn(Tn(a,g,iC(g)|0)|0,68489,1)|0;n=V8(b,47)|0;g=V8(b,92)|0;b=(n|0)!=0|(g|0)!=0?(n>>>0>g>>>0?n:g)+1|0:b;Tn(Mn(Tn(Tn(d,b,iC(b)|0)|0,69224,1)|0,c)|0,46698,3)|0}if(e|0){d=l+4|0;k[l>>2]=4176;b=l+56|0;k[b>>2]=4196;GK(l+56|0,d);k[l+128>>2]=0;k[l+132>>2]=-1;k[l>>2]=4216;k[l+56>>2]=4236;sT(d);k[d>>2]=1740;c=l+36|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[l+52>>2]=16;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;cn(d,j);p1(j);n=Tn(l,46702,3)|0;k[n+(k[(k[n>>2]|0)+-12>>2]|0)+76>>2]=48;g=n+(k[(k[n>>2]|0)+-12>>2]|0)+4|0;k[g>>2]=k[g>>2]&-75|8;k[n+(k[(k[n>>2]|0)+-12>>2]|0)+12>>2]=8;Tn(Mn(n,f)|0,103292,1)|0;if((e|0)==1){e=Tn(l,103341,1)|0;n=iE(f)|0;Tn(e,n,iC(n)|0)|0}Yr(j,d);g=h+11|0;if((i[g>>0]|0)<0){i[k[h>>2]>>0]=0;k[a+144>>2]=0}else{i[h>>0]=0;i[g>>0]=0}Qm(h,0);k[h>>2]=k[j>>2];k[h+4>>2]=k[j+4>>2];k[h+8>>2]=k[j+8>>2];k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;p1(j);k[l>>2]=4216;k[b>>2]=4236;k[d>>2]=1740;p1(c);I3(d);Qaa(l,4248);N8(b)}r=m;return}function Rd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;d=r;r=r+128|0;f=d+112|0;v=d+104|0;u=d+96|0;t=d+88|0;s=d+80|0;q=d+72|0;p=d+64|0;o=d+56|0;n=d+48|0;m=d+40|0;l=d+32|0;j=d+24|0;i=d+16|0;h=d+8|0;g=d;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;k[a>>2]=18600;k[a+4>>2]=18628;e=a+20|0;k[e>>2]=b;b=a+24|0;k[b>>2]=c;k[v>>2]=54;k[v+4>>2]=0;k[f>>2]=k[v>>2];k[f+4>>2]=k[v+4>>2];Kv(c+116|0,a,f);c=(k[b>>2]|0)+136|0;k[u>>2]=372;k[u+4>>2]=0;k[f>>2]=k[u>>2];k[f+4>>2]=k[u+4>>2];Zw(c,a,f);c=(k[b>>2]|0)+156|0;k[t>>2]=373;k[t+4>>2]=0;k[f>>2]=k[t>>2];k[f+4>>2]=k[t+4>>2];Zw(c,a,f);c=(k[b>>2]|0)+176|0;k[s>>2]=55;k[s+4>>2]=0;k[f>>2]=k[s>>2];k[f+4>>2]=k[s+4>>2];kw(c,a,f);c=(k[b>>2]|0)+196|0;k[q>>2]=56;k[q+4>>2]=0;k[f>>2]=k[q>>2];k[f+4>>2]=k[q+4>>2];Nw(c,a,f);c=(k[b>>2]|0)+216|0;k[p>>2]=133;k[p+4>>2]=0;k[f>>2]=k[p>>2];k[f+4>>2]=k[p+4>>2];Tw(c,a,f);c=(k[b>>2]|0)+236|0;k[o>>2]=374;k[o+4>>2]=0;k[f>>2]=k[o>>2];k[f+4>>2]=k[o+4>>2];Zw(c,a,f);c=(k[b>>2]|0)+256|0;k[n>>2]=1301;k[n+4>>2]=0;k[f>>2]=k[n>>2];k[f+4>>2]=k[n+4>>2];Ox(c,a,f);c=(k[b>>2]|0)+376|0;k[m>>2]=134;k[m+4>>2]=0;k[f>>2]=k[m>>2];k[f+4>>2]=k[m+4>>2];Wu(c,a,f);c=(k[b>>2]|0)+336|0;k[l>>2]=375;k[l+4>>2]=0;k[f>>2]=k[l>>2];k[f+4>>2]=k[l+4>>2];Gx(c,a,f);c=(k[b>>2]|0)+396|0;k[j>>2]=376;k[j+4>>2]=0;k[f>>2]=k[j>>2];k[f+4>>2]=k[j+4>>2];mv(c,a,f);c=(k[b>>2]|0)+416|0;k[i>>2]=377;k[i+4>>2]=0;k[f>>2]=k[i>>2];k[f+4>>2]=k[i+4>>2];Yu(c,a,f);c=(k[b>>2]|0)+356|0;k[h>>2]=57;k[h+4>>2]=0;k[f>>2]=k[h>>2];k[f+4>>2]=k[h+4>>2];Lu(c,a,f);c=(k[(k[b>>2]|0)+916>>2]|0)+76|0;k[g>>2]=378;k[g+4>>2]=0;k[f>>2]=k[g>>2];k[f+4>>2]=k[g+4>>2];Aw(c,a,f);Ta(132,k[e>>2]|0)|0;r=d;return}function Sd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+160|0;m=o+136|0;n=o;d=Ju(a,b)|0;a:do if((d|0)==(a+136|0))d=0;else{l=d+28|0;j=l+11|0;e=i[j>>0]|0;h=d+32|0;d=k[h>>2]|0;if(((e<<24>>24<0?d:e&255)|0)==4){if(cA(l,0,-1,108754,4)|0){e=i[j>>0]|0;d=k[h>>2]|0;f=5}}else f=5;do if((f|0)==5){if(((e<<24>>24<0?d:e&255)|0)==2){if(!(cA(l,0,-1,47403,2)|0))break;e=i[j>>0]|0;d=k[h>>2]|0}if(((e<<24>>24<0?d:e&255)|0)==3){if(!(cA(l,0,-1,47406,3)|0))break;e=i[j>>0]|0;d=k[h>>2]|0}if(((e<<24>>24<0?d:e&255)|0)==5){if(cA(l,0,-1,108748,5)|0){e=i[j>>0]|0;d=k[h>>2]|0;f=15}}else f=15;do if((f|0)==15){if(((e<<24>>24<0?d:e&255)|0)==3){if(!(cA(l,0,-1,47410,3)|0))break;e=i[j>>0]|0;d=k[h>>2]|0}if(((e<<24>>24<0?d:e&255)|0)==2?(cA(l,0,-1,47414,2)|0)==0:0)break;f=n+4|0;k[n>>2]=4176;c=n+56|0;k[c>>2]=4196;GK(n+56|0,f);k[n+128>>2]=0;k[n+132>>2]=-1;k[n>>2]=4216;k[n+56>>2]=4236;sT(f);k[f>>2]=1740;g=n+36|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[n+52>>2]=16;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;cn(f,m);p1(m);d=i[b+11>>0]|0;e=d<<24>>24<0;b=Tn(Tn(n,e?k[b>>2]|0:b,e?k[b+4>>2]|0:d&255)|0,47417,43)|0;d=i[j>>0]|0;e=d<<24>>24<0;Tn(b,e?k[l>>2]|0:l,e?k[h>>2]|0:d&255)|0;Yr(m,f);d=a+148|0;e=k[d>>2]|0;if(e>>>0<(k[a+152>>2]|0)>>>0){k[e>>2]=k[m>>2];k[e+4>>2]=k[m+4>>2];k[e+8>>2]=k[m+8>>2];k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[d>>2]=(k[d>>2]|0)+12}else sj(a+144|0,m);p1(m);k[n>>2]=4216;k[c>>2]=4236;k[f>>2]=1740;p1(g);I3(f);Qaa(n,4248);N8(c);d=0;break a}while(0);i[c>>0]=0;d=1;break a}while(0);i[c>>0]=1;d=1}while(0);r=o;return d|0}function Td(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+112|0;h=y;m=(d-c|0)/12|0;if(m>>>0>100){j=lc(m)|0;if(!j){h=0;w=0}else{h=j;w=j}}else w=0;o=c;p=h;j=0;while(1){if((o|0)==(d|0))break;n=i[o+11>>0]|0;if(n<<24>>24<0)n=k[o+4>>2]|0;else n=n&255;if(!n){i[p>>0]=2;m=m+-1|0;j=j+1|0}else i[p>>0]=1;o=o+12|0;p=p+1|0}v=0;q=j;a:while(1){j=k[a>>2]|0;do if(j){if((k[j+12>>2]|0)==(k[j+16>>2]|0))if((Ub[k[(k[j>>2]|0)+36>>2]&511](j)|0)==-1){k[a>>2]=0;j=0;break}else{j=k[a>>2]|0;break}}else j=0;while(0);n=(j|0)==0;j=k[b>>2]|0;if(j)if((k[j+12>>2]|0)==(k[j+16>>2]|0)?(Ub[k[(k[j>>2]|0)+36>>2]&511](j)|0)==-1:0){k[b>>2]=0;o=0}else o=j;else o=0;p=(o|0)==0;j=k[a>>2]|0;if(!((m|0)!=0&(n^p)))break;n=k[j+12>>2]|0;if((n|0)==(k[j+16>>2]|0))j=Ub[k[(k[j>>2]|0)+36>>2]&511](j)|0;else j=l[n>>0]|0;j=j&255;if(!g)j=cc[k[(k[e>>2]|0)+12>>2]&127](e,j)|0;u=v+1|0;s=c;p=0;t=h;while(1){if((s|0)==(d|0))break;do if((i[t>>0]|0)==1){o=s+11|0;if((i[o>>0]|0)<0)n=k[s>>2]|0;else n=s;n=i[n+v>>0]|0;if(!g)n=cc[k[(k[e>>2]|0)+12>>2]&127](e,n)|0;if(j<<24>>24!=n<<24>>24){i[t>>0]=0;n=p;o=q;m=m+-1|0;break}n=i[o>>0]|0;if(n<<24>>24<0)n=k[s+4>>2]|0;else n=n&255;if((n|0)==(u|0)){i[t>>0]=2;n=1;o=q+1|0;m=m+-1|0}else{n=1;o=q}}else{n=p;o=q}while(0);s=s+12|0;p=n;t=t+1|0;q=o}if(!p){v=u;continue}j=k[a>>2]|0;n=j+12|0;o=k[n>>2]|0;if((o|0)==(k[j+16>>2]|0))Ub[k[(k[j>>2]|0)+40>>2]&511](j)|0;else k[n>>2]=o+1;if((q+m|0)>>>0>1){o=c;p=h;j=q}else{v=u;continue}while(1){if((o|0)==(d|0)){v=u;q=j;continue a}if((i[p>>0]|0)==2){n=i[o+11>>0]|0;if(n<<24>>24<0)n=k[o+4>>2]|0;else n=n&255;if((n|0)!=(u|0)){i[p>>0]=0;j=j+-1|0}}o=o+12|0;p=p+1|0}}do if(j){if((k[j+12>>2]|0)==(k[j+16>>2]|0))if((Ub[k[(k[j>>2]|0)+36>>2]&511](j)|0)==-1){k[a>>2]=0;j=0;break}else{j=k[a>>2]|0;break}}else j=0;while(0);j=(j|0)==0;do if(!p){if((k[o+12>>2]|0)==(k[o+16>>2]|0)?(Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0)==-1:0){k[b>>2]=0;x=34;break}if(!j)x=69}else x=34;while(0);if((x|0)==34)if(j)x=69;if((x|0)==69)k[f>>2]=k[f>>2]|2;while(1){if((c|0)==(d|0)){x=73;break}if((i[h>>0]|0)==2)break;c=c+12|0;h=h+1|0}if((x|0)==73){k[f>>2]=k[f>>2]|4;c=d}wc(w);r=y;return c|0}function Ud(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0.0;s=r;r=r+272|0;o=s+252|0;q=s+240|0;e=s+84|0;j=s+32|0;l=s+16|0;m=s;f=s+72|0;g=s+60|0;h=s+48|0;k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;if(!(Og(a+208|0,b,o,q)|0))if((k[2783]|0)<5){Qd(e,47907,564,4,0,0,0);n=Tn(e,47926,13)|0;n=Tn(Tn(Tn(n,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48322,24)|0;n=Tn(Ln(n,k[b+28>>2]|0)|0,48347,11)|0;Tn(Qn(n,+p[b>>3])|0,103298,1)|0;hi(e);b=0}else b=0;else{yF(j,q);p[l>>3]=-2.0;b=l+8|0;p[b>>3]=-1.0;if(d|0){k[l>>2]=k[d>>2];k[l+4>>2]=k[d+4>>2];k[l+8>>2]=k[d+8>>2];k[l+12>>2]=k[d+12>>2]}t=+p[j+8>>3];do if(t>=0.0?+p[j>>3]<=t:0){t=+p[b>>3];if(t>=0.0?+p[l>>3]<=t:0){uI(m,j,l);k[l>>2]=k[m>>2];k[l+4>>2]=k[m+4>>2];k[l+8>>2]=k[m+8>>2];k[l+12>>2]=k[m+12>>2];break}else{k[l>>2]=k[j>>2];k[l+4>>2]=k[j+4>>2];k[l+8>>2]=k[j+8>>2];k[l+12>>2]=k[j+12>>2];break}}else n=8;while(0);if((n|0)==8){k[l>>2]=k[j>>2];k[l+4>>2]=k[j+4>>2];k[l+8>>2]=k[j+8>>2];k[l+12>>2]=k[j+12>>2]}t=+p[b>>3];if(t>=0.0?+p[l>>3]<=t:0){k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,51477,iC(51477)|0);P0(g,l);PW(f,g);Wv(c,m,f);p1(f);p1(g);p1(m)}o7(c,1e4);if(!(i[(k[(k[a+32>>2]|0)+916>>2]|0)+648>>0]|0))HT(c,0,o);else{iI(h,o);mg(m,h);HT(c,0,m);p1(m);p1(h)}Ot(c);b=1}p1(q);p1(o);r=s;return b|0}function Vd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=a+1052|0;b=k[r>>2]|0;a:do if(!b){o=k[a+940>>2]|0;e=o+40|0;p=i[e+11>>0]|0;q=p<<24>>24<0;if(q){b=k[o+44>>2]|0;a=k[e>>2]|0}else{b=p&255;a=e}if(b>>>0>=4){g=a+b|0;h=a;f=g;b:do if((b|0)>=4?(j=g+-3|0,(j|0)!=(a|0)):0){b=h;while(1){while(1){if((i[a>>0]|0)==109){c=28768;d=a;break}a=a+1|0;if((a|0)==(j|0)){b=f;break b}else b=a}do{c=c+1|0;if((c|0)==28772)break b;d=d+1|0}while((i[d>>0]|0)==(i[c>>0]|0));a=a+1|0;if((a|0)==(j|0)){b=f;break}else b=a}}else b=f;while(0);if(!((b|0)==(g|0)|(b-h|0)==-1)){k[r>>2]=2;b=2;break}}if(q){b=k[o+44>>2]|0;a=k[e>>2]|0}else{b=p&255;a=e}if(b>>>0>=3){g=a+b|0;h=a;f=g;c:do if((b|0)>=3?(l=g+-2|0,(l|0)!=(a|0)):0){b=h;while(1){while(1){if((i[a>>0]|0)==109){c=28773;d=a;break}a=a+1|0;if((a|0)==(l|0)){b=f;break c}else b=a}do{c=c+1|0;if((c|0)==28776)break c;d=d+1|0}while((i[d>>0]|0)==(i[c>>0]|0));a=a+1|0;if((a|0)==(l|0)){b=f;break}else b=a}}else b=f;while(0);if((b|0)==(g|0)|(b-h|0)==-1)m=29}else m=29;do if((m|0)==29){if(q){b=k[o+44>>2]|0;a=k[e>>2]|0}else{b=p&255;a=e}if(b>>>0>=4){g=a+b|0;h=a;f=g;d:do if((b|0)>=4?(n=g+-3|0,(n|0)!=(a|0)):0){b=h;while(1){while(1){if((i[a>>0]|0)==100){c=28777;d=a;break}a=a+1|0;if((a|0)==(n|0)){b=f;break d}else b=a}do{c=c+1|0;if((c|0)==28781)break d;d=d+1|0}while((i[d>>0]|0)==(i[c>>0]|0));a=a+1|0;if((a|0)==(n|0)){b=f;break}else b=a}}else b=f;while(0);if(!((b|0)==(g|0)|(b-h|0)==-1))break}if(q){e=k[e>>2]|0;b=k[o+44>>2]|0}else b=p&255;d=e+b|0;e:do if((b|0)<4)a=d;else f:while(1){while(1){if((b|0)==3){a=d;break e}b=b+-1|0;a=e+b|0;if((i[a>>0]|0)==52){c=28785;break}}while(1){if((c|0)==28782)break e;a=a+-1|0;c=c+-1|0;if((i[a>>0]|0)!=(i[c>>0]|0))continue f}}while(0);if(q)b=k[o+44>>2]|0;else b=p&255;if((((a|0)==(d|0)?-1:a-e|0)|0)==(b+-4|0)){k[r>>2]=3;b=3;break a}else{k[r>>2]=2;b=2;break a}}while(0);k[r>>2]=3;b=3}while(0);return b|0}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+96|0;j=q+64|0;l=q+48|0;m=q+32|0;n=q+16|0;o=q+80|0;p=q;g=N6(b,56360)|0;h=a+36|0;mD(l,6);f=k[h>>2]|0;c=k[f+452>>2]|0;f=f+448|0;if((c|0)!=(f|0)){b=0;d=c;e=c;do{c=k[d+8>>2]|0;if(Ub[k[(k[c>>2]|0)+64>>2]&511](c)|0){d=N6(g,56378)|0;fY(j,Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0);GA(d,j)|0;Lv(j)}else{d=N6(Wi(l,b)|0,56364)|0;Ix(j,c+8|0);GA(d,j)|0;Lv(j);d=N6(Wi(l,b)|0,56089)|0;DZ(j,(Ub[k[(k[c>>2]|0)+28>>2]&511](c)|0)>>>10);GA(d,j)|0;Lv(j);d=N6(Wi(l,b)|0,56367)|0;fY(j,Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0);GA(d,j)|0;Lv(j);b=b+1|0}d=k[e+4>>2]|0;e=d}while((e|0)!=(f|0))}GA(N6(g,56388)|0,l)|0;f=N6(g,56394)|0;fY(j,RX((k[h>>2]|0)+2184|0)|0);GA(f,j)|0;Lv(j);T1((k[h>>2]|0)+2184|0);mD(j,6);f=k[h>>2]|0;b=k[f+464>>2]|0;if((b|0)!=(f+468|0)){d=0;c=b;while(1){b=Wi(j,d)|0;Ix(m,c+16|0);GA(b,m)|0;Lv(m);d=d+1|0;b=k[c+4>>2]|0;if(!b)while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((b|0)==((k[h>>2]|0)+468|0))break;else c=b}}GA(N6(g,56406)|0,j)|0;mD(m,6);f=k[h>>2]|0;b=k[f+504>>2]|0;if((b|0)!=(f+508|0)){d=0;c=b;while(1){b=Wi(m,d)|0;Ix(n,c+16|0);GA(b,n)|0;Lv(n);d=d+1|0;b=k[c+4>>2]|0;if(!b)while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((b|0)==((k[h>>2]|0)+508|0))break;else c=b}}GA(N6(g,56416)|0,m)|0;if(i[a+58>>0]|0){mD(n,6);$0(o,k[h>>2]|0);b=k[o+4>>2]|0;c=b;if((c|0)!=(o|0)){d=0;while(1){a=Wi(n,d)|0;f=k[b+8>>2]|0;Sb[k[(k[f>>2]|0)+8>>2]&511](p,f);GA(a,p)|0;Lv(p);b=k[c+4>>2]|0;c=b;if((c|0)==(o|0))break;else d=d+1|0}}GA(N6(g,56435)|0,n)|0;$H(o);Lv(n)}HK(k[h>>2]|0);Lv(m);Lv(j);Lv(l);r=q;return}function Xd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0;o=r;r=r+16|0;n=o;ar(a,b);e=1;c=a+4|0;while(1){c=k[c>>2]|0;d=e+1|0;if(!c)break;else{e=d;c=c+4|0}}m=r;r=r+((1*d|0)+15&-16)|0;XG(m|0,32,e|0)|0;i[m+e>>0]=0;j=Tn(b,69172,14)|0;f=LZ(j+(k[(k[j>>2]|0)+-12>>2]|0)|0)|0;k[n>>2]=f;f=k_(n,111604)|0;f=cc[k[(k[f>>2]|0)+28>>2]&127](f,10)|0;t6(n);Ss(j,f)|0;UA(j)|0;j=a+52|0;f=a+56|0;if((k[f>>2]|0)!=(k[j>>2]|0)){a=0;do{h=Tn(Mn(Tn(b,m,iC(m)|0)|0,a)|0,69187,28)|0;g=LZ(h+(k[(k[h>>2]|0)+-12>>2]|0)|0)|0;k[n>>2]=g;g=k_(n,111604)|0;g=cc[k[(k[g>>2]|0)+28>>2]&127](g,10)|0;t6(n);Ss(h,g)|0;UA(h)|0;h=k[j>>2]|0;g=h+(a*12|0)|0;h=h+(a*12|0)+4|0;if((k[h>>2]|0)!=(k[g>>2]|0)){c=0;do{Tn(Mn(Tn(Tn(b,m,iC(m)|0)|0,69216,7)|0,c)|0,68001,2)|0;d=k[g>>2]|0;if(c>>>0<(k[h>>2]|0)-d>>3>>>0){e=0;do{p=d;q=Tn(b,103341,1)|0;q=Tn(Ln(q,l[p+(c<<3)>>0]|0)|0,69224,1)|0;Tn(Ln(q,k[p+(c<<3)+4>>2]|0)|0,69226,2)|0;e=e+1|0;c=c+1|0;d=k[g>>2]|0}while((e|0)<20?c>>>0<(k[h>>2]|0)-d>>3>>>0:0)}q=LZ(b+(k[(k[b>>2]|0)+-12>>2]|0)|0)|0;k[n>>2]=q;q=k_(n,111604)|0;q=cc[k[(k[q>>2]|0)+28>>2]&127](q,10)|0;t6(n);Ss(b,q)|0;UA(b)|0}while(c>>>0<(k[h>>2]|0)-(k[g>>2]|0)>>3>>>0)}q=Tn(b,103292,1)|0;p=LZ(q+(k[(k[q>>2]|0)+-12>>2]|0)|0)|0;k[n>>2]=p;p=k_(n,111604)|0;p=cc[k[(k[p>>2]|0)+28>>2]&127](p,10)|0;t6(n);Ss(q,p)|0;UA(q)|0;a=a+1|0}while(a>>>0<(((k[f>>2]|0)-(k[j>>2]|0)|0)/12|0)>>>0)}Tn(b,103292,1)|0;r=o;return}function Yd(a,b){a=a|0;b=b|0;var c=0,d=0;ar(a,b);Tn(110732,68724,10)|0;d=Tn(110732,68735,5)|0;d=Tn(Ln(d,k[a+52>>2]|0)|0,68741,4)|0;d=Tn(Gn(d,j[a+56>>1]|0)|0,68746,16)|0;Ln(d,l[a+58>>0]|0)|0;Tn(110732,103298,1)|0;Tn(110732,68763,17)|0;d=Tn(110732,68735,5)|0;Ln(d,k[a+60>>2]|0)|0;d=Tn(110732,68781,14)|0;Ln(d,l[a+64>>0]|0)|0;d=Tn(110732,68796,12)|0;Ln(d,l[a+65>>0]|0)|0;d=Tn(110732,68809,14)|0;Ln(d,k[a+68>>2]|0)|0;d=Tn(110732,68824,12)|0;Ln(d,k[a+72>>2]|0)|0;d=Tn(110732,68837,12)|0;Ln(d,k[a+76>>2]|0)|0;Tn(110732,103298,1)|0;Tn(110732,68850,19)|0;d=Tn(110732,68735,5)|0;c=a+80|0;Ln(d,k[c>>2]|0)|0;Tn(110732,68870,13)|0;d=110732+(k[(k[27683]|0)+-12>>2]|0)+4|0;k[d>>2]=k[d>>2]&-75|8;if(k[c>>2]|0){d=a+84|0;b=0;do{Tn(Ln(110732,l[(k[d>>2]|0)+b>>0]|0)|0,103341,1)|0;b=b+1|0}while(b>>>0<(k[c>>2]|0)>>>0)}c=110732+(k[(k[27683]|0)+-12>>2]|0)+4|0;k[c>>2]=k[c>>2]&-75|2;Tn(110732,103298,1)|0;Tn(110732,68884,16)|0;c=Tn(110732,68735,5)|0;d=a+88|0;Ln(c,k[d>>2]|0)|0;Tn(110732,68870,13)|0;c=110732+(k[(k[27683]|0)+-12>>2]|0)+4|0;k[c>>2]=k[c>>2]&-75|8;if(k[d>>2]|0){c=a+92|0;b=0;do{Tn(Ln(110732,l[(k[c>>2]|0)+b>>0]|0)|0,103341,1)|0;b=b+1|0}while(b>>>0<(k[d>>2]|0)>>>0)}a=110732+(k[(k[27683]|0)+-12>>2]|0)+4|0;k[a>>2]=k[a>>2]&-75|2;Tn(110732,103298,1)|0;return}function Zd(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=r;r=r+16|0;v=y;w=k_(g,111636)|0;t=k_(g,111644)|0;Sb[k[(k[t>>2]|0)+20>>2]&511](v,t);k[f>>2]=d;g=i[a>>0]|0;switch(g<<24>>24){case 43:case 45:{u=cc[k[(k[w>>2]|0)+44>>2]&127](w,g)|0;g=k[f>>2]|0;k[f>>2]=g+4;k[g>>2]=u;g=a+1|0;break}default:g=a}u=c;a:do if((u-g|0)>1?(i[g>>0]|0)==48:0){h=g+1|0;switch(i[h>>0]|0){case 88:case 120:break;default:{h=g;x=10;break a}}q=cc[k[(k[w>>2]|0)+44>>2]&127](w,48)|0;s=k[f>>2]|0;k[f>>2]=s+4;k[s>>2]=q;g=g+2|0;s=cc[k[(k[w>>2]|0)+44>>2]&127](w,i[h>>0]|0)|0;h=k[f>>2]|0;k[f>>2]=h+4;k[h>>2]=s;h=g;while(1){if(h>>>0>=c>>>0)break a;s=i[h>>0]|0;if(!(Zaa(s,J_()|0)|0))break a;h=h+1|0}}else{h=g;x=10}while(0);b:do if((x|0)==10)while(1){x=0;if(h>>>0>=c>>>0)break b;s=i[h>>0]|0;if(!(Daa(s,J_()|0)|0))break b;h=h+1|0;x=10}while(0);q=v+11|0;p=i[q>>0]|0;s=v+4|0;c:do if((p<<24>>24<0?k[s>>2]|0:p&255)|0){d:do if((g|0)!=(h|0)){j=h;l=g;while(1){j=j+-1|0;if(l>>>0>=j>>>0)break d;p=i[l>>0]|0;i[l>>0]=i[j>>0]|0;i[j>>0]=p;l=l+1|0}}while(0);p=Ub[k[(k[t>>2]|0)+16>>2]&511](t)|0;o=g;j=0;l=0;while(1){if(o>>>0>=h>>>0)break;m=i[q>>0]|0;n=m<<24>>24<0;z=i[(n?k[v>>2]|0:v)+j>>0]|0;if(z<<24>>24>0&(l|0)==(z<<24>>24|0)){l=k[f>>2]|0;k[f>>2]=l+4;k[l>>2]=p;j=(j>>>0<((n?k[s>>2]|0:m&255)+-1|0)>>>0&1)+j|0;l=0}n=cc[k[(k[w>>2]|0)+44>>2]&127](w,i[o>>0]|0)|0;z=k[f>>2]|0;k[f>>2]=z+4;k[z>>2]=n;o=o+1|0;l=l+1|0}g=d+(g-a<<2)|0;l=k[f>>2]|0;if((g|0)==(l|0))j=w;else{j=l;while(1){j=j+-4|0;if(g>>>0>=j>>>0){j=w;g=l;break c}z=k[g>>2]|0;k[g>>2]=k[j>>2];k[j>>2]=z;g=g+4|0}}}else{ec[k[(k[w>>2]|0)+48>>2]&15](w,g,h,k[f>>2]|0)|0;g=(k[f>>2]|0)+(h-g<<2)|0;k[f>>2]=g;j=w}while(0);while(1){if(h>>>0>=c>>>0)break;g=i[h>>0]|0;if(g<<24>>24==46){x=29;break}s=cc[k[(k[j>>2]|0)+44>>2]&127](w,g)|0;z=k[f>>2]|0;g=z+4|0;k[f>>2]=g;k[z>>2]=s;h=h+1|0}if((x|0)==29){x=Ub[k[(k[t>>2]|0)+12>>2]&511](t)|0;z=k[f>>2]|0;g=z+4|0;k[f>>2]=g;k[z>>2]=x;h=h+1|0}ec[k[(k[w>>2]|0)+48>>2]&15](w,h,c,g)|0;z=(k[f>>2]|0)+(u-h<<2)|0;k[f>>2]=z;k[e>>2]=(b|0)==(c|0)?z:d+(b-a<<2)|0;p1(v);r=y;return}function _d(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0;f=k[a>>2]|0;do if(f){if((k[f+12>>2]|0)==(k[f+16>>2]|0))if((Ub[k[(k[f>>2]|0)+36>>2]&511](f)|0)==-1){k[a>>2]=0;f=0;break}else{f=k[a>>2]|0;break}}else f=0;while(0);g=(f|0)==0;f=k[b>>2]|0;do if(f){if((k[f+12>>2]|0)==(k[f+16>>2]|0)?(Ub[k[(k[f>>2]|0)+36>>2]&511](f)|0)==-1:0){k[b>>2]=0;r=11;break}if(g)r=13;else r=12}else r=11;while(0);if((r|0)==11)if(g)r=12;else{f=0;r=13}a:do if((r|0)==12){k[c>>2]=k[c>>2]|6;f=0}else if((r|0)==13){g=k[a>>2]|0;h=k[g+12>>2]|0;if((h|0)==(k[g+16>>2]|0))g=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else g=l[h>>0]|0;h=g&255;if(h<<24>>24>-1?(q=d+8|0,j[(k[q>>2]|0)+(g<<24>>24<<1)>>1]&2048):0){g=(Yb[k[(k[d>>2]|0)+36>>2]&31](d,h,0)|0)<<24>>24;h=k[a>>2]|0;i=h+12|0;m=k[i>>2]|0;if((m|0)==(k[h+16>>2]|0)){Ub[k[(k[h>>2]|0)+40>>2]&511](h)|0;m=f;i=f}else{k[i>>2]=m+1;m=f;i=f}while(1){f=g+-48|0;o=e+-1|0;g=k[a>>2]|0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0))if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1){k[a>>2]=0;g=0;break}else{g=k[a>>2]|0;break}}else g=0;while(0);h=(g|0)==0;if(i)if((k[i+12>>2]|0)==(k[i+16>>2]|0))if((Ub[k[(k[i>>2]|0)+36>>2]&511](i)|0)==-1){k[b>>2]=0;p=0;n=0}else{p=m;n=m}else{p=m;n=i}else{p=m;n=0}g=k[a>>2]|0;if(!((e|0)>1&(h^(n|0)==0)))break;h=k[g+12>>2]|0;if((h|0)==(k[g+16>>2]|0))g=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else g=l[h>>0]|0;h=g&255;if(h<<24>>24<=-1)break a;if(!(j[(k[q>>2]|0)+(g<<24>>24<<1)>>1]&2048))break a;g=((Yb[k[(k[d>>2]|0)+36>>2]&31](d,h,0)|0)<<24>>24)+(f*10|0)|0;f=k[a>>2]|0;h=f+12|0;i=k[h>>2]|0;if((i|0)==(k[f+16>>2]|0)){Ub[k[(k[f>>2]|0)+40>>2]&511](f)|0;e=o;m=p;i=n;continue}else{k[h>>2]=i+1;e=o;m=p;i=n;continue}}do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0))if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1){k[a>>2]=0;g=0;break}else{g=k[a>>2]|0;break}}else g=0;while(0);g=(g|0)==0;do if(p){if((k[p+12>>2]|0)==(k[p+16>>2]|0)?(Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0)==-1:0){k[b>>2]=0;r=50;break}if(g)break a}else r=50;while(0);if((r|0)==50?!g:0)break;k[c>>2]=k[c>>2]|2;break}k[c>>2]=k[c>>2]|4;f=0}while(0);return f|0}function $d(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=50;k[a+4>>2]=30;k[a+8>>2]=100;k[a+12>>2]=4;k[a+20>>2]=15360;p[a+24>>3]=1.1;p[a+32>>3]=1.0;k[a+40>>2]=12e4;k[a+44>>2]=5e3;k[a+48>>2]=1;k[a+52>>2]=1;p[a+56>>3]=.8;p[a+64>>3]=.2;i[a+72>>0]=0;i[a+73>>0]=0;i[a+74>>0]=0;i[a+75>>0]=1;i[a+76>>0]=0;i[a+77>>0]=0;i[a+78>>0]=0;i[a+79>>0]=1;k[a+80>>2]=30;k[a+84>>2]=2e3;p[a+88>>3]=1.0;p[a+96>>3]=.8;k[a+104>>2]=20;k[a+108>>2]=12e4;k[a+112>>2]=18e4;k[a+116>>2]=3;k[a+120>>2]=1e4;k[a+124>>2]=5;p[a+128>>3]=.1;i[a+136>>0]=1;p[a+144>>3]=.4;k[a+152>>2]=1e3;k[a+156>>2]=1;k[a+160>>2]=3;k[a+164>>2]=7;k[a+168>>2]=6;k[a+172>>2]=1;k[a+176>>2]=0;k[a+180>>2]=1;k[a+184>>2]=15e3;k[a+188>>2]=2e3;k[a+192>>2]=200;k[a+196>>2]=30;k[a+200>>2]=5;p[a+208>>3]=.2;c=a+216|0;k[c>>2]=1;i[a+220>>0]=1;b=a+224|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;wE(b,35986,9);k[a+236>>2]=0;k[a+240>>2]=15;k[a+244>>2]=2;i[a+248>>0]=0;i[a+249>>0]=1;i[a+250>>0]=0;k[a+252>>2]=2;k[a+256>>2]=30;p[a+264>>3]=.9;k[a+272>>2]=1;b=a+276|0;k[b>>2]=10;p[a+280>>3]=30.0;e=a+288|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,35996,25);k[a+300>>2]=12e4;k[a+304>>2]=2e3;i[a+308>>0]=0;i[a+309>>0]=0;i[a+310>>0]=0;k[a+312>>2]=240;p[a+320>>3]=1.25;p[a+328>>3]=1.0;p[a+336>>3]=.25;p[a+344>>3]=.5;p[a+352>>3]=10.0;k[a+360>>2]=-1;i[a+364>>0]=1;i[a+365>>0]=1;p[a+368>>3]=0.0;k[a+376>>2]=1;e=a+380|0;d=a+388|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[e>>2]=0;j[e+4>>1]=0;wE(d,36022,24);k[a+400>>2]=2e3;i[a+404>>0]=0;d=a+408|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,36047,28);i[a+420>>0]=0;d=a+424|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;k[a+448>>2]=6e5;i[a+452>>0]=1;i[a+453>>0]=1;i[a+454>>0]=0;i[a+455>>0]=0;i[a+456>>0]=1;i[a+457>>0]=1;i[a+458>>0]=0;p[a+464>>3]=60.0;i[a+472>>0]=1;k[a+476>>2]=2;k[a+480>>2]=300;i[a+484>>0]=0;i[a+485>>0]=0;k[a+488>>2]=127;k[a+492>>2]=2;k[a+496>>2]=200;k[a+500>>2]=1e3;k[a+504>>2]=5e3;k[a+508>>2]=1e3;k[a+512>>2]=2e3;k[a+516>>2]=500;i[a+520>>0]=0;k[a+524>>2]=3e3;k[a+528>>2]=3e3;k[a+532>>2]=5;k[a+536>>2]=3;d=a+540|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[a+552>>2]=4;i[a+556>>0]=0;d=a+560|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[a+572>>2]=5;p[a+576>>3]=2.0;k[a+584>>2]=1024e3;k[a+588>>2]=3;d=a+592|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,36076,7);k[a+604>>2]=0;i[a+608>>0]=1;d=a+612|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;c=k[c>>2]|0;k[a+204>>2]=c;k[a+16>>2]=c<<3;k[b>>2]=c<<2;return}function ae(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;E=r;r=r+240|0;t=E+200|0;u=E+199|0;v=E+198|0;D=E+184|0;C=E+172|0;w=E+168|0;x=E+8|0;y=E+4|0;z=E;A=E+197|0;s=E+196|0;Qv(D,d,t,u,v);k[C>>2]=0;k[C+4>>2]=0;k[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[C+(a<<2)>>2]=0;a=a+1|0}p=C+11|0;q=C+8|0;if((i[p>>0]|0)<0)a=(k[q>>2]&2147483647)+-1|0;else a=10;gD(C,a,0);d=(i[p>>0]|0)<0?k[C>>2]|0:C;k[w>>2]=d;k[y>>2]=x;k[z>>2]=0;i[A>>0]=1;i[s>>0]=69;n=C+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;F=16;break}}else F=16;while(0);if((F|0)==16){F=0;if(h){g=0;break}else g=0}h=i[p>>0]|0;h=h<<24>>24<0?k[n>>2]|0:h&255;if((k[w>>2]|0)==(d+h|0)){gD(C,h<<1,0);if((i[p>>0]|0)<0)d=(k[q>>2]&2147483647)+-1|0;else d=10;gD(C,d,0);d=(i[p>>0]|0)<0?k[C>>2]|0:C;k[w>>2]=d+h}j=a+12|0;h=k[j>>2]|0;m=a+16|0;if((h|0)==(k[m>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Vg(h&255,A,s,d,w,i[u>>0]|0,i[v>>0]|0,D,x,y,z,t)|0)break;g=k[j>>2]|0;if((g|0)==(k[m>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[j>>2]=g+1;continue}}v=i[D+11>>0]|0;if(!((i[A>>0]|0)==0?1:((v<<24>>24<0?k[D+4>>2]|0:v&255)|0)==0)?(B=k[y>>2]|0,(B-x|0)<160):0){A=k[z>>2]|0;k[y>>2]=B+4;k[B>>2]=A}G=+XC(d,k[w>>2]|0,e);o[f>>2]=G;ep(D,x,k[y>>2]|0,e);if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;F=41;break}if(!a)F=42}else F=41;while(0);if((F|0)==41?a:0)F=42;if((F|0)==42)k[e>>2]=k[e>>2]|2;F=k[b>>2]|0;p1(C);p1(D);r=E;return F|0}function be(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;E=r;r=r+240|0;t=E+200|0;u=E+199|0;v=E+198|0;D=E+184|0;C=E+172|0;w=E+168|0;x=E+8|0;y=E+4|0;z=E;A=E+197|0;s=E+196|0;Qv(D,d,t,u,v);k[C>>2]=0;k[C+4>>2]=0;k[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[C+(a<<2)>>2]=0;a=a+1|0}o=C+11|0;q=C+8|0;if((i[o>>0]|0)<0)a=(k[q>>2]&2147483647)+-1|0;else a=10;gD(C,a,0);d=(i[o>>0]|0)<0?k[C>>2]|0:C;k[w>>2]=d;k[y>>2]=x;k[z>>2]=0;i[A>>0]=1;i[s>>0]=69;n=C+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;F=16;break}}else F=16;while(0);if((F|0)==16){F=0;if(h){g=0;break}else g=0}h=i[o>>0]|0;h=h<<24>>24<0?k[n>>2]|0:h&255;if((k[w>>2]|0)==(d+h|0)){gD(C,h<<1,0);if((i[o>>0]|0)<0)d=(k[q>>2]&2147483647)+-1|0;else d=10;gD(C,d,0);d=(i[o>>0]|0)<0?k[C>>2]|0:C;k[w>>2]=d+h}j=a+12|0;h=k[j>>2]|0;m=a+16|0;if((h|0)==(k[m>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Vg(h&255,A,s,d,w,i[u>>0]|0,i[v>>0]|0,D,x,y,z,t)|0)break;g=k[j>>2]|0;if((g|0)==(k[m>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[j>>2]=g+1;continue}}v=i[D+11>>0]|0;if(!((i[A>>0]|0)==0?1:((v<<24>>24<0?k[D+4>>2]|0:v&255)|0)==0)?(B=k[y>>2]|0,(B-x|0)<160):0){A=k[z>>2]|0;k[y>>2]=B+4;k[B>>2]=A}G=+XC(d,k[w>>2]|0,e);p[f>>3]=G;ep(D,x,k[y>>2]|0,e);if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;F=41;break}if(!a)F=42}else F=41;while(0);if((F|0)==41?a:0)F=42;if((F|0)==42)k[e>>2]=k[e>>2]|2;F=k[b>>2]|0;p1(C);p1(D);r=E;return F|0}function ce(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,f=0,g=0,h=0,l=0,m=0,n=0.0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+80|0;A=B+56|0;x=B+16|0;y=B;c=B+72|0;z=a+56|0;if((z|0)!=(b|0)){wg(z,k[b>>2]|0,k[b+4>>2]|0);Fh(a+68|0,k[b+12>>2]|0,k[b+16>>2]|0);k[y>>2]=k[b+24>>2];k[c>>2]=b+28;k[x>>2]=k[y>>2];k[A>>2]=k[c>>2];tf(a+80|0,x,A)}w=a+92|0;v=b+36|0;k[w>>2]=k[v>>2];j[w+4>>1]=j[v+4>>1]|0;MM(a+100|0,b+44|0)|0;b=a+112|0;do if(!(i[b>>0]|0)){i[b>>0]=1;b=k[(k[a+48>>2]|0)+128>>2]|0;if(!(i[a+96>>0]|0)){b=k[b+48>>2]|0;if(!b)break;Sb[k[(k[b>>2]|0)+8>>2]&511](b,8);break}hH(A,a,z);b=k[b+48>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,A)}while(0);l=a+44|0;e=+xY(k[l>>2]|0,k[(k[z>>2]|0)+48>>2]|0);m=k[(k[l>>2]|0)+28>>2]|0;n=+(m|0);k[A>>2]=0;w=A+4|0;k[w>>2]=0;k[A+8>>2]=0;q=a+60|0;b=k[z>>2]|0;if((k[q>>2]|0)!=(b|0)){s=x+16|0;t=x+32|0;u=x+36|0;v=A+8|0;e=e<0.0?0.0:e;h=0;while(1){k[x>>2]=k[6];k[x+4>>2]=k[7];k[x+8>>2]=k[8];k[x+12>>2]=k[9];k[s>>2]=k[6];k[s+4>>2]=k[7];k[s+8>>2]=k[8];k[s+12>>2]=k[9];k[t>>2]=0;k[u>>2]=0;D0(y,+yaa(+(n*e)),m);k[x>>2]=k[y>>2];k[x+4>>2]=k[y+4>>2];k[x+8>>2]=k[y+8>>2];k[x+12>>2]=k[y+12>>2];g=b+(h*96|0)+32|0;D0(y,n*+o[g>>2],m);k[s>>2]=k[y>>2];k[s+4>>2]=k[y+4>>2];k[s+8>>2]=k[y+8>>2];k[s+12>>2]=k[y+12>>2];k[t>>2]=k[b+(h*96|0)+48>>2];k[u>>2]=~~(+p[b+(h*96|0)+24>>3]-+p[b+(h*96|0)+16>>3]+1.0)>>>0;b=k[w>>2]|0;if((b|0)==(k[v>>2]|0))Tr(A,x);else{c=b;d=x;f=c+40|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(f|0));k[w>>2]=b+40}_C(k[l>>2]|0,k[t>>2]|0,+p[x>>3]);h=h+1|0;b=k[z>>2]|0;if(h>>>0>=(((k[q>>2]|0)-b|0)/96|0)>>>0)break;else e=e+ +o[g>>2]}}b=k[a+40>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,A);b=k[A>>2]|0;c=b;if(b|0){d=k[w>>2]|0;if((d|0)!=(b|0))k[w>>2]=d+(~(((d+-40-c|0)>>>0)/40|0)*40|0);zba(b)}r=B;return}function de(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=r;r=r+240|0;w=z;u=z+204|0;x=z+192|0;y=z+180|0;v=z+176|0;q=z+16|0;s=z+8|0;t=z+4|0;k[x>>2]=0;k[x+4>>2]=0;k[x+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[x+(a<<2)>>2]=0;a=a+1|0}a=LZ(d)|0;k[y>>2]=a;p=k_(y,111604)|0;ec[k[(k[p>>2]|0)+32>>2]&15](p,106657,106683,u)|0;oU(a)|0;k[y>>2]=0;k[y+4>>2]=0;k[y+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[y+(a<<2)>>2]=0;a=a+1|0}p=y+11|0;o=y+8|0;if((i[p>>0]|0)<0)a=(k[o>>2]&2147483647)+-1|0;else a=10;gD(y,a,0);d=(i[p>>0]|0)<0?k[y>>2]|0:y;k[v>>2]=d;k[s>>2]=q;k[t>>2]=0;n=y+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;A=19;break}}else A=19;while(0);if((A|0)==19){A=0;if(h){g=0;break}else g=0}h=i[p>>0]|0;h=h<<24>>24<0?k[n>>2]|0:h&255;if((k[v>>2]|0)==(d+h|0)){gD(y,h<<1,0);if((i[p>>0]|0)<0)d=(k[o>>2]&2147483647)+-1|0;else d=10;gD(y,d,0);d=(i[p>>0]|0)<0?k[y>>2]|0:y;k[v>>2]=d+h}j=a+12|0;h=k[j>>2]|0;m=a+16|0;if((h|0)==(k[m>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Mi(h&255,16,d,v,t,0,x,q,s,u)|0)break;g=k[j>>2]|0;if((g|0)==(k[m>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[j>>2]=g+1;continue}}gD(y,(k[v>>2]|0)-d|0,0);u=(i[p>>0]|0)<0?k[y>>2]|0:y;v=J_()|0;k[w>>2]=f;if((sQ(u,v,106690,w)|0)!=1)k[e>>2]=4;if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;A=43;break}if(!a)A=44}else A=43;while(0);if((A|0)==43?a:0)A=44;if((A|0)==44)k[e>>2]=k[e>>2]|2;A=k[b>>2]|0;p1(y);p1(x);r=z;return A|0}function ee(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=r;r=r+16|0;t=w;u=k_(g,111604)|0;s=k_(g,111620)|0;Sb[k[(k[s>>2]|0)+20>>2]&511](t,s);k[f>>2]=d;g=i[a>>0]|0;switch(g<<24>>24){case 43:case 45:{q=cc[k[(k[u>>2]|0)+28>>2]&127](u,g)|0;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=q;h=a+1|0;break}default:h=a}q=c;a:do if((q-h|0)>1?(i[h>>0]|0)==48:0){g=h+1|0;switch(i[g>>0]|0){case 88:case 120:break;default:{g=h;v=10;break a}}o=cc[k[(k[u>>2]|0)+28>>2]&127](u,48)|0;p=k[f>>2]|0;k[f>>2]=p+1;i[p>>0]=o;h=h+2|0;p=cc[k[(k[u>>2]|0)+28>>2]&127](u,i[g>>0]|0)|0;g=k[f>>2]|0;k[f>>2]=g+1;i[g>>0]=p;g=h;while(1){if(g>>>0>=c>>>0)break a;p=i[g>>0]|0;if(!(Zaa(p,J_()|0)|0))break a;g=g+1|0}}else{g=h;v=10}while(0);b:do if((v|0)==10)while(1){v=0;if(g>>>0>=c>>>0)break b;p=i[g>>0]|0;if(!(Daa(p,J_()|0)|0))break b;g=g+1|0;v=10}while(0);o=t+11|0;n=i[o>>0]|0;p=t+4|0;c:do if((n<<24>>24<0?k[p>>2]|0:n&255)|0){d:do if((h|0)!=(g|0)){j=g;l=h;while(1){j=j+-1|0;if(l>>>0>=j>>>0)break d;n=i[l>>0]|0;i[l>>0]=i[j>>0]|0;i[j>>0]=n;l=l+1|0}}while(0);n=Ub[k[(k[s>>2]|0)+16>>2]&511](s)|0;m=h;l=0;j=0;while(1){if(m>>>0>=g>>>0)break;x=i[((i[o>>0]|0)<0?k[t>>2]|0:t)+j>>0]|0;if(x<<24>>24>0&(l|0)==(x<<24>>24|0)){l=k[f>>2]|0;k[f>>2]=l+1;i[l>>0]=n;l=i[o>>0]|0;j=(j>>>0<((l<<24>>24<0?k[p>>2]|0:l&255)+-1|0)>>>0&1)+j|0;l=0}y=cc[k[(k[u>>2]|0)+28>>2]&127](u,i[m>>0]|0)|0;x=k[f>>2]|0;k[f>>2]=x+1;i[x>>0]=y;m=m+1|0;l=l+1|0}j=d+(h-a)|0;h=k[f>>2]|0;if((j|0)==(h|0))j=u;else while(1){h=h+-1|0;if(j>>>0>=h>>>0){j=u;break c}y=i[j>>0]|0;i[j>>0]=i[h>>0]|0;i[h>>0]=y;j=j+1|0}}else{ec[k[(k[u>>2]|0)+32>>2]&15](u,h,g,k[f>>2]|0)|0;k[f>>2]=(k[f>>2]|0)+(g-h);j=u}while(0);while(1){if(g>>>0>=c>>>0)break;h=i[g>>0]|0;if(h<<24>>24==46){v=29;break}x=cc[k[(k[j>>2]|0)+28>>2]&127](u,h)|0;y=k[f>>2]|0;k[f>>2]=y+1;i[y>>0]=x;g=g+1|0}if((v|0)==29){x=Ub[k[(k[s>>2]|0)+12>>2]&511](s)|0;y=k[f>>2]|0;k[f>>2]=y+1;i[y>>0]=x;g=g+1|0}ec[k[(k[u>>2]|0)+32>>2]&15](u,g,c,k[f>>2]|0)|0;y=(k[f>>2]|0)+(q-g)|0;k[f>>2]=y;k[e>>2]=(b|0)==(c|0)?y:d+(b-a)|0;p1(t);r=w;return}function fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+192|0;g=q+176|0;p=q+168|0;j=q+160|0;o=q;n=a+640|0;m=k[a+648>>2]|0;i=k[a+652>>2]|0;if((m|0)!=(i|0)?(i-m|0)!=4:0){h=k[(k[a+904>>2]|0)+8>>2]|0;k[p>>2]=h;m=h;do if((k[(k[h+2004>>2]|0)+100>>2]|0)!=(b|0)){a:do if(f7(h)|0){i=h+2024|0;if(c){e=k[h+2056>>2]|0;e=e+-1-((e>>>0)%((k[(k[a+916>>2]|0)+616>>2]|0)>>>0)|0)|0;l=20;break}d=k[i>>2]|0;c=(d|0)==0?0:d+-1|0;if(d>>>0<(d+(x9(i)|0)|0)>>>0){e=h+2040|0;do{if(!(!(TJ(e,d,0)|0)?!(TJ(i,d,0)|0):0))c=d;d=d+1|0;f=k[i>>2]|0}while(d>>>0<(f+(x9(i)|0)|0)>>>0)}f=a+916|0;d=k[(k[f>>2]|0)+616>>2]|0;d=c+-1+d-((c|0)%(d|0)|0)|0;c=k[i>>2]|0;if(c>>>0>d>>>0){e=d;l=20}else{e=h+1260|0;while(1){if(!(TJ(i,c,0)|0))break;if(!(MP(e,(c>>>0)/((k[(k[f>>2]|0)+616>>2]|0)>>>0)|0)|0))break;c=c+1|0;if(c>>>0>d>>>0){e=d;l=20;break a}}f=k[h+2164>>2]|0;Sb[k[(k[f>>2]|0)+60>>2]&511](f,d);k[j>>2]=113;k[j+4>>2]=0;k[g>>2]=k[j>>2];k[g+4>>2]=k[j+4>>2];gw(h+216|0,a,g);gr((k[p>>2]|0)+2204|0,a);f=1}}else{c=h+2164|0;l=k[c>>2]|0;if(Ub[k[(k[l>>2]|0)+80>>2]&511](l)|0){e=k[c>>2]|0;e=(Ub[k[(k[e>>2]|0)+76>>2]&511](e)|0)+-1|0;l=20}else{e=-1;l=20}}while(0);if((l|0)==20){c=a+1040|0;d=k[c>>2]|0;if((d|0)==(k[a+1044>>2]|0))zp(a+1036|0,p);else{k[d>>2]=m;k[c>>2]=(k[c>>2]|0)+4}nL(a+992|0,0);f=0;d=e}c=$G(n,b)|0;if(!c){if((k[2783]|0)>=5)break;Qd(o,27921,337,4,0,0,0);Mn(Tn(Tn(o,27948,6)|0,28501,40)|0,b)|0;hi(o);break}c=(ed(a,c)|0)+2164|0;o=k[c>>2]|0;Sb[k[(k[o>>2]|0)+72>>2]&511](o,d+1|0);if(!(!f?(p=k[(k[p>>2]|0)+2164>>2]|0,!(Ub[k[(k[p>>2]|0)+68>>2]&511](p)|0)):0)){p=k[c>>2]|0;Sb[k[(k[p>>2]|0)+60>>2]&511](p,d)}AE(a+336|0,b)}while(0)}r=q;return}function ge(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=r;r=r+224|0;q=B+198|0;s=B+196|0;z=B+184|0;A=B+172|0;t=B+168|0;u=B+8|0;v=B+4|0;w=B;x=NV(d)|0;$z(z,d,q,s);k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[A+(a<<2)>>2]=0;a=a+1|0}o=A+11|0;p=A+8|0;if((i[o>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(A,a,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d;k[v>>2]=u;k[w>>2]=0;n=A+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;C=16;break}}else C=16;while(0);if((C|0)==16){C=0;if(h){g=0;break}else g=0}h=i[o>>0]|0;h=h<<24>>24<0?k[n>>2]|0:h&255;if((k[t>>2]|0)==(d+h|0)){gD(A,h<<1,0);if((i[o>>0]|0)<0)d=(k[p>>2]&2147483647)+-1|0;else d=10;gD(A,d,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d+h}j=a+12|0;h=k[j>>2]|0;m=a+16|0;if((h|0)==(k[m>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Mi(h&255,x,d,t,w,i[s>>0]|0,z,u,v,q)|0)break;g=k[j>>2]|0;if((g|0)==(k[m>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[j>>2]=g+1;continue}}s=i[z+11>>0]|0;if((s<<24>>24<0?k[z+4>>2]|0:s&255)|0?(y=k[v>>2]|0,(y-u|0)<160):0){w=k[w>>2]|0;k[v>>2]=y+4;k[y>>2]=w}y=Gu(d,k[t>>2]|0,e,x)|0;k[f>>2]=y;k[f+4>>2]=M;ep(z,u,k[v>>2]|0,e);if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;C=41;break}if(!a)C=42}else C=41;while(0);if((C|0)==41?a:0)C=42;if((C|0)==42)k[e>>2]=k[e>>2]|2;C=k[b>>2]|0;p1(A);p1(z);r=B;return C|0}function he(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=r;r=r+224|0;q=B+198|0;s=B+196|0;z=B+184|0;A=B+172|0;t=B+168|0;u=B+8|0;v=B+4|0;w=B;x=NV(d)|0;$z(z,d,q,s);k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[A+(a<<2)>>2]=0;a=a+1|0}o=A+11|0;p=A+8|0;if((i[o>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(A,a,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d;k[v>>2]=u;k[w>>2]=0;n=A+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;C=16;break}}else C=16;while(0);if((C|0)==16){C=0;if(h){g=0;break}else g=0}h=i[o>>0]|0;h=h<<24>>24<0?k[n>>2]|0:h&255;if((k[t>>2]|0)==(d+h|0)){gD(A,h<<1,0);if((i[o>>0]|0)<0)d=(k[p>>2]&2147483647)+-1|0;else d=10;gD(A,d,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d+h}j=a+12|0;h=k[j>>2]|0;m=a+16|0;if((h|0)==(k[m>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Mi(h&255,x,d,t,w,i[s>>0]|0,z,u,v,q)|0)break;g=k[j>>2]|0;if((g|0)==(k[m>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[j>>2]=g+1;continue}}s=i[z+11>>0]|0;if((s<<24>>24<0?k[z+4>>2]|0:s&255)|0?(y=k[v>>2]|0,(y-u|0)<160):0){w=k[w>>2]|0;k[v>>2]=y+4;k[y>>2]=w}y=Bw(d,k[t>>2]|0,e,x)|0;k[f>>2]=y;k[f+4>>2]=M;ep(z,u,k[v>>2]|0,e);if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;C=41;break}if(!a)C=42}else C=41;while(0);if((C|0)==41?a:0)C=42;if((C|0)==42)k[e>>2]=k[e>>2]|2;C=k[b>>2]|0;p1(A);p1(z);r=B;return C|0}function ie(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+32|0;l=q+20|0;j=q+16|0;h=q+12|0;i=q+8|0;n=q+4|0;o=q;a:do switch(c|0){case 1:case 0:{e=k[a>>2]|0;break}case 2:{d=k[d>>2]|0;g=k[k[b>>2]>>2]|0;k[b>>2]=g;e=k[a>>2]|0;f=g;if(cc[d&127](g+8|0,e+8|0)|0){a=f+4|0;k[(k[f>>2]|0)+4>>2]=k[a>>2];d=g;k[k[a>>2]>>2]=k[d>>2];k[(k[e>>2]|0)+4>>2]=f;k[d>>2]=k[e>>2];k[e>>2]=f;k[a>>2]=e;e=k[b>>2]|0}break}default:{m=c>>>1;e=k[a>>2]|0;g=e;if(m){f=m;while(1){e=k[e+4>>2]|0;if((f|0)>1)f=f+-1|0;else break}}f=e;k[h>>2]=g;k[i>>2]=f;k[j>>2]=k[h>>2];k[l>>2]=k[i>>2];i=ie(j,l,m,d)|0;k[a>>2]=i;k[n>>2]=f;f=k[b>>2]|0;k[o>>2]=f;k[j>>2]=k[n>>2];k[l>>2]=k[o>>2];h=ie(j,l,c-m|0,d)|0;g=i+8|0;j=f;if(cc[k[d>>2]&127](h+8|0,g)|0){e=k[h+4>>2]|0;f=e;b:do if((e|0)==(j|0))e=j;else while(1){if(!(cc[k[d>>2]&127](f+8|0,g)|0))break b;f=k[e+4>>2]|0;e=f;if((e|0)==(j|0)){e=j;break}}while(0);o=k[e>>2]|0;e=o+4|0;k[(k[h>>2]|0)+4>>2]=k[e>>2];k[k[e>>2]>>2]=k[h>>2];g=k[i+4>>2]|0;k[(k[i>>2]|0)+4>>2]=h;k[h>>2]=k[i>>2];k[i>>2]=o;k[e>>2]=i;e=h}else{e=i;f=h;g=k[i+4>>2]|0}k[a>>2]=g;h=g;c=f;if((h|0)!=(c|0)?(p=f,(p|0)!=(j|0)):0){o=f;n=f;f=h;h=p;while(1){i=o+8|0;while(1){if(cc[k[d>>2]&127](i,g+8|0)|0)break;g=k[f+4>>2]|0;k[a>>2]=g;f=g;if((f|0)==(c|0))break a}l=k[h+4>>2]|0;i=l;c:do if((l|0)==(j|0))g=j;else{m=g+8|0;g=l;while(1){if(!(cc[k[d>>2]&127](i+8|0,m)|0))break c;i=k[g+4>>2]|0;g=i;if((g|0)==(j|0)){g=j;break}}}while(0);m=k[g>>2]|0;p=m+4|0;k[(k[h>>2]|0)+4>>2]=k[p>>2];k[k[p>>2]>>2]=k[o>>2];l=k[f+4>>2]|0;g=(c|0)==(h|0)?i:n;k[(k[f>>2]|0)+4>>2]=h;k[o>>2]=k[f>>2];k[f>>2]=m;k[p>>2]=f;k[a>>2]=l;c=g;if((l|0)==(c|0))break a;j=k[b>>2]|0;h=i;if((h|0)==(j|0))break;else{o=i;n=g;g=l;f=l}}}}}while(0);r=q;return e|0}function je(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=r;r=r+224|0;s=C+198|0;t=C+196|0;A=C+184|0;B=C+172|0;u=C+168|0;v=C+8|0;w=C+4|0;x=C;y=NV(d)|0;$z(A,d,s,t);k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[B+(a<<2)>>2]=0;a=a+1|0}p=B+11|0;q=B+8|0;if((i[p>>0]|0)<0)a=(k[q>>2]&2147483647)+-1|0;else a=10;gD(B,a,0);d=(i[p>>0]|0)<0?k[B>>2]|0:B;k[u>>2]=d;k[w>>2]=v;k[x>>2]=0;o=B+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(h){g=0;break}else g=0}h=i[p>>0]|0;h=h<<24>>24<0?k[o>>2]|0:h&255;if((k[u>>2]|0)==(d+h|0)){gD(B,h<<1,0);if((i[p>>0]|0)<0)d=(k[q>>2]&2147483647)+-1|0;else d=10;gD(B,d,0);d=(i[p>>0]|0)<0?k[B>>2]|0:B;k[u>>2]=d+h}m=a+12|0;h=k[m>>2]|0;n=a+16|0;if((h|0)==(k[n>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Mi(h&255,y,d,u,x,i[t>>0]|0,A,v,w,s)|0)break;g=k[m>>2]|0;if((g|0)==(k[n>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[m>>2]=g+1;continue}}t=i[A+11>>0]|0;if((t<<24>>24<0?k[A+4>>2]|0:t&255)|0?(z=k[w>>2]|0,(z-v|0)<160):0){x=k[x>>2]|0;k[w>>2]=z+4;k[z>>2]=x}z=it(d,k[u>>2]|0,e,y)|0;j[f>>1]=z;ep(A,v,k[w>>2]|0,e);if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;D=41;break}if(!a)D=42}else D=41;while(0);if((D|0)==41?a:0)D=42;if((D|0)==42)k[e>>2]=k[e>>2]|2;D=k[b>>2]|0;p1(B);p1(A);r=C;return D|0}function ke(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=r;r=r+224|0;q=B+198|0;s=B+196|0;z=B+184|0;A=B+172|0;t=B+168|0;u=B+8|0;v=B+4|0;w=B;x=NV(d)|0;$z(z,d,q,s);k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[A+(a<<2)>>2]=0;a=a+1|0}o=A+11|0;p=A+8|0;if((i[o>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(A,a,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d;k[v>>2]=u;k[w>>2]=0;n=A+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;C=16;break}}else C=16;while(0);if((C|0)==16){C=0;if(h){g=0;break}else g=0}h=i[o>>0]|0;h=h<<24>>24<0?k[n>>2]|0:h&255;if((k[t>>2]|0)==(d+h|0)){gD(A,h<<1,0);if((i[o>>0]|0)<0)d=(k[p>>2]&2147483647)+-1|0;else d=10;gD(A,d,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d+h}j=a+12|0;h=k[j>>2]|0;m=a+16|0;if((h|0)==(k[m>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Mi(h&255,x,d,t,w,i[s>>0]|0,z,u,v,q)|0)break;g=k[j>>2]|0;if((g|0)==(k[m>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[j>>2]=g+1;continue}}s=i[z+11>>0]|0;if((s<<24>>24<0?k[z+4>>2]|0:s&255)|0?(y=k[v>>2]|0,(y-u|0)<160):0){w=k[w>>2]|0;k[v>>2]=y+4;k[y>>2]=w}y=Ct(d,k[t>>2]|0,e,x)|0;k[f>>2]=y;ep(z,u,k[v>>2]|0,e);if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;C=41;break}if(!a)C=42}else C=41;while(0);if((C|0)==41?a:0)C=42;if((C|0)==42)k[e>>2]=k[e>>2]|2;C=k[b>>2]|0;p1(A);p1(z);r=B;return C|0}function le(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=r;r=r+224|0;q=B+198|0;s=B+196|0;z=B+184|0;A=B+172|0;t=B+168|0;u=B+8|0;v=B+4|0;w=B;x=NV(d)|0;$z(z,d,q,s);k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[A+(a<<2)>>2]=0;a=a+1|0}o=A+11|0;p=A+8|0;if((i[o>>0]|0)<0)a=(k[p>>2]&2147483647)+-1|0;else a=10;gD(A,a,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d;k[v>>2]=u;k[w>>2]=0;n=A+4|0;a=k[b>>2]|0;a:while(1){if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;h=(a|0)==0;g=k[c>>2]|0;do if(g){if((k[g+12>>2]|0)!=(k[g+16>>2]|0))if(h)break;else break a;if((Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)!=-1)if(h)break;else break a;else{k[c>>2]=0;C=16;break}}else C=16;while(0);if((C|0)==16){C=0;if(h){g=0;break}else g=0}h=i[o>>0]|0;h=h<<24>>24<0?k[n>>2]|0:h&255;if((k[t>>2]|0)==(d+h|0)){gD(A,h<<1,0);if((i[o>>0]|0)<0)d=(k[p>>2]&2147483647)+-1|0;else d=10;gD(A,d,0);d=(i[o>>0]|0)<0?k[A>>2]|0:A;k[t>>2]=d+h}j=a+12|0;h=k[j>>2]|0;m=a+16|0;if((h|0)==(k[m>>2]|0))h=Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0;else h=l[h>>0]|0;if(Mi(h&255,x,d,t,w,i[s>>0]|0,z,u,v,q)|0)break;g=k[j>>2]|0;if((g|0)==(k[m>>2]|0)){Ub[k[(k[a>>2]|0)+40>>2]&511](a)|0;continue}else{k[j>>2]=g+1;continue}}s=i[z+11>>0]|0;if((s<<24>>24<0?k[z+4>>2]|0:s&255)|0?(y=k[v>>2]|0,(y-u|0)<160):0){w=k[w>>2]|0;k[v>>2]=y+4;k[y>>2]=w}y=Vq(d,k[t>>2]|0,e,x)|0;k[f>>2]=y;ep(z,u,k[v>>2]|0,e);if(a){if((k[a+12>>2]|0)==(k[a+16>>2]|0)?(Ub[k[(k[a>>2]|0)+36>>2]&511](a)|0)==-1:0){k[b>>2]=0;a=0}}else a=0;a=(a|0)==0;do if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[c>>2]=0;C=41;break}if(!a)C=42}else C=41;while(0);if((C|0)==41?a:0)C=42;if((C|0)==42)k[e>>2]=k[e>>2]|2;C=k[b>>2]|0;p1(A);p1(z);r=B;return C|0}function me(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+192|0;s=t+176|0;q=t+164|0;d=t;j=t+8|0;l=b+36|0;m=l+11|0;h=i[m>>0]|0;n=h<<24>>24<0;g=b+40|0;h=n?k[g>>2]|0:h&255;a:do if(h|0){c=a+36|0;e=k[c>>2]|0;if(e|0){c=i[e+11>>0]|0;if(c<<24>>24<0){f=k[e+4>>2]|0;e=k[e>>2]|0}else f=c&255;d=h>>>0<f>>>0;c=d?h:f;if(!((c|0)!=0?(EI(e,n?k[l>>2]|0:l,c)|0)!=0:0))o=8;if((o|0)==8?f>>>0>=h>>>0&(d^1):0)break;if((k[2783]|0)<4){Qd(j,45601,375,3,0,0,0);o=Tn(Tn(j,45700,13)|0,45743,95)|0;o=Tn(Mn(o,k[b+12>>2]|0)|0,45839,21)|0;q=i[m>>0]|0;p=q<<24>>24<0;Tn(Tn(o,p?k[l>>2]|0:l,p?k[g>>2]|0:q&255)|0,45861,36)|0;hi(j)}hu(s,a+24|0,b,b);break}k[c>>2]=l;n=(k[a+8>>2]|0)+24|0;k[s>>2]=l;gq(d,n,l,113530,s,q);n=k[d>>2]|0;c=k[n+28>>2]|0;n=k[n+32>>2]|0;if((c|0)!=(n|0)){o=a+4|0;p=a+12|0;l=b+16|0;m=a+20|0;j=a+24|0;do{h=c+4|0;d=i[h+11>>0]|0;if(d<<24>>24<0)d=k[c+8>>2]|0;else d=d&255;if(!d)break a;d=cW(144)|0;Vw(d,c+28|0,0,h,k[o>>2]|0);k[d+52>>2]=1;i[d+56>>0]=i[c+52>>0]|0;MM(d+84|0,c+40|0)|0;k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;ye(k[p>>2]|0,l,0,q);MM(d+64|0,q)|0;e=k[m>>2]|0;k[s>>2]=d;f=e+4|0;g=k[f>>2]|0;if(g>>>0<(k[e+8>>2]|0)>>>0){k[g>>2]=d;k[f>>2]=(k[f>>2]|0)+4}else zp(e,s);hu(s,j,h,h);p1(q);c=c+56|0}while((c|0)!=(n|0))}}while(0);r=t;return}function ne(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+112|0;b=u+96|0;c=u+88|0;l=u+80|0;m=u+72|0;n=u+64|0;o=u+56|0;p=u+48|0;q=u+40|0;s=u+32|0;t=u+24|0;d=u+16|0;e=u+8|0;f=u;g=a+69|0;if((i[g>>0]|0)==0?(h=a+64|0,j=k[h>>2]|0,j|0):0){i[g>>0]=1;k[c>>2]=310;k[c+4>>2]=0;k[b>>2]=k[c>>2];k[b+4>>2]=k[c+4>>2];Yw(j+36|0,a,b);j=(k[h>>2]|0)+56|0;k[l>>2]=311;k[l+4>>2]=0;k[b>>2]=k[l>>2];k[b+4>>2]=k[l+4>>2];Yw(j,a,b);l=(k[h>>2]|0)+256|0;k[m>>2]=312;k[m+4>>2]=0;k[b>>2]=k[m>>2];k[b+4>>2]=k[m+4>>2];Yw(l,a,b);m=(k[h>>2]|0)+116|0;k[n>>2]=38;k[n+4>>2]=0;k[b>>2]=k[n>>2];k[b+4>>2]=k[n+4>>2];Jv(m,a,b);n=(k[h>>2]|0)+156|0;k[o>>2]=39;k[o+4>>2]=0;k[b>>2]=k[o>>2];k[b+4>>2]=k[o+4>>2];Jv(n,a,b);o=(k[h>>2]|0)+196|0;k[p>>2]=10;k[p+4>>2]=0;k[b>>2]=k[p>>2];k[b+4>>2]=k[p+4>>2];Hv(o,a,b);p=(k[h>>2]|0)+176|0;k[q>>2]=11;k[q+4>>2]=0;k[b>>2]=k[q>>2];k[b+4>>2]=k[q+4>>2];Hv(p,a,b);q=(k[h>>2]|0)+136|0;k[s>>2]=110;k[s+4>>2]=0;k[b>>2]=k[s>>2];k[b+4>>2]=k[s+4>>2];Sw(q,a,b);s=(k[h>>2]|0)+396|0;k[t>>2]=313;k[t+4>>2]=0;k[b>>2]=k[t>>2];k[b+4>>2]=k[t+4>>2];Fx(s,a,b);t=(w4(k[h>>2]|0)|0)+596|0;k[d>>2]=1232;k[d+4>>2]=0;k[b>>2]=k[d>>2];k[b+4>>2]=k[d+4>>2];Lx(t,a,b);t=(w4(k[h>>2]|0)|0)+616|0;k[e>>2]=1233;k[e+4>>2]=0;k[b>>2]=k[e>>2];k[b+4>>2]=k[e+4>>2];Lx(t,a,b);t=(k[(k[h>>2]|0)+2272>>2]|0)+20|0;k[f>>2]=1234;k[f+4>>2]=0;k[b>>2]=k[f>>2];k[b+4>>2]=k[f+4>>2];Lx(t,a,b);b=a+48|0;if(i[b>>0]|0){t=a+44|0;s=Ta(0,k[t>>2]|0)|0;k[t>>2]=s;i[b>>0]=0}tB(a+72|0,k[(k[(k[a+60>>2]|0)+916>>2]|0)+800>>2]|0)|0}Zm(a);r=u;return}function oe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+176|0;f=s+12|0;p=s;j=a+2024|0;if(TJ(a+2040|0,d,0)|0){YA(a+196|0,a,d,e,b);l=a+2060|0;if(!(GV(DT(l,d)|0,e)|0)){m=a+452|0;f=k[m>>2]|0;n=a+448|0;if((f|0)!=(n|0)){g=f;h=f;do{f=k[g+8>>2]|0;if(!(Ub[k[(k[f>>2]|0)+64>>2]&511](f)|0)){g=(DT(l,d)|0)+20|0;Nl(f,c,d,e,k[g>>2]|0)}g=k[h+4>>2]|0;h=g}while((h|0)!=(n|0))}tl(j,c,d,e);if(TJ(j,d,0)|0){if(!(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0))TD(b,d);WC(a+156|0,a,d,b);f=a+1260|0;g=a+1576|0;if(MP(f,(d|0)/(k[g>>2]|0)|0)|0)rD(a+216|0,a,d);else qM(f,(d|0)/(k[g>>2]|0)|0);if(Ub[k[(k[b>>2]|0)+64>>2]&511](b)|0)h=k[a+1912>>2]|0;else h=(VS(b,d)|0)+-1|0;if((h|0)>0?(q=DT(l,d)|0,o=k[m>>2]|0,(o|0)!=(n|0)):0){g=o;f=o;do{o=k[g+8>>2]|0;fc[k[(k[o>>2]|0)+72>>2]&255](o,q,h);g=k[f+4>>2]|0;f=g}while((f|0)!=(n|0))}fG(a);Nm(a);q=k[a+2164>>2]|0;fc[k[(k[q>>2]|0)+32>>2]&255](q,b,d);q=cW(40)|0;iI(p,b+8|0);wM(q,3,d,p);II(a,q);p1(p);Ou(a)}}}else{if((k[2783]|0)<4){Qd(f,29209,505,3,0,0,0);a=Tn(Mn(Tn(Mn(Tn(Tn(Hn(Tn(f,29231,4)|0,a)|0,30253,3)|0,53831,24)|0,d)|0,53856,11)|0,e)|0,53868,15)|0;d=b+8|0;q=i[d+11>>0]|0;p=q<<24>>24<0;Tn(Tn(a,p?k[d>>2]|0:d,p?k[b+12>>2]|0:q&255)|0,53884,48)|0;hi(f)}if(c|0){J8(c);zba(c)}}r=s;return}function pe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+48|0;t=u;o=u+28|0;p=u+16|0;q=k[b+4>>2]|0;s=k[b+8>>2]|0;if((q|0)!=(s|0)){c=0;d=q;do{a:do if(c)c=1;else{c=i[d>>0]|0;switch(c<<24>>24){case 43:case 69:case 101:case 46:{c=1;break a}default:{}}c=c<<24>>24==45&(d|0)!=(q|0)}while(0);d=d+1|0}while((d|0)!=(s|0));if(c)c=hg(a,b)|0;else f=8}else f=8;b:do if((f|0)==8){n=(i[q>>0]|0)==45;e=n?q+1|0:q;c=40;c=n_(0,0,k[c>>2]|0,k[c+4>>2]|0)|0;d=48;c=n?c:k[d>>2]|0;d=n?M:k[d+4>>2]|0;l=A5(c|0,d|0,10,0)|0;m=M;c:do if(e>>>0<s>>>0){h=RU(c|0,d|0,10,0)|0;j=M;g=e;d=0;e=0;while(1){c=i[g>>0]|0;g=g+1|0;if((c+-48&255)>9){f=11;break}c=(c<<24>>24)+-48|0;if(!(d>>>0<m>>>0|(d|0)==(m|0)&e>>>0<l>>>0)?(g|0)!=(s|0)|(d>>>0>m>>>0|(d|0)==(m|0)&e>>>0>l>>>0)|(0>j>>>0|0==(j|0)&c>>>0>h>>>0):0){f=15;break}else f=0;e=WV(e|0,d|0,10,0)|0;e=y0(c|0,f|0,e|0,M|0)|0;d=M;if(g>>>0>=s>>>0)break c}if((f|0)==11){k[p>>2]=0;k[p+4>>2]=0;k[p+8>>2]=0;Qx(p,q,s);c=xX(p,0,102493)|0;k[o>>2]=k[c>>2];k[o+4>>2]=k[c+4>>2];k[o+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=eZ(o,102495)|0;k[t>>2]=k[c>>2];k[t+4>>2]=k[c+4>>2];k[t+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;iz(a,t,b,0)|0;p1(t);p1(o);p1(p);c=0;break b}else if((f|0)==15){c=hg(a,b)|0;break b}}else{e=0;d=0}while(0);if(n){c=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;c=k[(k[(k[a+4>>2]|0)+(c>>>10<<2)>>2]|0)+((c&1023)<<2)>>2]|0;a=n_(0,0,e|0,d|0)|0;rY(t,a,M);GA(c,t)|0;Lv(t);c=1;break}s=k[4819]|0;q=((s|0)<0)<<31>>31;c=(k[a+20>>2]|0)+-1+(k[a+16>>2]|0)|0;c=k[(k[(k[a+4>>2]|0)+(c>>>10<<2)>>2]|0)+((c&1023)<<2)>>2]|0;if(d>>>0>q>>>0|(d|0)==(q|0)&e>>>0>s>>>0){qY(t,e,d);GA(c,t)|0;Lv(t);c=1;break}else{rY(t,e,d);GA(c,t)|0;Lv(t);c=1;break}}while(0);r=u;return c|0}function qe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+32|0;l=q+20|0;j=q+16|0;h=q+12|0;i=q+8|0;n=q+4|0;o=q;a:do switch(c|0){case 1:case 0:{e=k[a>>2]|0;break}case 2:{g=k[k[b>>2]>>2]|0;k[b>>2]=g;e=k[a>>2]|0;f=g;if(Jr(g+8|0,e+8|0)|0){a=f+4|0;k[(k[f>>2]|0)+4>>2]=k[a>>2];p=g;k[k[a>>2]>>2]=k[p>>2];k[(k[e>>2]|0)+4>>2]=f;k[p>>2]=k[e>>2];k[e>>2]=f;k[a>>2]=e;e=k[b>>2]|0}break}default:{m=c>>>1;e=k[a>>2]|0;g=e;if(m){f=m;while(1){e=k[e+4>>2]|0;if((f|0)>1)f=f+-1|0;else break}}f=e;k[h>>2]=g;k[i>>2]=f;k[j>>2]=k[h>>2];k[l>>2]=k[i>>2];i=qe(j,l,m,d)|0;k[a>>2]=i;k[n>>2]=f;f=k[b>>2]|0;k[o>>2]=f;k[j>>2]=k[n>>2];k[l>>2]=k[o>>2];h=qe(j,l,c-m|0,d)|0;g=i+8|0;j=f;if(Jr(h+8|0,g)|0){e=k[h+4>>2]|0;f=e;b:do if((e|0)==(j|0))e=j;else while(1){if(!(Jr(f+8|0,g)|0))break b;f=k[e+4>>2]|0;e=f;if((e|0)==(j|0)){e=j;break}}while(0);o=k[e>>2]|0;e=o+4|0;k[(k[h>>2]|0)+4>>2]=k[e>>2];k[k[e>>2]>>2]=k[h>>2];g=k[i+4>>2]|0;k[(k[i>>2]|0)+4>>2]=h;k[h>>2]=k[i>>2];k[i>>2]=o;k[e>>2]=i;e=h}else{e=i;f=h;g=k[i+4>>2]|0}k[a>>2]=g;h=g;c=f;if((h|0)!=(c|0)?(p=f,(p|0)!=(j|0)):0){n=f;d=f;f=g;g=p;while(1){i=n+8|0;while(1){if(Jr(i,f+8|0)|0)break;f=k[h+4>>2]|0;k[a>>2]=f;h=f;if((h|0)==(c|0))break a}l=k[g+4>>2]|0;i=l;c:do if((l|0)==(j|0))f=j;else{m=f+8|0;f=l;while(1){if(!(Jr(i+8|0,m)|0))break c;i=k[f+4>>2]|0;f=i;if((f|0)==(j|0)){f=j;break}}}while(0);o=k[f>>2]|0;p=o+4|0;k[(k[g>>2]|0)+4>>2]=k[p>>2];k[k[p>>2]>>2]=k[n>>2];l=k[h+4>>2]|0;f=(c|0)==(g|0)?i:d;k[(k[h>>2]|0)+4>>2]=g;k[n>>2]=k[h>>2];k[h>>2]=o;k[p>>2]=h;k[a>>2]=l;c=f;if((l|0)==(c|0))break a;j=k[b>>2]|0;g=i;if((g|0)==(j|0))break;else{n=i;d=f;f=l;h=l}}}}}while(0);r=q;return e|0}function re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=k[b>>2]|0;if((d|0)!=0?(f=k[d>>2]|0,(f|0)!=0):0)if(!a){d=c;g=e;j=17}else{k[d>>2]=0;h=a;d=c;j=38}else if(!a){d=c;j=7}else{f=a;d=c;j=6}a:while(1)if((j|0)==6){if(!d){j=27;break}else a=f;while(1){f=i[e>>0]|0;do if(((f&255)+-1|0)>>>0<127?d>>>0>4&(e&3|0)==0:0){while(1){f=k[e>>2]|0;if((f+-16843009|f)&-2139062144|0){j=33;break}k[a>>2]=f&255;k[a+4>>2]=l[e+1>>0];k[a+8>>2]=l[e+2>>0];g=e+4|0;f=a+16|0;k[a+12>>2]=l[e+3>>0];d=d+-4|0;if(d>>>0>4){a=f;e=g}else{j=32;break}}if((j|0)==32){a=f;e=g;f=i[g>>0]|0;break}else if((j|0)==33){f=f&255;break}}while(0);f=f&255;if((f+-1|0)>>>0>=127)break;e=e+1|0;k[a>>2]=f;d=d+-1|0;if(!d){j=27;break a}else a=a+4|0}f=f+-194|0;if(f>>>0>50){j=49;break}h=a;f=k[19652+(f<<2)>>2]|0;e=e+1|0;j=38;continue}else if((j|0)==7){while(1){f=i[e>>0]|0;if(((f&255)+-1|0)>>>0<127?(e&3|0)==0:0){j=k[e>>2]|0;f=j&255;if(!((j+-16843009|j)&-2139062144)){do{e=e+4|0;d=d+-4|0;f=k[e>>2]|0}while(!((f+-16843009|f)&-2139062144|0));f=f&255}}f=f&255;if((f+-1|0)>>>0>=127)break;e=e+1|0;d=d+-1|0}f=f+-194|0;if(f>>>0>50){j=49;break}f=k[19652+(f<<2)>>2]|0;g=e+1|0;j=17;continue}else if((j|0)==17){j=(l[g>>0]|0)>>>3;if((j+-16|j+(f>>26))>>>0>7){j=18;break}e=g+1|0;if(f&33554432){if((i[e>>0]&-64)<<24>>24!=-128){j=21;break}e=g+2|0;if(f&524288){if((i[e>>0]&-64)<<24>>24!=-128){j=24;break}e=g+3|0}}d=d+-1|0;j=7;continue}else if((j|0)==38){a=l[e>>0]|0;j=a>>>3;if((j+-16|j+(f>>26))>>>0>7){j=39;break}g=e+1|0;a=a+-128|f<<6;if((a|0)<0){f=(l[g>>0]|0)+-128|0;if(f>>>0>63){j=42;break}g=e+2|0;a=f|a<<6;if((a|0)<0){f=(l[g>>0]|0)+-128|0;if(f>>>0>63){j=45;break}a=f|a<<6;e=e+3|0}else e=g}else e=g;k[h>>2]=a;f=h+4|0;d=d+-1|0;j=6;continue}if((j|0)==18){e=g+-1|0;j=48}else if((j|0)==21){e=g+-1|0;j=48}else if((j|0)==24){e=g+-1|0;j=48}else if((j|0)==27)k[b>>2]=e;else if((j|0)==39){e=e+-1|0;a=h;j=48}else if((j|0)==42){e=e+-1|0;c=h;j=53}else if((j|0)==45){e=e+-1|0;c=h;j=53}if((j|0)==48)if(!f)j=49;else{c=a;j=53}if((j|0)==49)if(!(i[e>>0]|0)){if(a|0){k[a>>2]=0;k[b>>2]=0}c=c-d|0}else{c=a;j=53}if((j|0)==53){j=z0()|0;k[j>>2]=84;if(!c)c=-1;else{k[b>>2]=e;c=-1}}return c|0}function se(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0,h=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=r;r=r+16|0;d=A+12|0;c=A+8|0;e=A+4|0;f=A;v=a+124|0;if((v|0)!=(b|0)){wg(v,k[b>>2]|0,k[b+4>>2]|0);Fh(a+136|0,k[b+12>>2]|0,k[b+16>>2]|0);k[e>>2]=k[b+24>>2];k[f>>2]=b+28;k[c>>2]=k[e>>2];k[d>>2]=k[f>>2];tf(a+148|0,c,d)}c=a+160|0;t=b+36|0;k[c>>2]=k[t>>2];j[c+4>>1]=j[t+4>>1]|0;MM(a+168|0,b+44|0)|0;Rg(a);c=rK(a,b)|0;t=a+4|0;s=(w4(k[t>>2]|0)|0)+1188|0;if(!(i[s>>0]|0))s=c;else s=(i[a+237>>0]|0)==0?c:0;d=k[b>>2]|0;c=(k[d+48>>2]|0)+s|0;d=(((k[b+4>>2]|0)-d|0)/96|0)-s|0;o=k[(k[t>>2]|0)+1576>>2]|0;n=$(o,c)|0;o=$(d,o)|0;e=a+108|0;f=k[e>>2]|0;if(!f){l=cW(16)|0;VU(l,n,((n|0)<0)<<31>>31,o);k[e>>2]=l}else{D5(f,o);mO(k[e>>2]|0,n,((n|0)<0)<<31>>31)}k[(k[t>>2]|0)+2148>>2]=n;k[(k[t>>2]|0)+2144>>2]=o+n;l=(w4(k[t>>2]|0)|0)+1189|0;if(i[l>>0]|0?(l=(w4(k[t>>2]|0)|0)+1188|0,i[l>>0]|0):0){l=(k[t>>2]|0)+2144|0;k[l>>2]=(k[l>>2]|0)+-3}if((k[(k[t>>2]|0)+1576>>2]|0)>1?(w=a+240|0,ku(w,c),WI(w,d),x=a+128|0,m=k[x>>2]|0,q=k[v>>2]|0,s>>>0<((m-q|0)/96|0)>>>0):0){h=a+244|0;l=a+248|0;f=s;c=m;d=q;do{e=d;g=+p[e+(f*96|0)+24>>3];if((g>=0.0?(y=k[e+(f*96|0)+48>>2]|0,z=~~(g-+p[e+(f*96|0)+16>>3]+1.0),u=k[w>>2]|0,y>>>0>=u>>>0):0)?((k[h>>2]|0)+u|0)>>>0>y>>>0:0){k[(k[l>>2]|0)+(y-u<<2)>>2]=z;d=k[v>>2]|0;c=k[x>>2]|0}f=f+1|0}while(f>>>0<((c-d|0)/96|0)>>>0)}Mf(k[t>>2]|0,n,o,1);c=a+237|0;if(i[c>>0]|0){i[c>>0]=0;i[a+20>>0]=1;CL(k[t>>2]|0,a)}if(i[b+41>>0]|0)En(a,s);Gg(a,s);b=(w4(k[t>>2]|0)|0)+1076|0;AE(b,(k[t>>2]|0)+2088|0);r=A;return}function te(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;m=r;r=r+176|0;g=m+152|0;j=m;d=m+144|0;e=cW(104)|0;l=a+60|0;er(e,(k[l>>2]|0)+592|0,k[a+52>>2]|0);h=a+56|0;c=k[h>>2]|0;k[h>>2]=0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[h>>2]=e;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,45965,6);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,45972,3);Wv(e,g,j);p1(j);p1(g);o7(k[h>>2]|0,k[(k[l>>2]|0)+448>>2]|0);e=(k[h>>2]|0)+16|0;k[d>>2]=121;k[d+4>>2]=0;k[g>>2]=k[d>>2];k[g+4>>2]=k[d+4>>2];Rq(e,a,g)|0;e=j+8|0;k[e>>2]=1664;c=j+12|0;k[j>>2]=1704;d=j+64|0;k[d>>2]=1724;k[j+4>>2]=0;GK(j+64|0,c);k[j+136>>2]=0;k[j+140>>2]=-1;k[j>>2]=1644;k[j+64>>2]=1684;k[e>>2]=1664;sT(c);k[c>>2]=1740;e=j+44|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[j+60>>2]=24;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;cn(c,g);p1(g);f=j+8|0;p=Tn(f,45976,51)|0;n=i[b+11>>0]|0;o=n<<24>>24<0;Tn(p,o?k[b>>2]|0:b,o?k[b+4>>2]|0:n&255)|0;i[g>>0]=63;n=Tn(Tn(f,g,1)|0,46028,7)|0;lK(g,a+68|0);b=i[g+11>>0]|0;a=b<<24>>24<0;Tn(n,a?k[g>>2]|0:g,a?k[g+4>>2]|0:b&255)|0;p1(g);if(i[(k[l>>2]|0)+74>>0]|0){i[g>>0]=38;Tn(Tn(f,g,1)|0,46036,8)|0}p=k[h>>2]|0;Yr(g,c);HT(p,1,g);p1(g);Ot(k[h>>2]|0);k[j>>2]=1644;k[d>>2]=1684;k[f>>2]=1664;k[c>>2]=1740;p1(e);I3(c);Qaa(j,1800);N8(d);r=m;return}function ue(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0;g=r;r=r+208|0;h=g+192|0;s=g+160|0;q=g+184|0;n=g+176|0;l=g+168|0;f=g;X0(a);k[a>>2]=12848;e=a+16|0;K6(e);k[e>>2]=8536;e=a+24|0;K6(e);k[e>>2]=8536;k[a+32>>2]=b;k[a+40>>2]=k[d>>2];e=a+44|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;m=a+56|0;K6(m);o=a+64|0;k[o>>2]=1520;j=a+68|0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[j+16>>2]=0;k[j+20>>2]=0;j=a+92|0;i[a+100>>0]=0;k[a+96>>2]=-1;k[j>>2]=1500;k[a+104>>2]=0;k[s>>2]=1235;k[s+4>>2]=0;k[h>>2]=k[s>>2];k[h+4>>2]=k[s+4>>2];Ww(j,o,h)|0;k[m>>2]=1576;k[o>>2]=1600;o=a+108|0;i[a+116>>0]=0;k[a+112>>2]=-1;k[o>>2]=1500;k[a+120>>2]=0;j=a+128|0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[j+16>>2]=0;k[j+20>>2]=0;k[j+24>>2]=0;k[j+28>>2]=0;p[a+160>>3]=-1.0;p[a+168>>3]=0.0;k[a+176>>2]=0;i[a+180>>0]=0;s=a+184|0;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;k[s+12>>2]=0;k[s+16>>2]=0;k[s+20>>2]=0;RR(a+208|0,j,i[b+832>>0]|0?1:c);i[a+236>>0]=1;i[a+237>>0]=0;i[a+238>>0]=0;k[a+240>>2]=0;k[a+244>>2]=0;i[a+248>>0]=0;j=a+252|0;i[a+260>>0]=0;k[a+256>>2]=-1;k[j>>2]=1500;k[a+264>>2]=0;k[a+268>>2]=c;s=Is(b+1056|0,d)|0;k[a+36>>2]=s;k[q>>2]=1267;k[q+4>>2]=0;k[h>>2]=k[q>>2];k[h+4>>2]=k[q+4>>2];wx(o,a,h)|0;k[n>>2]=1268;k[n+4>>2]=0;k[h>>2]=k[n>>2];k[h+4>>2]=k[n+4>>2];Gr(m,a,h)|0;m=cW(48)|0;rM(m);k[a+124>>2]=m;k[l>>2]=1269;k[l+4>>2]=0;k[h>>2]=k[l>>2];k[h+4>>2]=k[l+4>>2];wx(j,a,h)|0;b=(c|0)==0?b+640|0:b+704|0;c=$G(b,k[d>>2]|0)|0;if(!c){if((k[2783]|0)<5?((k[b+12>>2]|0)-(k[b+8>>2]|0)|0)!=4:0){Qd(f,47907,47,4,0,0,0);s=Tn(f,47926,13)|0;s=Tn(Tn(Tn(s,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,47952,20)|0;Tn(Mn(s,k[d>>2]|0)|0,47973,34)|0;hi(f)}}else MM(e,c+36|0)|0;r=g;return}function ve(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0;m=r;r=r+16|0;j=m;ar(a,b);e=Tn(b,69052,7)|0;e=Tn(Ln(e,k[a+52>>2]|0)|0,68068,11)|0;e=Tn(Ln(e,k[a+56>>2]|0)|0,69060,26)|0;c=a+64|0;c=Tn(tn(e,k[c>>2]|0,k[c+4>>2]|0)|0,69087,13)|0;e=a+72|0;tn(c,k[e>>2]|0,k[e+4>>2]|0)|0;e=1;c=a+4|0;while(1){c=k[c>>2]|0;d=e+1|0;if(!c)break;else{e=d;c=c+4|0}}g=r;r=r+((1*d|0)+15&-16)|0;XG(g|0,32,e|0)|0;i[g+e>>0]=0;Tn(b,69101,13)|0;f=a+80|0;e=a+84|0;if((k[e>>2]|0)!=(k[f>>2]|0)?(h=LZ(b+(k[(k[b>>2]|0)+-12>>2]|0)|0)|0,k[j>>2]=h,h=k_(j,111604)|0,h=cc[k[(k[h>>2]|0)+28>>2]&127](h,10)|0,t6(j),Ss(b,h)|0,UA(b)|0,h=k[f>>2]|0,(k[e>>2]|0)!=(h|0)):0){d=0;c=h;do{h=c;a=Tn(Tn(Mn(Tn(b,g,iC(g)|0)|0,d)|0,68001,2)|0,68583,6)|0;a=Tn(Mn(a,l[h+(d*20|0)>>0]|0)|0,67767,4)|0;a=Tn(Ln(a,k[h+(d*20|0)+4>>2]|0)|0,69115,15)|0;a=Tn(Ln(a,k[h+(d*20|0)+8>>2]|0)|0,69131,15)|0;a=Tn(Mn(a,l[h+(d*20|0)+12>>0]|0)|0,69147,9)|0;a=Tn(Mn(a,l[h+(d*20|0)+13>>0]|0)|0,69157,14)|0;h=Ln(a,k[h+(d*20|0)+16>>2]|0)|0;a=LZ(h+(k[(k[h>>2]|0)+-12>>2]|0)|0)|0;k[j>>2]=a;a=k_(j,111604)|0;a=cc[k[(k[a>>2]|0)+28>>2]&127](a,10)|0;t6(j);Ss(h,a)|0;UA(h)|0;d=d+1|0;c=k[f>>2]|0}while(d>>>0<(((k[e>>2]|0)-c|0)/20|0)>>>0)}i[j>>0]=93;Tn(b,j,1)|0;r=m;return}function we(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a+4>>2]=b+-1;k[a>>2]=25996;b=a+8|0;LK(b,28);c=a+144|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,106693,1);b=k[b>>2]|0;c=a+12|0;d=k[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-4|0;k[c>>2]=e;d=e}k[27365]=0;k[27364]=23660;m$(a,109456);k[27367]=0;k[27366]=23692;l$(a,109464);CS(109472,0,0,1);v$(a,109472);k[27373]=0;k[27372]=26212;u$(a,109488);k[27375]=0;k[27374]=26280;f_(a,109496);k[27377]=0;k[27376]=25948;e=J_()|0;k[27378]=e;e_(a,109504);k[27381]=0;k[27380]=26328;b_(a,109520);k[27383]=0;k[27382]=26376;c_(a,109528);rN(109536,1);i$(a,109536);_M(109560,1);h$(a,109560);k[27399]=0;k[27398]=23724;aY(a,109592);k[27401]=0;k[27400]=23788;$X(a,109600);k[27403]=0;k[27402]=23852;_X(a,109608);k[27405]=0;k[27404]=23904;ZX(a,109616);k[27407]=0;k[27406]=25452;I_(a,109624);k[27409]=0;k[27408]=25508;H_(a,109632);k[27411]=0;k[27410]=25564;G_(a,109640);k[27413]=0;k[27412]=25620;F_(a,109648);k[27415]=0;k[27414]=25676;PX(a,109656);k[27417]=0;k[27416]=25704;OX(a,109664);k[27419]=0;k[27418]=25732;NX(a,109672);k[27421]=0;k[27420]=25760;MX(a,109680);k[27423]=0;k[27422]=23956;k[27424]=24004;WX(a,109688);k[27427]=0;k[27426]=24040;k[27428]=24088;VX(a,109704);k[27431]=0;k[27430]=26192;e=J_()|0;k[27432]=e;k[27430]=25404;UX(a,109720);k[27435]=0;k[27434]=26192;e=J_()|0;k[27436]=e;k[27434]=25428;TX(a,109736);k[27439]=0;k[27438]=25788;k$(a,109752);k[27441]=0;k[27440]=25820;j$(a,109760);return}function xe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+224|0;o=w+200|0;d=w+44|0;m=w+32|0;t=w+8|0;u=w+24|0;v=w;n=a+4|0;e=k[n>>2]|0;q=(b|0)/(k[e+1576>>2]|0)|0;f=a+124|0;l=k[f>>2]|0;s=q-(k[l+48>>2]|0)|0;if((s|0)>=0?s>>>0<(((k[a+128>>2]|0)-l|0)/96|0)>>>0:0){d=cW(136)|0;er(d,e+1952|0,k[a+116>>2]|0);k[d>>2]=13948;g=d+104|0;k[g>>2]=-1;h=d+108|0;k[h>>2]=-1;j=d+112|0;k[j>>2]=-1;k[d+116>>2]=0;k[d+120>>2]=0;l=d+128|0;e=l;k[e>>2]=0;k[e+4>>2]=0;f=k[f>>2]|0;e=f+(s*96|0)|0;if(!(i[(k[n>>2]|0)+1608>>0]|0))HT(d,0,e);else{iI(m,e);mg(o,m);HT(d,0,o);p1(o);p1(m)}e=f+(s*96|0)+24|0;if(+p[e>>3]>=0.0){k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;wE(o,51477,iC(51477)|0);zK(t,+p[f+(s*96|0)+16>>3],+p[e>>3]);Wv(d,o,t);p1(t);p1(o)}k[g>>2]=b;k[h>>2]=c;k[j>>2]=-1;c=_J()|0;t=l;k[t>>2]=c;k[t+4>>2]=M;o7(d,tv(a,q)|0);t=d+24|0;aE(t);G4(d,1);k[u>>2]=126;k[u+4>>2]=0;k[o>>2]=k[u>>2];k[o+4>>2]=k[u+4>>2];kq(t,a,o)|0;u=d+16|0;aE(u);k[v>>2]=127;k[v+4>>2]=0;k[o>>2]=k[v>>2];k[o+4>>2]=k[v+4>>2];kq(u,a,o)|0;Ot(d)}else if((k[2783]|0)<4){Qd(d,50909,408,3,0,0,0);Tn(Mn(Tn(Mn(Tn(Mn(Tn(d,51352,71)|0,b)|0,51129,1)|0,c)|0,51424,14)|0,s)|0,68623,1)|0;hi(d);d=0}else d=0;r=w;return d|0}function ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+64|0;n=p+48|0;o=p+36|0;l=p+24|0;m=p+12|0;h=p;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,75658,7);k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;wE(o,75658,7);j=i[b+11>>0]|0;if(!((j<<24>>24<0?k[b+4>>2]|0:j&255)|0)){if(Ta(13,k[(k[a+4>>2]|0)+208>>2]|0)|0)dZ(n,115628)|0}else{cm(l,b,34129,2);uE(103359,2,103294,1,l);k[m>>2]=0;j=m+4|0;k[j>>2]=0;k[m+8>>2]=0;yg(l,103294,1,m)|0;b=k[m>>2]|0;e=k[j>>2]|0;if((b|0)==(e|0)){g=m;h=j;f=b}else{g=h+11|0;do{iI(h,b);f=(i[g>>0]|0)<0?k[h>>2]|0:h;if(Kw(f,69797,4)|0){if(!(Kw(f,69708,4)|0))dZ(n,75666)|0}else MM(o,h)|0;p1(h);b=b+12|0}while((b|0)!=(e|0));b=k[m>>2]|0;g=m;h=j;f=b;e=k[j>>2]|0}if((e-f|0)==12){if((i[b+11>>0]|0)<0)b=k[b>>2]|0;if(!(Kw(b,69797,4)|0))dZ(n,115628)|0}b=k[g>>2]|0;e=b;if(((k[h>>2]|0)-b|0)==12){if((i[b+11>>0]|0)<0)b=k[e>>2]|0;if(!(Kw(b,69708,4)|0))dZ(o,115628)|0}nG(m);p1(l)}if((Ta(14,0)|0?(m=i[o+11>>0]|0,((m<<24>>24<0?k[o+4>>2]|0:m&255)|0)==9):0)?(cA(o,0,-1,74843,9)|0)==0:0)dZ(o,75702)|0;e=a+4|0;b=k[e>>2]|0;if(i[b+783>>0]|0){dZ(o,74853)|0;b=k[e>>2]|0}if(i[b+782>>0]|0){dZ(o,74843)|0;b=k[e>>2]|0}if(!(i[b+852>>0]|0)){dZ(o,115628)|0;b=k[e>>2]|0}if(!(i[b+853>>0]|0))dZ(n,115628)|0;if(c|0)MM(c,n)|0;if(d|0)MM(d,o)|0;p1(o);p1(n);r=p;return}function ze(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0,h=0,j=0,l=0,m=0.0,n=0.0,o=0,q=0,s=0,t=0,u=0;u=r;r=r+224|0;h=u+56|0;o=u+16|0;q=u;s=u+44|0;t=u+32|0;g=b+32|0;b=a+56|0;j=k[b>>2]|0;l=(k[g>>2]|0)-(k[j+48>>2]|0)|0;if((l|0)>=0?l>>>0<(((k[a+60>>2]|0)-j|0)/96|0)>>>0:0){g=j+(l*96|0)|0;e=+p[j+(l*96|0)+16>>3];f=+p[j+(l*96|0)+24>>3];p[o>>3]=e;b=o+8|0;p[b>>3]=f;if(((d|0)!=0?(m=+p[d+8>>3],m>=0.0):0)?(n=+p[d>>3],n<=m):0){if(f>=0.0&e<=f)uI(q,o,d);else{p[q>>3]=n;p[q+8>>3]=m}k[o>>2]=k[q>>2];k[o+4>>2]=k[q+4>>2];k[o+8>>2]=k[q+8>>2];k[o+12>>2]=k[q+12>>2];f=+p[b>>3];e=+p[o>>3]}if(f>=0.0&e<=f){k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;wE(q,51477,iC(51477)|0);zK(s,+p[o>>3],+p[b>>3]);Wv(c,q,s);p1(s);p1(q)}if(!(i[(k[(k[(k[a+48>>2]|0)+128>>2]|0)+100>>2]|0)+248>>0]|0))HT(c,0,g);else{iI(t,g);mg(q,t);HT(c,0,q);p1(q);p1(t)}Ot(c);b=1}else if((k[2783]|0)<4){Qd(h,45601,189,3,0,0,0);d=Tn(h,45898,12)|0;t=a+48|0;q=k[t>>2]|0;c=q+36|0;s=i[c+11>>0]|0;o=s<<24>>24<0;s=Tn(Tn(d,o?k[c>>2]|0:c,o?k[q+40>>2]|0:s&255)|0,50319,1)|0;t=Tn(Tn(Mn(s,k[(k[t>>2]|0)+60>>2]|0)|0,68429,2)|0,45911,41)|0;t=Tn(Ln(t,k[g>>2]|0)|0,50419,19)|0;b=Tn(Mn(t,k[(k[b>>2]|0)+48>>2]|0)|0,51129,1)|0;Tn(Mn(b,k[(k[a+60>>2]|0)+-48>>2]|0)|0,103292,1)|0;hi(h);b=0}else b=0;r=u;return b|0}function Ae(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,q=0,s=0,t=0;t=r;r=r+80|0;s=t;HA(s,b,c,d);k[s>>2]=15336;q=s+52|0;k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;k[q+12>>2]=0;k[q+16>>2]=0;k[q+20>>2]=0;n=a+8|0;c=k[n>>2]|0;o=a+4|0;b=k[o>>2]|0;d=i[b+c>>0]|0;m=c+1|0;k[n>>2]=m;i[s+44>>0]=d;m=i[b+m>>0]|0;d=c+2|0;k[n>>2]=d;i[s+45>>0]=m;d=i[b+d>>0]|0;m=c+3|0;k[n>>2]=m;i[s+46>>0]=d;m=i[b+m>>0]|0;d=c+4|0;k[n>>2]=d;i[s+47>>0]=m;d=i[b+d>>0]|0;c=c+5|0;k[n>>2]=c;d=d&255;if((d&252|0)!=252){CF(70195)|0;b=k[o>>2]|0;c=k[n>>2]|0}i[s+48>>0]=d&3;b=i[b+c>>0]|0;k[n>>2]=c+1;b=b&255;if((b&224|0)!=224)CF(70195)|0;h=b&31;j=s+52|0;jH(j,h);do if(h){m=a+12|0;g=0;b=6;c=k[n>>2]|0;f=k[j>>2]|0;while(1){d=(k[o>>2]|0)+c|0;k[n>>2]=c+2;k[f+(g<<3)+4>>2]=(l[d>>0]|0)<<8|(l[d+1>>0]|0);b=b+2|0;c=k[j>>2]|0;if((k[c+(g<<3)+4>>2]|0)>>>0>(e-b|0)>>>0){d=12;break}k[c+(g<<3)>>2]=(k[o>>2]|0)+(k[n>>2]|0);f=k[j>>2]|0;d=f+(g<<3)+4|0;c=(k[n>>2]|0)+(k[d>>2]|0)|0;k[n>>2]=c;if((c|0)>=(k[m>>2]|0)){k[m>>2]=0;k[n>>2]=0;c=0}b=(k[d>>2]|0)+b|0;g=g+1|0;if(g>>>0>=h>>>0){d=13;break}}if((d|0)==12){CF(70258)|0;break}else if((d|0)==13){b=b+1|0;d=14;break}}else{b=7;c=k[n>>2]|0;d=14}while(0);a:do if((d|0)==14){m=i[(k[o>>2]|0)+c>>0]|0;k[n>>2]=c+1;h=m&255;j=s+64|0;jH(j,h);b:do if(m<<24>>24){m=a+12|0;g=0;f=k[j>>2]|0;c=k[n>>2]|0;while(1){d=(k[o>>2]|0)+c|0;k[n>>2]=c+2;k[f+(g<<3)+4>>2]=(l[d>>0]|0)<<8|(l[d+1>>0]|0);b=b+2|0;c=k[j>>2]|0;if((k[c+(g<<3)+4>>2]|0)>>>0>(e-b|0)>>>0)break;k[c+(g<<3)>>2]=(k[o>>2]|0)+(k[n>>2]|0);f=k[j>>2]|0;d=f+(g<<3)+4|0;c=(k[n>>2]|0)+(k[d>>2]|0)|0;k[n>>2]=c;if((c|0)>=(k[m>>2]|0)){k[m>>2]=0;k[n>>2]=0;c=0}b=(k[d>>2]|0)+b|0;g=g+1|0;if(g>>>0>=h>>>0)break b}CF(70258)|0;break a}while(0);e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,s,+p[a+40>>3])}while(0);k[s>>2]=15336;c=k[s+64>>2]|0;d=c;if(c|0){f=s+68|0;g=k[f>>2]|0;if((g|0)!=(c|0))k[f>>2]=g+(~((g+-8-d|0)>>>3)<<3);zba(c)}c=k[q>>2]|0;d=c;if(c|0){f=s+56|0;g=k[f>>2]|0;if((g|0)!=(c|0))k[f>>2]=g+(~((g+-8-d|0)>>>3)<<3);zba(c)}O3(s);r=t;return b|0}function Be(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;n=r;r=r+496|0;o=n+480|0;c=n+324|0;h=n+168|0;j=n+12|0;m=n;d=b+16|0;d=eH(a,k[d>>2]|0,k[d+4>>2]|0)|0;e=((d|0)<0)<<31>>31;f=k[b+24>>2]|0;g=k[b+8>>2]|0;k[o>>2]=d;do if((Xx(a+184|0,o)|0)==(a+188|0)){if((k[2783]|0)<4){Qd(c,52211,545,3,0,0,0);j=Tn(Mn(Tn(tn(Tn(c,53831,24)|0,d,e)|0,53856,11)|0,f)|0,53868,15)|0;l=a+8|0;o=i[l+11>>0]|0;m=o<<24>>24<0;Tn(Tn(j,m?k[l>>2]|0:l,m?k[a+12>>2]|0:o&255)|0,53884,48)|0;hi(c)}if(g|0){J8(g);zba(g)}}else{c=a+4|0;WH(k[c>>2]|0,d,0,k[b+32>>2]|0);Ch(a,d,f,g,0)|0;o=k[g+8>>2]|0;p=a+140|0;k[p>>2]=(k[p>>2]|0)+o;LO(k[c>>2]|0,o);if(i[(k[a+112>>2]|0)+4>>0]|0?(l=b+28|0,p=k[l>>2]|0,(p|0)!=(aK(g)|0)):0){if((k[2783]|0)<4?(Qd(h,52211,559,3,0,0,0),p=Tn(Mn(Tn(tn(Tn(h,53933,28)|0,d,e)|0,53962,10)|0,f)|0,53973,9)|0,p=Tn(Ln(p,k[l>>2]|0)|0,53983,12)|0,Tn(Ln(p,aK(g)|0)|0,68623,1)|0,hi(h),(k[2783]|0)<4):0){Qd(j,52211,560,3,0,0,0);Tn(j,53996,43)|0;hi(j)}p=k[c>>2]|0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,54040,14);XD(p,a,2,m);p1(m);break}oe(k[c>>2]|0,a,g,d,f);p=a+200|0;k[p>>2]=(k[p>>2]|0)+1;k[a+196>>2]=0}while(0);r=n;return}function Ce(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+288|0;u=y+272|0;v=y+176|0;w=y;s=y+16|0;t=y+172|0;n=iC(b)|0;if((n&1|0)==0?(o=(n|0)/2|0,(n|0)>=16):0){x=jb()|0;q=r;r=r+((1*(o+1|0)|0)+15&-16)|0;j=(n+-1|0)>>>1;g=0;h=0;while(1){e=b+h|0;c=i[e>>0]|0;d=c<<24>>24;do if((c+-48&255)>=10)if((c+-65&255)<6){c=d+-55|0;break}else{c=d+169|0;break}else c=d+-48|0;while(0);f=c<<4;c=i[e+1>>0]|0;d=c<<24>>24;do if((c+-48&255)>=10)if((c+-65&255)<6){c=d+-55|0;break}else{c=d+169|0;break}else c=d+-48|0;while(0);i[q+g>>0]=c|f;if((g|0)==(j|0))break;else{g=g+1|0;h=h+2|0}}if(!(o&7)){m=(n|0)/8|0;j=(n|0)>7;if(j){c=0;do{n=q+(c<<2)|0;b=oba(k[n>>2]|0)|0;k[n>>2]=b;c=c+1|0}while((c|0)<(m|0));if(j){g=0;do{h=q+(g<<2)|0;b=h+4|0;c=k[b>>2]|0;d=-957401312;e=0;f=k[h>>2]|0;while(1){c=c-((f>>>5)+895078081^(f<<4)+1341808333^d+f)|0;f=f-((c<<4)+-382986038^c+d^(c>>>5)+-492105198)|0;e=e+1|0;if((e|0)==32)break;else d=d+1640531527|0}k[h>>2]=f;k[b>>2]=c;g=g+2|0}while((g|0)<(m|0));if(j){c=0;do{n=q+(c<<2)|0;j=oba(k[n>>2]|0)|0;k[n>>2]=j;c=c+1|0}while((c|0)<(m|0))}}}c=l[q+(o+-1)>>0]|0;if((c+-49|0)>>>0<=7){i[q+(o+48-c)>>0]=0;k[u>>2]=0;k[u+4>>2]=0;k[u+8>>2]=0;wE(u,q,iC(q)|0);FV(v);mD(w,0);if(kH(v,u,w,1)|0)if(uG(w,0,a)|0){k[t>>2]=0;SK(w,1,t)|0;p[a+16>>3]=+((k[t>>2]|0)>>>0)*60.0*60.0;uG(w,2,a+24|0)|0;c=1}else c=0;else if((k[2783]|0)<5){Qd(s,33834,96,4,0,0,0);Tn(s,33854,24)|0;hi(s);c=0}else c=0;Lv(w);p1(v+80|0);p1(v+48|0);yI(v+24|0);lJ(v);p1(u)}else c=0}else c=0;Qa(x|0)}else c=0;r=y;return c|0}function De(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+624|0;d=t+468|0;j=t+312|0;l=t+156|0;m=t;c=a+704|0;a:do if((k[a+712>>2]|0)!=(k[a+716>>2]|0)?(q=a+1168|0,k[q>>2]|0):0){p=Sr(c,b)|0;if(!p){if((k[2783]|0)>=5)break;Qd(d,27921,210,4,0,0,0);a=Tn(Tn(d,27948,6)|0,29009,28)|0;s=i[b+11>>0]|0;q=s<<24>>24<0;Tn(a,q?k[b>>2]|0:b,q?k[b+4>>2]|0:s&255)|0;hi(d);break}b=k[(k[q>>2]|0)+96>>2]|0;o=p+36|0;h=b+36|0;c=i[o+11>>0]|0;d=c<<24>>24<0;if(d)g=k[p+40>>2]|0;else g=c&255;e=i[h+11>>0]|0;f=e<<24>>24<0;e=f?k[b+40>>2]|0:e&255;if(d)d=k[o>>2]|0;else d=o;b=e>>>0<g>>>0;c=b?e:g;if(!((c|0)!=0?(EI(d,f?k[h>>2]|0:h,c)|0)!=0:0))s=14;if((s|0)==14?g>>>0>=e>>>0&(b^1):0)break;c=a+916|0;do if((k[(k[c>>2]|0)+1024>>2]|0)==1){if((i[a+1189>>0]|0)!=0&(k[2783]|0)<4?(Qd(j,27921,217,3,0,0,0),Tn(j,28820,71)|0,hi(j),(k[(k[c>>2]|0)+1024>>2]|0)!=1):0){s=33;break}if(!(i[a+1189>>0]|0)){if((k[2783]|0)<3){Qd(l,27921,220,2,0,0,0);Tn(l,29038,34)|0;hi(l)}c=k[a+648>>2]|0;l=k[a+652>>2]|0;b=l;d=c;if((c|0)!=(l|0)?(n=a+904|0,k[a+912>>2]|0):0){if((b-d|0)==4)c=(k[c>>2]|0)+60|0;else c=(k[(k[(k[n>>2]|0)+8>>2]|0)+2004>>2]|0)+100|0;b=k[c>>2]|0;c=k[q>>2]|0;if(c|0){wn(c);c=k[q>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[q>>2]=0}qq(a,p)|0;cf(a,b);break}if((k[2783]|0)>=4)break a;Qd(m,27921,222,3,0,0,0);Tn(m,29073,56)|0;hi(m);break a}else s=33}else s=33;while(0);if((s|0)==33)qq(a,p)|0;AE(a+416|0,o)}while(0);r=t;return}function Ee(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+560|0;l=p+548|0;c=p+544|0;m=p+532|0;n=p;d=p+520|0;e=p+508|0;f=p+496|0;g=p+484|0;h=p+328|0;i=p+172|0;j=p+16|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[c>>2]=0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;mD(n,0);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,55130,9);do if(ZH(b,d,n)|0){k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,55140,6);if(!(nE(n,e,l)|0)){p1(e);p1(d);o=8;break}k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,55147,13);if(!(vG(n,f,c)|0)){p1(f);p1(e);p1(d);o=8;break}k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,55130,9);b=nE(n,g,m)|0;p1(g);p1(f);p1(e);p1(d);if(b){b=mL(k[c>>2]|0,l,m)|0;if(!b){if((k[2783]|0)>=4)break;Qd(i,52211,727,3,0,0,0);Tn(i,55199,47)|0;hi(i);break}i=(GI(k[a+100>>2]|0,b)|0)^1;if((k[2783]|0)<4&i){Qd(j,52211,732,3,0,0,0);Tn(j,55247,46)|0;hi(j)}p1(b+16|0);p1(b+4|0);zba(b)}else o=8}else{p1(d);o=8}while(0);if((o|0)==8?(k[2783]|0)<4:0){Qd(h,52211,721,3,0,0,0);Tn(h,55161,37)|0;hi(h)}Lv(n);p1(m);p1(l);r=p;return}function Fe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+480|0;h=f+468|0;c=f+312|0;d=f+156|0;e=f;iI(h,b);g=jG(a+36|0,h)|0;p1(h);do if(g)if((k[2783]|0)<3){Qd(c,30228,149,2,0,0,0);e=Tn(Tn(Hn(Tn(c,30248,4)|0,a)|0,30253,3)|0,30426,18)|0;h=i[b+11>>0]|0;g=h<<24>>24<0;Tn(Tn(e,g?k[b>>2]|0:b,g?k[b+4>>2]|0:h&255)|0,30445,26)|0;hi(c);c=0}else c=0;else{c=a+744|0;if((k[c>>2]|0)>=(k[a+112>>2]|0)){if((k[2783]|0)>=3){c=0;break}Qd(d,30228,163,2,0,0,0);g=Tn(Tn(Hn(Tn(d,30248,4)|0,a)|0,30253,3)|0,30426,18)|0;c=i[b+11>>0]|0;h=c<<24>>24<0;Tn(Tn(g,h?k[b>>2]|0:b,h?k[b+4>>2]|0:c&255)|0,30592,63)|0;hi(d);c=0;break}if(i[a+188>>0]|0){h=cW(228)|0;g=a+20|0;oi(h,k[g>>2]|0,b);d=cW(12)|0;k[d+8>>2]=h;k[d>>2]=a+24;e=a+28|0;b=k[e>>2]|0;k[d+4>>2]=b;k[b>>2]=d;k[e>>2]=d;e=a+32|0;k[e>>2]=(k[e>>2]|0)+1;k[c>>2]=(k[c>>2]|0)+1;Rb[k[(k[h>>2]|0)+132>>2]&2047](h);AE((k[g>>2]|0)+36|0,h);c=h;break}if((k[2783]|0)<3){Qd(e,30228,165,2,0,0,0);g=Tn(Tn(Hn(Tn(e,30248,4)|0,a)|0,30253,3)|0,30426,18)|0;c=i[b+11>>0]|0;h=c<<24>>24<0;Tn(Tn(g,h?k[b>>2]|0:b,h?k[b+4>>2]|0:c&255)|0,30551,40)|0;hi(e);c=0}else c=0}while(0);r=f;return c|0}function Ge(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+64|0;f=o+52|0;n=o+40|0;j=o;l=o+28|0;m=o+16|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;d=a+20|0;e=a+16|0;g=(k[d>>2]|0)+-1+(k[e>>2]|0)|0;c=a+4|0;g=k[(k[(k[c>>2]|0)+(g>>>10<<2)>>2]|0)+((g&1023)<<2)>>2]|0;mD(j,7);GA(g,j)|0;Lv(j);g=n+11|0;h=n+4|0;a:while(1){Se(a,f)|0;b:while(1){switch(k[f>>2]|0){case 2:{c=5;break a}case 5:break b;case 12:break;default:{c=19;break a}}Se(a,f)|0}dZ(n,115628)|0;if(!(bd(a,f,n)|0)){c=7;break}Se(a,j)|0;if((k[j>>2]|0)!=11){c=9;break}b=(k[d>>2]|0)+-1+(k[e>>2]|0)|0;b=pY(k[(k[(k[c>>2]|0)+(b>>>10<<2)>>2]|0)+((b&1023)<<2)>>2]|0,n)|0;k[l>>2]=b;sA(a,l);b=Ig(a)|0;KI(a);if(!b){c=11;break}Se(a,l)|0;b=k[l>>2]|0;switch(b|0){case 12:case 10:case 2:break;default:{c=13;break a}}c:while(1){switch(b|0){case 2:{b=1;c=17;break a}case 12:break;default:break c}Se(a,l)|0;b=k[l>>2]|0}}if((c|0)==5){m=i[g>>0]|0;if(!((m<<24>>24<0?k[h>>2]|0:m&255)|0))b=1;else c=19}else if((c|0)==7){DI(a,2)|0;b=0}else if((c|0)==9){k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,102583,36);iz(a,l,j,0)|0;DI(a,2)|0;p1(l);c=16}else if((c|0)==11){DI(a,2)|0;c=16}else if((c|0)==13){k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,102620,40);iz(a,m,l,0)|0;DI(a,2)|0;p1(m);b=0;c=17}if((c|0)==16)b=0;else if((c|0)!=17)if((c|0)==19){k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,102661,33);iz(a,j,f,0)|0;DI(a,2)|0;p1(j);b=0}p1(n);r=o;return b|0}function He(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+16|0;f=m;g=a+52|0;d=k[g>>2]|0;if(d|0?(e=HL(d+1056|0,b)|0,e|0):0){b=k[g>>2]|0;j=(i[b+1160>>0]|0)!=0;d=e+8|0;if((i[d+11>>0]|0)<0)e=k[d>>2]|0;else e=d;h=W_(b)|0;k[f>>2]=h;b=HL(b+1056|0,f)|0;do if(j){b=b+44|0;if((i[b+11>>0]|0)<0){b=k[b>>2]|0;break}else break}else b=0;while(0);if(c){T3(f,k[(k[g>>2]|0)+916>>2]|0);ye(f,d,a+224|0,a+248|0);Dba(f)}else dZ(a+224|0,e)|0;if(b|0?i[b>>0]|0:0)dZ(a+248|0,b)|0;h=a+224|0;f=h+11|0;d=i[f>>0]|0;e=d<<24>>24<0;if(e)b=k[a+228>>2]|0;else b=d&255;do if(!b)l=29;else{g=a+228|0;b=k[g>>2]|0;if(((e?b:d&255)|0)==7){if(!(cA(h,0,-1,75658,7)|0)){l=29;break}d=i[f>>0]|0;b=k[g>>2]|0}e=a+236|0;if(((d<<24>>24<0?b:d&255)|0)==3)if(!(cA(h,0,-1,74864,3)|0))b=74872;else{d=i[f>>0]|0;b=k[g>>2]|0;l=26}else l=26;if((l|0)==26)if(((d<<24>>24<0?b:d&255)|0)==3){b=(cA(h,0,-1,74868,3)|0)==0;b=b?74872:75678}else b=75678;dZ(e,b)|0}while(0);if((l|0)==29)dZ(a+236|0,115628)|0;h=a+248|0;f=h+11|0;d=i[f>>0]|0;e=d<<24>>24<0;if(e)b=k[a+252>>2]|0;else b=d&255;do if(!b)l=43;else{g=a+252|0;b=k[g>>2]|0;if(((e?b:d&255)|0)==7){if(!(cA(h,0,-1,75658,7)|0)){l=43;break}d=i[f>>0]|0;b=k[g>>2]|0}e=a+260|0;if(((d<<24>>24<0?b:d&255)|0)==6)if(!(cA(h,0,-1,74883,6)|0))b=74895;else{d=i[f>>0]|0;b=k[g>>2]|0;l=40}else l=40;if((l|0)==40)if(((d<<24>>24<0?b:d&255)|0)==4){b=(cA(h,0,-1,74890,4)|0)==0;b=b?74895:75688}else b=75688;dZ(e,b)|0}while(0);if((l|0)==43)dZ(a+260|0,115628)|0;if(!c)Sb[k[(k[a>>2]|0)+180>>2]&511](a,j)}r=m;return}function Ie(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;n=r;r=r+384|0;d=n+228|0;h=n+72|0;j=n+32|0;l=n+16|0;m=n;if((i[a+168>>0]|0)!=0?(f=k[a+128>>2]|0,(f|0)<(c|0)):0){if((k[b+2056>>2]|0)>>>0>=((f|0)>0?f:0)>>>0?(k[a+164>>2]|0)<1:0){if((k[2783]|0)<3){Qd(d,33930,139,2,0,0,0);t=Tn(d,34046,17)|0;f=a+96|0;p=k[f>>2]|0;s=p+36|0;o=i[s+11>>0]|0;q=o<<24>>24<0;o=Tn(Tn(t,q?k[s>>2]|0:s,q?k[p+40>>2]|0:o&255)|0,50319,1)|0;Tn(Tn(Mn(o,k[(k[f>>2]|0)+60>>2]|0)|0,68429,2)|0,34064,17)|0;hi(d)}t=cW(8)|0;k[t>>2]=6224;k[t+4>>2]=a;nL(a+44|0,t)}}else g=8;do if((g|0)==8?(k[a+132>>2]|0)<=(c|0):0){d=laa(k[a+88>>2]|0)|0;e=+Dx(d,c);if(e>=0.0){t=(DT(b+2060|0,c)|0)+16|0;t=k[t>>2]|0;D0(l,e,k[d+28>>2]|0);D0(m,+(t>>>0),1e3);k[j>>2]=c;t=j+8|0;k[t>>2]=k[l>>2];k[t+4>>2]=k[l+4>>2];k[t+8>>2]=k[l+8>>2];k[t+12>>2]=k[l+12>>2];t=j+24|0;k[t>>2]=k[m>>2];k[t+4>>2]=k[m+4>>2];k[t+8>>2]=k[m+8>>2];k[t+12>>2]=k[m+12>>2];Sj(a,j);t=a+128|0;s=k[t>>2]|0;k[t>>2]=(s|0)>(c|0)?s:c;break}if((k[2783]|0)<5){Qd(h,33930,151,4,0,0,0);b=Tn(h,34046,17)|0;t=a+96|0;q=k[t>>2]|0;o=q+36|0;s=i[o+11>>0]|0;p=s<<24>>24<0;s=Tn(Tn(b,p?k[o>>2]|0:o,p?k[q+40>>2]|0:s&255)|0,50319,1)|0;Tn(Mn(Tn(Tn(Mn(s,k[(k[t>>2]|0)+60>>2]|0)|0,68429,2)|0,34082,12)|0,c)|0,34095,33)|0;hi(h)}}while(0);r=n;return}function Je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;o=r;r=r+192|0;j=o;n=o+24|0;l=b+8|0;d=l;e=k[d>>2]|0;d=k[d+4>>2]|0;m=a+4|0;do if((Vd(w4(k[m>>2]|0)|0)|0)==3){h=b+40|0;f=h;f=eH(a,k[f>>2]|0,k[f+4>>2]|0)|0;if((f|0)==-1){e=a+204|0;d=k[e>>2]|0;if((d|0)<=-1)break;g=a+208|0;f=k[g>>2]|0;q=l;d=n_(k[q>>2]|0,k[q+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;f=y0(d|0,M|0,f|0,((f|0)<0)<<31>>31|0)|0;d=M;q=laa(w4(k[m>>2]|0)|0)|0;p=h;_C(q,f,+((k[p>>2]|0)>>>0)+4294967296.0*+((k[p+4>>2]|0)>>>0))}else{g=a+208|0;e=a+204|0;d=((f|0)<0)<<31>>31}k[e>>2]=k[l>>2];k[g>>2]=f;if(!(i[b+52>>0]|0)){j=d;h=f;g=8}else{p=h;p=eH(a,k[p>>2]|0,k[p+4>>2]|0)|0;g=h;q=k[g>>2]|0;g=k[g+4>>2]|0;k[j+4>>2]=19;k[j>>2]=8124;h=j+8|0;k[h>>2]=p;k[h+4>>2]=((p|0)<0)<<31>>31;h=j+16|0;k[h>>2]=q;k[h+4>>2]=g;fB(k[a+108>>2]|0,j);j=d;h=f;g=8}}else{j=d;h=e;g=8}while(0);do if((g|0)==8){d=k[b+48>>2]|0;e=k[a+216>>2]|0;if(h>>>0>=e>>>0?((k[a+220>>2]|0)+e|0)>>>0>h>>>0:0)k[(k[a+224>>2]|0)+(h-e<<2)>>2]=d;g=k[b+16>>2]|0;e=b+24|0;e=UG(a,k[e>>2]|0,k[e+4>>2]|0)|0;f=k[b+32>>2]|0;d=a+116|0;if(!(fJ(k[d>>2]|0,h,j)|0)){if((k[2783]|0)>=4)break;Qd(n,52211,501,3,0,0,0);m=Tn(n,54055,6)|0;c=a+8|0;p=i[c+11>>0]|0;q=p<<24>>24<0;p=Tn(Tn(m,q?k[c>>2]|0:c,q?k[a+12>>2]|0:p&255)|0,54062,60)|0;q=k[d>>2]|0;q=Tn(tn(p,k[q>>2]|0,k[q+4>>2]|0)|0,68735,5)|0;Tn(Ln(q,x9(k[d>>2]|0)|0)|0,68623,1)|0;hi(n);break}k[a+144>>2]=e;d=k[m>>2]|0;if(c){nK(d,a,h,g,f);break}else{Ku(d,a,h,g,f);break}}while(0);r=o;return}function Ke(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=b;d=k[e+4>>2]|0;c=a;k[c>>2]=k[e>>2];k[c+4>>2]=d;MM(a+8|0,b+8|0)|0;MM(a+20|0,b+20|0)|0;c=(a|0)==(b|0);if(!c)Nh(a+32|0,k[b+32>>2]|0,k[b+36>>2]|0);MM(a+44|0,b+44|0)|0;k[a+56>>2]=k[b+56>>2];i[a+60>>0]=i[b+60>>0]|0;MM(a+64|0,b+64|0)|0;MM(a+76|0,b+76|0)|0;i[a+88>>0]=i[b+88>>0]|0;f=a+92|0;d=b+92|0;k[f>>2]=k[d>>2];k[f+4>>2]=k[d+4>>2];i[f+8>>0]=i[d+8>>0]|0;MM(a+104|0,b+104|0)|0;i[a+116>>0]=i[b+116>>0]|0;MM(a+120|0,b+120|0)|0;MM(a+132|0,b+132|0)|0;i[a+144>>0]=i[b+144>>0]|0;f=a+148|0;d=b+148|0;k[f>>2]=k[d>>2];k[f+4>>2]=k[d+4>>2];i[f+8>>0]=i[d+8>>0]|0;MM(a+160|0,b+160|0)|0;i[a+172>>0]=i[b+172>>0]|0;MM(a+176|0,b+176|0)|0;MM(a+188|0,b+188|0)|0;f=b+200|0;d=k[f+4>>2]|0;e=a+200|0;k[e>>2]=k[f>>2];k[e+4>>2]=d;i[a+208>>0]=i[b+208>>0]|0;if(!c)Kg(a+212|0,k[b+212>>2]|0,k[b+216>>2]|0);MM(a+224|0,b+224|0)|0;MM(a+236|0,b+236|0)|0;i[a+248>>0]=i[b+248>>0]|0;d=a+252|0;e=b+252|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];i[d+8>>0]=i[e+8>>0]|0;MM(a+264|0,b+264|0)|0;i[a+276>>0]=i[b+276>>0]|0;MM(a+280|0,b+280|0)|0;MM(a+292|0,b+292|0)|0;d=b+304|0;e=k[d+4>>2]|0;f=a+304|0;k[f>>2]=k[d>>2];k[f+4>>2]=e;i[a+312>>0]=i[b+312>>0]|0;if(!c){Kg(a+316|0,k[b+316>>2]|0,k[b+320>>2]|0);qh(a+328|0,k[b+328>>2]|0,k[b+332>>2]|0)}return a|0}function Le(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,q=0,s=0,t=0;m=r;r=r+96|0;j=m;HA(j,b,c,d);t=j+44|0;k[t>>2]=0;o=j+48|0;k[o>>2]=0;k[j>>2]=16064;d=j+52|0;k[d>>2]=0;n=j+56|0;k[n>>2]=0;e=j+64|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;g=a+4|0;b=k[g>>2]|0;h=a+8|0;c=k[h>>2]|0;s=b+c|0;q=c+4|0;k[h>>2]=q;f=i[s>>0]|0;s=(l[s+2>>0]|0)<<8|(l[s+1>>0]|0)<<16|(l[s+3>>0]|0);k[t>>2]=f&255;k[o>>2]=s;q=b+q|0;o=c+8|0;k[h>>2]=o;k[d>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);o=b+o|0;d=c+12|0;k[h>>2]=d;k[n>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);if(!(f<<24>>24)){t=b+d|0;d=c+16|0;k[h>>2]=d;k[e>>2]=(l[t+1>>0]|0)<<16|(l[t>>0]|0)<<24|(l[t+2>>0]|0)<<8|(l[t+3>>0]|0);k[e+4>>2]=0;e=b+d|0;c=c+20|0;k[h>>2]=c;d=24;e=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);b=0}else{d=Ay(a)|0;k[e>>2]=d;k[e+4>>2]=M;e=Ay(a)|0;d=32;b=M;c=k[h>>2]|0}t=j+72|0;k[t>>2]=e;k[t+4>>2]=b;e=c+2|0;k[h>>2]=e;b=a+12|0;if((e|0)>=(k[b>>2]|0)){k[b>>2]=0;k[h>>2]=0;e=0}b=(k[g>>2]|0)+e|0;k[h>>2]=e+2;b=(l[b>>0]|0)<<8|(l[b+1>>0]|0);c=j+80|0;uF(c,b);if(b){f=b*12|0;e=0;do{t=k[c>>2]|0;n=k[h>>2]|0;s=(k[g>>2]|0)+n|0;k[h>>2]=n+4;n=i[s>>0]|0;q=(l[s+1>>0]|0)<<16;o=(l[s+2>>0]|0)<<8;s=l[s+3>>0]|0;i[t+(e*20|0)>>0]=(n&255)>>>7;k[t+(e*20|0)+4>>2]=q|(n&255)<<24&2130706432|o|s;s=k[h>>2]|0;o=(k[g>>2]|0)+s|0;k[h>>2]=s+4;k[t+(e*20|0)+8>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);o=k[h>>2]|0;s=(k[g>>2]|0)+o|0;k[h>>2]=o+4;o=i[s>>0]|0;n=(l[s+1>>0]|0)<<16;q=(l[s+2>>0]|0)<<8;s=l[s+3>>0]|0;i[t+(e*20|0)+12>>0]=(o&255)>>>7;k[t+(e*20|0)+16>>2]=n|(o&255)<<24&251658240|q|s;e=e+1|0}while((e|0)!=(b|0));d=d+f|0}e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,j,+p[a+40>>3]);k[j>>2]=16064;e=k[j+80>>2]|0;if(e|0){b=j+84|0;c=k[b>>2]|0;if((c|0)!=(e|0))k[b>>2]=c+(~(((c+-20-e|0)>>>0)/20|0)*20|0);zba(e)}O3(j);r=m;return d|0}function Me(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;j=r;r=r+16|0;d=j;h=ez(b)|0;do if(!h){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,103350,2);av(a,d);p1(d)}else{if(!(am(a,b)|0)){b=a+12|0;Tn(k[b>>2]|0,103353,2)|0;c=0;do{if(c|0)Tn(k[b>>2]|0,103359,2)|0;f=k[a>>2]|0;d=f+(c*12|0)|0;g=i[d+11>>0]|0;e=g<<24>>24<0;Tn(k[b>>2]|0,e?k[d>>2]|0:d,e?k[f+(c*12|0)+4>>2]|0:g&255)|0;c=c+1|0}while((c|0)!=(h|0));Tn(k[b>>2]|0,103356,2)|0;break}k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,103290,1);xE(a);g=a+12|0;f=i[d+11>>0]|0;e=f<<24>>24<0;Tn(k[g>>2]|0,e?k[d>>2]|0:d,e?k[d+4>>2]|0:f&255)|0;p1(d);f=a+32|0;e=i[f+11>>0]|0;c=e<<24>>24<0;nw(a+16|0,c?k[f>>2]|0:f,c?k[a+36>>2]|0:e&255)|0;e=(k[a>>2]|0)==(k[a+4>>2]|0);c=0;while(1){f=hB(b,c)|0;us(a,f);if(e){xE(a);dd(a,f)}else{m=k[a>>2]|0;o=m+(c*12|0)|0;xE(a);l=i[o+11>>0]|0;n=l<<24>>24<0;Tn(k[g>>2]|0,n?k[o>>2]|0:o,n?k[m+(c*12|0)+4>>2]|0:l&255)|0}c=c+1|0;if((c|0)==(h|0))break;Tn(k[g>>2]|0,103294,1)|0;Hi(a,f)}Hi(a,f);CJ(a);k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,103292,1);xE(a);o=i[d+11>>0]|0;n=o<<24>>24<0;Tn(k[g>>2]|0,n?k[d>>2]|0:d,n?k[d+4>>2]|0:o&255)|0;p1(d)}while(0);r=j;return}function Ne(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+192|0;h=l+168|0;c=l+156|0;j=l;if(!(i[a+133>>0]|0)){nN(a);k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;wE(c,56171,3);nE(b,c,h)|0;p1(c);g=h+11|0;d=i[g>>0]|0;f=h+4|0;c=k[f>>2]|0;do if(((d<<24>>24<0?c:d&255)|0)==5)if(!(cA(h,0,-1,53076,5)|0)){Ji(a,b);break}else{d=i[g>>0]|0;c=k[f>>2]|0;e=6;break}else e=6;while(0);a:do if((e|0)==6){do if(((d<<24>>24<0?c:d&255)|0)==13)if(!(cA(h,0,-1,53082,13)|0)){Ee(a,b);break a}else{d=i[g>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==6)if(!(cA(h,0,-1,53096,6)|0)){Lf(a,b);break a}else{d=i[g>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==3)if(!(cA(h,0,-1,53103,3)|0)){bl(a,0);break a}else{d=i[g>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==8)if(!(cA(h,0,-1,52290,8)|0)){Hf(a,b);break a}else{d=i[g>>0]|0;c=k[f>>2]|0;break}while(0);if(((d<<24>>24<0?c:d&255)|0)==13?(cA(h,0,-1,53107,13)|0)==0:0){VK(a,b);break}if((k[2783]|0)<5){Qd(j,52211,248,4,0,0,0);c=Tn(j,53121,17)|0;d=a+8|0;e=i[d+11>>0]|0;b=e<<24>>24<0;e=Tn(Tn(c,b?k[d>>2]|0:d,b?k[a+12>>2]|0:e&255)|0,53139,37)|0;b=i[g>>0]|0;a=b<<24>>24<0;Tn(e,a?k[h>>2]|0:h,a?k[f>>2]|0:b&255)|0;hi(j)}}while(0);p1(h)}r=l;return}function Oe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0,o=0,q=0;n=r;r=r+144|0;m=n;HA(m,b,c,d);q=m+44|0;k[q>>2]=0;c=m+48|0;k[c>>2]=0;k[m>>2]=15280;f=a+4|0;d=k[f>>2]|0;h=a+8|0;e=k[h>>2]|0;o=d+e|0;b=e+4|0;k[h>>2]=b;g=i[o>>0]|0;o=(l[o+2>>0]|0)<<8|(l[o+1>>0]|0)<<16|(l[o+3>>0]|0);k[q>>2]=g&255;k[c>>2]=o;if(g<<24>>24==1){q=Ay(a)|0;e=m+56|0;k[e>>2]=q;k[e+4>>2]=M;e=Ay(a)|0;q=m+64|0;k[q>>2]=e;k[q+4>>2]=M;q=k[h>>2]|0;e=(k[f>>2]|0)+q|0;k[h>>2]=q+4;k[m+72>>2]=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);q=q+8|0;k[h>>2]=q;e=a+12|0;if((q|0)>=(k[e>>2]|0)){k[e>>2]=0;k[h>>2]=0}c=Ay(a)|0;g=m+80|0;k[g>>2]=c;k[g+4>>2]=M;g=96;c=e;b=k[e>>2]|0;e=k[h>>2]|0}else{b=d+b|0;q=e+8|0;k[h>>2]=q;c=m+56|0;k[c>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);k[c+4>>2]=0;q=d+q|0;c=e+12|0;k[h>>2]=c;b=m+64|0;k[b>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);k[b+4>>2]=0;c=d+c|0;k[h>>2]=e+16;k[m+72>>2]=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);e=e+20|0;k[h>>2]=e;c=a+12|0;b=k[c>>2]|0;if((e|0)>=(b|0)){k[c>>2]=0;k[h>>2]=0;e=0;b=0}q=d+e|0;e=e+4|0;k[h>>2]=e;g=m+80|0;k[g>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);k[g+4>>2]=0;g=84}e=e+8|0;k[h>>2]=e;if((e|0)>=(b|0)){k[c>>2]=0;k[h>>2]=0;e=0;b=0}f=k[f>>2]|0;q=f+e|0;o=e+2|0;k[h>>2]=o;j[m+88>>1]=(l[q>>0]|0)<<8|(l[q+1>>0]|0);o=f+o|0;q=e+4|0;k[h>>2]=q;j[m+90>>1]=(l[o>>0]|0)<<8|(l[o+1>>0]|0);q=f+q|0;k[h>>2]=e+6;j[m+92>>1]=(l[q>>0]|0)<<8|(l[q+1>>0]|0);e=e+8|0;k[h>>2]=e;if((e|0)<(b|0))d=0;else{k[c>>2]=0;k[h>>2]=0;d=0;e=0}while(1){c=f+e|0;b=e+4|0;k[h>>2]=b;c=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);if((d|0)==9)break;k[m+96+(d<<2)>>2]=c;d=d+1|0;e=b}k[m+132>>2]=c;q=f+b|0;k[h>>2]=e+8;k[m+136>>2]=(l[q+1>>0]|0)<<16|(l[q>>0]|0)<<24|(l[q+2>>0]|0)<<8|(l[q+3>>0]|0);q=k[a+28>>2]|0;hc[k[k[q>>2]>>2]&7](q,m,+p[a+40>>3]);O3(m);r=n;return g|0}function Pe(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+480|0;c=o+312|0;e=o+156|0;j=o;n=o+472|0;do if(b|0){if(!(Bv(a,0,b+24|0)|0)){if((k[2783]|0)>=4)break;Qd(c,74588,299,3,0,0,0);Tn(Tn(c,74629,15)|0,75099,81)|0;hi(c);break}c=a+371|0;if(i[c>>0]|0){i[c>>0]=0;l=laa(k[a+52>>2]|0)|0;c=b+12|0;d=+xY(l,k[c>>2]|0);if((k[2783]|0)<3){Qd(e,74588,306,2,0,0,0);l=Tn(Tn(e,74629,15)|0,75181,32)|0;h=l+(k[(k[l>>2]|0)+-12>>2]|0)+4|0;k[h>>2]=k[h>>2]&-261|4;l=Tn(Qn(l,d)|0,75214,5)|0;Mn(l,k[c>>2]|0)|0;hi(e)}c=a+376|0;if(+p[c>>3]<d){p[c>>3]=d;Pb[k[(k[a>>2]|0)+176>>2]&15](a,d)}}l=b+4|0;c=k[l>>2]|0;e=k[b>>2]|0;h=e;if((c|0)!=(e|0)){g=c-e>>2;c=0;f=0;do{e=k[h+(f<<2)>>2]|0;if(e)c=(k[e+8>>2]|0)+c|0;f=f+1|0}while(f>>>0<g>>>0);if((c|0)>=1){e=Ta(18,c|0)|0;k[n>>2]=e;k[n+4>>2]=c;c=k[l>>2]|0;e=k[b>>2]|0;if((c|0)!=(e|0)){h=0;g=0;while(1){f=k[e+(h<<2)>>2]|0;if((f|0)!=0?(m=f+8|0,(k[m>>2]|0)!=0):0){yb(19,k[n>>2]|0,k[f>>2]|0,g|0)|0;f=(k[m>>2]|0)+g|0;e=k[b>>2]|0;c=k[l>>2]|0}else f=g;h=h+1|0;if(h>>>0>=c-e>>2>>>0)break;else g=f}}if(!(i[a+48>>0]|0)){c=k[(k[(k[a+52>>2]|0)+916>>2]|0)+616>>2]|0;c=((k[b+12>>2]|0)%(c|0)|0|0)==(c+-1|0)}else c=1;i[b+28>>0]=1;b=k[a+288>>2]|0;jc[k[(k[b>>2]|0)+20>>2]&63](b,n,0,c);Ta(20,k[n>>2]|0)|0;break}}if((k[2783]|0)<4){Qd(j,74588,319,3,0,0,0);Tn(Tn(j,74629,15)|0,75220,24)|0;hi(j)}}while(0);r=o;return}function Qe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;l=a;i=b;j=i;g=c;n=d;h=n;if(!j){f=(e|0)!=0;if(!h){if(f){k[e>>2]=(l>>>0)%(g>>>0);k[e+4>>2]=0}n=0;e=(l>>>0)/(g>>>0)>>>0;return (M=n,e)|0}else{if(!f){n=0;e=0;return (M=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=b&0;n=0;e=0;return (M=n,e)|0}}f=(h|0)==0;do if(g){if(!f){f=(ca(h|0)|0)-(ca(j|0)|0)|0;if(f>>>0<=31){m=f+1|0;h=31-f|0;b=f-31>>31;g=m;a=l>>>(m>>>0)&b|j<<h;b=j>>>(m>>>0)&b;f=0;h=l<<h;break}if(!e){n=0;e=0;return (M=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;n=0;e=0;return (M=n,e)|0}f=g-1|0;if(f&g|0){h=(ca(g|0)|0)+33-(ca(j|0)|0)|0;p=64-h|0;m=32-h|0;i=m>>31;o=h-32|0;b=o>>31;g=h;a=m-1>>31&j>>>(o>>>0)|(j<<m|l>>>(h>>>0))&b;b=b&j>>>(h>>>0);f=l<<p&i;h=(j<<p|l>>>(o>>>0))&i|l<<m&h-33>>31;break}if(e|0){k[e>>2]=f&l;k[e+4>>2]=0}if((g|0)==1){o=i|b&0;p=a|0|0;return (M=o,p)|0}else{p=uQ(g|0)|0;o=j>>>(p>>>0)|0;p=j<<32-p|l>>>(p>>>0)|0;return (M=o,p)|0}}else{if(f){if(e|0){k[e>>2]=(j>>>0)%(g>>>0);k[e+4>>2]=0}o=0;p=(j>>>0)/(g>>>0)>>>0;return (M=o,p)|0}if(!l){if(e|0){k[e>>2]=0;k[e+4>>2]=(j>>>0)%(h>>>0)}o=0;p=(j>>>0)/(h>>>0)>>>0;return (M=o,p)|0}f=h-1|0;if(!(f&h)){if(e|0){k[e>>2]=a|0;k[e+4>>2]=f&j|b&0}o=0;p=j>>>((uQ(h|0)|0)>>>0);return (M=o,p)|0}f=(ca(h|0)|0)-(ca(j|0)|0)|0;if(f>>>0<=30){b=f+1|0;h=31-f|0;g=b;a=j<<h|l>>>(b>>>0);b=j>>>(b>>>0);f=0;h=l<<h;break}if(!e){o=0;p=0;return (M=o,p)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;o=0;p=0;return (M=o,p)|0}while(0);if(!g){j=h;i=0;h=0}else{m=c|0|0;l=n|d&0;j=y0(m|0,l|0,-1,-1)|0;c=M;i=h;h=0;do{d=i;i=f>>>31|i<<1;f=h|f<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;n_(j|0,c|0,d|0,n|0)|0;p=M;o=p>>31|((p|0)<0?-1:0)<<1;h=o&1;a=n_(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=M;g=g-1|0}while((g|0)!=0);j=i;i=0}g=0;if(e|0){k[e>>2]=a;k[e+4>>2]=b}o=(f|0)>>>31|(j|g)<<1|(g<<1|f>>>31)&0|i;p=(f<<1|0>>>31)&-2|h;return (M=o,p)|0}function Re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+496|0;h=j+480|0;f=j+324|0;e=j+156|0;g=j+312|0;d=j;do if((X9(k[c>>2]|0)|0)==200){e=cW(56)|0;oJ(e);KJ(h,k[c>>2]|0);b=a+112|0;d=k[b>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=0;if(WJ(a+120|0,h,e)|0)fc[k[(k[a>>2]|0)+20>>2]&255](a,e,h);else{if((k[2783]|0)<5){Qd(f,51839,79,4,0,0,0);d=Tn(f,52073,28)|0;c=i[h+11>>0]|0;g=c<<24>>24<0;Tn(d,g?k[h>>2]|0:h,g?k[h+4>>2]|0:c&255)|0;hi(f)}JE(e);zba(e);Tv(a)}dZ(a+64|0,115628)|0;p1(h)}else{if((X9(k[c>>2]|0)|0)==302){b=a+112|0;d=k[b>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=0;b=a+64|0;MM(b,nb(k[c>>2]|0)|0)|0;if((k[2783]|0)<3){Qd(e,51839,88,2,0,0,0);g=Tn(e,52102,25)|0;h=i[b+11>>0]|0;c=h<<24>>24<0;Tn(g,c?k[b>>2]|0:b,c?k[a+68>>2]|0:h&255)|0;hi(e)}Oi(a);break}iI(h,b+56|0);e=X9(k[c>>2]|0)|0;KJ(g,k[c>>2]|0);if((k[2783]|0)<5){Qd(d,51839,95,4,0,0,0);f=Tn(d,52128,37)|0;Mn(f,X9(k[c>>2]|0)|0)|0;hi(d)}Tv(a);b=a+112|0;d=k[b>>2]|0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=0;dZ(a+64|0,115628)|0;b=k[a+48>>2]|0;if(b|0)jc[k[(k[b>>2]|0)+8>>2]&63](b,h,e,g);p1(g);p1(h)}while(0);r=j;return}function Se(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=a+68|0;d=k[g>>2]|0;f=a+64|0;e=k[f>>2]|0;c=d;a:do if((d|0)!=(e|0))while(1){switch(i[d>>0]|0){case 10:case 13:case 9:case 32:break;default:break a}d=d+1|0;k[g>>2]=d;c=d;if((d|0)==(e|0))break a}while(0);k[b+4>>2]=c;c=k[g>>2]|0;if((c|0)==(k[f>>2]|0))c=0;else{k[g>>2]=c+1;c=i[c>>0]|0}b:do switch(c<<24>>24|0){case 123:{k[b>>2]=1;break}case 125:{k[b>>2]=2;break}case 91:{k[b>>2]=3;break}case 93:{k[b>>2]=4;break}case 34:{k[b>>2]=5;c=k[g>>2]|0;e=k[f>>2]|0;if((c|0)==(e|0)){c=b;h=37}else{d=c;while(1){c=d+1|0;k[g>>2]=c;switch(i[d>>0]|0){case 34:break b;case 92:{if((c|0)==(e|0)){c=b;h=37;break b}c=d+2|0;k[g>>2]=c;break}default:{}}if((c|0)==(e|0)){c=b;h=37;break b}else d=c}}break}case 47:{k[b>>2]=12;if(!(oj(a)|0)){c=b;h=37}break}case 45:case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{k[b>>2]=6;c=k[g>>2]|0;e=k[f>>2]|0;if((c|0)!=(e|0))do{d=i[c>>0]|0;if((d+-48&255)>=10)switch(d<<24>>24){case 45:case 43:case 69:case 101:case 46:break;default:break b}c=c+1|0;k[g>>2]=c}while((c|0)!=(e|0));break}case 116:{k[b>>2]=7;a=k[g>>2]|0;d=a;if(((k[f>>2]|0)-a|0)<3){c=b;h=37}else{c=3;while(1){if(!c)break;c=c+-1|0;if((i[d+c>>0]|0)!=(i[102095+c>>0]|0)){c=b;h=37;break b}}k[g>>2]=d+3}break}case 102:{k[b>>2]=8;a=k[g>>2]|0;d=a;if(((k[f>>2]|0)-a|0)<4){c=b;h=37}else{c=4;while(1){if(!c)break;c=c+-1|0;if((i[d+c>>0]|0)!=(i[102099+c>>0]|0)){c=b;h=37;break b}}k[g>>2]=d+4}break}case 110:{k[b>>2]=9;a=k[g>>2]|0;d=a;if(((k[f>>2]|0)-a|0)<3){c=b;h=37}else{c=3;while(1){if(!c)break;c=c+-1|0;if((i[d+c>>0]|0)!=(i[102104+c>>0]|0)){c=b;h=37;break b}}k[g>>2]=d+3}break}case 44:{k[b>>2]=10;break}case 58:{k[b>>2]=11;break}case 0:{k[b>>2]=0;break}default:{c=b;h=37}}while(0);if((h|0)==37)k[c>>2]=13;k[b+8>>2]=k[g>>2];return 1}function Te(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+32|0;g=h+12|0;e=h;c=a+224|0;if(i[b+5>>0]|0){f=i[c+11>>0]|0;if(((f<<24>>24<0?k[a+228>>2]|0:f&255)|0)==7?(cA(c,0,-1,75658,7)|0)==0:0){dZ(c,75666)|0;dZ(a+236|0,75678)|0}}else MM(c,dZ(a+236|0,115628)|0)|0;c=k[b+4>>2]|0;if((c&255)<<24>>24){d=a+260|0;if(!(c&16711680))dZ(d,75688)|0;else{k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,75447,10);f=(Ta(109,((i[g+11>>0]|0)<0?k[g>>2]|0:g)|0)|0)!=0;dZ(d,f?75447:75688)|0;p1(g)}f=a+248|0;if(!(i[b+6>>0]|0)){c=f+11|0;e=i[c>>0]|0;d=a+252|0;if(((e<<24>>24<0?k[d>>2]|0:e&255)|0)==7?(cA(f,0,-1,75658,7)|0)==0:0){k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,75702,9)}else iI(g,f);if((i[c>>0]|0)<0){i[k[f>>2]>>0]=0;k[d>>2]=0;c=f}else{i[f>>0]=0;i[c>>0]=0;c=f}Qm(f,0);k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];k[c+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g)}else{k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,75447,10);c=(Ta(109,((i[e+11>>0]|0)<0?k[e>>2]|0:e)|0)|0)!=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,c?115628:75698,c?0:3);c=f+11|0;if((i[c>>0]|0)<0){i[k[f>>2]>>0]=0;k[a+252>>2]=0;c=f}else{i[f>>0]=0;i[c>>0]=0;c=f}Qm(f,0);k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];k[c+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);p1(e)}}else MM(a+248|0,dZ(a+260|0,115628)|0)|0;Sb[k[(k[a>>2]|0)+180>>2]&511](a,(i[b+7>>0]|0)!=0);r=h;return}function Ue(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0.0,o=0,p=0,q=0,s=0;m=r;r=r+320|0;f=m+308|0;g=m+16|0;h=m+152|0;j=m;c=a+936|0;l=X9(k[c>>2]|0)|0;d=(l|0)==200;if(!(d?(KJ(f,k[c>>2]|0),e=Zc(a,f)|0,p1(f),!e):0)){b=k[c>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);k[c>>2]=0;if(!d){b=a+916|0;n=+(k[(k[b>>2]|0)+444>>2]|0)/1.0e3;c=g+4|0;k[g>>2]=4176;d=g+56|0;k[d>>2]=4196;GK(g+56|0,c);k[g+128>>2]=0;k[g+132>>2]=-1;k[g>>2]=4216;k[g+56>>2]=4236;sT(c);k[c>>2]=1740;e=g+36|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[g+52>>2]=16;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;cn(c,f);p1(f);s=Tn(g,27762,40)|0;q=a+924|0;o=i[q+11>>0]|0;p=o<<24>>24<0;Tn(Tn(Qn(Tn(Mn(Tn(Tn(s,p?k[q>>2]|0:q,p?k[a+928>>2]|0:o&255)|0,27803,36)|0,l)|0,27840,13)|0,n)|0,27854,8)|0,27863,57)|0;if((k[2783]|0)<5){Qd(h,27921,539,4,0,0,0);p=Tn(h,27948,6)|0;Yr(f,c);s=i[f+11>>0]|0;q=s<<24>>24<0;Tn(p,q?k[f>>2]|0:f,q?k[f+4>>2]|0:s&255)|0;p1(f);hi(h)}tB(a+944|0,k[(k[b>>2]|0)+444>>2]|0)|0;Yr(j,c);pu(a+276|0,j);p1(j);k[g>>2]=4216;k[d>>2]=4236;k[c>>2]=1740;p1(e);I3(c);Qaa(g,4248);N8(d)}}r=m;return}function Ve(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+1008|0;u=F+8|0;a=F;h=F+896|0;l=F+888|0;g=F+488|0;E=F+480|0;v=F+892|0;w=F+476|0;x=F+472|0;B=F+460|0;C=F+448|0;D=F+436|0;t=F+432|0;s=F+32|0;y=F+24|0;z=F+16|0;A=F+20|0;k[l>>2]=h;p[u>>3]=f;h=oX(h,100,108177,u)|0;if(h>>>0>99){h=J_()|0;p[a>>3]=f;h=ZP(l,h,108177,a)|0;a=k[l>>2]|0;if(!a)a=k[l>>2]|0;g=lc(h<<2)|0;j=g;if(!g){g=0;q=j;o=a}else{q=j;o=a}}else{q=0;o=0}n=LZ(d)|0;k[E>>2]=n;n=k_(E,111636)|0;m=k[l>>2]|0;ec[k[(k[n>>2]|0)+48>>2]&15](n,m,m+h|0,g)|0;if(!h)m=0;else m=(i[k[l>>2]>>0]|0)==45;k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[B+(a<<2)>>2]=0;a=a+1|0}k[C>>2]=0;k[C+4>>2]=0;k[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[C+(a<<2)>>2]=0;a=a+1|0}k[D>>2]=0;k[D+4>>2]=0;k[D+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[D+(a<<2)>>2]=0;a=a+1|0}Hc(c,m,E,v,w,x,B,C,D,t);a=k[t>>2]|0;if((h|0)>(a|0)){c=i[D+8+3>>0]|0;j=i[C+8+3>>0]|0;j=(c<<24>>24<0?k[D+4>>2]|0:c&255)+(h-a<<1|1)+(j<<24>>24<0?k[C+4>>2]|0:j&255)|0}else{c=i[D+8+3>>0]|0;j=i[C+8+3>>0]|0;j=(c<<24>>24<0?k[D+4>>2]|0:c&255)+2+(j<<24>>24<0?k[C+4>>2]|0:j&255)|0}j=j+a|0;if(j>>>0>100){j=lc(j<<2)|0;l=j;if(!j){j=0;a=k[t>>2]|0}}else{j=s;l=0}od(j,y,z,k[d+4>>2]|0,g,g+(h<<2)|0,n,m,v,k[w>>2]|0,k[x>>2]|0,B,C,D,a);k[A>>2]=k[b>>2];b=k[y>>2]|0;a=k[z>>2]|0;k[u>>2]=k[A>>2];a=zl(u,j,b,a,d,e)|0;if(l|0)wc(l);_0(D);_0(C);p1(B);oU(k[E>>2]|0)|0;if(q|0)wc(q);if(o|0)wc(o);r=F;return a|0}function We(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;o=r;r=r+352|0;h=o+328|0;j=o+324|0;d=o+312|0;e=o+156|0;f=o;l=b+104|0;m=k[l>>2]|0;if((X9(k[c>>2]|0)|0)==200){k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,51176,14);if(BF(k[c>>2]|0,d,h)|0){g=oK(h,j)|0;p1(d);if(g){g=a+4|0;d=k[(k[g>>2]|0)+1576>>2]|0;e=(m|0)/(d|0)|0;c=k[j>>2]|0;f=k[a+240>>2]|0;if(e>>>0>=f>>>0?((k[a+244>>2]|0)+f|0)>>>0>e>>>0:0){k[(k[a+248>>2]|0)+(e-f<<2)>>2]=c;d=k[(k[g>>2]|0)+1576>>2]|0;c=k[j>>2]|0}p=k[l>>2]|0;q=k[b+108>>2]|0;e=(q|0)%(d|0)|0;l=(c|0)/(d|0)|0;f=$(e+1|0,l)|0;qs(a,m,m,Rc(a,p,q,$(l,(p|0)%(d|0)|0)|0,((e|0)==(d+-1|0)?c:f)+-1|0,l)|0);l=k[g>>2]|0;el(l,a,(m|0)/(k[l+1576>>2]|0)|0,k[j>>2]|0)}else n=9}else{p1(d);n=9}if((n|0)==9){if((k[2783]|0)<5){Qd(e,50909,307,4,0,0,0);m=Tn(e,51191,37)|0;q=i[h+11>>0]|0;p=q<<24>>24<0;Tn(m,p?k[h>>2]|0:h,p?k[h+4>>2]|0:q&255)|0;hi(e)}ug(a,b,c)}p1(h);if(b|0)n=16}else{if((k[2783]|0)<5){Qd(f,50909,311,4,0,0,0);m=Tn(f,51229,33)|0;n=b+56|0;q=i[n+11>>0]|0;p=q<<24>>24<0;q=Tn(Tn(m,p?k[n>>2]|0:n,p?k[b+60>>2]|0:q&255)|0,51263,7)|0;Mn(q,X9(k[c>>2]|0)|0)|0;hi(f)}ug(a,b,c);n=16}if((n|0)==16)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);r=o;return}function Xe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+16|0;l=o;m=a+16|0;d=k[m>>2]|0;a:while(1){switch(i[d>>0]|0){case 0:{d=0;break a}case 61:{e=3;break a}default:{}}n=d+1|0;k[m>>2]=n;d=n}do if((e|0)==3){n=a+20|0;j=k[n>>2]|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,j,d-j|0);j=b+11|0;if((i[j>>0]|0)<0){i[k[b>>2]>>0]=0;k[b+4>>2]=0;d=b}else{i[b>>0]=0;i[j>>0]=0;d=b}Qm(b,0);k[d>>2]=k[l>>2];k[d+4>>2]=k[l+4>>2];k[d+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;p1(l);d=k[m>>2]|0;g=d+1|0;k[m>>2]=g;k[a+24>>2]=g;h=(i[g>>0]|0)==34;f=g;if(h){a=d+2|0;do{k[m>>2]=a;e=i[a>>0]|0;d=e<<24>>24==0;a=a+1|0}while(e<<24>>24!=34&(d^1));if(d){d=0;break}k[m>>2]=a;e=a;d=a}else{e=g;d=f}b:while(1){switch(i[e>>0]|0){case 44:case 0:break b;default:{}}d=e+1|0;k[m>>2]=d;e=d}k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,g,d-f|0);e=c+11|0;if((i[e>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;d=c}else{i[c>>0]=0;i[e>>0]=0;d=c}Qm(c,0);k[d>>2]=k[l>>2];k[d+4>>2]=k[l+4>>2];k[d+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;p1(l);if(h){cm(l,c,44996,2);if((i[e>>0]|0)<0){i[k[c>>2]>>0]=0;k[c+4>>2]=0;d=c}else{i[c>>0]=0;i[e>>0]=0;d=c}Qm(c,0);k[d>>2]=k[l>>2];k[d+4>>2]=k[l+4>>2];k[d+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;p1(l)}d=k[m>>2]|0;if((i[d>>0]|0)==44){d=d+1|0;k[m>>2]=d}k[n>>2]=d;d=i[j>>0]|0;if(d<<24>>24<0)d=k[b+4>>2]|0;else d=d&255;if(!d)d=0;else{d=i[e>>0]|0;if(d<<24>>24<0)d=k[c+4>>2]|0;else d=d&255;d=(d|0)!=0}}while(0);r=o;return d|0}function Ye(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0;n=r;r=r+16|0;m=n;ar(a,b);e=1;c=a+4|0;while(1){c=k[c>>2]|0;d=e+1|0;if(!c)break;else{e=d;c=c+4|0}}j=r;r=r+((1*d|0)+15&-16)|0;XG(j|0,32,e|0)|0;i[j+e>>0]=0;Tn(b,69229,9)|0;c=a+52|0;f=k[c>>2]|0;d=a+56|0;e=k[d>>2]|0;if((f|0)==(e|0)){g=c;h=d;c=f;d=f}else{f=LZ(b+(k[(k[b>>2]|0)+-12>>2]|0)|0)|0;k[m>>2]=f;f=k_(m,111604)|0;f=cc[k[(k[f>>2]|0)+28>>2]&127](f,10)|0;t6(m);Ss(b,f)|0;UA(b)|0;f=k[c>>2]|0;g=c;h=d;e=k[d>>2]|0;c=f;d=f}if((e|0)!=(c|0)){a=0;do{c=Tn(Tn(Mn(Tn(b,j,iC(j)|0)|0,a)|0,68001,2)|0,68654,9)|0;c=Tn(Ln(c,k[d+(a*20|0)>>2]|0)|0,69239,9)|0;c=Tn(Nn(c,(i[d+(a*20|0)+4>>0]|0)!=0)|0,69249,16)|0;e=d+(a*20|0)+5|0;Ln(c,l[e>>0]|0)|0;c=i[e>>0]|0;if((c&255)<2){c=Tn(b,69266,14)|0;Ln(c,k[d+(a*20|0)+8>>2]|0)|0;c=i[e>>0]|0;if(c<<24>>24==1){c=Tn(b,69281,19)|0;Ln(c,k[d+(a*20|0)+12>>2]|0)|0;c=i[e>>0]|0}}if(c<<24>>24==4){f=Tn(b,69301,12)|0;Ln(f,k[d+(a*20|0)+16>>2]|0)|0}d=LZ(b+(k[(k[b>>2]|0)+-12>>2]|0)|0)|0;k[m>>2]=d;d=k_(m,111604)|0;d=cc[k[(k[d>>2]|0)+28>>2]&127](d,10)|0;t6(m);Ss(b,d)|0;UA(b)|0;a=a+1|0;d=k[g>>2]|0}while(a>>>0<(((k[h>>2]|0)-d|0)/20|0)>>>0)}i[m>>0]=93;Tn(b,m,1)|0;r=n;return}function Ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0;n=r;r=r+32|0;h=n+16|0;l=n;m=n+8|0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;k[a>>2]=5332;k[a+4>>2]=5360;k[a+20>>2]=b;e=a+24|0;k[e>>2]=e;k[a+28>>2]=e;k[a+32>>2]=0;kt(a+36|0,c);fE(a+112|0,c|0,221)|0;iI(a+336|0,c+224|0);e=a+348|0;f=c+236|0;g=e+52|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));iI(a+400|0,c+288|0);b=a+412|0;d=c+300|0;e=b;f=d;g=e+84|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));j[b+84>>1]=j[d+84>>1]|0;iI(a+500|0,c+388|0);e=a+512|0;f=c+400|0;k[e>>2]=k[f>>2];i[e+4>>0]=i[f+4>>0]|0;iI(a+520|0,c+408|0);i[a+532>>0]=i[c+420>>0]|0;iI(a+536|0,c+424|0);iI(a+548|0,c+436|0);e=a+560|0;f=c+448|0;g=e+92|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));iI(a+652|0,c+540|0);g=a+664|0;f=c+552|0;k[g>>2]=k[f>>2];i[g+4>>0]=i[f+4>>0]|0;iI(a+672|0,c+560|0);g=a+684|0;f=c+572|0;k[g>>2]=k[f>>2];k[g+4>>2]=k[f+4>>2];k[g+8>>2]=k[f+8>>2];k[g+12>>2]=k[f+12>>2];k[g+16>>2]=k[f+16>>2];iI(a+704|0,c+592|0);g=a+716|0;f=c+604|0;k[g>>2]=k[f>>2];i[g+4>>0]=i[f+4>>0]|0;iI(a+724|0,c+612|0);k[a+736>>2]=k[c+624>>2];k[a+744>>2]=0;k[a+748>>2]=0;c=a+752|0;k[c>>2]=1520;g=a+756|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;g=a+780|0;i[a+788>>0]=0;k[a+784>>2]=-1;k[g>>2]=1500;k[a+792>>2]=0;k[l>>2]=1235;k[l+4>>2]=0;k[h>>2]=k[l>>2];k[h+4>>2]=k[l+4>>2];Ww(g,c,h)|0;k[c>>2]=5384;l=a+804|0;k[l>>2]=l;k[a+808>>2]=l;k[a+812>>2]=0;k[a+796>>2]=3432;k[a+800>>2]=3456;l=a+816|0;k[l>>2]=l;k[a+820>>2]=l;k[a+824>>2]=0;k[m>>2]=329;k[m+4>>2]=0;k[h>>2]=k[m>>2];k[h+4>>2]=k[m+4>>2];dx(a+796|0,a,h);r=n;return}function _e(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+384|0;u=F+8|0;a=F;h=F+284|0;l=F+72|0;g=F+184|0;E=F+68|0;v=F+180|0;w=F+177|0;x=F+176|0;B=F+56|0;C=F+44|0;D=F+32|0;t=F+28|0;s=F+76|0;y=F+24|0;z=F+16|0;A=F+20|0;k[l>>2]=h;p[u>>3]=f;h=oX(h,100,108177,u)|0;if(h>>>0>99){h=J_()|0;p[a>>3]=f;h=ZP(l,h,108177,a)|0;a=k[l>>2]|0;if(!a)a=k[l>>2]|0;g=lc(h)|0;j=g;if(!g){g=0;q=j;o=a}else{q=j;o=a}}else{q=0;o=0}n=LZ(d)|0;k[E>>2]=n;n=k_(E,111604)|0;m=k[l>>2]|0;ec[k[(k[n>>2]|0)+32>>2]&15](n,m,m+h|0,g)|0;if(!h)m=0;else m=(i[k[l>>2]>>0]|0)==45;k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[B+(a<<2)>>2]=0;a=a+1|0}k[C>>2]=0;k[C+4>>2]=0;k[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[C+(a<<2)>>2]=0;a=a+1|0}k[D>>2]=0;k[D+4>>2]=0;k[D+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[D+(a<<2)>>2]=0;a=a+1|0}Gc(c,m,E,v,w,x,B,C,D,t);a=k[t>>2]|0;if((h|0)>(a|0)){c=i[D+11>>0]|0;j=i[C+11>>0]|0;j=(c<<24>>24<0?k[D+4>>2]|0:c&255)+(h-a<<1|1)+(j<<24>>24<0?k[C+4>>2]|0:j&255)|0}else{c=i[D+11>>0]|0;j=i[C+11>>0]|0;j=(c<<24>>24<0?k[D+4>>2]|0:c&255)+2+(j<<24>>24<0?k[C+4>>2]|0:j&255)|0}j=j+a|0;if(j>>>0>100){j=lc(j)|0;l=j;if(!j){j=0;a=k[t>>2]|0}}else{j=s;l=0}jd(j,y,z,k[d+4>>2]|0,g,g+h|0,n,m,v,i[w>>0]|0,i[x>>0]|0,B,C,D,a);k[A>>2]=k[b>>2];b=k[y>>2]|0;a=k[z>>2]|0;k[u>>2]=k[A>>2];a=Rl(u,j,b,a,d,e)|0;if(l|0)wc(l);p1(D);p1(C);p1(B);oU(k[E>>2]|0)|0;if(q|0)wc(q);if(o|0)wc(o);r=F;return a|0}function $e(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0;m=r;r=r+400|0;g=m+376|0;f=m+364|0;h=m+352|0;c=m+348|0;d=m+8|0;e=m+192|0;l=m;sy(a,b);n=a+448|0;hJ(d,k[b>>2]|0);fE(n|0,d|0,131)|0;if((n|0)!=(d|0)){k[h>>2]=k[d+132>>2];k[c>>2]=d+136;k[f>>2]=k[h>>2];k[g>>2]=k[c>>2];Uf(a+580|0,f,g);pi(a+592|0,k[d+144>>2]|0,k[d+148>>2]|0);pi(a+604|0,k[d+156>>2]|0,k[d+160>>2]|0);pi(a+616|0,k[d+168>>2]|0,k[d+172>>2]|0)}j[a+628>>1]=j[d+180>>1]|0;VD(d);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,83514,7);k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,115628,0);dJ(b,g,f,h)|0;p1(h);p1(g);k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;d=wb(85,h|0,0,a|0,131,k[b>>2]|0,5,1294,1295,1296,366,132,11,53)|0;if((d|0)<0){if((k[2783]|0)<5){Qd(e,75946,327,4,0,0,0);Tn(Tn(e,75982,6)|0,90366,33)|0;hi(e)}}else{b=a+440|0;c=k[b>>2]|0;if((c|0)!=-1){Ta(2,c|0)|0;k[b>>2]=-1}k[b>>2]=d;c=a+52|0;b=k[(k[c>>2]|0)+916>>2]|0;if(i[b+112>>0]|0){Ta(86,d|0)|0;b=k[(k[c>>2]|0)+916>>2]|0}k[l>>2]=1297;k[l+4>>2]=0;k[g>>2]=k[l>>2];k[g+4>>2]=k[l+4>>2];xw(b+128|0,a,g)}p1(h);p1(f);r=m;return}function af(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;m=r;r=r+240|0;d=m+216|0;e=m+204|0;f=m+192|0;b=m+36|0;h=m+16|0;j=m+24|0;l=m;if(!(i[(k[(k[a+36>>2]|0)+72+(k[a+268>>2]<<2)>>2]|0)+20>>0]|0)){g=a+244|0;if(!(k[g>>2]|0)){k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;if(Zh(a+208|0,e,f)|0){b=cW(104)|0;c=a+32|0;n=k[c>>2]|0;er(b,(k[n+916>>2]|0)+992|0,k[n+896>>2]|0);k[h>>2]=124;k[h+4>>2]=0;k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];Tq(b+16|0,a,d)|0;h=i[f+11>>0]|0;if((h<<24>>24<0?k[f+4>>2]|0:h&255)|0){k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;wE(d,51477,iC(51477)|0);PW(j,f);Wv(b,d,j);p1(j);p1(d)}if(!(i[(k[(k[c>>2]|0)+916>>2]|0)+648>>0]|0))HT(b,0,e);else{iI(l,e);mg(d,l);HT(b,0,d);p1(d);p1(l)}o7(b,1e4);Ot(b);k[g>>2]=b}else{if((k[2783]|0)<4){Qd(b,47907,213,3,0,0,0);n=Tn(b,47926,13)|0;Tn(Tn(Tn(n,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48008,67)|0;hi(b)}iH(a,0,0)}p1(f);p1(e)}}else if(i[a+236>>0]|0)nL(a+64|0,0);r=m;return}function bf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+208|0;d=l+192|0;e=l+180|0;f=l+168|0;g=l;h=l+12|0;j=a+208|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,31522,3);k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,31526,37);c=dJ(j,e,d,f)|0;p1(f);p1(e);if(c)tL(dE((i[d+11>>0]|0)<0?k[d>>2]|0:d)|0);if(!(mK(j,0,b)|0)?(k[e>>2]=0,k[e+4>>2]=0,k[e+8>>2]=0,wE(e,83514,7),k[f>>2]=0,k[f+4>>2]=0,k[f+8>>2]=0,wE(f,31564,27),c=dJ(j,e,b,f)|0,p1(f),p1(e),!c):0){k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,31592,15);b=a+356|0;c=k[b>>2]|0;if(c>>>0<(k[a+360>>2]|0)>>>0){k[c>>2]=k[e>>2];k[c+4>>2]=k[e+4>>2];k[c+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[b>>2]=(k[b>>2]|0)+12}else sj(a+352|0,e);p1(e)}k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,31608,20);k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,115628,0);e=kg(j,f,e,1,9999999,g)|0;p1(g);p1(f);if(e&(k[2783]|0)<4){Qd(h,30665,158,3,0,0,0);Tn(h,31629,82)|0;hi(h)}k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;wE(f,31712,79);j=Ih(j,f)|0;p1(f);p1(d);r=l;return j|0}function cf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+640|0;o=q+632|0;c=q+476|0;d=q+320|0;e=q+164|0;g=q+8|0;p=q;f=a+640|0;do if((k[a+648>>2]|0)!=(k[a+652>>2]|0)){if((k[2783]|0)<3){Qd(c,27921,365,2,0,0,0);Mn(Tn(c,28787,32)|0,b)|0;hi(c)}if(i[a+1189>>0]|0){if((k[2783]|0)<4){Qd(d,27921,368,3,0,0,0);Tn(d,28820,71)|0;hi(d)}fe(a,b,0);break}if(!($G(f,b)|0)){if((k[2783]|0)>=5)break;Qd(e,27921,373,4,0,0,0);Mn(Tn(Tn(e,27948,6)|0,28501,40)|0,b)|0;hi(e);break}m=k[(k[a+916>>2]|0)+204>>2]|0;n=(m|0)!=0;if(n?!(Ub[k[(k[m>>2]|0)+72>>2]&511](m)|0):0){if((k[2783]|0)<4){Qd(g,27921,379,3,0,0,0);Tn(g,28892,63)|0;hi(g)}fe(a,b,0);break}c=k[a+908>>2]|0;f=a+904|0;d=c;if((d|0)!=(f|0)){g=a+1040|0;h=a+1044|0;j=a+1036|0;l=a+992|0;do{c=c+8|0;pt(k[c>>2]|0);e=k[g>>2]|0;if((e|0)==(k[h>>2]|0))zp(j,c);else{k[e>>2]=k[c>>2];k[g>>2]=(k[g>>2]|0)+4}nL(l,0);c=k[d+4>>2]|0;d=c}while((d|0)!=(f|0))}k[a+1184>>2]=b;if(n?Ub[k[(k[m>>2]|0)+80>>2]&511](m)|0:0){gr(Ub[k[(k[m>>2]|0)+80>>2]&511](m)|0,a);b=Ub[k[(k[m>>2]|0)+80>>2]&511](m)|0;k[p>>2]=1240;k[p+4>>2]=0;k[o>>2]=k[p>>2];k[o+4>>2]=k[p+4>>2];Bx(b,a,o);Rb[k[(k[m>>2]|0)+84>>2]&2047](m);break}Wk(a)}while(0);r=q;return}function df(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0;s=r;r=r+320|0;g=s+156|0;n=s;o=c+120|0;q=k[o>>2]|0;do if(!((q|0)>0&(q|0)==(e|0))){q=a+4|0;m=c+104|0;c=DT((k[q>>2]|0)+2060|0,k[m>>2]|0)|0;f=k[q>>2]|0;if(!c){c=f+2024|0;if((k[2783]|0)>=4)break;Qd(g,47640,312,3,0,0,0);o=Tn(g,47656,10)|0;o=Tn(Tn(Mn(o,k[(k[q>>2]|0)+2088>>2]|0)|0,68429,2)|0,47842,41)|0;o=Tn(Ln(o,k[c>>2]|0)|0,51129,1)|0;q=k[c>>2]|0;q=Tn(Ln(o,(x9(c)|0)+-1+q|0)|0,47884,6)|0;Mn(q,k[m>>2]|0)|0;hi(g);break}l=h_(f,e)|0;k[c+20>>2]=e;nR(c,l);c=k[o>>2]|0;a:do if((c|0)<(d|0)){j=(d|0)==(e|0);l=a+368|0;while(1){f=k[m>>2]|0;if(!(DT((k[q>>2]|0)+2060|0,f)|0))do{if((k[2783]|0)<4){Qd(n,47640,331,3,0,0,0);Tn(n,51665,40)|0;hi(n)}f=k[m>>2]|0}while(!(DT((k[q>>2]|0)+2060|0,f)|0));g=k[(k[q>>2]|0)+1380>>2]|0;h=e-c|0;t=(g+c|0)<(e|0)?g:h;i=(t+c|0)<=(d|0);h=i?t:h;if(!(i|j))break a;i=h+c|0;if((i|0)==(e|0)){pz(l,m)|0;g=k[(k[q>>2]|0)+1380>>2]|0}t=cW(24)|0;zX(t,b+c|0,h);oe(k[q>>2]|0,a,t,f,(c|0)/(g|0)|0);if((i|0)<(d|0))c=i;else{c=i;break}}}while(0);k[o>>2]=c;if((d|0)==(e|0)){t=a+384|0;p[t>>3]=+(e|0)+ +p[t>>3];AI(k[q>>2]|0,e)}}while(0);r=s;return}function ef(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if((a|0)==(k[b+8>>2]|0)){if((k[b+4>>2]|0)==(c|0)?(f=b+28|0,(k[f>>2]|0)!=1):0)k[f>>2]=d}else{if((a|0)!=(k[b>>2]|0)){q=k[a+12>>2]|0;h=a+16+(q<<3)|0;OI(a+16|0,b,c,d,e);f=a+24|0;if((q|0)<=1)break;a=k[a+8>>2]|0;if((a&2|0)==0?(j=b+36|0,(k[j>>2]|0)!=1):0){if(!(a&1)){a=b+54|0;while(1){if(i[a>>0]|0)break a;if((k[j>>2]|0)==1)break a;OI(f,b,c,d,e);f=f+8|0;if(f>>>0>=h>>>0)break a}}a=b+24|0;g=b+54|0;while(1){if(i[g>>0]|0)break a;if((k[j>>2]|0)==1?(k[a>>2]|0)==1:0)break a;OI(f,b,c,d,e);f=f+8|0;if(f>>>0>=h>>>0)break a}}a=b+54|0;while(1){if(i[a>>0]|0)break a;OI(f,b,c,d,e);f=f+8|0;if(f>>>0>=h>>>0)break a}}if((k[b+16>>2]|0)!=(c|0)?(q=b+20|0,(k[q>>2]|0)!=(c|0)):0){k[b+32>>2]=d;p=b+44|0;if((k[p>>2]|0)==4)break;j=a+16+(k[a+12>>2]<<3)|0;d=b+52|0;l=b+53|0;n=b+54|0;m=a+8|0;o=b+24|0;f=0;g=a+16|0;h=0;b:while(1){if(g>>>0>=j>>>0){a=20;break}i[d>>0]=0;i[l>>0]=0;RH(g,b,c,c,1,e);if(i[n>>0]|0){a=20;break}do if(i[l>>0]|0){if(!(i[d>>0]|0))if(!(k[m>>2]&1)){f=1;a=20;break b}else{f=1;a=h;break}if((k[o>>2]|0)==1){a=25;break b}if(!(k[m>>2]&2)){a=25;break b}else{f=1;a=1}}else a=h;while(0);g=g+8|0;h=a}do if((a|0)==20){if((!h?(k[q>>2]=c,c=b+40|0,k[c>>2]=(k[c>>2]|0)+1,(k[b+36>>2]|0)==1):0)?(k[o>>2]|0)==2:0){i[n>>0]=1;if(f){a=25;break}else{f=4;break}}if(f)a=25;else f=4}while(0);if((a|0)==25)f=3;k[p>>2]=f;break}if((d|0)==1)k[b+32>>2]=1}while(0);return}function ff(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+80|0;h=l;ar(a,b);j=a+48|0;c=k[j>>2]|0;if(c&1){c=Tn(b,67958,12)|0;Mn(c,k[a+52>>2]|0)|0;c=k[j>>2]|0}if(c&4|0){e=k[a+56>>2]|0;c=h;d=0;do{if((d|0)>0&(d&7|0)==0){i[c>>0]=32;c=c+1|0}i[c>>0]=1<<31-d&e|0?49:48;c=c+1|0;d=d+1|0}while((d|0)!=32);i[c>>0]=0;g=Tn(b,67971,18)|0;Tn(g,h,iC(h)|0)|0}e=1;c=a+4|0;while(1){c=k[c>>2]|0;d=e+1|0;if(!c)break;else{e=d;c=c+4|0}}g=r;r=r+((1*d|0)+15&-16)|0;XG(g|0,32,e|0)|0;i[g+e>>0]=0;Tn(b,67990,10)|0;f=a+60|0;e=a+64|0;if((k[e>>2]|0)!=(k[f>>2]|0)){d=0;do{c=LZ(b+(k[(k[b>>2]|0)+-12>>2]|0)|0)|0;k[h>>2]=c;c=k_(h,111604)|0;c=cc[k[(k[c>>2]|0)+28>>2]&127](c,10)|0;t6(h);Ss(b,c)|0;UA(b)|0;Tn(Mn(Tn(b,g,iC(g)|0)|0,d)|0,68001,2)|0;c=k[j>>2]|0;if(c&256){c=Tn(b,68004,5)|0;Ln(c,k[(k[f>>2]|0)+(d<<4)>>2]|0)|0;c=k[j>>2]|0}if(c&512){c=Tn(b,67767,4)|0;Ln(c,k[(k[f>>2]|0)+(d<<4)+4>>2]|0)|0;c=k[j>>2]|0}if(c&1024){c=Tn(b,67928,7)|0;Ln(c,k[(k[f>>2]|0)+(d<<4)+8>>2]|0)|0;c=k[j>>2]|0}if(c&2048|0){a=Tn(b,68010,23)|0;Mn(a,k[(k[f>>2]|0)+(d<<4)+12>>2]|0)|0}d=d+1|0}while(d>>>0<(k[e>>2]|0)-(k[f>>2]|0)>>4>>>0)}Tn(b,103292,1)|0;r=l;return}function gf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;MM(a,b)|0;c=(a|0)==(b|0);if(!c)Ui(a+12|0,k[b+12>>2]|0,k[b+16>>2]|0);i[a+24>>0]=i[b+24>>0]|0;MM(a+28|0,b+28|0)|0;MM(a+40|0,b+40|0)|0;i[a+52>>0]=i[b+52>>0]|0;f=a+56|0;e=b+56|0;k[f>>2]=k[e>>2];k[f+4>>2]=k[e+4>>2];i[f+8>>0]=i[e+8>>0]|0;MM(a+68|0,b+68|0)|0;i[a+80>>0]=i[b+80>>0]|0;MM(a+84|0,b+84|0)|0;MM(a+96|0,b+96|0)|0;i[a+108>>0]=i[b+108>>0]|0;f=a+112|0;e=b+112|0;k[f>>2]=k[e>>2];k[f+4>>2]=k[e+4>>2];i[f+8>>0]=i[e+8>>0]|0;MM(a+124|0,b+124|0)|0;i[a+136>>0]=i[b+136>>0]|0;MM(a+140|0,b+140|0)|0;MM(a+152|0,b+152|0)|0;f=b+164|0;e=k[f+4>>2]|0;d=a+164|0;k[d>>2]=k[f>>2];k[d+4>>2]=e;i[a+172>>0]=i[b+172>>0]|0;if(!c)Kg(a+176|0,k[b+176>>2]|0,k[b+180>>2]|0);MM(a+188|0,b+188|0)|0;MM(a+200|0,b+200|0)|0;i[a+212>>0]=i[b+212>>0]|0;d=a+216|0;e=b+216|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];i[d+8>>0]=i[e+8>>0]|0;MM(a+228|0,b+228|0)|0;i[a+240>>0]=i[b+240>>0]|0;MM(a+244|0,b+244|0)|0;MM(a+256|0,b+256|0)|0;d=b+268|0;e=k[d+4>>2]|0;f=a+268|0;k[f>>2]=k[d>>2];k[f+4>>2]=e;i[a+276>>0]=i[b+276>>0]|0;if(!c){Kg(a+280|0,k[b+280>>2]|0,k[b+284>>2]|0);qh(a+292|0,k[b+292>>2]|0,k[b+296>>2]|0)}p[a+304>>3]=+p[b+304>>3];return a|0}function hf(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0.0;m=r;r=r+480|0;c=m+312|0;h=m+156|0;j=m;do if(i[a+1188>>0]|0){if(!(k[a+912>>2]|0)){if((k[2783]|0)>=4)break;Qd(c,27921,1127,3,0,0,0);Tn(c,29130,32)|0;hi(c);break}f=a+664|0;c=Du(f,b)|0;g=a+916|0;d=k[g>>2]|0;c=$(k[d+616>>2]|0,c)|0;l=k[(k[a+904>>2]|0)+8>>2]|0;e=k[l+2148>>2]|0;if((c|0)<(e|0)){c=k[d+204>>2]|0;d=k[(k[c>>2]|0)+52>>2]|0;n=+xY(f,e);Pb[d&15](c,n);c=e}d=k[l+2144>>2]|0;if((c|0)>(d|0)){g=k[(k[g>>2]|0)+204>>2]|0;e=k[(k[g>>2]|0)+52>>2]|0;n=+xY(f,d);Pb[e&15](g,n);f=d}else f=c;if((f|0)<=-1){if((k[2783]|0)<4){Qd(j,27921,1176,3,0,0,0);Qn(Tn(Tn(j,27948,6)|0,29188,20)|0,b)|0;hi(j)}}else{i[a+696>>0]=0;i[a+760>>0]=0;dF(a+516|0);if((k[2783]|0)<3){Qd(h,27921,1154,2,0,0,0);Qn(Tn(Mn(Tn(Tn(h,27948,6)|0,29163,17)|0,f)|0,29181,6)|0,b)|0;hi(h)}c=k[a+1168>>2]|0;if(c|0)k[c+132>>2]=-1;e=a+1172|0;c=k[a+1176>>2]|0;d=c;if((d|0)!=(e|0))do{c=c+8|0;wn(k[c>>2]|0);c=k[c>>2]|0;if(c|0)Rb[k[(k[c>>2]|0)+4>>2]&2047](c);c=k[d+4>>2]|0;d=c}while((d|0)!=(e|0));$H(e);j=l+2164|0;h=k[j>>2]|0;Sb[k[(k[h>>2]|0)+60>>2]&511](h,2147483647);j=k[j>>2]|0;Sb[k[(k[j>>2]|0)+72>>2]&511](j,-1);Mf(l,f,-1,1)}if(!(i[a+857>>0]|0))FA(l)}while(0);r=m;return}function jf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+320|0;f=s+156|0;q=s;g=c+120|0;p=k[g>>2]|0;if((p|0)==(e|0)|((e|0)<1|(p|0)<1)){p=c+116|0;f=k[p>>2]|0;if(!((f|0)>0&(f|0)==(e|0))){o=k[c+104>>2]|0;h=k[c+108>>2]|0;g=k[c+112>>2]|0;if((g|0)==-1)g=(e|0)/(1-o+h|0)|0;if((o|0)<=(h|0)){c=a+4|0;f=o;while(1){l=f-o|0;n=($(l,g)|0)>(e|0);l=e-($(l+-1|0,g)|0)|0;l=n?l:g;n=h_(k[c>>2]|0,l)|0;m=DT((k[c>>2]|0)+2060|0,f)|0;k[m+20>>2]=l;nR(m,n);if((f|0)<(h|0))f=f+1|0;else break}f=k[p>>2]|0}a:do if((f|0)<(d|0)){m=a+4|0;n=(d|0)==(e|0);while(1){c=(f|0)/(g|0)|0;l=c+o|0;if(!(DT((k[m>>2]|0)+2060|0,l)|0))do if((k[2783]|0)<4){Qd(q,50909,507,3,0,0,0);Tn(q,51665,40)|0;hi(q)}while(!(DT((k[m>>2]|0)+2060|0,l)|0));h=k[(k[m>>2]|0)+1380>>2]|0;i=$(c+1|0,g)|0;c=(h+f|0)<(i|0)?h:i-f|0;if((c+f|0)>(d|0)){if(!n)break a;c=e-f|0}j=c+f|0;if((j|0)==(i|0)){xu(a,l);h=k[(k[m>>2]|0)+1380>>2]|0}i=cW(24)|0;zX(i,b+f|0,c);oe(k[m>>2]|0,a,i,l,((f|0)%(g|0)|0|0)/(h|0)|0);if((j|0)<(d|0))f=j;else{f=j;break}}}while(0);k[p>>2]=f;if((d|0)==(e|0)){e=a+112|0;k[e>>2]=(k[e>>2]|0)+g;AI(k[a+4>>2]|0,g)}}}else{if((k[2783]|0)<5){Qd(f,50909,464,4,0,0,0);d=Tn(f,51579,41)|0;Tn(Mn(Tn(Mn(d,k[g>>2]|0)|0,51621,36)|0,e)|0,51658,6)|0;hi(f)}ug(a,c,0)}r=s;return}function kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=r;r=r+160|0;g=h+136|0;d=h;a:do if(jaa(a)|0){to(g,a);a=b+11|0;if((i[a>>0]|0)<0){i[k[b>>2]>>0]=0;k[b+4>>2]=0;a=b}else{i[b>>0]=0;i[a>>0]=0;a=b}Qm(b,0);k[a>>2]=k[g>>2];k[a+4>>2]=k[g+4>>2];k[a+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);a=1}else{e=d+4|0;k[d>>2]=4176;f=d+56|0;k[f>>2]=4196;GK(d+56|0,e);k[d+128>>2]=0;k[d+132>>2]=-1;k[d>>2]=4216;k[d+56>>2]=4236;sT(e);k[e>>2]=1740;c=d+36|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[d+52>>2]=16;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;cn(e,g);p1(g);do if(!(uaa(a)|0)){if(aB(a)|0){Mn(d,Rm(a)|0)|0;break}if(oD(a)|0){Ln(d,Sm(a)|0)|0;break}if(SZ(a)|0){Qn(d,+gA(a))|0;break}else{k[d>>2]=4216;k[f>>2]=4236;k[e>>2]=1740;p1(c);I3(e);Qaa(d,4248);N8(f);a=0;break a}}else{j=d+(k[(k[d>>2]|0)+-12>>2]|0)+4|0;k[j>>2]=k[j>>2]|1;Nn(d,$A(a)|0)|0}while(0);Yr(g,e);a=b+11|0;if((i[a>>0]|0)<0){i[k[b>>2]>>0]=0;k[b+4>>2]=0;a=b}else{i[b>>0]=0;i[a>>0]=0;a=b}Qm(b,0);k[a>>2]=k[g>>2];k[a+4>>2]=k[g+4>>2];k[a+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);k[d>>2]=4216;k[f>>2]=4236;k[e>>2]=1740;p1(c);I3(e);Qaa(d,4248);N8(f);a=1}while(0);r=h;return a|0}function lf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0;n=r;r=r+144|0;m=n;HA(m,b,c,d);o=m+44|0;k[o>>2]=0;g=m+48|0;k[g>>2]=0;k[m>>2]=15252;d=a+4|0;f=k[d>>2]|0;j=a+8|0;e=k[j>>2]|0;c=f+e|0;b=e+4|0;k[j>>2]=b;h=i[c>>0]|0;c=(l[c+2>>0]|0)<<8|(l[c+1>>0]|0)<<16|(l[c+3>>0]|0);k[o>>2]=h&255;k[g>>2]=c;if(h<<24>>24==1){h=Ay(a)|0;b=m+56|0;k[b>>2]=h;k[b+4>>2]=M;b=Ay(a)|0;h=m+64|0;k[h>>2]=b;k[h+4>>2]=M;h=k[j>>2]|0;b=(k[d>>2]|0)+h|0;k[j>>2]=h+4;k[m+72>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);b=Ay(a)|0;h=112;c=M;f=k[d>>2]|0;e=k[j>>2]|0}else{b=f+b|0;c=e+8|0;k[j>>2]=c;h=m+56|0;k[h>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);k[h+4>>2]=0;c=f+c|0;h=e+12|0;k[j>>2]=h;b=m+64|0;k[b>>2]=(l[c+1>>0]|0)<<16|(l[c>>0]|0)<<24|(l[c+2>>0]|0)<<8|(l[c+3>>0]|0);k[b+4>>2]=0;h=f+h|0;b=e+16|0;k[j>>2]=b;k[m+72>>2]=(l[h+1>>0]|0)<<16|(l[h>>0]|0)<<24|(l[h+2>>0]|0)<<8|(l[h+3>>0]|0);b=f+b|0;e=e+20|0;k[j>>2]=e;h=100;b=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);c=0}g=m+80|0;k[g>>2]=b;k[g+4>>2]=c;b=f+e|0;g=e+4|0;k[j>>2]=g;k[m+88>>2]=(l[b+1>>0]|0)<<16|(l[b>>0]|0)<<24|(l[b+2>>0]|0)<<8|(l[b+3>>0]|0);g=f+g|0;k[j>>2]=e+6;k[m+92>>2]=(l[g>>0]|0)<<8|(l[g+1>>0]|0);e=e+8|0;k[j>>2]=e;g=a+12|0;b=k[g>>2]|0;if((e|0)>=(b|0)){k[g>>2]=0;k[j>>2]=0;e=0;b=0}e=e+8|0;k[j>>2]=e;if((e|0)>=(b|0)){k[g>>2]=0;k[j>>2]=0;b=0;e=0}d=0;while(1){o=f+e|0;c=e+4|0;k[j>>2]=c;k[m+96+(d<<2)>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);d=d+1|0;if((d|0)==9)break;else e=c}e=e+28|0;k[j>>2]=e;if((e|0)>=(b|0)){k[g>>2]=0;k[j>>2]=0;e=0}o=f+e|0;k[j>>2]=e+4;k[m+132>>2]=(l[o+1>>0]|0)<<16|(l[o>>0]|0)<<24|(l[o+2>>0]|0)<<8|(l[o+3>>0]|0);o=k[a+28>>2]|0;hc[k[k[o>>2]>>2]&7](o,m,+p[a+40>>3]);O3(m);r=n;return h|0}function mf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=_J()|0;q=M;do if(Ub[k[(k[b>>2]|0)+40>>2]&511](b)|0){if(Ub[k[(k[b>>2]|0)+40>>2]&511](b)|0?(h=b+144|0,!((k[h>>2]|0)==0&(k[h+4>>2]|0)==0)):0)break;f=b+136|0;h=f;g=k[h>>2]|0;h=k[h+4>>2]|0;if(!((g|0)==0&(h|0)==0)){r=n_(p|0,q|0,g|0,h|0)|0;h=b+96|0;g=h;g=y0(r|0,M|0,k[g>>2]|0,k[g+4>>2]|0)|0;k[h>>2]=g;k[h+4>>2]=M;h=f;k[h>>2]=p;k[h+4>>2]=q}}while(0);if(Ub[k[(k[b>>2]|0)+40>>2]&511](b)|0?(i=b+144|0,l=i,j=k[l>>2]|0,l=k[l+4>>2]|0,!((j|0)==0&(l|0)==0)):0){j=n_(p|0,q|0,j|0,l|0)|0;r=b+104|0;l=r;l=y0(j|0,M|0,k[l>>2]|0,k[l+4>>2]|0)|0;k[r>>2]=l;k[r+4>>2]=M;r=i;k[r>>2]=p;k[r+4>>2]=q}if(Ub[k[(k[b>>2]|0)+40>>2]&511](b)|0?(m=b+152|0,o=m,n=k[o>>2]|0,o=k[o+4>>2]|0,!((n|0)==0&(o|0)==0)):0){n=n_(p|0,q|0,n|0,o|0)|0;r=b+112|0;o=r;o=y0(n|0,M|0,k[o>>2]|0,k[o+4>>2]|0)|0;k[r>>2]=o;k[r+4>>2]=M;r=m;k[r>>2]=p;k[r+4>>2]=q}if(Ub[k[(k[b>>2]|0)+40>>2]&511](b)|0?(c=b+160|0,e=c,d=k[e>>2]|0,e=k[e+4>>2]|0,!((d|0)==0&(e|0)==0)):0){n=n_(p|0,q|0,d|0,e|0)|0;r=b+120|0;o=r;o=y0(n|0,M|0,k[o>>2]|0,k[o+4>>2]|0)|0;k[r>>2]=o;k[r+4>>2]=M;r=c;k[r>>2]=p;k[r+4>>2]=q}f=b+168|0;o=f;g=b+64|0;e=b+96|0;r=k[e>>2]|0;e=k[e+4>>2]|0;d=b+104|0;c=k[d>>2]|0;d=k[d+4>>2]|0;o=n_(p|0,q|0,k[o>>2]|0,k[o+4>>2]|0)|0;e=n_(o|0,M|0,r|0,e|0)|0;d=n_(e|0,M|0,c|0,d|0)|0;c=b+88|0;k[c>>2]=d;k[c+4>>2]=M;c=Ub[k[(k[b>>2]|0)+60>>2]&511](b)|0;d=b+132|0;e=k[d>>2]|0;do if((e|0)!=-1)if((c|0)==-1){k[b+80>>2]=-1;break}else{k[b+80>>2]=c-e;break}else k[b+80>>2]=c;while(0);k[d>>2]=c;c=a;d=g;e=c+64|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));c=b+64+8|0;e=c+56|0;do{k[c>>2]=0;c=c+4|0}while((c|0)<(e|0));b=k[a+4>>2]|0;r=g;k[r>>2]=k[a>>2];k[r+4>>2]=b;r=f;k[r>>2]=p;k[r+4>>2]=q;return}function nf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;C=r;r=r+480|0;p=C+468|0;B=C+464|0;v=C+472|0;w=C+460|0;x=C+456|0;y=C+444|0;z=C+432|0;A=C+420|0;m=C+416|0;j=C+16|0;q=C+8|0;s=C+4|0;t=C;u=LZ(d)|0;k[B>>2]=u;u=k_(B,111636)|0;n=f+8+3|0;o=i[n>>0]|0;a=o<<24>>24<0;l=f+4|0;if(!((a?k[l>>2]|0:o&255)|0))o=0;else{o=k[(a?k[f>>2]|0:f)>>2]|0;o=(o|0)==(cc[k[(k[u>>2]|0)+44>>2]&127](u,45)|0)}k[y>>2]=0;k[y+4>>2]=0;k[y+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[y+(a<<2)>>2]=0;a=a+1|0}k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[z+(a<<2)>>2]=0;a=a+1|0}k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[A+(a<<2)>>2]=0;a=a+1|0}Hc(c,o,B,v,w,x,y,z,A,m);a=i[n>>0]|0;h=k[l>>2]|0;g=a<<24>>24<0?h:a&255;c=k[m>>2]|0;if((g|0)>(c|0)){E=i[A+8+3>>0]|0;D=i[z+8+3>>0]|0;g=(E<<24>>24<0?k[A+4>>2]|0:E&255)+(g-c<<1|1)+(D<<24>>24<0?k[z+4>>2]|0:D&255)|0}else{E=i[A+8+3>>0]|0;g=i[z+8+3>>0]|0;g=(E<<24>>24<0?k[A+4>>2]|0:E&255)+2+(g<<24>>24<0?k[z+4>>2]|0:g&255)|0}g=g+c|0;if(g>>>0>100){g=lc(g<<2)|0;j=g;if(!g){g=0;h=k[l>>2]|0;c=k[m>>2]|0;a=i[n>>0]|0}}else{g=j;j=0}E=a<<24>>24<0;D=E?k[f>>2]|0:f;od(g,q,s,k[d+4>>2]|0,D,D+((E?h:a&255)<<2)|0,u,o,v,k[w>>2]|0,k[x>>2]|0,y,z,A,c);k[t>>2]=k[b>>2];E=k[q>>2]|0;a=k[s>>2]|0;k[p>>2]=k[t>>2];a=zl(p,g,E,a,d,e)|0;if(j|0)wc(j);_0(A);_0(z);p1(y);oU(k[B>>2]|0)|0;r=C;return a|0}function of(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=r;r=r+160|0;c=f;d=a+133|0;a:do if(!(i[d>>0]|0)){nN(a);dF(a+76|0);e=b+4|0;do switch(k[e>>2]|0){case 13:break a;case 12:{td(a,b);break a}case 5:{ah(a,b);break a}case 2:{g1(k[a+4>>2]|0,a);break a}case 1:{yp(a,0);break a}case 6:{d=b+8|0;d=eH(a,k[d>>2]|0,k[d+4>>2]|0)|0;e=k[b+16>>2]|0;Cs(k[a+4>>2]|0,a,d,e&65535,e>>>16);break a}case 4:{Je(a,b,0);break a}case 11:{Xo(a,b);break a}case 7:{Be(a,b);break a}case 10:{cl(a,b);break a}case 14:{Lj(a,b);break a}case 15:{KA(a,b);break a}case 16:{Je(a,b,1);break a}case 8:{jI(a,b);break a}case 9:{e=b+8|0;e=eH(a,k[e>>2]|0,k[e+4>>2]|0)|0;Mu(k[a+4>>2]|0,e,a);break a}case 18:{WM(a,b);break a}case 17:{if(i[d>>0]|0)break a;qu(a,m[b+8>>1]|0);break a}case 19:{nH(a,b);break a}default:{if((k[2783]|0)>=5)break a;Qd(c,52211,314,4,0,0,0);g=Tn(Mn(Tn(c,53477,29)|0,k[e>>2]|0)|0,53507,7)|0;b=a+8|0;e=i[b+11>>0]|0;d=e<<24>>24<0;Tn(Tn(g,d?k[b>>2]|0:b,d?k[a+12>>2]|0:e&255)|0,68623,1)|0;hi(c);break a}}while(0)}while(0);r=f;return}function pf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;c=r;r=r+112|0;d=c;o=c+96|0;n=c+88|0;l=c+80|0;h=c+72|0;e=c+64|0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;s=a+28|0;k[s>>2]=s;k[a+32>>2]=s;k[a+36>>2]=0;k[a+20>>2]=3288;k[a+24>>2]=3312;s=a+40|0;k[s>>2]=s;k[a+44>>2]=s;k[a+48>>2]=0;k[a>>2]=6304;k[a+4>>2]=6360;f=a+52|0;k[f>>2]=b;m=a+56|0;i[a+64>>0]=0;k[a+60>>2]=-1;k[m>>2]=1500;k[a+68>>2]=0;j=a+72|0;i[a+80>>0]=0;k[a+76>>2]=-1;k[j>>2]=1500;k[a+84>>2]=0;g=a+88|0;i[a+96>>0]=0;k[a+92>>2]=-1;k[g>>2]=1500;k[a+100>>2]=0;k[a+112>>2]=0;t=a+116|0;i[t>>0]=k[b+1848>>2];i[a+117>>0]=0;i[a+118>>0]=0;i[a+119>>0]=1;b=_J()|0;u=a+104|0;v=u;k[v>>2]=b;k[v+4>>2]=M;iI(o,(k[f>>2]|0)+2008|0);v=k[u>>2]|0;u=k[u+4>>2]|0;t=i[t>>0]|0;b=d+4|0;k[d+12>>2]=0;k[d+16>>2]=0;p=d+12|0;k[d+8>>2]=p;k[d>>2]=6464;k[b>>2]=6492;q=d+24|0;k[q>>2]=v;k[q+4>>2]=u;q=d+32|0;iI(q,o);u=d+48|0;k[u>>2]=0;k[u+4>>2]=0;i[d+56>>0]=t;Ts(s,d);k[d>>2]=6464;k[b>>2]=6492;p1(q);k[d>>2]=1972;k[b>>2]=2e3;Bo(d);dH(d+8|0,k[p>>2]|0);k[b>>2]=2024;p1(o);k[n>>2]=1253;k[n+4>>2]=0;k[d>>2]=k[n>>2];k[d+4>>2]=k[n+4>>2];pw(m,a,d)|0;k[l>>2]=1254;k[l+4>>2]=0;k[d>>2]=k[l>>2];k[d+4>>2]=k[l+4>>2];pw(j,a,d)|0;tB(j,k[(k[f>>2]|0)+1876>>2]|0)|0;k[h>>2]=1253;k[h+4>>2]=0;k[d>>2]=k[h>>2];k[d+4>>2]=k[h+4>>2];pw(g,a,d)|0;b=(k[f>>2]|0)+136|0;k[e>>2]=117;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];Xv(b,a,d);r=c;return}function qf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;C=r;r=r+176|0;p=C+56|0;B=C+52|0;v=C+164|0;w=C+161|0;x=C+160|0;y=C+40|0;z=C+28|0;A=C+16|0;l=C+12|0;j=C+60|0;q=C+8|0;s=C+4|0;t=C;u=LZ(d)|0;k[B>>2]=u;u=k_(B,111604)|0;m=f+11|0;o=i[m>>0]|0;a=o<<24>>24<0;n=f+4|0;if(!((a?k[n>>2]|0:o&255)|0))o=0;else{o=i[(a?k[f>>2]|0:f)>>0]|0;o=o<<24>>24==(cc[k[(k[u>>2]|0)+28>>2]&127](u,45)|0)<<24>>24}k[y>>2]=0;k[y+4>>2]=0;k[y+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[y+(a<<2)>>2]=0;a=a+1|0}k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[z+(a<<2)>>2]=0;a=a+1|0}k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;k[A+(a<<2)>>2]=0;a=a+1|0}Gc(c,o,B,v,w,x,y,z,A,l);c=i[m>>0]|0;a=k[n>>2]|0;g=c<<24>>24<0?a:c&255;h=k[l>>2]|0;if((g|0)>(h|0)){E=i[A+11>>0]|0;D=i[z+11>>0]|0;g=(E<<24>>24<0?k[A+4>>2]|0:E&255)+(g-h<<1|1)+(D<<24>>24<0?k[z+4>>2]|0:D&255)|0}else{E=i[A+11>>0]|0;g=i[z+11>>0]|0;g=(E<<24>>24<0?k[A+4>>2]|0:E&255)+2+(g<<24>>24<0?k[z+4>>2]|0:g&255)|0}g=g+h|0;if(g>>>0>100){g=lc(g)|0;j=g;if(!g){g=0;h=k[l>>2]|0;c=i[m>>0]|0;a=k[n>>2]|0}}else{g=j;j=0}E=c<<24>>24<0;D=E?k[f>>2]|0:f;jd(g,q,s,k[d+4>>2]|0,D,D+(E?a:c&255)|0,u,o,v,i[w>>0]|0,i[x>>0]|0,y,z,A,h);k[t>>2]=k[b>>2];E=k[q>>2]|0;a=k[s>>2]|0;k[p>>2]=k[t>>2];a=Rl(p,g,E,a,d,e)|0;if(j|0)wc(j);p1(A);p1(z);p1(y);oU(k[B>>2]|0)|0;r=C;return a|0}function rf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=r;r=r+96|0;c=x+84|0;u=x+72|0;t=x;LE(c,a+648|0);v=a+916|0;rD(a+316|0,c,(i[(k[v>>2]|0)+852>>0]|0)==0);k[u>>2]=0;s=u+4|0;k[s>>2]=0;k[u+8>>2]=0;w=c+4|0;e=k[w>>2]|0;q=k[c>>2]|0;d=q;if((e-q|0)==4)if(!(lY((k[d>>2]|0)+36|0,45692)|0))b=c;else{b=c;d=k[c>>2]|0;e=k[w>>2]|0;f=5}else{b=c;f=5}if((f|0)==5)if((d|0)!=(e|0)){h=t+16|0;j=t+36|0;l=t+12|0;m=t+28|0;n=t+32|0;o=u+8|0;p=t+60|0;q=t+48|0;do{c=k[d>>2]|0;k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;f=j;g=f+36|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(g|0));k[l>>2]=k[c+60>>2];MM(h,c+64|0)|0;k[m>>2]=k[c+76>>2];k[n>>2]=k[c+80>>2];MM(t,c+96|0)|0;c=k[s>>2]|0;if((c|0)==(k[o>>2]|0))qk(u,t);else{iI(c,t);k[c+12>>2]=k[l>>2];iI(c+16|0,h);y=m;f=k[y+4>>2]|0;g=c+28|0;k[g>>2]=k[y>>2];k[g+4>>2]=f;iI(c+36|0,j);iI(c+48|0,q);iI(c+60|0,p);k[s>>2]=(k[s>>2]|0)+72}p1(p);p1(q);p1(j);p1(h);p1(t);d=d+4|0}while((d|0)!=(e|0))}rD(a+376|0,u,(i[(k[v>>2]|0)+852>>0]|0)==0);Iv(u);b=k[b>>2]|0;c=b;if(b|0){d=k[w>>2]|0;if((d|0)!=(b|0))k[w>>2]=d+(~((d+-4-c|0)>>>2)<<2);zba(b)}r=x;return}function sf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+224|0;n=p+212|0;h=p+200|0;l=p+160|0;d=p+156|0;e=p;g=a+128|0;if((g|0)!=(b|0)){wg(g,k[b>>2]|0,k[b+4>>2]|0);Fh(a+140|0,k[b+12>>2]|0,k[b+16>>2]|0);k[l>>2]=k[b+24>>2];k[d>>2]=b+28;k[h>>2]=k[l>>2];k[n>>2]=k[d>>2];tf(a+152|0,h,n)}o=a+164|0;m=b+36|0;k[o>>2]=k[m>>2];j[o+4>>1]=j[m+4>>1]|0;MM(a+172|0,b+44|0)|0;k[n>>2]=1;b=k[a+40>>2]|0;if(b|0)Sb[k[(k[b>>2]|0)+8>>2]&511](b,n);k[n>>2]=0;o=n+4|0;k[o>>2]=0;k[n+8>>2]=0;k[h>>2]=0;m=h+4|0;k[m>>2]=0;k[h+8>>2]=0;k[l+28>>2]=0;k[l+32>>2]=0;b=l+28|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[l+20>>2]=0;k[l+24>>2]=b;k[l+36>>2]=0;k[l+4>>2]=a;Cc(l,g,k[a+184>>2]|0,n,h);if(((k[m>>2]|0)-(k[h>>2]|0)>>2>>>0>1?(f=a+100|0,c=k[f>>2]|0,c|0):0)?i[c+608>>0]|0:0){if((k[2783]|0)<3){Qd(e,45601,65,2,0,0,0);Tn(e,45623,68)|0;hi(e);c=k[f>>2]|0}i[c+608>>0]=0;k[c+624>>2]=1}c=k[a+56>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,n);c=k[a+64>>2]|0;if(c|0)Sb[k[(k[c>>2]|0)+8>>2]&511](c,h);pD(l+24|0,k[b>>2]|0);c=k[h>>2]|0;b=c;if(c|0){d=k[m>>2]|0;if((d|0)!=(c|0))k[m>>2]=d+(~((d+-4-b|0)>>>2)<<2);zba(c)}c=k[n>>2]|0;b=c;if(c|0){d=k[o>>2]|0;if((d|0)!=(c|0))k[o>>2]=d+(~((d+-4-b|0)>>>2)<<2);zba(c)}r=p;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;i=j;e=a+8|0;a:do if(k[e>>2]|0?(h=k[a>>2]|0,d=a+4|0,k[a>>2]=d,k[(k[d>>2]|0)+8>>2]=0,k[d>>2]=0,k[e>>2]=0,d=k[h+4>>2]|0,d=(d|0)==0?h:d,d|0):0){h=k[c>>2]|0;g=k[b>>2]|0;f=g;while(1){if((f|0)==(h|0))break;e=d+16|0;MM(e,f+16|0)|0;if((d|0)!=(f|0))_g(d+28|0,k[f+28>>2]|0,k[f+32>>2]|0);f=ds(d)|0;e=Om(a,i,e)|0;wF(a,k[i>>2]|0,e,d);d=k[g+4>>2]|0;if(!d){d=g;while(1){e=k[d+8>>2]|0;if((k[e>>2]|0)==(d|0))break;else d=e}}else while(1){e=k[d>>2]|0;if(!e){e=d;break}else d=e}k[b>>2]=e;if(!f)break a;else{d=f;f=e;g=e}}e=k[d+8>>2]|0;if(e){d=e;while(1){e=k[d+8>>2]|0;if(!e)break;else d=e}}os(a,d)}while(0);d=k[b>>2]|0;f=k[c>>2]|0;if((d|0)!=(f|0)){e=d;while(1){ts(a,e+16|0)|0;e=k[d+4>>2]|0;if(!e)while(1){e=k[d+8>>2]|0;if((k[e>>2]|0)==(d|0)){d=e;break}else d=e}else{d=e;while(1){e=k[d>>2]|0;if(!e)break;else d=e}}k[b>>2]=d;if((d|0)==(f|0))break;else e=d}}r=j;return}function uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;l=r;r=r+16|0;e=l;j=ez(b)|0;do if(!j){k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,103350,2);cw(a,e);p1(e)}else{if(!(Vl(a,b)|0)){d=a+16|0;eZ(d,103353)|0;b=a+4|0;c=0;do{if(c|0)eZ(d,103359)|0;h=k[b>>2]|0;f=h+(c*12|0)|0;a=i[f+11>>0]|0;g=a<<24>>24<0;nw(d,g?k[f>>2]|0:f,g?k[h+(c*12|0)+4>>2]|0:a&255)|0;c=c+1|0}while((c|0)!=(j|0));eZ(d,103356)|0;break}k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,103290,1);Ht(a);h=a+16|0;d=i[e+11>>0]|0;f=d<<24>>24<0;nw(h,f?k[e>>2]|0:e,f?k[e+4>>2]|0:d&255)|0;p1(e);eD(a);d=a+4|0;f=(k[d>>2]|0)==(k[a+8>>2]|0);c=0;while(1){g=hB(b,c)|0;Ut(a,g);if(f){Ht(a);md(a,g)}else{n=k[d>>2]|0;p=n+(c*12|0)|0;Ht(a);m=i[p+11>>0]|0;o=m<<24>>24<0;nw(h,o?k[p>>2]|0:p,o?k[n+(c*12|0)+4>>2]|0:m&255)|0}c=c+1|0;if((c|0)==(j|0))break;eZ(h,103294)|0;pj(a,g)}pj(a,g);QR(a);k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;wE(e,103292,1);Ht(a);p=i[e+11>>0]|0;o=p<<24>>24<0;nw(h,o?k[e>>2]|0:e,o?k[e+4>>2]|0:p&255)|0;p1(e)}while(0);r=l;return}function vf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,q=0,s=0;q=r;r=r+80|0;o=q;HA(o,b,c,d);d=o+44|0;k[d>>2]=0;j=o+48|0;k[j>>2]=0;k[o>>2]=15196;m=o+60|0;k[m>>2]=0;n=o+64|0;k[n>>2]=0;k[o+68>>2]=0;g=a+4|0;c=k[g>>2]|0;h=a+8|0;e=k[h>>2]|0;s=c+e|0;i=e+4|0;k[h>>2]=i;f=l[s+3>>0]|0;b=(l[s+2>>0]|0)<<8|(l[s+1>>0]|0)<<16|f;k[d>>2]=l[s>>0];k[j>>2]=b;i=c+i|0;b=e+8|0;k[h>>2]=b;i=(l[i+1>>0]|0)<<16|(l[i>>0]|0)<<24|(l[i+2>>0]|0)<<8|(l[i+3>>0]|0);if(!(f&1)){d=8;e=b}else{d=c+b|0;e=e+12|0;k[h>>2]=e;k[o+52>>2]=(l[d+1>>0]|0)<<16|(l[d>>0]|0)<<24|(l[d+2>>0]|0)<<8|(l[d+3>>0]|0);d=12}if(f&4){s=c+e|0;k[h>>2]=e+4;k[o+56>>2]=(l[s+1>>0]|0)<<16|(l[s>>0]|0)<<24|(l[s+2>>0]|0)<<8|(l[s+3>>0]|0);d=d+4|0}c=o+60|0;QG(c,i);if(i){b=0;do{e=k[j>>2]|0;if(e&256){s=k[h>>2]|0;e=(k[g>>2]|0)+s|0;k[h>>2]=s+4;k[(k[c>>2]|0)+(b<<4)>>2]=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);d=d+4|0;e=k[j>>2]|0}if(e&512){s=k[h>>2]|0;e=(k[g>>2]|0)+s|0;k[h>>2]=s+4;k[(k[c>>2]|0)+(b<<4)+4>>2]=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);d=d+4|0;e=k[j>>2]|0}if(e&1024){s=k[h>>2]|0;e=(k[g>>2]|0)+s|0;k[h>>2]=s+4;k[(k[c>>2]|0)+(b<<4)+8>>2]=(l[e+1>>0]|0)<<16|(l[e>>0]|0)<<24|(l[e+2>>0]|0)<<8|(l[e+3>>0]|0);d=d+4|0;e=k[j>>2]|0}if(!(e&2048))k[(k[c>>2]|0)+(b<<4)+12>>2]=0;else{f=k[h>>2]|0;s=(k[g>>2]|0)+f|0;k[h>>2]=f+4;k[(k[c>>2]|0)+(b<<4)+12>>2]=(l[s+1>>0]|0)<<16|(l[s>>0]|0)<<24|(l[s+2>>0]|0)<<8|(l[s+3>>0]|0);d=d+4|0}b=b+1|0}while((b|0)!=(i|0))}e=k[a+28>>2]|0;hc[k[k[e>>2]>>2]&7](e,o,+p[a+40>>3]);k[o>>2]=15196;e=k[m>>2]|0;b=e;if(e|0){c=k[n>>2]|0;if((c|0)!=(e|0))k[n>>2]=c+(~((c+-16-b|0)>>>4)<<4);zba(e)}O3(o);r=q;return d|0}function wf(a,b){a=a|0;b=b|0;var c=0,d=0;ar(a,b);c=Tn(b,68043,14)|0;d=a+56|0;d=Tn(tn(c,k[d>>2]|0,k[d+4>>2]|0)|0,68058,9)|0;c=a+64|0;tn(d,k[c>>2]|0,k[c+4>>2]|0)|0;c=Tn(b,67781,7)|0;Ln(c,k[a+72>>2]|0)|0;c=Tn(b,68004,5)|0;d=a+80|0;tn(c,k[d>>2]|0,k[d+4>>2]|0)|0;d=Tn(b,68129,7)|0;d=Tn(Gn(d,j[a+88>>1]|0)|0,68137,10)|0;Gn(d,j[a+90>>1]|0)|0;d=Tn(b,68148,8)|0;c=a+92|0;d=Tn(Mn(d,(m[c>>1]|0)>>>8)|0,104158,1)|0;Mn(d,(m[c>>1]|0)&255)|0;c=Tn(b,68102,9)|0;c=c+(k[(k[c>>2]|0)+-12>>2]|0)+4|0;k[c>>2]=k[c>>2]&-75|8;c=0;do{d=Tn(b,68126,2)|0;Tn(Ln(d,k[a+96+(c<<2)>>2]|0)|0,103359,2)|0;c=c+1|0}while((c|0)!=9);d=Tn(b,103292,1)|0;d=d+(k[(k[d>>2]|0)+-12>>2]|0)+4|0;k[d>>2]=k[d>>2]&-75|2;d=Tn(b,68157,7)|0;b=a+132|0;d=Tn(Ln(d,(k[b>>2]|0)>>>16)|0,104158,1)|0;b=Tn(Ln(d,k[b>>2]&65535)|0,68165,8)|0;d=a+136|0;b=Tn(Ln(b,(k[d>>2]|0)>>>16)|0,104158,1)|0;Ln(b,k[d>>2]&65535)|0;return}function xf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0,h=0;h=r;r=r+336|0;g=h+312|0;e=h+156|0;d=h;if((X9(k[c>>2]|0)|0)!=200?(X9(k[c>>2]|0)|0)!=206:0){tB(a+252|0,1e3)|0;if((k[2783]|0)<5){Qd(d,47907,266,4,0,0,0);c=Tn(d,47926,13)|0;Tn(Tn(Tn(c,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48103,50)|0;hi(d);c=0}else c=0}else{d=d2(k[c>>2]|0,g)|0;c=$L(a+208|0)|0;if(c|0)vF(a,c);c=Lg(a,d,k[g>>2]|0)|0;if((c|0)<0){c=a+240|0;d=(k[c>>2]|0)+1|0;k[c>>2]=d;if((d|0)>=2)if((k[2783]|0)<5){Qd(e,47907,258,4,0,0,0);c=Tn(e,47926,13)|0;Tn(Tn(Tn(c,(k[a+212>>2]|0)==1?47940:47946,5)|0,68429,2)|0,48076,26)|0;hi(e);c=0}else c=0;else c=1}else{iH(a,d,c);c=0}}k[a+244>>2]=0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);if(c){d=hE(a+208|0)|0;c=k[a+124>>2]|0;if((c|0)!=0?(f=+p[c+24>>3],f>0.0):0){e=d+12|0;Hj(g,0.0,f+-1.0);c=e+11|0;if((i[c>>0]|0)<0){i[k[e>>2]>>0]=0;k[d+16>>2]=0;c=e}else{i[e>>0]=0;i[c>>0]=0;c=e}Qm(e,0);k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];k[c+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g)}else dZ(d+12|0,48154)|0;af(a)}r=h;return}function yf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=k[e+4>>2]|0;c=a;k[c>>2]=k[e>>2];k[c+4>>2]=d;iI(a+8|0,b+8|0);iI(a+20|0,b+20|0);QD(a+32|0,b+32|0);iI(a+44|0,b+44|0);iI(a+56|0,b+56|0);QD(a+68|0,b+68|0);Vz(a+80|0,b+80|0);i[a+92>>0]=i[b+92>>0]|0;iI(a+96|0,b+96|0);iI(a+108|0,b+108|0);i[a+120>>0]=i[b+120>>0]|0;c=a+124|0;d=b+124|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;iI(a+136|0,b+136|0);i[a+148>>0]=i[b+148>>0]|0;iI(a+152|0,b+152|0);iI(a+164|0,b+164|0);i[a+176>>0]=i[b+176>>0]|0;c=a+180|0;d=b+180|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;iI(a+192|0,b+192|0);i[a+204>>0]=i[b+204>>0]|0;iI(a+208|0,b+208|0);iI(a+220|0,b+220|0);c=b+232|0;d=k[c+4>>2]|0;e=a+232|0;k[e>>2]=k[c>>2];k[e+4>>2]=d;i[a+240>>0]=i[b+240>>0]|0;ot(a+244|0,b+244|0);iI(a+256|0,b+256|0);iI(a+268|0,b+268|0);i[a+280>>0]=i[b+280>>0]|0;e=a+284|0;d=b+284|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];i[e+8>>0]=i[d+8>>0]|0;iI(a+296|0,b+296|0);i[a+308>>0]=i[b+308>>0]|0;iI(a+312|0,b+312|0);iI(a+324|0,b+324|0);e=b+336|0;d=k[e+4>>2]|0;c=a+336|0;k[c>>2]=k[e>>2];k[c+4>>2]=d;i[a+344>>0]=i[b+344>>0]|0;ot(a+348|0,b+348|0);PD(a+360|0,b+360|0);return}function zf(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k[c>>2]=a;k[f>>2]=d;if(h&4){a=k[c>>2]|0;d=b;if((((d-a|0)>2?(i[a>>0]|0)==-17:0)?(i[a+1>>0]|0)==-69:0)?(i[a+2>>0]|0)==-65:0)k[c>>2]=a+3}else d=b;r=e;a:while(1){n=k[c>>2]|0;a=n>>>0<b>>>0;if(!a){t=41;break}s=k[f>>2]|0;if(s>>>0>=e>>>0){t=41;break}m=i[n>>0]|0;q=m&255;if(q>>>0>g>>>0){a=2;break}do if(m<<24>>24>-1){j[s>>1]=m&255;k[c>>2]=n+1}else{if((m&255)<194){a=2;break a}if((m&255)<224){if((d-n|0)<2){a=1;break a}a=l[n+1>>0]|0;if((a&192|0)!=128){a=2;break a}a=a&63|q<<6&1984;if(a>>>0>g>>>0){a=2;break a}j[s>>1]=a;k[c>>2]=n+2;break}if((m&255)<240){if((d-n|0)<3){a=1;break a}h=i[n+1>>0]|0;a=i[n+2>>0]|0;switch(m<<24>>24){case -32:{if((h&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((h&-32)<<24>>24!=-128){a=2;break a}break}default:if((h&-64)<<24>>24!=-128){a=2;break a}}a=a&255;if((a&192|0)!=128){a=2;break a}a=(h&255)<<6&4032|q<<12|a&63;if((a&65535)>>>0>g>>>0){a=2;break a}j[s>>1]=a;k[c>>2]=n+3;break}if((m&255)>=245){a=2;break a}if((d-n|0)<4){a=1;break a}o=i[n+1>>0]|0;a=i[n+2>>0]|0;h=i[n+3>>0]|0;switch(m<<24>>24){case -16:{if((o+112&255)>=48){a=2;break a}break}case -12:{if((o&-16)<<24>>24!=-128){a=2;break a}break}default:if((o&-64)<<24>>24!=-128){a=2;break a}}p=a&255;if((p&192|0)!=128){a=2;break a}a=h&255;if((a&192|0)!=128){a=2;break a}if((r-s|0)<4){a=1;break a}n=q&7;h=o&255;m=p<<6;a=a&63;if((h<<12&258048|n<<18|m&4032|a)>>>0>g>>>0){a=2;break a}j[s>>1]=h<<2&60|p>>>4&3|((h>>>4&3|n<<2)<<6)+16320|55296;s=s+2|0;k[f>>2]=s;j[s>>1]=a|m&960|56320;k[c>>2]=(k[c>>2]|0)+4}while(0);k[f>>2]=(k[f>>2]|0)+2}if((t|0)==41)a=a&1;return a|0}function Af(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+96|0;c=q+80|0;f=q+72|0;h=q+64|0;j=q+56|0;l=q+48|0;m=q+40|0;n=q+8|0;o=q+32|0;p=q+24|0;d=q;e=k[(k[(k[a+1256>>2]|0)+200>>2]|0)+1196>>2]|0;if((e|0)!=0&(i[a+1434>>0]|0)!=0?(g=a+2269|0,(i[g>>0]|0)==0):0){i[g>>0]=1;k[f>>2]=1242;k[f+4>>2]=0;k[c>>2]=k[f>>2];k[c+4>>2]=k[f+4>>2];Nx(e+36|0,a,c);k[h>>2]=1243;k[h+4>>2]=0;k[c>>2]=k[h>>2];k[c+4>>2]=k[h+4>>2];ir(e+116|0,a,c)|0;k[j>>2]=1244;k[j+4>>2]=0;k[c>>2]=k[j>>2];k[c+4>>2]=k[j+4>>2];Nx(e+76|0,a,c);k[l>>2]=327;k[l+4>>2]=0;k[c>>2]=k[l>>2];k[c+4>>2]=k[l+4>>2];Xu(e+96|0,a,c);k[m>>2]=1245;k[m+4>>2]=0;k[c>>2]=k[m>>2];k[c+4>>2]=k[m+4>>2];Nx(e+56|0,a,c);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,53076,5);k[o>>2]=328;k[o+4>>2]=0;k[c>>2]=k[o>>2];k[c+4>>2]=k[o+4>>2];Rj(e,n,a,c);p1(n);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,53082,13);k[p>>2]=328;k[p+4>>2]=0;k[c>>2]=k[p>>2];k[c+4>>2]=k[p+4>>2];Rj(e,n,a,c);p1(n);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,52290,8);k[d>>2]=328;k[d+4>>2]=0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];Rj(e,n,a,c);p1(n);GJ(e,k[b>>2]|0)}r=q;return}function Bf(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0.0;t=r;r=r+48|0;o=t+32|0;q=t;k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;s=b+64|0;if((s|0)!=(o|0))Kg(s,0,0);i[b+60>>0]=1;if(i6(a+216|0)|0){d=k[b+56>>2]|0;n=b+52|0;c=+((k[n>>2]|0)>>>0)/+(k[b>>2]|0);g=~~+_(+(+SV(a+208|0)/c))>>>0;if(g|0){h=q+8|0;j=q+12|0;l=q+28|0;m=b+68|0;a=b+72|0;b=q+16|0;e=0;while(1){k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[l>>2]=d;f=k[n>>2]|0;k[h>>2]=f;c=+($(f,e)|0);p[q>>3]=c;f=k[m>>2]|0;if((f|0)==(k[a>>2]|0))Vn(s,q);else{k[f>>2]=k[q>>2];k[f+4>>2]=k[q+4>>2];k[f+8>>2]=k[q+8>>2];k[f+12>>2]=k[q+12>>2];iI(f+16|0,b);k[f+28>>2]=k[l>>2];k[m>>2]=(k[m>>2]|0)+32}p1(b);e=e+1|0;if((e|0)==(g|0))break;else d=d+1|0}}}else{f=q+12|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[f+12>>2]=0;f=b+52|0;c=+((k[f>>2]|0)>>>0)/+(k[b>>2]|0);u=+q_();e=~~((u-+p[a+152>>3])/c+ +((k[b+56>>2]|0)>>>0)-+(k[(k[(k[a+32>>2]|0)+916>>2]|0)+776>>2]|0))>>>0;d=q+28|0;k[d>>2]=e;f=k[f>>2]|0;k[q+8>>2]=f;p[q>>3]=+(f>>>0)*+(e>>>0);e=b+68|0;f=k[e>>2]|0;if((f|0)==(k[b+72>>2]|0))Vn(s,q);else{k[f>>2]=k[q>>2];k[f+4>>2]=k[q+4>>2];k[f+8>>2]=k[q+8>>2];k[f+12>>2]=k[q+12>>2];iI(f+16|0,q+16|0);k[f+28>>2]=k[d>>2];k[e>>2]=(k[e>>2]|0)+32}In(0,s);tB(a+108|0,~~(c*1.0e3))|0;p1(q+16|0)}qH(o);r=t;return}
function kc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+64|0;j=o+48|0;l=o+36|0;m=o+24|0;n=o+12|0;h=o;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36084,4);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36089,75);kg(b,j,a+236|0,0,65535,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36165,4);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36170,75);dJ(b,j,a+224|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36246,24);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36271,108);jg(b,j,a+208|0,0.0,.99,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36380,31);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36412,133);kg(b,j,a+204|0,1,9999999,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36546,11);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36558,51);kg(b,j,a+16|0,1,9999999,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36610,17);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36628,132);Sd(b,j,a+248|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36761,18);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36780,46);Sd(b,j,a+79|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36827,33);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36861,101);$g(b,j,a+252|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,36963,25);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,36989,49);$g(b,j,a+200|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,37039,28);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37068,124);Sd(b,j,a+458|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,37193,10);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37204,62);dJ(b,j,a+592|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,37267,17);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37285,57);Yg(b,j,a+368|0,l)|0;p1(l);p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,50775,6);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37343,76);dJ(b,l,j,m)|0;p1(m);p1(l);e=j+11|0;d=i[e>>0]|0;f=j+4|0;c=k[f>>2]|0;do if(((d<<24>>24<0?c:d&255)|0)==10)if(!(cA(j,0,-1,37420,10)|0)){k[a+160>>2]=0;break}else{d=i[e>>0]|0;c=k[f>>2]|0;g=5;break}else g=5;while(0);a:do if((g|0)==5){do if(((d<<24>>24<0?c:d&255)|0)==9)if(!(cA(j,0,-1,37431,9)|0)){k[a+160>>2]=1;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==7)if(!(cA(j,0,-1,37441,7)|0)){k[a+160>>2]=10;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==11)if(!(cA(j,0,-1,37449,11)|0)){k[a+160>>2]=11;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==3)if(!(cA(j,0,-1,37461,3)|0)){k[a+160>>2]=2;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==4)if(!(cA(j,0,-1,37465,4)|0)){k[a+160>>2]=3;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==6)if(!(cA(j,0,-1,37470,6)|0)){k[a+160>>2]=8;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==10)if(!(cA(j,0,-1,37477,10)|0)){k[a+160>>2]=9;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==4)if(!(cA(j,0,-1,103285,4)|0)){k[a+160>>2]=7;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==5)if(!(cA(j,0,-1,37488,5)|0)){k[a+160>>2]=12;break a}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);if((d<<24>>24<0?c:d&255)|0){k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37494,35);c=i[e>>0]|0;d=c<<24>>24<0;c=nw(m,d?k[j>>2]|0:j,d?k[f>>2]|0:c&255)|0;k[l>>2]=k[c>>2];k[l+4>>2]=k[c+4>>2];k[l+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=b+148|0;d=k[c>>2]|0;if(d>>>0<(k[b+152>>2]|0)>>>0){k[d>>2]=k[l>>2];k[d+4>>2]=k[l+4>>2];k[d+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[c>>2]=(k[c>>2]|0)+12}else sj(b+144|0,l);p1(l);p1(m)}}while(0);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37530,9);e=a+383|0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37540,20);Sd(b,l,e,m)|0;p1(m);p1(l);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37561,4);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37540,20);Sd(b,l,e,m)|0;p1(m);p1(l);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37566,15);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37582,48);Sd(b,l,a+380|0,m)|0;p1(m);p1(l);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37631,19);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37651,46);Sd(b,l,a+381|0,m)|0;p1(m);p1(l);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37698,10);e=a+382|0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37709,22);Sd(b,l,e,m)|0;p1(m);p1(l);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37732,5);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37709,22);Sd(b,l,e,m)|0;p1(m);p1(l);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,37738,20);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37759,37);Sd(b,l,a+384|0,m)|0;p1(m);p1(l);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37797,7);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,37805,88);dJ(b,m,l,n)|0;p1(n);p1(m);e=l+11|0;d=i[e>>0]|0;f=l+4|0;c=k[f>>2]|0;do if(((d<<24>>24<0?c:d&255)|0)==9)if(!(cA(l,0,-1,37894,9)|0)){k[a+164>>2]=0;break}else{d=i[e>>0]|0;c=k[f>>2]|0;g=50;break}else g=50;while(0);b:do if((g|0)==50){do if(((d<<24>>24<0?c:d&255)|0)==13)if(!(cA(l,0,-1,37904,13)|0)){k[a+164>>2]=1;break b}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==6)if(!(cA(l,0,-1,50775,6)|0)){k[a+164>>2]=2;break b}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==5)if(!(cA(l,0,-1,37918,5)|0)){k[a+164>>2]=3;break b}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==14)if(!(cA(l,0,-1,37924,14)|0)){k[a+164>>2]=4;break b}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);do if(((d<<24>>24<0?c:d&255)|0)==3)if(!(cA(l,0,-1,37939,3)|0)){k[a+164>>2]=5;break b}else{d=i[e>>0]|0;c=k[f>>2]|0;break}while(0);if((d<<24>>24<0?c:d&255)|0){k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,37943,36);c=i[e>>0]|0;d=c<<24>>24<0;c=nw(n,d?k[l>>2]|0:l,d?k[f>>2]|0:c&255)|0;k[m>>2]=k[c>>2];k[m+4>>2]=k[c+4>>2];k[m+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=b+148|0;d=k[c>>2]|0;if(d>>>0<(k[b+152>>2]|0)>>>0){k[d>>2]=k[m>>2];k[d+4>>2]=k[m+4>>2];k[d+8>>2]=k[m+8>>2];k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[c>>2]=(k[c>>2]|0)+12}else sj(b+144|0,m);p1(m);p1(n)}}while(0);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,37980,7);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,37988,53);kg(b,m,a,0,256,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38042,8);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38051,52);kg(b,m,a+4|0,0,256,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38104,30);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38135,55);kg(b,m,a+48|0,1,8,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38191,16);c=a+76|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38208,62);Sd(b,m,c,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38271,29);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38301,53);$g(b,m,a+52|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38355,10);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38366,128);$g(b,m,a+20|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38495,13);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38509,75);Sd(b,m,a+249|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38585,18);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38604,53);$g(b,m,a+256|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38658,16);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38675,25);$g(b,m,a+184|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38701,31);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38733,31);$g(b,m,a+192|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38765,25);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38791,43);Sd(b,m,a+250|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38835,34);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38870,79);Yg(b,m,a+144|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,38950,29);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,38980,61);$g(b,m,a+152|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39042,11);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39054,29);dJ(b,m,a+612|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39084,12);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39097,24);dJ(b,m,a+288|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39122,25);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39148,46);$g(b,m,a+300|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39195,5);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39201,19);Sd(b,m,a+308|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39221,16);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39238,77);Sd(b,m,a+309|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39316,14);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39331,55);Sd(b,m,a+310|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39387,17);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39405,100);$g(b,m,a+360|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39506,3);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39510,46);Sd(b,m,a+364|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39557,23);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39581,100);Sd(b,m,a+365|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39682,21);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39704,35);$g(b,m,a+376|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39740,23);g=a+385|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39764,33);Sd(b,m,g,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39798,22);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39764,33);Sd(b,m,g,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39821,22);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39844,31);dJ(b,m,a+388|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39876,20);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39897,44);dJ(b,m,a+408|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39942,15);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39958,15);$g(b,m,a+276|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,39974,17);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,39992,71);dJ(b,m,a+424|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40064,3);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40068,11);dJ(b,m,a+436|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,50473,5);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,115628,0);Sd(b,m,a+452|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,50467,5);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,115628,0);Sd(b,m,a+453|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40080,5);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40086,32);Sd(b,m,a+454|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40119,25);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,115628,0);Sd(b,m,a+455|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40145,32);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,115628,0);Sd(b,m,a+456|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40178,32);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,115628,0);Sd(b,m,a+457|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40211,30);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,115628,0);Sd(b,m,a+404|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40242,18);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,115628,0);Yg(b,m,a+464|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40261,10);g=a+72|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40272,33);f=Sd(b,m,g,n)|0;p1(n);p1(m);if(f?i[g>>0]|0:0){i[a+74>>0]=1;i[c>>0]=1}k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40306,16);g=a+73|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40323,26);f=Sd(b,m,g,n)|0;p1(n);p1(m);if(f?i[g>>0]|0:0)i[a+74>>0]=1;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40350,23);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40374,65);Sd(b,m,a+484|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40440,16);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40457,31);Sd(b,m,a+485|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40489,25);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40515,25);kg(b,m,a+488|0,0,255,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40541,22);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40564,22);kg(b,m,a+492|0,0,20,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40587,28);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40616,107);kg(b,m,a+496|0,0,6e4,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40724,34);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40759,114);kg(b,m,a+500|0,0,6e4,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,40874,33);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,40908,105);kg(b,m,a+504|0,0,6e4,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41014,31);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41046,127);kg(b,m,a+508|0,0,6e4,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41174,24);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41199,83);kg(b,m,a+512|0,0,6e4,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41283,32);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41316,49);kg(b,m,a+516|0,0,6e4,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41366,21);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41388,28);Sd(b,m,a+520|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41417,21);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41439,100);$g(b,m,a+524|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41540,23);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41564,68);$g(b,m,a+532|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41633,26);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41660,45);$g(b,m,a+536|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41706,16);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41723,103);Yg(b,m,a+280|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41827,19);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41847,102);Sd(b,m,a+472|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,41950,8);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,41959,59);dJ(b,m,a+540|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,42019,11);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,42031,34);$g(b,m,a+552|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,42066,29);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,42096,64);Sd(b,m,a+556|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,42161,9);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,42171,81);dJ(b,m,a+560|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,42253,38);k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,42292,62);$g(b,m,a+572|0,n)|0;p1(n);p1(m);k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,42355,21);k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,42377,78);g=dJ(b,n,m,h)|0;p1(h);p1(n);c:do if(g){d=m+11|0;e=i[d>>0]|0;f=m+4|0;c=k[f>>2]|0;do if(((e<<24>>24<0?c:e&255)|0)==6)if(!(cA(m,0,-1,42456,6)|0)){k[a+604>>2]=0;i[a+608>>0]=0;k[a+624>>2]=0;break c}else{e=i[d>>0]|0;c=k[f>>2]|0;break}while(0);if(((e<<24>>24<0?c:e&255)|0)==9?(cA(m,0,-1,37894,9)|0)==0:0){k[a+604>>2]=1;i[a+608>>0]=0;k[a+624>>2]=1;break}k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,42463,48);c=b+148|0;d=k[c>>2]|0;if(d>>>0<(k[b+152>>2]|0)>>>0){k[d>>2]=k[n>>2];k[d+4>>2]=k[n+4>>2];k[d+8>>2]=k[n+8>>2];k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;k[c>>2]=(k[c>>2]|0)+12}else sj(b+144|0,n);p1(n)}while(0);p1(m);p1(l);p1(j);r=o;return}function lc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=r;r=r+16|0;o=L;do if(a>>>0<245){n=a>>>0<11?16:a+11&-8;a=n>>>3;t=k[27515]|0;c=t>>>a;if(c&3|0){a=(c&1^1)+a|0;c=110100+(a<<1<<2)|0;d=c+8|0;e=k[d>>2]|0;f=e+8|0;g=k[f>>2]|0;do if((c|0)!=(g|0)){if(g>>>0<(k[27519]|0)>>>0)kb();b=g+12|0;if((k[b>>2]|0)==(e|0)){k[b>>2]=c;k[d>>2]=g;break}else kb()}else k[27515]=t&~(1<<a);while(0);K=a<<3;k[e+4>>2]=K|3;K=e+K+4|0;k[K>>2]=k[K>>2]|1;K=f;r=L;return K|0}s=k[27517]|0;if(n>>>0>s>>>0){if(c|0){h=2<<a;a=c<<a&(h|0-h);a=(a&0-a)+-1|0;h=a>>>12&16;a=a>>>h;d=a>>>5&8;a=a>>>d;f=a>>>2&4;a=a>>>f;c=a>>>1&2;a=a>>>c;b=a>>>1&1;b=(d|h|f|c|b)+(a>>>b)|0;a=110100+(b<<1<<2)|0;c=a+8|0;f=k[c>>2]|0;h=f+8|0;d=k[h>>2]|0;do if((a|0)!=(d|0)){if(d>>>0<(k[27519]|0)>>>0)kb();e=d+12|0;if((k[e>>2]|0)==(f|0)){k[e>>2]=a;k[c>>2]=d;i=t;break}else kb()}else{i=t&~(1<<b);k[27515]=i}while(0);g=(b<<3)-n|0;k[f+4>>2]=n|3;d=f+n|0;k[d+4>>2]=g|1;k[d+g>>2]=g;if(s|0){e=k[27520]|0;b=s>>>3;c=110100+(b<<1<<2)|0;b=1<<b;if(i&b){b=c+8|0;a=k[b>>2]|0;if(a>>>0<(k[27519]|0)>>>0)kb();else{j=a;l=b}}else{k[27515]=i|b;j=c;l=c+8|0}k[l>>2]=e;k[j+12>>2]=e;k[e+8>>2]=j;k[e+12>>2]=c}k[27517]=g;k[27520]=d;K=h;r=L;return K|0}j=k[27516]|0;if(j){a=(j&0-j)+-1|0;J=a>>>12&16;a=a>>>J;I=a>>>5&8;a=a>>>I;K=a>>>2&4;a=a>>>K;h=a>>>1&2;a=a>>>h;i=a>>>1&1;i=k[110364+((I|J|K|h|i)+(a>>>i)<<2)>>2]|0;a=i;h=i;i=(k[i+4>>2]&-8)-n|0;while(1){b=k[a+16>>2]|0;if(!b){b=k[a+20>>2]|0;if(!b)break}K=(k[b+4>>2]&-8)-n|0;J=K>>>0<i>>>0;a=b;h=J?b:h;i=J?K:i}e=k[27519]|0;if(h>>>0<e>>>0)kb();g=h+n|0;if(h>>>0>=g>>>0)kb();f=k[h+24>>2]|0;c=k[h+12>>2]|0;do if((c|0)==(h|0)){a=h+20|0;b=k[a>>2]|0;if(!b){a=h+16|0;b=k[a>>2]|0;if(!b){m=0;break}}while(1){c=b+20|0;d=k[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=k[c>>2]|0;if(!d)break;else{b=d;a=c}}if(a>>>0<e>>>0)kb();else{k[a>>2]=0;m=b;break}}else{d=k[h+8>>2]|0;if(d>>>0<e>>>0)kb();b=d+12|0;if((k[b>>2]|0)!=(h|0))kb();a=c+8|0;if((k[a>>2]|0)==(h|0)){k[b>>2]=c;k[a>>2]=d;m=c;break}else kb()}while(0);do if(f|0){b=k[h+28>>2]|0;a=110364+(b<<2)|0;if((h|0)==(k[a>>2]|0)){k[a>>2]=m;if(!m){k[27516]=j&~(1<<b);break}}else{if(f>>>0<(k[27519]|0)>>>0)kb();b=f+16|0;if((k[b>>2]|0)==(h|0))k[b>>2]=m;else k[f+20>>2]=m;if(!m)break}a=k[27519]|0;if(m>>>0<a>>>0)kb();k[m+24>>2]=f;b=k[h+16>>2]|0;do if(b|0)if(b>>>0<a>>>0)kb();else{k[m+16>>2]=b;k[b+24>>2]=m;break}while(0);b=k[h+20>>2]|0;if(b|0)if(b>>>0<(k[27519]|0)>>>0)kb();else{k[m+20>>2]=b;k[b+24>>2]=m;break}}while(0);if(i>>>0<16){K=i+n|0;k[h+4>>2]=K|3;K=h+K+4|0;k[K>>2]=k[K>>2]|1}else{k[h+4>>2]=n|3;k[g+4>>2]=i|1;k[g+i>>2]=i;if(s|0){d=k[27520]|0;b=s>>>3;c=110100+(b<<1<<2)|0;b=1<<b;if(t&b){b=c+8|0;a=k[b>>2]|0;if(a>>>0<(k[27519]|0)>>>0)kb();else{p=a;q=b}}else{k[27515]=t|b;p=c;q=c+8|0}k[q>>2]=d;k[p+12>>2]=d;k[d+8>>2]=p;k[d+12>>2]=c}k[27517]=i;k[27520]=g}K=h+8|0;r=L;return K|0}}}else if(a>>>0<=4294967231){a=a+11|0;n=a&-8;j=k[27516]|0;if(j){d=0-n|0;a=a>>>8;if(a)if(n>>>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;D=a<<q;p=(D+520192|0)>>>16&4;D=D<<p;i=(D+245760|0)>>>16&2;i=14-(p|q|i)+(D<<i>>>15)|0;i=n>>>(i+7|0)&1|i<<1}else i=0;a=k[110364+(i<<2)>>2]|0;a:do if(!a){c=0;e=0;D=86}else{e=0;h=a;g=n<<((i|0)==31?0:25-(i>>>1)|0);c=0;while(1){a=(k[h+4>>2]&-8)-n|0;if(a>>>0<d>>>0)if(!a){a=h;d=0;c=h;D=90;break a}else{e=h;d=a}a=k[h+20>>2]|0;h=k[h+16+(g>>>31<<2)>>2]|0;c=(a|0)==0|(a|0)==(h|0)?c:a;a=(h|0)==0;if(a){D=86;break}else g=g<<(a&1^1)}}while(0);if((D|0)==86){if((c|0)==0&(e|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;l=q>>>12&16;q=q>>>l;i=q>>>5&8;q=q>>>i;m=q>>>2&4;q=q>>>m;p=q>>>1&2;q=q>>>p;c=q>>>1&1;c=k[110364+((i|l|m|p|c)+(q>>>c)<<2)>>2]|0}if(!c){i=e;h=d}else{a=e;D=90}}if((D|0)==90)while(1){D=0;q=(k[c+4>>2]&-8)-n|0;e=q>>>0<d>>>0;d=e?q:d;a=e?c:a;e=k[c+16>>2]|0;if(e|0){c=e;D=90;continue}c=k[c+20>>2]|0;if(!c){i=a;h=d;break}else D=90}if((i|0)!=0?h>>>0<((k[27517]|0)-n|0)>>>0:0){e=k[27519]|0;if(i>>>0<e>>>0)kb();g=i+n|0;if(i>>>0>=g>>>0)kb();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){a=i+20|0;b=k[a>>2]|0;if(!b){a=i+16|0;b=k[a>>2]|0;if(!b){s=0;break}}while(1){c=b+20|0;d=k[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=k[c>>2]|0;if(!d)break;else{b=d;a=c}}if(a>>>0<e>>>0)kb();else{k[a>>2]=0;s=b;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)kb();b=d+12|0;if((k[b>>2]|0)!=(i|0))kb();a=c+8|0;if((k[a>>2]|0)==(i|0)){k[b>>2]=c;k[a>>2]=d;s=c;break}else kb()}while(0);do if(f){b=k[i+28>>2]|0;a=110364+(b<<2)|0;if((i|0)==(k[a>>2]|0)){k[a>>2]=s;if(!s){t=j&~(1<<b);k[27516]=t;break}}else{if(f>>>0<(k[27519]|0)>>>0)kb();b=f+16|0;if((k[b>>2]|0)==(i|0))k[b>>2]=s;else k[f+20>>2]=s;if(!s){t=j;break}}a=k[27519]|0;if(s>>>0<a>>>0)kb();k[s+24>>2]=f;b=k[i+16>>2]|0;do if(b|0)if(b>>>0<a>>>0)kb();else{k[s+16>>2]=b;k[b+24>>2]=s;break}while(0);b=k[i+20>>2]|0;if(b)if(b>>>0<(k[27519]|0)>>>0)kb();else{k[s+20>>2]=b;k[b+24>>2]=s;t=j;break}else t=j}else t=j;while(0);do if(h>>>0>=16){k[i+4>>2]=n|3;k[g+4>>2]=h|1;k[g+h>>2]=h;b=h>>>3;if(h>>>0<256){c=110100+(b<<1<<2)|0;a=k[27515]|0;b=1<<b;if(a&b){b=c+8|0;a=k[b>>2]|0;if(a>>>0<(k[27519]|0)>>>0)kb();else{B=a;C=b}}else{k[27515]=a|b;B=c;C=c+8|0}k[C>>2]=g;k[B+12>>2]=g;k[g+8>>2]=B;k[g+12>>2]=c;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{J=(b+1048320|0)>>>16&8;K=b<<J;I=(K+520192|0)>>>16&4;K=K<<I;b=(K+245760|0)>>>16&2;b=14-(I|J|b)+(K<<b>>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;c=110364+(b<<2)|0;k[g+28>>2]=b;a=g+16|0;k[a+4>>2]=0;k[a>>2]=0;a=1<<b;if(!(t&a)){k[27516]=t|a;k[c>>2]=g;k[g+24>>2]=c;k[g+12>>2]=g;k[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=k[c>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(h|0)){D=148;break}c=d+16+(a>>>31<<2)|0;b=k[c>>2]|0;if(!b){D=145;break}else{a=a<<1;d=b}}if((D|0)==145)if(c>>>0<(k[27519]|0)>>>0)kb();else{k[c>>2]=g;k[g+24>>2]=d;k[g+12>>2]=g;k[g+8>>2]=g;break}else if((D|0)==148){b=d+8|0;a=k[b>>2]|0;K=k[27519]|0;if(a>>>0>=K>>>0&d>>>0>=K>>>0){k[a+12>>2]=g;k[b>>2]=g;k[g+8>>2]=a;k[g+12>>2]=d;k[g+24>>2]=0;break}else kb()}}else{K=h+n|0;k[i+4>>2]=K|3;K=i+K+4|0;k[K>>2]=k[K>>2]|1}while(0);K=i+8|0;r=L;return K|0}}}else n=-1;while(0);c=k[27517]|0;if(c>>>0>=n>>>0){b=c-n|0;a=k[27520]|0;if(b>>>0>15){K=a+n|0;k[27520]=K;k[27517]=b;k[K+4>>2]=b|1;k[K+b>>2]=b;k[a+4>>2]=n|3}else{k[27517]=0;k[27520]=0;k[a+4>>2]=c|3;K=a+c+4|0;k[K>>2]=k[K>>2]|1}K=a+8|0;r=L;return K|0}h=k[27518]|0;if(h>>>0>n>>>0){I=h-n|0;k[27518]=I;K=k[27521]|0;J=K+n|0;k[27521]=J;k[J+4>>2]=I|1;k[K+4>>2]=n|3;K=K+8|0;r=L;return K|0}if(!(k[27633]|0)){k[27635]=4096;k[27634]=4096;k[27636]=-1;k[27637]=-1;k[27638]=0;k[27626]=0;a=o&-16^1431655768;k[o>>2]=a;k[27633]=a;a=4096}else a=k[27635]|0;i=n+48|0;j=n+47|0;g=a+j|0;e=0-a|0;l=g&e;if(l>>>0<=n>>>0){K=0;r=L;return K|0}a=k[27625]|0;if(a|0?(B=k[27623]|0,C=B+l|0,C>>>0<=B>>>0|C>>>0>a>>>0):0){K=0;r=L;return K|0}b:do if(!(k[27626]&4)){c=k[27521]|0;c:do if(c){d=110508;while(1){a=k[d>>2]|0;if(a>>>0<=c>>>0?(u=d+4|0,(a+(k[u>>2]|0)|0)>>>0>c>>>0):0)break;a=k[d+8>>2]|0;if(!a){D=172;break c}else d=a}c=g-h&e;if(c>>>0<2147483647){a=PJ(c|0)|0;if((a|0)==((k[d>>2]|0)+(k[u>>2]|0)|0)){if((a|0)!=(-1|0)){g=c;f=a;D=190;break b}}else{b=c;D=180}}}else D=172;while(0);do if(((D|0)==172?(f=PJ(0)|0,(f|0)!=(-1|0)):0)?(b=f,v=k[27634]|0,w=v+-1|0,b=((w&b|0)==0?0:(w+b&0-v)-b|0)+l|0,v=k[27623]|0,w=b+v|0,b>>>0>n>>>0&b>>>0<2147483647):0){C=k[27625]|0;if(C|0?w>>>0<=v>>>0|w>>>0>C>>>0:0)break;a=PJ(b|0)|0;if((a|0)==(f|0)){g=b;D=190;break b}else D=180}while(0);d:do if((D|0)==180){c=0-b|0;do if(i>>>0>b>>>0&(b>>>0<2147483647&(a|0)!=(-1|0))?(x=k[27635]|0,x=j-b+x&0-x,x>>>0<2147483647):0)if((PJ(x|0)|0)==(-1|0)){PJ(c|0)|0;break d}else{b=x+b|0;break}while(0);if((a|0)!=(-1|0)){g=b;f=a;D=190;break b}}while(0);k[27626]=k[27626]|4;D=187}else D=187;while(0);if((((D|0)==187?l>>>0<2147483647:0)?(A=PJ(l|0)|0,y=PJ(0)|0,A>>>0<y>>>0&((A|0)!=(-1|0)&(y|0)!=(-1|0))):0)?(z=y-A|0,z>>>0>(n+40|0)>>>0):0){g=z;f=A;D=190}if((D|0)==190){b=(k[27623]|0)+g|0;k[27623]=b;if(b>>>0>(k[27624]|0)>>>0)k[27624]=b;j=k[27521]|0;do if(j){b=110508;while(1){a=k[b>>2]|0;c=b+4|0;d=k[c>>2]|0;if((f|0)==(a+d|0)){D=200;break}e=k[b+8>>2]|0;if(!e)break;else b=e}if(((D|0)==200?(k[b+12>>2]&8|0)==0:0)?j>>>0<f>>>0&j>>>0>=a>>>0:0){k[c>>2]=d+g;K=j+8|0;K=(K&7|0)==0?0:0-K&7;J=j+K|0;K=g-K+(k[27518]|0)|0;k[27521]=J;k[27518]=K;k[J+4>>2]=K|1;k[J+K+4>>2]=40;k[27522]=k[27637];break}b=k[27519]|0;if(f>>>0<b>>>0){k[27519]=f;h=f}else h=b;a=f+g|0;b=110508;while(1){if((k[b>>2]|0)==(a|0)){D=208;break}b=k[b+8>>2]|0;if(!b){a=110508;break}}if((D|0)==208)if(!(k[b+12>>2]&8)){k[b>>2]=f;m=b+4|0;k[m>>2]=(k[m>>2]|0)+g;m=f+8|0;m=f+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;l=m+n|0;i=b-m-n|0;k[m+4>>2]=n|3;do if((b|0)!=(j|0)){if((b|0)==(k[27520]|0)){K=(k[27517]|0)+i|0;k[27517]=K;k[27520]=l;k[l+4>>2]=K|1;k[l+K>>2]=K;break}a=k[b+4>>2]|0;if((a&3|0)==1){g=a&-8;e=a>>>3;e:do if(a>>>0>=256){f=k[b+24>>2]|0;d=k[b+12>>2]|0;do if((d|0)==(b|0)){d=b+16|0;c=d+4|0;a=k[c>>2]|0;if(!a){a=k[d>>2]|0;if(!a){I=0;break}else c=d}while(1){d=a+20|0;e=k[d>>2]|0;if(e|0){a=e;c=d;continue}d=a+16|0;e=k[d>>2]|0;if(!e)break;else{a=e;c=d}}if(c>>>0<h>>>0)kb();else{k[c>>2]=0;I=a;break}}else{e=k[b+8>>2]|0;if(e>>>0<h>>>0)kb();a=e+12|0;if((k[a>>2]|0)!=(b|0))kb();c=d+8|0;if((k[c>>2]|0)==(b|0)){k[a>>2]=d;k[c>>2]=e;I=d;break}else kb()}while(0);if(!f)break;a=k[b+28>>2]|0;c=110364+(a<<2)|0;do if((b|0)!=(k[c>>2]|0)){if(f>>>0<(k[27519]|0)>>>0)kb();a=f+16|0;if((k[a>>2]|0)==(b|0))k[a>>2]=I;else k[f+20>>2]=I;if(!I)break e}else{k[c>>2]=I;if(I|0)break;k[27516]=k[27516]&~(1<<a);break e}while(0);d=k[27519]|0;if(I>>>0<d>>>0)kb();k[I+24>>2]=f;a=b+16|0;c=k[a>>2]|0;do if(c|0)if(c>>>0<d>>>0)kb();else{k[I+16>>2]=c;k[c+24>>2]=I;break}while(0);a=k[a+4>>2]|0;if(!a)break;if(a>>>0<(k[27519]|0)>>>0)kb();else{k[I+20>>2]=a;k[a+24>>2]=I;break}}else{c=k[b+8>>2]|0;d=k[b+12>>2]|0;a=110100+(e<<1<<2)|0;do if((c|0)!=(a|0)){if(c>>>0<h>>>0)kb();if((k[c+12>>2]|0)==(b|0))break;kb()}while(0);if((d|0)==(c|0)){k[27515]=k[27515]&~(1<<e);break}do if((d|0)==(a|0))F=d+8|0;else{if(d>>>0<h>>>0)kb();a=d+8|0;if((k[a>>2]|0)==(b|0)){F=a;break}kb()}while(0);k[c+12>>2]=d;k[F>>2]=c}while(0);b=b+g|0;e=g+i|0}else e=i;b=b+4|0;k[b>>2]=k[b>>2]&-2;k[l+4>>2]=e|1;k[l+e>>2]=e;b=e>>>3;if(e>>>0<256){c=110100+(b<<1<<2)|0;a=k[27515]|0;b=1<<b;do if(!(a&b)){k[27515]=a|b;J=c;K=c+8|0}else{b=c+8|0;a=k[b>>2]|0;if(a>>>0>=(k[27519]|0)>>>0){J=a;K=b;break}kb()}while(0);k[K>>2]=l;k[J+12>>2]=l;k[l+8>>2]=J;k[l+12>>2]=c;break}b=e>>>8;do if(!b)b=0;else{if(e>>>0>16777215){b=31;break}J=(b+1048320|0)>>>16&8;K=b<<J;I=(K+520192|0)>>>16&4;K=K<<I;b=(K+245760|0)>>>16&2;b=14-(I|J|b)+(K<<b>>>15)|0;b=e>>>(b+7|0)&1|b<<1}while(0);d=110364+(b<<2)|0;k[l+28>>2]=b;a=l+16|0;k[a+4>>2]=0;k[a>>2]=0;a=k[27516]|0;c=1<<b;if(!(a&c)){k[27516]=a|c;k[d>>2]=l;k[l+24>>2]=d;k[l+12>>2]=l;k[l+8>>2]=l;break}a=e<<((b|0)==31?0:25-(b>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(e|0)){D=278;break}c=d+16+(a>>>31<<2)|0;b=k[c>>2]|0;if(!b){D=275;break}else{a=a<<1;d=b}}if((D|0)==275)if(c>>>0<(k[27519]|0)>>>0)kb();else{k[c>>2]=l;k[l+24>>2]=d;k[l+12>>2]=l;k[l+8>>2]=l;break}else if((D|0)==278){b=d+8|0;a=k[b>>2]|0;K=k[27519]|0;if(a>>>0>=K>>>0&d>>>0>=K>>>0){k[a+12>>2]=l;k[b>>2]=l;k[l+8>>2]=a;k[l+12>>2]=d;k[l+24>>2]=0;break}else kb()}}else{K=(k[27518]|0)+i|0;k[27518]=K;k[27521]=l;k[l+4>>2]=K|1}while(0);K=m+8|0;r=L;return K|0}else a=110508;while(1){b=k[a>>2]|0;if(b>>>0<=j>>>0?(E=b+(k[a+4>>2]|0)|0,E>>>0>j>>>0):0)break;a=k[a+8>>2]|0}e=E+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0<e>>>0?j:a;b=a+8|0;c=f+8|0;c=(c&7|0)==0?0:0-c&7;K=f+c|0;c=g+-40-c|0;k[27521]=K;k[27518]=c;k[K+4>>2]=c|1;k[K+c+4>>2]=40;k[27522]=k[27637];c=a+4|0;k[c>>2]=27;k[b>>2]=k[27627];k[b+4>>2]=k[27628];k[b+8>>2]=k[27629];k[b+12>>2]=k[27630];k[27627]=f;k[27628]=g;k[27630]=0;k[27629]=b;b=a+24|0;do{b=b+4|0;k[b>>2]=7}while((b+4|0)>>>0<E>>>0);if((a|0)!=(j|0)){f=a-j|0;k[c>>2]=k[c>>2]&-2;k[j+4>>2]=f|1;k[a>>2]=f;b=f>>>3;if(f>>>0<256){c=110100+(b<<1<<2)|0;a=k[27515]|0;b=1<<b;if(a&b){b=c+8|0;a=k[b>>2]|0;if(a>>>0<(k[27519]|0)>>>0)kb();else{G=a;H=b}}else{k[27515]=a|b;G=c;H=c+8|0}k[H>>2]=j;k[G+12>>2]=j;k[j+8>>2]=G;k[j+12>>2]=c;break}b=f>>>8;if(b)if(f>>>0>16777215)c=31;else{J=(b+1048320|0)>>>16&8;K=b<<J;I=(K+520192|0)>>>16&4;K=K<<I;c=(K+245760|0)>>>16&2;c=14-(I|J|c)+(K<<c>>>15)|0;c=f>>>(c+7|0)&1|c<<1}else c=0;d=110364+(c<<2)|0;k[j+28>>2]=c;k[j+20>>2]=0;k[e>>2]=0;b=k[27516]|0;a=1<<c;if(!(b&a)){k[27516]=b|a;k[d>>2]=j;k[j+24>>2]=d;k[j+12>>2]=j;k[j+8>>2]=j;break}a=f<<((c|0)==31?0:25-(c>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(f|0)){D=304;break}c=d+16+(a>>>31<<2)|0;b=k[c>>2]|0;if(!b){D=301;break}else{a=a<<1;d=b}}if((D|0)==301)if(c>>>0<(k[27519]|0)>>>0)kb();else{k[c>>2]=j;k[j+24>>2]=d;k[j+12>>2]=j;k[j+8>>2]=j;break}else if((D|0)==304){b=d+8|0;a=k[b>>2]|0;K=k[27519]|0;if(a>>>0>=K>>>0&d>>>0>=K>>>0){k[a+12>>2]=j;k[b>>2]=j;k[j+8>>2]=a;k[j+12>>2]=d;k[j+24>>2]=0;break}else kb()}}}else{K=k[27519]|0;if((K|0)==0|f>>>0<K>>>0)k[27519]=f;k[27627]=f;k[27628]=g;k[27630]=0;k[27524]=k[27633];k[27523]=-1;b=0;do{K=110100+(b<<1<<2)|0;k[K+12>>2]=K;k[K+8>>2]=K;b=b+1|0}while((b|0)!=32);K=f+8|0;K=(K&7|0)==0?0:0-K&7;J=f+K|0;K=g+-40-K|0;k[27521]=J;k[27518]=K;k[J+4>>2]=K|1;k[J+K+4>>2]=40;k[27522]=k[27637]}while(0);b=k[27518]|0;if(b>>>0>n>>>0){I=b-n|0;k[27518]=I;K=k[27521]|0;J=K+n|0;k[27521]=J;k[J+4>>2]=I|1;k[K+4>>2]=n|3;K=K+8|0;r=L;return K|0}}K=z0()|0;k[K>>2]=12;K=0;r=L;return K|0}function mc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0.0,g=0,h=0,j=0,m=0,n=0,o=0.0,p=0.0,q=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0;K=r;r=r+512|0;G=K;switch(b|0){case 0:{H=-149;J=24;y=4;break}case 1:{H=-1074;J=53;y=4;break}case 2:{H=-1074;J=53;y=4;break}default:d=0.0}a:do if((y|0)==4){A=a+4|0;z=a+100|0;do{b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0}while((zaa(b)|0)!=0);b:do switch(b|0){case 43:case 45:{e=1-(((b|0)==45&1)<<1)|0;b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;g=l[b>>0]|0;I=e;break b}else{g=ys(a)|0;I=e;break b}}default:{g=b;I=1}}while(0);b=0;do{if((g|32|0)!=(i[106052+b>>0]|0))break;do if(b>>>0<7){e=k[A>>2]|0;if(e>>>0<(k[z>>2]|0)>>>0){k[A>>2]=e+1;g=l[e>>0]|0;break}else{g=ys(a)|0;break}}while(0);b=b+1|0}while(b>>>0<8);c:do switch(b|0){case 8:break;case 3:{y=23;break}default:{h=(c|0)!=0;if(h&b>>>0>3)if((b|0)==8)break c;else{y=23;break c}d:do if(!b){b=0;do{if((g|32|0)!=(i[106061+b>>0]|0))break d;do if(b>>>0<2){e=k[A>>2]|0;if(e>>>0<(k[z>>2]|0)>>>0){k[A>>2]=e+1;g=l[e>>0]|0;break}else{g=ys(a)|0;break}}while(0);b=b+1|0}while(b>>>0<3)}while(0);switch(b|0){case 3:{b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0;if((b|0)==40)b=1;else{if(!(k[z>>2]|0)){d=B;break a}k[A>>2]=(k[A>>2]|0)+-1;d=B;break a}while(1){e=k[A>>2]|0;if(e>>>0<(k[z>>2]|0)>>>0){k[A>>2]=e+1;e=l[e>>0]|0}else e=ys(a)|0;if(!((e+-48|0)>>>0<10|(e+-65|0)>>>0<26)?!((e|0)==95|(e+-97|0)>>>0<26):0)break;b=b+1|0}if((e|0)==41){d=B;break a}e=(k[z>>2]|0)==0;if(!e)k[A>>2]=(k[A>>2]|0)+-1;if(!h){J=z0()|0;k[J>>2]=22;MR(a,0);d=0.0;break a}if(!b){d=B;break a}while(1){b=b+-1|0;if(!e)k[A>>2]=(k[A>>2]|0)+-1;if(!b){d=B;break a}}}case 0:{do if((g|0)==48){b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0;if((b|32|0)!=120){if(!(k[z>>2]|0)){b=48;break}k[A>>2]=(k[A>>2]|0)+-1;b=48;break}b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;e=l[b>>0]|0;g=0}else{e=ys(a)|0;g=0}e:while(1){switch(e|0){case 46:{y=74;break e}case 48:break;default:{t=0;j=0;o=1.0;d=0.0;b=0;h=e;u=g;w=0;v=0;g=0;e=0;break e}}b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;e=l[b>>0]|0;g=1;continue}else{e=ys(a)|0;g=1;continue}}if((y|0)==74){b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;e=l[b>>0]|0}else e=ys(a)|0;if((e|0)==48){g=0;e=0;do{b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;h=l[b>>0]|0}else h=ys(a)|0;g=y0(g|0,e|0,-1,-1)|0;e=M}while((h|0)==48);t=1;j=0;o=1.0;d=0.0;b=0;u=1;w=0;v=0}else{t=1;j=0;o=1.0;d=0.0;b=0;h=e;u=g;w=0;v=0;g=0;e=0}}while(1){n=h+-48|0;m=h|32;if(n>>>0>=10){q=(h|0)==46;if(!(q|(m+-97|0)>>>0<6)){m=h;break}if(q)if(!t){t=1;f=o;q=u;g=v;e=w;n=v;m=w}else{m=46;break}else y=86}else y=86;if((y|0)==86){y=0;h=(h|0)>57?m+-87|0:n;do if(!((w|0)<0|(w|0)==0&v>>>0<8)){if((w|0)<0|(w|0)==0&v>>>0<14){s=o*.0625;f=s;d=d+s*+(h|0);break}if((j|0)!=0|(h|0)==0)f=o;else{j=1;f=o;d=d+o*.5}}else{f=o;b=h+(b<<4)|0}while(0);n=y0(v|0,w|0,1,0)|0;q=1;m=M}h=k[A>>2]|0;if(h>>>0<(k[z>>2]|0)>>>0){k[A>>2]=h+1;o=f;h=l[h>>0]|0;u=q;w=m;v=n;continue}else{o=f;h=ys(a)|0;u=q;w=m;v=n;continue}}if(!u){b=(k[z>>2]|0)==0;if(!b)k[A>>2]=(k[A>>2]|0)+-1;if(c){if(!b?(x=k[A>>2]|0,k[A>>2]=x+-1,t|0):0)k[A>>2]=x+-2}else MR(a,0);d=+(I|0)*0.0;break a}j=(t|0)==0;n=j?v:g;j=j?w:e;if((w|0)<0|(w|0)==0&v>>>0<8){g=v;e=w;do{b=b<<4;g=y0(g|0,e|0,1,0)|0;e=M}while((e|0)<0|(e|0)==0&g>>>0<8);h=b}else h=b;if((m|32|0)==112){e=qi(a,c)|0;b=M;if((e|0)==0&(b|0)==-2147483648){if(!c){MR(a,0);d=0.0;break a}if(!(k[z>>2]|0)){e=0;b=0}else{k[A>>2]=(k[A>>2]|0)+-1;e=0;b=0}}}else if(!(k[z>>2]|0)){e=0;b=0}else{k[A>>2]=(k[A>>2]|0)+-1;e=0;b=0}g=BZ(n|0,j|0,2)|0;g=y0(g|0,M|0,-32,-1)|0;g=y0(g|0,M|0,e|0,b|0)|0;b=M;if(!h){d=+(I|0)*0.0;break a}if((b|0)>0|(b|0)==0&g>>>0>(0-H|0)>>>0){J=z0()|0;k[J>>2]=34;d=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break a}G=H+-106|0;F=((G|0)<0)<<31>>31;if((b|0)<(F|0)|(b|0)==(F|0)&g>>>0<G>>>0){J=z0()|0;k[J>>2]=34;d=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break a}if((h|0)>-1){e=h;do{F=!(d>=.5);G=F&1|e<<1;e=G^1;d=d+(F?d:d+-1.0);g=y0(g|0,b|0,-1,-1)|0;b=M}while((G|0)>-1);o=d;h=e}else o=d;H=n_(32,0,H|0,((H|0)<0)<<31>>31|0)|0;b=y0(g|0,b|0,H|0,M|0)|0;H=M;if(0>(H|0)|0==(H|0)&J>>>0>b>>>0)if((b|0)<0){e=0;b=84;y=127}else y=125;else{b=J;y=125}if((y|0)==125)if((b|0)<53){e=b;b=84-b|0;y=127}else{f=0.0;d=+(I|0)}if((y|0)==127){d=+(I|0);f=+_aa(+RA(1.0,b),d);b=e}J=(h&1|0)==0&(o!=0.0&(b|0)<32);d=d*(J?0.0:o)+(f+d*+(((J&1)+h|0)>>>0))-f;if(!(d!=0.0)){J=z0()|0;k[J>>2]=34}d=+$aa(d,g);break a}else b=g;while(0);D=H+J|0;F=0-D|0;e=0;f:while(1){switch(b|0){case 46:{y=138;break f}case 48:break;default:{m=0;h=e;n=0;j=0;break f}}b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;b=l[b>>0]|0;e=1;continue}else{b=ys(a)|0;e=1;continue}}if((y|0)==138){b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0;if((b|0)==48){e=0;b=0;while(1){e=y0(e|0,b|0,-1,-1)|0;j=M;b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0;if((b|0)==48)b=j;else{m=1;h=1;n=e;break}}}else{m=1;h=e;n=0;j=0}}k[G>>2]=0;q=b+-48|0;g=(b|0)==46;g:do if(g|q>>>0<10){y=G+496|0;u=0;e=0;x=0;v=m;w=h;m=0;h=0;h:while(1){do if(g)if(!v){v=1;t=x;n=m;j=h}else break h;else{m=y0(m|0,h|0,1,0)|0;h=M;t=(b|0)!=48;if((e|0)>=125){if(!t){t=x;break}k[y>>2]=k[y>>2]|1;t=x;break}g=G+(e<<2)|0;if(!u)b=q;else b=b+-48+((k[g>>2]|0)*10|0)|0;k[g>>2]=b;u=u+1|0;w=(u|0)==9;u=w?0:u;e=(w&1)+e|0;t=t?m:x;w=1}while(0);b=k[A>>2]|0;if(b>>>0<(k[z>>2]|0)>>>0){k[A>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0;q=b+-48|0;g=(b|0)==46;if(!(g|q>>>0<10)){q=t;t=v;g=w;y=161;break g}else x=t}b=u;q=x;g=(w|0)!=0;y=169}else{u=0;e=0;q=0;t=m;g=h;m=0;h=0;y=161}while(0);do if((y|0)==161){x=(t|0)==0;n=x?m:n;j=x?h:j;g=(g|0)!=0;if(!(g&(b|32|0)==101))if((b|0)>-1){b=u;y=169;break}else{b=u;y=171;break}g=qi(a,c)|0;b=M;if((g|0)==0&(b|0)==-2147483648){if(!c){MR(a,0);d=0.0;break}if(!(k[z>>2]|0)){g=0;b=0}else{k[A>>2]=(k[A>>2]|0)+-1;g=0;b=0}}w=y0(g|0,b|0,n|0,j|0)|0;b=u;j=M;y=173}while(0);if((y|0)==169)if(k[z>>2]|0){k[A>>2]=(k[A>>2]|0)+-1;if(g){w=n;y=173}else y=172}else y=171;if((y|0)==171)if(g){w=n;y=173}else y=172;do if((y|0)==172){J=z0()|0;k[J>>2]=22;MR(a,0);d=0.0}else if((y|0)==173){g=k[G>>2]|0;if(!g){d=+(I|0)*0.0;break}if(((h|0)<0|(h|0)==0&m>>>0<10)&((w|0)==(m|0)&(j|0)==(h|0))?J>>>0>30|(g>>>J|0)==0:0){d=+(I|0)*+(g>>>0);break}a=(H|0)/-2|0;A=((a|0)<0)<<31>>31;if((j|0)>(A|0)|(j|0)==(A|0)&w>>>0>a>>>0){J=z0()|0;k[J>>2]=34;d=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=H+-106|0;A=((a|0)<0)<<31>>31;if((j|0)<(A|0)|(j|0)==(A|0)&w>>>0<a>>>0){J=z0()|0;k[J>>2]=34;d=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){h=G+(e<<2)|0;g=k[h>>2]|0;do{g=g*10|0;b=b+1|0}while((b|0)!=9);k[h>>2]=g}e=e+1|0}if((q|0)<9?(q|0)<=(w|0)&(w|0)<18:0){if((w|0)==9){d=+(I|0)*+((k[G>>2]|0)>>>0);break}if((w|0)<9){d=+(I|0)*+((k[G>>2]|0)>>>0)/+(k[23052+(8-w<<2)>>2]|0);break}a=J+27+($(w,-3)|0)|0;b=k[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){d=+(I|0)*+(b>>>0)*+(k[23052+(w+-10<<2)>>2]|0);break}}b=(w|0)%9|0;if(!b){b=0;h=0}else{q=(w|0)>-1?b:b+9|0;m=k[23052+(8-q<<2)>>2]|0;if(e){n=1e9/(m|0)|0;h=0;j=0;g=w;b=0;do{z=G+(b<<2)|0;A=k[z>>2]|0;a=((A>>>0)/(m>>>0)|0)+h|0;k[z>>2]=a;h=$((A>>>0)%(m>>>0)|0,n)|0;a=(b|0)==(j|0)&(a|0)==0;g=a?g+-9|0:g;j=a?j+1&127:j;b=b+1|0}while((b|0)!=(e|0));if(!h)h=j;else{k[G+(e<<2)>>2]=h;h=j;e=e+1|0}}else{h=0;e=0;g=w}b=0;w=9-q+g|0}i:while(1){q=(w|0)<18;t=(w|0)==18;u=G+(h<<2)|0;while(1){if(!q){if(!t){g=w;break i}if((k[u>>2]|0)>>>0>=9007199){g=18;break i}}g=0;v=e;e=e+127|0;while(1){j=e&127;m=G+(j<<2)|0;e=BZ(k[m>>2]|0,0,29)|0;e=y0(e|0,M|0,g|0,0)|0;g=M;if(g>>>0>0|(g|0)==0&e>>>0>1e9){n=A5(e|0,g|0,1e9,0)|0;e=RU(e|0,g|0,1e9,0)|0}else n=0;k[m>>2]=e;a=(j|0)==(h|0);v=(j|0)!=(v+127&127|0)|a?v:(e|0)==0?j:v;if(a)break;else{g=n;e=j+-1|0}}b=b+-29|0;if(n|0)break;else e=v}h=h+127&127;e=v+127&127;g=G+((v+126&127)<<2)|0;if((h|0)==(v|0))k[g>>2]=k[g>>2]|k[G+(e<<2)>>2];else e=v;k[G+(h<<2)>>2]=n;w=w+9|0}j:while(1){u=e+1&127;v=G+((e+127&127)<<2)|0;while(1){n=(g|0)==18;t=(g|0)>27?9:1;w=h;while(1){h=0;while(1){j=h+w&127;if((j|0)==(e|0)){E=2;y=220;break}j=k[G+(j<<2)>>2]|0;m=k[23084+(h<<2)>>2]|0;if(j>>>0<m>>>0){E=2;y=220;break}if(j>>>0>m>>>0)break;h=h+1|0;if((h|0)>=2){E=h;y=220;break}}if((y|0)==220?(y=0,n&(E|0)==2):0){d=0.0;j=0;break j}b=b+t|0;if((w|0)==(e|0))w=e;else break}n=(1<<t)+-1|0;q=1e9>>>t;m=0;h=w;j=w;do{z=G+(j<<2)|0;A=k[z>>2]|0;a=(A>>>t)+m|0;k[z>>2]=a;m=$(A&n,q)|0;a=(j|0)==(h|0)&(a|0)==0;g=a?g+-9|0:g;h=a?h+1&127:h;j=j+1&127}while((j|0)!=(e|0));if(!m)continue;if((u|0)!=(h|0))break;k[v>>2]=k[v>>2]|1}k[G+(e<<2)>>2]=m;e=u}while(1){h=j+w&127;g=e+1&127;if((h|0)==(e|0))k[G+(g+-1<<2)>>2]=0;else g=e;d=d*1.0e9+ +((k[G+(h<<2)>>2]|0)>>>0);j=j+1|0;if((j|0)==2)break;else e=g}s=+(I|0);f=s*d;m=b+53|0;n=m-H|0;q=(n|0)<(J|0);e=q&1;j=q?((n|0)<0?0:n):J;if((j|0)<53){L=+_aa(+RA(1.0,105-j|0),f);o=+lba(f,+RA(1.0,53-j|0));p=L;d=o;o=L+(f-o)}else{p=0.0;d=0.0;o=f}h=w+2&127;do if((h|0)!=(g|0)){h=k[G+(h<<2)>>2]|0;do if(h>>>0>=5e8){if((h|0)!=5e8){d=s*.75+d;break}if((w+3&127|0)==(g|0)){d=s*.5+d;break}else{d=s*.75+d;break}}else{if((h|0)==0?(w+3&127|0)==(g|0):0)break;d=s*.25+d}while(0);if((53-j|0)>1){if(+lba(d,1.0)!=0.0){f=d;break}f=d+1.0}else f=d}else f=d;while(0);d=o+f-p;do if((m&2147483647|0)>(-2-D|0)){if(+O(+d)>=9007199254740992.0){d=d*.5;e=q&(j|0)==(n|0)?0:e;b=b+1|0}if((b+50|0)<=(F|0)?!(f!=0.0&(e|0)!=0):0)break;J=z0()|0;k[J>>2]=34}while(0);d=+$aa(d,b)}while(0);break a}default:{if(k[z>>2]|0)k[A>>2]=(k[A>>2]|0)+-1;J=z0()|0;k[J>>2]=22;MR(a,0);d=0.0;break a}}}}while(0);if((y|0)==23){e=(k[z>>2]|0)==0;if(!e)k[A>>2]=(k[A>>2]|0)+-1;if((c|0)!=0&b>>>0>3)do{if(!e)k[A>>2]=(k[A>>2]|0)+-1;b=b+-1|0}while(b>>>0>3)}d=+(I|0)*C}while(0);r=K;return +d}function nc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0.0,o=0,q=0,s=0,t=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=r;r=r+624|0;fa=ja+24|0;ga=ja+16|0;ha=ja+588|0;X=ja+576|0;ia=ja;S=ja+536|0;N=ja+8|0;O=ja+528|0;P=(a|0)!=0;Q=S+40|0;R=Q;S=S+39|0;T=N+4|0;U=ha;V=0-U|0;W=X+12|0;X=X+11|0;Y=W;Z=Y-U|0;_=-2-U|0;aa=Y+2|0;ba=fa+288|0;ca=ha+9|0;da=ca;ea=ha+8|0;g=0;f=0;q=0;a:while(1){do if((f|0)>-1)if((g|0)>(2147483647-f|0)){f=z0()|0;k[f>>2]=75;f=-1;break}else{f=g+f|0;break}while(0);g=i[b>>0]|0;if(!(g<<24>>24)){L=243;break}else h=b;b:while(1){switch(g<<24>>24){case 37:{g=h;L=9;break b}case 0:{g=h;break b}default:{}}g=h+1|0;h=g;g=i[g>>0]|0}c:do if((L|0)==9)while(1){L=0;if((i[h+1>>0]|0)!=37)break c;g=g+1|0;h=h+2|0;if((i[h>>0]|0)==37)L=9;else break}while(0);g=g-b|0;if(P?(k[a>>2]&32|0)==0:0)Gq(b,g,a)|0;if(g|0){b=h;continue}o=h+1|0;m=i[o>>0]|0;g=(m<<24>>24)+-48|0;if(g>>>0<10){t=(i[h+2>>0]|0)==36;o=t?h+3|0:o;w=t?g:-1;t=t?1:q;g=i[o>>0]|0}else{w=-1;t=q;g=m}h=(g<<24>>24)+-32|0;d:do if(h>>>0<32){m=0;do{if(!(1<<h&75913))break d;m=1<<(g<<24>>24)+-32|m;o=o+1|0;g=i[o>>0]|0;h=(g<<24>>24)+-32|0}while(h>>>0<32)}else m=0;while(0);do if(g<<24>>24!=42){h=(g<<24>>24)+-48|0;if(h>>>0<10){q=0;do{q=(q*10|0)+h|0;o=o+1|0;g=i[o>>0]|0;h=(g<<24>>24)+-48|0}while(h>>>0<10);if((q|0)<0){f=-1;break a}else K=t}else{q=0;K=t}}else{s=o+1|0;g=i[s>>0]|0;h=(g<<24>>24)+-48|0;if(h>>>0<10?(i[o+2>>0]|0)==36:0){k[e+(h<<2)>>2]=10;g=k[d+((i[s>>0]|0)+-48<<3)>>2]|0;h=1;s=o+3|0}else{if(t|0){f=-1;break a}if(!P){q=0;K=0;o=s;break}h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;h=0}K=(g|0)<0;q=K?0-g|0:g;m=K?m|8192:m;K=h;o=s;g=i[s>>0]|0}while(0);e:do if(g<<24>>24==46){g=o+1|0;h=i[g>>0]|0;if(h<<24>>24!=42){o=(h<<24>>24)+-48|0;if(o>>>0<10)h=0;else{x=0;break}while(1){h=(h*10|0)+o|0;g=g+1|0;o=(i[g>>0]|0)+-48|0;if(o>>>0>=10){x=h;break e}}}g=o+2|0;h=(i[g>>0]|0)+-48|0;if(h>>>0<10?(i[o+3>>0]|0)==36:0){k[e+(h<<2)>>2]=10;x=k[d+((i[g>>0]|0)+-48<<3)>>2]|0;g=o+4|0;break}if(K|0){f=-1;break a}if(P){J=(k[c>>2]|0)+(4-1)&~(4-1);x=k[J>>2]|0;k[c>>2]=J+4}else x=0}else{x=-1;g=o}while(0);t=0;while(1){h=(i[g>>0]|0)+-65|0;if(h>>>0>57){f=-1;break a}J=g+1|0;h=i[103630+(t*58|0)+h>>0]|0;o=h&255;if((o+-1|0)>>>0<8){t=o;g=J}else break}if(!(h<<24>>24)){f=-1;break}s=(w|0)>-1;do if(h<<24>>24==19)if(s){f=-1;break a}else L=51;else{if(s){k[e+(w<<2)>>2]=o;H=d+(w<<3)|0;I=k[H+4>>2]|0;L=ia;k[L>>2]=k[H>>2];k[L+4>>2]=I;L=51;break}if(!P){f=0;break a}Hh(ia,o,c)}while(0);if((L|0)==51?(L=0,!P):0){g=0;q=K;b=J;continue}E=i[g>>0]|0;E=(t|0)!=0&(E&15|0)==3?E&-33:E;s=m&-65537;I=(m&8192|0)==0?m:s;f:do switch(E|0){case 110:switch((t&255)<<24>>24){case 0:{k[k[ia>>2]>>2]=f;g=0;q=K;b=J;continue a}case 1:{k[k[ia>>2]>>2]=f;g=0;q=K;b=J;continue a}case 2:{g=k[ia>>2]|0;k[g>>2]=f;k[g+4>>2]=((f|0)<0)<<31>>31;g=0;q=K;b=J;continue a}case 3:{j[k[ia>>2]>>1]=f;g=0;q=K;b=J;continue a}case 4:{i[k[ia>>2]>>0]=f;g=0;q=K;b=J;continue a}case 6:{k[k[ia>>2]>>2]=f;g=0;q=K;b=J;continue a}case 7:{g=k[ia>>2]|0;k[g>>2]=f;k[g+4>>2]=((f|0)<0)<<31>>31;g=0;q=K;b=J;continue a}default:{g=0;q=K;b=J;continue a}}case 112:{s=120;t=x>>>0>8?x:8;g=I|8;L=63;break}case 88:case 120:{s=E;t=x;g=I;L=63;break}case 111:{h=ia;g=k[h>>2]|0;h=k[h+4>>2]|0;if((g|0)==0&(h|0)==0)b=Q;else{b=Q;do{b=b+-1|0;i[b>>0]=g&7|48;g=KZ(g|0,h|0,3)|0;h=M}while(!((g|0)==0&(h|0)==0))}if(!(I&8)){h=0;m=104110;o=x;g=I;L=76}else{o=R-b|0;h=0;m=104110;o=(x|0)>(o|0)?x:o+1|0;g=I;L=76}break}case 105:case 100:{b=ia;g=k[b>>2]|0;b=k[b+4>>2]|0;if((b|0)<0){g=n_(0,0,g|0,b|0)|0;b=M;h=ia;k[h>>2]=g;k[h+4>>2]=b;h=1;m=104110;L=75;break f}if(!(I&2048)){m=I&1;h=m;m=(m|0)==0?104110:104112;L=75}else{h=1;m=104111;L=75}break}case 117:{b=ia;h=0;m=104110;g=k[b>>2]|0;b=k[b+4>>2]|0;L=75;break}case 99:{i[S>>0]=k[ia>>2];b=S;w=0;t=104110;h=Q;g=1;break}case 109:{g=z0()|0;g=iE(k[g>>2]|0)|0;L=81;break}case 115:{g=k[ia>>2]|0;g=g|0?g:104120;L=81;break}case 67:{k[N>>2]=k[ia>>2];k[T>>2]=0;k[ia>>2]=N;s=-1;h=N;L=85;break}case 83:{g=k[ia>>2]|0;if(!x){ny(a,32,q,0,I);g=0;L=96}else{s=x;h=g;L=85}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{n=+p[ia>>3];k[ga>>2]=0;p[u>>3]=n;if((k[u+4>>2]|0)>=0){g=I&1;if(!(I&2048)){G=g;H=(g|0)==0?104128:104133}else{G=1;H=104130}}else{n=-n;G=1;H=104127}p[u>>3]=n;F=k[u+4>>2]&2146435072;do if(F>>>0<2146435072|(F|0)==2146435072&0<0){v=+cba(n,ga)*2.0;b=v!=0.0;if(b)k[ga>>2]=(k[ga>>2]|0)+-1;z=E|32;if((z|0)==97){o=E&32;w=(o|0)==0?H:H+9|0;t=G|2;g=12-x|0;do if(!(x>>>0>11|(g|0)==0)){n=8.0;do{g=g+-1|0;n=n*16.0}while((g|0)!=0);if((i[w>>0]|0)==45){n=-(n+(-v-n));break}else{n=v+n-n;break}}else n=v;while(0);b=k[ga>>2]|0;g=(b|0)<0?0-b|0:b;g=YC(g,((g|0)<0)<<31>>31,W)|0;if((g|0)==(W|0)){i[X>>0]=48;g=X}i[g+-1>>0]=(b>>31&2)+43;s=g+-2|0;i[s>>0]=E+15;m=(x|0)<1;h=(I&8|0)==0;g=ha;do{H=~~n;b=g+1|0;i[g>>0]=l[104094+H>>0]|o;n=(n-+(H|0))*16.0;do if((b-U|0)==1){if(h&(m&n==0.0)){g=b;break}i[b>>0]=46;g=g+2|0}else g=b;while(0)}while(n!=0.0);m=s;h=(x|0)!=0&(_+g|0)<(x|0)?aa+x-m|0:Z-m+g|0;o=h+t|0;ny(a,32,q,o,I);if(!(k[a>>2]&32))Gq(w,t,a)|0;ny(a,48,q,o,I^65536);b=g-U|0;if(!(k[a>>2]&32))Gq(ha,b,a)|0;g=Y-m|0;ny(a,48,h-(b+g)|0,0,0);if(!(k[a>>2]&32))Gq(s,g,a)|0;ny(a,32,q,o,I^8192);g=(o|0)<(q|0)?q:o;break}g=(x|0)<0?6:x;if(b){b=(k[ga>>2]|0)+-28|0;k[ga>>2]=b;n=v*268435456.0}else{n=v;b=k[ga>>2]|0}F=(b|0)<0?fa:ba;h=F;do{D=~~n>>>0;k[h>>2]=D;h=h+4|0;n=(n-+(D>>>0))*1.0e9}while(n!=0.0);if((b|0)>0){m=F;s=h;while(1){o=(b|0)>29?29:b;b=s+-4|0;do if(b>>>0>=m>>>0){h=0;do{C=BZ(k[b>>2]|0,0,o|0)|0;C=y0(C|0,M|0,h|0,0)|0;D=M;B=RU(C|0,D|0,1e9,0)|0;k[b>>2]=B;h=A5(C|0,D|0,1e9,0)|0;b=b+-4|0}while(b>>>0>=m>>>0);if(!h)break;m=m+-4|0;k[m>>2]=h}while(0);h=s;while(1){if(h>>>0<=m>>>0)break;b=h+-4|0;if(!(k[b>>2]|0))h=b;else break}b=(k[ga>>2]|0)-o|0;k[ga>>2]=b;if((b|0)>0)s=h;else break}}else m=F;if((b|0)<0){x=((g+25|0)/9|0)+1|0;y=(z|0)==102;do{w=0-b|0;w=(w|0)>9?9:w;do if(m>>>0<h>>>0){o=(1<<w)+-1|0;s=1e9>>>w;t=0;b=m;do{D=k[b>>2]|0;k[b>>2]=(D>>>w)+t;t=$(D&o,s)|0;b=b+4|0}while(b>>>0<h>>>0);b=(k[m>>2]|0)==0?m+4|0:m;if(!t){m=b;b=h;break}k[h>>2]=t;m=b;b=h+4|0}else{m=(k[m>>2]|0)==0?m+4|0:m;b=h}while(0);h=y?F:m;h=(b-h>>2|0)>(x|0)?h+(x<<2)|0:b;b=(k[ga>>2]|0)+w|0;k[ga>>2]=b}while((b|0)<0)}D=F;do if(m>>>0<h>>>0){b=(D-m>>2)*9|0;s=k[m>>2]|0;if(s>>>0<10)break;else o=10;do{o=o*10|0;b=b+1|0}while(s>>>0>=o>>>0)}else b=0;while(0);A=(z|0)==103;B=(g|0)!=0;o=g-((z|0)!=102?b:0)+((B&A)<<31>>31)|0;if((o|0)<(((h-D>>2)*9|0)+-9|0)){o=o+9216|0;t=F+4+(((o|0)/9|0)+-1024<<2)|0;o=((o|0)%9|0)+1|0;if((o|0)<9){s=10;do{s=s*10|0;o=o+1|0}while((o|0)!=9)}else s=10;x=k[t>>2]|0;y=(x>>>0)%(s>>>0)|0;o=(t+4|0)==(h|0);do if(o&(y|0)==0)o=t;else{v=(((x>>>0)/(s>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;w=(s|0)/2|0;if(y>>>0<w>>>0)n=.5;else n=o&(y|0)==(w|0)?1.0:1.5;do if(G){if((i[H>>0]|0)!=45)break;n=-n;v=-v}while(0);o=x-y|0;k[t>>2]=o;if(!(v+n!=v)){o=t;break}C=o+s|0;k[t>>2]=C;if(C>>>0>999999999){o=t;while(1){b=o+-4|0;k[o>>2]=0;if(b>>>0<m>>>0){m=m+-4|0;k[m>>2]=0}C=(k[b>>2]|0)+1|0;k[b>>2]=C;if(C>>>0>999999999)o=b;else{t=b;break}}}b=(D-m>>2)*9|0;s=k[m>>2]|0;if(s>>>0<10){o=t;break}else o=10;do{o=o*10|0;b=b+1|0}while(s>>>0>=o>>>0);o=t}while(0);C=o+4|0;h=h>>>0>C>>>0?C:h}y=0-b|0;C=h;while(1){if(C>>>0<=m>>>0){z=0;break}h=C+-4|0;if(!(k[h>>2]|0))C=h;else{z=1;break}}do if(A){g=(B&1^1)+g|0;if((g|0)>(b|0)&(b|0)>-5){t=E+-1|0;g=g+-1-b|0}else{t=E+-2|0;g=g+-1|0}h=I&8;if(h|0){w=h;break}do if(z){s=k[C+-4>>2]|0;if(!s){o=9;break}if(!((s>>>0)%10|0)){o=0;h=10}else{o=0;break}do{h=h*10|0;o=o+1|0}while(!((s>>>0)%(h>>>0)|0|0))}else o=9;while(0);h=((C-D>>2)*9|0)+-9|0;if((t|32|0)==102){w=h-o|0;w=(w|0)<0?0:w;g=(g|0)<(w|0)?g:w;w=0;break}else{w=h+b-o|0;w=(w|0)<0?0:w;g=(g|0)<(w|0)?g:w;w=0;break}}else{t=E;w=I&8}while(0);x=g|w;o=(x|0)!=0&1;s=(t|32|0)==102;if(s){y=0;b=(b|0)>0?b:0}else{h=(b|0)<0?y:b;h=YC(h,((h|0)<0)<<31>>31,W)|0;if((Y-h|0)<2)do{h=h+-1|0;i[h>>0]=48}while((Y-h|0)<2);i[h+-1>>0]=(b>>31&2)+43;b=h+-2|0;i[b>>0]=t;y=b;b=Y-b|0}A=G+1+g+o+b|0;ny(a,32,q,A,I);if(!(k[a>>2]&32))Gq(H,G,a)|0;ny(a,48,q,A,I^65536);do if(s){m=m>>>0>F>>>0?F:m;h=m;do{b=YC(k[h>>2]|0,0,ca)|0;do if((h|0)==(m|0)){if((b|0)!=(ca|0))break;i[ea>>0]=48;b=ea}else{if(b>>>0<=ha>>>0)break;XG(ha|0,48,b-U|0)|0;do b=b+-1|0;while(b>>>0>ha>>>0)}while(0);if(!(k[a>>2]&32))Gq(b,da-b|0,a)|0;h=h+4|0}while(h>>>0<=F>>>0);do if(x|0){if(k[a>>2]&32|0)break;Gq(104158,1,a)|0}while(0);if((g|0)>0&h>>>0<C>>>0)while(1){b=YC(k[h>>2]|0,0,ca)|0;if(b>>>0>ha>>>0){XG(ha|0,48,b-U|0)|0;do b=b+-1|0;while(b>>>0>ha>>>0)}if(!(k[a>>2]&32))Gq(b,(g|0)>9?9:g,a)|0;h=h+4|0;b=g+-9|0;if(!((g|0)>9&h>>>0<C>>>0)){g=b;break}else g=b}ny(a,48,g+9|0,9,0)}else{t=z?C:m+4|0;if((g|0)>-1){s=(w|0)==0;o=m;do{b=YC(k[o>>2]|0,0,ca)|0;if((b|0)==(ca|0)){i[ea>>0]=48;b=ea}do if((o|0)==(m|0)){h=b+1|0;if(!(k[a>>2]&32))Gq(b,1,a)|0;if(s&(g|0)<1){b=h;break}if(k[a>>2]&32|0){b=h;break}Gq(104158,1,a)|0;b=h}else{if(b>>>0<=ha>>>0)break;XG(ha|0,48,b+V|0)|0;do b=b+-1|0;while(b>>>0>ha>>>0)}while(0);h=da-b|0;if(!(k[a>>2]&32))Gq(b,(g|0)>(h|0)?h:g,a)|0;g=g-h|0;o=o+4|0}while(o>>>0<t>>>0&(g|0)>-1)}ny(a,48,g+18|0,18,0);if(k[a>>2]&32|0)break;Gq(y,Y-y|0,a)|0}while(0);ny(a,32,q,A,I^8192);g=(A|0)<(q|0)?q:A}else{o=(E&32|0)!=0;m=n!=n|0.0!=0.0;b=m?0:G;h=b+3|0;ny(a,32,q,h,s);g=k[a>>2]|0;if(!(g&32)){Gq(H,b,a)|0;g=k[a>>2]|0}if(!(g&32))Gq(m?(o?106061:104154):o?104146:104150,3,a)|0;ny(a,32,q,h,I^8192);g=(h|0)<(q|0)?q:h}while(0);q=K;b=J;continue a}default:{w=0;t=104110;h=Q;g=x;s=I}}while(0);g:do if((L|0)==63){m=ia;h=k[m>>2]|0;m=k[m+4>>2]|0;o=s&32;if((h|0)==0&(m|0)==0){b=Q;h=0;m=0}else{b=Q;do{b=b+-1|0;i[b>>0]=l[104094+(h&15)>>0]|o;h=KZ(h|0,m|0,4)|0;m=M}while(!((h|0)==0&(m|0)==0));m=ia;h=k[m>>2]|0;m=k[m+4>>2]|0}m=(g&8|0)==0|(h|0)==0&(m|0)==0;h=m?0:2;m=m?104110:104110+(s>>4)|0;o=t;L=76}else if((L|0)==75){b=YC(g,b,Q)|0;o=x;g=I;L=76}else if((L|0)==81){L=0;I=uo(g,0,x)|0;H=(I|0)==0;b=g;w=0;t=104110;h=H?g+x|0:I;g=H?x:I-g|0}else if((L|0)==85){L=0;o=h;g=0;b=0;while(1){m=k[o>>2]|0;if(!m)break;b=e4(O,m)|0;if((b|0)<0|b>>>0>(s-g|0)>>>0)break;g=b+g|0;if(s>>>0>g>>>0)o=o+4|0;else break}if((b|0)<0){f=-1;break a}ny(a,32,q,g,I);if(!g){g=0;L=96}else{m=0;while(1){b=k[h>>2]|0;if(!b){L=96;break g}b=e4(O,b)|0;m=b+m|0;if((m|0)>(g|0)){L=96;break g}if(!(k[a>>2]&32))Gq(O,b,a)|0;if(m>>>0>=g>>>0){L=96;break}else h=h+4|0}}}while(0);if((L|0)==96){L=0;ny(a,32,q,g,I^8192);g=(q|0)>(g|0)?q:g;q=K;b=J;continue}if((L|0)==76){L=0;s=(o|0)>-1?g&-65537:g;g=ia;g=(k[g>>2]|0)!=0|(k[g+4>>2]|0)!=0;if((o|0)!=0|g){g=(g&1^1)+(R-b)|0;w=h;t=m;h=Q;g=(o|0)>(g|0)?o:g}else{b=Q;w=h;t=m;h=Q;g=0}}o=h-b|0;h=(g|0)<(o|0)?o:g;m=h+w|0;g=(q|0)<(m|0)?m:q;ny(a,32,g,m,s);if(!(k[a>>2]&32))Gq(t,w,a)|0;ny(a,48,g,m,s^65536);ny(a,48,h,o,0);if(!(k[a>>2]&32))Gq(b,o,a)|0;ny(a,32,g,m,s^8192);q=K;b=J}h:do if((L|0)==243)if(!a)if(!q)f=0;else{f=1;while(1){g=k[e+(f<<2)>>2]|0;if(!g)break;Hh(d+(f<<3)|0,g,c);f=f+1|0;if((f|0)>=10){f=1;break h}}while(1){if(k[e+(f<<2)>>2]|0){f=-1;break h}f=f+1|0;if((f|0)>=10){f=1;break}}}while(0);r=ja;return f|0}function oc(a,b,c,d,e,f,g,h,j,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;m=m|0;n=n|0;var o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;Y=r;r=r+512|0;H=Y+96|0;N=Y+104|0;X=Y+88|0;P=Y+80|0;I=Y+76|0;J=Y+504|0;K=Y+72|0;L=Y+68|0;R=Y+56|0;S=Y+44|0;T=Y+32|0;U=Y+20|0;V=Y+8|0;M=Y+4|0;Q=Y;k[H>>2]=n;k[X>>2]=N;W=X+4|0;k[W>>2]=1306;k[P>>2]=N;k[I>>2]=N+400;k[R>>2]=0;k[R+4>>2]=0;k[R+8>>2]=0;n=0;while(1){if((n|0)==3)break;k[R+(n<<2)>>2]=0;n=n+1|0}k[S>>2]=0;k[S+4>>2]=0;k[S+8>>2]=0;n=0;while(1){if((n|0)==3)break;k[S+(n<<2)>>2]=0;n=n+1|0}k[T>>2]=0;k[T+4>>2]=0;k[T+8>>2]=0;n=0;while(1){if((n|0)==3)break;k[T+(n<<2)>>2]=0;n=n+1|0}k[U>>2]=0;k[U+4>>2]=0;k[U+8>>2]=0;n=0;while(1){if((n|0)==3)break;k[U+(n<<2)>>2]=0;n=n+1|0}k[V>>2]=0;k[V+4>>2]=0;k[V+8>>2]=0;n=0;while(1){if((n|0)==3)break;k[V+(n<<2)>>2]=0;n=n+1|0}Qc(c,d,J,K,L,R,S,T,U,M);k[m>>2]=k[j>>2];D=T+8+3|0;E=T+4|0;F=U+8+3|0;G=U+4|0;v=(e&512|0)!=0;w=S+8+3|0;x=S+4|0;y=V+8+3|0;z=V+4|0;A=J+3|0;B=R+11|0;C=R+4|0;N=0;u=0;a:while(1){if(u>>>0>=4){O=231;break}n=k[a>>2]|0;do if(n){c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if((n|0)==-1){k[a>>2]=0;d=1;break}else{d=(k[a>>2]|0)==0;break}}else d=1;while(0);c=k[b>>2]|0;do if(c){n=k[c+12>>2]|0;if((n|0)==(k[c+16>>2]|0))n=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0;else n=k[n>>2]|0;if((n|0)!=-1)if(d){t=c;break}else{O=231;break a}else{k[b>>2]=0;O=31;break}}else O=31;while(0);if((O|0)==31){O=0;if(d){O=231;break}else t=0}b:do switch(i[J+u>>0]|0){case 1:{if((u|0)==3)n=N;else{n=k[a>>2]|0;c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if(!(Yb[k[(k[h>>2]|0)+12>>2]&31](h,8192,n)|0)){O=43;break a}n=k[a>>2]|0;c=n+12|0;d=k[c>>2]|0;if((d|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+40>>2]&511](n)|0;else{k[c>>2]=d+4;n=k[d>>2]|0}jw(V,n);n=t;e=t;O=45}break}case 0:{if((u|0)==3)n=N;else{n=t;e=t;O=45}break}case 3:{n=i[D>>0]|0;c=n<<24>>24<0?k[E>>2]|0:n&255;e=i[F>>0]|0;e=e<<24>>24<0?k[G>>2]|0:e&255;if((c|0)==(0-e|0))n=N;else{o=(c|0)==0;p=k[a>>2]|0;q=k[p+12>>2]|0;c=k[p+16>>2]|0;d=(q|0)==(c|0);if(o|(e|0)==0){if(d)c=Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0;else c=k[q>>2]|0;if(o){n=i[F>>0]|0;if((c|0)!=(k[(n<<24>>24<0?k[U>>2]|0:U)>>2]|0)){n=N;break b}c=k[a>>2]|0;d=c+12|0;e=k[d>>2]|0;if((e|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;n=i[F>>0]|0}else k[d>>2]=e+4;i[g>>0]=1;n=(n<<24>>24<0?k[G>>2]|0:n&255)>>>0>1?U:N;break b}n=i[D>>0]|0;if((c|0)!=(k[(n<<24>>24<0?k[T>>2]|0:T)>>2]|0)){i[g>>0]=1;n=N;break b}c=k[a>>2]|0;d=c+12|0;e=k[d>>2]|0;if((e|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;n=i[D>>0]|0}else k[d>>2]=e+4;n=(n<<24>>24<0?k[E>>2]|0:n&255)>>>0>1?T:N;break b}if(d){o=Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0;c=k[a>>2]|0;n=i[D>>0]|0;p=c;e=k[c+12>>2]|0;c=k[c+16>>2]|0}else{o=k[q>>2]|0;e=q}d=p+12|0;c=(e|0)==(c|0);if((o|0)==(k[(n<<24>>24<0?k[T>>2]|0:T)>>2]|0)){if(c){Ub[k[(k[p>>2]|0)+40>>2]&511](p)|0;n=i[D>>0]|0}else k[d>>2]=e+4;n=(n<<24>>24<0?k[E>>2]|0:n&255)>>>0>1?T:N;break b}if(c)c=Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0;else c=k[e>>2]|0;n=i[F>>0]|0;if((c|0)!=(k[(n<<24>>24<0?k[U>>2]|0:U)>>2]|0)){O=101;break a}c=k[a>>2]|0;d=c+12|0;e=k[d>>2]|0;if((e|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;n=i[F>>0]|0}else k[d>>2]=e+4;i[g>>0]=1;n=(n<<24>>24<0?k[G>>2]|0:n&255)>>>0>1?U:N}break}case 2:{if(!(u>>>0<2|(N|0)!=0)?!(v|(u|0)==2&(i[A>>0]|0)!=0):0){n=0;break b}d=i[w>>0]|0;e=k[S>>2]|0;n=d<<24>>24<0?e:S;c:do if((u|0)!=0?(l[J+(u+-1)>>0]|0)<2:0){while(1){s=d<<24>>24<0;c=n;if((c|0)==((s?e:S)+((s?k[x>>2]|0:d&255)<<2)|0))break;if(!(Yb[k[(k[h>>2]|0)+12>>2]&31](h,8192,k[c>>2]|0)|0)){O=108;break}n=c+4|0;d=i[w>>0]|0;e=k[S>>2]|0}if((O|0)==108){O=0;d=i[w>>0]|0;e=k[S>>2]|0}o=d<<24>>24<0?e:S;s=o;q=n-s>>2;p=i[y>>0]|0;c=p<<24>>24<0;p=c?k[z>>2]|0:p&255;if(q>>>0>p>>>0){q=t;c=s;o=t}else{p=(c?k[V>>2]|0:V)+(p<<2)|0;c=p+(0-q<<2)|0;while(1){if((c|0)==(p|0)){q=t;c=n;o=t;break c}if((k[c>>2]|0)!=(k[o>>2]|0)){q=t;c=s;o=t;break c}o=o+4|0;c=c+4|0}}}else{q=t;c=n;o=t}while(0);d:while(1){n=d<<24>>24<0;n=(n?e:S)+((n?k[x>>2]|0:d&255)<<2)|0;p=c;if((p|0)==(n|0))break;n=k[a>>2]|0;do if(n){c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if((n|0)==-1){k[a>>2]=0;c=1;break}else{c=(k[a>>2]|0)==0;break}}else c=1;while(0);do if(o){n=k[o+12>>2]|0;if((n|0)==(k[o+16>>2]|0))n=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else n=k[n>>2]|0;if((n|0)!=-1)if(c^(q|0)==0){n=q;o=q;break}else{n=p;break d}else{k[b>>2]=0;n=0;O=129;break}}else{n=q;O=129}while(0);if((O|0)==129){O=0;if(c){n=p;break}else o=0}c=k[a>>2]|0;d=k[c+12>>2]|0;if((d|0)==(k[c+16>>2]|0))c=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0;else c=k[d>>2]|0;if((c|0)!=(k[p>>2]|0)){n=p;break}c=k[a>>2]|0;d=c+12|0;e=k[d>>2]|0;if((e|0)==(k[c+16>>2]|0))Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;else k[d>>2]=e+4;q=n;c=p+4|0;d=i[w>>0]|0;e=k[S>>2]|0}if(v?(t=i[w>>0]|0,s=t<<24>>24<0,(n|0)!=((s?k[S>>2]|0:S)+((s?k[x>>2]|0:t&255)<<2)|0)):0){O=141;break a}else n=N;break}case 4:{q=0;n=t;e=t;e:while(1){c=k[a>>2]|0;do if(c){d=k[c+12>>2]|0;if((d|0)==(k[c+16>>2]|0))c=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0;else c=k[d>>2]|0;if((c|0)==-1){k[a>>2]=0;d=1;break}else{d=(k[a>>2]|0)==0;break}}else d=1;while(0);do if(e){c=k[e+12>>2]|0;if((c|0)==(k[e+16>>2]|0))c=Ub[k[(k[e>>2]|0)+36>>2]&511](e)|0;else c=k[c>>2]|0;if((c|0)!=-1)if(d^(n|0)==0){o=n;p=n;break}else{e=n;break e}else{k[b>>2]=0;n=0;O=155;break}}else O=155;while(0);if((O|0)==155){O=0;if(d){e=n;break}else{o=n;p=0}}n=k[a>>2]|0;c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))c=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else c=k[c>>2]|0;if(Yb[k[(k[h>>2]|0)+12>>2]&31](h,2048,c)|0){n=k[m>>2]|0;if((n|0)==(k[H>>2]|0)){Nz(j,m,H);n=k[m>>2]|0}k[m>>2]=n+4;k[n>>2]=c;n=q+1|0}else{t=i[B>>0]|0;if(!((c|0)==(k[L>>2]|0)&(q|0?((t<<24>>24<0?k[C>>2]|0:t&255)|0)!=0:0))){e=o;break}n=k[P>>2]|0;if((n|0)==(k[I>>2]|0)){Nz(X,P,I);n=k[P>>2]|0}k[P>>2]=n+4;k[n>>2]=q;n=0}c=k[a>>2]|0;d=c+12|0;e=k[d>>2]|0;if((e|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;q=n;n=o;e=p;continue}else{k[d>>2]=e+4;q=n;n=o;e=p;continue}}n=k[P>>2]|0;if(q|0?(k[X>>2]|0)!=(n|0):0){if((n|0)==(k[I>>2]|0)){Nz(X,P,I);n=k[P>>2]|0}k[P>>2]=n+4;k[n>>2]=q}f:do if((k[M>>2]|0)>0){n=k[a>>2]|0;do if(n){c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if((n|0)==-1){k[a>>2]=0;c=1;break}else{c=(k[a>>2]|0)==0;break}}else c=1;while(0);do if(e){n=k[e+12>>2]|0;if((n|0)==(k[e+16>>2]|0))n=Ub[k[(k[e>>2]|0)+36>>2]&511](e)|0;else n=k[n>>2]|0;if((n|0)!=-1)if(c)break;else{O=195;break a}else{k[b>>2]=0;O=189;break}}else O=189;while(0);if((O|0)==189){O=0;if(c){O=195;break a}else e=0}n=k[a>>2]|0;c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if((n|0)!=(k[K>>2]|0)){O=195;break a}n=k[a>>2]|0;c=n+12|0;d=k[c>>2]|0;if((d|0)==(k[n+16>>2]|0)){Ub[k[(k[n>>2]|0)+40>>2]&511](n)|0;n=e}else{k[c>>2]=d+4;n=e}while(1){if((k[M>>2]|0)<=0)break f;c=k[a>>2]|0;do if(c){d=k[c+12>>2]|0;if((d|0)==(k[c+16>>2]|0))c=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0;else c=k[d>>2]|0;if((c|0)==-1){k[a>>2]=0;d=1;break}else{d=(k[a>>2]|0)==0;break}}else d=1;while(0);do if(e){c=k[e+12>>2]|0;if((c|0)==(k[e+16>>2]|0))c=Ub[k[(k[e>>2]|0)+36>>2]&511](e)|0;else c=k[c>>2]|0;if((c|0)!=-1)if(d^(n|0)==0){o=n;e=n;break}else{O=219;break a}else{k[b>>2]=0;n=0;O=213;break}}else O=213;while(0);if((O|0)==213){O=0;if(d){O=219;break a}else{o=n;e=0}}n=k[a>>2]|0;c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if(!(Yb[k[(k[h>>2]|0)+12>>2]&31](h,2048,n)|0)){O=219;break a}if((k[m>>2]|0)==(k[H>>2]|0))Nz(j,m,H);n=k[a>>2]|0;c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;c=k[m>>2]|0;k[m>>2]=c+4;k[c>>2]=n;k[M>>2]=(k[M>>2]|0)+-1;n=k[a>>2]|0;c=n+12|0;d=k[c>>2]|0;if((d|0)==(k[n+16>>2]|0)){Ub[k[(k[n>>2]|0)+40>>2]&511](n)|0;n=o;continue}else{k[c>>2]=d+4;n=o;continue}}}while(0);if((k[m>>2]|0)==(k[j>>2]|0)){O=229;break a}else n=N;break}default:n=N}while(0);g:do if((O|0)==45)while(1){O=0;c=k[a>>2]|0;do if(c){d=k[c+12>>2]|0;if((d|0)==(k[c+16>>2]|0))c=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0;else c=k[d>>2]|0;if((c|0)==-1){k[a>>2]=0;d=1;break}else{d=(k[a>>2]|0)==0;break}}else d=1;while(0);do if(e){c=k[e+12>>2]|0;if((c|0)==(k[e+16>>2]|0))c=Ub[k[(k[e>>2]|0)+36>>2]&511](e)|0;else c=k[c>>2]|0;if((c|0)!=-1)if(d^(n|0)==0){o=n;e=n;break}else{n=N;break g}else{k[b>>2]=0;n=0;O=58;break}}else O=58;while(0);if((O|0)==58){O=0;if(d){n=N;break g}else{o=n;e=0}}n=k[a>>2]|0;c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if(!(Yb[k[(k[h>>2]|0)+12>>2]&31](h,8192,n)|0)){n=N;break g}n=k[a>>2]|0;c=n+12|0;d=k[c>>2]|0;if((d|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+40>>2]&511](n)|0;else{k[c>>2]=d+4;n=k[d>>2]|0}jw(V,n);n=o;O=45}while(0);N=n;u=u+1|0}h:do if((O|0)==43){k[f>>2]=k[f>>2]|4;c=0}else if((O|0)==101){k[f>>2]=k[f>>2]|4;c=0}else if((O|0)==141){k[f>>2]=k[f>>2]|4;c=0}else if((O|0)==195){k[f>>2]=k[f>>2]|4;c=0}else if((O|0)==219){k[f>>2]=k[f>>2]|4;c=0}else if((O|0)==229){k[f>>2]=k[f>>2]|4;c=0}else if((O|0)==231){i:do if(N|0){o=N+8+3|0;p=N+4|0;e=1;j:while(1){n=i[o>>0]|0;if(n<<24>>24<0)n=k[p>>2]|0;else n=n&255;if(e>>>0>=n>>>0)break i;n=k[a>>2]|0;do if(n){c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if((n|0)==-1){k[a>>2]=0;d=1;break}else{d=(k[a>>2]|0)==0;break}}else d=1;while(0);n=k[b>>2]|0;do if(n){c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if((n|0)!=-1)if(d)break;else break j;else{k[b>>2]=0;O=250;break}}else O=250;while(0);if((O|0)==250?(O=0,d):0)break;n=k[a>>2]|0;c=k[n+12>>2]|0;if((c|0)==(k[n+16>>2]|0))n=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else n=k[c>>2]|0;if((i[o>>0]|0)<0)c=k[N>>2]|0;else c=N;if((n|0)!=(k[c+(e<<2)>>2]|0))break;n=e+1|0;c=k[a>>2]|0;d=c+12|0;e=k[d>>2]|0;if((e|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;e=n;continue}else{k[d>>2]=e+4;e=n;continue}}k[f>>2]=k[f>>2]|4;c=0;break h}while(0);c=k[X>>2]|0;n=k[P>>2]|0;if((c|0)!=(n|0)){k[Q>>2]=0;ep(R,c,n,Q);if(!(k[Q>>2]|0)){c=1;break}else{k[f>>2]=k[f>>2]|4;c=0;break}}else c=1}while(0);_0(V);_0(U);_0(T);_0(S);p1(R);n=k[X>>2]|0;k[X>>2]=0;if(n|0)Rb[k[W>>2]&2047](n);r=Y;return c|0}function pc(a,b,c,d,e,f,g,h,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0;_=r;r=r+512|0;J=_+88|0;P=_+96|0;Z=_+80|0;R=_+72|0;K=_+68|0;L=_+500|0;M=_+497|0;N=_+496|0;T=_+56|0;U=_+44|0;V=_+32|0;W=_+20|0;X=_+8|0;O=_+4|0;S=_;k[J>>2]=o;k[Z>>2]=P;Y=Z+4|0;k[Y>>2]=1306;k[R>>2]=P;k[K>>2]=P+400;k[T>>2]=0;k[T+4>>2]=0;k[T+8>>2]=0;o=0;while(1){if((o|0)==3)break;k[T+(o<<2)>>2]=0;o=o+1|0}k[U>>2]=0;k[U+4>>2]=0;k[U+8>>2]=0;o=0;while(1){if((o|0)==3)break;k[U+(o<<2)>>2]=0;o=o+1|0}k[V>>2]=0;k[V+4>>2]=0;k[V+8>>2]=0;o=0;while(1){if((o|0)==3)break;k[V+(o<<2)>>2]=0;o=o+1|0}k[W>>2]=0;k[W+4>>2]=0;k[W+8>>2]=0;o=0;while(1){if((o|0)==3)break;k[W+(o<<2)>>2]=0;o=o+1|0}k[X>>2]=0;k[X+4>>2]=0;k[X+8>>2]=0;o=0;while(1){if((o|0)==3)break;k[X+(o<<2)>>2]=0;o=o+1|0}Pc(c,d,L,M,N,T,U,V,W,O);k[n>>2]=k[m>>2];E=h+8|0;F=V+11|0;G=V+4|0;H=W+11|0;I=W+4|0;w=(e&512|0)!=0;x=U+11|0;y=U+4|0;z=X+11|0;A=X+4|0;B=L+3|0;C=T+11|0;D=T+4|0;P=0;v=0;a:while(1){if(v>>>0>=4){Q=217;break}o=k[a>>2]|0;do if(o){if((k[o+12>>2]|0)==(k[o+16>>2]|0))if((Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0)==-1){k[a>>2]=0;o=0;break}else{o=k[a>>2]|0;break}}else o=0;while(0);o=(o|0)==0;c=k[b>>2]|0;do if(c){if((k[c+12>>2]|0)!=(k[c+16>>2]|0))if(o)break;else{Q=217;break a}if((Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0)!=-1)if(o)break;else{Q=217;break a}else{k[b>>2]=0;Q=28;break}}else Q=28;while(0);if((Q|0)==28){Q=0;if(o){Q=217;break}else c=0}b:do switch(i[L+v>>0]|0){case 1:{if((v|0)==3)o=P;else{o=k[a>>2]|0;d=k[o+12>>2]|0;if((d|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else o=l[d>>0]|0;if((o&255)<<24>>24<=-1){Q=41;break a}if(!(j[(k[E>>2]|0)+(o<<24>>24<<1)>>1]&8192)){Q=41;break a}o=k[a>>2]|0;d=o+12|0;h=k[d>>2]|0;if((h|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+40>>2]&511](o)|0;else{k[d>>2]=h+1;o=l[h>>0]|0}Jx(X,o&255);o=c;d=c;Q=43}break}case 0:{if((v|0)==3)o=P;else{o=c;d=c;Q=43}break}case 3:{o=i[F>>0]|0;c=o<<24>>24<0?k[G>>2]|0:o&255;h=i[H>>0]|0;h=h<<24>>24<0?k[I>>2]|0:h&255;if((c|0)==(0-h|0))o=P;else{e=(c|0)==0;p=k[a>>2]|0;q=k[p+12>>2]|0;c=k[p+16>>2]|0;d=(q|0)==(c|0);if(e|(h|0)==0){if(d)o=Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0;else o=l[q>>0]|0;c=o&255;if(e){o=i[H>>0]|0;if(c<<24>>24!=(i[(o<<24>>24<0?k[W>>2]|0:W)>>0]|0)){o=P;break b}c=k[a>>2]|0;d=c+12|0;h=k[d>>2]|0;if((h|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;o=i[H>>0]|0}else k[d>>2]=h+1;i[g>>0]=1;o=(o<<24>>24<0?k[I>>2]|0:o&255)>>>0>1?W:P;break b}o=i[F>>0]|0;if(c<<24>>24!=(i[(o<<24>>24<0?k[V>>2]|0:V)>>0]|0)){i[g>>0]=1;o=P;break b}c=k[a>>2]|0;d=c+12|0;h=k[d>>2]|0;if((h|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;o=i[F>>0]|0}else k[d>>2]=h+1;o=(o<<24>>24<0?k[G>>2]|0:o&255)>>>0>1?V:P;break b}if(d){e=Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0;c=k[a>>2]|0;o=i[F>>0]|0;p=c;h=k[c+12>>2]|0;c=k[c+16>>2]|0}else{e=l[q>>0]|0;h=q}d=p+12|0;c=(h|0)==(c|0);if((e&255)<<24>>24==(i[(o<<24>>24<0?k[V>>2]|0:V)>>0]|0)){if(c){Ub[k[(k[p>>2]|0)+40>>2]&511](p)|0;o=i[F>>0]|0}else k[d>>2]=h+1;o=(o<<24>>24<0?k[G>>2]|0:o&255)>>>0>1?V:P;break b}if(c)c=Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0;else c=l[h>>0]|0;o=i[H>>0]|0;if((c&255)<<24>>24!=(i[(o<<24>>24<0?k[W>>2]|0:W)>>0]|0)){Q=97;break a}c=k[a>>2]|0;d=c+12|0;h=k[d>>2]|0;if((h|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;o=i[H>>0]|0}else k[d>>2]=h+1;i[g>>0]=1;o=(o<<24>>24<0?k[I>>2]|0:o&255)>>>0>1?W:P}break}case 2:{if(!(v>>>0<2|(P|0)!=0)?!(w|(v|0)==2&(i[B>>0]|0)!=0):0){o=0;break b}d=i[x>>0]|0;o=d<<24>>24<0;u=k[U>>2]|0;h=o?u:U;t=h;c:do if((v|0)!=0?(l[L+(v+-1)>>0]|0)<2:0){o=h+(o?k[y>>2]|0:d&255)|0;q=t;while(1){e=q;if((e|0)==(o|0))break;p=i[e>>0]|0;if(p<<24>>24<=-1)break;if(!(j[(k[E>>2]|0)+(p<<24>>24<<1)>>1]&8192))break;q=e+1|0}p=q-t|0;e=i[z>>0]|0;o=e<<24>>24<0;e=o?k[A>>2]|0:e&255;if(p>>>0<=e>>>0){e=(o?k[X>>2]|0:X)+e|0;o=e+(0-p)|0;while(1){if((o|0)==(e|0)){s=c;h=q;o=u;e=c;break c}if((i[o>>0]|0)!=(i[h>>0]|0)){s=c;h=t;o=u;e=c;break c}h=h+1|0;o=o+1|0}}else{s=c;h=t;o=u;e=c}}else{s=c;h=t;o=u;e=c}while(0);d:while(1){p=d<<24>>24<0;o=(p?o:U)+(p?k[y>>2]|0:d&255)|0;p=h;if((p|0)==(o|0))break;o=k[a>>2]|0;do if(o){if((k[o+12>>2]|0)==(k[o+16>>2]|0))if((Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0)==-1){k[a>>2]=0;o=0;break}else{o=k[a>>2]|0;break}}else o=0;while(0);c=(o|0)==0;do if(e){if((k[e+12>>2]|0)!=(k[e+16>>2]|0))if(c){o=s;break}else{o=p;break d}if((Ub[k[(k[e>>2]|0)+36>>2]&511](e)|0)!=-1)if(c^(s|0)==0){o=s;e=s;break}else{o=p;break d}else{k[b>>2]=0;o=0;Q=123;break}}else{o=s;Q=123}while(0);if((Q|0)==123){Q=0;if(c){o=p;break}else e=0}c=k[a>>2]|0;d=k[c+12>>2]|0;if((d|0)==(k[c+16>>2]|0))c=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0;else c=l[d>>0]|0;if((c&255)<<24>>24!=(i[p>>0]|0)){o=p;break}c=k[a>>2]|0;d=c+12|0;h=k[d>>2]|0;if((h|0)==(k[c+16>>2]|0))Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;else k[d>>2]=h+1;s=o;h=p+1|0;d=i[x>>0]|0;o=k[U>>2]|0}if(w?(u=i[x>>0]|0,t=u<<24>>24<0,(o|0)!=((t?k[U>>2]|0:U)+(t?k[y>>2]|0:u&255)|0)):0){Q=135;break a}else o=P;break}case 4:{h=0;o=c;d=c;e:while(1){c=k[a>>2]|0;do if(c){if((k[c+12>>2]|0)==(k[c+16>>2]|0))if((Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0)==-1){k[a>>2]=0;c=0;break}else{c=k[a>>2]|0;break}}else c=0;while(0);c=(c|0)==0;do if(d){if((k[d+12>>2]|0)!=(k[d+16>>2]|0))if(c){p=o;e=d;break}else{c=o;break e}if((Ub[k[(k[d>>2]|0)+36>>2]&511](d)|0)!=-1)if(c^(o|0)==0){p=o;e=o;break}else{c=o;break e}else{k[b>>2]=0;o=0;Q=146;break}}else Q=146;while(0);if((Q|0)==146){Q=0;if(c){c=o;break}else{p=o;e=0}}o=k[a>>2]|0;c=k[o+12>>2]|0;if((c|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else o=l[c>>0]|0;c=o&255;if(c<<24>>24>-1?(j[(k[E>>2]|0)+(o<<24>>24<<1)>>1]&2048)!=0:0){o=k[n>>2]|0;if((o|0)==(k[J>>2]|0)){nA(m,n,J);o=k[n>>2]|0}k[n>>2]=o+1;i[o>>0]=c;o=h+1|0}else{u=i[C>>0]|0;if(!(c<<24>>24==(i[N>>0]|0)&(h|0?((u<<24>>24<0?k[D>>2]|0:u&255)|0)!=0:0))){c=p;break}o=k[R>>2]|0;if((o|0)==(k[K>>2]|0)){Nz(Z,R,K);o=k[R>>2]|0}k[R>>2]=o+4;k[o>>2]=h;o=0}c=k[a>>2]|0;d=c+12|0;h=k[d>>2]|0;if((h|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;h=o;o=p;d=e;continue}else{k[d>>2]=h+1;h=o;o=p;d=e;continue}}o=k[R>>2]|0;if(h|0?(k[Z>>2]|0)!=(o|0):0){if((o|0)==(k[K>>2]|0)){Nz(Z,R,K);o=k[R>>2]|0}k[R>>2]=o+4;k[o>>2]=h}f:do if((k[O>>2]|0)>0){o=k[a>>2]|0;do if(o){if((k[o+12>>2]|0)==(k[o+16>>2]|0))if((Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0)==-1){k[a>>2]=0;o=0;break}else{o=k[a>>2]|0;break}}else o=0;while(0);o=(o|0)==0;do if(c){if((k[c+12>>2]|0)==(k[c+16>>2]|0)?(Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0)==-1:0){k[b>>2]=0;Q=178;break}if(o)h=c;else{Q=183;break a}}else Q=178;while(0);if((Q|0)==178){Q=0;if(o){Q=183;break a}else h=0}o=k[a>>2]|0;c=k[o+12>>2]|0;if((c|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else o=l[c>>0]|0;if((o&255)<<24>>24!=(i[M>>0]|0)){Q=183;break a}o=k[a>>2]|0;c=o+12|0;d=k[c>>2]|0;if((d|0)==(k[o+16>>2]|0)){Ub[k[(k[o>>2]|0)+40>>2]&511](o)|0;o=h;d=h}else{k[c>>2]=d+1;o=h;d=h}while(1){if((k[O>>2]|0)<=0)break f;c=k[a>>2]|0;do if(c){if((k[c+12>>2]|0)==(k[c+16>>2]|0))if((Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0)==-1){k[a>>2]=0;c=0;break}else{c=k[a>>2]|0;break}}else c=0;while(0);c=(c|0)==0;do if(d){if((k[d+12>>2]|0)!=(k[d+16>>2]|0))if(c){e=o;h=d;break}else{Q=205;break a}if((Ub[k[(k[d>>2]|0)+36>>2]&511](d)|0)!=-1)if(c^(o|0)==0){e=o;h=o;break}else{Q=205;break a}else{k[b>>2]=0;o=0;Q=198;break}}else Q=198;while(0);if((Q|0)==198){Q=0;if(c){Q=205;break a}else{e=o;h=0}}o=k[a>>2]|0;c=k[o+12>>2]|0;if((c|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else o=l[c>>0]|0;if((o&255)<<24>>24<=-1){Q=205;break a}if(!(j[(k[E>>2]|0)+(o<<24>>24<<1)>>1]&2048)){Q=205;break a}if((k[n>>2]|0)==(k[J>>2]|0))nA(m,n,J);o=k[a>>2]|0;c=k[o+12>>2]|0;if((c|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else o=l[c>>0]|0;c=k[n>>2]|0;k[n>>2]=c+1;i[c>>0]=o;k[O>>2]=(k[O>>2]|0)+-1;o=k[a>>2]|0;c=o+12|0;d=k[c>>2]|0;if((d|0)==(k[o+16>>2]|0)){Ub[k[(k[o>>2]|0)+40>>2]&511](o)|0;o=e;d=h;continue}else{k[c>>2]=d+1;o=e;d=h;continue}}}while(0);if((k[n>>2]|0)==(k[m>>2]|0)){Q=215;break a}else o=P;break}default:o=P}while(0);g:do if((Q|0)==43)while(1){Q=0;c=k[a>>2]|0;do if(c){if((k[c+12>>2]|0)==(k[c+16>>2]|0))if((Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0)==-1){k[a>>2]=0;c=0;break}else{c=k[a>>2]|0;break}}else c=0;while(0);c=(c|0)==0;do if(d){if((k[d+12>>2]|0)!=(k[d+16>>2]|0))if(c){e=o;h=d;break}else{o=P;break g}if((Ub[k[(k[d>>2]|0)+36>>2]&511](d)|0)!=-1)if(c^(o|0)==0){e=o;h=o;break}else{o=P;break g}else{k[b>>2]=0;o=0;Q=53;break}}else Q=53;while(0);if((Q|0)==53){Q=0;if(c){o=P;break g}else{e=o;h=0}}o=k[a>>2]|0;c=k[o+12>>2]|0;if((c|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else o=l[c>>0]|0;if((o&255)<<24>>24<=-1){o=P;break g}if(!(j[(k[E>>2]|0)+(o<<24>>24<<1)>>1]&8192)){o=P;break g}o=k[a>>2]|0;c=o+12|0;d=k[c>>2]|0;if((d|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+40>>2]&511](o)|0;else{k[c>>2]=d+1;o=l[d>>0]|0}Jx(X,o&255);o=e;d=h;Q=43}while(0);P=o;v=v+1|0}h:do if((Q|0)==41){k[f>>2]=k[f>>2]|4;c=0}else if((Q|0)==97){k[f>>2]=k[f>>2]|4;c=0}else if((Q|0)==135){k[f>>2]=k[f>>2]|4;c=0}else if((Q|0)==183){k[f>>2]=k[f>>2]|4;c=0}else if((Q|0)==205){k[f>>2]=k[f>>2]|4;c=0}else if((Q|0)==215){k[f>>2]=k[f>>2]|4;c=0}else if((Q|0)==217){i:do if(P|0){e=P+11|0;p=P+4|0;d=1;j:while(1){o=i[e>>0]|0;if(o<<24>>24<0)o=k[p>>2]|0;else o=o&255;if(d>>>0>=o>>>0)break i;o=k[a>>2]|0;do if(o){if((k[o+12>>2]|0)==(k[o+16>>2]|0))if((Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0)==-1){k[a>>2]=0;o=0;break}else{o=k[a>>2]|0;break}}else o=0;while(0);o=(o|0)==0;c=k[b>>2]|0;do if(c){if((k[c+12>>2]|0)==(k[c+16>>2]|0)?(Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0)==-1:0){k[b>>2]=0;Q=233;break}if(!o)break j}else Q=233;while(0);if((Q|0)==233?(Q=0,o):0)break;o=k[a>>2]|0;c=k[o+12>>2]|0;if((c|0)==(k[o+16>>2]|0))o=Ub[k[(k[o>>2]|0)+36>>2]&511](o)|0;else o=l[c>>0]|0;if((i[e>>0]|0)<0)c=k[P>>2]|0;else c=P;if((o&255)<<24>>24!=(i[c+d>>0]|0))break;o=d+1|0;c=k[a>>2]|0;d=c+12|0;h=k[d>>2]|0;if((h|0)==(k[c+16>>2]|0)){Ub[k[(k[c>>2]|0)+40>>2]&511](c)|0;d=o;continue}else{k[d>>2]=h+1;d=o;continue}}k[f>>2]=k[f>>2]|4;c=0;break h}while(0);c=k[Z>>2]|0;o=k[R>>2]|0;if((c|0)!=(o|0)){k[S>>2]=0;ep(T,c,o,S);if(!(k[S>>2]|0)){c=1;break}else{k[f>>2]=k[f>>2]|4;c=0;break}}else c=1}while(0);p1(X);p1(W);p1(V);p1(U);p1(T);o=k[Z>>2]|0;k[Z>>2]=0;if(o|0)Rb[k[Y>>2]&2047](o);r=_;return c|0}function qc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,m=0.0,n=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,N=0,O=0,P=0,Q=0,R=0;R=r;r=r+304|0;J=R+16|0;K=R+8|0;L=R+33|0;N=R;O=R+32|0;if((k[a+76>>2]|0)>-1)Q=Eba(a)|0;else Q=0;f=i[b>>0]|0;a:do if(f<<24>>24){z=a+4|0;A=a+100|0;B=a+108|0;C=a+8|0;D=L+10|0;E=L+33|0;y=K+4|0;F=L+46|0;G=L+94|0;H=L+1|0;I=L+1|0;n=b;v=0;b=0;e=0;d=0;b:while(1){c:do if(!(zaa(f&255)|0)){f=f<<24>>24==37;d:do if(f){g=n+1|0;h=i[g>>0]|0;e:do switch(h<<24>>24){case 37:break d;case 42:{x=0;g=n+2|0;break}default:{f=(h&255)+-48|0;if(f>>>0<10?(i[n+2>>0]|0)==36:0){k[J>>2]=k[c>>2];while(1){x=(k[J>>2]|0)+(4-1)&~(4-1);g=k[x>>2]|0;k[J>>2]=x+4;if(f>>>0>1)f=f+-1|0;else break}x=g;g=n+3|0;break e}w=(k[c>>2]|0)+(4-1)&~(4-1);x=k[w>>2]|0;k[c>>2]=w+4}}while(0);n=i[g>>0]|0;f=n&255;if((f+-48|0)>>>0<10){h=0;do{h=(h*10|0)+-48+f|0;g=g+1|0;n=i[g>>0]|0;f=n&255}while((f+-48|0)>>>0<10)}else h=0;if(n<<24>>24==109){n=g+1|0;f=(x|0)!=0&1;e=0;d=0;g=n;n=i[n>>0]|0}else f=0;q=g+1|0;switch(n<<24>>24){case 104:{w=(i[q>>0]|0)==104;n=w?-2:-1;g=w?g+2|0:q;break}case 108:{w=(i[q>>0]|0)==108;n=w?3:1;g=w?g+2|0:q;break}case 106:{n=3;g=q;break}case 116:case 122:{n=1;g=q;break}case 76:{n=2;g=q;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{n=0;break}default:{P=154;break b}}t=l[g>>0]|0;u=(t&47|0)==3;t=u?t|32:t;u=u?1:n;s=t&255;switch(s<<24>>24){case 99:{h=(h|0)<1?1:h;break}case 91:break;case 110:{if(!x){h=v;break c}switch(u|0){case -2:{i[x>>0]=v;h=v;break c}case -1:{j[x>>1]=v;h=v;break c}case 0:{k[x>>2]=v;h=v;break c}case 1:{k[x>>2]=v;h=v;break c}case 3:{h=x;k[h>>2]=v;k[h+4>>2]=((v|0)<0)<<31>>31;h=v;break c}default:{h=v;break c}}}default:{MR(a,0);do{n=k[z>>2]|0;if(n>>>0<(k[A>>2]|0)>>>0){k[z>>2]=n+1;n=l[n>>0]|0}else n=ys(a)|0}while((zaa(n)|0)!=0);if(!(k[A>>2]|0))n=k[z>>2]|0;else{n=(k[z>>2]|0)+-1|0;k[z>>2]=n}v=(k[B>>2]|0)+v+n-(k[C>>2]|0)|0}}MR(a,h);n=k[z>>2]|0;q=k[A>>2]|0;if(n>>>0<q>>>0)k[z>>2]=n+1;else{if((ys(a)|0)<0){P=154;break b}q=k[A>>2]|0}if(q|0)k[z>>2]=(k[z>>2]|0)+-1;f:do switch(s<<24>>24){case 91:case 99:case 115:{w=(t|0)==99;g:do if((t|16|0)==115){XG(H|0,-1,256)|0;i[L>>0]=0;if((t|0)==115){i[E>>0]=0;i[D>>0]=0;i[D+1>>0]=0;i[D+2>>0]=0;i[D+3>>0]=0;i[D+4>>0]=0}}else{s=g+1|0;t=(i[s>>0]|0)==94;n=t&1;g=t?g+2|0:s;XG(I|0,t&1|0,256)|0;i[L>>0]=0;switch(i[g>>0]|0){case 45:{t=(n^1)&255;i[F>>0]=t;g=g+1|0;break}case 93:{t=(n^1)&255;i[G>>0]=t;g=g+1|0;break}default:t=(n^1)&255}while(1){n=i[g>>0]|0;h:do switch(n<<24>>24){case 0:{P=154;break b}case 93:break g;case 45:{s=g+1|0;n=i[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}g=i[g+-1>>0]|0;if((g&255)<(n&255)){g=g&255;do{g=g+1|0;i[L+g>>0]=t;n=i[s>>0]|0}while((g|0)<(n&255|0));g=s}else g=s;break}default:{}}while(0);i[L+((n&255)+1)>>0]=t;g=g+1|0}}while(0);n=w?h+1|0:31;t=(u|0)==1;u=(f|0)!=0;i:do if(t){if(u){e=lc(n<<2)|0;if(!e){d=0;P=154;break b}}else e=x;k[K>>2]=0;k[y>>2]=0;s=n;d=0;j:while(1){q=(e|0)==0;do{k:while(1){n=k[z>>2]|0;if(n>>>0<(k[A>>2]|0)>>>0){k[z>>2]=n+1;n=l[n>>0]|0}else n=ys(a)|0;if(!(i[L+(n+1)>>0]|0))break j;i[O>>0]=n;switch(gl(N,O,1,K)|0){case -1:{d=0;P=154;break b}case -2:break;default:break k}}if(!q){k[e+(d<<2)>>2]=k[N>>2];d=d+1|0}}while(!(u&(d|0)==(s|0)));d=s<<1|1;n=OD(e,d<<2)|0;if(!n){d=0;P=154;break b}else{q=s;s=d;e=n;d=q}}if(!(Q5(K)|0)){d=0;P=154;break b}else{q=d;d=0}}else{if(u){d=lc(n)|0;if(!d){d=0;e=0;P=154;break b}else{q=n;e=0}while(1){do{n=k[z>>2]|0;if(n>>>0<(k[A>>2]|0)>>>0){k[z>>2]=n+1;n=l[n>>0]|0}else n=ys(a)|0;if(!(i[L+(n+1)>>0]|0)){q=e;e=0;break i}i[d+e>>0]=n;e=e+1|0}while((e|0)!=(q|0));e=q<<1|1;n=OD(d,e)|0;if(!n){e=0;P=154;break b}else{s=q;q=e;d=n;e=s}}}if(!x){e=q;while(1){d=k[z>>2]|0;if(d>>>0<e>>>0){k[z>>2]=d+1;d=l[d>>0]|0}else d=ys(a)|0;if(!(i[L+(d+1)>>0]|0)){q=0;d=0;e=0;break i}e=k[A>>2]|0}}else{n=0;e=q;while(1){d=k[z>>2]|0;if(d>>>0<e>>>0){k[z>>2]=d+1;d=l[d>>0]|0}else d=ys(a)|0;if(!(i[L+(d+1)>>0]|0)){q=n;d=x;e=0;break i}i[x+n>>0]=d;n=n+1|0;e=k[A>>2]|0}}}while(0);if(!(k[A>>2]|0))n=k[z>>2]|0;else{n=(k[z>>2]|0)+-1|0;k[z>>2]=n}n=n-(k[C>>2]|0)+(k[B>>2]|0)|0;if(!n)break b;if(!((n|0)==(h|0)|w^1))break b;do if(u)if(t){k[x>>2]=e;break}else{k[x>>2]=d;break}while(0);if(!w){if(e|0)k[e+(q<<2)>>2]=0;if(!d){d=0;break f}i[d+q>>0]=0}break}case 120:case 88:case 112:{h=16;P=136;break}case 111:{h=8;P=136;break}case 117:case 100:{h=10;P=136;break}case 105:{h=0;P=136;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{m=+mc(a,u,0);if((k[B>>2]|0)==((k[C>>2]|0)-(k[z>>2]|0)|0))break b;if(x)switch(u|0){case 0:{o[x>>2]=m;break f}case 1:{p[x>>3]=m;break f}case 2:{p[x>>3]=m;break f}default:break f}break}default:{}}while(0);l:do if((P|0)==136){P=0;h=Ec(a,h,0,-1,-1)|0;if((k[B>>2]|0)==((k[C>>2]|0)-(k[z>>2]|0)|0))break b;if((x|0)!=0&(t|0)==112){k[x>>2]=h;break}if(x)switch(u|0){case -2:{i[x>>0]=h;break l}case -1:{j[x>>1]=h;break l}case 0:{k[x>>2]=h;break l}case 1:{k[x>>2]=h;break l}case 3:{w=x;k[w>>2]=h;k[w+4>>2]=M;break l}default:break l}}while(0);b=((x|0)!=0&1)+b|0;h=(k[B>>2]|0)+v+(k[z>>2]|0)-(k[C>>2]|0)|0;break c}while(0);g=n+(f&1)|0;MR(a,0);f=k[z>>2]|0;if(f>>>0<(k[A>>2]|0)>>>0){k[z>>2]=f+1;f=l[f>>0]|0}else f=ys(a)|0;if((f|0)!=(l[g>>0]|0)){P=22;break b}h=v+1|0}else{g=n;while(1){f=g+1|0;if(!(zaa(l[f>>0]|0)|0))break;else g=f}MR(a,0);do{f=k[z>>2]|0;if(f>>>0<(k[A>>2]|0)>>>0){k[z>>2]=f+1;f=l[f>>0]|0}else f=ys(a)|0}while((zaa(f)|0)!=0);if(!(k[A>>2]|0))f=k[z>>2]|0;else{f=(k[z>>2]|0)+-1|0;k[z>>2]=f}h=(k[B>>2]|0)+v+f-(k[C>>2]|0)|0}while(0);n=g+1|0;f=i[n>>0]|0;if(!(f<<24>>24))break a;else v=h}if((P|0)==22){if(k[A>>2]|0)k[z>>2]=(k[z>>2]|0)+-1;if((b|0)!=0|(f|0)>-1)break;else{f=0;b=e;P=155}}else if((P|0)==154)if(!b){b=e;P=155}if((P|0)==155){e=b;b=-1}if(f){wc(d);wc(e)}}else b=0;while(0);if(Q|0)Dba(a);r=R;return b|0}function rc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=r;r=r+1424|0;x=G+1404|0;p=G+1248|0;q=G+1092|0;s=G+936|0;y=G+780|0;z=G+624|0;A=G+468|0;B=G+312|0;D=G+156|0;E=G;m=b+8|0;F=a+4|0;Ki(x,k[(k[F>>2]|0)+2004>>2]|0);n=m+11|0;d=i[n>>0]|0;f=d<<24>>24<0;o=b+12|0;d=d&255;g=f?k[o>>2]|0:d;w=i[x+11>>0]|0;c=w<<24>>24<0;a:do if((g|0)==((c?k[x+4>>2]|0:w&255)|0)){h=k[m>>2]|0;j=f?h:m;c=c?k[x>>2]|0:x;e=(g|0)==0;b:do if(f)if(!e){w=(EI(j,c,g)|0)==0;p1(x);if(!w){C=11;break a}}else C=8;else if(e)C=8;else{if((h&255)<<24>>24==(i[c>>0]|0))e=m;else{C=9;break a}while(1){d=d+-1|0;e=e+1|0;if(!d){C=8;break b}c=c+1|0;if((i[e>>0]|0)!=(i[c>>0]|0)){C=9;break a}}}while(0);if((C|0)==8)p1(x);c=b+80|0;d=k[1990]|0;if((k[c>>2]|0)!=(d|0)){if((k[2783]|0)>=3){c=0;break}Qd(q,52211,634,2,0,0,0);F=Tn(Mn(Tn(q,54350,58)|0,d)|0,54409,9)|0;Mn(F,k[c>>2]|0)|0;hi(q);c=0;break}p=b+20|0;w=a+8|0;q=p+11|0;d=i[q>>0]|0;j=d<<24>>24<0;t=b+24|0;d=d&255;f=j?k[t>>2]|0:d;u=w+11|0;o=i[u>>0]|0;c=o<<24>>24<0;v=a+12|0;c:do if((f|0)==((c?k[v>>2]|0:o&255)|0)){g=k[p>>2]|0;h=j?g:p;c=c?k[w>>2]|0:w;e=(f|0)==0;d:do if(j){if(!e?EI(h,c,f)|0:0)break c}else if(!e){if((g&255)<<24>>24==(i[c>>0]|0))e=p;else break c;while(1){d=d+-1|0;e=e+1|0;if(!d)break d;c=c+1|0;if((i[e>>0]|0)!=(i[c>>0]|0))break c}}while(0);n=b+64|0;o=n+11|0;c=i[o>>0]|0;if(c<<24>>24<0)c=k[b+68>>2]|0;else c=c&255;e:do if(c|0){d=(C9(k[F>>2]|0)|0)+200|0;mE(x,(k[(k[d>>2]|0)+940>>2]|0)+40|0);d=i[o>>0]|0;f=d<<24>>24<0;m=b+68|0;d=d&255;g=f?k[m>>2]|0:d;s=i[x+11>>0]|0;c=s<<24>>24<0;f:do if((g|0)==((c?k[x+4>>2]|0:s&255)|0)){h=k[n>>2]|0;j=f?h:n;c=c?k[x>>2]|0:x;e=(g|0)==0;g:do if(f){if(!e){s=(EI(j,c,g)|0)==0;p1(x);if(s)break e;else break f}}else if(!e){if((h&255)<<24>>24==(i[c>>0]|0))e=n;else{C=38;break f}while(1){d=d+-1|0;e=e+1|0;if(!d)break g;c=c+1|0;if((i[e>>0]|0)!=(i[c>>0]|0)){C=38;break f}}}while(0);p1(x);break e}else C=38;while(0);if((C|0)==38)p1(x);if((k[2783]|0)>=5){c=0;break a}Qd(y,52211,650,4,0,0,0);D=Tn(y,54524,93)|0;E=(C9(k[F>>2]|0)|0)+200|0;mE(x,(k[(k[E>>2]|0)+940>>2]|0)+40|0);E=i[x+11>>0]|0;c=E<<24>>24<0;E=Tn(Tn(D,c?k[x>>2]|0:x,c?k[x+4>>2]|0:E&255)|0,54618,14)|0;c=i[o>>0]|0;F=c<<24>>24<0;Tn(E,F?k[n>>2]|0:n,F?k[m>>2]|0:c&255)|0;p1(x);hi(y);c=0;break a}while(0);d=k[F>>2]|0;if(i[d+1438>>0]|0?(k[a+148>>2]|0)==2:0){if((k[2783]|0)>=4){c=0;break a}Qd(z,52211,656,3,0,0,0);E=Tn(z,54633,19)|0;c=i[u>>0]|0;F=c<<24>>24<0;Tn(E,F?k[w>>2]|0:w,F?k[v>>2]|0:c&255)|0;hi(z);c=0;break a}c=b+56|0;if((k[d+1380>>2]|0)!=(k[c>>2]|0)){if((k[2783]|0)>=4){c=0;break a}Qd(A,52211,661,3,0,0,0);b=Tn(A,54653,18)|0;E=i[q>>0]|0;D=E<<24>>24<0;E=Tn(Tn(b,D?k[p>>2]|0:p,D?k[t>>2]|0:E&255)|0,54672,39)|0;F=Tn(Mn(E,k[(k[F>>2]|0)+1380>>2]|0)|0,54712,8)|0;Ln(F,k[c>>2]|0)|0;hi(A);c=0;break a}c=b+60|0;if((k[d+1576>>2]|0)!=(k[c>>2]|0)){if((k[2783]|0)>=4){c=0;break a}Qd(B,52211,667,3,0,0,0);b=Tn(B,54653,18)|0;E=i[q>>0]|0;D=E<<24>>24<0;E=Tn(Tn(b,D?k[p>>2]|0:p,D?k[t>>2]|0:E&255)|0,54721,61)|0;F=Tn(Mn(E,k[(k[F>>2]|0)+1576>>2]|0)|0,54783,9)|0;Ln(F,k[c>>2]|0)|0;hi(B);c=0;break a}B=(Vd(w4(d)|0)|0)==3&1;c=b+76|0;if((B|0)!=(l[c>>0]|0)){if((k[2783]|0)>=4){c=0;break a}Qd(D,52211,673,3,0,0,0);B=Tn(D,54793,30)|0;E=i[u>>0]|0;b=E<<24>>24<0;E=Tn(Tn(B,b?k[w>>2]|0:w,b?k[v>>2]|0:E&255)|0,54824,48)|0;F=Tn(Nn(E,(Vd(w4(k[F>>2]|0)|0)|0)==3)|0,54873,10)|0;Nn(F,(i[c>>0]|0)!=0)|0;hi(D);c=0;break a}c=b+84|0;if((i[(k[F>>2]|0)+1845>>0]|0)==(i[c>>0]|0)){c=1;break a}if((k[2783]|0)>=4){c=0;break a}Qd(E,52211,679,3,0,0,0);B=Tn(E,54793,30)|0;D=i[u>>0]|0;b=D<<24>>24<0;D=Tn(Tn(B,b?k[w>>2]|0:w,b?k[v>>2]|0:D&255)|0,54884,50)|0;F=Tn(Nn(D,(i[(k[F>>2]|0)+1845>>0]|0)!=0)|0,54873,10)|0;Nn(F,(i[c>>0]|0)!=0)|0;hi(E);c=0;break a}while(0);if((k[2783]|0)<4){Qd(s,52211,643,3,0,0,0);F=Tn(s,54419,89)|0;E=i[u>>0]|0;c=E<<24>>24<0;E=Tn(Tn(F,c?k[w>>2]|0:w,c?k[v>>2]|0:E&255)|0,54509,14)|0;c=i[q>>0]|0;F=c<<24>>24<0;Tn(Tn(E,F?k[p>>2]|0:p,F?k[t>>2]|0:c&255)|0,68623,1)|0;hi(s);c=0}else c=0}else C=9;while(0);if((C|0)==9){p1(x);C=11}if((C|0)==11)if((k[2783]|0)<4){Qd(p,52211,628,3,0,0,0);b=Tn(p,54266,53)|0;c=a+8|0;D=i[c+11>>0]|0;E=D<<24>>24<0;D=Tn(Tn(b,E?k[c>>2]|0:c,E?k[a+12>>2]|0:D&255)|0,54320,16)|0;E=i[n>>0]|0;c=E<<24>>24<0;E=Tn(Tn(D,c?k[m>>2]|0:m,c?k[o>>2]|0:E&255)|0,54337,12)|0;Ki(x,k[(k[F>>2]|0)+2004>>2]|0);c=i[x+11>>0]|0;F=c<<24>>24<0;Tn(E,F?k[x>>2]|0:x,F?k[x+4>>2]|0:c&255)|0;p1(x);hi(p);c=0}else c=0;r=G;return c|0}function sc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;N=r;r=r+464|0;L=N+440|0;K=N+340|0;J=N;vl(0,b,c)|0;k[L>>2]=0;k[L+4>>2]=0;k[L+8>>2]=0;wE(L,56364,2);VJ(b,L,c+44|0)|0;p1(L);k[L>>2]=0;k[L+4>>2]=0;k[L+8>>2]=0;wE(L,49665,4);VJ(b,L,c+56|0)|0;p1(L);np(a,b,c+92|0);k[K>>2]=0;k[K+4>>2]=0;k[K+8>>2]=0;wE(K,49670,16);oq(L,b,K);p1(K);d=k[L>>2]|0;M=L+4|0;if((d|0)!=(k[M>>2]|0)){f=c+72|0;g=c+76|0;h=c+68|0;j=K+24|0;l=K+12|0;do{H=K;I=H+36|0;do{k[H>>2]=0;H=H+4|0}while((H|0)<(I|0));Ho(0,k[d>>2]|0,K)|0;e=k[f>>2]|0;if((e|0)==(k[g>>2]|0))qn(h,K);else{iI(e,K);iI(e+12|0,l);iI(e+24|0,j);k[f>>2]=(k[f>>2]|0)+36}p1(j);p1(l);p1(K);d=d+4|0}while((d|0)!=(k[M>>2]|0))}k[K>>2]=0;k[K+4>>2]=0;k[K+8>>2]=0;wE(K,49687,11);d=WA(b,K)|0;p1(K);if(d|0){k[K>>2]=1;k[K+4>>2]=0;i[K+8>>0]=0;I=K+12|0;H=K+28|0;k[H>>2]=0;k[H+4>>2]=0;k[H+8>>2]=0;k[H+12>>2]=0;k[H+16>>2]=0;k[H+20>>2]=0;k[I>>2]=0;k[I+4>>2]=0;k[I+8>>2]=0;i[I+12>>0]=0;uh(a,d,K)|0;H=c+124|0;k[H>>2]=k[K>>2];k[H+4>>2]=k[K+4>>2];i[H+8>>0]=i[K+8>>0]|0;MM(c+136|0,I)|0;i[c+148>>0]=i[K+24>>0]|0;H=K+28|0;MM(c+152|0,H)|0;G=K+40|0;MM(c+164|0,G)|0;i[c+120>>0]=1;p1(G);p1(H);p1(I)}k[K>>2]=0;k[K+4>>2]=0;k[K+8>>2]=0;wE(K,49699,15);d=WA(b,K)|0;p1(K);if(d|0){k[K>>2]=1;k[K+4>>2]=0;i[K+8>>0]=0;f=K+12|0;g=K+28|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;i[f+12>>0]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;k[g+24>>2]=0;k[K+56>>2]=1;g=K+60|0;i[g>>0]=0;h=K+64|0;H=h;I=H+36|0;do{k[H>>2]=0;H=H+4|0}while((H|0)<(I|0));fs(a,d,K)|0;I=c+180|0;k[I>>2]=k[K>>2];k[I+4>>2]=k[K+4>>2];i[I+8>>0]=i[K+8>>0]|0;MM(c+192|0,f)|0;i[c+204>>0]=i[K+24>>0]|0;d=K+28|0;MM(c+208|0,d)|0;e=K+40|0;MM(c+220|0,e)|0;F=K+52|0;G=k[F+4>>2]|0;H=c+232|0;k[H>>2]=k[F>>2];k[H+4>>2]=G;i[c+240>>0]=i[g>>0]|0;if((I|0)!=(K|0))Kg(c+244|0,k[h>>2]|0,k[K+68>>2]|0);I=K+76|0;MM(c+256|0,I)|0;H=K+88|0;MM(c+268|0,H)|0;i[c+176>>0]=1;p1(H);p1(I);qH(K+64|0);p1(e);p1(d);p1(f)}k[K>>2]=0;k[K+4>>2]=0;k[K+8>>2]=0;wE(K,49715,11);d=WA(b,K)|0;p1(K);if(d|0){k[K>>2]=1;k[K+4>>2]=0;i[K+8>>0]=0;f=K+12|0;H=K+28|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;i[f+12>>0]=0;k[H>>2]=0;k[H+4>>2]=0;k[H+8>>2]=0;k[H+12>>2]=0;k[H+16>>2]=0;k[H+20>>2]=0;k[H+24>>2]=0;k[K+56>>2]=1;H=K+60|0;i[H>>0]=0;g=K+64|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;ei(a,d,K)|0;I=c+284|0;k[I>>2]=k[K>>2];k[I+4>>2]=k[K+4>>2];i[I+8>>0]=i[K+8>>0]|0;MM(c+296|0,f)|0;i[c+308>>0]=i[K+24>>0]|0;d=K+28|0;MM(c+312|0,d)|0;e=K+40|0;MM(c+324|0,e)|0;E=K+52|0;F=k[E+4>>2]|0;G=c+336|0;k[G>>2]=k[E>>2];k[G+4>>2]=F;i[c+344>>0]=i[H>>0]|0;if((I|0)!=(K|0)){Kg(c+348|0,k[g>>2]|0,k[K+68>>2]|0);qh(c+360|0,k[K+76>>2]|0,k[K+80>>2]|0)}i[c+280>>0]=1;az(K+76|0);qH(K+64|0);p1(e);p1(d);p1(f)}k[J>>2]=0;k[J+4>>2]=0;k[J+8>>2]=0;wE(J,49727,14);oq(K,b,J);p1(J);e=k[K>>2]|0;G=K+4|0;if((e|0)==(k[G>>2]|0))d=1;else{g=J+64|0;h=J+92|0;j=J+96|0;l=J+100|0;b=J+104|0;m=J+120|0;n=J+148|0;o=J+152|0;p=J+156|0;q=J+160|0;s=J+176|0;t=J+204|0;u=J+208|0;v=J+212|0;w=J+252|0;x=J+256|0;y=J+260|0;z=J+264|0;A=J+280|0;B=J+308|0;C=J+312|0;D=J+316|0;E=c+84|0;F=c+88|0;f=c+80|0;while(1){H=J;I=H+60|0;do{k[H>>2]=0;H=H+4|0}while((H|0)<(I|0));i[J+60>>0]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;i[g+24>>0]=0;k[h>>2]=1;k[j>>2]=0;i[l>>0]=0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;i[b+12>>0]=0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[m+12>>2]=0;k[m+16>>2]=0;k[m+20>>2]=0;i[m+24>>0]=0;k[n>>2]=1;k[o>>2]=0;i[p>>0]=0;k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;i[q+12>>0]=0;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;k[s+12>>2]=0;k[s+16>>2]=0;k[s+20>>2]=0;k[s+24>>2]=0;k[t>>2]=1;i[u>>0]=0;H=v;I=H+36|0;do{k[H>>2]=0;H=H+4|0}while((H|0)<(I|0));i[v+36>>0]=0;k[w>>2]=1;k[x>>2]=0;i[y>>0]=0;k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;i[z+12>>0]=0;k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;k[A+12>>2]=0;k[A+16>>2]=0;k[A+20>>2]=0;k[A+24>>2]=0;k[B>>2]=1;i[C>>0]=0;k[D>>2]=0;k[D+4>>2]=0;k[D+8>>2]=0;k[D+12>>2]=0;k[D+16>>2]=0;k[D+20>>2]=0;do if(Dc(a,k[e>>2]|0,J)|0){d=k[E>>2]|0;if((d|0)==(k[F>>2]|0)){Qq(f,J);d=1;break}else{Nf(d,J);k[E>>2]=(k[E>>2]|0)+340;d=1;break}}else d=0;while(0);fl(J);e=e+4|0;if(!d){d=0;break}if((e|0)==(k[G>>2]|0)){d=1;break}}e=k[K>>2]|0}f=e;if(e|0){g=k[G>>2]|0;if((g|0)!=(e|0))k[G>>2]=g+(~((g+-4-f|0)>>>2)<<2);zba(e)}e=k[L>>2]|0;f=e;if(e|0){g=k[M>>2]|0;if((g|0)!=(e|0))k[M>>2]=g+(~((g+-4-f|0)>>>2)<<2);zba(e)}r=N;return d|0}function tc(a){a=a|0;var b=0,c=0.0,d=0,e=0,f=0,g=0.0,h=0,l=0,m=0,n=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;x=r;r=r+240|0;w=x;t=x+224|0;q=x+216|0;d=x+204|0;e=x+192|0;f=x+180|0;u=x+152|0;v=x+96|0;h=k[a+40>>2]|0;l=k[a+24>>2]|0;s=l+(h*12|0)|0;m=i[s+11>>0]|0;n=m<<24>>24<0;if(n)b=k[s>>2]|0;else b=s;do if(!(Kw(b,45102,7)|0)){k[w>>2]=0;v=w+4|0;k[v>>2]=0;k[w+8>>2]=0;nD(t,s,8,-1,s);yg(t,103294,1,w)|0;p1(t);b=k[w>>2]|0;if((b|0)==(k[v>>2]|0)){nG(w);b=0;break}d=a+36|0;v=k[d>>2]|0;e=a+112|0;k[e>>2]=(((k[v+4>>2]|0)-(k[v>>2]|0)|0)/96|0)+(k[a+44>>2]|0);if((i[b+11>>0]|0)<0)b=k[b>>2]|0;g=+Waa(b,0);f=a+96|0;o[f>>2]=g;MM(a+132|0,a+172|0)|0;MM(a+120|0,a+160|0)|0;if(!(i[a+184>>0]|0)){if(i[(k[d>>2]|0)+41>>0]|0){v=a+144|0;k[v>>2]=0;k[v+4>>2]=0;k[v+8>>2]=0;k[v+12>>2]=0;v=k[e>>2]|0;i[a+156>>0]=v>>>24;i[a+157>>0]=v>>>16;i[a+158>>0]=v>>>8;i[a+159>>0]=v}}else{d=a+144|0;b=a+185|0;e=d+16|0;do{i[d>>0]=i[b>>0]|0;d=d+1|0;b=b+1|0}while((d|0)<(e|0))}b=a+56|0;g=+p[b>>3];p[a+104>>3]=g;p[b>>3]=g+ +o[f>>2]*1.0e3;nG(w);b=1}else{if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45110,17)|0)){k[w>>2]=0;e=w+4|0;k[e>>2]=0;k[w+8>>2]=0;nD(t,s,17,-1,s);yg(t,50319,1,w)|0;p1(t);b=k[w>>2]|0;if((b|0)!=(k[e>>2]|0)){if((i[b+11>>0]|0)<0)b=k[b>>2]|0;g=+Waa(b,0);d=a+48|0;c=+p[d>>3];b=k[w>>2]|0;if((((k[e>>2]|0)-b|0)/12|0)>>>0>1){b=b+12|0;if((i[b+11>>0]|0)<0)b=k[b>>2]|0;c=+Waa(b,0)}g=g+c;p[d>>3]=g;p[a+80>>3]=c;p[a+88>>3]=g+-1.0}nG(w);b=1;break}if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45128,21)|0)){nD(d,s,22,-1,s);b=iA((i[d+11>>0]|0)<0?k[d>>2]|0:d)|0;k[(k[a+36>>2]|0)+36>>2]=b;p1(d);b=1;break}if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45150,14)|0)){i[(k[a+36>>2]|0)+40>>0]=1;b=1;break}if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45165,21)|0)){nD(e,s,22,-1,s);b=iA((i[e+11>>0]|0)<0?k[e>>2]|0:e)|0;k[a+44>>2]=b;p1(e);b=1;break}if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45187,18)|0)){b=Mc(a)|0;break}if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45206,11)|0)){nD(f,s,11,-1,s);Jc(a,f);p1(f);b=1;break}if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45218,25)|0)){nD(w,s,25,-1,s);DU(w,a+56|0)|0;p1(w);b=1;break}if(n)b=k[s>>2]|0;else b=s;if(!(Kw(b,45244,13)|0)){nD(w,s,13,-1,s);iI(u,w);k[u+12>>2]=45258;d=(i[u+11>>0]|0)<0?k[u>>2]|0:u;k[u+24>>2]=d;k[u+20>>2]=d;k[u+16>>2]=d;p1(w);d=v;e=d+52|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));j[v+52>>1]=0;do if(_c(a,u,v)|0){b=v+16|0;d=(k[a+36>>2]|0)+24|0;k[w>>2]=b;gq(q,d,b,113529,w,t);d=k[q>>2]|0;e=d+32|0;f=k[e>>2]|0;if((f|0)==(k[d+36>>2]|0)){Al(d+28|0,v);break}else{k[f>>2]=k[v>>2];iI(f+4|0,v+4|0);iI(f+16|0,b);iI(f+28|0,v+28|0);iI(f+40|0,v+40|0);j[f+52>>1]=j[v+52>>1]|0;k[e>>2]=(k[e>>2]|0)+56;break}}else b=v+16|0;while(0);p1(v+40|0);p1(v+28|0);p1(b);p1(v+4|0);p1(u);b=1;break}if(n)b=k[l+(h*12|0)+4>>2]|0;else b=m&255;if(!b){b=1;break}if(n)b=k[s>>2]|0;else b=s;if((i[b>>0]|0)==35){b=1;break}f=a+64|0;MM(f,s)|0;Cf(a,f,f);b=k[a+36>>2]|0;d=b+4|0;e=k[d>>2]|0;if((e|0)==(k[b+8>>2]|0))dj(b,f);else{iI(e,f);g=+p[a+88>>3];p[e+16>>3]=+p[a+80>>3];p[e+24>>3]=g;v=e+32|0;u=a+96|0;k[v>>2]=k[u>>2];k[v+4>>2]=k[u+4>>2];k[v+8>>2]=k[u+8>>2];k[v+12>>2]=k[u+12>>2];k[v+16>>2]=k[u+16>>2];i[v+20>>0]=i[u+20>>0]|0;iI(e+56|0,a+120|0);iI(e+68|0,a+132|0);v=e+80|0;u=a+144|0;k[v>>2]=k[u>>2];k[v+4>>2]=k[u+4>>2];k[v+8>>2]=k[u+8>>2];k[v+12>>2]=k[u+12>>2];k[d>>2]=(k[d>>2]|0)+96}sK(w);b=f+11|0;if((i[b>>0]|0)<0){i[k[f>>2]>>0]=0;k[a+68>>2]=0;b=f}else{i[f>>0]=0;i[b>>0]=0;b=f}Qm(f,0);k[b>>2]=k[w>>2];k[b+4>>2]=k[w+4>>2];k[b+8>>2]=k[w+8>>2];k[w>>2]=0;k[w+4>>2]=0;k[w+8>>2]=0;d=a+80|0;f=w+16|0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];k[d+8>>2]=k[f+8>>2];k[d+12>>2]=k[f+12>>2];d=a+96|0;f=w+32|0;k[d>>2]=k[f>>2];k[d+4>>2]=k[f+4>>2];k[d+8>>2]=k[f+8>>2];k[d+12>>2]=k[f+12>>2];k[d+16>>2]=k[f+16>>2];i[d+20>>0]=i[f+20>>0]|0;d=a+120|0;f=w+56|0;b=d+11|0;if((i[b>>0]|0)<0){i[k[d>>2]>>0]=0;k[a+124>>2]=0;b=d}else{i[d>>0]=0;i[b>>0]=0;b=d}Qm(d,0);k[b>>2]=k[f>>2];k[b+4>>2]=k[f+4>>2];k[b+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;d=a+132|0;e=w+68|0;b=d+11|0;if((i[b>>0]|0)<0){i[k[d>>2]>>0]=0;k[a+136>>2]=0;b=d}else{i[d>>0]=0;i[b>>0]=0;b=d}Qm(d,0);k[b>>2]=k[e>>2];k[b+4>>2]=k[e+4>>2];k[b+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;b=a+144|0;a=w+80|0;k[b>>2]=k[a>>2];k[b+4>>2]=k[a+4>>2];k[b+8>>2]=k[a+8>>2];k[b+12>>2]=k[a+12>>2];p1(e);p1(f);p1(w);b=1}while(0);r=x;return b|0}function uc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+240|0;o=t+228|0;p=t+216|0;q=t+204|0;s=t+192|0;n=t+180|0;e=t+12|0;f=t;m=t+24|0;k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;k[p>>2]=0;k[p+4>>2]=0;k[p+8>>2]=0;do if(b){c=a+224|0;d=c+11|0;b=i[d>>0]|0;if(b<<24>>24<0)b=k[a+228>>2]|0;else b=b&255;if(!b)dZ(o,115628)|0;else{FE(n,a+236|0,75989);b=i[d>>0]|0;m=b<<24>>24<0;b=nw(n,m?k[c>>2]|0:c,m?k[a+228>>2]|0:b&255)|0;k[s>>2]=k[b>>2];k[s+4>>2]=k[b+4>>2];k[s+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=eZ(s,103308)|0;k[q>>2]=k[b>>2];k[q+4>>2]=k[b+4>>2];k[q+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=o+11|0;if((i[b>>0]|0)<0){i[k[o>>2]>>0]=0;k[o+4>>2]=0}else{i[o>>0]=0;i[b>>0]=0}Qm(o,0);k[o>>2]=k[q>>2];k[o+4>>2]=k[q+4>>2];k[o+8>>2]=k[q+8>>2];k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;p1(q);p1(s);p1(n)}c=a+260|0;b=i[c+11>>0]|0;if(b<<24>>24<0)b=k[a+264>>2]|0;else b=b&255;if(!b){dZ(p,115628)|0;break}MM(p,c)|0;c=a+248|0;b=i[c+11>>0]|0;if(b<<24>>24<0)b=k[a+252>>2]|0;else b=b&255;if(b|0){WD(s,75989,c);n=eZ(s,103308)|0;k[q>>2]=k[n>>2];k[q+4>>2]=k[n+4>>2];k[q+8>>2]=k[n+8>>2];k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;n=i[q+11>>0]|0;m=n<<24>>24<0;nw(p,m?k[q>>2]|0:q,m?k[q+4>>2]|0:n&255)|0;p1(q);p1(s)}}else{dZ(p,115628)|0;g=a+224|0;h=g+11|0;j=i[h>>0]|0;l=j<<24>>24<0;if(l)b=k[a+228>>2]|0;else b=j&255;if(b|0){c=a+248|0;d=c+11|0;b=i[d>>0]|0;if(b<<24>>24<0)b=k[a+252>>2]|0;else b=b&255;if(b|0){FE(f,a+236|0,75989);b=i[h>>0]|0;m=b<<24>>24<0;b=nw(f,m?k[g>>2]|0:g,m?k[a+228>>2]|0:b&255)|0;k[e>>2]=k[b>>2];k[e+4>>2]=k[b+4>>2];k[e+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=eZ(e,103359)|0;k[n>>2]=k[b>>2];k[n+4>>2]=k[b+4>>2];k[n+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=i[d>>0]|0;m=b<<24>>24<0;b=nw(n,m?k[c>>2]|0:c,m?k[a+252>>2]|0:b&255)|0;k[s>>2]=k[b>>2];k[s+4>>2]=k[b+4>>2];k[s+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=eZ(s,103308)|0;k[q>>2]=k[b>>2];k[q+4>>2]=k[b+4>>2];k[q+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=o+11|0;if((i[b>>0]|0)<0){i[k[o>>2]>>0]=0;k[o+4>>2]=0}else{i[o>>0]=0;i[b>>0]=0}Qm(o,0);k[o>>2]=k[q>>2];k[o+4>>2]=k[q+4>>2];k[o+8>>2]=k[q+8>>2];k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;p1(q);p1(s);p1(n);p1(e);p1(f);break}}if(l)b=k[a+228>>2]|0;else b=j&255;if(b|0){b=i[a+248+11>>0]|0;if(b<<24>>24<0)b=k[a+252>>2]|0;else b=b&255;if(!b){FE(n,a+236|0,75989);b=i[h>>0]|0;m=b<<24>>24<0;b=nw(n,m?k[g>>2]|0:g,m?k[a+228>>2]|0:b&255)|0;k[s>>2]=k[b>>2];k[s+4>>2]=k[b+4>>2];k[s+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=eZ(s,103308)|0;k[q>>2]=k[b>>2];k[q+4>>2]=k[b+4>>2];k[q+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=o+11|0;if((i[b>>0]|0)<0){i[k[o>>2]>>0]=0;k[o+4>>2]=0}else{i[o>>0]=0;i[b>>0]=0}Qm(o,0);k[o>>2]=k[q>>2];k[o+4>>2]=k[q+4>>2];k[o+8>>2]=k[q+8>>2];k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;p1(q);p1(s);p1(n);break}}if(l)b=k[a+228>>2]|0;else b=j&255;if(!b){c=a+248|0;d=c+11|0;b=i[d>>0]|0;if(b<<24>>24<0)b=k[a+252>>2]|0;else b=b&255;if(b|0){FE(n,a+260|0,75989);b=i[d>>0]|0;m=b<<24>>24<0;b=nw(n,m?k[c>>2]|0:c,m?k[a+252>>2]|0:b&255)|0;k[s>>2]=k[b>>2];k[s+4>>2]=k[b+4>>2];k[s+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=eZ(s,103308)|0;k[q>>2]=k[b>>2];k[q+4>>2]=k[b+4>>2];k[q+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=o+11|0;if((i[b>>0]|0)<0){i[k[o>>2]>>0]=0;k[o+4>>2]=0}else{i[o>>0]=0;i[b>>0]=0}Qm(o,0);k[o>>2]=k[q>>2];k[o+4>>2]=k[q+4>>2];k[o+8>>2]=k[q+8>>2];k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;p1(q);p1(s);p1(n);break}}if((k[2783]|0)<5){Qd(m,75946,1040,4,0,0,0);Tn(Tn(m,75982,6)|0,76e3,27)|0;hi(m)}}while(0);aI(a,o,p);ob(107,k[a+440>>2]|0,a|0,53,((i[o+11>>0]|0)<0?k[o>>2]|0:o)|0,((i[p+11>>0]|0)<0?k[p>>2]|0:p)|0,k[a+448>>2]|0)|0;p1(p);p1(o);r=t;return}function vc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;I=r;r=r+656|0;F=I+640|0;g=I;G=I+632|0;h=a+4|0;k[a>>2]=1972;k[h>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;f=a+20|0;X0(f);k[a>>2]=4760;k[h>>2]=4788;k[f>>2]=4812;f=a+44|0;k[f>>2]=f;k[a+48>>2]=f;k[a+52>>2]=0;k[a+36>>2]=3432;k[a+40>>2]=3456;f=a+64|0;k[f>>2]=f;k[a+68>>2]=f;k[a+72>>2]=0;k[a+56>>2]=3432;k[a+60>>2]=3456;f=a+84|0;k[f>>2]=f;k[a+88>>2]=f;k[a+92>>2]=0;k[a+76>>2]=3288;k[a+80>>2]=3312;f=a+104|0;k[f>>2]=f;k[a+108>>2]=f;k[a+112>>2]=0;k[a+96>>2]=3288;k[a+100>>2]=3312;f=a+124|0;k[f>>2]=f;k[a+128>>2]=f;k[a+132>>2]=0;k[a+116>>2]=3384;k[a+120>>2]=3408;f=a+144|0;k[f>>2]=f;k[a+148>>2]=f;k[a+152>>2]=0;k[a+136>>2]=4992;k[a+140>>2]=5016;f=a+164|0;k[f>>2]=f;k[a+168>>2]=f;k[a+172>>2]=0;k[a+156>>2]=3384;k[a+160>>2]=3408;f=a+184|0;k[f>>2]=f;k[a+188>>2]=f;k[a+192>>2]=0;k[a+176>>2]=5040;k[a+180>>2]=5064;f=a+204|0;k[f>>2]=f;k[a+208>>2]=f;k[a+212>>2]=0;k[a+196>>2]=5040;k[a+200>>2]=5064;f=a+224|0;k[f>>2]=f;k[a+228>>2]=f;k[a+232>>2]=0;k[a+216>>2]=3336;k[a+220>>2]=3360;f=a+244|0;k[f>>2]=f;k[a+248>>2]=f;k[a+252>>2]=0;k[a+236>>2]=3480;k[a+240>>2]=3504;f=a+264|0;k[f>>2]=f;k[a+268>>2]=f;k[a+272>>2]=0;k[a+256>>2]=3432;k[a+260>>2]=3456;f=a+284|0;k[f>>2]=f;k[a+288>>2]=f;k[a+292>>2]=0;k[a+276>>2]=3528;k[a+280>>2]=3552;f=a+304|0;k[f>>2]=f;k[a+308>>2]=f;k[a+312>>2]=0;k[a+296>>2]=3576;k[a+300>>2]=3600;f=a+324|0;k[f>>2]=f;k[a+328>>2]=f;k[a+332>>2]=0;k[a+316>>2]=3432;k[a+320>>2]=3456;f=a+344|0;k[f>>2]=f;k[a+348>>2]=f;k[a+352>>2]=0;k[a+336>>2]=3288;k[a+340>>2]=3312;f=a+364|0;k[f>>2]=f;k[a+368>>2]=f;k[a+372>>2]=0;k[a+356>>2]=5088;k[a+360>>2]=5112;f=a+384|0;k[f>>2]=f;k[a+388>>2]=f;k[a+392>>2]=0;k[a+376>>2]=3288;k[a+380>>2]=3312;f=a+404|0;k[f>>2]=f;k[a+408>>2]=f;k[a+412>>2]=0;k[a+396>>2]=3768;k[a+400>>2]=3792;k[a+416>>2]=-1;f=a+424|0;fE(g|0,c|0,221)|0;h=c+224|0;iI(g+224|0,h);l=c+236|0;H=g+236|0;E=l;J=H+52|0;do{k[H>>2]=k[E>>2];H=H+4|0;E=E+4|0}while((H|0)<(J|0));m=c+288|0;iI(g+288|0,m);e=g+300|0;D=c+300|0;H=e;E=D;J=H+84|0;do{k[H>>2]=k[E>>2];H=H+4|0;E=E+4|0}while((H|0)<(J|0));j[e+84>>1]=j[D+84>>1]|0;n=c+388|0;iI(g+388|0,n);p=g+400|0;o=c+400|0;k[p>>2]=k[o>>2];i[p+4>>0]=i[o+4>>0]|0;p=c+408|0;iI(g+408|0,p);q=c+420|0;i[g+420>>0]=i[q>>0]|0;s=c+424|0;iI(g+424|0,s);t=c+436|0;iI(g+436|0,t);u=c+448|0;H=g+448|0;E=u;J=H+92|0;do{k[H>>2]=k[E>>2];H=H+4|0;E=E+4|0}while((H|0)<(J|0));v=c+540|0;iI(g+540|0,v);x=g+552|0;w=c+552|0;k[x>>2]=k[w>>2];i[x+4>>0]=i[w+4>>0]|0;x=c+560|0;iI(g+560|0,x);z=g+572|0;y=c+572|0;k[z>>2]=k[y>>2];k[z+4>>2]=k[y+4>>2];k[z+8>>2]=k[y+8>>2];k[z+12>>2]=k[y+12>>2];k[z+16>>2]=k[y+16>>2];z=c+592|0;iI(g+592|0,z);B=g+604|0;A=c+604|0;k[B>>2]=k[A>>2];i[B+4>>0]=i[A+4>>0]|0;B=c+612|0;iI(g+612|0,B);C=c+624|0;k[g+624>>2]=k[C>>2];Ze(f,a,g);Ev(g);f=a+1256|0;k[f>>2]=b;Zp(a+1260|0,a);k[a+1352>>2]=0;k[a+1356>>2]=0;fE(a+1360|0,c|0,221)|0;iI(a+1584|0,h);H=a+1596|0;E=l;J=H+52|0;do{k[H>>2]=k[E>>2];H=H+4|0;E=E+4|0}while((H|0)<(J|0));iI(a+1648|0,m);e=a+1660|0;H=e;E=D;J=H+84|0;do{k[H>>2]=k[E>>2];H=H+4|0;E=E+4|0}while((H|0)<(J|0));j[e+84>>1]=j[D+84>>1]|0;iI(a+1748|0,n);H=a+1760|0;k[H>>2]=k[o>>2];i[H+4>>0]=i[o+4>>0]|0;iI(a+1768|0,p);i[a+1780>>0]=i[q>>0]|0;iI(a+1784|0,s);iI(a+1796|0,t);H=a+1808|0;E=u;J=H+92|0;do{k[H>>2]=k[E>>2];H=H+4|0;E=E+4|0}while((H|0)<(J|0));iI(a+1900|0,v);e=a+1912|0;k[e>>2]=k[w>>2];i[e+4>>0]=i[w+4>>0]|0;iI(a+1920|0,x);e=a+1932|0;k[e>>2]=k[y>>2];k[e+4>>2]=k[y+4>>2];k[e+8>>2]=k[y+8>>2];k[e+12>>2]=k[y+12>>2];k[e+16>>2]=k[y+16>>2];iI(a+1952|0,z);e=a+1964|0;k[e>>2]=k[A>>2];i[e+4>>0]=i[A+4>>0]|0;iI(a+1972|0,B);k[a+1984>>2]=k[C>>2];e=a+1992|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;iI(a+2008|0,d);k[a+2020>>2]=0;OU(a+2024|0,a);k[a+2080>>2]=0;k[a+2084>>2]=3;k[a+2088>>2]=-1;e=a+2144|0;H=a+2096|0;J=H+48|0;do{k[H>>2]=0;H=H+4|0}while((H|0)<(J|0));k[e>>2]=2147483647;E=a+2148|0;k[E>>2]=0;k[E+4>>2]=0;k[E+8>>2]=0;i[E+12>>0]=0;i[a+2161>>0]=1;E=a+2164|0;k[E>>2]=0;H=a+2168|0;k[H>>2]=H;k[a+2172>>2]=H;J=a+2176|0;k[J>>2]=0;k[a+2180>>2]=7;LA(a+2184|0);i[a+2268>>0]=0;i[a+2269>>0]=0;i[a+2270>>0]=0;k[a+2276>>2]=k[c+536>>2];k[E>>2]=0;E=cW(24)|0;qW(E,0);c=cW(12)|0;k[c+8>>2]=E;k[c+4>>2]=H;E=k[H>>2]|0;k[c>>2]=E;k[E+4>>2]=c;k[H>>2]=c;k[J>>2]=(k[J>>2]|0)+1;if(!(i[a+1845>>0]|0)){J=cW(76)|0;Fn(J,a);k[a+2272>>2]=J}else{J=cW(120)|0;pf(J,a);k[a+2272>>2]=J}J=(k[(k[f>>2]|0)+200>>2]|0)+296|0;k[G>>2]=325;k[G+4>>2]=0;k[F>>2]=k[G>>2];k[F+4>>2]=k[G+4>>2];Hx(J,a,F);r=I;return}function wc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return;c=a+-8|0;g=k[27519]|0;if(c>>>0<g>>>0)kb();a=k[a+-4>>2]|0;b=a&3;if((b|0)==1)kb();d=a&-8;n=c+d|0;do if(!(a&1)){a=k[c>>2]|0;if(!b)return;j=c+(0-a)|0;i=a+d|0;if(j>>>0<g>>>0)kb();if((j|0)==(k[27520]|0)){a=n+4|0;b=k[a>>2]|0;if((b&3|0)!=3){q=j;e=i;break}k[27517]=i;k[a>>2]=b&-2;k[j+4>>2]=i|1;k[j+i>>2]=i;return}d=a>>>3;if(a>>>0<256){b=k[j+8>>2]|0;c=k[j+12>>2]|0;a=110100+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<g>>>0)kb();if((k[b+12>>2]|0)!=(j|0))kb()}if((c|0)==(b|0)){k[27515]=k[27515]&~(1<<d);q=j;e=i;break}if((c|0)!=(a|0)){if(c>>>0<g>>>0)kb();a=c+8|0;if((k[a>>2]|0)==(j|0))f=a;else kb()}else f=c+8|0;k[b+12>>2]=c;k[f>>2]=b;q=j;e=i;break}f=k[j+24>>2]|0;c=k[j+12>>2]|0;do if((c|0)==(j|0)){c=j+16|0;b=c+4|0;a=k[b>>2]|0;if(!a){a=k[c>>2]|0;if(!a){h=0;break}else b=c}while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<g>>>0)kb();else{k[b>>2]=0;h=a;break}}else{d=k[j+8>>2]|0;if(d>>>0<g>>>0)kb();a=d+12|0;if((k[a>>2]|0)!=(j|0))kb();b=c+8|0;if((k[b>>2]|0)==(j|0)){k[a>>2]=c;k[b>>2]=d;h=c;break}else kb()}while(0);if(f){a=k[j+28>>2]|0;b=110364+(a<<2)|0;if((j|0)==(k[b>>2]|0)){k[b>>2]=h;if(!h){k[27516]=k[27516]&~(1<<a);q=j;e=i;break}}else{if(f>>>0<(k[27519]|0)>>>0)kb();a=f+16|0;if((k[a>>2]|0)==(j|0))k[a>>2]=h;else k[f+20>>2]=h;if(!h){q=j;e=i;break}}c=k[27519]|0;if(h>>>0<c>>>0)kb();k[h+24>>2]=f;a=j+16|0;b=k[a>>2]|0;do if(b|0)if(b>>>0<c>>>0)kb();else{k[h+16>>2]=b;k[b+24>>2]=h;break}while(0);a=k[a+4>>2]|0;if(a)if(a>>>0<(k[27519]|0)>>>0)kb();else{k[h+20>>2]=a;k[a+24>>2]=h;q=j;e=i;break}else{q=j;e=i}}else{q=j;e=i}}else{q=c;e=d}while(0);if(q>>>0>=n>>>0)kb();a=n+4|0;b=k[a>>2]|0;if(!(b&1))kb();if(!(b&2)){if((n|0)==(k[27521]|0)){p=(k[27518]|0)+e|0;k[27518]=p;k[27521]=q;k[q+4>>2]=p|1;if((q|0)!=(k[27520]|0))return;k[27520]=0;k[27517]=0;return}if((n|0)==(k[27520]|0)){p=(k[27517]|0)+e|0;k[27517]=p;k[27520]=q;k[q+4>>2]=p|1;k[q+p>>2]=p;return}e=(b&-8)+e|0;d=b>>>3;do if(b>>>0>=256){f=k[n+24>>2]|0;a=k[n+12>>2]|0;do if((a|0)==(n|0)){c=n+16|0;b=c+4|0;a=k[b>>2]|0;if(!a){a=k[c>>2]|0;if(!a){m=0;break}else b=c}while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<(k[27519]|0)>>>0)kb();else{k[b>>2]=0;m=a;break}}else{b=k[n+8>>2]|0;if(b>>>0<(k[27519]|0)>>>0)kb();c=b+12|0;if((k[c>>2]|0)!=(n|0))kb();d=a+8|0;if((k[d>>2]|0)==(n|0)){k[c>>2]=a;k[d>>2]=b;m=a;break}else kb()}while(0);if(f|0){a=k[n+28>>2]|0;b=110364+(a<<2)|0;if((n|0)==(k[b>>2]|0)){k[b>>2]=m;if(!m){k[27516]=k[27516]&~(1<<a);break}}else{if(f>>>0<(k[27519]|0)>>>0)kb();a=f+16|0;if((k[a>>2]|0)==(n|0))k[a>>2]=m;else k[f+20>>2]=m;if(!m)break}c=k[27519]|0;if(m>>>0<c>>>0)kb();k[m+24>>2]=f;a=n+16|0;b=k[a>>2]|0;do if(b|0)if(b>>>0<c>>>0)kb();else{k[m+16>>2]=b;k[b+24>>2]=m;break}while(0);a=k[a+4>>2]|0;if(a|0)if(a>>>0<(k[27519]|0)>>>0)kb();else{k[m+20>>2]=a;k[a+24>>2]=m;break}}}else{b=k[n+8>>2]|0;c=k[n+12>>2]|0;a=110100+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(k[27519]|0)>>>0)kb();if((k[b+12>>2]|0)!=(n|0))kb()}if((c|0)==(b|0)){k[27515]=k[27515]&~(1<<d);break}if((c|0)!=(a|0)){if(c>>>0<(k[27519]|0)>>>0)kb();a=c+8|0;if((k[a>>2]|0)==(n|0))l=a;else kb()}else l=c+8|0;k[b+12>>2]=c;k[l>>2]=b}while(0);k[q+4>>2]=e|1;k[q+e>>2]=e;if((q|0)==(k[27520]|0)){k[27517]=e;return}}else{k[a>>2]=b&-2;k[q+4>>2]=e|1;k[q+e>>2]=e}a=e>>>3;if(e>>>0<256){c=110100+(a<<1<<2)|0;b=k[27515]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[27519]|0)>>>0)kb();else{o=b;p=a}}else{k[27515]=b|a;o=c;p=c+8|0}k[p>>2]=q;k[o+12>>2]=q;k[q+8>>2]=o;k[q+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)a=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;a=(p+245760|0)>>>16&2;a=14-(n|o|a)+(p<<a>>>15)|0;a=e>>>(a+7|0)&1|a<<1}else a=0;d=110364+(a<<2)|0;k[q+28>>2]=a;k[q+20>>2]=0;k[q+16>>2]=0;b=k[27516]|0;c=1<<a;do if(b&c){b=e<<((a|0)==31?0:25-(a>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(e|0)){a=130;break}c=d+16+(b>>>31<<2)|0;a=k[c>>2]|0;if(!a){a=127;break}else{b=b<<1;d=a}}if((a|0)==127)if(c>>>0<(k[27519]|0)>>>0)kb();else{k[c>>2]=q;k[q+24>>2]=d;k[q+12>>2]=q;k[q+8>>2]=q;break}else if((a|0)==130){a=d+8|0;b=k[a>>2]|0;p=k[27519]|0;if(b>>>0>=p>>>0&d>>>0>=p>>>0){k[b+12>>2]=q;k[a>>2]=q;k[q+8>>2]=b;k[q+12>>2]=d;k[q+24>>2]=0;break}else kb()}}else{k[27516]=b|c;k[d>>2]=q;k[q+24>>2]=d;k[q+12>>2]=q;k[q+8>>2]=q}while(0);q=(k[27523]|0)+-1|0;k[27523]=q;if(!q)a=110516;else return;while(1){a=k[a>>2]|0;if(!a)break;else a=a+8|0}k[27523]=-1;return}function xc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;k[a>>2]=2308;f=a+4|0;k[f>>2]=2336;g=a+20|0;k[g>>2]=2360;e=a+904|0;b=k[a+908>>2]|0;c=b;if((c|0)!=(e|0))do{b=k[b+8>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=k[c+4>>2]|0;c=b}while((c|0)!=(e|0));b=k[a+1168>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);d=a+1172|0;b=k[a+1176>>2]|0;c=b;if((c|0)!=(d|0))do{b=k[b+8>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[c+4>>2]|0;c=b}while((c|0)!=(d|0));b=k[a+936>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[a+940>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=a+920|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+4>>2]&2047](c);k[b>>2]=0}iR(a);b=a+1200|0;c=k[b>>2]|0;if(c|0){Rb[k[(k[c>>2]|0)+12>>2]&2047](c);k[b>>2]=0}b=k[a+1192>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+36>>2]&2047](b);$H(d);Rk(a+1056|0);b=k[a+1048>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);mT(a+1036|0);GL(a+992|0);h3(a+984|0);qL(a+944|0);p1(a+924|0);$H(e);b=k[a+900>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);b=k[a+896>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);p1(a+884|0);PU(a+768|0);PU(a+704|0);PU(a+640|0);e=a+616|0;k[e>>2]=2376;d=a+620|0;k[d>>2]=2400;up(e);$H(a+624|0);k[d>>2]=2024;d=a+596|0;k[d>>2]=2376;e=a+600|0;k[e>>2]=2400;up(d);$H(a+604|0);k[e>>2]=2024;e=a+576|0;k[e>>2]=2376;d=a+580|0;k[d>>2]=2400;up(e);$H(a+584|0);k[d>>2]=2024;d=a+556|0;k[d>>2]=2376;e=a+560|0;k[e>>2]=2400;up(d);$H(a+564|0);k[e>>2]=2024;e=a+536|0;k[e>>2]=2376;d=a+540|0;k[d>>2]=2400;up(e);$H(a+544|0);k[d>>2]=2024;d=a+516|0;k[d>>2]=2376;e=a+520|0;k[e>>2]=2400;up(d);$H(a+524|0);k[e>>2]=2024;e=a+496|0;k[e>>2]=2424;d=a+500|0;k[d>>2]=2448;up(e);$H(a+504|0);k[d>>2]=2024;d=a+476|0;k[d>>2]=2376;e=a+480|0;k[e>>2]=2400;up(d);$H(a+484|0);k[e>>2]=2024;e=a+456|0;k[e>>2]=2472;d=a+460|0;k[d>>2]=2496;up(e);$H(a+464|0);k[d>>2]=2024;d=a+436|0;k[d>>2]=2520;e=a+440|0;k[e>>2]=2544;up(d);$H(a+444|0);k[e>>2]=2024;e=a+416|0;k[e>>2]=2568;d=a+420|0;k[d>>2]=2592;up(e);$H(a+424|0);k[d>>2]=2024;d=a+396|0;k[d>>2]=2520;e=a+400|0;k[e>>2]=2544;up(d);$H(a+404|0);k[e>>2]=2024;e=a+376|0;k[e>>2]=2616;d=a+380|0;k[d>>2]=2640;up(e);$H(a+384|0);k[d>>2]=2024;d=a+356|0;k[d>>2]=2664;e=a+360|0;k[e>>2]=2688;up(d);$H(a+364|0);k[e>>2]=2024;e=a+336|0;k[e>>2]=2712;d=a+340|0;k[d>>2]=2736;up(e);$H(a+344|0);k[d>>2]=2024;d=a+316|0;k[d>>2]=2760;e=a+320|0;k[e>>2]=2784;up(d);$H(a+324|0);k[e>>2]=2024;e=a+296|0;k[e>>2]=2808;d=a+300|0;k[d>>2]=2832;up(e);$H(a+304|0);k[d>>2]=2024;d=a+276|0;k[d>>2]=2856;e=a+280|0;k[e>>2]=2880;up(d);$H(a+284|0);k[e>>2]=2024;e=a+256|0;k[e>>2]=2376;d=a+260|0;k[d>>2]=2400;up(e);$H(a+264|0);k[d>>2]=2024;d=a+236|0;k[d>>2]=2904;e=a+240|0;k[e>>2]=2928;up(d);$H(a+244|0);k[e>>2]=2024;e=a+216|0;k[e>>2]=2952;d=a+220|0;k[d>>2]=2976;up(e);$H(a+224|0);k[d>>2]=2024;d=a+196|0;k[d>>2]=3e3;e=a+200|0;k[e>>2]=3024;up(d);$H(a+204|0);k[e>>2]=2024;e=a+176|0;k[e>>2]=3048;d=a+180|0;k[d>>2]=3072;up(e);$H(a+184|0);k[d>>2]=2024;d=a+156|0;k[d>>2]=2904;e=a+160|0;k[e>>2]=2928;up(d);$H(a+164|0);k[e>>2]=2024;e=a+136|0;k[e>>2]=2904;d=a+140|0;k[d>>2]=2928;up(e);$H(a+144|0);k[d>>2]=2024;d=a+116|0;k[d>>2]=3096;e=a+120|0;k[e>>2]=3120;up(d);$H(a+124|0);k[e>>2]=2024;e=a+96|0;k[e>>2]=3096;d=a+100|0;k[d>>2]=3120;up(e);$H(a+104|0);k[d>>2]=2024;d=a+76|0;k[d>>2]=3144;e=a+80|0;k[e>>2]=3168;up(d);$H(a+84|0);k[e>>2]=2024;e=a+56|0;k[e>>2]=2376;d=a+60|0;k[d>>2]=2400;up(e);$H(a+64|0);k[d>>2]=2024;d=a+36|0;k[d>>2]=3192;e=a+40|0;k[e>>2]=3216;up(d);$H(a+44|0);k[e>>2]=2024;eU(g);k[a>>2]=1972;k[f>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[f>>2]=2024;return}function yc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;c=k[a+4>>2]|0;do if(!(c&1)){f=k[a>>2]|0;if(!(c&3))return;l=a+(0-f)|0;j=f+b|0;h=k[27519]|0;if(l>>>0<h>>>0)kb();if((l|0)==(k[27520]|0)){a=o+4|0;c=k[a>>2]|0;if((c&3|0)!=3){r=l;e=j;break}k[27517]=j;k[a>>2]=c&-2;k[l+4>>2]=j|1;k[l+j>>2]=j;return}d=f>>>3;if(f>>>0<256){c=k[l+8>>2]|0;b=k[l+12>>2]|0;a=110100+(d<<1<<2)|0;if((c|0)!=(a|0)){if(c>>>0<h>>>0)kb();if((k[c+12>>2]|0)!=(l|0))kb()}if((b|0)==(c|0)){k[27515]=k[27515]&~(1<<d);r=l;e=j;break}if((b|0)!=(a|0)){if(b>>>0<h>>>0)kb();a=b+8|0;if((k[a>>2]|0)==(l|0))g=a;else kb()}else g=b+8|0;k[c+12>>2]=b;k[g>>2]=c;r=l;e=j;break}f=k[l+24>>2]|0;b=k[l+12>>2]|0;do if((b|0)==(l|0)){b=l+16|0;c=b+4|0;a=k[c>>2]|0;if(!a){a=k[b>>2]|0;if(!a){i=0;break}else c=b}while(1){b=a+20|0;d=k[b>>2]|0;if(d|0){a=d;c=b;continue}b=a+16|0;d=k[b>>2]|0;if(!d)break;else{a=d;c=b}}if(c>>>0<h>>>0)kb();else{k[c>>2]=0;i=a;break}}else{d=k[l+8>>2]|0;if(d>>>0<h>>>0)kb();a=d+12|0;if((k[a>>2]|0)!=(l|0))kb();c=b+8|0;if((k[c>>2]|0)==(l|0)){k[a>>2]=b;k[c>>2]=d;i=b;break}else kb()}while(0);if(f){a=k[l+28>>2]|0;c=110364+(a<<2)|0;if((l|0)==(k[c>>2]|0)){k[c>>2]=i;if(!i){k[27516]=k[27516]&~(1<<a);r=l;e=j;break}}else{if(f>>>0<(k[27519]|0)>>>0)kb();a=f+16|0;if((k[a>>2]|0)==(l|0))k[a>>2]=i;else k[f+20>>2]=i;if(!i){r=l;e=j;break}}b=k[27519]|0;if(i>>>0<b>>>0)kb();k[i+24>>2]=f;a=l+16|0;c=k[a>>2]|0;do if(c|0)if(c>>>0<b>>>0)kb();else{k[i+16>>2]=c;k[c+24>>2]=i;break}while(0);a=k[a+4>>2]|0;if(a)if(a>>>0<(k[27519]|0)>>>0)kb();else{k[i+20>>2]=a;k[a+24>>2]=i;r=l;e=j;break}else{r=l;e=j}}else{r=l;e=j}}else{r=a;e=b}while(0);g=k[27519]|0;if(o>>>0<g>>>0)kb();a=o+4|0;c=k[a>>2]|0;if(!(c&2)){if((o|0)==(k[27521]|0)){q=(k[27518]|0)+e|0;k[27518]=q;k[27521]=r;k[r+4>>2]=q|1;if((r|0)!=(k[27520]|0))return;k[27520]=0;k[27517]=0;return}if((o|0)==(k[27520]|0)){q=(k[27517]|0)+e|0;k[27517]=q;k[27520]=r;k[r+4>>2]=q|1;k[r+q>>2]=q;return}e=(c&-8)+e|0;d=c>>>3;do if(c>>>0>=256){f=k[o+24>>2]|0;b=k[o+12>>2]|0;do if((b|0)==(o|0)){b=o+16|0;c=b+4|0;a=k[c>>2]|0;if(!a){a=k[b>>2]|0;if(!a){n=0;break}else c=b}while(1){b=a+20|0;d=k[b>>2]|0;if(d|0){a=d;c=b;continue}b=a+16|0;d=k[b>>2]|0;if(!d)break;else{a=d;c=b}}if(c>>>0<g>>>0)kb();else{k[c>>2]=0;n=a;break}}else{d=k[o+8>>2]|0;if(d>>>0<g>>>0)kb();a=d+12|0;if((k[a>>2]|0)!=(o|0))kb();c=b+8|0;if((k[c>>2]|0)==(o|0)){k[a>>2]=b;k[c>>2]=d;n=b;break}else kb()}while(0);if(f|0){a=k[o+28>>2]|0;c=110364+(a<<2)|0;if((o|0)==(k[c>>2]|0)){k[c>>2]=n;if(!n){k[27516]=k[27516]&~(1<<a);break}}else{if(f>>>0<(k[27519]|0)>>>0)kb();a=f+16|0;if((k[a>>2]|0)==(o|0))k[a>>2]=n;else k[f+20>>2]=n;if(!n)break}b=k[27519]|0;if(n>>>0<b>>>0)kb();k[n+24>>2]=f;a=o+16|0;c=k[a>>2]|0;do if(c|0)if(c>>>0<b>>>0)kb();else{k[n+16>>2]=c;k[c+24>>2]=n;break}while(0);a=k[a+4>>2]|0;if(a|0)if(a>>>0<(k[27519]|0)>>>0)kb();else{k[n+20>>2]=a;k[a+24>>2]=n;break}}}else{c=k[o+8>>2]|0;b=k[o+12>>2]|0;a=110100+(d<<1<<2)|0;if((c|0)!=(a|0)){if(c>>>0<g>>>0)kb();if((k[c+12>>2]|0)!=(o|0))kb()}if((b|0)==(c|0)){k[27515]=k[27515]&~(1<<d);break}if((b|0)!=(a|0)){if(b>>>0<g>>>0)kb();a=b+8|0;if((k[a>>2]|0)==(o|0))m=a;else kb()}else m=b+8|0;k[c+12>>2]=b;k[m>>2]=c}while(0);k[r+4>>2]=e|1;k[r+e>>2]=e;if((r|0)==(k[27520]|0)){k[27517]=e;return}}else{k[a>>2]=c&-2;k[r+4>>2]=e|1;k[r+e>>2]=e}a=e>>>3;if(e>>>0<256){b=110100+(a<<1<<2)|0;c=k[27515]|0;a=1<<a;if(c&a){a=b+8|0;c=k[a>>2]|0;if(c>>>0<(k[27519]|0)>>>0)kb();else{p=c;q=a}}else{k[27515]=c|a;p=b;q=b+8|0}k[q>>2]=r;k[p+12>>2]=r;k[r+8>>2]=p;k[r+12>>2]=b;return}a=e>>>8;if(a)if(e>>>0>16777215)a=31;else{p=(a+1048320|0)>>>16&8;q=a<<p;o=(q+520192|0)>>>16&4;q=q<<o;a=(q+245760|0)>>>16&2;a=14-(o|p|a)+(q<<a>>>15)|0;a=e>>>(a+7|0)&1|a<<1}else a=0;d=110364+(a<<2)|0;k[r+28>>2]=a;k[r+20>>2]=0;k[r+16>>2]=0;c=k[27516]|0;b=1<<a;if(!(c&b)){k[27516]=c|b;k[d>>2]=r;k[r+24>>2]=d;k[r+12>>2]=r;k[r+8>>2]=r;return}c=e<<((a|0)==31?0:25-(a>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(e|0)){a=127;break}b=d+16+(c>>>31<<2)|0;a=k[b>>2]|0;if(!a){a=124;break}else{c=c<<1;d=a}}if((a|0)==124){if(b>>>0<(k[27519]|0)>>>0)kb();k[b>>2]=r;k[r+24>>2]=d;k[r+12>>2]=r;k[r+8>>2]=r;return}else if((a|0)==127){a=d+8|0;c=k[a>>2]|0;q=k[27519]|0;if(!(c>>>0>=q>>>0&d>>>0>=q>>>0))kb();k[c+12>>2]=r;k[a>>2]=r;k[r+8>>2]=c;k[r+12>>2]=d;k[r+24>>2]=0;return}}function zc(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;S=r;r=r+144|0;j=S+128|0;h=S+112|0;Q=S+124|0;R=S+120|0;l=S+116|0;m=S+108|0;n=S+104|0;o=S+100|0;p=S+96|0;q=S+92|0;s=S+88|0;t=S+84|0;u=S+80|0;v=S+76|0;w=S+72|0;x=S+68|0;y=S+64|0;z=S+60|0;A=S+56|0;B=S+52|0;C=S+48|0;D=S+44|0;E=S+40|0;F=S+36|0;G=S+32|0;H=S+28|0;I=S+24|0;J=S+20|0;K=S+16|0;L=S+12|0;M=S+8|0;N=S+4|0;O=S;k[e>>2]=0;U=LZ(d)|0;k[j>>2]=U;P=k_(j,111636)|0;oU(U)|0;do switch(g<<24>>24|0){case 65:case 97:{k[Q>>2]=k[c>>2];k[j>>2]=k[Q>>2];Uy(a,f+24|0,b,j,e,P);T=26;break}case 104:case 66:case 98:{k[R>>2]=k[c>>2];k[j>>2]=k[R>>2];Fy(a,f+16|0,b,j,e,P);T=26;break}case 99:{g=a+8|0;g=Ub[k[(k[g>>2]|0)+12>>2]&511](g)|0;k[l>>2]=k[b>>2];k[m>>2]=k[c>>2];T=i[g+8+3>>0]|0;c=T<<24>>24<0;U=c?k[g>>2]|0:g;T=U+((c?k[g+4>>2]|0:T&255)<<2)|0;k[h>>2]=k[l>>2];k[j>>2]=k[m>>2];T=Lc(a,h,j,d,e,f,U,T)|0;k[b>>2]=T;T=26;break}case 101:case 100:{k[n>>2]=k[c>>2];k[j>>2]=k[n>>2];bC(a,f+12|0,b,j,e,P);T=26;break}case 68:{k[o>>2]=k[b>>2];k[p>>2]=k[c>>2];k[h>>2]=k[o>>2];k[j>>2]=k[p>>2];T=Lc(a,h,j,d,e,f,25204,25236)|0;k[b>>2]=T;T=26;break}case 70:{k[q>>2]=k[b>>2];k[s>>2]=k[c>>2];k[h>>2]=k[q>>2];k[j>>2]=k[s>>2];T=Lc(a,h,j,d,e,f,25236,25268)|0;k[b>>2]=T;T=26;break}case 72:{k[t>>2]=k[c>>2];k[j>>2]=k[t>>2];FC(a,f+8|0,b,j,e,P);T=26;break}case 73:{k[u>>2]=k[c>>2];k[j>>2]=k[u>>2];XB(a,f+8|0,b,j,e,P);T=26;break}case 106:{k[v>>2]=k[c>>2];k[j>>2]=k[v>>2];cC(a,f+28|0,b,j,e,P);T=26;break}case 109:{k[w>>2]=k[c>>2];k[j>>2]=k[w>>2];jC(a,f+16|0,b,j,e,P);T=26;break}case 77:{k[x>>2]=k[c>>2];k[j>>2]=k[x>>2];yC(a,f+4|0,b,j,e,P);T=26;break}case 116:case 110:{k[y>>2]=k[c>>2];k[j>>2]=k[y>>2];Wg(a,b,j,e,P);T=26;break}case 112:{k[z>>2]=k[c>>2];k[j>>2]=k[z>>2];sp(a,f+8|0,b,j,e,P);T=26;break}case 114:{k[A>>2]=k[b>>2];k[B>>2]=k[c>>2];k[h>>2]=k[A>>2];k[j>>2]=k[B>>2];T=Lc(a,h,j,d,e,f,25268,25312)|0;k[b>>2]=T;T=26;break}case 82:{k[C>>2]=k[b>>2];k[D>>2]=k[c>>2];k[h>>2]=k[C>>2];k[j>>2]=k[D>>2];T=Lc(a,h,j,d,e,f,25312,25332)|0;k[b>>2]=T;T=26;break}case 83:{k[E>>2]=k[c>>2];k[j>>2]=k[E>>2];xC(a,f,b,j,e,P);T=26;break}case 84:{k[F>>2]=k[b>>2];k[G>>2]=k[c>>2];k[h>>2]=k[F>>2];k[j>>2]=k[G>>2];T=Lc(a,h,j,d,e,f,25332,25364)|0;k[b>>2]=T;T=26;break}case 119:{k[H>>2]=k[c>>2];k[j>>2]=k[H>>2];wC(a,f+24|0,b,j,e,P);T=26;break}case 120:{U=k[(k[a>>2]|0)+20>>2]|0;k[I>>2]=k[b>>2];k[J>>2]=k[c>>2];k[h>>2]=k[I>>2];k[j>>2]=k[J>>2];h=Tb[U&63](a,h,j,d,e,f)|0;break}case 88:{g=a+8|0;g=Ub[k[(k[g>>2]|0)+24>>2]&511](g)|0;k[K>>2]=k[b>>2];k[L>>2]=k[c>>2];T=i[g+8+3>>0]|0;c=T<<24>>24<0;U=c?k[g>>2]|0:g;T=U+((c?k[g+4>>2]|0:T&255)<<2)|0;k[h>>2]=k[K>>2];k[j>>2]=k[L>>2];T=Lc(a,h,j,d,e,f,U,T)|0;k[b>>2]=T;T=26;break}case 121:{k[M>>2]=k[c>>2];k[j>>2]=k[M>>2];SA(a,f+20|0,b,j,e,P);T=26;break}case 89:{k[N>>2]=k[c>>2];k[j>>2]=k[N>>2];kE(a,f+20|0,b,j,e,P);T=26;break}case 37:{k[O>>2]=k[c>>2];k[j>>2]=k[O>>2];sg(a,b,j,e,P);T=26;break}default:{k[e>>2]=k[e>>2]|4;T=26}}while(0);if((T|0)==26)h=k[b>>2]|0;r=S;return h|0}function Ac(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;S=r;r=r+144|0;j=S+128|0;h=S+112|0;Q=S+124|0;R=S+120|0;l=S+116|0;m=S+108|0;n=S+104|0;o=S+100|0;p=S+96|0;q=S+92|0;s=S+88|0;t=S+84|0;u=S+80|0;v=S+76|0;w=S+72|0;x=S+68|0;y=S+64|0;z=S+60|0;A=S+56|0;B=S+52|0;C=S+48|0;D=S+44|0;E=S+40|0;F=S+36|0;G=S+32|0;H=S+28|0;I=S+24|0;J=S+20|0;K=S+16|0;L=S+12|0;M=S+8|0;N=S+4|0;O=S;k[e>>2]=0;U=LZ(d)|0;k[j>>2]=U;P=k_(j,111604)|0;oU(U)|0;do switch(g<<24>>24|0){case 65:case 97:{k[Q>>2]=k[c>>2];k[j>>2]=k[Q>>2];Vy(a,f+24|0,b,j,e,P);T=26;break}case 104:case 66:case 98:{k[R>>2]=k[c>>2];k[j>>2]=k[R>>2];Gy(a,f+16|0,b,j,e,P);T=26;break}case 99:{g=a+8|0;g=Ub[k[(k[g>>2]|0)+12>>2]&511](g)|0;k[l>>2]=k[b>>2];k[m>>2]=k[c>>2];T=i[g+11>>0]|0;c=T<<24>>24<0;U=c?k[g>>2]|0:g;T=U+(c?k[g+4>>2]|0:T&255)|0;k[h>>2]=k[l>>2];k[j>>2]=k[m>>2];T=Sc(a,h,j,d,e,f,U,T)|0;k[b>>2]=T;T=26;break}case 101:case 100:{k[n>>2]=k[c>>2];k[j>>2]=k[n>>2];dC(a,f+12|0,b,j,e,P);T=26;break}case 68:{k[o>>2]=k[b>>2];k[p>>2]=k[c>>2];k[h>>2]=k[o>>2];k[j>>2]=k[p>>2];T=Sc(a,h,j,d,e,f,107396,107404)|0;k[b>>2]=T;T=26;break}case 70:{k[q>>2]=k[b>>2];k[s>>2]=k[c>>2];k[h>>2]=k[q>>2];k[j>>2]=k[s>>2];T=Sc(a,h,j,d,e,f,107404,107412)|0;k[b>>2]=T;T=26;break}case 72:{k[t>>2]=k[c>>2];k[j>>2]=k[t>>2];GC(a,f+8|0,b,j,e,P);T=26;break}case 73:{k[u>>2]=k[c>>2];k[j>>2]=k[u>>2];YB(a,f+8|0,b,j,e,P);T=26;break}case 106:{k[v>>2]=k[c>>2];k[j>>2]=k[v>>2];eC(a,f+28|0,b,j,e,P);T=26;break}case 109:{k[w>>2]=k[c>>2];k[j>>2]=k[w>>2];kC(a,f+16|0,b,j,e,P);T=26;break}case 77:{k[x>>2]=k[c>>2];k[j>>2]=k[x>>2];BC(a,f+4|0,b,j,e,P);T=26;break}case 116:case 110:{k[y>>2]=k[c>>2];k[j>>2]=k[y>>2];yh(a,b,j,e,P);T=26;break}case 112:{k[z>>2]=k[c>>2];k[j>>2]=k[z>>2];vp(a,f+8|0,b,j,e,P);T=26;break}case 114:{k[A>>2]=k[b>>2];k[B>>2]=k[c>>2];k[h>>2]=k[A>>2];k[j>>2]=k[B>>2];T=Sc(a,h,j,d,e,f,107412,107423)|0;k[b>>2]=T;T=26;break}case 82:{k[C>>2]=k[b>>2];k[D>>2]=k[c>>2];k[h>>2]=k[C>>2];k[j>>2]=k[D>>2];T=Sc(a,h,j,d,e,f,107423,107428)|0;k[b>>2]=T;T=26;break}case 83:{k[E>>2]=k[c>>2];k[j>>2]=k[E>>2];AC(a,f,b,j,e,P);T=26;break}case 84:{k[F>>2]=k[b>>2];k[G>>2]=k[c>>2];k[h>>2]=k[F>>2];k[j>>2]=k[G>>2];T=Sc(a,h,j,d,e,f,107428,107436)|0;k[b>>2]=T;T=26;break}case 119:{k[H>>2]=k[c>>2];k[j>>2]=k[H>>2];zC(a,f+24|0,b,j,e,P);T=26;break}case 120:{U=k[(k[a>>2]|0)+20>>2]|0;k[I>>2]=k[b>>2];k[J>>2]=k[c>>2];k[h>>2]=k[I>>2];k[j>>2]=k[J>>2];h=Tb[U&63](a,h,j,d,e,f)|0;break}case 88:{g=a+8|0;g=Ub[k[(k[g>>2]|0)+24>>2]&511](g)|0;k[K>>2]=k[b>>2];k[L>>2]=k[c>>2];T=i[g+11>>0]|0;c=T<<24>>24<0;U=c?k[g>>2]|0:g;T=U+(c?k[g+4>>2]|0:T&255)|0;k[h>>2]=k[K>>2];k[j>>2]=k[L>>2];T=Sc(a,h,j,d,e,f,U,T)|0;k[b>>2]=T;T=26;break}case 121:{k[M>>2]=k[c>>2];k[j>>2]=k[M>>2];TA(a,f+20|0,b,j,e,P);T=26;break}case 89:{k[N>>2]=k[c>>2];k[j>>2]=k[N>>2];lE(a,f+20|0,b,j,e,P);T=26;break}case 37:{k[O>>2]=k[c>>2];k[j>>2]=k[O>>2];nh(a,b,j,e,P);T=26;break}default:{k[e>>2]=k[e>>2]|4;T=26}}while(0);if((T|0)==26)h=k[b>>2]|0;r=S;return h|0}function Bc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;x=r;r=r+32|0;s=x+4|0;i=x;v=a+8|0;e=k[v>>2]|0;w=a+4|0;d=k[w>>2]|0;b=((e|0)==(d|0)&1)+b|0;b=(((b>>>0)%146|0|0)!=0&1)+((b>>>0)/146|0)|0;t=a+16|0;c=k[t>>2]|0;q=(c>>>0)/146|0;q=b>>>0<q>>>0?b:q;b=b-q|0;g=e;a:do if(!b){u=($(q,-146)|0)+c|0;k[t>>2]=u;if(q|0){m=a+12|0;b=q;i=e;while(1){l=k[d>>2]|0;j=d+4|0;k[w>>2]=j;u=k[m>>2]|0;c=u;g=i;do if((i|0)==(u|0)){d=k[a>>2]|0;e=d;if(j>>>0>d>>>0){c=j;e=((c-e>>2)+1|0)/-2|0;f=j+(e<<2)|0;c=g-c|0;d=c>>2;if(!d)c=j;else{qO(f|0,j|0,c|0)|0;c=k[w>>2]|0}u=f+(d<<2)|0;k[v>>2]=u;k[w>>2]=c+(e<<2);c=u;break}h=c-e>>1;h=(h|0)==0?1:h;u=cW(h<<2)|0;f=u;c=u+(h>>>2<<2)|0;g=c;h=u+(h<<2)|0;if((j|0)==(i|0))c=g;else{e=c;c=g;d=j;do{k[e>>2]=k[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(i|0));d=k[a>>2]|0}k[a>>2]=f;k[w>>2]=g;k[v>>2]=c;k[m>>2]=h;if(d){zba(d);c=k[v>>2]|0}}else c=i;while(0);k[c>>2]=l;c=(k[v>>2]|0)+4|0;k[v>>2]=c;b=b+-1|0;if(!b)break a;d=k[w>>2]|0;i=c}}}else{u=a+12|0;c=k[u>>2]|0;e=c-(k[a>>2]|0)|0;f=g-d>>2;if(b>>>0<=((e>>2)-f|0)>>>0){b:do if((c|0)==(g|0))h=19;else{while(1){p=cW(4088)|0;k[s>>2]=p;$l(a,s);b=b+-1|0;if(!b)break;if((k[u>>2]|0)==(k[v>>2]|0)){h=19;break b}}b=q;c=k[t>>2]|0}while(0);if((h|0)==19){d=b;b=q;do{c=cW(4088)|0;k[s>>2]=c;Tl(a,s);d=d+-1|0;b=b+1|0;c=(k[t>>2]|0)+146+((((k[v>>2]|0)-(k[w>>2]|0)|0)==4)<<31>>31)|0;k[t>>2]=c}while((d|0)!=0)}s=c+($(b,-146)|0)|0;k[t>>2]=s;if(!b)break;j=b;h=k[v>>2]|0;while(1){i=k[w>>2]|0;l=k[i>>2]|0;i=i+4|0;k[w>>2]=i;t=k[u>>2]|0;b=t;f=h;do if((h|0)==(t|0)){c=k[a>>2]|0;d=c;if(i>>>0>c>>>0){b=i;d=((b-d>>2)+1|0)/-2|0;e=i+(d<<2)|0;b=f-b|0;c=b>>2;if(!c)b=i;else{qO(e|0,i|0,b|0)|0;b=k[w>>2]|0}t=e+(c<<2)|0;k[v>>2]=t;k[w>>2]=b+(d<<2);b=t;break}g=b-d>>1;g=(g|0)==0?1:g;t=cW(g<<2)|0;e=t;b=t+(g>>>2<<2)|0;f=b;g=t+(g<<2)|0;if((i|0)==(h|0))b=f;else{d=b;b=f;c=i;do{k[d>>2]=k[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(h|0));c=k[a>>2]|0}k[a>>2]=e;k[w>>2]=f;k[v>>2]=b;k[u>>2]=g;if(c){zba(c);b=k[v>>2]|0}}else b=h;while(0);k[b>>2]=l;h=(k[v>>2]|0)+4|0;k[v>>2]=h;j=j+-1|0;if(!j)break a}}c=e>>1;p=f+b|0;c=c>>>0<p>>>0?p:c;k[s+12>>2]=0;k[s+16>>2]=a+12;if(!c)d=0;else d=cW(c<<2)|0;k[s>>2]=d;o=d+(f-q<<2)|0;p=s+8|0;k[p>>2]=o;n=s+4|0;k[n>>2]=o;o=s+12|0;k[o>>2]=d+(c<<2);do{m=cW(4088)|0;k[i>>2]=m;$l(s,i);b=b+-1|0}while((b|0)!=0);if(!q)c=k[w>>2]|0;else{m=q;i=k[p>>2]|0;c=k[w>>2]|0;do{l=k[o>>2]|0;b=l;g=i;do if((i|0)==(l|0)){l=k[n>>2]|0;j=k[s>>2]|0;d=j;if(l>>>0>j>>>0){b=l;e=((b-d>>2)+1|0)/-2|0;f=l+(e<<2)|0;b=g-b|0;d=b>>2;if(!d)b=l;else{qO(f|0,l|0,b|0)|0;b=k[n>>2]|0}l=f+(d<<2)|0;k[p>>2]=l;k[n>>2]=b+(e<<2);b=l;break}h=b-d>>1;h=(h|0)==0?1:h;e=cW(h<<2)|0;f=e;b=e+(h>>>2<<2)|0;g=b;h=e+(h<<2)|0;if((l|0)==(i|0))b=g;else{e=b;b=g;d=l;do{k[e>>2]=k[d>>2];e=b+4|0;b=e;d=d+4|0}while((d|0)!=(i|0))}k[s>>2]=f;k[n>>2]=g;k[p>>2]=b;k[o>>2]=h;if(j){zba(j);b=k[p>>2]|0}}else b=i;while(0);k[b>>2]=k[c>>2];i=(k[p>>2]|0)+4|0;k[p>>2]=i;c=(k[w>>2]|0)+4|0;k[w>>2]=c;m=m+-1|0}while((m|0)!=0)}b=k[v>>2]|0;if((b|0)!=(c|0)){do{b=b+-4|0;Tl(s,b);c=k[w>>2]|0}while((b|0)!=(c|0));b=k[v>>2]|0}d=k[a>>2]|0;k[a>>2]=k[s>>2];k[s>>2]=d;k[w>>2]=k[n>>2];k[n>>2]=c;k[v>>2]=k[p>>2];k[p>>2]=b;w=k[u>>2]|0;k[u>>2]=k[o>>2];k[o>>2]=w;w=(k[t>>2]|0)+($(q,-146)|0)|0;k[t>>2]=w;if((b|0)!=(c|0))k[p>>2]=b+(~((b+-4-c|0)>>>2)<<2);if(d|0)zba(d)}while(0);r=x;return}function Cc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=r;r=r+320|0;B=E+304|0;C=E+168|0;D=E;y=E+12|0;k[a+8>>2]=b;z=a+12|0;k[z>>2]=c;A=a+16|0;k[A>>2]=d;x=a+20|0;k[x>>2]=e;if((k[b>>2]|0)==(k[b+4>>2]|0)?(f=k[b+12>>2]|0,(f|0)!=(k[b+16>>2]|0)):0){c=k[f+4>>2]|0;g=k[f+8>>2]|0;if((c|0)!=(g|0)){h=a+24|0;j=a+28|0;l=C+56|0;m=C+4|0;n=C+56|0;o=C+56|0;p=C+128|0;q=C+132|0;s=C+36|0;t=C+52|0;u=a+4|0;v=B+11|0;w=B+4|0;do{me(a,c);if((ur(h,c)|0)==(j|0)){f=cW(144)|0;k[C>>2]=4176;k[n>>2]=4196;GK(o,m);k[p>>2]=0;k[q>>2]=-1;k[C>>2]=4216;k[l>>2]=4236;sT(m);k[m>>2]=1740;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;k[s+12>>2]=0;k[t>>2]=16;k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;cn(m,B);p1(B);d=c+12|0;Mn(C,k[d>>2]|0)|0;Yr(D,m);k[C>>2]=4216;k[n>>2]=4236;k[m>>2]=1740;p1(s);I3(m);Qaa(C,4248);N8(n);Vw(f,D,k[d>>2]|0,c,k[u>>2]|0);p1(D);k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;k[C>>2]=0;k[C+4>>2]=0;k[C+8>>2]=0;ye(k[z>>2]|0,c+16|0,B,C);e=Ko(a,c+36|0)|0;b=i[v>>0]|0;do if(!((b<<24>>24<0?k[w>>2]|0:b&255)|0)){if(e){if((k[2783]|0)<3){Qd(y,45601,311,2,0,0,0);b=Tn(Tn(y,45700,13)|0,45714,28)|0;Mn(b,k[d>>2]|0)|0;hi(y)}Rb[k[(k[f>>2]|0)+12>>2]&2047](f);break}MM(f+64|0,C)|0;k[f+52>>2]=1;d=k[x>>2]|0;k[D>>2]=f;e=d+4|0;b=k[e>>2]|0;if(b>>>0<(k[d+8>>2]|0)>>>0){k[b>>2]=f;k[e>>2]=(k[e>>2]|0)+4}else zp(d,D)}else{b=e&1^1;i[f+48>>0]=b;d=f+64|0;if(!(b<<24>>24))iI(D,B);else bi(D,B,C);e=f+75|0;if((i[e>>0]|0)<0){i[k[d>>2]>>0]=0;k[f+68>>2]=0}else{i[d>>0]=0;i[e>>0]=0}Qm(d,0);k[d>>2]=k[D>>2];k[d+4>>2]=k[D+4>>2];k[d+8>>2]=k[D+8>>2];k[D>>2]=0;k[D+4>>2]=0;k[D+8>>2]=0;p1(D);k[f+52>>2]=0;k[f+76>>2]=k[c+28>>2];k[f+80>>2]=k[c+32>>2];d=k[A>>2]|0;k[D>>2]=f;e=d+4|0;b=k[e>>2]|0;if(b>>>0<(k[d+8>>2]|0)>>>0){k[b>>2]=f;k[e>>2]=(k[e>>2]|0)+4}else zp(d,D)}while(0);p1(C);p1(B)}c=c+72|0}while((c|0)!=(g|0))}}else{f=cW(144)|0;k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;wE(B,45692,7);Vw(f,B,0,b+44|0,k[a+4>>2]|0);p1(B);k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;k[C>>2]=0;k[C+4>>2]=0;k[C+8>>2]=0;FD(k[z>>2]|0,B,C);z=i[B+11>>0]|0;c=f+52|0;if(!((z<<24>>24<0?k[B+4>>2]|0:z&255)|0)){k[c>>2]=1;c=k[x>>2]|0;k[D>>2]=f;d=c+4|0;e=k[d>>2]|0;if(e>>>0<(k[c+8>>2]|0)>>>0){k[e>>2]=f;k[d>>2]=(k[d>>2]|0)+4}else zp(c,D)}else{k[c>>2]=0;i[f+48>>0]=1;c=k[A>>2]|0;k[D>>2]=f;d=c+4|0;e=k[d>>2]|0;if(e>>>0<(k[c+8>>2]|0)>>>0){k[e>>2]=f;k[d>>2]=(k[d>>2]|0)+4}else zp(c,D)}c=f+64|0;bi(D,B,C);d=f+75|0;if((i[d>>0]|0)<0){i[k[c>>2]>>0]=0;k[f+68>>2]=0}else{i[c>>0]=0;i[d>>0]=0}Qm(c,0);k[c>>2]=k[D>>2];k[c+4>>2]=k[D+4>>2];k[c+8>>2]=k[D+8>>2];k[D>>2]=0;k[D+4>>2]=0;k[D+8>>2]=0;p1(D);p1(C);p1(B)}r=E;return}function Dc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;m=r;r=r+112|0;l=m;vl(0,b,c)|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,56364,2);j=VJ(b,l,c+44|0)|0;p1(l);if(j?(k[l>>2]=0,k[l+4>>2]=0,k[l+8>>2]=0,wE(l,49742,9),j=TB(b,l,c+56|0)|0,p1(l),j):0){np(a,b,c+60|0);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,49687,11);d=WA(b,l)|0;p1(l);if(d|0){k[l>>2]=1;k[l+4>>2]=0;i[l+8>>0]=0;j=l+12|0;h=l+28|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[h+16>>2]=0;k[h+20>>2]=0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;i[j+12>>0]=0;uh(a,d,l)|0;h=c+92|0;k[h>>2]=k[l>>2];k[h+4>>2]=k[l+4>>2];i[h+8>>0]=i[l+8>>0]|0;MM(c+104|0,j)|0;i[c+116>>0]=i[l+24>>0]|0;h=l+28|0;MM(c+120|0,h)|0;g=l+40|0;MM(c+132|0,g)|0;i[c+88>>0]=1;p1(g);p1(h);p1(j)}k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,49699,15);d=WA(b,l)|0;p1(l);if(d|0){k[l>>2]=1;k[l+4>>2]=0;i[l+8>>0]=0;g=l+12|0;h=l+28|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;i[g+12>>0]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[h+16>>2]=0;k[h+20>>2]=0;k[h+24>>2]=0;k[l+56>>2]=1;h=l+60|0;i[h>>0]=0;j=l+64|0;e=j;f=e+36|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));fs(a,d,l)|0;f=c+148|0;k[f>>2]=k[l>>2];k[f+4>>2]=k[l+4>>2];i[f+8>>0]=i[l+8>>0]|0;MM(c+160|0,g)|0;i[c+172>>0]=i[l+24>>0]|0;d=l+28|0;MM(c+176|0,d)|0;e=l+40|0;MM(c+188|0,e)|0;p=l+52|0;o=k[p+4>>2]|0;n=c+200|0;k[n>>2]=k[p>>2];k[n+4>>2]=o;i[c+208>>0]=i[h>>0]|0;if((f|0)!=(l|0))Kg(c+212|0,k[j>>2]|0,k[l+68>>2]|0);p=l+76|0;MM(c+224|0,p)|0;o=l+88|0;MM(c+236|0,o)|0;i[c+144>>0]=1;p1(o);p1(p);qH(l+64|0);p1(e);p1(d);p1(g)}k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,49715,11);d=WA(b,l)|0;p1(l);if(!d)d=1;else{k[l>>2]=1;k[l+4>>2]=0;i[l+8>>0]=0;f=l+12|0;o=l+28|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;i[f+12>>0]=0;k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;k[o+12>>2]=0;k[o+16>>2]=0;k[o+20>>2]=0;k[o+24>>2]=0;k[l+56>>2]=1;o=l+60|0;i[o>>0]=0;g=l+64|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;ei(a,d,l)|0;p=c+252|0;k[p>>2]=k[l>>2];k[p+4>>2]=k[l+4>>2];i[p+8>>0]=i[l+8>>0]|0;MM(c+264|0,f)|0;i[c+276>>0]=i[l+24>>0]|0;d=l+28|0;MM(c+280|0,d)|0;e=l+40|0;MM(c+292|0,e)|0;b=l+52|0;a=k[b+4>>2]|0;n=c+304|0;k[n>>2]=k[b>>2];k[n+4>>2]=a;i[c+312>>0]=i[o>>0]|0;if((p|0)!=(l|0)){Kg(c+316|0,k[g>>2]|0,k[l+68>>2]|0);qh(c+328|0,k[l+76>>2]|0,k[l+80>>2]|0)}i[c+248>>0]=1;az(l+76|0);qH(l+64|0);p1(e);p1(d);p1(f);d=1}}else d=0;r=m;return d|0}function Ec(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(b>>>0>36){e=z0()|0;k[e>>2]=22;e=0;d=0}else{r=a+4|0;q=a+100|0;do{f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=ys(a)|0}while((zaa(f)|0)!=0);b:do switch(f|0){case 43:case 45:{f=((f|0)==45)<<31>>31;g=k[r>>2]|0;if(g>>>0<(k[q>>2]|0)>>>0){k[r>>2]=g+1;p=f;f=l[g>>0]|0;break b}else{p=f;f=ys(a)|0;break b}}default:p=0}while(0);g=(b|0)==0;do if((b|16|0)==16&(f|0)==48){f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=ys(a)|0;if((f|32|0)!=120)if(g){b=8;n=46;break}else{n=32;break}f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=ys(a)|0;if((l[103365+f>>0]|0)>15){d=(k[q>>2]|0)==0;if(!d)k[r>>2]=(k[r>>2]|0)+-1;if(!c){MR(a,0);e=0;d=0;break a}if(d){e=0;d=0;break a}k[r>>2]=(k[r>>2]|0)+-1;e=0;d=0;break a}else{b=16;n=46}}else{b=g?10:b;if((l[103365+f>>0]|0)>>>0<b>>>0)n=32;else{if(k[q>>2]|0)k[r>>2]=(k[r>>2]|0)+-1;MR(a,0);e=z0()|0;k[e>>2]=22;e=0;d=0;break a}}while(0);if((n|0)==32)if((b|0)==10){b=f+-48|0;if(b>>>0<10){f=0;g=b;do{f=(f*10|0)+g|0;b=k[r>>2]|0;if(b>>>0<(k[q>>2]|0)>>>0){k[r>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0;g=b+-48|0}while(g>>>0<10&f>>>0<429496729);c=0}else{b=f;f=0;c=0}g=b+-48|0;if(g>>>0<10){m=g;while(1){g=WV(f|0,c|0,10,0)|0;h=M;j=((m|0)<0)<<31>>31;o=~j;if(h>>>0>o>>>0|(h|0)==(o|0)&g>>>0>~m>>>0){g=b;b=m;break}f=y0(g|0,h|0,m|0,j|0)|0;c=M;b=k[r>>2]|0;if(b>>>0<(k[q>>2]|0)>>>0){k[r>>2]=b+1;b=l[b>>0]|0}else b=ys(a)|0;h=b+-48|0;if(h>>>0<10&(c>>>0<429496729|(c|0)==429496729&f>>>0<2576980378))m=h;else{g=b;b=h;break}}if(b>>>0>9){g=p;b=c}else{b=10;n=72}}else{g=p;b=c}}else n=46;c:do if((n|0)==46){if(!(b+-1&b)){n=i[103621+((b*23|0)>>>5&7)>>0]|0;c=i[103365+f>>0]|0;g=c&255;if(g>>>0<b>>>0){f=0;h=g;do{f=h|f<<n;g=k[r>>2]|0;if(g>>>0<(k[q>>2]|0)>>>0){k[r>>2]=g+1;g=l[g>>0]|0}else g=ys(a)|0;c=i[103365+g>>0]|0;h=c&255}while(f>>>0<134217728&h>>>0<b>>>0);h=0}else{g=f;h=0;f=0}j=KZ(-1,-1,n|0)|0;m=M;if((c&255)>>>0>=b>>>0|(h>>>0>m>>>0|(h|0)==(m|0)&f>>>0>j>>>0)){c=h;n=72;break}else g=h;while(1){f=BZ(f|0,g|0,n|0)|0;h=M;f=c&255|f;g=k[r>>2]|0;if(g>>>0<(k[q>>2]|0)>>>0){k[r>>2]=g+1;g=l[g>>0]|0}else g=ys(a)|0;c=i[103365+g>>0]|0;if((c&255)>>>0>=b>>>0|(h>>>0>m>>>0|(h|0)==(m|0)&f>>>0>j>>>0)){c=h;n=72;break c}else g=h}}c=i[103365+f>>0]|0;g=c&255;if(g>>>0<b>>>0){f=0;h=g;do{f=h+($(f,b)|0)|0;g=k[r>>2]|0;if(g>>>0<(k[q>>2]|0)>>>0){k[r>>2]=g+1;g=l[g>>0]|0}else g=ys(a)|0;c=i[103365+g>>0]|0;h=c&255}while(f>>>0<119304647&h>>>0<b>>>0);h=0}else{g=f;f=0;h=0}if((c&255)>>>0<b>>>0){n=A5(-1,-1,b|0,0)|0;o=M;m=h;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&f>>>0>n>>>0){c=m;n=72;break c}h=WV(f|0,m|0,b|0,0)|0;j=M;c=c&255;if(j>>>0>4294967295|(j|0)==-1&h>>>0>~c>>>0){c=m;n=72;break c}f=y0(c|0,0,h|0,j|0)|0;h=M;g=k[r>>2]|0;if(g>>>0<(k[q>>2]|0)>>>0){k[r>>2]=g+1;g=l[g>>0]|0}else g=ys(a)|0;c=i[103365+g>>0]|0;if((c&255)>>>0>=b>>>0){c=h;n=72;break}else m=h}}else{c=h;n=72}}while(0);if((n|0)==72)if((l[103365+g>>0]|0)>>>0<b>>>0){do{f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=ys(a)|0}while((l[103365+f>>0]|0)>>>0<b>>>0);g=z0()|0;k[g>>2]=34;g=(d&1|0)==0&0==0?p:0;b=e;f=d}else{g=p;b=c}if(k[q>>2]|0)k[r>>2]=(k[r>>2]|0)+-1;if(!(b>>>0<e>>>0|(b|0)==(e|0)&f>>>0<d>>>0)){if(!((d&1|0)!=0|0!=0|(g|0)!=0)){r=z0()|0;k[r>>2]=34;d=y0(d|0,e|0,-1,-1)|0;e=M;break}if(b>>>0>e>>>0|(b|0)==(e|0)&f>>>0>d>>>0){r=z0()|0;k[r>>2]=34;break}}d=((g|0)<0)<<31>>31;d=n_(f^g|0,b^d|0,g|0,d|0)|0;e=M}while(0);M=e;return d|0}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;c=r;r=r+32|0;d=c+24|0;l=c;g=c+16|0;e=c+8|0;h=a+4|0;k[a>>2]=1972;k[h>>2]=2e3;k[a+12>>2]=0;k[a+16>>2]=0;k[a+8>>2]=a+12;f=a+20|0;X0(f);k[a>>2]=2308;k[h>>2]=2336;k[f>>2]=2360;f=a+44|0;k[f>>2]=f;k[a+48>>2]=f;k[a+52>>2]=0;k[a+36>>2]=3240;k[a+40>>2]=3264;f=a+64|0;k[f>>2]=f;k[a+68>>2]=f;k[a+72>>2]=0;k[a+56>>2]=3288;k[a+60>>2]=3312;f=a+84|0;k[f>>2]=f;k[a+88>>2]=f;k[a+92>>2]=0;k[a+76>>2]=3336;k[a+80>>2]=3360;f=a+104|0;k[f>>2]=f;k[a+108>>2]=f;k[a+112>>2]=0;k[a+96>>2]=3384;k[a+100>>2]=3408;f=a+124|0;k[f>>2]=f;k[a+128>>2]=f;k[a+132>>2]=0;k[a+116>>2]=3384;k[a+120>>2]=3408;f=a+144|0;k[f>>2]=f;k[a+148>>2]=f;k[a+152>>2]=0;k[a+136>>2]=3432;k[a+140>>2]=3456;f=a+164|0;k[f>>2]=f;k[a+168>>2]=f;k[a+172>>2]=0;k[a+156>>2]=3432;k[a+160>>2]=3456;f=a+184|0;k[f>>2]=f;k[a+188>>2]=f;k[a+192>>2]=0;k[a+176>>2]=3480;k[a+180>>2]=3504;f=a+204|0;k[f>>2]=f;k[a+208>>2]=f;k[a+212>>2]=0;k[a+196>>2]=3528;k[a+200>>2]=3552;f=a+224|0;k[f>>2]=f;k[a+228>>2]=f;k[a+232>>2]=0;k[a+216>>2]=3576;k[a+220>>2]=3600;f=a+244|0;k[f>>2]=f;k[a+248>>2]=f;k[a+252>>2]=0;k[a+236>>2]=3432;k[a+240>>2]=3456;f=a+264|0;k[f>>2]=f;k[a+268>>2]=f;k[a+272>>2]=0;k[a+256>>2]=3288;k[a+260>>2]=3312;f=a+284|0;k[f>>2]=f;k[a+288>>2]=f;k[a+292>>2]=0;k[a+276>>2]=3624;k[a+280>>2]=3648;f=a+304|0;k[f>>2]=f;k[a+308>>2]=f;k[a+312>>2]=0;k[a+296>>2]=3672;k[a+300>>2]=3696;f=a+324|0;k[f>>2]=f;k[a+328>>2]=f;k[a+332>>2]=0;k[a+316>>2]=3720;k[a+320>>2]=3744;f=a+344|0;k[f>>2]=f;k[a+348>>2]=f;k[a+352>>2]=0;k[a+336>>2]=3768;k[a+340>>2]=3792;f=a+364|0;k[f>>2]=f;k[a+368>>2]=f;k[a+372>>2]=0;k[a+356>>2]=3816;k[a+360>>2]=3840;f=a+384|0;k[f>>2]=f;k[a+388>>2]=f;k[a+392>>2]=0;k[a+376>>2]=3864;k[a+380>>2]=3888;f=a+404|0;k[f>>2]=f;k[a+408>>2]=f;k[a+412>>2]=0;k[a+396>>2]=3912;k[a+400>>2]=3936;f=a+424|0;k[f>>2]=f;k[a+428>>2]=f;k[a+432>>2]=0;k[a+416>>2]=3960;k[a+420>>2]=3984;f=a+444|0;k[f>>2]=f;k[a+448>>2]=f;k[a+452>>2]=0;k[a+436>>2]=3912;k[a+440>>2]=3936;f=a+464|0;k[f>>2]=f;k[a+468>>2]=f;k[a+472>>2]=0;k[a+456>>2]=4008;k[a+460>>2]=4032;f=a+484|0;k[f>>2]=f;k[a+488>>2]=f;k[a+492>>2]=0;k[a+476>>2]=3288;k[a+480>>2]=3312;f=a+504|0;k[f>>2]=f;k[a+508>>2]=f;k[a+512>>2]=0;k[a+496>>2]=4056;k[a+500>>2]=4080;f=a+524|0;k[f>>2]=f;k[a+528>>2]=f;k[a+532>>2]=0;k[a+516>>2]=3288;k[a+520>>2]=3312;f=a+544|0;k[f>>2]=f;k[a+548>>2]=f;k[a+552>>2]=0;k[a+536>>2]=3288;k[a+540>>2]=3312;f=a+564|0;k[f>>2]=f;k[a+568>>2]=f;k[a+572>>2]=0;k[a+556>>2]=3288;k[a+560>>2]=3312;f=a+584|0;k[f>>2]=f;k[a+588>>2]=f;k[a+592>>2]=0;k[a+576>>2]=3288;k[a+580>>2]=3312;f=a+604|0;k[f>>2]=f;k[a+608>>2]=f;k[a+612>>2]=0;k[a+596>>2]=3288;k[a+600>>2]=3312;f=a+624|0;k[f>>2]=f;k[a+628>>2]=f;k[a+632>>2]=0;k[a+616>>2]=3288;k[a+620>>2]=3312;xW(a+640|0);xW(a+704|0);xW(a+768|0);i[a+832>>0]=0;T3(a+836|0,b);f=a+848|0;k[f>>2]=0;k[f+4>>2]=0;i[a+856>>0]=0;i[a+857>>0]=0;i[a+858>>0]=i[b+764>>0]|0;k[a+860>>2]=-1;p[a+864>>3]=-1.0;k[a+872>>2]=~~+p[b+752>>3];k[a+876>>2]=0;k[a+880>>2]=-1;f=a+884|0;h=a+904|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[f+12>>2]=0;k[f+16>>2]=0;k[h>>2]=h;k[a+908>>2]=h;k[a+912>>2]=0;k[a+916>>2]=b;h=cW(8)|0;k2(h);k[a+920>>2]=h;h=a+924|0;f=a+944|0;i[a+952>>0]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[h+16>>2]=0;k[a+948>>2]=-1;k[f>>2]=1500;h=a+956|0;b=a+984|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[h+16>>2]=0;k[h+20>>2]=0;k[h+24>>2]=0;K6(b);h=a+992|0;k[h>>2]=1520;j=a+996|0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;k[j+16>>2]=0;k[j+20>>2]=0;j=a+1020|0;i[a+1028>>0]=0;k[a+1024>>2]=-1;k[j>>2]=1500;k[a+1032>>2]=0;k[l>>2]=1235;k[l+4>>2]=0;k[d>>2]=k[l>>2];k[d+4>>2]=k[l+4>>2];Ww(j,h,d)|0;k[b>>2]=1576;k[h>>2]=1600;h=a+1036|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[h+16>>2]=0;rz(a+1056|0);k[a+1168>>2]=0;h=a+1172|0;k[h>>2]=h;k[a+1176>>2]=h;k[a+1180>>2]=0;k[a+1184>>2]=-1;i[a+1188>>0]=0;i[a+1189>>0]=1;k[a+1192>>2]=0;k[a+1196>>2]=0;k[a+1200>>2]=0;k[g>>2]=1236;k[g+4>>2]=0;k[d>>2]=k[g>>2];k[d+4>>2]=k[g+4>>2];_w(f,a,d)|0;k[e>>2]=1237;k[e+4>>2]=0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];dr(b,a,d)|0;r=c;return}function Gc(a,b,c,d,e,f,g,h,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;var m=0,n=0,o=0;o=r;r=r+16|0;n=o;if(a){m=k_(c,113324)|0;if(b){Sb[k[(k[m>>2]|0)+44>>2]&511](n,m);a=k[n>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[m>>2]|0)+32>>2]&511](n,m);a=j+11|0;if((i[a>>0]|0)<0){i[k[j>>2]>>0]=0;k[j+4>>2]=0;a=j}else{i[j>>0]=0;i[a>>0]=0;a=j}Qm(j,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);c=m}else{Sb[k[(k[m>>2]|0)+40>>2]&511](n,m);a=k[n>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[m>>2]|0)+28>>2]&511](n,m);a=j+11|0;if((i[a>>0]|0)<0){i[k[j>>2]>>0]=0;k[j+4>>2]=0;a=j}else{i[j>>0]=0;i[a>>0]=0;a=j}Qm(j,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);c=m}a=Ub[k[(k[m>>2]|0)+12>>2]&511](m)|0;i[e>>0]=a;a=Ub[k[(k[m>>2]|0)+16>>2]&511](m)|0;i[f>>0]=a;Sb[k[(k[c>>2]|0)+20>>2]&511](n,m);a=g+11|0;if((i[a>>0]|0)<0){i[k[g>>2]>>0]=0;k[g+4>>2]=0;a=g}else{i[g>>0]=0;i[a>>0]=0;a=g}Qm(g,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);Sb[k[(k[c>>2]|0)+24>>2]&511](n,m);a=h+11|0;if((i[a>>0]|0)<0){i[k[h>>2]>>0]=0;k[h+4>>2]=0;a=h}else{i[h>>0]=0;i[a>>0]=0;a=h}Qm(h,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);a=Ub[k[(k[m>>2]|0)+36>>2]&511](m)|0}else{m=k_(c,113316)|0;if(b){Sb[k[(k[m>>2]|0)+44>>2]&511](n,m);a=k[n>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[m>>2]|0)+32>>2]&511](n,m);a=j+11|0;if((i[a>>0]|0)<0){i[k[j>>2]>>0]=0;k[j+4>>2]=0;a=j}else{i[j>>0]=0;i[a>>0]=0;a=j}Qm(j,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);c=m}else{Sb[k[(k[m>>2]|0)+40>>2]&511](n,m);a=k[n>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[m>>2]|0)+28>>2]&511](n,m);a=j+11|0;if((i[a>>0]|0)<0){i[k[j>>2]>>0]=0;k[j+4>>2]=0;a=j}else{i[j>>0]=0;i[a>>0]=0;a=j}Qm(j,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);c=m}a=Ub[k[(k[m>>2]|0)+12>>2]&511](m)|0;i[e>>0]=a;a=Ub[k[(k[m>>2]|0)+16>>2]&511](m)|0;i[f>>0]=a;Sb[k[(k[c>>2]|0)+20>>2]&511](n,m);a=g+11|0;if((i[a>>0]|0)<0){i[k[g>>2]>>0]=0;k[g+4>>2]=0;a=g}else{i[g>>0]=0;i[a>>0]=0;a=g}Qm(g,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);Sb[k[(k[c>>2]|0)+24>>2]&511](n,m);a=h+11|0;if((i[a>>0]|0)<0){i[k[h>>2]>>0]=0;k[h+4>>2]=0;a=h}else{i[h>>0]=0;i[a>>0]=0;a=h}Qm(h,0);k[a>>2]=k[n>>2];k[a+4>>2]=k[n+4>>2];k[a+8>>2]=k[n+8>>2];a=0;while(1){if((a|0)==3)break;k[n+(a<<2)>>2]=0;a=a+1|0}p1(n);a=Ub[k[(k[m>>2]|0)+36>>2]&511](m)|0}k[l>>2]=a;r=o;return}function Hc(a,b,c,d,e,f,g,h,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;var m=0,n=0;n=r;r=r+16|0;m=n;if(a){c=k_(c,113340)|0;if(b){Sb[k[(k[c>>2]|0)+44>>2]&511](m,c);a=k[m>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[c>>2]|0)+32>>2]&511](m,c);a=j+8+3|0;if((i[a>>0]|0)<0){k[k[j>>2]>>2]=0;k[j+4>>2]=0}else{k[j>>2]=0;i[a>>0]=0}Jl(j,0);k[j>>2]=k[m>>2];k[j+4>>2]=k[m+4>>2];k[j+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m)}else{Sb[k[(k[c>>2]|0)+40>>2]&511](m,c);a=k[m>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[c>>2]|0)+28>>2]&511](m,c);a=j+8+3|0;if((i[a>>0]|0)<0){k[k[j>>2]>>2]=0;k[j+4>>2]=0}else{k[j>>2]=0;i[a>>0]=0}Jl(j,0);k[j>>2]=k[m>>2];k[j+4>>2]=k[m+4>>2];k[j+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m)}a=Ub[k[(k[c>>2]|0)+12>>2]&511](c)|0;k[e>>2]=a;a=Ub[k[(k[c>>2]|0)+16>>2]&511](c)|0;k[f>>2]=a;Sb[k[(k[c>>2]|0)+20>>2]&511](m,c);a=g+11|0;if((i[a>>0]|0)<0){i[k[g>>2]>>0]=0;k[g+4>>2]=0;a=g}else{i[g>>0]=0;i[a>>0]=0;a=g}Qm(g,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[c>>2]|0)+24>>2]&511](m,c);a=h+8+3|0;if((i[a>>0]|0)<0){k[k[h>>2]>>2]=0;k[h+4>>2]=0}else{k[h>>2]=0;i[a>>0]=0}Jl(h,0);k[h>>2]=k[m>>2];k[h+4>>2]=k[m+4>>2];k[h+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);a=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0}else{c=k_(c,113332)|0;if(b){Sb[k[(k[c>>2]|0)+44>>2]&511](m,c);a=k[m>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[c>>2]|0)+32>>2]&511](m,c);a=j+8+3|0;if((i[a>>0]|0)<0){k[k[j>>2]>>2]=0;k[j+4>>2]=0}else{k[j>>2]=0;i[a>>0]=0}Jl(j,0);k[j>>2]=k[m>>2];k[j+4>>2]=k[m+4>>2];k[j+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m)}else{Sb[k[(k[c>>2]|0)+40>>2]&511](m,c);a=k[m>>2]|0;i[d>>0]=a;i[d+1>>0]=a>>8;i[d+2>>0]=a>>16;i[d+3>>0]=a>>24;Sb[k[(k[c>>2]|0)+28>>2]&511](m,c);a=j+8+3|0;if((i[a>>0]|0)<0){k[k[j>>2]>>2]=0;k[j+4>>2]=0}else{k[j>>2]=0;i[a>>0]=0}Jl(j,0);k[j>>2]=k[m>>2];k[j+4>>2]=k[m+4>>2];k[j+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m)}a=Ub[k[(k[c>>2]|0)+12>>2]&511](c)|0;k[e>>2]=a;a=Ub[k[(k[c>>2]|0)+16>>2]&511](c)|0;k[f>>2]=a;Sb[k[(k[c>>2]|0)+20>>2]&511](m,c);a=g+11|0;if((i[a>>0]|0)<0){i[k[g>>2]>>0]=0;k[g+4>>2]=0;a=g}else{i[g>>0]=0;i[a>>0]=0;a=g}Qm(g,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[c>>2]|0)+24>>2]&511](m,c);a=h+8+3|0;if((i[a>>0]|0)<0){k[k[h>>2]>>2]=0;k[h+4>>2]=0}else{k[h>>2]=0;i[a>>0]=0}Jl(h,0);k[h>>2]=k[m>>2];k[h+4>>2]=k[m+4>>2];k[h+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);a=Ub[k[(k[c>>2]|0)+36>>2]&511](c)|0}k[l>>2]=a;r=n;return}function Ic(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;do if(eE(d,69623,4)|0){if(!(eE(d,69628,4)|0)){a=Qz(a,b,c,d,e)|0;break}if(!(eE(d,69633,4)|0)){a=MF(a,b,c,d,e)|0;break}if(!(eE(d,69638,4)|0)){ns(a,b,c,d,e)|0;a=8;break}if(!(eE(d,69643,4)|0)){a=GF(a,b,c,d,e)|0;break}if(!(eE(d,69648,4)|0)){a=th(a,b,c,d,e)|0;break}if(!(eE(d,69653,4)|0)){a=fp(a,b,c,d,e)|0;break}if(!(eE(d,69658,4)|0)){a=vf(a,b,c,d,e)|0;break}if(!(eE(d,69663,4)|0)){a=zz(a,b,c,d,e)|0;break}if(!(eE(d,69668,4)|0)){a=yz(a,b,c,d,e)|0;break}if(!(eE(d,69673,4)|0)){a=lf(a,b,c,d,e)|0;break}if(!(eE(d,69678,4)|0)){a=FF(a,b,c,d,e)|0;break}if(!(eE(d,69683,4)|0)){a=Oe(a,b,c,d,e)|0;break}if(!(eE(d,69688,4)|0)){a=OF(a,b,c,d,e)|0;break}if(!(eE(d,69693,4)|0)){a=NF(a,b,c,d,e)|0;break}if(!(eE(d,69698,4)|0)){a=HF(a,b,c,d,e)|0;break}if(!(eE(d,69703,4)|0)){a=Wq(a,b,c,d,e)|0;break}if(!(eE(d,69708,4)|0)){a=hC(a,b,c,d,e)|0;break}if(!(eE(d,69713,4)|0)){a=OB(a,b,c,d,e)|0;break}if(!(eE(d,69718,4)|0)){a=Ae(a,b,c,d,e)|0;break}if(!(eE(d,69723,4)|0)){du(a,b,c,d,0)|0;a=8;break}if(!(eE(d,69728,4)|0)){a=Gi(a,b,c,d,e)|0;break}if(!(eE(d,69733,4)|0)){a=Rh(a,b,c,d,e)|0;break}if(!(eE(d,69738,4)|0)){a=Li(a,b,c,d,e)|0;break}if(!(eE(d,69743,4)|0)){a=Qj(a,b,c,d,e)|0;break}if(!(eE(d,69748,4)|0)){a=Gh(a,b,c,d,e)|0;break}if(!(eE(d,69753,4)|0)){a=Ij(a,b,c,d,e)|0;break}if(!(eE(d,69758,4)|0)){Zn(a,b,c,d,e)|0;a=12;break}if(!(eE(d,69763,4)|0)){Fr(a,b,c,d,e)|0;a=8;break}if(!(eE(d,69768,4)|0)){gk(a,b,c,d,e)|0;a=24;break}if(!(eE(d,69773,4)|0)){a=KF(a,b,c,d,e)|0;break}if(!(eE(d,69778,4)|0)){a=PF(a,b,c,d,e)|0;break}if(!(eE(d,69783,4)|0)){a=st(a,b,c,d,e)|0;break}if(!(eE(d,69788,3)|0)){a=Dn(a,b,c,d,e)|0;break}if(!(eE(d,69792,4)|0)){a=gp(a,b,c,d,e)|0;break}if(!(eE(d,69797,4)|0)){a=pC(a,b,c,d,e)|0;break}if(!(eE(d,69802,4)|0)){a=oC(a,b,c,d,e)|0;break}if(!(eE(d,69807,4)|0)){a=hd(a,b,c,d,e)|0;break}if(!(eE(d,69812,4)|0)){a=Ti(a,b,c,d,e)|0;break}if(!(eE(d,69817,4)|0)){a=IF(a,b,c,d,e)|0;break}if(!(eE(d,69822,4)|0)){CB(a,b,c,d,0)|0;a=4;break}if(!(eE(d,69827,4)|0)){a=Ol(a,b,c,d,e)|0;break}if(!(eE(d,69832,4)|0)){a=JF(a,b,c,d,e)|0;break}if(!(eE(d,69837,4)|0)){go(a,b,c,d,e)|0;a=24;break}if(!(eE(d,69842,4)|0)){a=Le(a,b,c,d,e)|0;break}if(!(eE(d,69847,4)|0)){a=Vh(a,b,c,d,e)|0;break}if(!(eE(d,69852,4)|0)){a=gg(a,b,c,d,e)|0;break}if(!(eE(d,69857,4)|0)){jp(a,b,c,d,0)|0;a=12;break}else{a=tD(a,b,c,d,e)|0;break}}else a=LF(a,b,c,d,e)|0;while(0);return a|0}function Jc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+352|0;w=F+180|0;x=F+336|0;y=F+168|0;z=F+156|0;A=F;B=b+11|0;C=b+4|0;D=y+11|0;l=y+4|0;m=x+11|0;n=x+4|0;o=a+160|0;p=o+11|0;q=a+164|0;s=a+36|0;t=a+172|0;u=a+184|0;v=a+185|0;j=0;a:while(1){c=i[B>>0]|0;d=c<<24>>24<0;if(d)e=k[C>>2]|0;else e=c&255;if(j>>>0>=e>>>0)break;if(d){e=k[C>>2]|0;g=k[b>>2]|0}else{e=c&255;g=b}if(e>>>0<=j>>>0){E=15;break}d=g+j|0;h=g+e|0;c=d;f=h;b:do if((e|0)==(j|0)|(f-c|0)<1)c=f;else while(1){if((i[d>>0]|0)==61)break b;d=d+1|0;if((d|0)==(h|0)){c=f;break}else c=d}while(0);d=c-g|0;if((c|0)==(h|0)|(d|0)==-1){E=15;break}nD(x,b,j,d-j|0,b);if((i[B>>0]|0)<0)c=k[b>>2]|0;else c=b;zx(y,c+d+1|0);e=i[D>>0]|0;e=d+2+(e<<24>>24<0?k[l>>2]|0:e&255)|0;d=i[m>>0]|0;c=k[n>>2]|0;do if(((d<<24>>24<0?c:d&255)|0)==6){if(cA(x,0,-1,45505,6)|0){d=i[m>>0]|0;c=k[n>>2]|0;break}cm(z,y,44996,2);if((i[p>>0]|0)<0){i[k[o>>2]>>0]=0;k[q>>2]=0}else{i[o>>0]=0;i[p>>0]=0}Qm(o,0);k[o>>2]=k[z>>2];k[o+4>>2]=k[z+4>>2];k[o+8>>2]=k[z+8>>2];k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;p1(z);j=i[p>>0]|0;if(((j<<24>>24<0?k[q>>2]|0:j&255)|0)==4){j=(cA(o,0,-1,45512,4)|0)==0;c=(k[s>>2]|0)+41|0;if(j){E=29;break a}}else c=(k[s>>2]|0)+41|0;i[c>>0]=1;p1(y);p1(x);j=e;continue a}while(0);do if(((d<<24>>24<0?c:d&255)|0)==3)if(!(cA(x,0,-1,45271,3)|0)){cm(z,y,44996,2);Cf(a,z,t);p1(z);p1(y);p1(x);j=e;continue a}else{d=i[m>>0]|0;c=k[n>>2]|0;break}while(0);if(((d<<24>>24<0?c:d&255)|0)==2?(cA(x,0,-1,45517,2)|0)==0:0){i[u>>0]=1;ul(y,v);p1(y);p1(x);j=e;continue}if((k[2783]|0)<3){Qd(A,45008,236,2,0,0,0);h=Tn(Tn(A,45037,20)|0,45520,33)|0;g=i[m>>0]|0;j=g<<24>>24<0;g=Tn(Tn(h,j?k[x>>2]|0:x,j?k[n>>2]|0:g&255)|0,45554,7)|0;j=i[D>>0]|0;h=j<<24>>24<0;Tn(g,h?k[y>>2]|0:y,h?k[l>>2]|0:j&255)|0;hi(A);p1(y);p1(x);j=e;continue}else{p1(y);p1(x);j=e;continue}}if((E|0)==15){if((k[2783]|0)<4){Qd(w,45008,212,3,0,0,0);A=Tn(Tn(w,45037,20)|0,45428,38)|0;E=i[B>>0]|0;D=E<<24>>24<0;Tn(Tn(A,D?k[b>>2]|0:b,D?k[C>>2]|0:E&255)|0,45467,37)|0;hi(w)}}else if((E|0)==29){i[c>>0]=0;if((i[p>>0]|0)<0){i[k[o>>2]>>0]=0;k[q>>2]=0}else{i[o>>0]=0;i[p>>0]=0}p1(y);p1(x)}r=F;return}function Kc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;c=k[e+4>>2]|0;d=a;k[d>>2]=k[e>>2];k[d+4>>2]=c;d=a+8|0;c=b+8|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=a+20|0;d=b+20|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+32|0;c=b+32|0;k[d>>2]=0;e=a+36|0;k[e>>2]=0;k[a+40>>2]=0;k[d>>2]=k[c>>2];d=b+36|0;k[e>>2]=k[d>>2];e=b+40|0;k[a+40>>2]=k[e>>2];k[e>>2]=0;k[d>>2]=0;k[c>>2]=0;c=a+44|0;d=b+44|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+56|0;c=b+56|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=a+68|0;d=b+68|0;k[c>>2]=0;e=a+72|0;k[e>>2]=0;k[a+76>>2]=0;k[c>>2]=k[d>>2];c=b+72|0;k[e>>2]=k[c>>2];e=b+76|0;k[a+76>>2]=k[e>>2];k[e>>2]=0;k[c>>2]=0;k[d>>2]=0;d=a+80|0;c=b+80|0;k[d>>2]=0;e=a+84|0;k[e>>2]=0;k[a+88>>2]=0;k[d>>2]=k[c>>2];d=b+84|0;k[e>>2]=k[d>>2];e=b+88|0;k[a+88>>2]=k[e>>2];k[e>>2]=0;k[d>>2]=0;k[c>>2]=0;i[a+92>>0]=i[b+92>>0]|0;c=a+96|0;d=b+96|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+108|0;c=b+108|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;i[a+120>>0]=i[b+120>>0]|0;c=a+124|0;d=b+124|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;c=a+136|0;d=b+136|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+148>>0]=i[b+148>>0]|0;d=a+152|0;c=b+152|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=a+164|0;d=b+164|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+176>>0]=i[b+176>>0]|0;d=a+180|0;c=b+180|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];i[d+8>>0]=i[c+8>>0]|0;d=a+192|0;c=b+192|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;i[a+204>>0]=i[b+204>>0]|0;c=a+208|0;d=b+208|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+220|0;c=b+220|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=b+232|0;d=k[c+4>>2]|0;e=a+232|0;k[e>>2]=k[c>>2];k[e+4>>2]=d;i[a+240>>0]=i[b+240>>0]|0;e=a+244|0;d=b+244|0;k[e>>2]=0;c=a+248|0;k[c>>2]=0;k[a+252>>2]=0;k[e>>2]=k[d>>2];e=b+248|0;k[c>>2]=k[e>>2];c=b+252|0;k[a+252>>2]=k[c>>2];k[c>>2]=0;k[e>>2]=0;k[d>>2]=0;d=a+256|0;e=b+256|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=a+268|0;d=b+268|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];k[e+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+280>>0]=i[b+280>>0]|0;d=a+284|0;e=b+284|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];i[d+8>>0]=i[e+8>>0]|0;d=a+296|0;e=b+296|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;i[a+308>>0]=i[b+308>>0]|0;e=a+312|0;d=b+312|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];k[e+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+324|0;e=b+324|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=b+336|0;d=k[e+4>>2]|0;c=a+336|0;k[c>>2]=k[e>>2];k[c+4>>2]=d;i[a+344>>0]=i[b+344>>0]|0;c=a+348|0;d=b+348|0;k[c>>2]=0;e=a+352|0;k[e>>2]=0;k[a+356>>2]=0;k[c>>2]=k[d>>2];c=b+352|0;k[e>>2]=k[c>>2];e=b+356|0;k[a+356>>2]=k[e>>2];k[e>>2]=0;k[c>>2]=0;k[d>>2]=0;d=a+360|0;c=b+360|0;k[d>>2]=0;e=a+364|0;k[e>>2]=0;k[a+368>>2]=0;k[d>>2]=k[c>>2];d=b+364|0;k[e>>2]=k[d>>2];b=b+368|0;k[a+368>>2]=k[b>>2];k[b>>2]=0;k[d>>2]=0;k[c>>2]=0;return}function Lc(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;x=r;r=r+16|0;s=x+12|0;q=x+8|0;u=x+4|0;v=x;i=LZ(d)|0;k[s>>2]=i;t=k_(s,111636)|0;oU(i)|0;k[e>>2]=0;i=0;a:while(1){p=(g|0)!=(h|0);j=i;while(1){i=k[b>>2]|0;if(!(p&(j|0)==0))break a;l=i;if(i){j=k[i+12>>2]|0;if((j|0)==(k[i+16>>2]|0))j=Ub[k[(k[i>>2]|0)+36>>2]&511](i)|0;else j=k[j>>2]|0;if((j|0)==-1){k[b>>2]=0;i=0;n=1;o=0}else{n=0;o=l}}else{i=0;n=1;o=l}m=k[c>>2]|0;j=m;do if(m){l=k[m+12>>2]|0;if((l|0)==(k[m+16>>2]|0))l=Ub[k[(k[m>>2]|0)+36>>2]&511](m)|0;else l=k[l>>2]|0;if((l|0)!=-1)if(n)break;else{w=18;break a}else{k[c>>2]=0;j=0;w=16;break}}else w=16;while(0);if((w|0)==16){w=0;if(n){w=18;break a}else m=0}if((Yb[k[(k[t>>2]|0)+52>>2]&31](t,k[g>>2]|0,0)|0)<<24>>24==37){w=20;break}if(Yb[k[(k[t>>2]|0)+12>>2]&31](t,8192,k[g>>2]|0)|0){w=28;break}l=i+12|0;j=k[l>>2]|0;m=i+16|0;if((j|0)==(k[m>>2]|0))j=Ub[k[(k[i>>2]|0)+36>>2]&511](i)|0;else j=k[j>>2]|0;o=cc[k[(k[t>>2]|0)+28>>2]&127](t,j)|0;if((o|0)==(cc[k[(k[t>>2]|0)+28>>2]&127](t,k[g>>2]|0)|0)){w=56;break}k[e>>2]=4;j=4}b:do if((w|0)==20){w=0;n=g+4|0;if((n|0)==(h|0)){w=21;break a}l=Yb[k[(k[t>>2]|0)+52>>2]&31](t,k[n>>2]|0,0)|0;switch(l<<24>>24){case 48:case 69:{g=g+8|0;if((g|0)==(h|0)){w=26;break a}m=l;i=Yb[k[(k[t>>2]|0)+52>>2]&31](t,k[g>>2]|0,0)|0;g=n;break}default:{m=0;i=l}}p=k[(k[a>>2]|0)+36>>2]|0;k[u>>2]=o;k[v>>2]=j;k[q>>2]=k[u>>2];k[s>>2]=k[v>>2];p=Zb[p&15](a,q,s,d,e,f,i,m)|0;k[b>>2]=p;g=g+8|0}else if((w|0)==28){while(1){w=0;g=g+4|0;if((g|0)==(h|0)){g=h;break}if(Yb[k[(k[t>>2]|0)+12>>2]&31](t,8192,k[g>>2]|0)|0)w=28;else break}j=m;n=m;while(1){if(i){l=k[i+12>>2]|0;if((l|0)==(k[i+16>>2]|0))l=Ub[k[(k[i>>2]|0)+36>>2]&511](i)|0;else l=k[l>>2]|0;if((l|0)==-1){k[b>>2]=0;m=1;i=0}else m=0}else{m=1;i=0}do if(n){l=k[n+12>>2]|0;if((l|0)==(k[n+16>>2]|0))l=Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0;else l=k[l>>2]|0;if((l|0)!=-1)if(m^(j|0)==0){o=j;n=j;break}else break b;else{k[c>>2]=0;j=0;w=43;break}}else w=43;while(0);if((w|0)==43){w=0;if(m)break b;else{o=j;n=0}}l=i+12|0;j=k[l>>2]|0;m=i+16|0;if((j|0)==(k[m>>2]|0))j=Ub[k[(k[i>>2]|0)+36>>2]&511](i)|0;else j=k[j>>2]|0;if(!(Yb[k[(k[t>>2]|0)+12>>2]&31](t,8192,j)|0))break b;j=k[l>>2]|0;if((j|0)==(k[m>>2]|0)){Ub[k[(k[i>>2]|0)+40>>2]&511](i)|0;j=o;continue}else{k[l>>2]=j+4;j=o;continue}}}else if((w|0)==56){w=0;j=k[l>>2]|0;if((j|0)==(k[m>>2]|0))Ub[k[(k[i>>2]|0)+40>>2]&511](i)|0;else k[l>>2]=j+4;g=g+4|0}while(0);i=k[e>>2]|0}if((w|0)==18)k[e>>2]=4;else if((w|0)==21)k[e>>2]=4;else if((w|0)==26)k[e>>2]=4;if(i){g=k[i+12>>2]|0;if((g|0)==(k[i+16>>2]|0))g=Ub[k[(k[i>>2]|0)+36>>2]&511](i)|0;else g=k[g>>2]|0;if((g|0)==-1){k[b>>2]=0;i=0;l=1}else l=0}else{i=0;l=1}g=k[c>>2]|0;do if(g){j=k[g+12>>2]|0;if((j|0)==(k[g+16>>2]|0))g=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else g=k[j>>2]|0;if((g|0)!=-1)if(l)break;else{w=76;break}else{k[c>>2]=0;w=74;break}}else w=74;while(0);if((w|0)==74?l:0)w=76;if((w|0)==76)k[e>>2]=k[e>>2]|2;r=x;return i|0}function Mc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0.0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+96|0;t=v+84|0;u=v+72|0;s=v;k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=0;k[u>>2]=0;k[u+4>>2]=0;k[u+8>>2]=0;b=(k[a+24>>2]|0)+((k[a+40>>2]|0)*12|0)|0;if((i[b+11>>0]|0)<0)b=k[b>>2]|0;h=t+11|0;j=t+4|0;l=u+11|0;m=u+4|0;c=0;e=0;q=0;b=b+18|0;p=0;a:while(1){o=e;b:while(1){g=c;c:while(1){while(1){e=b;d:while(1){b=i[e>>0]|0;switch(b<<24>>24){case 0:{n=39;break a}case 32:case 44:break;default:{c=e;break d}}e=e+1|0}e:while(1){switch(b<<24>>24){case 0:{b=0;break a}case 61:break e;default:{}}b=c+1|0;c=b;b=i[b>>0]|0}d=c+1|0;c=0;b=d;f:while(1){switch(i[b>>0]|0){case 0:break f;case 34:{c=c^1;break}case 44:case 32:{if(c)c=1;else break f;break}default:{}}b=b+1|0}if(!(Kw(e,45562,10)|0))break;if(!(Kw(e,45573,9)|0))break c;if(!(Kw(e,45583,6)|0)){k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;wE(s,d,b-d|0);if((i[h>>0]|0)<0){i[k[t>>2]>>0]=0;k[j>>2]=0}else{i[t>>0]=0;i[h>>0]=0}Qm(t,0);k[t>>2]=k[s>>2];k[t+4>>2]=k[s+4>>2];k[t+8>>2]=k[s+8>>2];k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;p1(s);continue}if(!(Kw(e,45590,10)|0))break b;if(Kw(e,45362,5)|0)continue;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;wE(s,d,b-d|0);if((i[l>>0]|0)<0){i[k[u>>2]>>0]=0;k[m>>2]=0}else{i[u>>0]=0;i[l>>0]=0}Qm(u,0);k[u>>2]=k[s>>2];k[u+4>>2]=k[s+4>>2];k[u+8>>2]=k[s+8>>2];k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;p1(s);cm(s,u,44996,2);if((i[l>>0]|0)<0){i[k[u>>2]>>0]=0;k[m>>2]=0}else{i[u>>0]=0;i[l>>0]=0}Qm(u,0);k[u>>2]=k[s>>2];k[u+4>>2]=k[s+4>>2];k[u+8>>2]=k[s+8>>2];k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;p1(s)}g=iA(d)|0}c=g;o=iA(d)|0}f=+Waa(d,s);d=k[s>>2]|0;if((i[d>>0]|0)!=120){n=30;break}c=g;e=o;q=~~f;p=~~+Waa(d+1|0,0)}if((n|0)==30)b=0;else if((n|0)==39){g=tp(a,g)|0;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;h=s+16|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;j=s+36|0;b=j;c=b+36|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(c|0));e=s+12|0;k[e>>2]=o;MM(h,t)|0;d=s+28|0;k[d>>2]=q;k[s+32>>2]=p;MM(j,u)|0;do if(ay(a,s)|0){b=g+8|0;c=k[b>>2]|0;if((c|0)==(k[g+12>>2]|0)){qk(g+4|0,s);b=1;break}else{iI(c,s);k[c+12>>2]=k[e>>2];iI(c+16|0,h);p=d;q=k[p+4>>2]|0;a=c+28|0;k[a>>2]=k[p>>2];k[a+4>>2]=q;iI(c+36|0,j);iI(c+48|0,s+48|0);iI(c+60|0,s+60|0);k[b>>2]=(k[b>>2]|0)+72;b=1;break}}else b=0;while(0);p1(s+60|0);p1(s+48|0);p1(j);p1(h);p1(s)}p1(u);p1(t);r=v;return b|0}function Nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=r;r=r+352|0;z=G+156|0;A=G+312|0;C=G;D=a+56|0;e=k[D>>2]|0;E=b+2024|0;if((e|0)!=-1){d=k[b+2056>>2]|0;if(e>>>0>d>>>0){e=d+-1|0;k[D>>2]=e}}else{e=k[E>>2]|0;k[D>>2]=e}d=j[a+48>>1]|0;if(!((d&255)<<24>>24))if((d&65535)<256)y=0;else{y=x7(b+1260|0)|0;e=k[D>>2]|0}else y=1;p=b+2056|0;a:do if(e>>>0<(k[p>>2]|0)>>>0){q=b+1260|0;s=b+1576|0;t=b+2088|0;u=A+16|0;v=A+4|0;w=b+2060|0;x=a+184|0;do{if(!(MP(q,e)|0))break a;if(y?(B=k[s>>2]|0,(B|0)!=1):0){o=k[D>>2]|0;d=(o|0)%(B|0)|0;if((d|0)==(B+-1|0)){d=o-d|0;k[D>>2]=d;b:do if((k[s>>2]|0)>0){d=DT(w,d)|0;c:do if(d|0){f=0;e=0;do{if(!(gK(d)|0))break c;e=((k[d+4>>2]|0)-(k[d>>2]|0)>>2)+e|0;f=f+1|0;d=k[D>>2]|0;if((f|0)>=(k[s>>2]|0)){F=24;break b}d=DT(w,d+f|0)|0}while((d|0)!=0)}while(0);n=cW(24)|0;zZ(n,6,c);II(b,n);if((k[2783]|0)<4){Qd(C,43163,203,3,0,0,0);m=Tn(Mn(Tn(C,43310,24)|0,c)|0,43335,7)|0;m=Tn(Ln(m,k[p>>2]|0)|0,43301,8)|0;m=Tn(Ln(m,k[E>>2]|0)|0,51129,1)|0;n=k[E>>2]|0;Ln(m,n+(x9(E)|0)|0)|0;hi(C)}Sb[k[(k[a>>2]|0)+132>>2]&511](a,c)}else{e=0;F=24}while(0);if((F|0)==24){F=0;jJ(A,e,d,0,t);if((k[s>>2]|0)>0){n=0;d=0;e=0;do{m=DT(w,(k[D>>2]|0)+n|0)|0;l=m+4|0;f=k[m>>2]|0;if(((k[l>>2]|0)-f|0)>0){h=0;while(1){g=e+1|0;uk(A,k[f+(h<<2)>>2]|0,e);h=h+1|0;f=k[m>>2]|0;if((h|0)>=((k[l>>2]|0)-f>>2|0)){e=g;break}else e=g}}d=(k[m+16>>2]|0)+d|0;n=n+1|0}while((n|0)<(k[s>>2]|0))}else d=0;k[u>>2]=d;ni(a,q,A);d=k[A>>2]|0;if((k[v>>2]|0)!=(d|0)){e=0;do{k[d+(e<<2)>>2]=0;e=e+1|0;d=k[A>>2]|0}while(e>>>0<(k[v>>2]|0)-d>>2>>>0)}dG(A)}k[D>>2]=o}}else F=13;do if((F|0)==13){F=0;d=DT(w,k[D>>2]|0)|0;if(d|0){ni(a,q,d);break}o=cW(24)|0;zZ(o,6,k[D>>2]|0);II(b,o);if((k[2783]|0)<4){Qd(z,43163,155,3,0,0,0);n=Tn(z,43266,24)|0;n=Tn(Mn(n,k[D>>2]|0)|0,43291,9)|0;n=Tn(Ln(n,k[p>>2]|0)|0,43301,8)|0;n=Tn(Ln(n,k[E>>2]|0)|0,51129,1)|0;o=k[E>>2]|0;Ln(n,o+(x9(E)|0)|0)|0;hi(z)}i[x>>0]=1;Sb[k[(k[a>>2]|0)+132>>2]&511](a,c)}while(0);e=(k[D>>2]|0)+1|0;k[D>>2]=e}while(e>>>0<(k[p>>2]|0)>>>0)}while(0);r=G;return}function Oc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=r;r=r+96|0;B=I+8|0;A=I+92|0;C=I+88|0;D=I+84|0;E=I;F=I+72|0;G=a+40|0;H=a+44|0;b=k[H>>2]|0;c=b;if((c|0)!=(G|0)){t=a+52|0;u=a+48|0;do{n=b;p=n+40|0;m=k[t>>2]|0;d=m+2008|0;q=p+11|0;e=i[q>>0]|0;g=e<<24>>24<0;s=n+44|0;e=e&255;h=g?k[s>>2]|0:e;o=i[d+11>>0]|0;f=o<<24>>24<0;a:do if((h|0)==((f?k[m+2012>>2]|0:o&255)|0)){j=k[p>>2]|0;l=g?j:p;d=f?k[d>>2]|0:d;f=(h|0)==0;if(g){if(f){o=28;break}if(!(EI(l,d,h)|0)){o=28;break}else{o=13;break}}if(!f)if((j&255)<<24>>24==(i[d>>0]|0)){f=p;while(1){e=e+-1|0;f=f+1|0;if(!e){o=28;break a}d=d+1|0;if((i[f>>0]|0)!=(i[d>>0]|0)){o=13;break}}}else o=13;else o=28}else o=13;while(0);if((o|0)==13){o=0;h=_J()|0;l=n+56|0;l=n_(h|0,M|0,k[l>>2]|0,k[l+4>>2]|0)|0;h=M;d=k[t>>2]|0;m=k[d+1872>>2]|0;j=((m|0)<0)<<31>>31;if(h>>>0>j>>>0|(h|0)==(j|0)&l>>>0>m>>>0){e=k[d+452>>2]|0;m=d+448|0;if((e|0)!=(m|0)){l=n+8|0;j=e;d=e;do{h=k[d+8>>2]|0;b:do if(!(Ub[k[(k[h>>2]|0)+64>>2]&511](h)|0)?(v=h+8|0,x=i[q>>0]|0,w=x<<24>>24<0,x=x&255,y=w?k[s>>2]|0:x,n=i[v+11>>0]|0,z=n<<24>>24<0,(y|0)==((z?k[h+12>>2]|0:n&255)|0)):0){f=k[p>>2]|0;g=w?f:p;d=z?k[v>>2]|0:v;e=(y|0)==0;c:do if(w){if(!e?EI(g,d,y)|0:0)break b}else if(!e){if((f&255)<<24>>24==(i[d>>0]|0)){e=p;f=x}else break b;while(1){f=f+-1|0;e=e+1|0;if(!f)break c;d=d+1|0;if((i[e>>0]|0)!=(i[d>>0]|0))break b}}while(0);gr(h+76|0,l)}while(0);d=k[j+4>>2]|0;j=d}while((j|0)!=(m|0))}s=k[c+4>>2]|0;q=b;p=q+4|0;k[(k[q>>2]|0)+4>>2]=k[p>>2];k[k[p>>2]>>2]=k[b>>2];k[u>>2]=(k[u>>2]|0)+-1;q=q+8|0;Rb[k[(k[q>>2]|0)+8>>2]&2047](q);zba(b);b=s}else o=28}if((o|0)==28)b=k[c+4>>2]|0;c=b}while((c|0)!=(G|0))}if(!(Ub[k[(k[a>>2]|0)+24>>2]&511](a)|0)){b=a+48|0;c=a+52|0;d=k[c>>2]|0;if((k[b>>2]|0)>>>0<(k[d+1852>>2]|0)>>>0){iI(F,d+2008|0);v=a+104|0;u=k[v>>2]|0;v=k[v+4>>2]|0;w=i[a+116>>0]|0;z=B+4|0;k[B+12>>2]=0;k[B+16>>2]=0;y=B+12|0;k[B+8>>2]=y;k[B>>2]=6464;k[z>>2]=6492;x=B+24|0;k[x>>2]=u;k[x+4>>2]=v;x=B+32|0;iI(x,F);v=B+48|0;k[v>>2]=0;k[v+4>>2]=0;i[B+56>>0]=w;Ts(G,B);k[B>>2]=6464;k[z>>2]=6492;p1(x);k[B>>2]=1972;k[z>>2]=2e3;Bo(B);dH(B+8|0,k[y>>2]|0);k[z>>2]=2024;p1(F);k[C>>2]=k[H>>2];k[D>>2]=G;H=k[b>>2]|0;k[A>>2]=k[C>>2];k[B>>2]=k[D>>2];qe(A,B,H,E)|0;i[a+119>>0]=1;tB(a+88|0,k[(k[c>>2]|0)+1868>>2]|0)|0}}else c=a+52|0;d=k[c>>2]|0;b=k[d+452>>2]|0;d=d+448|0;if((b|0)!=(d|0)){e=b;do{H=k[e+8>>2]|0;Rb[k[(k[H>>2]|0)+104>>2]&2047](H);e=k[b+4>>2]|0;b=e}while((b|0)!=(d|0))}if(Ub[k[(k[a>>2]|0)+24>>2]&511](a)|0)dF(a+20|0);tB(a+72|0,k[(k[c>>2]|0)+1876>>2]|0)|0;r=I;return}function Pc(a,b,c,d,e,f,g,h,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;var m=0,n=0;n=r;r=r+16|0;m=n;if(a){b=k_(b,113324)|0;Sb[k[(k[b>>2]|0)+44>>2]&511](m,b);a=k[m>>2]|0;i[c>>0]=a;i[c+1>>0]=a>>8;i[c+2>>0]=a>>16;i[c+3>>0]=a>>24;Sb[k[(k[b>>2]|0)+32>>2]&511](m,b);a=j+11|0;if((i[a>>0]|0)<0){i[k[j>>2]>>0]=0;k[j+4>>2]=0;a=j}else{i[j>>0]=0;i[a>>0]=0;a=j}Qm(j,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[b>>2]|0)+28>>2]&511](m,b);a=h+11|0;if((i[a>>0]|0)<0){i[k[h>>2]>>0]=0;k[h+4>>2]=0;a=h}else{i[h>>0]=0;i[a>>0]=0;a=h}Qm(h,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);a=Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;i[d>>0]=a;a=Ub[k[(k[b>>2]|0)+16>>2]&511](b)|0;i[e>>0]=a;Sb[k[(k[b>>2]|0)+20>>2]&511](m,b);a=f+11|0;if((i[a>>0]|0)<0){i[k[f>>2]>>0]=0;k[f+4>>2]=0;a=f}else{i[f>>0]=0;i[a>>0]=0;a=f}Qm(f,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[b>>2]|0)+24>>2]&511](m,b);a=g+11|0;if((i[a>>0]|0)<0){i[k[g>>2]>>0]=0;k[g+4>>2]=0;a=g}else{i[g>>0]=0;i[a>>0]=0;a=g}Qm(g,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);a=Ub[k[(k[b>>2]|0)+36>>2]&511](b)|0}else{b=k_(b,113316)|0;Sb[k[(k[b>>2]|0)+44>>2]&511](m,b);a=k[m>>2]|0;i[c>>0]=a;i[c+1>>0]=a>>8;i[c+2>>0]=a>>16;i[c+3>>0]=a>>24;Sb[k[(k[b>>2]|0)+32>>2]&511](m,b);a=j+11|0;if((i[a>>0]|0)<0){i[k[j>>2]>>0]=0;k[j+4>>2]=0;a=j}else{i[j>>0]=0;i[a>>0]=0;a=j}Qm(j,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[b>>2]|0)+28>>2]&511](m,b);a=h+11|0;if((i[a>>0]|0)<0){i[k[h>>2]>>0]=0;k[h+4>>2]=0;a=h}else{i[h>>0]=0;i[a>>0]=0;a=h}Qm(h,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);a=Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;i[d>>0]=a;a=Ub[k[(k[b>>2]|0)+16>>2]&511](b)|0;i[e>>0]=a;Sb[k[(k[b>>2]|0)+20>>2]&511](m,b);a=f+11|0;if((i[a>>0]|0)<0){i[k[f>>2]>>0]=0;k[f+4>>2]=0;a=f}else{i[f>>0]=0;i[a>>0]=0;a=f}Qm(f,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[b>>2]|0)+24>>2]&511](m,b);a=g+11|0;if((i[a>>0]|0)<0){i[k[g>>2]>>0]=0;k[g+4>>2]=0;a=g}else{i[g>>0]=0;i[a>>0]=0;a=g}Qm(g,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);a=Ub[k[(k[b>>2]|0)+36>>2]&511](b)|0}k[l>>2]=a;r=n;return}function Qc(a,b,c,d,e,f,g,h,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;var m=0,n=0;n=r;r=r+16|0;m=n;if(a){b=k_(b,113340)|0;Sb[k[(k[b>>2]|0)+44>>2]&511](m,b);a=k[m>>2]|0;i[c>>0]=a;i[c+1>>0]=a>>8;i[c+2>>0]=a>>16;i[c+3>>0]=a>>24;Sb[k[(k[b>>2]|0)+32>>2]&511](m,b);a=j+8+3|0;if((i[a>>0]|0)<0){k[k[j>>2]>>2]=0;k[j+4>>2]=0}else{k[j>>2]=0;i[a>>0]=0}Jl(j,0);k[j>>2]=k[m>>2];k[j+4>>2]=k[m+4>>2];k[j+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);Sb[k[(k[b>>2]|0)+28>>2]&511](m,b);a=h+8+3|0;if((i[a>>0]|0)<0){k[k[h>>2]>>2]=0;k[h+4>>2]=0}else{k[h>>2]=0;i[a>>0]=0}Jl(h,0);k[h>>2]=k[m>>2];k[h+4>>2]=k[m+4>>2];k[h+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);a=Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;k[d>>2]=a;a=Ub[k[(k[b>>2]|0)+16>>2]&511](b)|0;k[e>>2]=a;Sb[k[(k[b>>2]|0)+20>>2]&511](m,b);a=f+11|0;if((i[a>>0]|0)<0){i[k[f>>2]>>0]=0;k[f+4>>2]=0;a=f}else{i[f>>0]=0;i[a>>0]=0;a=f}Qm(f,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[b>>2]|0)+24>>2]&511](m,b);a=g+8+3|0;if((i[a>>0]|0)<0){k[k[g>>2]>>2]=0;k[g+4>>2]=0}else{k[g>>2]=0;i[a>>0]=0}Jl(g,0);k[g>>2]=k[m>>2];k[g+4>>2]=k[m+4>>2];k[g+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);a=Ub[k[(k[b>>2]|0)+36>>2]&511](b)|0}else{b=k_(b,113332)|0;Sb[k[(k[b>>2]|0)+44>>2]&511](m,b);a=k[m>>2]|0;i[c>>0]=a;i[c+1>>0]=a>>8;i[c+2>>0]=a>>16;i[c+3>>0]=a>>24;Sb[k[(k[b>>2]|0)+32>>2]&511](m,b);a=j+8+3|0;if((i[a>>0]|0)<0){k[k[j>>2]>>2]=0;k[j+4>>2]=0}else{k[j>>2]=0;i[a>>0]=0}Jl(j,0);k[j>>2]=k[m>>2];k[j+4>>2]=k[m+4>>2];k[j+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);Sb[k[(k[b>>2]|0)+28>>2]&511](m,b);a=h+8+3|0;if((i[a>>0]|0)<0){k[k[h>>2]>>2]=0;k[h+4>>2]=0}else{k[h>>2]=0;i[a>>0]=0}Jl(h,0);k[h>>2]=k[m>>2];k[h+4>>2]=k[m+4>>2];k[h+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);a=Ub[k[(k[b>>2]|0)+12>>2]&511](b)|0;k[d>>2]=a;a=Ub[k[(k[b>>2]|0)+16>>2]&511](b)|0;k[e>>2]=a;Sb[k[(k[b>>2]|0)+20>>2]&511](m,b);a=f+11|0;if((i[a>>0]|0)<0){i[k[f>>2]>>0]=0;k[f+4>>2]=0;a=f}else{i[f>>0]=0;i[a>>0]=0;a=f}Qm(f,0);k[a>>2]=k[m>>2];k[a+4>>2]=k[m+4>>2];k[a+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}p1(m);Sb[k[(k[b>>2]|0)+24>>2]&511](m,b);a=g+8+3|0;if((i[a>>0]|0)<0){k[k[g>>2]>>2]=0;k[g+4>>2]=0}else{k[g>>2]=0;i[a>>0]=0}Jl(g,0);k[g>>2]=k[m>>2];k[g+4>>2]=k[m+4>>2];k[g+8>>2]=k[m+8>>2];a=0;while(1){if((a|0)==3)break;k[m+(a<<2)>>2]=0;a=a+1|0}_0(m);a=Ub[k[(k[b>>2]|0)+36>>2]&511](b)|0}k[l>>2]=a;r=n;return}function Rc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0.0,l=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+352|0;v=B+336|0;g=B+180|0;n=B+168|0;z=B+32|0;A=B;w=B+24|0;x=B+16|0;y=a+4|0;h=k[y>>2]|0;l=a+124|0;u=k[l>>2]|0;m=((b|0)/(k[h+1576>>2]|0)|0)-(k[u+48>>2]|0)|0;if((m|0)>=0?m>>>0<(((k[a+128>>2]|0)-u|0)/96|0)>>>0:0){g=cW(136)|0;er(g,h+1952|0,k[a+116>>2]|0);k[g>>2]=13948;o=g+104|0;k[o>>2]=-1;q=g+108|0;k[q>>2]=-1;s=g+112|0;k[s>>2]=-1;k[g+116>>2]=0;t=g+120|0;k[t>>2]=0;u=g+128|0;h=u;k[h>>2]=0;k[h+4>>2]=0;h=k[l>>2]|0;l=h+(m*96|0)|0;if(!(i[(k[y>>2]|0)+1608>>0]|0))HT(g,0,l);else{iI(n,l);mg(v,n);HT(g,0,v);p1(v);p1(n)}do if((d|0)>-1){if(+p[h+(m*96|0)+24>>3]>=0.0){j=+p[h+(m*96|0)+16>>3];d=~~(+(d|0)+j);if((e|0)>-1)h=~~(+(e|0)+j);else h=e;if((d|0)<=-1)break}else h=e;l=z+4|0;k[z>>2]=4176;m=z+56|0;k[m>>2]=4196;GK(z+56|0,l);k[z+128>>2]=0;k[z+132>>2]=-1;k[z>>2]=4216;k[z+56>>2]=4236;sT(l);k[l>>2]=1740;n=z+36|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;k[n+12>>2]=0;k[z+52>>2]=16;k[v>>2]=0;k[v+4>>2]=0;k[v+8>>2]=0;cn(l,v);p1(v);Tn(Mn(Tn(z,51470,6)|0,d)|0,51129,1)|0;if((h|0)>-1){Mn(z,h)|0;h=1-d+h|0}else h=0;k[t>>2]=h;k[v>>2]=0;k[v+4>>2]=0;k[v+8>>2]=0;wE(v,51477,5);Yr(A,l);Wv(g,v,A);p1(A);p1(v);k[z>>2]=4216;k[m>>2]=4236;k[l>>2]=1740;p1(n);I3(l);Qaa(z,4248);N8(m)}while(0);k[o>>2]=b;k[q>>2]=c;k[s>>2]=f;z=_J()|0;A=u;k[A>>2]=z;k[A+4>>2]=M;o7(g,tv(a,(b|0)/(k[(k[y>>2]|0)+1576>>2]|0)|0)|0);A=g+24|0;aE(A);G4(g,1);k[w>>2]=126;k[w+4>>2]=0;k[v>>2]=k[w>>2];k[v+4>>2]=k[w+4>>2];kq(A,a,v)|0;A=g+16|0;aE(A);k[x>>2]=127;k[x+4>>2]=0;k[v>>2]=k[x>>2];k[v+4>>2]=k[x+4>>2];kq(A,a,v)|0;Ot(g)}else if((k[2783]|0)<4){Qd(g,50909,342,3,0,0,0);Tn(Mn(Tn(Mn(Tn(Mn(Tn(Mn(Tn(Mn(Tn(g,51352,71)|0,b)|0,51129,1)|0,c)|0,51424,14)|0,m)|0,51439,14)|0,d)|0,51454,15)|0,e)|0,68623,1)|0;hi(g);g=0}else g=0;r=B;return g|0}function Sc(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+16|0;u=B+12|0;t=B+8|0;y=B+4|0;z=B;w=LZ(d)|0;k[u>>2]=w;v=k_(u,111604)|0;oU(w)|0;k[e>>2]=0;w=v+8|0;m=g;g=0;a:while(1){s=(m|0)!=(h|0);n=g;while(1){g=k[b>>2]|0;if(!(s&(n|0)==0))break a;n=g;if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[b>>2]=0;g=0;n=0}}else g=0;q=(g|0)==0;p=k[c>>2]|0;o=p;do if(p){if((k[p+12>>2]|0)==(k[p+16>>2]|0)?(Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0)==-1:0){k[c>>2]=0;o=0;A=13;break}if(!q){A=14;break a}}else A=13;while(0);if((A|0)==13){A=0;if(q){A=14;break a}else p=0}if((Yb[k[(k[v>>2]|0)+36>>2]&31](v,i[m>>0]|0,0)|0)<<24>>24==37){A=16;break}n=i[m>>0]|0;if(n<<24>>24>-1?(x=k[w>>2]|0,j[x+(n<<24>>24<<1)>>1]&8192):0){A=25;break}o=g+12|0;n=k[o>>2]|0;p=g+16|0;if((n|0)==(k[p>>2]|0))n=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else n=l[n>>0]|0;q=cc[k[(k[v>>2]|0)+12>>2]&127](v,n&255)|0;if(q<<24>>24==(cc[k[(k[v>>2]|0)+12>>2]&127](v,i[m>>0]|0)|0)<<24>>24){A=52;break}k[e>>2]=4;n=4}b:do if((A|0)==16){A=0;s=m+1|0;if((s|0)==(h|0)){A=17;break a}p=Yb[k[(k[v>>2]|0)+36>>2]&31](v,i[s>>0]|0,0)|0;switch(p<<24>>24){case 48:case 69:{m=m+2|0;if((m|0)==(h|0)){A=22;break a}q=p;g=Yb[k[(k[v>>2]|0)+36>>2]&31](v,i[m>>0]|0,0)|0;m=s;break}default:{q=0;g=p}}s=k[(k[a>>2]|0)+36>>2]|0;k[y>>2]=n;k[z>>2]=o;k[t>>2]=k[y>>2];k[u>>2]=k[z>>2];g=Zb[s&15](a,t,u,d,e,f,g,q)|0;k[b>>2]=g;g=m+2|0}else if((A|0)==25){while(1){A=0;m=m+1|0;if((m|0)==(h|0)){m=h;break}n=i[m>>0]|0;if(n<<24>>24<=-1)break;if(!(j[x+(n<<24>>24<<1)>>1]&8192))break;else A=25}n=p;while(1){if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[b>>2]=0;g=0}}else g=0;o=(g|0)==0;do if(p){if((k[p+12>>2]|0)!=(k[p+16>>2]|0))if(o){s=n;break}else{g=m;break b}if((Ub[k[(k[p>>2]|0)+36>>2]&511](p)|0)!=-1)if(o^(n|0)==0){s=n;p=n;break}else{g=m;break b}else{k[c>>2]=0;n=0;A=38;break}}else A=38;while(0);if((A|0)==38){A=0;if(o){g=m;break b}else{s=n;p=0}}o=g+12|0;n=k[o>>2]|0;q=g+16|0;if((n|0)==(k[q>>2]|0))n=Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0;else n=l[n>>0]|0;if((n&255)<<24>>24<=-1){g=m;break b}if(!(j[(k[w>>2]|0)+(n<<24>>24<<1)>>1]&8192)){g=m;break b}n=k[o>>2]|0;if((n|0)==(k[q>>2]|0)){Ub[k[(k[g>>2]|0)+40>>2]&511](g)|0;n=s;continue}else{k[o>>2]=n+1;n=s;continue}}}else if((A|0)==52){A=0;n=k[o>>2]|0;if((n|0)==(k[p>>2]|0))Ub[k[(k[g>>2]|0)+40>>2]&511](g)|0;else k[o>>2]=n+1;g=m+1|0}while(0);m=g;g=k[e>>2]|0}if((A|0)==14)k[e>>2]=4;else if((A|0)==17)k[e>>2]=4;else if((A|0)==22)k[e>>2]=4;if(g){if((k[g+12>>2]|0)==(k[g+16>>2]|0)?(Ub[k[(k[g>>2]|0)+36>>2]&511](g)|0)==-1:0){k[b>>2]=0;g=0}}else g=0;m=(g|0)==0;n=k[c>>2]|0;do if(n){if((k[n+12>>2]|0)==(k[n+16>>2]|0)?(Ub[k[(k[n>>2]|0)+36>>2]&511](n)|0)==-1:0){k[c>>2]=0;A=67;break}if(!m)A=68}else A=67;while(0);if((A|0)==67?m:0)A=68;if((A|0)==68)k[e>>2]=k[e>>2]|2;r=B;return g|0}function Tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=r;r=r+80|0;B=E+64|0;e=E+56|0;x=E+48|0;y=E;k[B>>2]=b;z=B+4|0;k[z>>2]=c;C=B+8|0;k[C>>2]=0;D=a+16|0;a:do switch(k[D>>2]|0){case 0:{if((c|0)>9){d=0;f=c;while(1){e=b+d|0;if(BK(e,f)|0)break;d=d+1|0;k[C>>2]=d;f=c-d|0;if((f|0)<=9)break a}k[D>>2]=1;d=(Tc(a,e,c-d|0)|0)+d|0}else d=0;break}case 1:{if((c|0)>=10?(z=(l[b+6>>0]|0)<<21,y=(l[b+7>>0]|0)<<14,B=(l[b+8>>0]|0)<<7,A=l[b+9>>0]|0,k[C>>2]=10,(c+-10|0)>>>0>=(y&2080768|z&266338304|A&127|B&16256)>>>0):0){k[D>>2]=2;d=Tc(a,b,c)|0}else d=0;break}default:{j[e>>1]=(l[b+3>>0]|0)<<8|(l[b+4>>0]|0);w=i[b+5>>0]|0;i[e+2>>0]=w;v=(l[b+6>>0]|0)<<21;u=(l[b+7>>0]|0)<<14;d=(l[b+8>>0]|0)<<7;A=l[b+9>>0]|0;k[C>>2]=10;d=u&2080768|v&266338304|A&127|d&16256;k[e+4>>2]=d;A=c+-10|0;d=d+10|0;k[z>>2]=d;if(!(w&64))f=10;else{f=((l[b+11>>0]|0)<<14&2080768|(l[b+10>>0]|0)<<21&266338304|(l[b+13>>0]|0)&127|(l[b+12>>0]|0)<<7&16256)+10|0;k[C>>2]=f}w=a+12|0;v=k[w>>2]|0;Sb[k[(k[v>>2]|0)+8>>2]&511](v,e);b:do if((d-f|0)>9){h=y+20|0;m=y+32|0;n=y+20|0;o=y+20|0;p=y+32|0;q=y+20|0;s=y+20|0;t=y+24|0;u=y+20|0;v=y+36|0;c=b;e=f;c:while(1){g=c+e|0;g=l[g>>0]|l[g+1>>0]<<8|l[g+2>>0]<<16|l[g+3>>0]<<24;k[x>>2]=g;k[C>>2]=e+4;e=g&255;f=g>>>8;c=g>>>16;b=g>>>24;do if(!(eE(x,70451,4)|0)){k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[h+16>>2]=0;k[h+20>>2]=0;k[y>>2]=1;wl(a,B,y,x);p1(m);p1(h)}else{if(e<<24>>24==84){k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;k[y>>2]=2;wl(a,B,y,x);p1(n);break}if(!(eE(x,70456,4)|0)){k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;k[o+12>>2]=0;k[o+16>>2]=0;k[o+20>>2]=0;k[y>>2]=3;wl(a,B,y,x);p1(p);p1(o);break}if(e<<24>>24==87){k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;k[y>>2]=4;wl(a,B,y,x);p1(q);break}if(!(eE(x,70461,4)|0)){k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;k[s+12>>2]=0;k[s+16>>2]=0;k[y>>2]=5;wl(a,B,y,x);p1(s);break}if(!(eE(x,70466,4)|0)){i[u>>0]=0;k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=0;k[t+12>>2]=0;k[t+16>>2]=0;k[t+20>>2]=0;k[y>>2]=6;wl(a,B,y,x);p1(v);p1(t);break}if(!(((g|f|c|b)&255)<<24>>24))break c;k[y>>2]=0;wl(a,B,y,x)}while(0);d=k[z>>2]|0;e=k[C>>2]|0;if((d-e|0)<=9)break b;c=k[B>>2]|0}}while(0);k[C>>2]=d;d=k[w>>2]|0;Rb[k[(k[d>>2]|0)+16>>2]&2047](d);k[D>>2]=0;d=k[C>>2]|0;d=(Tc(a,(k[B>>2]|0)+d|0,A-d|0)|0)+d|0}}while(0);r=E;return d|0}function Uc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;p=r;r=r+624|0;n=p+520|0;o=p;c=p+352|0;f=p+508|0;g=p+340|0;h=p+328|0;j=p+172|0;l=p+16|0;FV(n);mD(o,0);do if(kH(n,b,o,1)|0){c=a+132|0;if(!(i[c>>0]|0)){k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,56171,3);a:do if(nE(o,h,f)|0){d=f+11|0;q=i[d>>0]|0;e=f+4|0;if(((q<<24>>24<0?k[e>>2]|0:q&255)|0)!=8){p1(h);m=28;break}q=(cA(f,0,-1,50561,8)|0)==0;p1(h);if(q){k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,50570,6);do if(nE(o,h,f)|0){q=i[d>>0]|0;if(((q<<24>>24<0?k[e>>2]|0:q&255)|0)!=2){p1(h);break}q=(cA(f,0,-1,50577,2)|0)==0;p1(h);if(q){i[c>>0]=1;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,50580,10);q=nE(o,h,g)|0;p1(h);if(!q){dF(a+36|0);break a}q=i[g+11>>0]|0;if(((q<<24>>24<0?k[g+4>>2]|0:q&255)|0)==4?(cA(g,0,-1,108754,4)|0)==0:0){dF(a+36|0);break a}dF(a+56|0);break a}}else p1(h);while(0);if((k[2783]|0)<5){Qd(j,50515,244,4,0,0,0);c=Tn(j,50591,20)|0;q=i[d>>0]|0;d=q<<24>>24<0;Tn(c,d?k[f>>2]|0:f,d?k[e>>2]|0:q&255)|0;hi(j)}k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,50612,11);qF(a,0);p1(h)}else m=28}else{p1(h);m=28}while(0);if((m|0)==28?(k[2783]|0)<4:0){Qd(l,50515,248,3,0,0,0);j=Tn(l,50624,17)|0;q=i[b+11>>0]|0;m=q<<24>>24<0;Tn(j,m?k[b>>2]|0:b,m?k[b+4>>2]|0:q&255)|0;hi(l)}p1(g);p1(f)}else ch(a,o);if(b|0){p1(b);zba(b)}}else{if((k[2783]|0)<5){Qd(c,50515,218,4,0,0,0);l=Tn(c,50534,26)|0;q=i[b+11>>0]|0;m=q<<24>>24<0;Tn(l,m?k[b>>2]|0:b,m?k[b+4>>2]|0:q&255)|0;hi(c);c=b}else{if(!b)break;c=b}p1(b);zba(c)}while(0);Lv(o);p1(n+80|0);p1(n+48|0);yI(n+24|0);lJ(n);r=p;return}function Vc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;b=Tn(b,67767,4)|0;Ln(b,k[a+8>>2]|0)|0;b=Tn(110732,68236,11)|0;Ln(b,l[a+44>>0]|0)|0;b=Tn(110732,68248,22)|0;Ln(b,l[a+45>>0]|0)|0;b=Tn(110732,68271,22)|0;Ln(b,l[a+46>>0]|0)|0;b=Tn(110732,68294,20)|0;Ln(b,l[a+47>>0]|0)|0;b=Tn(110732,68315,14)|0;d=a+48|0;b=Tn(Ln(b,l[d>>0]|0)|0,68330,12)|0;Ln(b,(l[d>>0]|0)+1|0)|0;d=1;b=a+4|0;while(1){b=k[b>>2]|0;c=d+1|0;if(!b)break;else{d=c;b=b+4|0}}g=r;r=r+((1*c|0)+15&-16)|0;XG(g|0,32,d|0)|0;i[g+d>>0]=0;e=Tn(110732,68343,8)|0;f=e+(k[(k[e>>2]|0)+-12>>2]|0)+4|0;k[f>>2]=k[f>>2]&-75|8;f=LZ(e+(k[(k[e>>2]|0)+-12>>2]|0)|0)|0;k[h>>2]=f;f=k_(h,111604)|0;f=cc[k[(k[f>>2]|0)+28>>2]&127](f,10)|0;t6(h);Ss(e,f)|0;UA(e)|0;e=a+52|0;f=a+56|0;if((k[f>>2]|0)!=(k[e>>2]|0)){d=0;do{Tn(Tn(110732,g,iC(g)|0)|0,68361,4)|0;b=k[e>>2]|0;if(k[b+(d<<3)+4>>2]|0){c=0;do{Tn(Ln(110732,l[(k[b+(d<<3)>>2]|0)+c>>0]|0)|0,103341,1)|0;c=c+1|0;b=k[e>>2]|0}while(c>>>0<(k[b+(d<<3)+4>>2]|0)>>>0)}d=d+1|0}while(d>>>0<(k[f>>2]|0)-b>>3>>>0)}f=LZ(110732+(k[(k[27683]|0)+-12>>2]|0)|0)|0;k[h>>2]=f;f=k_(h,111604)|0;f=cc[k[(k[f>>2]|0)+28>>2]&127](f,10)|0;t6(h);Ss(110732,f)|0;UA(110732)|0;f=Tn(Tn(110732,g,iC(g)|0)|0,103292,1)|0;f=f+(k[(k[f>>2]|0)+-12>>2]|0)+4|0;k[f>>2]=k[f>>2]&-75|2;f=Tn(110732,68352,8)|0;e=f+(k[(k[f>>2]|0)+-12>>2]|0)+4|0;k[e>>2]=k[e>>2]&-75|8;e=LZ(f+(k[(k[f>>2]|0)+-12>>2]|0)|0)|0;k[h>>2]=e;e=k_(h,111604)|0;e=cc[k[(k[e>>2]|0)+28>>2]&127](e,10)|0;t6(h);Ss(f,e)|0;UA(f)|0;f=a+64|0;e=a+68|0;if((k[e>>2]|0)!=(k[f>>2]|0)){d=0;do{Tn(Tn(110732,g,iC(g)|0)|0,68361,4)|0;b=k[f>>2]|0;if(k[b+(d<<3)+4>>2]|0){c=0;do{Tn(Ln(110732,l[(k[b+(d<<3)>>2]|0)+c>>0]|0)|0,103341,1)|0;c=c+1|0;b=k[f>>2]|0}while(c>>>0<(k[b+(d<<3)+4>>2]|0)>>>0)}d=d+1|0}while(d>>>0<(k[e>>2]|0)-b>>3>>>0)}a=LZ(110732+(k[(k[27683]|0)+-12>>2]|0)|0)|0;k[h>>2]=a;a=k_(h,111604)|0;a=cc[k[(k[a>>2]|0)+28>>2]&127](a,10)|0;t6(h);Ss(110732,a)|0;UA(110732)|0;h=Tn(Tn(110732,g,iC(g)|0)|0,103292,1)|0;h=h+(k[(k[h>>2]|0)+-12>>2]|0)+4|0;k[h>>2]=k[h>>2]&-75|2;r=j;return}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+160|0;q=u+148|0;s=u+136|0;t=u;a:do if(!b){k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;wE(a,115628,0)}else{b:do if(!(P5(b,103300)|0)){c=b;while(1){d=i[c>>0]|0;if(!(d<<24>>24))break;if((d+-1&255)<31)break b;else c=c+1|0}k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;wE(s,103308,1);t=eZ(s,b)|0;k[q>>2]=k[t>>2];k[q+4>>2]=k[t+4>>2];k[q+8>>2]=k[t+8>>2];k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=0;t=eZ(q,103308)|0;k[a>>2]=k[t>>2];k[a+4>>2]=k[t+4>>2];k[a+8>>2]=k[t+8>>2];k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=0;p1(q);p1(s);break a}while(0);c=((iC(b)|0)<<1)+3|0;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;Qm(s,c);eZ(s,103308)|0;c=i[b>>0]|0;c:do if(c<<24>>24){e=t+56|0;f=t+4|0;g=t+56|0;h=t+56|0;j=t+128|0;l=t+132|0;m=t+36|0;n=t+52|0;o=q+11|0;p=q+4|0;d=b;while(1){d:do switch(c<<24>>24|0){case 34:{eZ(s,103310)|0;break}case 92:{eZ(s,103313)|0;break}case 8:{eZ(s,103316)|0;break}case 12:{eZ(s,103319)|0;break}case 10:{eZ(s,103322)|0;break}case 13:{eZ(s,103325)|0;break}case 9:{eZ(s,103328)|0;break}default:if((c+-1&255)<31){k[t>>2]=4176;k[g>>2]=4196;GK(h,f);k[j>>2]=0;k[l>>2]=-1;k[t>>2]=4216;k[e>>2]=4236;sT(f);k[f>>2]=1740;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[m+12>>2]=0;k[n>>2]=16;k[q>>2]=0;k[q+4>>2]=0;k[q+8>>2]=0;cn(f,q);p1(q);b=Tn(t,103331,2)|0;c=b+(k[(k[b>>2]|0)+-12>>2]|0)+4|0;k[c>>2]=k[c>>2]&-75|8;c=b+(k[(k[b>>2]|0)+-12>>2]|0)+4|0;k[c>>2]=k[c>>2]|16384;k[b+(k[(k[b>>2]|0)+-12>>2]|0)+76>>2]=48;k[b+(k[(k[b>>2]|0)+-12>>2]|0)+12>>2]=4;Mn(b,i[d>>0]|0)|0;Yr(q,f);b=i[o>>0]|0;c=b<<24>>24<0;nw(s,c?k[q>>2]|0:q,c?k[p>>2]|0:b&255)|0;p1(q);k[t>>2]=4216;k[g>>2]=4236;k[f>>2]=1740;p1(m);I3(f);Qaa(t,4248);N8(g);break d}else{Jx(s,c);break d}}while(0);d=d+1|0;c=i[d>>0]|0;if(!(c<<24>>24))break c}}while(0);eZ(s,103308)|0;k[a>>2]=k[s>>2];k[a+4>>2]=k[s+4>>2];k[a+8>>2]=k[s+8>>2];k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;p1(s)}while(0);r=u;return}function Xc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=k[e+4>>2]|0;c=a;k[c>>2]=k[e>>2];k[c+4>>2]=d;c=a+8|0;d=b+8|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+20|0;c=b+20|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=a+32|0;d=b+32|0;k[c>>2]=0;e=a+36|0;k[e>>2]=0;k[a+40>>2]=0;k[c>>2]=k[d>>2];c=b+36|0;k[e>>2]=k[c>>2];e=b+40|0;k[a+40>>2]=k[e>>2];k[e>>2]=0;k[c>>2]=0;k[d>>2]=0;d=a+44|0;c=b+44|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[a+56>>2]=k[b+56>>2];i[a+60>>0]=i[b+60>>0]|0;c=a+64|0;d=b+64|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+76|0;c=b+76|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;i[a+88>>0]=i[b+88>>0]|0;c=a+92|0;d=b+92|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;c=a+104|0;d=b+104|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+116>>0]=i[b+116>>0]|0;d=a+120|0;c=b+120|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=a+132|0;d=b+132|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+144>>0]=i[b+144>>0]|0;d=a+148|0;c=b+148|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];i[d+8>>0]=i[c+8>>0]|0;d=a+160|0;c=b+160|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;i[a+172>>0]=i[b+172>>0]|0;c=a+176|0;d=b+176|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+188|0;c=b+188|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=b+200|0;d=k[c+4>>2]|0;e=a+200|0;k[e>>2]=k[c>>2];k[e+4>>2]=d;i[a+208>>0]=i[b+208>>0]|0;e=a+212|0;d=b+212|0;k[e>>2]=0;c=a+216|0;k[c>>2]=0;k[a+220>>2]=0;k[e>>2]=k[d>>2];e=b+216|0;k[c>>2]=k[e>>2];c=b+220|0;k[a+220>>2]=k[c>>2];k[c>>2]=0;k[e>>2]=0;k[d>>2]=0;d=a+224|0;e=b+224|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=a+236|0;d=b+236|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];k[e+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+248>>0]=i[b+248>>0]|0;d=a+252|0;e=b+252|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];i[d+8>>0]=i[e+8>>0]|0;d=a+264|0;e=b+264|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;i[a+276>>0]=i[b+276>>0]|0;e=a+280|0;d=b+280|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];k[e+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+292|0;e=b+292|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=b+304|0;d=k[e+4>>2]|0;c=a+304|0;k[c>>2]=k[e>>2];k[c+4>>2]=d;i[a+312>>0]=i[b+312>>0]|0;c=a+316|0;d=b+316|0;k[c>>2]=0;e=a+320|0;k[e>>2]=0;k[a+324>>2]=0;k[c>>2]=k[d>>2];c=b+320|0;k[e>>2]=k[c>>2];e=b+324|0;k[a+324>>2]=k[e>>2];k[e>>2]=0;k[c>>2]=0;k[d>>2]=0;d=a+328|0;c=b+328|0;k[d>>2]=0;e=a+332|0;k[e>>2]=0;k[a+336>>2]=0;k[d>>2]=k[c>>2];d=b+332|0;k[e>>2]=k[d>>2];b=b+336|0;k[a+336>>2]=k[b>>2];k[b>>2]=0;k[d>>2]=0;k[c>>2]=0;return}function Yc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,q=0;l=r;r=r+160|0;g=l+128|0;h=l+16|0;j=l;f=l+116|0;i[a+237>>0]=1;e=a+208|0;a=hE(e)|0;if(!a){k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;d=Ml(e)|0;a=d+88|0;if(!(i[a>>0]|0)){k[h>>2]=1;k[h+4>>2]=0;i[h+8>>0]=0;n=h+12|0;b=h+28|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;i[n+12>>0]=0;b=d+92|0;k[b>>2]=k[h>>2];k[b+4>>2]=k[h+4>>2];i[b+8>>0]=i[h+8>>0]|0;MM(d+104|0,n)|0;b=d+116|0;i[b>>0]=i[h+24>>0]|0;c=d+120|0;o=h+28|0;MM(c,o)|0;m=d+132|0;q=h+40|0;MM(m,q)|0;i[a>>0]=1;p1(q);p1(o);p1(n);a=m}else{a=d+132|0;b=d+116|0;c=d+120|0}MM(c,g)|0;q=g+12|0;MM(a,q)|0;i[b>>0]=1;p1(q);p1(g);a=d+120|0}k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;if(Rn(e,g)|0){EU(g,h,j)|0;c=a+12|0;Hj(f,0.0,+p[j>>3]);b=c+11|0;if((i[b>>0]|0)<0){i[k[c>>2]>>0]=0;k[a+16>>2]=0;a=c}else{i[c>>0]=0;i[b>>0]=0;a=c}Qm(c,0);k[a>>2]=k[f>>2];k[a+4>>2]=k[f+4>>2];k[a+8>>2]=k[f+8>>2];k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;p1(f)}else dZ(a+12|0,48258)|0;c=j0(e)|0;k[h>>2]=1;k[h+4>>2]=0;i[h+8>>0]=0;d=h+12|0;e=h+28|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[d+12>>0]=0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;k[h+56>>2]=1;e=h+60|0;i[e>>0]=0;f=h+64|0;a=f;b=a+36|0;do{k[a>>2]=0;a=a+4|0}while((a|0)<(b|0));k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;Kg(h+64|0,0,0);i[e>>0]=1;q=c+180|0;k[q>>2]=k[h>>2];k[q+4>>2]=k[h+4>>2];i[q+8>>0]=i[h+8>>0]|0;MM(c+192|0,d)|0;i[c+204>>0]=i[h+24>>0]|0;a=h+28|0;MM(c+208|0,a)|0;b=h+40|0;MM(c+220|0,b)|0;m=h+52|0;n=k[m+4>>2]|0;o=c+232|0;k[o>>2]=k[m>>2];k[o+4>>2]=n;i[c+240>>0]=i[e>>0]|0;if((q|0)!=(h|0))Kg(c+244|0,k[f>>2]|0,k[h+68>>2]|0);q=h+76|0;MM(c+256|0,q)|0;o=h+88|0;MM(c+268|0,o)|0;i[c+176>>0]=1;qH(j);p1(o);p1(q);qH(h+64|0);p1(b);p1(a);p1(d);p1(g);r=l;return}function Zc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+784|0;l=n+680|0;m=n;c=n+512|0;j=n+668|0;g=n+328|0;d=n+172|0;e=n+16|0;FV(l);mD(m,0);if(!(kH(l,b,m,1)|0))if((k[2783]|0)<5){Qd(c,27921,551,4,0,0,0);h=Tn(Tn(c,27948,6)|0,27955,39)|0;j=i[b+11>>0]|0;a=j<<24>>24<0;Tn(h,a?k[b>>2]|0:b,a?k[b+4>>2]|0:j&255)|0;hi(c);c=0}else c=0;else{k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,29739,7);h=nE(m,g,j)|0;p1(g);if(h){cd(g,(i[j+11>>0]|0)<0?k[j>>2]|0:j);f=a+916|0;kc((k[f>>2]|0)+400|0,g);VD(g)}else f=a+916|0;c=KB(k[f>>2]|0)|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,c,iC(c)|0);c=Jj(m,g)|0;h=a+940|0;k[h>>2]=c;p1(g);c=k[h>>2]|0;do if(!c)if((k[2783]|0)<5){Qd(d,27921,566,4,0,0,0);h=Tn(Tn(d,27948,6)|0,27995,49)|0;c=i[b+11>>0]|0;a=c<<24>>24<0;Tn(h,a?k[b>>2]|0:b,a?k[b+4>>2]|0:c&255)|0;hi(d);c=0}else c=0;else{if(!(xq(a,c)|0)){if((k[2783]|0)>=5){c=0;break}Qd(e,27921,570,4,0,0,0);h=Tn(Tn(e,27948,6)|0,28045,40)|0;c=i[b+11>>0]|0;a=c<<24>>24<0;Tn(h,a?k[b>>2]|0:b,a?k[b+4>>2]|0:c&255)|0;hi(e);c=0;break}c=cW(20)|0;FY(c,k[(k[f>>2]|0)+176>>2]|0);b=a+896|0;d=k[b>>2]|0;k[b>>2]=0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=c;b=a+884|0;IH(g,k[(k[f>>2]|0)+504>>2]|0);c=b+11|0;if((i[c>>0]|0)<0){i[k[b>>2]>>0]=0;k[a+888>>2]=0;c=b}else{i[b>>0]=0;i[c>>0]=0;c=b}Qm(b,0);k[c>>2]=k[g>>2];k[c+4>>2]=k[g+4>>2];k[c+8>>2]=k[g+8>>2];k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;p1(g);c=Wh(a,(k[h>>2]|0)+40|0)|0;b=a+1048|0;d=k[b>>2]|0;k[b>>2]=0;if(d|0)Rb[k[(k[d>>2]|0)+4>>2]&2047](d);k[b>>2]=c;rD(a+36|0,a,k[h>>2]|0);if(!(i[a+857>>0]|0)){c=k[b>>2]|0;Rb[k[(k[c>>2]|0)+8>>2]&2047](c);c=1}else c=1}while(0);p1(j)}Lv(m);p1(l+80|0);p1(l+48|0);yI(l+24|0);lJ(l);r=n;return c|0}function _c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+336|0;t=v+324|0;u=v+312|0;q=v+156|0;s=v;k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=0;k[u>>2]=0;k[u+4>>2]=0;k[u+8>>2]=0;p=b+16|0;if(!(i[k[p>>2]>>0]|0))d=c;else{f=t+11|0;g=t+4|0;h=c+4|0;j=c+16|0;l=c+28|0;m=c+40|0;n=c+52|0;o=c+53|0;while(1){a:do if(Xe(b,t,u)|0){d=i[f>>0]|0;e=k[g>>2]|0;do if(((d<<24>>24<0?e:d&255)|0)==3)if(!(cA(t,0,-1,45271,3)|0)){Cf(a,u,h);break a}else{d=i[f>>0]|0;e=k[g>>2]|0;break}while(0);do if(((d<<24>>24<0?e:d&255)|0)==4)if(!(cA(t,0,-1,45275,4)|0)){Jg(0,u,c)|0;break a}else{d=i[f>>0]|0;e=k[g>>2]|0;break}while(0);do if(((d<<24>>24<0?e:d&255)|0)==8)if(!(cA(t,0,-1,45280,8)|0)){MM(j,u)|0;break a}else{d=i[f>>0]|0;e=k[g>>2]|0;break}while(0);do if(((d<<24>>24<0?e:d&255)|0)==4)if(!(cA(t,0,-1,45289,4)|0)){MM(l,u)|0;break a}else{d=i[f>>0]|0;e=k[g>>2]|0;break}while(0);do if(((d<<24>>24<0?e:d&255)|0)==8)if(!(cA(t,0,-1,45294,8)|0)){MM(m,u)|0;break a}else{d=i[f>>0]|0;e=k[g>>2]|0;break}while(0);do if(((d<<24>>24<0?e:d&255)|0)==7)if(!(cA(t,0,-1,45303,7)|0)){JJ(0,u,n)|0;break a}else{d=i[f>>0]|0;e=k[g>>2]|0;break}while(0);if(((d<<24>>24<0?e:d&255)|0)==10?(cA(t,0,-1,45311,10)|0)==0:0)JJ(0,u,o)|0}while(0);if(!(i[k[p>>2]>>0]|0)){d=c;break}}}if(!(k[d>>2]|0))if((k[2783]|0)<5){Qd(q,45008,371,4,0,0,0);s=Tn(q,45037,20)|0;d=k[b+12>>2]|0;Tn(Tn(Tn(Tn(s,d,iC(d)|0)|0,45322,22)|0,45275,4)|0,45345,12)|0;hi(q);d=0}else d=0;else{d=i[c+16+11>>0]|0;if(d<<24>>24<0)d=k[c+20>>2]|0;else d=d&255;if(!d)if((k[2783]|0)<5){Qd(s,45008,372,4,0,0,0);c=Tn(s,45037,20)|0;d=k[b+12>>2]|0;Tn(Tn(Tn(Tn(c,d,iC(d)|0)|0,45322,22)|0,45280,8)|0,45345,12)|0;hi(s);d=0}else d=0;else d=1}p1(u);p1(t);r=v;return d|0}function $c(a){a=a|0;var b=0,c=0,d=0,e=0;k[a>>2]=4760;c=a+4|0;k[c>>2]=4788;d=a+20|0;k[d>>2]=4812;gr((k[(k[a+1256>>2]|0)+200>>2]|0)+296|0,a);pt(a);b=k[a+2164>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+4>>2]&2047](b);b=k[a+2272>>2]|0;if(b|0)Rb[k[(k[b>>2]|0)+12>>2]&2047](b);Cr(a+2184|0);$H(a+2168|0);dN(a+2024|0);p1(a+2008|0);p1(a+1992|0);Ev(a+1360|0);Up(a+1260|0);_A(a+424|0);e=a+396|0;k[e>>2]=2712;b=a+400|0;k[b>>2]=2736;up(e);$H(a+404|0);k[b>>2]=2024;b=a+376|0;k[b>>2]=2376;e=a+380|0;k[e>>2]=2400;up(b);$H(a+384|0);k[e>>2]=2024;e=a+356|0;k[e>>2]=4828;b=a+360|0;k[b>>2]=4852;up(e);$H(a+364|0);k[b>>2]=2024;b=a+336|0;k[b>>2]=2376;e=a+340|0;k[e>>2]=2400;up(b);$H(a+344|0);k[e>>2]=2024;e=a+316|0;k[e>>2]=2904;b=a+320|0;k[b>>2]=2928;up(e);$H(a+324|0);k[b>>2]=2024;b=a+296|0;k[b>>2]=2952;e=a+300|0;k[e>>2]=2976;up(b);$H(a+304|0);k[e>>2]=2024;e=a+276|0;k[e>>2]=3e3;b=a+280|0;k[b>>2]=3024;up(e);$H(a+284|0);k[b>>2]=2024;b=a+256|0;k[b>>2]=2904;e=a+260|0;k[e>>2]=2928;up(b);$H(a+264|0);k[e>>2]=2024;e=a+236|0;k[e>>2]=3048;b=a+240|0;k[b>>2]=3072;up(e);$H(a+244|0);k[b>>2]=2024;b=a+216|0;k[b>>2]=3144;e=a+220|0;k[e>>2]=3168;up(b);$H(a+224|0);k[e>>2]=2024;e=a+196|0;k[e>>2]=4876;b=a+200|0;k[b>>2]=4900;up(e);$H(a+204|0);k[b>>2]=2024;b=a+176|0;k[b>>2]=4876;e=a+180|0;k[e>>2]=4900;up(b);$H(a+184|0);k[e>>2]=2024;e=a+156|0;k[e>>2]=3096;b=a+160|0;k[b>>2]=3120;up(e);$H(a+164|0);k[b>>2]=2024;b=a+136|0;k[b>>2]=4924;e=a+140|0;k[e>>2]=4948;up(b);$H(a+144|0);k[e>>2]=2024;e=a+116|0;k[e>>2]=3096;b=a+120|0;k[b>>2]=3120;up(e);$H(a+124|0);k[b>>2]=2024;b=a+96|0;k[b>>2]=2376;e=a+100|0;k[e>>2]=2400;up(b);$H(a+104|0);k[e>>2]=2024;e=a+76|0;k[e>>2]=2376;b=a+80|0;k[b>>2]=2400;up(e);$H(a+84|0);k[b>>2]=2024;b=a+56|0;k[b>>2]=2904;e=a+60|0;k[e>>2]=2928;up(b);$H(a+64|0);k[e>>2]=2024;e=a+36|0;k[e>>2]=2904;b=a+40|0;k[b>>2]=2928;up(e);$H(a+44|0);k[b>>2]=2024;eU(d);k[a>>2]=1972;k[c>>2]=2e3;Bo(a);dH(a+8|0,k[a+12>>2]|0);k[c>>2]=2024;return}function ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+352|0;h=n+328|0;m=n+324|0;l=n;j=n+312|0;c5(h);k[m>>2]=0;if(tS(h,b,m)|0){h=k[m>>2]|0;if(h){b=Az(h)|0;f=i[b+11>>0]|0;if((((f<<24>>24<0?k[b+4>>2]|0:f&255)|0)==3?(cA(b,0,-1,49483,3)|0)==0:0)?(k[l>>2]=0,k[l+4>>2]=0,k[l+8>>2]=0,wE(l,49487,6),g=WA(h,l)|0,p1(l),(g|0)!=0):0){b=l+28|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[l+20>>2]=0;i[l+24>>0]=0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;i[b+24>>0]=0;k[l+56>>2]=1;k[l+60>>2]=0;i[l+64>>0]=0;b=l+68|0;d=l+84|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;i[b+12>>0]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[d+16>>2]=0;k[d+20>>2]=0;i[d+24>>0]=0;k[l+112>>2]=1;k[l+116>>2]=0;i[l+120>>0]=0;d=l+124|0;b=l+140|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[d+12>>0]=0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;k[l+168>>2]=1;i[l+172>>0]=0;b=l+176|0;d=l+216|0;e=b;f=e+36|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));i[b+36>>0]=0;k[d>>2]=1;k[l+220>>2]=0;i[l+224>>0]=0;e=l+228|0;f=l+244|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;i[e+12>>0]=0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[f+12>>2]=0;k[f+16>>2]=0;k[f+20>>2]=0;k[f+24>>2]=0;k[l+272>>2]=1;i[l+276>>0]=0;f=l+280|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[f+12>>2]=0;k[f+16>>2]=0;k[f+20>>2]=0;k[f+24>>2]=0;k[f+28>>2]=0;if(Bd(a,g,l)|0){b=c+4|0;d=k[b>>2]|0;if((d|0)==(k[c+8>>2]|0))Ar(c,l);else{vg(d,l);k[b>>2]=(k[b>>2]|0)+312}b=c+12|0;MM(b,a)|0;Sx(0,h,b)|0;np(a,h,c+52|0);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,49494,21);Uz(0,h,j,c+24|0)|0;p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,49516,19);ek(0,h,j,c+32|0)|0;p1(j);k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;wE(j,49536,25);ek(0,h,j,c+40|0)|0;p1(j);Rt(0,h,c+48|0)|0;b=1}else b=0;Bm(l);d=12}else{b=0;d=12}}else b=0}else{b=0;d=12}if((d|0)==12){d=k[m>>2]|0;if(d){_y(d);zba(d)}}r=n;return b|0}function bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;j=o+24|0;n=o+12|0;l=o;m=b+8|0;d=b+4|0;Qm(c,(k[m>>2]|0)+-2-(k[d>>2]|0)|0);d=(k[d>>2]|0)+1|0;k[j>>2]=d;m=(k[m>>2]|0)+-1|0;a:do if((d|0)!=(m|0)){g=l+11|0;h=l+4|0;e=d;b:while(1){d=e+1|0;k[j>>2]=d;f=i[e>>0]|0;c:do switch(f<<24>>24){case 34:{d=1;break a}case 92:{if((d|0)==(m|0)){e=5;break b}f=e+2|0;k[j>>2]=f;switch(i[d>>0]|0){case 34:{Jx(c,34);d=f;break c}case 47:{Jx(c,47);d=f;break c}case 92:{Jx(c,92);d=f;break c}case 98:{Jx(c,8);d=f;break c}case 102:{Jx(c,12);d=f;break c}case 110:{Jx(c,10);d=f;break c}case 114:{Jx(c,13);d=f;break c}case 116:{Jx(c,9);d=f;break c}case 117:{if(!(Fk(a,b,j,m,n)|0)){e=25;break b}d=k[n>>2]|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;do if(d>>>0>=128){if(d>>>0<2048){gD(l,2,0);i[((i[g>>0]|0)<0?k[l>>2]|0:l)+1>>0]=d&63|128;i[((i[g>>0]|0)<0?k[l>>2]|0:l)>>0]=d>>>6&31|192;break}if(d>>>0<65536){gD(l,3,0);i[((i[g>>0]|0)<0?k[l>>2]|0:l)+2>>0]=d&63|128;i[((i[g>>0]|0)<0?k[l>>2]|0:l)+1>>0]=d>>>6&63|128;i[((i[g>>0]|0)<0?k[l>>2]|0:l)>>0]=d>>>12&15|224;break}if(d>>>0<1114112){gD(l,4,0);i[((i[g>>0]|0)<0?k[l>>2]|0:l)+3>>0]=d&63|128;i[((i[g>>0]|0)<0?k[l>>2]|0:l)+2>>0]=d>>>6&63|128;i[((i[g>>0]|0)<0?k[l>>2]|0:l)+1>>0]=d>>>12&63|128;i[((i[g>>0]|0)<0?k[l>>2]|0:l)>>0]=d>>>18&7|240}}else{gD(l,1,0);i[((i[g>>0]|0)<0?k[l>>2]|0:l)>>0]=d}while(0);d=i[g>>0]|0;f=d<<24>>24<0;nw(c,f?k[l>>2]|0:l,f?k[h>>2]|0:d&255)|0;p1(l);d=k[j>>2]|0;break c}default:{e=26;break b}}}default:Jx(c,f)}while(0);if((d|0)==(m|0)){d=1;break a}else e=d}if((e|0)==5){k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,102155,31);iz(a,n,b,m)|0;p1(n);d=0;break}else if((e|0)==25){d=0;break}else if((e|0)==26){k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;wE(n,102187,29);iz(a,n,b,f)|0;p1(n);d=0;break}}else d=1;while(0);r=o;return d|0}function cd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+48|0;l=q+36|0;m=q+24|0;n=q+16|0;o=q;p=a+132|0;k[a+136>>2]=0;k[a+140>>2]=0;k[p>>2]=a+136;h=a+144|0;j=a+148|0;c=a+181|0;d=h;e=d+36|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));i[h+36>>0]=0;i[c>>0]=1;c=i[b>>0]|0;a:do if(c<<24>>24){g=a+152|0;do{b:while(1){switch(c<<24>>24){case 0:break a;case 10:case 9:case 32:break;default:{d=b;break b}}c=b+1|0;b=c;c=i[c>>0]|0}c:while(1){switch(c<<24>>24){case 61:{c=13;break c}case 32:case 10:case 9:case 0:{c=8;break c}default:{}}c=d+1|0;d=c;c=i[c>>0]|0}do if((c|0)==8){k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,b,d-b|0);b=xX(m,0,46954)|0;k[l>>2]=k[b>>2];k[l+4>>2]=k[b+4>>2];k[l+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=k[j>>2]|0;if(b>>>0<(k[g>>2]|0)>>>0){k[b>>2]=k[l>>2];k[b+4>>2]=k[l+4>>2];k[b+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[j>>2]=(k[j>>2]|0)+12}else sj(h,l);p1(l);p1(m);b=d}else if((c|0)==13){f=d+1|0;c=61;d:while(1){switch(c<<24>>24){case 10:case 9:case 32:case 0:break d;default:{}}c=d+1|0;d=c;c=i[c>>0]|0}c=f;e=d-c|0;if((e|0)<1){k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;wE(m,b,c+~b|0);b=xX(m,0,46977)|0;k[l>>2]=k[b>>2];k[l+4>>2]=k[b+4>>2];k[l+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;b=k[j>>2]|0;if(b>>>0<(k[g>>2]|0)>>>0){k[b>>2]=k[l>>2];k[b+4>>2]=k[l+4>>2];k[b+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[j>>2]=(k[j>>2]|0)+12}else sj(h,l);p1(l);p1(m);b=d;break}else{k[o>>2]=0;k[o+4>>2]=0;k[o+8>>2]=0;wE(o,b,c+~b|0);k[l>>2]=o;Uo(n,p,o,113534,l,m);c=k[n>>2]|0;a=c+28|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;wE(l,f,e);b=a+11|0;if((i[b>>0]|0)<0){i[k[a>>2]>>0]=0;k[c+32>>2]=0;b=a}else{i[a>>0]=0;i[b>>0]=0;b=a}Qm(a,0);k[b>>2]=k[l>>2];k[b+4>>2]=k[l+4>>2];k[b+8>>2]=k[l+8>>2];k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;p1(l);p1(o);b=d;break}}while(0);c=i[b>>0]|0}while(c<<24>>24!=0)}while(0);r=q;return}function dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;n=r;r=r+32|0;g=n+12|0;h=n;switch(Paa(b)|0){case 0:{k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,103285,4);av(a,g);p1(g);break}case 1:{tx(g,k8(b)|0,M);av(a,g);p1(g);break}case 2:{cD(g,W7(b)|0,M);av(a,g);p1(g);break}case 3:{Gj(g,+gA(b));av(a,g);p1(g);break}case 4:{Wc(g,Yaa(b)|0);av(a,g);p1(g);break}case 5:{m=$A(b)|0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;wE(g,m?108754:108748,m?4:5);av(a,g);p1(g);break}case 6:{Me(a,b);break}case 7:{wi(g,b);e=g+4|0;if((k[g>>2]|0)==(k[e>>2]|0)){k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,103343,2);av(a,h);p1(h)}else{k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,103296,1);xE(a);f=a+12|0;c=i[h+11>>0]|0;j=c<<24>>24<0;Tn(k[f>>2]|0,j?k[h>>2]|0:h,j?k[h+4>>2]|0:c&255)|0;p1(h);c=a+32|0;j=i[c+11>>0]|0;l=j<<24>>24<0;nw(a+16|0,l?k[c>>2]|0:c,l?k[a+36>>2]|0:j&255)|0;j=h+11|0;l=h+4|0;c=k[g>>2]|0;while(1){m=CZ(b,c)|0;us(a,m);if((i[c+11>>0]|0)<0)d=k[c>>2]|0;else d=c;Wc(h,d);xE(a);d=i[j>>0]|0;o=d<<24>>24<0;Tn(k[f>>2]|0,o?k[h>>2]|0:h,o?k[l>>2]|0:d&255)|0;p1(h);Tn(k[f>>2]|0,103346,3)|0;dd(a,m);c=c+12|0;if((c|0)==(k[e>>2]|0))break;Tn(k[f>>2]|0,103294,1)|0;Hi(a,m)}Hi(a,m);CJ(a);k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;wE(h,103298,1);xE(a);o=i[h+11>>0]|0;m=o<<24>>24<0;Tn(k[f>>2]|0,m?k[h>>2]|0:h,m?k[h+4>>2]|0:o&255)|0;p1(h)}nG(g);break}default:{}}r=n;return}function ed(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;v=r;r=r+112|0;e=v+96|0;m=v+88|0;n=v+80|0;o=v+72|0;p=v+64|0;q=v+56|0;s=v+48|0;t=v+40|0;u=v+32|0;f=v+24|0;g=v+16|0;h=v+8|0;j=v;l=cW(108)|0;x=k[a+940>>2]|0;k[l>>2]=1624;iI(l+4|0,x+4|0);iI(l+16|0,x+16|0);iI(l+28|0,x+28|0);c=l+40|0;iI(c,x+40|0);iI(l+52|0,x+52|0);d=l+64|0;iI(d,x+64|0);iI(l+76|0,x+76|0);iI(l+88|0,x+88|0);w=l+100|0;x=x+100|0;k[w>>2]=k[x>>2];i[w+4>>0]=i[x+4>>0]|0;if(((k[a+652>>2]|0)-(k[a+648>>2]|0)|0)==4)M$(l,0);else l0(l,k[b+60>>2]|0);MM(c,b+96|0)|0;MM(d,b+64|0)|0;b=a+916|0;if((Vd(a)|0)==3)k[(k[b>>2]|0)+616>>2]=1;x=cW(2280)|0;w=k[b>>2]|0;vc(x,w,w+400|0,a+884|0);k[m>>2]=111;k[m+4>>2]=0;k[e>>2]=k[m>>2];k[e+4>>2]=k[m+4>>2];gw(x+216|0,a,e);k[n>>2]=41;k[n+4>>2]=0;k[e>>2]=k[n>>2];k[e+4>>2]=k[n+4>>2];Cv(x+156|0,a,e);k[o>>2]=319;k[o+4>>2]=0;k[e>>2]=k[o>>2];k[e+4>>2]=k[o+4>>2];Jw(x+36|0,a,e);k[p>>2]=320;k[p+4>>2]=0;k[e>>2]=k[p>>2];k[e+4>>2]=k[p+4>>2];Jw(x+256|0,a,e);k[q>>2]=42;k[q+4>>2]=0;k[e>>2]=k[q>>2];k[e+4>>2]=k[q+4>>2];$v(x+236|0,a,e);k[s>>2]=43;k[s+4>>2]=0;k[e>>2]=k[s>>2];k[e+4>>2]=k[s+4>>2];yw(x+276|0,a,e);k[t>>2]=112;k[t+4>>2]=0;k[e>>2]=k[t>>2];k[e+4>>2]=k[t+4>>2];Cw(x+296|0,a,e);k[u>>2]=321;k[u+4>>2]=0;k[e>>2]=k[u>>2];k[e+4>>2]=k[u+4>>2];Jw(x+316|0,a,e);k[f>>2]=1238;k[f+4>>2]=0;k[e>>2]=k[f>>2];k[e+4>>2]=k[f+4>>2];Bx(x+376|0,a,e);k[g>>2]=1239;k[g+4>>2]=0;k[e>>2]=k[g>>2];k[e+4>>2]=k[g+4>>2];Bx(x+96|0,a,e);k[h>>2]=322;k[h+4>>2]=0;k[e>>2]=k[h>>2];k[e+4>>2]=k[h+4>>2];Ov(x+2204|0,a,e);k[j>>2]=323;k[j+4>>2]=0;k[e>>2]=k[j>>2];k[e+4>>2]=k[j+4>>2];Ov(x+2224|0,a,e);VM(x,l);w=a+904|0;u=cW(12)|0;k[u+8>>2]=x;k[u+4>>2]=w;t=k[w>>2]|0;k[u>>2]=t;k[t+4>>2]=u;k[w>>2]=u;w=a+912|0;k[w>>2]=(k[w>>2]|0)+1;r=v;return x|0}function fd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a>>2]=k[b>>2];k[a+4>>2]=k[b+4>>2];k[a+8>>2]=k[b+8>>2];k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;d=a+12|0;c=b+12|0;k[d>>2]=0;e=a+16|0;k[e>>2]=0;k[a+20>>2]=0;k[d>>2]=k[c>>2];d=b+16|0;k[e>>2]=k[d>>2];e=b+20|0;k[a+20>>2]=k[e>>2];k[e>>2]=0;k[d>>2]=0;k[c>>2]=0;i[a+24>>0]=i[b+24>>0]|0;c=a+28|0;d=b+28|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+40|0;c=b+40|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;i[a+52>>0]=i[b+52>>0]|0;c=a+56|0;d=b+56|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];i[c+8>>0]=i[d+8>>0]|0;c=a+68|0;d=b+68|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+80>>0]=i[b+80>>0]|0;d=a+84|0;c=b+84|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=a+96|0;d=b+96|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+108>>0]=i[b+108>>0]|0;d=a+112|0;c=b+112|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];i[d+8>>0]=i[c+8>>0]|0;d=a+124|0;c=b+124|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;i[a+136>>0]=i[b+136>>0]|0;c=a+140|0;d=b+140|0;k[c>>2]=k[d>>2];k[c+4>>2]=k[d+4>>2];k[c+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+152|0;c=b+152|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[c+4>>2];k[d+8>>2]=k[c+8>>2];k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;c=b+164|0;d=k[c+4>>2]|0;e=a+164|0;k[e>>2]=k[c>>2];k[e+4>>2]=d;i[a+172>>0]=i[b+172>>0]|0;e=a+176|0;d=b+176|0;k[e>>2]=0;c=a+180|0;k[c>>2]=0;k[a+184>>2]=0;k[e>>2]=k[d>>2];e=b+180|0;k[c>>2]=k[e>>2];c=b+184|0;k[a+184>>2]=k[c>>2];k[c>>2]=0;k[e>>2]=0;k[d>>2]=0;d=a+188|0;e=b+188|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=a+200|0;d=b+200|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];k[e+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[a+212>>0]=i[b+212>>0]|0;d=a+216|0;e=b+216|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];i[d+8>>0]=i[e+8>>0]|0;d=a+228|0;e=b+228|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;i[a+240>>0]=i[b+240>>0]|0;e=a+244|0;d=b+244|0;k[e>>2]=k[d>>2];k[e+4>>2]=k[d+4>>2];k[e+8>>2]=k[d+8>>2];k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;d=a+256|0;e=b+256|0;k[d>>2]=k[e>>2];k[d+4>>2]=k[e+4>>2];k[d+8>>2]=k[e+8>>2];k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;e=b+268|0;d=k[e+4>>2]|0;c=a+268|0;k[c>>2]=k[e>>2];k[c+4>>2]=d;i[a+276>>0]=i[b+276>>0]|0;c=a+280|0;d=b+280|0;k[c>>2]=0;e=a+284|0;k[e>>2]=0;k[a+288>>2]=0;k[c>>2]=k[d>>2];c=b+284|0;k[e>>2]=k[c>>2];e=b+288|0;k[a+288>>2]=k[e>>2];k[e>>2]=0;k[c>>2]=0;k[d>>2]=0;d=a+292|0;c=b+292|0;k[d>>2]=0;e=a+296|0;k[e>>2]=0;k[a+300>>2]=0;k[d>>2]=k[c>>2];d=b+296|0;k[e>>2]=k[d>>2];e=b+300|0;k[a+300>>2]=k[e>>2];k[e>>2]=0;k[d>>2]=0;k[c>>2]=0;p[a+304>>3]=+p[b+304>>3];return}function gd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+64|0;g=m+32|0;h=m+16|0;j=m;l=m+48|0;e=a+128|0;k[a+140>>2]=k[(k[(k[e>>2]|0)+916>>2]|0)+640>>2];i[a+134>>0]=1;mD(g,0);f=N6(g,56171)|0;nF(h,50707);GA(f,h)|0;Lv(h);f=N6(g,83514)|0;Ix(h,(k[(k[e>>2]|0)+940>>2]|0)+16|0);GA(f,h)|0;Lv(h);f=N6(g,56364)|0;Ix(h,(k[e>>2]|0)+884|0);GA(f,h)|0;Lv(h);f=N6(g,55943)|0;Ix(h,(k[(k[e>>2]|0)+940>>2]|0)+76|0);GA(f,h)|0;Lv(h);if(i[(k[(k[e>>2]|0)+916>>2]|0)+956>>0]|0){f=N6(g,50712)|0;Ix(h,(k[(k[e>>2]|0)+916>>2]|0)+960|0);GA(f,h)|0;Lv(h)}f=N6(g,55952)|0;Ix(h,(k[(k[e>>2]|0)+940>>2]|0)+40|0);GA(f,h)|0;Lv(h);f=N6(g,55968)|0;Ix(h,(k[(k[e>>2]|0)+940>>2]|0)+4|0);GA(f,h)|0;Lv(h);f=N6(g,55983)|0;Ix(h,(k[(k[e>>2]|0)+940>>2]|0)+52|0);GA(f,h)|0;Lv(h);f=N6(g,56001)|0;fY(h,k[a+136>>2]|0);GA(f,h)|0;Lv(h);f=N6(g,56164)|0;t$(h,N7(k[(k[e>>2]|0)+916>>2]|0)|0);GA(f,h)|0;Lv(h);f=N6(g,50721)|0;t$(h,(i[(k[(k[e>>2]|0)+916>>2]|0)+472>>0]|0)!=0);GA(f,h)|0;Lv(h);f=N6(g,50725)|0;t$(h,(i[(k[(k[e>>2]|0)+916>>2]|0)+473>>0]|0)!=0);GA(f,h)|0;Lv(h);f=N6(g,50735)|0;t$(h,(i[(k[e>>2]|0)+1189>>0]|0)==0);GA(f,h)|0;Lv(h);mD(h,6);f=U7(k[e>>2]|0)|0;if(f|0?(b=Saa(f)|0,b=k[b>>2]|0,(b|0)!=((Saa(f)|0)+4|0)):0){d=0;c=b;while(1){b=Wi(h,d)|0;Ix(j,c+16|0);GA(b,j)|0;Lv(j);d=d+1|0;b=k[c+4>>2]|0;if(!b)while(1){b=k[c+8>>2]|0;if((k[b>>2]|0)==(c|0))break;else c=b}else while(1){c=k[b>>2]|0;if(!c)break;else b=c}if((b|0)==((Saa(f)|0)+4|0))break;else c=b}}GA(N6(g,50741)|0,h)|0;b=N6(g,50750)|0;JU(l);Ix(j,l);GA(b,j)|0;Lv(j);p1(l);b=N6(g,50760)|0;wY(l);Ix(j,l);GA(b,j)|0;Lv(j);p1(l);b=k[(k[(k[e>>2]|0)+916>>2]|0)+204>>2]|0;c=N6(g,50775)|0;if(!b){nF(j,50782);GA(c,j)|0;Lv(j)}else{Sb[k[(k[b>>2]|0)+44>>2]&511](l,b);Ix(j,l);GA(c,j)|0;Lv(j);p1(l)}lt(a,g);Lv(h);Lv(g);r=m;return}function hd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0,o=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;s=r;r=r+112|0;m=s+96|0;q=s;HA(q,b,c,d);x=q+44|0;k[x>>2]=0;v=q+48|0;k[v>>2]=0;k[q>>2]=15784;k[q+52>>2]=0;e=q+56|0;j[e>>1]=0;b=q+58|0;i[b>>0]=0;h=q+60|0;k[h>>2]=0;d=q+64|0;i[d>>0]=0;f=q+65|0;i[f>>0]=0;g=q+68|0;k[q+88>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;n=a+4|0;u=k[n>>2]|0;o=a+8|0;t=k[o>>2]|0;y=u+t|0;c=t+4|0;k[o>>2]=c;w=(l[y+2>>0]|0)<<8|(l[y+1>>0]|0)<<16|(l[y+3>>0]|0);k[x>>2]=l[y>>0];k[v>>2]=w;c=i[u+c>>0]|0;k[o>>2]=t+5;if(c<<24>>24==3){x=JH(a,q+52|0)|0;y=k[n>>2]|0;c=k[o>>2]|0;v=y+c|0;w=c+2|0;k[o>>2]=w;j[e>>1]=(l[v>>0]|0)<<8|(l[v+1>>0]|0);e=i[y+w>>0]|0;c=c+3|0;k[o>>2]=c;i[b>>0]=e;e=x+9|0;b=y}else{e=Tn(110732,69940,38)|0;b=LZ(e+(k[(k[e>>2]|0)+-12>>2]|0)|0)|0;k[m>>2]=b;b=k_(m,111604)|0;b=cc[k[(k[b>>2]|0)+28>>2]&127](b,10)|0;t6(m);Ss(e,b)|0;UA(e)|0;e=6;b=k[n>>2]|0;c=k[o>>2]|0}y=i[b+c>>0]|0;k[o>>2]=c+1;if(y<<24>>24==4){y=JH(a,q+60|0)|0;w=k[o>>2]|0;v=k[n>>2]|0;u=i[v+w>>0]|0;x=w+1|0;k[o>>2]=x;i[d>>0]=u;i[f>>0]=i[v+x>>0]|0;x=v+(w+2)|0;u=w+4|0;k[o>>2]=u;k[g>>2]=((l[x>>0]|0)<<8|(l[x+1>>0]|0))<<8|(l[v+u>>0]|0);u=v+(w+5)|0;x=w+9|0;k[o>>2]=x;k[q+72>>2]=(l[u+1>>0]|0)<<16|(l[u>>0]|0)<<24|(l[u+2>>0]|0)<<8|(l[u+3>>0]|0);x=v+x|0;k[o>>2]=w+13;k[q+76>>2]=(l[x+1>>0]|0)<<16|(l[x>>0]|0)<<24|(l[x+2>>0]|0)<<8|(l[x+3>>0]|0);e=e+13+y|0}else{y=Tn(110732,69979,44)|0;x=LZ(y+(k[(k[y>>2]|0)+-12>>2]|0)|0)|0;k[m>>2]=x;x=k_(m,111604)|0;x=cc[k[(k[x>>2]|0)+28>>2]&127](x,10)|0;t6(m);Ss(y,x)|0;UA(y)|0}do if((k[h>>2]|0)>>>0>14){x=k[o>>2]|0;y=i[(k[n>>2]|0)+x>>0]|0;k[o>>2]=x+1;e=e+1|0;if(y<<24>>24!=5){Tn(110732,70024,55)|0;break}b=q+80|0;e=(JH(a,b)|0)+e|0;y=k[o>>2]|0;k[q+84>>2]=(k[n>>2]|0)+y;b=k[b>>2]|0;y=b+y|0;k[o>>2]=y;c=a+12|0;if((y|0)>=(k[c>>2]|0)){k[c>>2]=0;k[o>>2]=0}e=e+b|0}while(0);x=k[o>>2]|0;y=i[(k[n>>2]|0)+x>>0]|0;k[o>>2]=x+1;e=e+1|0;if(y<<24>>24==6){b=q+88|0;c=(JH(a,b)|0)+e|0;y=k[o>>2]|0;k[q+92>>2]=(k[n>>2]|0)+y;e=k[b>>2]|0;y=e+y|0;k[o>>2]=y;b=a+12|0;if((y|0)>=(k[b>>2]|0)){k[b>>2]=0;k[o>>2]=0}e=c+e|0}else Tn(110732,70080,27)|0;y=k[a+28>>2]|0;hc[k[k[y>>2]>>2]&7](y,q,+p[a+40>>3]);O3(q);r=s;return e|0}
function qaa(a){a=a|0;i[a+136>>0]=1;return}function raa(a,b){a=a|0;b=b|0;r=a;s=b}function saa(a){a=a|0;return 2147483647}function taa(a,b){a=a|0;b=b|0;return 0}function uaa(a){a=a|0;return (j[a+8>>1]&255)==5|0}function vaa(){return (Ta(9,0)|0)!=0|0}function waa(a){a=a|0;k[a+8>>2]=8;return}function xaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;da(24)}function yaa(a){a=+a;return a>=0.0?+N(a+.5):+_(a-.5)}function zaa(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Aaa(a){a=a|0;k[a>>2]=14928;return}function Baa(a){a=a|0;k[a>>2]=16512;return}function Caa(a,b){a=a|0;b=b|0;Rb[a&2047](b|0)}function Daa(a,b){a=a|0;b=b|0;return (a+-48|0)>>>0<10|0}function Eaa(a){a=a|0;Xr(a);return}function Faa(a){a=a|0;k[a>>2]=2024;return}function Gaa(a,b){a=a|0;b=b|0;rs(a,b)|0;return a|0}function Haa(a){a=a|0;return 4}function Iaa(a,b){a=a|0;b=b|0;return b|0}function Jaa(a){a=a|0;return k[a+16>>2]|0}function Kaa(a,b){a=a|0;b=b|0;return 1}function Laa(a){a=a|0;return 127}function Maa(a,b){a=a|0;b=+b;return}function Naa(a){a=a|0;return 3}function Oaa(a,b,c){a=a|0;b=b|0;c=c|0;da(11);return 0}function Paa(a){a=a|0;return j[a+8>>1]&255|0}function Qaa(a,b){a=a|0;b=b|0;return}function Raa(a){a=a|0;return k[a+8>>2]|0}function Saa(a){a=a|0;return a+40|0}function Taa(){T5(109972);return}function Uaa(a){a=a|0;return 0.0}function Vaa(a,b){a=a|0;b=b|0;return a-b|0}function Waa(a,b){a=a|0;b=b|0;return +(+JD(a,b,1))}function Xaa(a){a=a|0;return a+60|0}function Yaa(a){a=a|0;return k[a>>2]|0}function Zaa(a,b){a=a|0;b=b|0;return u8(a)|0}function _aa(a,b){a=+a;b=+b;return +(+YM(a,b))}function $aa(a,b){a=+a;b=b|0;return +(+RA(a,b))}function aba(a){a=a|0;return 2}function bba(a,b,c){a=a|0;b=b|0;c=c|0;da(20)}function cba(a,b){a=+a;b=b|0;return +(+qC(a,b))}function dba(a){a=a|0;return -1}function eba(a){a=a|0;return -1.0}function fba(a,b,c){a=a|0;b=b|0;c=+c;da(22)}function gba(a){a=a|0;return (a+-65|0)>>>0<26|0}function hba(a){a=a|0;return (a+-97|0)>>>0<26|0}function iba(a,b,c){a=a|0;b=+b;c=c|0;da(9)}function jba(a,b){a=a|0;b=b|0;da(18);return 0.0}function kba(a,b,c){a=a|0;b=+b;c=+c;da(10)}function lba(a,b){a=+a;b=+b;return +(+Df(a,b))}function mba(){ri(0);return}function nba(a,b){a=a|0;b=b|0;da(17);return 0}function oba(a){a=a|0;return g6(a|0)|0}function pba(a){a=a|0;return 1}function qba(a,b){a=a|0;b=b|0;return -1|0}function rba(a,b){a=a|0;b=+b;da(16);return 0}function sba(a){a=a|0;gc[a&1]()}function tba(){Cb()}function uba(a,b){a=a|0;b=b|0;da(5)}function vba(a){a=a|0;return cW(a)|0}function wba(a){a=a|0;zba(a);return}function xba(a){a=a|0;r=a}function yba(a,b){a=a|0;b=+b;da(2)}function zba(a){a=a|0;wc(a);return}function Aba(a){a=a|0;M=a}function Bba(a){a=a|0;da(14);return 0.0}function Cba(a){a=a|0;da(7);return 0}function Dba(a){a=a|0;return}function Eba(a){a=a|0;return 0}function Fba(){return 21400}function Gba(){return 19860}function Hba(){return}function Iba(){return M|0}function Jba(){return r|0}function Kba(a){a=a|0;da(4)}function Lba(){return 19856}function Mba(){return 0}function Nba(){da(21)}

// EMSCRIPTEN_END_FUNCS
var Nb=[X2,Xs,Zt,qg,Ag,$f,fg,X2];var Ob=[t5,_e,Ve,t5];var Pb=[yba,Maa,UI,oh,Maa,Maa,Y1,Y0,vK,dA,z2,bD,DL,yba,yba,yba];var Qb=[S8,BH,M0,DG,dz,YH,IG,Bu,Qk,ef,M0,M0,Sl,S8,S8,S8];var Rb=[Kba,PV,S$,qL,V9,p0,GL,S5,eU,kT,h3,R1,mX,z_,vZ,r$,OY,YX,a_,mA,M6,QH,lH,_G,KG,AF,$E,Z6,$4,L0,$_,iW,nV,Q6,C4,v5,J2,A0,V_,cv,P7,Bo,G7,f4,Dba,Dba,s7,Y3,IL,u3,pK,LJ,Faa,wba,Dba,wba,jP,Dba,wba,Dba,wba,jP,Dba,wba,kO,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,xc,w6,m6,o3,b6,e3,PS,B2,HR,LP,KS,e2,lR,wP,KQ,j_,ZO,iN,NN,_V,vM,_K,eN,_U,UL,EK,JM,GU,AL,yK,IM,FU,zL,xK,MS,n2,yR,EP,JN,UV,tM,XK,NS,o2,zR,FP,pN,iV,_L,KK,OR,O$,kQ,$N,LR,I$,eQ,XN,JR,B$,cQ,VN,CQ,RZ,PO,TM,HP,HY,QN,lM,GQ,$Z,SO,ZM,KN,VV,uM,YK,YR,uM,PP,oV,HR,dU,PT,SO,iS,fT,QN,wR,yU,kQ,_S,OT,PO,gS,uU,cQ,WS,wU,eQ,YS,pR,_L,cP,mV,zR,_T,XR,tM,OP,lV,yR,ZT,PQ,zL,xO,QQ,AL,zO,$R,vM,UP,eR,UL,TO,VT,ZO,nS,hV,lR,WT,wba,jP,wba,jP,Dba,wba,Y6,_4,K0,__,VI,rI,BG,hG,Dba,wba,Dba,wba,wba,kO,Dba,wba,Dba,wba,Dba,wba,wba,wba,Dba,wba,IP,gT,RN,xR,IY,RN,mM,Dba,wba,Dba,wba,Dba,wba,wba,jP,Dba,wba,$c,R7,I7,h4,u7,_3,JQ,i_,YO,hN,CP,AY,LN,gM,KR,H$,dQ,WN,A1,J0,mX,vU,dQ,XS,bT,LN,kR,UT,YO,mS,Dba,wba,Dba,wba,Dba,wba,J0,Dba,wba,wba,jP,wba,kO,_A,n8,f8,P4,lL,N3,wba,Dba,wba,Di,L9,H9,F6,w9,r6,TQ,N_,pP,uN,CR,C$,YP,TN,rU,YP,US,iU,pP,xS,Dba,wba,wba,kO,Dba,wba,cN,Dba,Dba,wba,wba,jP,Up,X6,J6,B3,I6,A3,wba,Dba,wba,Qp,z7,d7,R3,c7,Q3,V0,T$,mX,PY,bY,fX,hW,wba,jP,Cn,O7,wba,Dba,wba,wba,wba,wba,kO,PU,hU,Dba,wba,Dt,Nt,NG,HZ,ht,ut,Dy,Wy,_x,my,fH,AH,yG,RG,wba,kO,wba,wba,jP,hv,vv,zs,Dba,Fu,Su,wba,jP,Dba,Dba,ey,W6,Dba,Dba,e5,w3,NU,TV,wba,jP,$W,B6,B6,B6,Rk,d6,_5,d3,GP,GY,PN,kM,AS,V1,gR,qP,eV,gR,QT,eT,PN,vR,Xr,W9,S9,T6,I9,H6,XV,fV,lW,q8,Dba,Dba,U2,_7,y2,e1,XJ,Dba,uL,IK,Dba,wba,wba,YI,Dba,wba,Tu,v6,NZ,TY,mX,QV,aV,zU,LT,wba,X1,b4,V2,u0,tm,m8,e8,O4,ZQ,T_,vP,zN,jU,vP,BS,wba,jP,Dba,wba,qS,C8,Dba,wba,Dba,wba,wba,wba,wba,wba,wba,wba,wba,wba,wba,P$,X_,wba,wba,wba,wba,wba,pS,hR,pF,Y7,wba,jP,pU,yT,Dba,Dba,T2,S1,mX,C5,S1,MB,S7,Dba,Dba,Dba,OG,Dba,tr,Io,UF,Hz,vN,uC,wK,Er,r7,X3,q7,W3,Dba,wba,Dba,wba,wba,Dba,wba,wba,uS,cV,aR,MT,x1,aR,dP,Dba,wba,RY,Dba,f5,Dba,wba,Dba,Dba,eB,z4,Dba,Dba,l4,_1,k4,Z1,wba,tU,n7,Dba,p4,XX,LW,wZ,Dba,wba,BL,j7,Dba,Dba,wba,fU,d5,Dba,p4,wba,$6,d5,n7,QZ,iu,o4,V3,O1,U3,N1,wba,Dba,wba,kp,L6,G6,z3,s6,q3,Pt,R8,op,kX,L8,B5,A8,p5,L7,sW,wba,Dba,wba,_W,dW,xV,f9,qV,_8,wba,S_,VZ,mX,Wx,ky,Lw,px,Gw,ix,wba,jY,aX,VZ,Ey,i7,qZ,NY,mX,R_,UZ,mX,Q1,W0,mX,S0,b0,mX,b0,W0,UZ,NY,q1,t0,mX,t0,gt,p8,IS,z9,wba,Qy,o8,wba,Cr,V4,N4,v2,JP,SY,SN,nM,hT,SN,AR,nZ,oY,DX,h8,CX,g8,wba,jP,iq,A9,K5,V5,Dba,Fs,Dba,h9,a6,g9,$5,e9,Z5,O7,wba,wba,jP,Dba,wba,mr,F8,wba,wba,jP,wba,jP,Dba,wba,No,Q7,H7,g4,t7,Z3,IQ,B_,XO,gN,TT,XO,lS,wba,wba,jP,UC,E8,qp,dX,w8,j5,i8,Q4,v7,nW,wba,Eaa,W9,S9,T6,I9,H6,gy,x6,n6,p3,c6,f3,wba,jP,wba,Dba,wba,P1,C0,m0,x$,yi,G8,x8,k5,j8,R4,wba,jP,wba,wba,jP,wba,kO,Ql,K9,dT,X5,L5,MZ,Dba,bq,Dba,u9,p6,t9,o6,s9,l6,wba,O7,OQ,O_,bP,jN,YT,bP,rS,wba,L6,G6,z3,s6,q3,d1,k0,mX,k0,wba,wba,jP,$i,Q8,jm,pE,NM,gj,Ur,A_,_2,z8,m5,y8,l5,v8,i5,r4,wba,wba,wba,wba,kO,Dba,wba,wba,jP,Kn,J9,G9,E6,v9,q6,wba,jP,wba,O7,L$,a$,mX,a$,Dba,wba,cB,D8,l1,o0,mX,o0,wba,AU,u6,m4,Mm,h7,RQ,U_,gP,qN,cU,gP,vS,O3,D2,waa,D2,C6,D2,pH,D2,Y4,yW,DV,bI,D2,eaa,D2,Z9,D2,daa,D2,uD,ZR,NQ,Ux,D2,eaa,sY,uX,GZ,uW,vV,I2,YW,$V,s2,tY,vX,I2,D2,caa,ZW,bW,pV,D2,baa,D2,eaa,D2,eaa,D2,caa,D2,MD,D2,MD,D2,ND,D2,ND,D2,C2,D2,t2,D2,uY,wX,Q2,D2,baa,eX,gW,hS,D2,D2,faa,D2,mW,D2,caa,aW,jV,caa,YU,mU,VF,vW,wV,zw,fP,l7,s5,o9,DD,o9,o9,o9,o9,o9,o9,o9,E$,o9,o9,o9,Dba,wba,Q0,$$,mX,$$,nJ,y4,jS,t4,i2,c3,Dba,wba,io,F5,Dba,Bp,Dba,QO,o5,L2,n5,K2,S4,w2,Dba,wba,wba,jP,Dba,wba,Dba,wba,Dba,wba,wba,kO,wba,fW,kV,wZ,Dba,wba,co,a7,vT,KV,u1,d4,P6,G3,O6,F3,z6,v3,wba,kO,wba,eW,k9,U6,Dba,Dba,Dba,Dba,Dba,Dba,Dba,Dba,Dba,Dba,Dba,Dba,ZS,H8,eI,SJ,d8,M4,wba,jP,Dba,wba,iD,l9,k1,n0,mX,R0,a0,mX,I0,W$,mX,W$,a0,n0,gaa,l9,Dba,g2,CD,X7,Dba,Dba,Dba,B4,K7,j4,J7,i4,w7,$3,a7,P6,G3,O6,F3,z6,v3,TE,Z7,V7,u4,Dba,wba,Dba,wba,wba,wba,wba,Dba,wba,wba,kO,wba,wba,wba,wba,wba,n9,y7,Dba,hQ,LS,oQ,JZ,yO,HM,ET,yO,aS,bQ,GO,XT,T9,I3,q2,H3,p2,Z6,$4,L0,$_,Y6,_4,K0,__,a5,b5,a5,b5,Dba,wba,$1,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,L3,x2,L3,x2,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,Dba,wba,wba,KY,R5,iF,$8,Z$,U9,L1,j9,K1,i9,wba,wba,wba,wba,wba,Dba,wba,Dba,Dba,wba,wba,Lk,zP,Oj,t_,W1,HI,xI,Zm,dI,hm,fq,j3,i3,Wk,tW,Iw,Py,oA,h0,Vs,uB,lg,hz,Xj,nB,IV,zT,Oc,rW,kA,H1,B1,Do,zY,S2,r2,or,mj,lk,rP,ik,lP,Y5,G0,Sy,Qi,Ym,Jf,iY,hl,NC,k7,gd,Hy,Oi,dg,qj,Vu,ct,g_,Dba,Dba,x4,s4,j6,NR,l2,k3,l3,K5,aZ,AJ,l3,k3,X4,p9,p9,Y2,QM,Dba,wc,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba,Kba];var Sb=[uba,D$,Qaa,zD,xG,yM,ZL,ZL,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,ss,yM,ZL,ZL,ss,yM,yM,yM,ss,ss,ss,ZL,ZL,yM,ZL,nT,n1,ZL,ss,ss,WZ,GX,nT,KW,yM,p_,PI,Qaa,Qaa,Qaa,Qaa,Qaa,Qaa,Qaa,wu,tV,Qaa,kU,Qaa,Qaa,ss,ss,y5,Qaa,zJ,wJ,VE,Qaa,KE,jy,eS,by,kS,bs,GX,nT,KW,ss,ZL,V6,PE,EO,YG,km,sy,mf,Qaa,ZL,ZL,B8,ss,g5,V6,M1,y$,Qaa,Qaa,M1,Qaa,ZL,wW,VP,Cg,Hl,yM,RS,oz,Qaa,yM,zV,s$,ro,yM,G1,EV,Qaa,Vj,ZL,uT,A2,o1,yM,ZL,yM,yM,ss,b3,cX,vC,Qaa,Qaa,ZL,ip,ss,gU,j2,ZL,ZL,yM,aG,Qaa,ss,yM,zk,Ne,Qaa,yM,yM,ZL,ZL,yM,yM,w0,ss,TC,fS,qy,lG,Ci,$h,lF,zI,Zg,ff,fL,uK,tg,Pf,Wf,wf,dh,Bi,hh,Vc,Dq,Fz,Jo,Eo,Gl,Hm,Go,bp,Gs,bu,_m,Tp,Gm,cy,LD,Hr,HJ,jK,gL,vI,gn,Sp,ex,fZ,ex,ar,zF,CY,zF,CY,ci,Yd,lp,_n,yk,ki,xn,Qt,FH,YD,vY,Lt,Ks,eu,jn,lB,uw,P2,ve,P2,Xd,P2,Ye,ps,WW,EN,nk,EZ,PZ,As,Tg,HV,Dg,xU,Qaa,yM,yM,yM,ZL,yM,$e,FW,uc,D1,Te,yM,r3,Dh,H0,rX,yM,SE,TW,Qaa,ZL,ZL,ZL,ZL,ZL,Qaa,Qaa,ss,Qaa,hP,iP,bJ,cJ,sV,sV,sV,SW,N$,N$,sV,sV,sV,SW,N$,N$,sV,sV,sV,RW,N$,N$,sV,sV,sV,RW,N$,N$,Qaa,Qaa,F0,qX,pX,E0,oW,jW,EM,Yy,NA,OA,MA,wD,Ue,XZ,dw,ew,uv,f0,q0,c0,aJ,Ys,Us,G5,yY,Qr,di,$j,iB,Cq,t1,PG,d0,ai,Vx,oH,sf,AX,ce,TI,bN,hL,IO,rg,OJ,bU,Uc,se,Qo,ig,Ii,of,dm,Ef,rV,hX,xZ,UR,BR,oS,HN,Dj,Op,Kl,WU,dy,N2,Co,Iq,LV,yy,xy,Js,U1,yu,ZU,ZG,g$,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba,uba];var Tb=[K4,ij,SB,RB,IB,JB,JB,HB,yB,zB,zB,de,hj,QB,PB,FB,GB,GB,EB,wB,xB,xB,Gd,Bn,An,zn,yn,jB,Ft,nz,mz,Dz,pB,zt,lz,kz,Cz,qf,nf,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4,K4];var Ub=[Cba,Eba,Eba,jF,aT,g3,g3,l8,DR,l8,qR,l8,xQ,l8,eO,l8,iO,l8,DQ,g3,g3,g3,l8,YN,l8,$Q,l8,aQ,l8,WP,l8,OO,l8,jQ,l8,ON,l8,RO,g3,g3,g3,g3,l8,rR,l8,fR,g3,l8,RL,g3,l8,FR,l8,LQ,l8,cS,l8,tN,g3,_$,WO,l8,l8,l8,_$,fO,_$,tR,Fm,AW,l8,ER,l8,FO,pba,D3,tG,CW,A7,aaa,D_,uR,D_,uR,D_,uR,l8,KP,Jaa,dba,dba,Eba,Eba,pba,Eba,K8,LY,V$,_Q,V$,KM,V$,mP,V$,DP,V$,uP,O9,r5,Jaa,A6,g3,zQ,WR,CH,q$,qQ,q$,lQ,l8,g3,l8,UQ,g3,l8,l8,N0,Eba,Eba,c9,q9,pba,$2,$2,s0,pQ,l8,l8,g3,l8,XP,g3,l8,aP,g3,g3,l8,PR,Eba,Eba,paa,Pz,pba,$2,$2,g3,d9,iaa,Y9,a9,Eba,I5,U$,QS,$2,s0,cM,s0,TR,s0,mQ,g3,l8,VO,Eba,pba,pba,pba,pba,T0,V$,BN,z1,z1,z1,z1,V$,MQ,V$,AQ,sZ,o_,J3,YZ,pba,m9,aba,is,w$,pba,ou,HD,V$,cR,Eba,Eba,pba,R2,R2,m3,q5,Eba,IU,Naa,yt,Ip,l8,TP,l8,yL,l8,SL,l8,LM,l8,sR,l8,VL,l8,GR,l8,yQ,l8,tQ,l8,nP,l8,EQ,l8,jO,aba,Eba,mY,dba,Eba,Eba,dba,$S,Rw,Rw,D7,a8,E7,b8,aba,Tj,Ug,Xy,CT,BT,FT,GT,aba,ck,Xg,$y,GS,FS,ES,HS,Laa,Laa,Eba,Laa,Laa,Eba,saa,saa,Eba,saa,saa,Eba,Eba,Eba,Haa,gJ,Eba,OV,$9,_9,Raa,O9,pba,pba,pba,Eba,Eba,Haa,haa,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba,Cba];var Vb=[p7,K3,kY,bF,YF,Mk,Am,zm,rn,Yk,xm,wm,hn,R$,QX,zv,tC,cT,pM,R$,TZ,R$,LX,p7,p7,p7,p7,p7,p7,p7,p7,p7];var Wb=[iba,PC,W4,iba];var Xb=[kba,aL,Q$,kK,cq,bA,kba,kba];var Yb=[Oaa,Z4,rE,Ty,$u,$t,NH,yo,qI,Cj,IJ,KT,Z4,GE,bz,uH,vH,xT,tT,$U,$U,$M,aN,T4,lX,CO,DO,E4,Pv,Z8,Oaa,Oaa];var Zb=[b1,Ac,zc,pG,qG,jh,fh,pW,pW,kG,oG,b1,b1,b1,b1,b1];var _b=[f6,pg,SS,SS,Yn,fi,hO,wH,Pl,qE,dK,Pr,ho,f6,f6,f6];var $b=[Bba,eba,Uaa,_Z,bK,q4,H4,Bba];var ac=[u2,QE,vo,u2];var bc=[rba,v1,G2,rba];var cc=[nba,ow,Ai,tO,nO,wN,ML,PL,CN,FL,ZN,XM,RM,fM,fN,vL,jM,oO,gO,eK,vO,GN,oP,bL,AK,hK,dM,uO,bM,taa,Sn,FM,nj,Of,NL,BJ,FK,NK,JK,oL,jL,cL,UB,UN,BY,a2,Kaa,iL,SM,HW,sM,MO,BY,hY,Pq,sI,SX,DA,pJ,oM,dL,RJ,wL,pL,TL,OM,ZJ,fK,OK,pO,iK,wO,xN,sN,xM,DN,QL,taa,taa,taa,taa,taa,taa,taa,Kaa,$7,$7,$7,$7,Ul,Wl,ym,Cm,pZ,gZ,Iaa,x_,y_,P9,M2,kP,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba,nba];var dc=[jba,s8,b9,mH];var ec=[r9,ze,AT,wd,qT,zW,QK,AM,ZK,JW,r9,r9,r9,r9,r9,r9];var fc=[bba,$J,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,ls,$J,$J,ls,ls,ls,ls,ls,ls,$J,EJ,EJ,ih,$J,X8,ls,ls,ls,w1,$J,ls,lU,A$,C_,g0,kW,g0,A$,X$,X$,X$,X$,MV,KO,IR,TK,TK,YV,X8,g0,g0,g0,MV,s_,kN,lN,FN,g0,g0,g0,g0,g0,g0,wS,XU,oR,oT,oR,L_,xr,EJ,ls,X8,X8,X8,EJ,EJ,ZV,ls,EJ,X8,X8,ST,EJ,ls,bm,EJ,x0,e0,xp,ls,X8,c$,U0,Kf,X8,I1,$J,$J,ls,yA,Nv,QY,mZ,Si,yX,Wj,Nj,yP,$I,Nc,lT,Ao,xs,My,xf,_f,gs,zE,We,Re,MH,wI,X8,G$,oo,oE,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba,bba];var gc=[Nba,tba];var hc=[fba,hk,iQ,YL,A4,fba,fba,fba];var ic=[C7,Qh,Ph,Kh,Jh,C7,C7,C7];var jc=[xaa,sS,sJ,rH,sJ,sJ,sJ,sJ,sJ,Or,sJ,sJ,XY,b$,ZF,n$,cI,XY,AN,kJ,UM,rH,_h,as,Uj,py,UE,sJ,sJ,sJ,sJ,SU,SU,FQ,BQ,dS,qJ,zu,_u,Lr,BU,EW,HX,bR,pv,Ie,aH,VR,Po,SR,sE,sE,DC,iv,mN,MY,sP,BM,xaa,xaa,xaa,xaa,xaa,xaa];return{_viblast_pause:sU,___udivdi3:A5,_viblast_set_qcp:OZ,_viblast_enable_abr:UW,_viblast_get_version:E2,_bitshift64Lshr:KZ,_bitshift64Shl:BZ,_viblast_is_abr_enabled:J1,_viblast_get_quality:h2,_bitshift64Ashr:JY,_llvm_cttz_i32:uQ,_sbrk:PJ,_memcpy:fE,_llvm_bswap_i32:g6,___muldi3:WV,___uremdi3:RU,_viblast_set_observer:IW,_i64Subtract:n_,___udivmoddi4:Qe,_i64Add:y0,_pthread_self:Mba,_pthread_mutex_unlock:Eba,_viblast_stop:d_,_pthread_cond_broadcast:Eba,___errno_location:z0,___muldsi3:PM,_free:wc,_round:yaa,_memmove:qO,_viblast_current_program_datetime:BW,_llvm_ctpop_i32:p$,_malloc:lc,_pthread_mutex_lock:Eba,_viblast_set_quality:ZY,_viblast_get_qcp:BV,_viblast_play:Ir,_viblast_get_peers:fn,_memset:XG,__GLOBAL__I_000101:mba,__GLOBAL__sub_I_Context_cc:D9,__GLOBAL__sub_I_logging_cc:t8,__GLOBAL__sub_I_embed_cc:Taa,__GLOBAL__sub_I_iostream_cpp:Hba,runPostSets:m_,_emscripten_replace_memory:Mb,stackAlloc:c4,stackSave:Jba,stackRestore:xba,establishStackSpace:raa,setThrew:B7,setTempRet0:Aba,getTempRet0:Iba,dynCall_iiiiiiii:DW,dynCall_iiiiiid:YY,dynCall_vid:I8,dynCall_viiiii:o$,dynCall_vi:Caa,dynCall_vii:F7,dynCall_iiiiiii:DY,dynCall_ii:N9,dynCall_iiiiii:u_,dynCall_vidi:J4,dynCall_vidd:O5,dynCall_iiii:W2,dynCall_iiiiiiiii:UU,dynCall_viiiiii:jZ,dynCall_di:naa,dynCall_viiiiidii:RV,dynCall_iid:m7,dynCall_iii:e6,dynCall_dii:S6,dynCall_iiiii:r0,dynCall_viii:P3,dynCall_v:sba,dynCall_viid:I4,dynCall_iiiiid:Z_,dynCall_viiii:r1}})


// EMSCRIPTEN_END_ASM
(v.sc,v.tc,buffer);v._viblast_pause=W._viblast_pause;var ee=v.___udivdi3=W.___udivdi3,oe=v._viblast_set_qcp=W._viblast_set_qcp,pe=v._viblast_enable_abr=W._viblast_enable_abr;v._viblast_get_version=W._viblast_get_version;var Wd=v._bitshift64Lshr=W._bitshift64Lshr,ie=v._bitshift64Shl=W._bitshift64Shl,qe=v._viblast_is_abr_enabled=W._viblast_is_abr_enabled;v._viblast_get_quality=W._viblast_get_quality;
var Vd=v._bitshift64Ashr=W._bitshift64Ashr,ce=v._llvm_cttz_i32=W._llvm_cttz_i32,he=v._sbrk=W._sbrk,Fc=v._memcpy=W._memcpy;v.___errno_location=W.___errno_location;var ge=v.___muldi3=W.___muldi3,ke=v.___uremdi3=W.___uremdi3;v._viblast_set_observer=W._viblast_set_observer;
var Fb=v._i64Subtract=W._i64Subtract,de=v.___udivmoddi4=W.___udivmoddi4,Ec=v._i64Add=W._i64Add,me=v._pthread_self=W._pthread_self,zb=v.__GLOBAL__sub_I_embed_cc=W.__GLOBAL__sub_I_embed_cc,ae=v._pthread_mutex_unlock=W._pthread_mutex_unlock,wb=v.__GLOBAL__I_000101=W.__GLOBAL__I_000101,Ab=v.__GLOBAL__sub_I_iostream_cpp=W.__GLOBAL__sub_I_iostream_cpp;v._viblast_stop=W._viblast_stop;
var xb=v.__GLOBAL__sub_I_Context_cc=W.__GLOBAL__sub_I_Context_cc,$d=v._pthread_cond_broadcast=W._pthread_cond_broadcast,le=v._llvm_bswap_i32=W._llvm_bswap_i32,fe=v.___muldsi3=W.___muldsi3,yb=v.__GLOBAL__sub_I_logging_cc=W.__GLOBAL__sub_I_logging_cc,Ua=v._free=W._free;v.runPostSets=W.runPostSets;
var ne=v._round=W._round,Gc=v._memmove=W._memmove,re=v._viblast_current_program_datetime=W._viblast_current_program_datetime,Dc=v._llvm_ctpop_i32=W._llvm_ctpop_i32,ea=v._malloc=W._malloc,Hb=v._pthread_mutex_lock=W._pthread_mutex_lock,db=v._emscripten_replace_memory=W._emscripten_replace_memory;v._viblast_set_quality=W._viblast_set_quality;var se=v._viblast_get_qcp=W._viblast_get_qcp;v._viblast_play=W._viblast_play;v._viblast_get_peers=W._viblast_get_peers;var Gb=v._memset=W._memset;
v.dynCall_iiiiiiii=W.dynCall_iiiiiiii;v.dynCall_iiiiiid=W.dynCall_iiiiiid;v.dynCall_vid=W.dynCall_vid;v.dynCall_viiiii=W.dynCall_viiiii;v.dynCall_vi=W.dynCall_vi;v.dynCall_vii=W.dynCall_vii;v.dynCall_iiiiiii=W.dynCall_iiiiiii;v.dynCall_ii=W.dynCall_ii;v.dynCall_iiiiii=W.dynCall_iiiiii;v.dynCall_vidi=W.dynCall_vidi;v.dynCall_vidd=W.dynCall_vidd;v.dynCall_iiii=W.dynCall_iiii;v.dynCall_iiiiiiiii=W.dynCall_iiiiiiiii;v.dynCall_viiiiii=W.dynCall_viiiiii;v.dynCall_di=W.dynCall_di;v.dynCall_viiiiidii=W.dynCall_viiiiidii;
v.dynCall_iid=W.dynCall_iid;v.dynCall_iii=W.dynCall_iii;v.dynCall_dii=W.dynCall_dii;v.dynCall_iiiii=W.dynCall_iiiii;v.dynCall_viii=W.dynCall_viii;v.dynCall_v=W.dynCall_v;v.dynCall_viid=W.dynCall_viid;v.dynCall_iiiiid=W.dynCall_iiiiid;v.dynCall_viiii=W.dynCall_viiii;x.Ga=W.stackAlloc;x.Ha=W.stackSave;x.pa=W.stackRestore;x.sf=W.establishStackSpace;x.$c=W.setTempRet0;x.Ec=W.getTempRet0;function ua(b){this.name="ExitStatus";this.message="Program terminated with exit("+b+")";this.status=b}
ua.prototype=Error();ua.prototype.constructor=ua;var te=null,tb=function ue(){v.calledRun||ve();v.calledRun||(tb=ue)};
v.callMain=v.mf=function(b){function c(){for(var b=0;3>b;b++)e.push(0)}b=b||[];Na||(Na=!0,jb(lb));var d=b.length+1,e=[M(p(v.thisProgram),"i8",0)];c();for(var f=0;f<d-1;f+=1)e.push(M(p(b[f]),"i8",0)),c();e.push(0);e=M(e,"i32",0);try{var g=v._main(d,e,0);we(g,!0)}catch(k){if(!(k instanceof ua))if("SimulateInfiniteLoop"==k)v.noExitRuntime=!0;else throw k&&"object"===typeof k&&k.stack&&v.U("exception thrown: "+[k,k.stack]),k;}finally{}};
function ve(b){function c(){if(!v.calledRun&&(v.calledRun=!0,!E)){Na||(Na=!0,jb(lb));jb(mb);if(v.onRuntimeInitialized)v.onRuntimeInitialized();v._main&&xe&&v.callMain(b);if(v.postRun)for("function"==typeof v.postRun&&(v.postRun=[v.postRun]);v.postRun.length;)qb(v.postRun.shift());jb(ob)}}b=b||v.arguments;null===te&&(te=Date.now());if(!(0<rb)){if(v.preRun)for("function"==typeof v.preRun&&(v.preRun=[v.preRun]);v.preRun.length;)pb(v.preRun.shift());jb(kb);0<rb||v.calledRun||(v.setStatus?(v.setStatus("Running..."),
setTimeout(function(){setTimeout(function(){v.setStatus("")},1);c()},1)):c())}}v.run=v.run=ve;function we(b,c){if(!c||!v.noExitRuntime){if(!v.noExitRuntime&&(E=!0,va=void 0,jb(nb),v.onExit))v.onExit(b);w?process.exit(b):qa&&"function"===typeof quit&&quit(b);throw new ua(b);}}v.exit=v.exit=we;var ye=[];
function F(b){void 0!==b?(v.print(b),v.U(b),b=JSON.stringify(b)):b="";E=!0;var c="abort("+b+") at "+Va()+"\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";ye&&ye.forEach(function(d){c=d(c,b)});throw c;}v.abort=v.abort=F;if(v.preInit)for("function"==typeof v.preInit&&(v.preInit=[v.preInit]);0<v.preInit.length;)v.preInit.pop()();var xe=!0;v.noInitialRun&&(xe=!1);v.noExitRuntime=!0;ve();h.lc=v.cwrap("viblast_play","number",["number","number"]);
h.Qa=function(b){this.i=b;this.da=!0;this.events={}};h.Qa.prototype.on=function(b,c){var d=this.events[b];d||(d=this.events[b]=[]);d.push(c)};h.Qa.prototype.unload=function(){h.stop(this)};
h.play=function(b){var c=1;"object"===typeof b.channel&&(c=function(){},c.prototype=b,b=new c,c=b.channel,b.channel=JSON.stringify(c),b._stream=c.cdnStream,c=0);var d=m.h(b),c=h.lc(d,c);h.l.va({name:"start",channel:b.channel,ctx:c});var e=new h.Qa(c);e.zb=function(){h.stop(e)};window.addEventListener("beforeunload",e.zb,!0);return e};h.oc=v.cwrap("viblast_stop","number",["number"]);
h.stop=function(b){if(b&&b.da){h.l.va({name:"stop",ctx:b.i});b.da=!1;window.removeEventListener("beforeunload",b.zb,!0);var c=h.oc(b.i),d=[],e=b.events.unload;if(e)for(var f=0,f=0;f<e.length;f++)e[f].apply(b,d);return c}return 0};h.kc=v.cwrap("viblast_pause","number",["number","number"]);h.pause=function(b,c){return b&&b.da?h.kc(b.i,(void 0===c?1:c)|0):0};h.mc=v.cwrap("viblast_set_observer","number",["number","number"]);h.Yc=function(b,c){if(b){var d=m.h(c);return h.mc(b.i,d)}return 0};
h.nc=v.cwrap("viblast_set_quality","number",["number","number"]);h.Zc=function(b,c){return b&&b.da&&"number"==typeof c?h.nc(b.i,c):0};h.ic=v.cwrap("viblast_get_quality","number",["number"]);h.Dc=function(b){return b&&b.da?h.ic(b.i):Number.MIN_VALUE};h.resume=function(b){h.pause(b,!1)};h.qc=v.cwrap("viblast_get_version","number",[]);h.version=function(){return G(h.qc())};h.hc=v.cwrap("viblast_get_peers","number",["number"]);
h.Nb=function(b){if(b&&b.da){b=h.hc(b.i);if(0>b)return[];var c=m.b(b);m.mb(b);return c}return[]};h.isMediaSourceSupported=function(){return!!aa()};h.isWebrtcSupported=function(){return!!Xd()};h.currentProgramDateTime=function(b){return new Date(re(b.i))};window.Viblast=h;window.viblast=h;h.getPeers=h.Nb;h.setQuality=h.Zc;h.setObserver=h.Yc;h.getQuality=h.Dc;window.Runtime=x;x.dynCall=x.p;x.getFuncWrapper=x.d;window.Pointer_stringify=G;Object.defineProperty(window,"HEAPU8",{get:function(){return u}});
(function(){var b=v._malloc;if(b){var c=function(c){if("number"===typeof c&&0<c&&67108864>=c)return b(c);throw Error("Invalide argument to malloc: "+JSON.stringify(c));};ea=v._malloc=c}else console.log("Cannot shim malloc because it doesn't exist yet")})();function ze(b,c){200<=b.length&&b.shift();b.push(c)}
h.l=function(){for(var b=[],c=document.getElementsByTagName("video"),d=0;d<c.length;d++){var e=c[d],f={};f.currentTime=e.currentTime;f.buffered=[];for(var g=0;g<e.buffered.length;g++){var k={};k.start=e.buffered.start(g);k.end=e.buffered.end(g);f.buffered.push(k)}b.push(f)}return{version:h.version(),isMseSupported:!!aa(),videoTags:b,events:h.l.events,errors:h.l.Cb,uncaughtExceptions:h.l.Gb,totalDownloadedFromCdn:(h.l.totalDownloadedFromCdn/1048576).toFixed(5)}};h.l.events=[];
h.l.va=function(b){"object"!==typeof b&&(b={notice:b});b.timestamp=Date.now();ze(h.l.events,b)};h.l.notice=h.l.va;h.l.Cb=[];h.l.error=function(b){"object"!==typeof b&&(b={error:b});b.timestamp=Date.now();ze(h.l.Cb,b)};h.l.error=h.l.error;h.l.Gb=[];
window.addEventListener("error",function(b){var c=null;(c=b.error)&&"object"===typeof c&&c.stack?c=c.stack:(c=b.filename+":"+b.lineno+"\n",b.error&&"string"==typeof b.error?c+=b.error:b.message&&"string"==typeof b.message&&(c+=b.message));c&&0<=c.indexOf("viblast")&&ze(h.l.Gb,{error:c,timestamp:Date.now()})});h.l.totalDownloadedFromCdn=0;h.Qc=function(){var b=h.l();return JSON.stringify(b,null,2)};h.debugInfo=h.l;h.printDebugInfo=h.Qc;
var Z=null,Z=function(b){this.n=b;this.ja={};this.za=[];Object.defineProperty(this,"abr",{get:function(){return this.i?!!qe(this.i.i):!0},set:function(b){this.i?pe(this.i.i,b?1:0):console.log("[Warning] Setting ABR before context creation is NYI.")},enumerable:!0});Object.defineProperty(this,"cdnBandwidth",{get:function(){for(var b=h.Nb(this.i),d=0;d<b.length;d++){var e=b[d];if("HLS"===e.id||"DASH"===e.id)return e.dwBandwidth}return 0}});Object.defineProperty(this,"currentProgramDateTime",{get:function(){var b=
re(this.i?this.i.i:0);return new Date(b)},enumerable:!0});Object.defineProperty(this,"qualityChangePolicy",{get:function(){return this.Ua(-1)},set:function(b){return this.hb(-1,b)},enumerable:!0})};Z.prototype.Ua=function(b){return 1===se(this.i?this.i.i:0,b)?"immediate":"smooth"};Z.prototype.hb=function(b,c){this.i?oe(this.i.i,"immediate"===c?1:0,b):console.log("[Warning] Setting QCP before context creation is NYI.")};Z.prototype.addEventListener=function(b,c){this.ja[b]=this.ja[b]||[];this.ja[b].push(c)};
Z.prototype.dispatchEvent=function(b){var c=this.ja[b.name];if(c)for(var d=0;d<c.length;d++)(0,c[d])(b)};Z.prototype.dispatchEvent=Z.prototype.dispatchEvent;Z.prototype.xc=function(b){this.za.push(b);window.setTimeout(this.Ac.bind(this),0)};Z.prototype.Ac=function(){for(;0<this.za.length;){var b=this.za.shift(0);this.dispatchEvent(b)}};
Z.prototype.onAvailableVariantsUpdate=function(b,c,d,e){for(var f=[],g=null,k=[],l=null,q=0;q<b.length;q++){var n=b[q],r={bandwidth:n.bitrate,width:n.horizontalResolution,height:n.verticalResolution,id:(n.video?n.horizontalResolution+"x"+n.verticalResolution+"@":"")+n.bitrate};n.video?f.push(r):k.push(r);n===d&&(n.video?g=r:l=r)}this.video={};Object.defineProperty(this.video,"qualities",{value:f,enumerable:!0});this.video.Q=g;Object.defineProperty(this.video,"quality",{get:function(){return this.Q},
set:function(b){c(b.bandwidth)},enumerable:!0});this.eb=!0;0===k.length?this.eb&&(e||this.cb)&&this.dispatchEvent({name:"updatedmetadata",target:this}):(this.wb=!0,this.onAudioQualities(k,function(b){c(b.bandwidth)},l));var B=this;Object.defineProperty(this.video,"qualityChangePolicy",{get:function(){return B.Ua(1)},set:function(b){return B.hb(1,b)},enumerable:!0})};
Z.prototype.onQualityChange=function(b){if(this.wb){for(var c=this.audio.qualities,d=0;d<c.length;d++){var e=c[d];if(e.bandwidth==b)return this.onAudioQualityChange(e.id)}throw"Unknown audio bitrate "+b;}for(var f=this.video.Q,c=this.video.qualities,d=0;d<c.length;d++)if(e=c[d],e.bandwidth==b){this.video.Q=e;break}this.dispatchEvent({name:"videoqualitychange",previousQuality:f,target:this})};
Z.prototype.onAudioQualities=function(b,c,d){this.audio={};Object.defineProperty(this.audio,"qualities",{value:b,enumerable:!0});this.audio.Q=d;Object.defineProperty(this.audio,"quality",{get:function(){return this.Q},set:function(b){c(b)},enumerable:!0});this.cb=!0;this.eb&&this.cb&&this.dispatchEvent({name:"updatedmetadata",target:this});var e=this;Object.defineProperty(this.audio,"qualityChangePolicy",{get:function(){return e.Ua(2)},set:function(b){return e.hb(2,b)},enumerable:!0})};
Z.prototype.onAudioQualityChange=function(b){for(var c=this.audio.Q,d=this.audio.qualities,e=0;e<d.length;e++){var f=d[e];if(f.id===b){this.audio.Q=f;break}}this.dispatchEvent({name:"audioqualitychange",previousQuality:c,target:this})};Z.prototype.Xb=function(b,c,d){this.xc({name:"transferfailure",url:b,status:c,target:this,body:d})};Z.prototype.ia=function(){this.za=[];delete this.audio;delete this.video;this.wb=this.cb=this.eb=!1};
Z.Rb=function(b){var c=b.viblast;c?c.ia():(c=new Z(b),b.viblast=c)};Z.Tc=function(b){var c=b.viblast;c&&(c.ja=[],c.ia());delete b.viblast};Z.ia=function(b){(b=b.viblast)&&b.ia()};Z.ac=function(b,c){if(c.internalsObserver)console.log("[WARNING] cannot install extended API."),e=h.play(c);else{var d=b.viblast;c.internalsObserver=d;c.xhrBeforeSend&&(d.nb=function(b,d,e){c.xhrBeforeSend({url:d,method:e||"GET",xhr:b,target:this})});var e=h.play(c);d.i=e}return e};h.ExtApi=Z;Z.viblastPlay=Z.ac;
Z.installForVideoTag=Z.Rb;function Ae(b,c,d){b.nodeName!==c&&"*"!==c||d(b);var e=[];"function"===typeof b.getElementsByTagName&&(e=b.getElementsByTagName(c));for(b=e.length;b--;)d(e[b])}function Be(b,c){Ae(b,"VIDEO",c);Ae(b,"AUDIO",c)}function Ce(b){var c=window.jwplayer;if("function"===typeof c)for(b=b.parentNode;b&&b!==document;){if(b.classList.contains("jwplayer"))return c(b);b=b.parentNode}}
function De(b,c,d){datasetAttr="viblast"+d.charAt(0).toUpperCase()+d.slice(1);return(b=b[datasetAttr])?b:c[d]}var Ee="__viblast_ctx__",Fe="__viblast_args__";
function Ge(b,c){function d(b,c){var d={},e;for(e in b)d[e]=b[e];for(e in c)d[e]=c[e];return d}if(!b.ua){var e=b.___async_wait___||[];if(0<e.length)Promise.all(e).then(function(){Ge(b,c)}).catch(function(){Ge(b,c)});else{b.ua=!0;var e=Ce(b),f={};e&&e.config&&e.config.viblast&&(f=e.config.viblast);var g=De(b.dataset,f,"log"),k=d(b[Fe]||{},{channel:{name:De(b.dataset,f,"channelName"),cdnStream:c},container:b,player:"msp",key:b.dataset.viblastKey||window.ViblastKey}),l=De(b.dataset,f,"widevineLicensingServer");
void 0!==l&&null!==l&&(k.widevine={"licensing-server":l});for(var q in f)k[q]=f[q];for(q in b.dataset)0===q.indexOf("viblast")&&(f=q.slice(7),f=f.charAt(0).toLowerCase()+f.slice(1),k[f]=b.dataset[q]);g&&(k.log=g);q=Z.ac(b,k);b[Ee]=q;g&&console.log("starting viblast for",c,b);b.load();e&&b.play()}}}
function ca(b,c){var d=b.___async_wait___||[];if(0<d.length)Promise.all(d).then(function(){ca(b,c)}).catch(function(){ca(b,c)});else{b.ua=!1;c?Z.Tc(b):Z.ia(b);d=b[Ee];delete b[Ee];if(d){b.dataset.viblastLog&&console.log("stopping viblast for",b.dataset.viblastSrc,b);var e=He(b),f=b.paused;h.stop(d);b.src!==e&&(b.src=e);f||(d=b.play(),void 0!==d&&d.then(function(){}).catch(function(){}))}delete b.dataset.viblastSrc}}
function Ie(b){if(b.ua||!b.dataset.viblastKey&&!window.ViblastKey)return!1;var c=He(b),d=b.dataset.viblast;if(d)return(!0===d||"true"===d||"on"===d||"enabled"===d)&&c;if("undefined"!==typeof window.videojs)return!1;c=c.split("?")[0].split("#")[0];return c.lastIndexOf(".m3u8")===c.length-5||c.lastIndexOf(".mpd")===c.length-4?!0:c.lastIndexOf(".mp4")===c.length-4||c.lastIndexOf(".webm")===c.length-5?!1:c&&b.dataset.viblastKey?!0:!1}var Je=!1;
function ba(b,c){b.dataset.viblastSrc=He(b);b.removeAttribute("src");Z.Rb(b);if(Je||c)Ge(b,b.dataset.viblastSrc);else{var d=b.paused;b.load();!d&&b.paused&&(d=b.play(),void 0!==d&&d.then(function(){}).catch(function(){}))}}function Ke(b){if(Ie(b))ba(b);else{var c=b.src;0===c.indexOf("blob:")||0===c.indexOf("mediasource:")||!b.ua||!Je&&b.dataset.viblastSrc&&""===b.src||ca(b)}}function He(b){var c=b.src;if(c)return c;b=b.getElementsByTagName("source");b.length&&(c=b[0].src);return c}
function Le(b){var c=[];b.forEach(function(b){"attributes"===b.type&&"src"===b.attributeName&&(b=b.target,"SOURCE"===b.tagName&&(b=b.parentElement),"VIDEO"!==b.tagName&&"AUDIO"!==b.tagName||c[b]||(c[b]=!0,Ke(b)))})}
function Me(){function b(b){var e=b.__viblast__observer__;e&&e.disconnect();Ke(b);e=new c(Le);e.observe(b,{attributes:!0,subtree:!0});b.__viblast__observer__=e}if(aa()){var c=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver;(new c(function(c){c.forEach(function(c){if("childList"===c.type){for(var d=0;d<c.addedNodes.length;d++){var g=c.addedNodes[d];Be(g,function(c){b(c)})}for(d=0;d<c.removedNodes.length;d++)g=c.removedNodes[d],Be(g,function(b){var c=b.__viblast__observer__;
c&&c.disconnect();ca(b,!0)})}})})).observe(document.body,{childList:!0,subtree:!0});Be(document.body,function(c){b(c)})}}
(function(){for(var b=document.getElementsByTagName("script"),c=0,c=0;c<b.length;c++){var d=b[c].src,d=d.substr(d.lastIndexOf("/")),e=d.indexOf("?");0>e&&(e=void 0);d=d.substr(0,e);if(0<=d.indexOf("viblast.js")){if(b[c].dataset&&"string"===typeof b[c].dataset.xb)return console.log(b[c].dataset.xb),"true"===b[c].dataset.xb;if(b[c].attributes["data-autoinject"]&&"string"===typeof b[c].attributes["data-autoinject"].value)return console.log(b[c].attributes["data-autoinject"].value),"true"===b[c].attributes["data-autoinject"].value;
break}}return!0})()&&(document.addEventListener("DOMContentLoaded",Me),"loading"!==document.readyState&&Me(),window.addEventListener("load",function(){aa()&&(Je=!0,Be(document.body,function(b){b.dataset.viblastSrc&&Ge(b,b.dataset.viblastSrc)}))}));

/* dummy line in order to allow of -g4 */
if(typeof videojs !== 'undefined' && videojs.VERSION.indexOf('4.') === 0) {
	videojs.Viblast = videojs.Html5.extend({
	  init: function(player, options, ready){
	    var originalSource = options.source;
	    // need to remove the source so the HTML5 controller
	    // doesn't try to use it
	    delete options.source;

	    // run the init of the HTML5 controller
	    videojs.Html5.call(this, player, options, ready);
	
	    for(var i in player.options().tracks) {
	    	var track = player.options().tracks[i];
		    var trackEl = document.createElement("track");
	    	
	    	for(label in track) {
	    		trackEl[label] = track[label];
	    	}
	    
		    this.el().appendChild(trackEl);
	    }
	        
		this.args = {
				'connect-to-swarm':'true',
				'container': this.el(),
				'videojs_api': player,
				'player':'videojs-msp',
				'widevine': {
					'licensing-server': options.parentEl.dataset['viblastWidevineLicensingServer']
				},
		};
		
		var keyPrefix = "viblast";
		
		for (var attr in options.parentEl.dataset) {
			if(attr.length > keyPrefix.length && attr.substring(0, keyPrefix.length) == keyPrefix) {
				var key = attr.substring(keyPrefix.length);
				key = key[0].toLowerCase() + key.slice(1);
				this.args[key] = options.parentEl.dataset[attr];
			}
		}
		// override this.args with input arguments passted through videojs options property
		for (var key in options) {
			this.args[key] = options[key];
		}

		if (originalSource) {
			this.src(originalSource.src);
		}
		this.lastTime = 0;
	  }
	});
	
	videojs.Viblast.prototype.dispose = function() {
		Viblast.stop(this.ctx);
		videojs.Html5.prototype.dispose.call(this);
	}
	
	videojs.Viblast.prototype.currentSrc = function() {
		return this.currentSource;
	}
	
	videojs.Viblast.prototype.duration = function() {
		if (this.el().isDVR) {
			this.player().controlBar.durationDisplay.hide();
			this.player().controlBar.timeDivider.hide();
			this.player().controlBar.currentTimeDisplay.hide();
			
			this.player().controlBar.remainingTimeDisplay.el().style.display="block";
			this.player().controlBar.progressControl.seekBar.loadProgressBar.hide()

			return this.el().currentPlaylistDuration;
		}
		return videojs.Html5.prototype.duration.call(this);
	};
	
	
	videojs.Viblast.prototype.currentTime = function() {
		if (this.el().isDVR) {
			return this.lastTime;
		}
		return videojs.Html5.prototype.currentTime.call(this);
	};
	
	videojs.Viblast.prototype.setCurrentTime = function(currentTime) {
		var seekTime = currentTime;
		if (this.el().isDVR) {
			this.lastTime = currentTime;
			seekTime = videojs.Html5.prototype.duration.call(this) - (this.duration() - currentTime);

		}
		videojs.Html5.prototype.setCurrentTime.call(this, seekTime);
	};
	
	videojs.Viblast.prototype.src = function(source) {
		if (!source) return;
		
		if (this.ctx) {
			Viblast.stop(this.ctx);
			delete this.args.internalsObserver;
		}
		
		this.currentSource = source;
		this.args.channel = {
				'name': this.options().parentEl.dataset['viblastChannelName'],
				'cdnStream': this.currentSource
		};
				
		Viblast.ExtApi.installForVideoTag(this.player());
		this.ctx = Viblast.ExtApi.viblastPlay(this.player(), this.args);
	}
	
	videojs.Viblast.isSupported = function(){
	  return Viblast.isMediaSourceSupported();
	};
	
	videojs.Viblast.canPlaySource = function(srcObj){
		if (srcObj.type === 'application/dash+xml') {
		// TODO: allow codec info and check browser support
			return 'maybe';
		} else if (srcObj.type === 'application/x-mpegURL') {
			return 'maybe';
		}
		else {
			return '';
		}
	};
	
		
	videojs.Viblastflash = videojs.Flash.extend({
	  init: function(player, options, ready){
		this.currentDuration = -1; //Default to live
		  
		var originalSource = options.source;
	    // need to remove the source so the HTML5 controller
	    // doesn't try to use it
	    delete options.source;
	    
	    var dataset = this.getDataset(options.parentEl);
	    options.swf = vblib.urlJoin(dataset['viblastBaseUrl'] || vblib['getScriptBaseUrl'](), "viblast-video-js.swf");
	    
	    // run the init of the HTML5 controller
	    videojs.Flash.call(this, player, options, ready);
	
		this.args = {
			'container': {
				'plugin': this,
				'vjsFlashTech': videojs.Flash,
				'player': player,
			},
			'player':'videojs',
			'widevine': {
				'licensing-server': dataset['viblastWidevineLicensingServer']
			},
		};
		
		var keyPrefix = "viblast";
		
		for (var attr in dataset) {
			if(attr.length > keyPrefix.length && attr.substring(0, keyPrefix.length) == keyPrefix) {
				var key = attr.substring(keyPrefix.length);
				key = key[0].toLowerCase() + key.slice(1);
				this.args[key] = dataset[attr];
			}
		}
		// override this.args with input arguments passted through videojs options property
		for (var key in options) {
			this.args[key] = options[key];
		}
		
		if (originalSource) {
			this.src(originalSource.src);
		}
	  }
	});
	
	
	videojs.Viblastflash.prototype.getDataset = function(element) {
		if(element.dataset) {
			return element.dataset;
		}
		
		var result = new Object();
		var attributes = element.attributes;
		
		var toUpperCase = function (n0) {
            return n0.charAt(1).toUpperCase();
        };

		for (var i = 0; i < attributes.length; i++) {
		    if (/^data-.*/.test(attributes[i].name)) {
		    	//Search for a pair of dash "-" and a symbol and replaces them with only the symbol in upper case
		    	var attrName = attributes[i].name.substr(5).replace(/-./g, toUpperCase);
		    	result[attrName] = attributes[i].value;
		    }
		}
		
		return result;
	}
	
	videojs.Viblastflash.prototype.currentSrc = function() {
		return this.originalSource.src;
	}
	
	videojs.Viblastflash.prototype.dispose = function() {
		Viblast.stop(this.ctx);
		videojs.Flash.prototype.dispose.call(this);
	}
	
	videojs.Viblastflash.prototype.src = function(source) {
		if (!source) return;
		
		var firstRun = true;
		
		if (this.ctx) {
			this.setDuration(-1); //Default to live
			this.sourceBuffer.abort();
			Viblast.stop(this.ctx);
			delete this.args.internalsObserver;
			firstRun = false;
		}
		
		var mediaSource = new videojs.MediaSource();
		var internalSource = {
			src: videojs.URL.createObjectURL(mediaSource),
			type: "video/flv"
		};
		this.mediaSource = mediaSource;
		this.currentSource = source;
		this.args.channel = {
				'cdnStream': this.currentSource
		};
		
		if (this.options().parentEl.dataset && this.options().parentEl.dataset['viblastChannelName']) {
			this.args.channel.name = this.options().parentEl.dataset['viblastChannelName'];
		}
		else if (this.options().parentEl.attributes['data-viblast-channel-name']) {
			this.args.channel.name = this.options().parentEl.attributes['data-viblast-channel-name'].value;
		}
				
		Viblast.ExtApi.installForVideoTag(this.player());
		this.ctx = Viblast.ExtApi.viblastPlay(this.player(), this.args);
		
		var tech = this;
		this.player().ready(function() {
			var wasPaused = tech.player().paused();
			
			// do nothing if the tech has been disposed already
			// this can occur if someone sets the src in player.ready(), for instance
			if (!tech.el()) {
				return;
			}
			tech.el().vjs_src(internalSource.src);
			
			if(!firstRun && !wasPaused) videojs['Flash'].prototype['play'].apply(tech);
		});
		
	};
	
	videojs.Viblastflash.isSupported = function(){
	  // Only use the HLS tech if native HLS isn't available
	  return !videojs.Viblastflash.supportsNativeHls &&
	    // Flash must be supported for the fallback to work
	    videojs.Flash.isSupported() &&
	    // Media sources must be available to stream bytes to Flash
	    videojs.MediaSource &&
	    // Typed arrays are used to repackage the segments
	    window.Uint8Array;
	};
	
	videojs.Viblastflash.supportsNativeHls = (function() {
	  var
	    video = document.createElement('video'),
	    xMpegUrl,
	    vndMpeg;
	
	  // native HLS is definitely not supported if HTML5 video isn't
	  if (!videojs.Html5.isSupported()) {
	    return false;
	  }
	
	  xMpegUrl = video.canPlayType('application/x-mpegURL');
	  vndMpeg = video.canPlayType('application/vnd.apple.mpegURL');
	  return (/probably|maybe/).test(xMpegUrl) ||
	    (/probably|maybe/).test(vndMpeg);
	})();
	
	videojs.Viblastflash.canPlaySource = function(srcObj){
		
		
		if (srcObj.type === 'application/dash+xml') {
		// TODO: allow codec info and check browser support
			return 'maybe';
		} else if (srcObj.type === 'application/x-mpegURL') {
			return 'maybe';
		}
		else {
			return '';
		}
	};
	
	
	videojs.Viblastflash.prototype.duration = function() {
		return this.currentDuration;
	};
	
	videojs.Viblastflash.prototype.setDuration = function(duration) {
		this.currentDuration = duration;
		this.trigger('durationchange');
	};
	
	videojs.Viblastflash.prototype.currentTime = function() {
		if (this.lastSeekedTime_) {
			return this.lastSeekedTime_;
		}
		// currentTime is zero while the tech is initializing
		if (!this.el() || !this.el().vjs_getProperty) {
			return 0;
		}
		return this.el().vjs_getProperty('currentTime');
	};
	
		
	videojs.options.techOrder.unshift('viblastflash');
	videojs.options.techOrder.unshift('viblast');

}
if(typeof videojs !== 'undefined' && videojs.VERSION.indexOf('4.') !== 0) {
	var videojsHtml5Tech = videojs.getTech('Html5');
	ViblastTech = videojs.extend(videojsHtml5Tech, {
		constructor: function(options){
			var originalSource = options.source;
			// need to remove the source so the HTML5 controller
			// doesn't try to use it
			delete options.source;
	
			// run the init of the HTML5 controller
			videojsHtml5Tech.call(this, options);
			
			var player = this.getTopLevelPlayer();
		
			// On chrome subtitles are not shown unless they are present on the video element
			//   No need to append them for FF probably because of https://github.com/videojs/video.js/issues/1862
			// player.options_.tracks is the list of tracks initialy specified to the target <video> element
			//   options.textTracks or payer.textTracks() is something else. Don't know what exactly.
			for(var i in player.options_.tracks) {
				var track = player.options_.tracks[i];
				var trackEl = document.createElement("track");
				
				for(label in track) {
					trackEl[label] = track[label];
				}
			
				this.el().appendChild(trackEl);
			}
			
			this.args = {
					'connect-to-swarm':'true',
					'container': this.el(),
					'videojs_api': player,
					'player':'videojs-msp',
					'widevine': {
						'licensing-server': player.el().dataset['viblastWidevineLicensingServer']
					},
			};
			
			var keyPrefix = "viblast";
			
			for (var attr in player.el().dataset) {
				if(attr.length > keyPrefix.length && attr.substring(0, keyPrefix.length) == keyPrefix) {
					var key = attr.substring(keyPrefix.length);
					key = key[0].toLowerCase() + key.slice(1);
					this.args[key] = player.el().dataset[attr];
				}
			}
			// override this.args with input arguments passted through videojs options property
			for (var key in options) {
				this.args[key] = options[key];
			}
	
			if (originalSource) {
				// the tech api is quite strange. .src() is called only if one calles videojs(...).src().
				// the constructor of a tech does two things:
				//  1. it constructs the tech
				//  2. it should set the src and initiate playback
				this.src(originalSource.src);
			}
			this.lastTime = 0;
		}
	});

	ViblastTech.prototype.getTopLevelPlayer = function() {
		return videojs(this.options_.playerId);
	}
	
	ViblastTech.prototype.dispose = function() {
		Viblast.stop(this.ctx);
		videojsHtml5Tech.prototype.dispose.call(this);
	}
	
	ViblastTech.prototype.currentSrc = function() {
		return this.currentSource;
	}
	
	ViblastTech.prototype.duration = function() {
		if (this.el().isDVR) {
			this.getTopLevelPlayer().controlBar.durationDisplay.hide();
			this.getTopLevelPlayer().controlBar.timeDivider.hide();
			this.getTopLevelPlayer().controlBar.currentTimeDisplay.hide();

			this.getTopLevelPlayer().controlBar.remainingTimeDisplay.el().style.display="block";
			this.getTopLevelPlayer().controlBar.progressControl.seekBar.loadProgressBar.hide()

			return this.el().currentPlaylistDuration;
		}
		return videojsHtml5Tech.prototype.duration.call(this);
	};
	
	
	ViblastTech.prototype.currentTime = function() {
		if (this.el().isDVR) {
			return this.lastTime;
		}
		return videojsHtml5Tech.prototype.currentTime.call(this);
	};
	
	ViblastTech.prototype.setCurrentTime = function(currentTime) {
		var seekTime = currentTime;
		if (this.el().isDVR) {
			this.lastTime = currentTime;
			seekTime = videojsHtml5Tech.prototype.duration.call(this) - (this.duration() - currentTime);

		}
		videojsHtml5Tech.prototype.setCurrentTime.call(this, seekTime);
	};
	
	ViblastTech.prototype.src = function(source) {
		if (!source) return;
		
		if (this.ctx) {
			Viblast.stop(this.ctx);
			delete this.args.internalsObserver;
		}
		
		this.currentSource = source;
		this.args.channel = {
				'name': this.getTopLevelPlayer().el().dataset['viblastChannelName'],
				'cdnStream': this.currentSource
		};
				
		Viblast.ExtApi.installForVideoTag(this.getTopLevelPlayer());
		this.ctx = Viblast.ExtApi.viblastPlay(this.getTopLevelPlayer(), this.args);
	}
	
	ViblastTech.isSupported = function(){
	  return Viblast.isMediaSourceSupported();
	};
	
	ViblastTech.canPlaySource = function(srcObj){
		if (srcObj.type === 'application/dash+xml') {
			// TODO: allow codec info and check browser support
			return 'maybe';
		} else if (srcObj.type === 'application/x-mpegURL') {
			return 'maybe';
		}
		else {
			return '';
		}
	};


	var videojsFlashTech = videojs.getTech('Flash');
	//check for flash tech existing
	if (typeof videojsFlashTech != 'undefined') {
	ViblastflashTech = videojs.extend(videojsFlashTech, {
		constructor: function(options){
			this.currentDuration = -1; //Default to live
			  
			var originalSource = options.source;
			// need to remove the source so the HTML5 controller
			// doesn't try to use it
			delete options.source;
			
			var dataset = this.getDataset(videojs(options.playerId).el()); // cannot call this.getTopLevelPlayer() because the Flash Tech ctro has not been called
			options.swf = vblib.urlJoin(dataset['viblastBaseUrl'] || vblib['getScriptBaseUrl'](), "viblast-video-js.swf");
			
			// run the init of the HTML5 controller
			videojsFlashTech.call(this, options);
		
			this.args = {
				'container': {
					'plugin': this,
					'vjsFlashTech': videojsFlashTech,
					'player': this.getTopLevelPlayer(),
				},
				'player':'videojs',
				'widevine': {
					'licensing-server': dataset['viblastWidevineLicensingServer']
				},
			};
			
			var keyPrefix = "viblast";
			
			for (var attr in dataset) {
				if(attr.length > keyPrefix.length && attr.substring(0, keyPrefix.length) == keyPrefix) {
					var key = attr.substring(keyPrefix.length);
					key = key[0].toLowerCase() + key.slice(1);
					this.args[key] = dataset[attr];
				}
			}
			// override this.args with input arguments passted through videojs options property
			for (var key in options) {
				this.args[key] = options[key];
			}
			
			if (originalSource) {
				this.src(originalSource.src);
			}
		}
	});
	
	ViblastflashTech.prototype.getTopLevelPlayer = function() {
		return videojs(this.options_.playerId);
	}
	
	ViblastflashTech.prototype.getDataset = function(element) {
		if(element.dataset) {
			return element.dataset;
		}
		
		var result = new Object();
		var attributes = element.attributes;
		
		var toUpperCase = function (n0) {
			return n0.charAt(1).toUpperCase();
		};

		for (var i = 0; i < attributes.length; i++) {
			if (/^data-.*/.test(attributes[i].name)) {
				//Search for a pair of dash "-" and a symbol and replaces them with only the symbol in upper case
				var attrName = attributes[i].name.substr(5).replace(/-./g, toUpperCase);
				result[attrName] = attributes[i].value;
			}
		}
		
		return result;
	}
	
	ViblastflashTech.prototype.currentSrc = function() {
		if (this.originalSource) {
			return this.originalSource.src;
		} else {
			return this.currentSrc;
		}
	}
	
	ViblastflashTech.prototype.dispose = function() {
		Viblast.stop(this.ctx);
		videojsFlashTech.prototype.dispose.call(this);
	}
	
	ViblastflashTech.prototype.src = function(source) {
		if (!source) return;
		
		var firstRun = true;
		
		if (this.ctx) {
			this.setDuration(-1); //Default to live
			this.sourceBuffer.abort();
			Viblast.stop(this.ctx);
			delete this.args.internalsObserver;
			firstRun = false;
		}
		
		var mediaSource = new videojs.MediaSource();
		var internalSource = {
			src: videojs.URL.createObjectURL(mediaSource),
			type: "video/flv"
		};
		this.mediaSource = mediaSource;
		this.currentSource = source;
		this.args.channel = {
				'cdnStream': this.currentSource
		};
		
		if (this.getTopLevelPlayer().el().dataset && this.getTopLevelPlayer().el().dataset['viblastChannelName']) {
			this.args.channel.name = this.getTopLevelPlayer().el().dataset['viblastChannelName'];
		}
		else if (this.getTopLevelPlayer().el().attributes['data-viblast-channel-name']) {
			this.args.channel.name = this.getTopLevelPlayer().el().attributes['data-viblast-channel-name'].value;
		}

		Viblast.ExtApi.installForVideoTag(this.getTopLevelPlayer());
		this.ctx = Viblast.ExtApi.viblastPlay(this.getTopLevelPlayer(), this.args);
		
		var tech = this;
		this.getTopLevelPlayer().ready(function() {
			var wasPaused = tech.player().paused();
			
			// do nothing if the tech has been disposed already
			// this can occur if someone sets the src in player.ready(), for instance
			if (!tech.el()) {
				return;
			}
			tech.el().vjs_src(internalSource.src);
			
			if(!firstRun && !wasPaused) videojsFlashTech.prototype['play'].apply(tech);
		});
		
	};
	
	ViblastflashTech.isSupported = function(){
	// Only use the HLS tech if native HLS isn't available
	return !ViblastflashTech.supportsNativeHls &&
		// Flash must be supported for the fallback to work
		videojsFlashTech.isSupported() &&
		// Media sources must be available to stream bytes to Flash
		videojs.MediaSource &&
		// Typed arrays are used to repackage the segments
		window.Uint8Array;
	};
	
	ViblastflashTech.supportsNativeHls = (function() {
	  var
		video = document.createElement('video'),
		xMpegUrl,
		vndMpeg;
	
	  // native HLS is definitely not supported if HTML5 video isn't
	  if (!videojsHtml5Tech.isSupported()) {
		return false;
	  }
	
	  xMpegUrl = video.canPlayType('application/x-mpegURL');
	  vndMpeg = video.canPlayType('application/vnd.apple.mpegURL');
	  return (/probably|maybe/).test(xMpegUrl) ||
		(/probably|maybe/).test(vndMpeg);
	})();
	
	ViblastflashTech.canPlaySource = function(srcObj){
		
		
		if (srcObj.type === 'application/dash+xml') {
		// TODO: allow codec info and check browser support
			return 'maybe';
		} else if (srcObj.type === 'application/x-mpegURL') {
			return 'maybe';
		}
		else {
			return '';
		}
	};
	
	
	ViblastflashTech.prototype.duration = function() {
		return this.currentDuration;
	};
	
	ViblastflashTech.prototype.setDuration = function(duration) {
		this.currentDuration = duration;
		this.trigger('durationchange');
	};
	
	ViblastflashTech.prototype.currentTime = function() {
		if (this.lastSeekedTime_) {
			return this.lastSeekedTime_;
		}
		// currentTime is zero while the tech is initializing
		if (!this.el() || !this.el().vjs_getProperty) {
			return 0;
		}
		return this.el().vjs_getProperty('currentTime');
	};
	} //end of flash tech check
		
	videojs.registerTech('Viblast', ViblastTech);
	if (typeof ViblastflashTech != 'undefined') {
		videojs.registerTech('Viblastflash', ViblastflashTech);
		videojs.options.techOrder.unshift('viblastflash');
	}
	
	// make viblast the default tech
	videojs.options.techOrder.unshift('viblast');
}
if (typeof videojs !== 'undefined') {

	(function(window) {
		var urlCount = 0,
			NativeMediaSource = window.MediaSource || window.WebKitMediaSource || {},
			nativeUrl = window.URL || {},
			EventEmitter,
			flvCodec = /video\/flv(;\s*codecs=["']vp6,aac["'])?$/,
			objectUrlPrefix = 'blob:vjs-media-source/';

		EventEmitter = function() {};
		EventEmitter.prototype.init = function() {
			this.listeners = [];
		};
		EventEmitter.prototype.addEventListener = function(type, listener) {
			if (!this.listeners[type]) {
				this.listeners[type] = [];
			}
			this.listeners[type].unshift(listener);
		};
		EventEmitter.prototype.removeEventListener = function(type, listener) {
			var listeners = this.listeners[type],
				i = listeners.length;
			while (i--) {
				if (listeners[i] === listener) {
					return listeners.splice(i, 1);
				}
			}
		};
		EventEmitter.prototype.trigger = function(event) {
			var listeners = this.listeners[event.type] || [],
				i = listeners.length;
			while (i--) {
				listeners[i](event);
			}
		};

		scheduleTick = function(func) {
			// Chrome doesn't invoke requestAnimationFrame callbacks
			// in background tabs, so use setTimeout.
			return window.setTimeout(func, videojs.MediaSource.TIME_BETWEEN_TICKS);
		}

		// extend the media source APIs

		// Media Source
		videojs.MediaSource = function() {
			var self = this;
			videojs.MediaSource.prototype.init.call(this);

			this.sourceBuffers = [];
			this.readyState = 'closed';
			this.listeners = {
				sourceopen: [function(event) {
					// find the swf where we will push media data
					self.swfObj = document.getElementById(event.swfId);
					self.readyState = 'open';

					// trigger load events
					if (self.swfObj) {
						self.swfObj.vjs_load();
						self.encoding = self.swfObj.vjs_viblast_get_encoding();
					}
				}],
				webkitsourceopen: [function(event) {
					self.trigger({
						type: 'sourceopen'
					});
				}]
			};
		};
		videojs.MediaSource.prototype = new EventEmitter();

		/**
		 * The maximum size in bytes for append operations to the video.js
		 * SWF. Calling through to Flash blocks and can be expensive so
		 * tuning this parameter may improve playback on slower
		 * systems. There are two factors to consider:
		 * - Each interaction with the SWF must be quick or you risk dropping
		 * video frames. To maintain 60fps for the rest of the page, each append
		 * must not  take longer than 16ms. Given the likelihood that the page
		 * will be executing more javascript than just playback, you probably
		 * want to aim for less than 8ms. We aim for just 4ms.
		 * - Bigger appends significantly increase throughput. The total number of
		 * bytes over time delivered to the SWF must exceed the video bitrate or
		 * playback will stall.
		 *
		 * We adaptively tune the size of appends to give the best throughput
		 * possible given the performance of the system. To do that we try to append
		 * as much as possible in TIME_PER_TICK and while tuning the size of appends
		 * dynamically so that we only append about 4-times in that 4ms span.
		 *
		 * The reason we try to keep the number of appends around four is due to
		 * externalities such as Flash load and garbage collection that are highly
		 * variable and having 4 iterations allows us to exit the loop early if
		 * an iteration takes longer than expected.
		 */

		videojs.MediaSource.TIME_BETWEEN_TICKS = Math.floor(1000 / 480);
		videojs.MediaSource.TIME_PER_TICK = Math.floor(1000 / 240);
		videojs.MediaSource.BYTES_PER_CHUNK = 1 * 1024; // 1kb
		videojs.MediaSource.MIN_CHUNK = 1024;
		videojs.MediaSource.MAX_CHUNK = 1024 * 1024;

		// create a new source buffer to receive a type of media data
		videojs.MediaSource.prototype.addSourceBuffer = function(type) {
			var sourceBuffer;

			// if this is an FLV type, we'll push data to flash
			if (flvCodec.test(type)) {
				// Flash source buffers
				sourceBuffer = new videojs.SourceBuffer(this);
			} else if (this.nativeSource) {
				// native source buffers
				sourceBuffer = this.nativeSource.addSourceBuffer.apply(this.nativeSource, arguments);
			} else {
				throw new Error('NotSupportedError (Video.js)');
			}

			this.sourceBuffers.push(sourceBuffer);
			return sourceBuffer;
		};
		videojs.MediaSource.prototype.endOfStream = function() {
			this.readyState = 'ended';
		};

		// store references to the media sources so they can be connected
		// to a video element (a swf object)
		videojs.mediaSources = {};
		// provide a method for a swf object to notify JS that a media source is now open
		videojs.MediaSource.open = function(msObjectURL, swfId) {
			var mediaSource = videojs.mediaSources[msObjectURL];

			if (mediaSource) {
				mediaSource.trigger({
					type: 'sourceopen',
					swfId: swfId
				});
			} else {
				throw new Error('Media Source not found (Video.js)');
			}
		};

		// Source Buffer
		videojs.SourceBuffer = function(source) {
			var self = this;

			// Start off using the globally defined value but refine
			// as we append data into flash
			this.chunkSize = videojs.MediaSource.BYTES_PER_CHUNK;

			// byte arrays queued to be appended
			this.buffer = [];

			// the total number of queued bytes
			this.bufferSize = 0;

			this.bufferChunksToEncode = Number.MIN_VALUE;
			this.bufferChunksRawSent = 0;
			this.bufferChunksEncodedReceived = 0;
			this.bufferChunksToDiscard = 0;

			this.processBufferTimer = undefined;
			this.appendBufferChunkingTimer = undefined;

			videojs.SourceBuffer.prototype.init.call(this);
			this.source = source;

			// indicates whether the asynchronous continuation of an operation
			// is still being processed
			// see https://w3c.github.io/media-source/#widl-SourceBuffer-updating
			this.updating = false;

			this.dlog = function() {
				if (false) {
					console.log.apply(console, arguments);
				}
			};

			// accept video data and pass to the video (swf) object
			this.appendBuffer = function(bytes) {
				var error, self = this;

				if (this.updating) {
					error = new Error('SourceBuffer.append() cannot be called ' +
						'while an update is in progress');
					error.name = 'InvalidStateError';
					error.code = 11;
					throw error;
				}

				self.dlog('appendBuffer: call. got ', bytes.byteLength, ' bytes');

				this.updating = true;
				this.source.readyState = 'open';
				this.trigger({
					type: 'update'
				});

				var chunk = 512 * 1024;
				var i = 0;

				this.bufferChunksRawSent = 0;
				this.bufferChunksToEncode = bytes.byteLength / chunk;
				if ((bytes.byteLength % chunk) != 0) {
					this.bufferChunksToEncode = (bytes.byteLength + (chunk - (bytes.byteLength % chunk))) / chunk;
				}

				self.dlog('appendBuffer: expecting ', this.bufferChunksToEncode, ' chunks to be encoded');

				(function chunkInData() {
					self.appendBufferChunkingTimer = undefined;

					self.bufferChunksRawSent++;

					// XXX copy to a new typed array as a workaround for chrome bug 169705 // should we really do that? after all chrome woun't use flash?
					var slice = new Uint8Array(bytes.subarray(i, i + chunk));
					self.encodeWorker.postMessage(slice);

					i += chunk;
					if (i < bytes.byteLength) {
						self.appendBufferChunkingTimer = scheduleTick(chunkInData);
					}
				})();
			};

			this.receiveBuffer = function(bytes) {
				var self = this;

				self.dlog('receiveBuffer: call');
				if (this.bufferChunksToDiscard > 0) {
					self.dlog('receiveBuffer: discarding chunk');
					this.bufferChunksToDiscard--;
					return;
				}

				this.bufferChunksEncodedReceived++;

				this.buffer.push(bytes);
				this.bufferSize += bytes['data'].length;

				self.dlog('receiveBuffer: received encoded chunk.. ', this.bufferChunksEncodedReceived, '/ ', this.bufferChunksRawSent, ' / ', this.bufferChunksToEncode);

				if (
					(this.bufferChunksEncodedReceived == this.bufferChunksToEncode)
				) {
					self.dlog('receiveBuffer: got last encoded chunk. start feeding, ', this.buffer.length);
					this.bufferChunksToEncode = Number.MIN_VALUE;
					this.bufferChunksEncodedReceived = 0;

					var self = this;
					//~ self.dlog('receiveBuffer: SETTING timer');
					this.processBufferTimer = scheduleTick(self.processBuffer.bind(self));
				}
			};

			this.processBuffer = function() {
				var self = this;

				self.dlog('processBuffer: call');
				//~ self.dlog('processBuffer: clearing saved timeout handle');
				this.processBufferTimer = undefined;
				var
					i,
					length,
					startByte = 0,
					appendIterations = 0,
					startTime = +(new Date()),
					appendTime;

				//~ self.dlog('buffer.length', this.buffer.length);

				if (!this.buffer.length) {
					self.dlog('processBuffer: no items in buffer, doing nothing');
					self.dlog('processBuffer: ', this.updating);
					self.dlog(this.updating === false, "processBuffer: the queue is empty and we are updating ?!");
					// do nothing if the buffer is empty
					return;
				}

				if (this.buffer[0]['startByte'] !== undefined) {
					startByte = this.buffer[0]['startByte'];
				}

				do {
					appendIterations++;

					var block = this.buffer[0];
					var index = block['index'];
					var chunk = block['data'].substring(startByte, startByte + this.chunkSize);

					var chunkOffset = startByte;
					var chunkKBsFromBlockStart = startByte / 1024;
					var chunkKBs = chunk.length / 1024;
					if ((chunk.length  % 1024) != 0) {
						chunkKBs = (chunk.length + (1024 - (chunk.length % 1024))) / 1024;
					}
					var chunkZeroesByteLength = index[chunkKBsFromBlockStart + chunkKBs] - index[chunkKBsFromBlockStart];
					var chunkZeroes = block['zeroes'].substr(index[chunkKBsFromBlockStart], chunkZeroesByteLength);

					//~ self.dlog('processBuffer: appending to swf: from ', startByte, ', ', chunkKBs, ' KBs');

					this.source.swfObj.CallFunction(
						'<invoke name="vjs_appendBuffer" returntype="xml">' +
							'<arguments>' +
								'<string><![CDATA[' + chunk.replace(/\]\]>/g, ']]]]><![CDATA[>') + ']]></string>' +
								'<string><![CDATA[' + chunkZeroes.replace(/\]\]>/g, ']]]]><![CDATA[>') + ']]></string>' +
								'<number>' + (-chunkOffset) + '</number>' +
							'</arguments>' +
						'</invoke>'
					);

					// discard the current buffer if it was processed
					if (chunk.length < this.chunkSize ||
							block['data'].length === startByte + this.chunkSize) {
						startByte = 0;
						this.buffer.shift();
					} else {
						startByte += this.chunkSize;
					}

					this.bufferSize -= chunk.length;

					appendTime = (new Date()) - startTime;
				} while (this.buffer.length &&
						appendTime < videojs.MediaSource.TIME_PER_TICK);

				if (this.buffer.length && startByte) {
					this.buffer[0]['startByte'] = startByte;
				}

				if (appendTime >= videojs.MediaSource.TIME_PER_TICK) {
					// We want to target 4 iterations per time-slot so that gives us
					// room to adjust to changes in Flash load and other externalities
					// such as garbage collection while still maximizing throughput
					this.chunkSize = Math.floor(this.chunkSize * (appendIterations / 4));

					if ((this.chunkSize % 1024) != 0) {
						this.chunkSize -= this.chunkSize % 1024;
					}
				}

				// We also make sure that the chunk-size doesn't drop below 1KB or
				// go above 1MB as a sanity check
				this.chunkSize = Math.max(
					videojs.MediaSource.MIN_CHUNK,
					Math.min(this.chunkSize, videojs.MediaSource.MAX_CHUNK));

				// schedule another append if necessary
				if (this.bufferSize !== 0) {
					//~ self.dlog('processBuffer: queue NOT empty.. scheduling');
					this.processBufferTimer = scheduleTick(this.processBuffer.bind(this));
				} else {
					self.dlog('processBuffer: queue is empty ', this.buffer.length, this.bufferSize);
					this.updating = false;
					this.trigger({ type: 'updateend' });

					if (this.source.readyState === 'ended') {
						this.source.swfObj.vjs_endOfStream();
					}
				}
			},

			// reset the parser and remove any data queued to be sent to the swf
			this.abort = function() {
				var self = this;

				self.dlog('abort: called!, ' + this.bufferChunksToEncode);

				// clear the queue of the encoded chunks waiting to be appended to the swf
				this.buffer.length = 0;
				this.bufferSize = 0;
				self.dlog('abort: cleared queue');

				// stop the processing of the encoded chunks queue
				if (this.processBufferTimer !== undefined) {
					self.dlog('abort: clearing processBuffer timeout');
					clearTimeout(this.processBufferTimer);
					this.processBufferTimer = undefined; // reset
				}

				// stop the chunking of the large blobs given to us from appendBuffer
				if (this.appendBufferChunkingTimer !== undefined ) {
					self.dlog('abort: clearing appendBufferChunkingTimer timeout');
					clearTimeout(this.appendBufferChunkingTimer);
					this.appendBufferChunkingTimer = undefined; // reset
				}

				// schedule cleanup of chunks stuck in buffers between the encoding worker and the javascript main thread
				if (true
					&& (this.bufferChunksToEncode != Number.MIN_VALUE) // we have something to encode
					&& (this.bufferChunksRawSent > 0) // we have sent something to the encoder
					&& (this.bufferChunksRawSent > this.bufferChunksEncodedReceived) // we have not received everything sent to the encoder back
				) {
					// we must discard what is left in the buffer between the encoder and the output listener
					this.bufferChunksToDiscard += this.bufferChunksRawSent - this.bufferChunksEncodedReceived;
					this.bufferChunksToEncode = Number.MIN_VALUE; // say that we have nothing to encode
					this.bufferChunksRawSent = 0; // say that we have not sent anything
					this.bufferChunksEncodedReceived = 0; // say that we have not sent anything

					self.dlog('abort: scheduled discarding of ', this.bufferChunksToDiscard, ' encoded chunks');
				}

				self.dlog('abort: calling swf abort');
				this.source.swfObj.vjs_abort();

				// report any outstanding updates have ended
				if (this.updating) {
					self.dlog('abort: triggering updateend');
					this.updating = false;
					this.trigger({
						type: 'updateend'
					});

					self.dlog('abort: triggering updateend - done');
				}
			};

			this.encodeWorker = new Worker(vblib.urlJoin(source.vb_baseUrl, '/flash-escape.js'));
			this.encodeWorker.postMessage(this.source.encoding);
			this.encodeWorker.onmessage = function(e) {
				self.receiveBuffer(e.data)
			}
		};
		videojs.SourceBuffer.prototype = new EventEmitter();

		// URL
		videojs.URL = {
			createObjectURL: function(object) {
				var url = objectUrlPrefix + urlCount;

				urlCount++;

				// setup the mapping back to object
				videojs.mediaSources[url] = object;

				return url;
			}
		};

		// plugin
		registerVideoJSPlugin = function(options) {
			var player = this;

			player.on('loadstart', function() {
				var url = player.currentSrc(),
					trigger = function(event) {
						mediaSource.trigger(event);
					},
					mediaSource;

				if (player.techName === 'Html5' && url.indexOf(objectUrlPrefix) === 0) {
					// use the native media source implementation
					mediaSource = videojs.mediaSources[url];

					if (!mediaSource.nativeUrl) {
						// initialize the native source
						mediaSource.nativeSource = new NativeMediaSource();
						mediaSource.nativeSource.addEventListener('sourceopen', trigger, false);
						mediaSource.nativeSource.addEventListener('webkitsourceopen', trigger, false);
						mediaSource.nativeUrl = nativeUrl.createObjectURL(mediaSource.nativeSource);
					}
					player.src(mediaSource.nativeUrl);
				}
			});
		};
		if (videojs.VERSION.startsWith('6.')) {
			videojs.registerPlugin('mediaSource', registerVideoJSPlugin);
		} else {
			videojs.plugin('mediaSource', registerVideoJSPlugin);
		}	
	})(this);
}
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.adapter = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
/*
 *  Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';

var SDPUtils = require('sdp');

function writeMediaSection(transceiver, caps, type, stream, dtlsRole) {
  var sdp = SDPUtils.writeRtpDescription(transceiver.kind, caps);

  // Map ICE parameters (ufrag, pwd) to SDP.
  sdp += SDPUtils.writeIceParameters(
      transceiver.iceGatherer.getLocalParameters());

  // Map DTLS parameters to SDP.
  sdp += SDPUtils.writeDtlsParameters(
      transceiver.dtlsTransport.getLocalParameters(),
      type === 'offer' ? 'actpass' : dtlsRole || 'active');

  sdp += 'a=mid:' + transceiver.mid + '\r\n';

  if (transceiver.direction) {
    sdp += 'a=' + transceiver.direction + '\r\n';
  } else if (transceiver.rtpSender && transceiver.rtpReceiver) {
    sdp += 'a=sendrecv\r\n';
  } else if (transceiver.rtpSender) {
    sdp += 'a=sendonly\r\n';
  } else if (transceiver.rtpReceiver) {
    sdp += 'a=recvonly\r\n';
  } else {
    sdp += 'a=inactive\r\n';
  }

  if (transceiver.rtpSender) {
    // spec.
    var msid = 'msid:' + stream.id + ' ' +
        transceiver.rtpSender.track.id + '\r\n';
    sdp += 'a=' + msid;

    // for Chrome.
    sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc +
        ' ' + msid;
    if (transceiver.sendEncodingParameters[0].rtx) {
      sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc +
          ' ' + msid;
      sdp += 'a=ssrc-group:FID ' +
          transceiver.sendEncodingParameters[0].ssrc + ' ' +
          transceiver.sendEncodingParameters[0].rtx.ssrc +
          '\r\n';
    }
  }
  // FIXME: this should be written by writeRtpDescription.
  sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc +
      ' cname:' + SDPUtils.localCName + '\r\n';
  if (transceiver.rtpSender && transceiver.sendEncodingParameters[0].rtx) {
    sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc +
        ' cname:' + SDPUtils.localCName + '\r\n';
  }
  return sdp;
}

// Edge does not like
// 1) stun: filtered after 14393 unless ?transport=udp is present
// 2) turn: that does not have all of turn:host:port?transport=udp
// 3) turn: with ipv6 addresses
// 4) turn: occurring muliple times
function filterIceServers(iceServers, edgeVersion) {
  var hasTurn = false;
  iceServers = JSON.parse(JSON.stringify(iceServers));
  return iceServers.filter(function(server) {
    if (server && (server.urls || server.url)) {
      var urls = server.urls || server.url;
      if (server.url && !server.urls) {
        console.warn('RTCIceServer.url is deprecated! Use urls instead.');
      }
      var isString = typeof urls === 'string';
      if (isString) {
        urls = [urls];
      }
      urls = urls.filter(function(url) {
        var validTurn = url.indexOf('turn:') === 0 &&
            url.indexOf('transport=udp') !== -1 &&
            url.indexOf('turn:[') === -1 &&
            !hasTurn;

        if (validTurn) {
          hasTurn = true;
          return true;
        }
        return url.indexOf('stun:') === 0 && edgeVersion >= 14393 &&
            url.indexOf('?transport=udp') === -1;
      });

      delete server.url;
      server.urls = isString ? urls[0] : urls;
      return !!urls.length;
    }
    return false;
  });
}

// Determines the intersection of local and remote capabilities.
function getCommonCapabilities(localCapabilities, remoteCapabilities) {
  var commonCapabilities = {
    codecs: [],
    headerExtensions: [],
    fecMechanisms: []
  };

  var findCodecByPayloadType = function(pt, codecs) {
    pt = parseInt(pt, 10);
    for (var i = 0; i < codecs.length; i++) {
      if (codecs[i].payloadType === pt ||
          codecs[i].preferredPayloadType === pt) {
        return codecs[i];
      }
    }
  };

  var rtxCapabilityMatches = function(lRtx, rRtx, lCodecs, rCodecs) {
    var lCodec = findCodecByPayloadType(lRtx.parameters.apt, lCodecs);
    var rCodec = findCodecByPayloadType(rRtx.parameters.apt, rCodecs);
    return lCodec && rCodec &&
        lCodec.name.toLowerCase() === rCodec.name.toLowerCase();
  };

  localCapabilities.codecs.forEach(function(lCodec) {
    for (var i = 0; i < remoteCapabilities.codecs.length; i++) {
      var rCodec = remoteCapabilities.codecs[i];
      if (lCodec.name.toLowerCase() === rCodec.name.toLowerCase() &&
          lCodec.clockRate === rCodec.clockRate) {
        if (lCodec.name.toLowerCase() === 'rtx' &&
            lCodec.parameters && rCodec.parameters.apt) {
          // for RTX we need to find the local rtx that has a apt
          // which points to the same local codec as the remote one.
          if (!rtxCapabilityMatches(lCodec, rCodec,
              localCapabilities.codecs, remoteCapabilities.codecs)) {
            continue;
          }
        }
        rCodec = JSON.parse(JSON.stringify(rCodec)); // deepcopy
        // number of channels is the highest common number of channels
        rCodec.numChannels = Math.min(lCodec.numChannels,
            rCodec.numChannels);
        // push rCodec so we reply with offerer payload type
        commonCapabilities.codecs.push(rCodec);

        // determine common feedback mechanisms
        rCodec.rtcpFeedback = rCodec.rtcpFeedback.filter(function(fb) {
          for (var j = 0; j < lCodec.rtcpFeedback.length; j++) {
            if (lCodec.rtcpFeedback[j].type === fb.type &&
                lCodec.rtcpFeedback[j].parameter === fb.parameter) {
              return true;
            }
          }
          return false;
        });
        // FIXME: also need to determine .parameters
        //  see https://github.com/openpeer/ortc/issues/569
        break;
      }
    }
  });

  localCapabilities.headerExtensions.forEach(function(lHeaderExtension) {
    for (var i = 0; i < remoteCapabilities.headerExtensions.length;
         i++) {
      var rHeaderExtension = remoteCapabilities.headerExtensions[i];
      if (lHeaderExtension.uri === rHeaderExtension.uri) {
        commonCapabilities.headerExtensions.push(rHeaderExtension);
        break;
      }
    }
  });

  // FIXME: fecMechanisms
  return commonCapabilities;
}

// is action=setLocalDescription with type allowed in signalingState
function isActionAllowedInSignalingState(action, type, signalingState) {
  return {
    offer: {
      setLocalDescription: ['stable', 'have-local-offer'],
      setRemoteDescription: ['stable', 'have-remote-offer']
    },
    answer: {
      setLocalDescription: ['have-remote-offer', 'have-local-pranswer'],
      setRemoteDescription: ['have-local-offer', 'have-remote-pranswer']
    }
  }[type][action].indexOf(signalingState) !== -1;
}

function maybeAddCandidate(iceTransport, candidate) {
  // Edge's internal representation adds some fields therefore
  // not all fieldѕ are taken into account.
  var alreadyAdded = iceTransport.getRemoteCandidates()
      .find(function(remoteCandidate) {
        return candidate.foundation === remoteCandidate.foundation &&
            candidate.ip === remoteCandidate.ip &&
            candidate.port === remoteCandidate.port &&
            candidate.priority === remoteCandidate.priority &&
            candidate.protocol === remoteCandidate.protocol &&
            candidate.type === remoteCandidate.type;
      });
  if (!alreadyAdded) {
    iceTransport.addRemoteCandidate(candidate);
  }
  return !alreadyAdded;
}

module.exports = function(window, edgeVersion) {
  var RTCPeerConnection = function(config) {
    var self = this;

    var _eventTarget = document.createDocumentFragment();
    ['addEventListener', 'removeEventListener', 'dispatchEvent']
        .forEach(function(method) {
          self[method] = _eventTarget[method].bind(_eventTarget);
        });

    this.onicecandidate = null;
    this.onaddstream = null;
    this.ontrack = null;
    this.onremovestream = null;
    this.onsignalingstatechange = null;
    this.oniceconnectionstatechange = null;
    this.onicegatheringstatechange = null;
    this.onnegotiationneeded = null;
    this.ondatachannel = null;
    this.canTrickleIceCandidates = null;

    this.needNegotiation = false;

    this.localStreams = [];
    this.remoteStreams = [];

    this.localDescription = null;
    this.remoteDescription = null;

    this.signalingState = 'stable';
    this.iceConnectionState = 'new';
    this.iceGatheringState = 'new';

    config = JSON.parse(JSON.stringify(config || {}));

    this.usingBundle = config.bundlePolicy === 'max-bundle';
    if (config.rtcpMuxPolicy === 'negotiate') {
      var e = new Error('rtcpMuxPolicy \'negotiate\' is not supported');
      e.name = 'NotSupportedError';
      throw(e);
    } else if (!config.rtcpMuxPolicy) {
      config.rtcpMuxPolicy = 'require';
    }

    switch (config.iceTransportPolicy) {
      case 'all':
      case 'relay':
        break;
      default:
        config.iceTransportPolicy = 'all';
        break;
    }

    switch (config.bundlePolicy) {
      case 'balanced':
      case 'max-compat':
      case 'max-bundle':
        break;
      default:
        config.bundlePolicy = 'balanced';
        break;
    }

    config.iceServers = filterIceServers(config.iceServers || [], edgeVersion);

    this._iceGatherers = [];
    if (config.iceCandidatePoolSize) {
      for (var i = config.iceCandidatePoolSize; i > 0; i--) {
        this._iceGatherers = new window.RTCIceGatherer({
          iceServers: config.iceServers,
          gatherPolicy: config.iceTransportPolicy
        });
      }
    } else {
      config.iceCandidatePoolSize = 0;
    }

    this._config = config;

    // per-track iceGathers, iceTransports, dtlsTransports, rtpSenders, ...
    // everything that is needed to describe a SDP m-line.
    this.transceivers = [];

    this._sdpSessionId = SDPUtils.generateSessionId();
    this._sdpSessionVersion = 0;

    this._dtlsRole = undefined; // role for a=setup to use in answers.
  };

  RTCPeerConnection.prototype._emitGatheringStateChange = function() {
    var event = new Event('icegatheringstatechange');
    this.dispatchEvent(event);
    if (typeof this.onicegatheringstatechange === 'function') {
      this.onicegatheringstatechange(event);
    }
  };

  RTCPeerConnection.prototype.getConfiguration = function() {
    return this._config;
  };

  RTCPeerConnection.prototype.getLocalStreams = function() {
    return this.localStreams;
  };

  RTCPeerConnection.prototype.getRemoteStreams = function() {
    return this.remoteStreams;
  };

  // internal helper to create a transceiver object.
  // (whih is not yet the same as the WebRTC 1.0 transceiver)
  RTCPeerConnection.prototype._createTransceiver = function(kind) {
    var hasBundleTransport = this.transceivers.length > 0;
    var transceiver = {
      track: null,
      iceGatherer: null,
      iceTransport: null,
      dtlsTransport: null,
      localCapabilities: null,
      remoteCapabilities: null,
      rtpSender: null,
      rtpReceiver: null,
      kind: kind,
      mid: null,
      sendEncodingParameters: null,
      recvEncodingParameters: null,
      stream: null,
      wantReceive: true
    };
    if (this.usingBundle && hasBundleTransport) {
      transceiver.iceTransport = this.transceivers[0].iceTransport;
      transceiver.dtlsTransport = this.transceivers[0].dtlsTransport;
    } else {
      var transports = this._createIceAndDtlsTransports();
      transceiver.iceTransport = transports.iceTransport;
      transceiver.dtlsTransport = transports.dtlsTransport;
    }
    this.transceivers.push(transceiver);
    return transceiver;
  };

  RTCPeerConnection.prototype.addTrack = function(track, stream) {
    var transceiver;
    for (var i = 0; i < this.transceivers.length; i++) {
      if (!this.transceivers[i].track &&
          this.transceivers[i].kind === track.kind) {
        transceiver = this.transceivers[i];
      }
    }
    if (!transceiver) {
      transceiver = this._createTransceiver(track.kind);
    }

    this._maybeFireNegotiationNeeded();

    if (this.localStreams.indexOf(stream) === -1) {
      this.localStreams.push(stream);
    }

    transceiver.track = track;
    transceiver.stream = stream;
    transceiver.rtpSender = new window.RTCRtpSender(track,
        transceiver.dtlsTransport);
    return transceiver.rtpSender;
  };

  RTCPeerConnection.prototype.addStream = function(stream) {
    var self = this;
    if (edgeVersion >= 15025) {
      stream.getTracks().forEach(function(track) {
        self.addTrack(track, stream);
      });
    } else {
      // Clone is necessary for local demos mostly, attaching directly
      // to two different senders does not work (build 10547).
      // Fixed in 15025 (or earlier)
      var clonedStream = stream.clone();
      stream.getTracks().forEach(function(track, idx) {
        var clonedTrack = clonedStream.getTracks()[idx];
        track.addEventListener('enabled', function(event) {
          clonedTrack.enabled = event.enabled;
        });
      });
      clonedStream.getTracks().forEach(function(track) {
        self.addTrack(track, clonedStream);
      });
    }
  };

  RTCPeerConnection.prototype.removeStream = function(stream) {
    var idx = this.localStreams.indexOf(stream);
    if (idx > -1) {
      this.localStreams.splice(idx, 1);
      this._maybeFireNegotiationNeeded();
    }
  };

  RTCPeerConnection.prototype.getSenders = function() {
    return this.transceivers.filter(function(transceiver) {
      return !!transceiver.rtpSender;
    })
    .map(function(transceiver) {
      return transceiver.rtpSender;
    });
  };

  RTCPeerConnection.prototype.getReceivers = function() {
    return this.transceivers.filter(function(transceiver) {
      return !!transceiver.rtpReceiver;
    })
    .map(function(transceiver) {
      return transceiver.rtpReceiver;
    });
  };


  RTCPeerConnection.prototype._createIceGatherer = function(sdpMLineIndex,
      usingBundle) {
    var self = this;
    if (usingBundle && sdpMLineIndex > 0) {
      return this.transceivers[0].iceGatherer;
    } else if (this._iceGatherers.length) {
      return this._iceGatherers.shift();
    }
    var iceGatherer = new window.RTCIceGatherer({
      iceServers: this._config.iceServers,
      gatherPolicy: this._config.iceTransportPolicy
    });
    Object.defineProperty(iceGatherer, 'state',
        {value: 'new', writable: true}
    );

    this.transceivers[sdpMLineIndex].candidates = [];
    this.transceivers[sdpMLineIndex].bufferCandidates = function(event) {
      var end = !event.candidate || Object.keys(event.candidate).length === 0;
      // polyfill since RTCIceGatherer.state is not implemented in
      // Edge 10547 yet.
      iceGatherer.state = end ? 'completed' : 'gathering';
      if (self.transceivers[sdpMLineIndex].candidates !== null) {
        self.transceivers[sdpMLineIndex].candidates.push(event.candidate);
      }
    };
    iceGatherer.addEventListener('localcandidate',
      this.transceivers[sdpMLineIndex].bufferCandidates);
    return iceGatherer;
  };

  // start gathering from an RTCIceGatherer.
  RTCPeerConnection.prototype._gather = function(mid, sdpMLineIndex) {
    var self = this;
    var iceGatherer = this.transceivers[sdpMLineIndex].iceGatherer;
    if (iceGatherer.onlocalcandidate) {
      return;
    }
    var candidates = this.transceivers[sdpMLineIndex].candidates;
    this.transceivers[sdpMLineIndex].candidates = null;
    iceGatherer.removeEventListener('localcandidate',
      this.transceivers[sdpMLineIndex].bufferCandidates);
    iceGatherer.onlocalcandidate = function(evt) {
      if (self.usingBundle && sdpMLineIndex > 0) {
        // if we know that we use bundle we can drop candidates with
        // ѕdpMLineIndex > 0. If we don't do this then our state gets
        // confused since we dispose the extra ice gatherer.
        return;
      }
      var event = new Event('icecandidate');
      event.candidate = {sdpMid: mid, sdpMLineIndex: sdpMLineIndex};

      var cand = evt.candidate;
      // Edge emits an empty object for RTCIceCandidateComplete‥
      var end = !cand || Object.keys(cand).length === 0;
      if (end) {
        // polyfill since RTCIceGatherer.state is not implemented in
        // Edge 10547 yet.
        if (iceGatherer.state === 'new' || iceGatherer.state === 'gathering') {
          iceGatherer.state = 'completed';
        }
      } else {
        if (iceGatherer.state === 'new') {
          iceGatherer.state = 'gathering';
        }
        // RTCIceCandidate doesn't have a component, needs to be added
        cand.component = 1;
        event.candidate.candidate = SDPUtils.writeCandidate(cand);
      }

      // update local description.
      var sections = SDPUtils.splitSections(self.localDescription.sdp);
      if (!end) {
        sections[event.candidate.sdpMLineIndex + 1] +=
            'a=' + event.candidate.candidate + '\r\n';
      } else {
        sections[event.candidate.sdpMLineIndex + 1] +=
            'a=end-of-candidates\r\n';
      }
      self.localDescription.sdp = sections.join('');
      var complete = self.transceivers.every(function(transceiver) {
        return transceiver.iceGatherer &&
            transceiver.iceGatherer.state === 'completed';
      });

      if (self.iceGatheringState !== 'gathering') {
        self.iceGatheringState = 'gathering';
        self._emitGatheringStateChange();
      }

      // Emit candidate. Also emit null candidate when all gatherers are
      // complete.
      if (!end) {
        self.dispatchEvent(event);
        if (typeof self.onicecandidate === 'function') {
          self.onicecandidate(event);
        }
      }
      if (complete) {
        self.dispatchEvent(new Event('icecandidate'));
        if (typeof self.onicecandidate === 'function') {
          self.onicecandidate(new Event('icecandidate'));
        }
        self.iceGatheringState = 'complete';
        self._emitGatheringStateChange();
      }
    };

    // emit already gathered candidates.
    window.setTimeout(function() {
      candidates.forEach(function(candidate) {
        var e = new Event('RTCIceGatherEvent');
        e.candidate = candidate;
        iceGatherer.onlocalcandidate(e);
      });
    }, 0);
  };

  // Create ICE transport and DTLS transport.
  RTCPeerConnection.prototype._createIceAndDtlsTransports = function() {
    var self = this;
    var iceTransport = new window.RTCIceTransport(null);
    iceTransport.onicestatechange = function() {
      self._updateConnectionState();
    };

    var dtlsTransport = new window.RTCDtlsTransport(iceTransport);
    dtlsTransport.ondtlsstatechange = function() {
      self._updateConnectionState();
    };
    dtlsTransport.onerror = function() {
      // onerror does not set state to failed by itself.
      Object.defineProperty(dtlsTransport, 'state',
          {value: 'failed', writable: true});
      self._updateConnectionState();
    };

    return {
      iceTransport: iceTransport,
      dtlsTransport: dtlsTransport
    };
  };

  // Destroy ICE gatherer, ICE transport and DTLS transport.
  // Without triggering the callbacks.
  RTCPeerConnection.prototype._disposeIceAndDtlsTransports = function(
      sdpMLineIndex) {
    var iceGatherer = this.transceivers[sdpMLineIndex].iceGatherer;
    if (iceGatherer) {
      delete iceGatherer.onlocalcandidate;
      delete this.transceivers[sdpMLineIndex].iceGatherer;
    }
    var iceTransport = this.transceivers[sdpMLineIndex].iceTransport;
    if (iceTransport) {
      delete iceTransport.onicestatechange;
      delete this.transceivers[sdpMLineIndex].iceTransport;
    }
    var dtlsTransport = this.transceivers[sdpMLineIndex].dtlsTransport;
    if (dtlsTransport) {
      delete dtlsTransport.ondtlsstatechange;
      delete dtlsTransport.onerror;
      delete this.transceivers[sdpMLineIndex].dtlsTransport;
    }
  };

  // Start the RTP Sender and Receiver for a transceiver.
  RTCPeerConnection.prototype._transceive = function(transceiver,
      send, recv) {
    var params = getCommonCapabilities(transceiver.localCapabilities,
        transceiver.remoteCapabilities);
    if (send && transceiver.rtpSender) {
      params.encodings = transceiver.sendEncodingParameters;
      params.rtcp = {
        cname: SDPUtils.localCName,
        compound: transceiver.rtcpParameters.compound
      };
      if (transceiver.recvEncodingParameters.length) {
        params.rtcp.ssrc = transceiver.recvEncodingParameters[0].ssrc;
      }
      transceiver.rtpSender.send(params);
    }
    if (recv && transceiver.rtpReceiver && params.codecs.length > 0) {
      // remove RTX field in Edge 14942
      if (transceiver.kind === 'video'
          && transceiver.recvEncodingParameters
          && edgeVersion < 15019) {
        transceiver.recvEncodingParameters.forEach(function(p) {
          delete p.rtx;
        });
      }
      params.encodings = transceiver.recvEncodingParameters;
      params.rtcp = {
        cname: transceiver.rtcpParameters.cname,
        compound: transceiver.rtcpParameters.compound
      };
      if (transceiver.sendEncodingParameters.length) {
        params.rtcp.ssrc = transceiver.sendEncodingParameters[0].ssrc;
      }
      transceiver.rtpReceiver.receive(params);
    }
  };

  RTCPeerConnection.prototype.setLocalDescription = function(description) {
    var self = this;
    var args = arguments;

    if (!isActionAllowedInSignalingState('setLocalDescription',
        description.type, this.signalingState)) {
      return new Promise(function(resolve, reject) {
        var e = new Error('Can not set local ' + description.type +
            ' in state ' + self.signalingState);
        e.name = 'InvalidStateError';
        if (args.length > 2 && typeof args[2] === 'function') {
          args[2].apply(null, [e]);
        }
        reject(e);
      });
    }

    var sections;
    var sessionpart;
    if (description.type === 'offer') {
      // VERY limited support for SDP munging. Limited to:
      // * changing the order of codecs
      sections = SDPUtils.splitSections(description.sdp);
      sessionpart = sections.shift();
      sections.forEach(function(mediaSection, sdpMLineIndex) {
        var caps = SDPUtils.parseRtpParameters(mediaSection);
        self.transceivers[sdpMLineIndex].localCapabilities = caps;
      });

      this.transceivers.forEach(function(transceiver, sdpMLineIndex) {
        self._gather(transceiver.mid, sdpMLineIndex);
      });
    } else if (description.type === 'answer') {
      sections = SDPUtils.splitSections(self.remoteDescription.sdp);
      sessionpart = sections.shift();
      var isIceLite = SDPUtils.matchPrefix(sessionpart,
          'a=ice-lite').length > 0;
      sections.forEach(function(mediaSection, sdpMLineIndex) {
        var transceiver = self.transceivers[sdpMLineIndex];
        var iceGatherer = transceiver.iceGatherer;
        var iceTransport = transceiver.iceTransport;
        var dtlsTransport = transceiver.dtlsTransport;
        var localCapabilities = transceiver.localCapabilities;
        var remoteCapabilities = transceiver.remoteCapabilities;

        // treat bundle-only as not-rejected.
        var rejected = SDPUtils.isRejected(mediaSection) &&
            !SDPUtils.matchPrefix(mediaSection, 'a=bundle-only').length === 1;

        if (!rejected && !transceiver.isDatachannel) {
          var remoteIceParameters = SDPUtils.getIceParameters(
              mediaSection, sessionpart);
          var remoteDtlsParameters = SDPUtils.getDtlsParameters(
              mediaSection, sessionpart);
          if (isIceLite) {
            remoteDtlsParameters.role = 'server';
          }

          if (!self.usingBundle || sdpMLineIndex === 0) {
            self._gather(transceiver.mid, sdpMLineIndex);
            if (iceTransport.state === 'new') {
              iceTransport.start(iceGatherer, remoteIceParameters,
                  isIceLite ? 'controlling' : 'controlled');
            }
            if (dtlsTransport.state === 'new') {
              dtlsTransport.start(remoteDtlsParameters);
            }
          }

          // Calculate intersection of capabilities.
          var params = getCommonCapabilities(localCapabilities,
              remoteCapabilities);

          // Start the RTCRtpSender. The RTCRtpReceiver for this
          // transceiver has already been started in setRemoteDescription.
          self._transceive(transceiver,
              params.codecs.length > 0,
              false);
        }
      });
    }

    this.localDescription = {
      type: description.type,
      sdp: description.sdp
    };
    switch (description.type) {
      case 'offer':
        this._updateSignalingState('have-local-offer');
        break;
      case 'answer':
        this._updateSignalingState('stable');
        break;
      default:
        throw new TypeError('unsupported type "' + description.type +
            '"');
    }

    // If a success callback was provided, emit ICE candidates after it
    // has been executed. Otherwise, emit callback after the Promise is
    // resolved.
    var cb = arguments.length > 1 && typeof arguments[1] === 'function' &&
        arguments[1];
    return new Promise(function(resolve) {
      if (cb) {
        cb.apply(null);
      }
      resolve();
    });
  };

  RTCPeerConnection.prototype.setRemoteDescription = function(description) {
    var self = this;
    var args = arguments;

    if (!isActionAllowedInSignalingState('setRemoteDescription',
        description.type, this.signalingState)) {
      return new Promise(function(resolve, reject) {
        var e = new Error('Can not set remote ' + description.type +
            ' in state ' + self.signalingState);
        e.name = 'InvalidStateError';
        if (args.length > 2 && typeof args[2] === 'function') {
          args[2].apply(null, [e]);
        }
        reject(e);
      });
    }

    var streams = {};
    this.remoteStreams.forEach(function(stream) {
      streams[stream.id] = stream;
    });
    var receiverList = [];
    var sections = SDPUtils.splitSections(description.sdp);
    var sessionpart = sections.shift();
    var isIceLite = SDPUtils.matchPrefix(sessionpart,
        'a=ice-lite').length > 0;
    var usingBundle = SDPUtils.matchPrefix(sessionpart,
        'a=group:BUNDLE ').length > 0;
    this.usingBundle = usingBundle;
    var iceOptions = SDPUtils.matchPrefix(sessionpart,
        'a=ice-options:')[0];
    if (iceOptions) {
      this.canTrickleIceCandidates = iceOptions.substr(14).split(' ')
          .indexOf('trickle') >= 0;
    } else {
      this.canTrickleIceCandidates = false;
    }

    sections.forEach(function(mediaSection, sdpMLineIndex) {
      var lines = SDPUtils.splitLines(mediaSection);
      var kind = SDPUtils.getKind(mediaSection);
      // treat bundle-only as not-rejected.
      var rejected = SDPUtils.isRejected(mediaSection) &&
          !SDPUtils.matchPrefix(mediaSection, 'a=bundle-only').length === 1;
      var protocol = lines[0].substr(2).split(' ')[2];

      var direction = SDPUtils.getDirection(mediaSection, sessionpart);
      var remoteMsid = SDPUtils.parseMsid(mediaSection);

      var mid = SDPUtils.getMid(mediaSection) || SDPUtils.generateIdentifier();

      // Reject datachannels which are not implemented yet.
      if (kind === 'application' && protocol === 'DTLS/SCTP') {
        self.transceivers[sdpMLineIndex] = {
          mid: mid,
          isDatachannel: true
        };
        return;
      }

      var transceiver;
      var iceGatherer;
      var iceTransport;
      var dtlsTransport;
      var rtpReceiver;
      var sendEncodingParameters;
      var recvEncodingParameters;
      var localCapabilities;

      var track;
      // FIXME: ensure the mediaSection has rtcp-mux set.
      var remoteCapabilities = SDPUtils.parseRtpParameters(mediaSection);
      var remoteIceParameters;
      var remoteDtlsParameters;
      if (!rejected) {
        remoteIceParameters = SDPUtils.getIceParameters(mediaSection,
            sessionpart);
        remoteDtlsParameters = SDPUtils.getDtlsParameters(mediaSection,
            sessionpart);
        remoteDtlsParameters.role = 'client';
      }
      recvEncodingParameters =
          SDPUtils.parseRtpEncodingParameters(mediaSection);

      var rtcpParameters = SDPUtils.parseRtcpParameters(mediaSection);

      var isComplete = SDPUtils.matchPrefix(mediaSection,
          'a=end-of-candidates', sessionpart).length > 0;
      var cands = SDPUtils.matchPrefix(mediaSection, 'a=candidate:')
          .map(function(cand) {
            return SDPUtils.parseCandidate(cand);
          })
          .filter(function(cand) {
            return cand.component === 1;
          });

      // Check if we can use BUNDLE and dispose transports.
      if ((description.type === 'offer' || description.type === 'answer') &&
          !rejected && usingBundle && sdpMLineIndex > 0 &&
          self.transceivers[sdpMLineIndex]) {
        self._disposeIceAndDtlsTransports(sdpMLineIndex);
        self.transceivers[sdpMLineIndex].iceGatherer =
            self.transceivers[0].iceGatherer;
        self.transceivers[sdpMLineIndex].iceTransport =
            self.transceivers[0].iceTransport;
        self.transceivers[sdpMLineIndex].dtlsTransport =
            self.transceivers[0].dtlsTransport;
        if (self.transceivers[sdpMLineIndex].rtpSender) {
          self.transceivers[sdpMLineIndex].rtpSender.setTransport(
              self.transceivers[0].dtlsTransport);
        }
        if (self.transceivers[sdpMLineIndex].rtpReceiver) {
          self.transceivers[sdpMLineIndex].rtpReceiver.setTransport(
              self.transceivers[0].dtlsTransport);
        }
      }
      if (description.type === 'offer' && !rejected) {
        transceiver = self.transceivers[sdpMLineIndex] ||
            self._createTransceiver(kind);
        transceiver.mid = mid;

        if (!transceiver.iceGatherer) {
          transceiver.iceGatherer = self._createIceGatherer(sdpMLineIndex,
              usingBundle);
        }

        if (cands.length && transceiver.iceTransport.state === 'new') {
          if (isComplete && (!usingBundle || sdpMLineIndex === 0)) {
            transceiver.iceTransport.setRemoteCandidates(cands);
          } else {
            cands.forEach(function(candidate) {
              maybeAddCandidate(transceiver.iceTransport, candidate);
            });
          }
        }

        localCapabilities = window.RTCRtpReceiver.getCapabilities(kind);

        // filter RTX until additional stuff needed for RTX is implemented
        // in adapter.js
        if (edgeVersion < 15019) {
          localCapabilities.codecs = localCapabilities.codecs.filter(
              function(codec) {
                return codec.name !== 'rtx';
              });
        }

        sendEncodingParameters = transceiver.sendEncodingParameters || [{
          ssrc: (2 * sdpMLineIndex + 2) * 1001
        }];

        var isNewTrack = false;
        if (direction === 'sendrecv' || direction === 'sendonly') {
          isNewTrack = !transceiver.rtpReceiver;
          rtpReceiver = transceiver.rtpReceiver ||
              new window.RTCRtpReceiver(transceiver.dtlsTransport, kind);

          if (isNewTrack) {
            var stream;
            track = rtpReceiver.track;
            // FIXME: does not work with Plan B.
            if (remoteMsid) {
              if (!streams[remoteMsid.stream]) {
                streams[remoteMsid.stream] = new window.MediaStream();
                Object.defineProperty(streams[remoteMsid.stream], 'id', {
                  get: function() {
                    return remoteMsid.stream;
                  }
                });
              }
              Object.defineProperty(track, 'id', {
                get: function() {
                  return remoteMsid.track;
                }
              });
              stream = streams[remoteMsid.stream];
            } else {
              if (!streams.default) {
                streams.default = new window.MediaStream();
              }
              stream = streams.default;
            }
            stream.addTrack(track);
            receiverList.push([track, rtpReceiver, stream]);
          }
        }

        transceiver.localCapabilities = localCapabilities;
        transceiver.remoteCapabilities = remoteCapabilities;
        transceiver.rtpReceiver = rtpReceiver;
        transceiver.rtcpParameters = rtcpParameters;
        transceiver.sendEncodingParameters = sendEncodingParameters;
        transceiver.recvEncodingParameters = recvEncodingParameters;

        // Start the RTCRtpReceiver now. The RTPSender is started in
        // setLocalDescription.
        self._transceive(self.transceivers[sdpMLineIndex],
            false,
            isNewTrack);
      } else if (description.type === 'answer' && !rejected) {
        transceiver = self.transceivers[sdpMLineIndex];
        iceGatherer = transceiver.iceGatherer;
        iceTransport = transceiver.iceTransport;
        dtlsTransport = transceiver.dtlsTransport;
        rtpReceiver = transceiver.rtpReceiver;
        sendEncodingParameters = transceiver.sendEncodingParameters;
        localCapabilities = transceiver.localCapabilities;

        self.transceivers[sdpMLineIndex].recvEncodingParameters =
            recvEncodingParameters;
        self.transceivers[sdpMLineIndex].remoteCapabilities =
            remoteCapabilities;
        self.transceivers[sdpMLineIndex].rtcpParameters = rtcpParameters;

        if (cands.length && iceTransport.state === 'new') {
          if ((isIceLite || isComplete) &&
              (!usingBundle || sdpMLineIndex === 0)) {
            iceTransport.setRemoteCandidates(cands);
          } else {
            cands.forEach(function(candidate) {
              maybeAddCandidate(transceiver.iceTransport, candidate);
            });
          }
        }

        if (!usingBundle || sdpMLineIndex === 0) {
          if (iceTransport.state === 'new') {
            iceTransport.start(iceGatherer, remoteIceParameters,
                'controlling');
          }
          if (dtlsTransport.state === 'new') {
            dtlsTransport.start(remoteDtlsParameters);
          }
        }

        self._transceive(transceiver,
            direction === 'sendrecv' || direction === 'recvonly',
            direction === 'sendrecv' || direction === 'sendonly');

        if (rtpReceiver &&
            (direction === 'sendrecv' || direction === 'sendonly')) {
          track = rtpReceiver.track;
          if (remoteMsid) {
            if (!streams[remoteMsid.stream]) {
              streams[remoteMsid.stream] = new window.MediaStream();
            }
            streams[remoteMsid.stream].addTrack(track);
            receiverList.push([track, rtpReceiver, streams[remoteMsid.stream]]);
          } else {
            if (!streams.default) {
              streams.default = new window.MediaStream();
            }
            streams.default.addTrack(track);
            receiverList.push([track, rtpReceiver, streams.default]);
          }
        } else {
          // FIXME: actually the receiver should be created later.
          delete transceiver.rtpReceiver;
        }
      }
    });

    if (this._dtlsRole === undefined) {
      this._dtlsRole = description.type === 'offer' ? 'active' : 'passive';
    }

    this.remoteDescription = {
      type: description.type,
      sdp: description.sdp
    };
    switch (description.type) {
      case 'offer':
        this._updateSignalingState('have-remote-offer');
        break;
      case 'answer':
        this._updateSignalingState('stable');
        break;
      default:
        throw new TypeError('unsupported type "' + description.type +
            '"');
    }
    Object.keys(streams).forEach(function(sid) {
      var stream = streams[sid];
      if (stream.getTracks().length) {
        if (self.remoteStreams.indexOf(stream) === -1) {
          self.remoteStreams.push(stream);
          var event = new Event('addstream');
          event.stream = stream;
          window.setTimeout(function() {
            self.dispatchEvent(event);
            if (typeof self.onaddstream === 'function') {
              self.onaddstream(event);
            }
          });
        }

        receiverList.forEach(function(item) {
          var track = item[0];
          var receiver = item[1];
          if (stream.id !== item[2].id) {
            return;
          }
          var trackEvent = new Event('track');
          trackEvent.track = track;
          trackEvent.receiver = receiver;
          trackEvent.transceiver = {receiver: receiver};
          trackEvent.streams = [stream];
          window.setTimeout(function() {
            self.dispatchEvent(trackEvent);
            if (typeof self.ontrack === 'function') {
              self.ontrack(trackEvent);
            }
          });
        });
      }
    });

    // check whether addIceCandidate({}) was called within four seconds after
    // setRemoteDescription.
    window.setTimeout(function() {
      if (!(self && self.transceivers)) {
        return;
      }
      self.transceivers.forEach(function(transceiver) {
        if (transceiver.iceTransport &&
            transceiver.iceTransport.state === 'new' &&
            transceiver.iceTransport.getRemoteCandidates().length > 0) {
          console.warn('Timeout for addRemoteCandidate. Consider sending ' +
              'an end-of-candidates notification');
          transceiver.iceTransport.addRemoteCandidate({});
        }
      });
    }, 4000);

    return new Promise(function(resolve) {
      if (args.length > 1 && typeof args[1] === 'function') {
        args[1].apply(null);
      }
      resolve();
    });
  };

  RTCPeerConnection.prototype.close = function() {
    this.transceivers.forEach(function(transceiver) {
      /* not yet
      if (transceiver.iceGatherer) {
        transceiver.iceGatherer.close();
      }
      */
      if (transceiver.iceTransport) {
        transceiver.iceTransport.stop();
      }
      if (transceiver.dtlsTransport) {
        transceiver.dtlsTransport.stop();
      }
      if (transceiver.rtpSender) {
        transceiver.rtpSender.stop();
      }
      if (transceiver.rtpReceiver) {
        transceiver.rtpReceiver.stop();
      }
    });
    // FIXME: clean up tracks, local streams, remote streams, etc
    this._updateSignalingState('closed');
  };

  // Update the signaling state.
  RTCPeerConnection.prototype._updateSignalingState = function(newState) {
    this.signalingState = newState;
    var event = new Event('signalingstatechange');
    this.dispatchEvent(event);
    if (typeof this.onsignalingstatechange === 'function') {
      this.onsignalingstatechange(event);
    }
  };

  // Determine whether to fire the negotiationneeded event.
  RTCPeerConnection.prototype._maybeFireNegotiationNeeded = function() {
    var self = this;
    if (this.signalingState !== 'stable' || this.needNegotiation === true) {
      return;
    }
    this.needNegotiation = true;
    window.setTimeout(function() {
      if (self.needNegotiation === false) {
        return;
      }
      self.needNegotiation = false;
      var event = new Event('negotiationneeded');
      self.dispatchEvent(event);
      if (typeof self.onnegotiationneeded === 'function') {
        self.onnegotiationneeded(event);
      }
    }, 0);
  };

  // Update the connection state.
  RTCPeerConnection.prototype._updateConnectionState = function() {
    var newState;
    var states = {
      'new': 0,
      closed: 0,
      connecting: 0,
      checking: 0,
      connected: 0,
      completed: 0,
      disconnected: 0,
      failed: 0
    };
    this.transceivers.forEach(function(transceiver) {
      states[transceiver.iceTransport.state]++;
      states[transceiver.dtlsTransport.state]++;
    });
    // ICETransport.completed and connected are the same for this purpose.
    states.connected += states.completed;

    newState = 'new';
    if (states.failed > 0) {
      newState = 'failed';
    } else if (states.connecting > 0 || states.checking > 0) {
      newState = 'connecting';
    } else if (states.disconnected > 0) {
      newState = 'disconnected';
    } else if (states.new > 0) {
      newState = 'new';
    } else if (states.connected > 0 || states.completed > 0) {
      newState = 'connected';
    }

    if (newState !== this.iceConnectionState) {
      this.iceConnectionState = newState;
      var event = new Event('iceconnectionstatechange');
      this.dispatchEvent(event);
      if (typeof this.oniceconnectionstatechange === 'function') {
        this.oniceconnectionstatechange(event);
      }
    }
  };

  RTCPeerConnection.prototype.createOffer = function() {
    var self = this;
    var args = arguments;

    var offerOptions;
    if (arguments.length === 1 && typeof arguments[0] !== 'function') {
      offerOptions = arguments[0];
    } else if (arguments.length === 3) {
      offerOptions = arguments[2];
    }

    var numAudioTracks = this.transceivers.filter(function(t) {
      return t.kind === 'audio';
    }).length;
    var numVideoTracks = this.transceivers.filter(function(t) {
      return t.kind === 'video';
    }).length;

    // Determine number of audio and video tracks we need to send/recv.
    if (offerOptions) {
      // Reject Chrome legacy constraints.
      if (offerOptions.mandatory || offerOptions.optional) {
        throw new TypeError(
            'Legacy mandatory/optional constraints not supported.');
      }
      if (offerOptions.offerToReceiveAudio !== undefined) {
        if (offerOptions.offerToReceiveAudio === true) {
          numAudioTracks = 1;
        } else if (offerOptions.offerToReceiveAudio === false) {
          numAudioTracks = 0;
        } else {
          numAudioTracks = offerOptions.offerToReceiveAudio;
        }
      }
      if (offerOptions.offerToReceiveVideo !== undefined) {
        if (offerOptions.offerToReceiveVideo === true) {
          numVideoTracks = 1;
        } else if (offerOptions.offerToReceiveVideo === false) {
          numVideoTracks = 0;
        } else {
          numVideoTracks = offerOptions.offerToReceiveVideo;
        }
      }
    }

    this.transceivers.forEach(function(transceiver) {
      if (transceiver.kind === 'audio') {
        numAudioTracks--;
        if (numAudioTracks < 0) {
          transceiver.wantReceive = false;
        }
      } else if (transceiver.kind === 'video') {
        numVideoTracks--;
        if (numVideoTracks < 0) {
          transceiver.wantReceive = false;
        }
      }
    });

    // Create M-lines for recvonly streams.
    while (numAudioTracks > 0 || numVideoTracks > 0) {
      if (numAudioTracks > 0) {
        this._createTransceiver('audio');
        numAudioTracks--;
      }
      if (numVideoTracks > 0) {
        this._createTransceiver('video');
        numVideoTracks--;
      }
    }

    var sdp = SDPUtils.writeSessionBoilerplate(this._sdpSessionId,
        this._sdpSessionVersion++);
    this.transceivers.forEach(function(transceiver, sdpMLineIndex) {
      // For each track, create an ice gatherer, ice transport,
      // dtls transport, potentially rtpsender and rtpreceiver.
      var track = transceiver.track;
      var kind = transceiver.kind;
      var mid = SDPUtils.generateIdentifier();
      transceiver.mid = mid;

      if (!transceiver.iceGatherer) {
        transceiver.iceGatherer = self._createIceGatherer(sdpMLineIndex,
            self.usingBundle);
      }

      var localCapabilities = window.RTCRtpSender.getCapabilities(kind);
      // filter RTX until additional stuff needed for RTX is implemented
      // in adapter.js
      if (edgeVersion < 15019) {
        localCapabilities.codecs = localCapabilities.codecs.filter(
            function(codec) {
              return codec.name !== 'rtx';
            });
      }
      localCapabilities.codecs.forEach(function(codec) {
        // work around https://bugs.chromium.org/p/webrtc/issues/detail?id=6552
        // by adding level-asymmetry-allowed=1
        if (codec.name === 'H264' &&
            codec.parameters['level-asymmetry-allowed'] === undefined) {
          codec.parameters['level-asymmetry-allowed'] = '1';
        }
      });

      // generate an ssrc now, to be used later in rtpSender.send
      var sendEncodingParameters = transceiver.sendEncodingParameters || [{
        ssrc: (2 * sdpMLineIndex + 1) * 1001
      }];
      if (track) {
        // add RTX
        if (edgeVersion >= 15019 && kind === 'video' &&
            !sendEncodingParameters[0].rtx) {
          sendEncodingParameters[0].rtx = {
            ssrc: sendEncodingParameters[0].ssrc + 1
          };
        }
      }

      if (transceiver.wantReceive) {
        transceiver.rtpReceiver = new window.RTCRtpReceiver(
            transceiver.dtlsTransport, kind);
      }

      transceiver.localCapabilities = localCapabilities;
      transceiver.sendEncodingParameters = sendEncodingParameters;
    });

    // always offer BUNDLE and dispose on return if not supported.
    if (this._config.bundlePolicy !== 'max-compat') {
      sdp += 'a=group:BUNDLE ' + this.transceivers.map(function(t) {
        return t.mid;
      }).join(' ') + '\r\n';
    }
    sdp += 'a=ice-options:trickle\r\n';

    this.transceivers.forEach(function(transceiver, sdpMLineIndex) {
      sdp += writeMediaSection(transceiver, transceiver.localCapabilities,
          'offer', transceiver.stream, self._dtlsRole);
      sdp += 'a=rtcp-rsize\r\n';

      if (transceiver.iceGatherer && self.iceGatheringState !== 'new' &&
          (sdpMLineIndex === 0 || !self.usingBundle)) {
        transceiver.iceGatherer.getLocalCandidates().forEach(function(cand) {
          cand.component = 1;
          sdp += 'a=' + SDPUtils.writeCandidate(cand) + '\r\n';
        });

        if (transceiver.iceGatherer.state === 'completed') {
          sdp += 'a=end-of-candidates\r\n';
        }
      }
    });

    var desc = new window.RTCSessionDescription({
      type: 'offer',
      sdp: sdp
    });
    return new Promise(function(resolve) {
      if (args.length > 0 && typeof args[0] === 'function') {
        args[0].apply(null, [desc]);
        resolve();
        return;
      }
      resolve(desc);
    });
  };

  RTCPeerConnection.prototype.createAnswer = function() {
    var self = this;
    var args = arguments;

    var sdp = SDPUtils.writeSessionBoilerplate(this._sdpSessionId,
        this._sdpSessionVersion++);
    if (this.usingBundle) {
      sdp += 'a=group:BUNDLE ' + this.transceivers.map(function(t) {
        return t.mid;
      }).join(' ') + '\r\n';
    }
    var mediaSectionsInOffer = SDPUtils.splitSections(
        this.remoteDescription.sdp).length - 1;
    this.transceivers.forEach(function(transceiver, sdpMLineIndex) {
      if (sdpMLineIndex + 1 > mediaSectionsInOffer) {
        return;
      }
      if (transceiver.isDatachannel) {
        sdp += 'm=application 0 DTLS/SCTP 5000\r\n' +
            'c=IN IP4 0.0.0.0\r\n' +
            'a=mid:' + transceiver.mid + '\r\n';
        return;
      }

      // FIXME: look at direction.
      if (transceiver.stream) {
        var localTrack;
        if (transceiver.kind === 'audio') {
          localTrack = transceiver.stream.getAudioTracks()[0];
        } else if (transceiver.kind === 'video') {
          localTrack = transceiver.stream.getVideoTracks()[0];
        }
        if (localTrack) {
          // add RTX
          if (edgeVersion >= 15019 && transceiver.kind === 'video' &&
              !transceiver.sendEncodingParameters[0].rtx) {
            transceiver.sendEncodingParameters[0].rtx = {
              ssrc: transceiver.sendEncodingParameters[0].ssrc + 1
            };
          }
        }
      }

      // Calculate intersection of capabilities.
      var commonCapabilities = getCommonCapabilities(
          transceiver.localCapabilities,
          transceiver.remoteCapabilities);

      var hasRtx = commonCapabilities.codecs.filter(function(c) {
        return c.name.toLowerCase() === 'rtx';
      }).length;
      if (!hasRtx && transceiver.sendEncodingParameters[0].rtx) {
        delete transceiver.sendEncodingParameters[0].rtx;
      }

      sdp += writeMediaSection(transceiver, commonCapabilities,
          'answer', transceiver.stream, self._dtlsRole);
      if (transceiver.rtcpParameters &&
          transceiver.rtcpParameters.reducedSize) {
        sdp += 'a=rtcp-rsize\r\n';
      }
    });

    var desc = new window.RTCSessionDescription({
      type: 'answer',
      sdp: sdp
    });
    return new Promise(function(resolve) {
      if (args.length > 0 && typeof args[0] === 'function') {
        args[0].apply(null, [desc]);
        resolve();
        return;
      }
      resolve(desc);
    });
  };

  RTCPeerConnection.prototype.addIceCandidate = function(candidate) {
    var err;
    var sections;
    if (!candidate || candidate.candidate === '') {
      for (var j = 0; j < this.transceivers.length; j++) {
        if (this.transceivers[j].isDatachannel) {
          continue;
        }
        this.transceivers[j].iceTransport.addRemoteCandidate({});
        sections = SDPUtils.splitSections(this.remoteDescription.sdp);
        sections[j + 1] += 'a=end-of-candidates\r\n';
        this.remoteDescription.sdp = sections.join('');
        if (this.usingBundle) {
          break;
        }
      }
    } else if (!(candidate.sdpMLineIndex !== undefined || candidate.sdpMid)) {
      throw new TypeError('sdpMLineIndex or sdpMid required');
    } else if (!this.remoteDescription) {
      err = new Error('Can not add ICE candidate without ' +
          'a remote description');
      err.name = 'InvalidStateError';
    } else {
      var sdpMLineIndex = candidate.sdpMLineIndex;
      if (candidate.sdpMid) {
        for (var i = 0; i < this.transceivers.length; i++) {
          if (this.transceivers[i].mid === candidate.sdpMid) {
            sdpMLineIndex = i;
            break;
          }
        }
      }
      var transceiver = this.transceivers[sdpMLineIndex];
      if (transceiver) {
        if (transceiver.isDatachannel) {
          return Promise.resolve();
        }
        var cand = Object.keys(candidate.candidate).length > 0 ?
            SDPUtils.parseCandidate(candidate.candidate) : {};
        // Ignore Chrome's invalid candidates since Edge does not like them.
        if (cand.protocol === 'tcp' && (cand.port === 0 || cand.port === 9)) {
          return Promise.resolve();
        }
        // Ignore RTCP candidates, we assume RTCP-MUX.
        if (cand.component && cand.component !== 1) {
          return Promise.resolve();
        }
        // when using bundle, avoid adding candidates to the wrong
        // ice transport. And avoid adding candidates added in the SDP.
        if (sdpMLineIndex === 0 || (sdpMLineIndex > 0 &&
            transceiver.iceTransport !== this.transceivers[0].iceTransport)) {
          if (!maybeAddCandidate(transceiver.iceTransport, cand)) {
            err = new Error('Can not add ICE candidate');
            err.name = 'OperationError';
          }
        }

        if (!err) {
          // update the remoteDescription.
          var candidateString = candidate.candidate.trim();
          if (candidateString.indexOf('a=') === 0) {
            candidateString = candidateString.substr(2);
          }
          sections = SDPUtils.splitSections(this.remoteDescription.sdp);
          sections[sdpMLineIndex + 1] += 'a=' +
              (cand.type ? candidateString : 'end-of-candidates')
              + '\r\n';
          this.remoteDescription.sdp = sections.join('');
        }
      } else {
        err = new Error('Can not add ICE candidate');
        err.name = 'OperationError';
      }
    }
    var args = arguments;
    return new Promise(function(resolve, reject) {
      if (err) {
        if (args.length > 2 && typeof args[2] === 'function') {
          args[2].apply(null, [err]);
        }
        reject(err);
      } else {
        if (args.length > 1 && typeof args[1] === 'function') {
          args[1].apply(null);
        }
        resolve();
      }
    });
  };

  RTCPeerConnection.prototype.getStats = function() {
    var promises = [];
    this.transceivers.forEach(function(transceiver) {
      ['rtpSender', 'rtpReceiver', 'iceGatherer', 'iceTransport',
          'dtlsTransport'].forEach(function(method) {
            if (transceiver[method]) {
              promises.push(transceiver[method].getStats());
            }
          });
    });
    var cb = arguments.length > 1 && typeof arguments[1] === 'function' &&
        arguments[1];
    var fixStatsType = function(stat) {
      return {
        inboundrtp: 'inbound-rtp',
        outboundrtp: 'outbound-rtp',
        candidatepair: 'candidate-pair',
        localcandidate: 'local-candidate',
        remotecandidate: 'remote-candidate'
      }[stat.type] || stat.type;
    };
    return new Promise(function(resolve) {
      // shim getStats with maplike support
      var results = new Map();
      Promise.all(promises).then(function(res) {
        res.forEach(function(result) {
          Object.keys(result).forEach(function(id) {
            result[id].type = fixStatsType(result[id]);
            results.set(id, result[id]);
          });
        });
        if (cb) {
          cb.apply(null, results);
        }
        resolve(results);
      });
    });
  };
  return RTCPeerConnection;
};

},{"sdp":2}],2:[function(require,module,exports){
 /* eslint-env node */
'use strict';

// SDP helpers.
var SDPUtils = {};

// Generate an alphanumeric identifier for cname or mids.
// TODO: use UUIDs instead? https://gist.github.com/jed/982883
SDPUtils.generateIdentifier = function() {
  return Math.random().toString(36).substr(2, 10);
};

// The RTCP CNAME used by all peerconnections from the same JS.
SDPUtils.localCName = SDPUtils.generateIdentifier();

// Splits SDP into lines, dealing with both CRLF and LF.
SDPUtils.splitLines = function(blob) {
  return blob.trim().split('\n').map(function(line) {
    return line.trim();
  });
};
// Splits SDP into sessionpart and mediasections. Ensures CRLF.
SDPUtils.splitSections = function(blob) {
  var parts = blob.split('\nm=');
  return parts.map(function(part, index) {
    return (index > 0 ? 'm=' + part : part).trim() + '\r\n';
  });
};

// Returns lines that start with a certain prefix.
SDPUtils.matchPrefix = function(blob, prefix) {
  return SDPUtils.splitLines(blob).filter(function(line) {
    return line.indexOf(prefix) === 0;
  });
};

// Parses an ICE candidate line. Sample input:
// candidate:702786350 2 udp 41819902 8.8.8.8 60769 typ relay raddr 8.8.8.8
// rport 55996"
SDPUtils.parseCandidate = function(line) {
  var parts;
  // Parse both variants.
  if (line.indexOf('a=candidate:') === 0) {
    parts = line.substring(12).split(' ');
  } else {
    parts = line.substring(10).split(' ');
  }

  var candidate = {
    foundation: parts[0],
    component: parseInt(parts[1], 10),
    protocol: parts[2].toLowerCase(),
    priority: parseInt(parts[3], 10),
    ip: parts[4],
    port: parseInt(parts[5], 10),
    // skip parts[6] == 'typ'
    type: parts[7]
  };

  for (var i = 8; i < parts.length; i += 2) {
    switch (parts[i]) {
      case 'raddr':
        candidate.relatedAddress = parts[i + 1];
        break;
      case 'rport':
        candidate.relatedPort = parseInt(parts[i + 1], 10);
        break;
      case 'tcptype':
        candidate.tcpType = parts[i + 1];
        break;
      case 'ufrag':
        candidate.ufrag = parts[i + 1]; // for backward compability.
        candidate.usernameFragment = parts[i + 1];
        break;
      default: // extension handling, in particular ufrag
        candidate[parts[i]] = parts[i + 1];
        break;
    }
  }
  return candidate;
};

// Translates a candidate object into SDP candidate attribute.
SDPUtils.writeCandidate = function(candidate) {
  var sdp = [];
  sdp.push(candidate.foundation);
  sdp.push(candidate.component);
  sdp.push(candidate.protocol.toUpperCase());
  sdp.push(candidate.priority);
  sdp.push(candidate.ip);
  sdp.push(candidate.port);

  var type = candidate.type;
  sdp.push('typ');
  sdp.push(type);
  if (type !== 'host' && candidate.relatedAddress &&
      candidate.relatedPort) {
    sdp.push('raddr');
    sdp.push(candidate.relatedAddress); // was: relAddr
    sdp.push('rport');
    sdp.push(candidate.relatedPort); // was: relPort
  }
  if (candidate.tcpType && candidate.protocol.toLowerCase() === 'tcp') {
    sdp.push('tcptype');
    sdp.push(candidate.tcpType);
  }
  if (candidate.ufrag) {
    sdp.push('ufrag');
    sdp.push(candidate.ufrag);
  }
  return 'candidate:' + sdp.join(' ');
};

// Parses an ice-options line, returns an array of option tags.
// a=ice-options:foo bar
SDPUtils.parseIceOptions = function(line) {
  return line.substr(14).split(' ');
}

// Parses an rtpmap line, returns RTCRtpCoddecParameters. Sample input:
// a=rtpmap:111 opus/48000/2
SDPUtils.parseRtpMap = function(line) {
  var parts = line.substr(9).split(' ');
  var parsed = {
    payloadType: parseInt(parts.shift(), 10) // was: id
  };

  parts = parts[0].split('/');

  parsed.name = parts[0];
  parsed.clockRate = parseInt(parts[1], 10); // was: clockrate
  // was: channels
  parsed.numChannels = parts.length === 3 ? parseInt(parts[2], 10) : 1;
  return parsed;
};

// Generate an a=rtpmap line from RTCRtpCodecCapability or
// RTCRtpCodecParameters.
SDPUtils.writeRtpMap = function(codec) {
  var pt = codec.payloadType;
  if (codec.preferredPayloadType !== undefined) {
    pt = codec.preferredPayloadType;
  }
  return 'a=rtpmap:' + pt + ' ' + codec.name + '/' + codec.clockRate +
      (codec.numChannels !== 1 ? '/' + codec.numChannels : '') + '\r\n';
};

// Parses an a=extmap line (headerextension from RFC 5285). Sample input:
// a=extmap:2 urn:ietf:params:rtp-hdrext:toffset
// a=extmap:2/sendonly urn:ietf:params:rtp-hdrext:toffset
SDPUtils.parseExtmap = function(line) {
  var parts = line.substr(9).split(' ');
  return {
    id: parseInt(parts[0], 10),
    direction: parts[0].indexOf('/') > 0 ? parts[0].split('/')[1] : 'sendrecv',
    uri: parts[1]
  };
};

// Generates a=extmap line from RTCRtpHeaderExtensionParameters or
// RTCRtpHeaderExtension.
SDPUtils.writeExtmap = function(headerExtension) {
  return 'a=extmap:' + (headerExtension.id || headerExtension.preferredId) +
      (headerExtension.direction && headerExtension.direction !== 'sendrecv'
          ? '/' + headerExtension.direction
          : '') +
      ' ' + headerExtension.uri + '\r\n';
};

// Parses an ftmp line, returns dictionary. Sample input:
// a=fmtp:96 vbr=on;cng=on
// Also deals with vbr=on; cng=on
SDPUtils.parseFmtp = function(line) {
  var parsed = {};
  var kv;
  var parts = line.substr(line.indexOf(' ') + 1).split(';');
  for (var j = 0; j < parts.length; j++) {
    kv = parts[j].trim().split('=');
    parsed[kv[0].trim()] = kv[1];
  }
  return parsed;
};

// Generates an a=ftmp line from RTCRtpCodecCapability or RTCRtpCodecParameters.
SDPUtils.writeFmtp = function(codec) {
  var line = '';
  var pt = codec.payloadType;
  if (codec.preferredPayloadType !== undefined) {
    pt = codec.preferredPayloadType;
  }
  if (codec.parameters && Object.keys(codec.parameters).length) {
    var params = [];
    Object.keys(codec.parameters).forEach(function(param) {
      params.push(param + '=' + codec.parameters[param]);
    });
    line += 'a=fmtp:' + pt + ' ' + params.join(';') + '\r\n';
  }
  return line;
};

// Parses an rtcp-fb line, returns RTCPRtcpFeedback object. Sample input:
// a=rtcp-fb:98 nack rpsi
SDPUtils.parseRtcpFb = function(line) {
  var parts = line.substr(line.indexOf(' ') + 1).split(' ');
  return {
    type: parts.shift(),
    parameter: parts.join(' ')
  };
};
// Generate a=rtcp-fb lines from RTCRtpCodecCapability or RTCRtpCodecParameters.
SDPUtils.writeRtcpFb = function(codec) {
  var lines = '';
  var pt = codec.payloadType;
  if (codec.preferredPayloadType !== undefined) {
    pt = codec.preferredPayloadType;
  }
  if (codec.rtcpFeedback && codec.rtcpFeedback.length) {
    // FIXME: special handling for trr-int?
    codec.rtcpFeedback.forEach(function(fb) {
      lines += 'a=rtcp-fb:' + pt + ' ' + fb.type +
      (fb.parameter && fb.parameter.length ? ' ' + fb.parameter : '') +
          '\r\n';
    });
  }
  return lines;
};

// Parses an RFC 5576 ssrc media attribute. Sample input:
// a=ssrc:3735928559 cname:something
SDPUtils.parseSsrcMedia = function(line) {
  var sp = line.indexOf(' ');
  var parts = {
    ssrc: parseInt(line.substr(7, sp - 7), 10)
  };
  var colon = line.indexOf(':', sp);
  if (colon > -1) {
    parts.attribute = line.substr(sp + 1, colon - sp - 1);
    parts.value = line.substr(colon + 1);
  } else {
    parts.attribute = line.substr(sp + 1);
  }
  return parts;
};

// Extracts the MID (RFC 5888) from a media section.
// returns the MID or undefined if no mid line was found.
SDPUtils.getMid = function(mediaSection) {
  var mid = SDPUtils.matchPrefix(mediaSection, 'a=mid:')[0];
  if (mid) {
    return mid.substr(6);
  }
}

SDPUtils.parseFingerprint = function(line) {
  var parts = line.substr(14).split(' ');
  return {
    algorithm: parts[0].toLowerCase(), // algorithm is case-sensitive in Edge.
    value: parts[1]
  };
};

// Extracts DTLS parameters from SDP media section or sessionpart.
// FIXME: for consistency with other functions this should only
//   get the fingerprint line as input. See also getIceParameters.
SDPUtils.getDtlsParameters = function(mediaSection, sessionpart) {
  var lines = SDPUtils.matchPrefix(mediaSection + sessionpart,
      'a=fingerprint:');
  // Note: a=setup line is ignored since we use the 'auto' role.
  // Note2: 'algorithm' is not case sensitive except in Edge.
  return {
    role: 'auto',
    fingerprints: lines.map(SDPUtils.parseFingerprint)
  };
};

// Serializes DTLS parameters to SDP.
SDPUtils.writeDtlsParameters = function(params, setupType) {
  var sdp = 'a=setup:' + setupType + '\r\n';
  params.fingerprints.forEach(function(fp) {
    sdp += 'a=fingerprint:' + fp.algorithm + ' ' + fp.value + '\r\n';
  });
  return sdp;
};
// Parses ICE information from SDP media section or sessionpart.
// FIXME: for consistency with other functions this should only
//   get the ice-ufrag and ice-pwd lines as input.
SDPUtils.getIceParameters = function(mediaSection, sessionpart) {
  var lines = SDPUtils.splitLines(mediaSection);
  // Search in session part, too.
  lines = lines.concat(SDPUtils.splitLines(sessionpart));
  var iceParameters = {
    usernameFragment: lines.filter(function(line) {
      return line.indexOf('a=ice-ufrag:') === 0;
    })[0].substr(12),
    password: lines.filter(function(line) {
      return line.indexOf('a=ice-pwd:') === 0;
    })[0].substr(10)
  };
  return iceParameters;
};

// Serializes ICE parameters to SDP.
SDPUtils.writeIceParameters = function(params) {
  return 'a=ice-ufrag:' + params.usernameFragment + '\r\n' +
      'a=ice-pwd:' + params.password + '\r\n';
};

// Parses the SDP media section and returns RTCRtpParameters.
SDPUtils.parseRtpParameters = function(mediaSection) {
  var description = {
    codecs: [],
    headerExtensions: [],
    fecMechanisms: [],
    rtcp: []
  };
  var lines = SDPUtils.splitLines(mediaSection);
  var mline = lines[0].split(' ');
  for (var i = 3; i < mline.length; i++) { // find all codecs from mline[3..]
    var pt = mline[i];
    var rtpmapline = SDPUtils.matchPrefix(
        mediaSection, 'a=rtpmap:' + pt + ' ')[0];
    if (rtpmapline) {
      var codec = SDPUtils.parseRtpMap(rtpmapline);
      var fmtps = SDPUtils.matchPrefix(
          mediaSection, 'a=fmtp:' + pt + ' ');
      // Only the first a=fmtp:<pt> is considered.
      codec.parameters = fmtps.length ? SDPUtils.parseFmtp(fmtps[0]) : {};
      codec.rtcpFeedback = SDPUtils.matchPrefix(
          mediaSection, 'a=rtcp-fb:' + pt + ' ')
        .map(SDPUtils.parseRtcpFb);
      description.codecs.push(codec);
      // parse FEC mechanisms from rtpmap lines.
      switch (codec.name.toUpperCase()) {
        case 'RED':
        case 'ULPFEC':
          description.fecMechanisms.push(codec.name.toUpperCase());
          break;
        default: // only RED and ULPFEC are recognized as FEC mechanisms.
          break;
      }
    }
  }
  SDPUtils.matchPrefix(mediaSection, 'a=extmap:').forEach(function(line) {
    description.headerExtensions.push(SDPUtils.parseExtmap(line));
  });
  // FIXME: parse rtcp.
  return description;
};

// Generates parts of the SDP media section describing the capabilities /
// parameters.
SDPUtils.writeRtpDescription = function(kind, caps) {
  var sdp = '';

  // Build the mline.
  sdp += 'm=' + kind + ' ';
  sdp += caps.codecs.length > 0 ? '9' : '0'; // reject if no codecs.
  sdp += ' UDP/TLS/RTP/SAVPF ';
  sdp += caps.codecs.map(function(codec) {
    if (codec.preferredPayloadType !== undefined) {
      return codec.preferredPayloadType;
    }
    return codec.payloadType;
  }).join(' ') + '\r\n';

  sdp += 'c=IN IP4 0.0.0.0\r\n';
  sdp += 'a=rtcp:9 IN IP4 0.0.0.0\r\n';

  // Add a=rtpmap lines for each codec. Also fmtp and rtcp-fb.
  caps.codecs.forEach(function(codec) {
    sdp += SDPUtils.writeRtpMap(codec);
    sdp += SDPUtils.writeFmtp(codec);
    sdp += SDPUtils.writeRtcpFb(codec);
  });
  var maxptime = 0;
  caps.codecs.forEach(function(codec) {
    if (codec.maxptime > maxptime) {
      maxptime = codec.maxptime;
    }
  });
  if (maxptime > 0) {
    sdp += 'a=maxptime:' + maxptime + '\r\n';
  }
  sdp += 'a=rtcp-mux\r\n';

  caps.headerExtensions.forEach(function(extension) {
    sdp += SDPUtils.writeExtmap(extension);
  });
  // FIXME: write fecMechanisms.
  return sdp;
};

// Parses the SDP media section and returns an array of
// RTCRtpEncodingParameters.
SDPUtils.parseRtpEncodingParameters = function(mediaSection) {
  var encodingParameters = [];
  var description = SDPUtils.parseRtpParameters(mediaSection);
  var hasRed = description.fecMechanisms.indexOf('RED') !== -1;
  var hasUlpfec = description.fecMechanisms.indexOf('ULPFEC') !== -1;

  // filter a=ssrc:... cname:, ignore PlanB-msid
  var ssrcs = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:')
  .map(function(line) {
    return SDPUtils.parseSsrcMedia(line);
  })
  .filter(function(parts) {
    return parts.attribute === 'cname';
  });
  var primarySsrc = ssrcs.length > 0 && ssrcs[0].ssrc;
  var secondarySsrc;

  var flows = SDPUtils.matchPrefix(mediaSection, 'a=ssrc-group:FID')
  .map(function(line) {
    var parts = line.split(' ');
    parts.shift();
    return parts.map(function(part) {
      return parseInt(part, 10);
    });
  });
  if (flows.length > 0 && flows[0].length > 1 && flows[0][0] === primarySsrc) {
    secondarySsrc = flows[0][1];
  }

  description.codecs.forEach(function(codec) {
    if (codec.name.toUpperCase() === 'RTX' && codec.parameters.apt) {
      var encParam = {
        ssrc: primarySsrc,
        codecPayloadType: parseInt(codec.parameters.apt, 10),
        rtx: {
          ssrc: secondarySsrc
        }
      };
      encodingParameters.push(encParam);
      if (hasRed) {
        encParam = JSON.parse(JSON.stringify(encParam));
        encParam.fec = {
          ssrc: secondarySsrc,
          mechanism: hasUlpfec ? 'red+ulpfec' : 'red'
        };
        encodingParameters.push(encParam);
      }
    }
  });
  if (encodingParameters.length === 0 && primarySsrc) {
    encodingParameters.push({
      ssrc: primarySsrc
    });
  }

  // we support both b=AS and b=TIAS but interpret AS as TIAS.
  var bandwidth = SDPUtils.matchPrefix(mediaSection, 'b=');
  if (bandwidth.length) {
    if (bandwidth[0].indexOf('b=TIAS:') === 0) {
      bandwidth = parseInt(bandwidth[0].substr(7), 10);
    } else if (bandwidth[0].indexOf('b=AS:') === 0) {
      // use formula from JSEP to convert b=AS to TIAS value.
      bandwidth = parseInt(bandwidth[0].substr(5), 10) * 1000 * 0.95
          - (50 * 40 * 8);
    } else {
      bandwidth = undefined;
    }
    encodingParameters.forEach(function(params) {
      params.maxBitrate = bandwidth;
    });
  }
  return encodingParameters;
};

// parses http://draft.ortc.org/#rtcrtcpparameters*
SDPUtils.parseRtcpParameters = function(mediaSection) {
  var rtcpParameters = {};

  var cname;
  // Gets the first SSRC. Note that with RTX there might be multiple
  // SSRCs.
  var remoteSsrc = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:')
      .map(function(line) {
        return SDPUtils.parseSsrcMedia(line);
      })
      .filter(function(obj) {
        return obj.attribute === 'cname';
      })[0];
  if (remoteSsrc) {
    rtcpParameters.cname = remoteSsrc.value;
    rtcpParameters.ssrc = remoteSsrc.ssrc;
  }

  // Edge uses the compound attribute instead of reducedSize
  // compound is !reducedSize
  var rsize = SDPUtils.matchPrefix(mediaSection, 'a=rtcp-rsize');
  rtcpParameters.reducedSize = rsize.length > 0;
  rtcpParameters.compound = rsize.length === 0;

  // parses the rtcp-mux attrіbute.
  // Note that Edge does not support unmuxed RTCP.
  var mux = SDPUtils.matchPrefix(mediaSection, 'a=rtcp-mux');
  rtcpParameters.mux = mux.length > 0;

  return rtcpParameters;
};

// parses either a=msid: or a=ssrc:... msid lines and returns
// the id of the MediaStream and MediaStreamTrack.
SDPUtils.parseMsid = function(mediaSection) {
  var parts;
  var spec = SDPUtils.matchPrefix(mediaSection, 'a=msid:');
  if (spec.length === 1) {
    parts = spec[0].substr(7).split(' ');
    return {stream: parts[0], track: parts[1]};
  }
  var planB = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:')
  .map(function(line) {
    return SDPUtils.parseSsrcMedia(line);
  })
  .filter(function(parts) {
    return parts.attribute === 'msid';
  });
  if (planB.length > 0) {
    parts = planB[0].value.split(' ');
    return {stream: parts[0], track: parts[1]};
  }
};

// Generate a session ID for SDP.
// https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-20#section-5.2.1
// recommends using a cryptographically random +ve 64-bit value
// but right now this should be acceptable and within the right range
SDPUtils.generateSessionId = function() {
  return Math.random().toString().substr(2, 21);
};

// Write boilder plate for start of SDP
// sessId argument is optional - if not supplied it will
// be generated randomly
// sessVersion is optional and defaults to 2
SDPUtils.writeSessionBoilerplate = function(sessId, sessVer) {
  var sessionId;
  var version = sessVer !== undefined ? sessVer : 2;
  if (sessId) {
    sessionId = sessId;
  } else {
    sessionId = SDPUtils.generateSessionId();
  }
  // FIXME: sess-id should be an NTP timestamp.
  return 'v=0\r\n' +
      'o=thisisadapterortc ' + sessionId + ' ' + version + ' IN IP4 127.0.0.1\r\n' +
      's=-\r\n' +
      't=0 0\r\n';
};

SDPUtils.writeMediaSection = function(transceiver, caps, type, stream) {
  var sdp = SDPUtils.writeRtpDescription(transceiver.kind, caps);

  // Map ICE parameters (ufrag, pwd) to SDP.
  sdp += SDPUtils.writeIceParameters(
      transceiver.iceGatherer.getLocalParameters());

  // Map DTLS parameters to SDP.
  sdp += SDPUtils.writeDtlsParameters(
      transceiver.dtlsTransport.getLocalParameters(),
      type === 'offer' ? 'actpass' : 'active');

  sdp += 'a=mid:' + transceiver.mid + '\r\n';

  if (transceiver.direction) {
    sdp += 'a=' + transceiver.direction + '\r\n';
  } else if (transceiver.rtpSender && transceiver.rtpReceiver) {
    sdp += 'a=sendrecv\r\n';
  } else if (transceiver.rtpSender) {
    sdp += 'a=sendonly\r\n';
  } else if (transceiver.rtpReceiver) {
    sdp += 'a=recvonly\r\n';
  } else {
    sdp += 'a=inactive\r\n';
  }

  if (transceiver.rtpSender) {
    // spec.
    var msid = 'msid:' + stream.id + ' ' +
        transceiver.rtpSender.track.id + '\r\n';
    sdp += 'a=' + msid;

    // for Chrome.
    sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc +
        ' ' + msid;
    if (transceiver.sendEncodingParameters[0].rtx) {
      sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc +
          ' ' + msid;
      sdp += 'a=ssrc-group:FID ' +
          transceiver.sendEncodingParameters[0].ssrc + ' ' +
          transceiver.sendEncodingParameters[0].rtx.ssrc +
          '\r\n';
    }
  }
  // FIXME: this should be written by writeRtpDescription.
  sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc +
      ' cname:' + SDPUtils.localCName + '\r\n';
  if (transceiver.rtpSender && transceiver.sendEncodingParameters[0].rtx) {
    sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc +
        ' cname:' + SDPUtils.localCName + '\r\n';
  }
  return sdp;
};

// Gets the direction from the mediaSection or the sessionpart.
SDPUtils.getDirection = function(mediaSection, sessionpart) {
  // Look for sendrecv, sendonly, recvonly, inactive, default to sendrecv.
  var lines = SDPUtils.splitLines(mediaSection);
  for (var i = 0; i < lines.length; i++) {
    switch (lines[i]) {
      case 'a=sendrecv':
      case 'a=sendonly':
      case 'a=recvonly':
      case 'a=inactive':
        return lines[i].substr(2);
      default:
        // FIXME: What should happen here?
    }
  }
  if (sessionpart) {
    return SDPUtils.getDirection(sessionpart);
  }
  return 'sendrecv';
};

SDPUtils.getKind = function(mediaSection) {
  var lines = SDPUtils.splitLines(mediaSection);
  var mline = lines[0].split(' ');
  return mline[0].substr(2);
};

SDPUtils.isRejected = function(mediaSection) {
  return mediaSection.split(' ', 2)[1] === '0';
};

SDPUtils.parseMLine = function(mediaSection) {
  var lines = SDPUtils.splitLines(mediaSection);
  var mline = lines[0].split(' ');
  return {
    kind: mline[0].substr(2),
    port: parseInt(mline[1], 10),
    protocol: mline[2],
    fmt: mline.slice(3).join(' ')
  };
};

// Expose public methods.
if (typeof module === 'object') {
  module.exports = SDPUtils;
}

},{}],3:[function(require,module,exports){
(function (global){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */

'use strict';

var adapterFactory = require('./adapter_factory.js');
module.exports = adapterFactory({window: global.window});

}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
},{"./adapter_factory.js":4}],4:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */

'use strict';

var utils = require('./utils');
// Shimming starts here.
module.exports = function(dependencies, opts) {
  var window = dependencies && dependencies.window;

  var options = {
    shimChrome: true,
    shimFirefox: true,
    shimEdge: true,
    shimSafari: true,
  };

  for (var key in opts) {
    if (hasOwnProperty.call(opts, key)) {
      options[key] = opts[key];
    }
  }

  // Utils.
  var logging = utils.log;
  var browserDetails = utils.detectBrowser(window);

  // Export to the adapter global object visible in the browser.
  var adapter = {
    browserDetails: browserDetails,
    extractVersion: utils.extractVersion,
    disableLog: utils.disableLog,
    disableWarnings: utils.disableWarnings
  };

  // Uncomment the line below if you want logging to occur, including logging
  // for the switch statement below. Can also be turned on in the browser via
  // adapter.disableLog(false), but then logging from the switch statement below
  // will not appear.
  // require('./utils').disableLog(false);

  // Browser shims.
  var chromeShim = require('./chrome/chrome_shim') || null;
  var edgeShim = require('./edge/edge_shim') || null;
  var firefoxShim = require('./firefox/firefox_shim') || null;
  var safariShim = require('./safari/safari_shim') || null;
  var commonShim = require('./common_shim') || null;

  // Shim browser if found.
  switch (browserDetails.browser) {
    case 'chrome':
      if (!chromeShim || !chromeShim.shimPeerConnection ||
          !options.shimChrome) {
        logging('Chrome shim is not included in this adapter release.');
        return adapter;
      }
      logging('adapter.js shimming chrome.');
      // Export to the adapter global object visible in the browser.
      adapter.browserShim = chromeShim;
      commonShim.shimCreateObjectURL(window);

      chromeShim.shimGetUserMedia(window);
      chromeShim.shimMediaStream(window);
      chromeShim.shimSourceObject(window);
      chromeShim.shimPeerConnection(window);
      chromeShim.shimOnTrack(window);
      chromeShim.shimAddTrackRemoveTrack(window);
      chromeShim.shimGetSendersWithDtmf(window);

      commonShim.shimRTCIceCandidate(window);
      break;
    case 'firefox':
      if (!firefoxShim || !firefoxShim.shimPeerConnection ||
          !options.shimFirefox) {
        logging('Firefox shim is not included in this adapter release.');
        return adapter;
      }
      logging('adapter.js shimming firefox.');
      // Export to the adapter global object visible in the browser.
      adapter.browserShim = firefoxShim;
      commonShim.shimCreateObjectURL(window);

      firefoxShim.shimGetUserMedia(window);
      firefoxShim.shimSourceObject(window);
      firefoxShim.shimPeerConnection(window);
      firefoxShim.shimOnTrack(window);
      firefoxShim.shimRemoveStream(window);

      commonShim.shimRTCIceCandidate(window);
      break;
    case 'edge':
      if (!edgeShim || !edgeShim.shimPeerConnection || !options.shimEdge) {
        logging('MS edge shim is not included in this adapter release.');
        return adapter;
      }
      logging('adapter.js shimming edge.');
      // Export to the adapter global object visible in the browser.
      adapter.browserShim = edgeShim;
      commonShim.shimCreateObjectURL(window);

      edgeShim.shimGetUserMedia(window);
      edgeShim.shimPeerConnection(window);
      edgeShim.shimReplaceTrack(window);

      // the edge shim implements the full RTCIceCandidate object.
      break;
    case 'safari':
      if (!safariShim || !options.shimSafari) {
        logging('Safari shim is not included in this adapter release.');
        return adapter;
      }
      logging('adapter.js shimming safari.');
      // Export to the adapter global object visible in the browser.
      adapter.browserShim = safariShim;
      commonShim.shimCreateObjectURL(window);

      safariShim.shimRTCIceServerUrls(window);
      safariShim.shimCallbacksAPI(window);
      safariShim.shimLocalStreamsAPI(window);
      safariShim.shimRemoteStreamsAPI(window);
      safariShim.shimTrackEventTransceiver(window);
      safariShim.shimGetUserMedia(window);
      safariShim.shimCreateOfferLegacy(window);

      commonShim.shimRTCIceCandidate(window);
      break;
    default:
      logging('Unsupported browser!');
      break;
  }

  return adapter;
};

},{"./chrome/chrome_shim":5,"./common_shim":7,"./edge/edge_shim":8,"./firefox/firefox_shim":10,"./safari/safari_shim":12,"./utils":13}],5:[function(require,module,exports){

/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';
var utils = require('../utils.js');
var logging = utils.log;

var chromeShim = {
  shimMediaStream: function(window) {
    window.MediaStream = window.MediaStream || window.webkitMediaStream;
  },

  shimOnTrack: function(window) {
    if (typeof window === 'object' && window.RTCPeerConnection && !('ontrack' in
        window.RTCPeerConnection.prototype)) {
      Object.defineProperty(window.RTCPeerConnection.prototype, 'ontrack', {
        get: function() {
          return this._ontrack;
        },
        set: function(f) {
          if (this._ontrack) {
            this.removeEventListener('track', this._ontrack);
          }
          this.addEventListener('track', this._ontrack = f);
        }
      });
      var origSetRemoteDescription =
          window.RTCPeerConnection.prototype.setRemoteDescription;
      window.RTCPeerConnection.prototype.setRemoteDescription = function() {
        var pc = this;
        if (!pc._ontrackpoly) {
          pc._ontrackpoly = function(e) {
            // onaddstream does not fire when a track is added to an existing
            // stream. But stream.onaddtrack is implemented so we use that.
            e.stream.addEventListener('addtrack', function(te) {
              var receiver;
              if (window.RTCPeerConnection.prototype.getReceivers) {
                receiver = pc.getReceivers().find(function(r) {
                  return r.track && r.track.id === te.track.id;
                });
              } else {
                receiver = {track: te.track};
              }

              var event = new Event('track');
              event.track = te.track;
              event.receiver = receiver;
              event.transceiver = {receiver: receiver};
              event.streams = [e.stream];
              pc.dispatchEvent(event);
            });
            e.stream.getTracks().forEach(function(track) {
              var receiver;
              if (window.RTCPeerConnection.prototype.getReceivers) {
                receiver = pc.getReceivers().find(function(r) {
                  return r.track && r.track.id === track.id;
                });
              } else {
                receiver = {track: track};
              }
              var event = new Event('track');
              event.track = track;
              event.receiver = receiver;
              event.transceiver = {receiver: receiver};
              event.streams = [e.stream];
              pc.dispatchEvent(event);
            });
          };
          pc.addEventListener('addstream', pc._ontrackpoly);
        }
        return origSetRemoteDescription.apply(pc, arguments);
      };
    }
  },

  shimGetSendersWithDtmf: function(window) {
    // Overrides addTrack/removeTrack, depends on shimAddTrackRemoveTrack.
    if (typeof window === 'object' && window.RTCPeerConnection &&
        !('getSenders' in window.RTCPeerConnection.prototype) &&
        'createDTMFSender' in window.RTCPeerConnection.prototype) {
      var shimSenderWithDtmf = function(pc, track) {
        return {
          track: track,
          get dtmf() {
            if (this._dtmf === undefined) {
              if (track.kind === 'audio') {
                this._dtmf = pc.createDTMFSender(track);
              } else {
                this._dtmf = null;
              }
            }
            return this._dtmf;
          },
          _pc: pc
        };
      };

      // augment addTrack when getSenders is not available.
      if (!window.RTCPeerConnection.prototype.getSenders) {
        window.RTCPeerConnection.prototype.getSenders = function() {
          this._senders = this._senders || [];
          return this._senders.slice(); // return a copy of the internal state.
        };
        var origAddTrack = window.RTCPeerConnection.prototype.addTrack;
        window.RTCPeerConnection.prototype.addTrack = function(track, stream) {
          var pc = this;
          var sender = origAddTrack.apply(pc, arguments);
          if (!sender) {
            sender = shimSenderWithDtmf(pc, track);
            pc._senders.push(sender);
          }
          return sender;
        };

        var origRemoveTrack = window.RTCPeerConnection.prototype.removeTrack;
        window.RTCPeerConnection.prototype.removeTrack = function(sender) {
          var pc = this;
          origRemoveTrack.apply(pc, arguments);
          var idx = pc._senders.indexOf(sender);
          if (idx !== -1) {
            pc._senders.splice(idx, 1);
          }
        };
      }
      var origAddStream = window.RTCPeerConnection.prototype.addStream;
      window.RTCPeerConnection.prototype.addStream = function(stream) {
        var pc = this;
        pc._senders = pc._senders || [];
        origAddStream.apply(pc, [stream]);
        stream.getTracks().forEach(function(track) {
          pc._senders.push(shimSenderWithDtmf(pc, track));
        });
      };

      var origRemoveStream = window.RTCPeerConnection.prototype.removeStream;
      window.RTCPeerConnection.prototype.removeStream = function(stream) {
        var pc = this;
        pc._senders = pc._senders || [];
        origRemoveStream.apply(pc, [stream]);

        stream.getTracks().forEach(function(track) {
          var sender = pc._senders.find(function(s) {
            return s.track === track;
          });
          if (sender) {
            pc._senders.splice(pc._senders.indexOf(sender), 1); // remove sender
          }
        });
      };
    } else if (typeof window === 'object' && window.RTCPeerConnection &&
               'getSenders' in window.RTCPeerConnection.prototype &&
               'createDTMFSender' in window.RTCPeerConnection.prototype &&
               window.RTCRtpSender &&
               !('dtmf' in window.RTCRtpSender.prototype)) {
      var origGetSenders = window.RTCPeerConnection.prototype.getSenders;
      window.RTCPeerConnection.prototype.getSenders = function() {
        var pc = this;
        var senders = origGetSenders.apply(pc, []);
        senders.forEach(function(sender) {
          sender._pc = pc;
        });
        return senders;
      };

      Object.defineProperty(window.RTCRtpSender.prototype, 'dtmf', {
        get: function() {
          if (this._dtmf === undefined) {
            if (this.track.kind === 'audio') {
              this._dtmf = this._pc.createDTMFSender(this.track);
            } else {
              this._dtmf = null;
            }
          }
          return this._dtmf;
        }
      });
    }
  },

  shimSourceObject: function(window) {
    var URL = window && window.URL;

    if (typeof window === 'object') {
      if (window.HTMLMediaElement &&
        !('srcObject' in window.HTMLMediaElement.prototype)) {
        // Shim the srcObject property, once, when HTMLMediaElement is found.
        Object.defineProperty(window.HTMLMediaElement.prototype, 'srcObject', {
          get: function() {
            return this._srcObject;
          },
          set: function(stream) {
            var self = this;
            // Use _srcObject as a private property for this shim
            this._srcObject = stream;
            if (this.src) {
              URL.revokeObjectURL(this.src);
            }

            if (!stream) {
              this.src = '';
              return undefined;
            }
            this.src = URL.createObjectURL(stream);
            // We need to recreate the blob url when a track is added or
            // removed. Doing it manually since we want to avoid a recursion.
            stream.addEventListener('addtrack', function() {
              if (self.src) {
                URL.revokeObjectURL(self.src);
              }
              self.src = URL.createObjectURL(stream);
            });
            stream.addEventListener('removetrack', function() {
              if (self.src) {
                URL.revokeObjectURL(self.src);
              }
              self.src = URL.createObjectURL(stream);
            });
          }
        });
      }
    }
  },

  shimAddTrackRemoveTrack: function(window) {
    var browserDetails = utils.detectBrowser(window);
    // shim addTrack and removeTrack.
    if (window.RTCPeerConnection.prototype.addTrack &&
        browserDetails.version >= 64) {
      return;
    }

    // also shim pc.getLocalStreams when addTrack is shimmed
    // to return the original streams.
    var origGetLocalStreams = window.RTCPeerConnection.prototype
        .getLocalStreams;
    window.RTCPeerConnection.prototype.getLocalStreams = function() {
      var self = this;
      var nativeStreams = origGetLocalStreams.apply(this);
      self._reverseStreams = self._reverseStreams || {};
      return nativeStreams.map(function(stream) {
        return self._reverseStreams[stream.id];
      });
    };

    var origAddStream = window.RTCPeerConnection.prototype.addStream;
    window.RTCPeerConnection.prototype.addStream = function(stream) {
      var pc = this;
      pc._streams = pc._streams || {};
      pc._reverseStreams = pc._reverseStreams || {};

      stream.getTracks().forEach(function(track) {
        var alreadyExists = pc.getSenders().find(function(s) {
          return s.track === track;
        });
        if (alreadyExists) {
          throw new DOMException('Track already exists.',
              'InvalidAccessError');
        }
      });
      // Add identity mapping for consistency with addTrack.
      // Unless this is being used with a stream from addTrack.
      if (!pc._reverseStreams[stream.id]) {
        var newStream = new window.MediaStream(stream.getTracks());
        pc._streams[stream.id] = newStream;
        pc._reverseStreams[newStream.id] = stream;
        stream = newStream;
      }
      origAddStream.apply(pc, [stream]);
    };

    var origRemoveStream = window.RTCPeerConnection.prototype.removeStream;
    window.RTCPeerConnection.prototype.removeStream = function(stream) {
      var pc = this;
      pc._streams = pc._streams || {};
      pc._reverseStreams = pc._reverseStreams || {};

      origRemoveStream.apply(pc, [(pc._streams[stream.id] || stream)]);
      delete pc._reverseStreams[(pc._streams[stream.id] ?
          pc._streams[stream.id].id : stream.id)];
      delete pc._streams[stream.id];
    };

    window.RTCPeerConnection.prototype.addTrack = function(track, stream) {
      var pc = this;
      if (pc.signalingState === 'closed') {
        throw new DOMException(
          'The RTCPeerConnection\'s signalingState is \'closed\'.',
          'InvalidStateError');
      }
      var streams = [].slice.call(arguments, 1);
      if (streams.length !== 1 ||
          !streams[0].getTracks().find(function(t) {
            return t === track;
          })) {
        // this is not fully correct but all we can manage without
        // [[associated MediaStreams]] internal slot.
        throw new DOMException(
          'The adapter.js addTrack polyfill only supports a single ' +
          ' stream which is associated with the specified track.',
          'NotSupportedError');
      }

      var alreadyExists = pc.getSenders().find(function(s) {
        return s.track === track;
      });
      if (alreadyExists) {
        throw new DOMException('Track already exists.',
            'InvalidAccessError');
      }

      pc._streams = pc._streams || {};
      pc._reverseStreams = pc._reverseStreams || {};
      var oldStream = pc._streams[stream.id];
      if (oldStream) {
        // this is using odd Chrome behaviour, use with caution:
        // https://bugs.chromium.org/p/webrtc/issues/detail?id=7815
        // Note: we rely on the high-level addTrack/dtmf shim to
        // create the sender with a dtmf sender.
        oldStream.addTrack(track);

        // Trigger ONN async.
        Promise.resolve().then(function() {
          pc.dispatchEvent(new Event('negotiationneeded'));
        });
      } else {
        var newStream = new window.MediaStream([track]);
        pc._streams[stream.id] = newStream;
        pc._reverseStreams[newStream.id] = stream;
        pc.addStream(newStream);
      }
      return pc.getSenders().find(function(s) {
        return s.track === track;
      });
    };

    // replace the internal stream id with the external one and
    // vice versa.
    function replaceInternalStreamId(pc, description) {
      var sdp = description.sdp;
      Object.keys(pc._reverseStreams || []).forEach(function(internalId) {
        var externalStream = pc._reverseStreams[internalId];
        var internalStream = pc._streams[externalStream.id];
        sdp = sdp.replace(new RegExp(internalStream.id, 'g'),
            externalStream.id);
      });
      return new RTCSessionDescription({
        type: description.type,
        sdp: sdp
      });
    }
    function replaceExternalStreamId(pc, description) {
      var sdp = description.sdp;
      Object.keys(pc._reverseStreams || []).forEach(function(internalId) {
        var externalStream = pc._reverseStreams[internalId];
        var internalStream = pc._streams[externalStream.id];
        sdp = sdp.replace(new RegExp(externalStream.id, 'g'),
            internalStream.id);
      });
      return new RTCSessionDescription({
        type: description.type,
        sdp: sdp
      });
    }
    ['createOffer', 'createAnswer'].forEach(function(method) {
      var nativeMethod = window.RTCPeerConnection.prototype[method];
      window.RTCPeerConnection.prototype[method] = function() {
        var pc = this;
        var args = arguments;
        var isLegacyCall = arguments.length &&
            typeof arguments[0] === 'function';
        if (isLegacyCall) {
          return nativeMethod.apply(pc, [
            function(description) {
              var desc = replaceInternalStreamId(pc, description);
              args[0].apply(null, [desc]);
            },
            function(err) {
              if (args[1]) {
                args[1].apply(null, err);
              }
            }, arguments[2]
          ]);
        }
        return nativeMethod.apply(pc, arguments)
        .then(function(description) {
          return replaceInternalStreamId(pc, description);
        });
      };
    });

    var origSetLocalDescription =
        window.RTCPeerConnection.prototype.setLocalDescription;
    window.RTCPeerConnection.prototype.setLocalDescription = function() {
      var pc = this;
      if (!arguments.length || !arguments[0].type) {
        return origSetLocalDescription.apply(pc, arguments);
      }
      arguments[0] = replaceExternalStreamId(pc, arguments[0]);
      return origSetLocalDescription.apply(pc, arguments);
    };

    // TODO: mangle getStats: https://w3c.github.io/webrtc-stats/#dom-rtcmediastreamstats-streamidentifier

    var origLocalDescription = Object.getOwnPropertyDescriptor(
        window.RTCPeerConnection.prototype, 'localDescription');
    Object.defineProperty(window.RTCPeerConnection.prototype,
        'localDescription', {
          get: function() {
            var pc = this;
            var description = origLocalDescription.get.apply(this);
            if (description.type === '') {
              return description;
            }
            return replaceInternalStreamId(pc, description);
          }
        });

    window.RTCPeerConnection.prototype.removeTrack = function(sender) {
      var pc = this;
      if (pc.signalingState === 'closed') {
        throw new DOMException(
          'The RTCPeerConnection\'s signalingState is \'closed\'.',
          'InvalidStateError');
      }
      // We can not yet check for sender instanceof RTCRtpSender
      // since we shim RTPSender. So we check if sender._pc is set.
      if (!sender._pc) {
        throw new DOMException('Argument 1 of RTCPeerConnection.removeTrack ' +
            'does not implement interface RTCRtpSender.', 'TypeError');
      }
      var isLocal = sender._pc === pc;
      if (!isLocal) {
        throw new DOMException('Sender was not created by this connection.',
            'InvalidAccessError');
      }

      // Search for the native stream the senders track belongs to.
      pc._streams = pc._streams || {};
      var stream;
      Object.keys(pc._streams).forEach(function(streamid) {
        var hasTrack = pc._streams[streamid].getTracks().find(function(track) {
          return sender.track === track;
        });
        if (hasTrack) {
          stream = pc._streams[streamid];
        }
      });

      if (stream) {
        if (stream.getTracks().length === 1) {
          // if this is the last track of the stream, remove the stream. This
          // takes care of any shimmed _senders.
          pc.removeStream(pc._reverseStreams[stream.id]);
        } else {
          // relying on the same odd chrome behaviour as above.
          stream.removeTrack(sender.track);
        }
        pc.dispatchEvent(new Event('negotiationneeded'));
      }
    };
  },

  shimPeerConnection: function(window) {
    var browserDetails = utils.detectBrowser(window);

    // The RTCPeerConnection object.
    if (!window.RTCPeerConnection) {
      window.RTCPeerConnection = function(pcConfig, pcConstraints) {
        // Translate iceTransportPolicy to iceTransports,
        // see https://code.google.com/p/webrtc/issues/detail?id=4869
        // this was fixed in M56 along with unprefixing RTCPeerConnection.
        logging('PeerConnection');
        if (pcConfig && pcConfig.iceTransportPolicy) {
          pcConfig.iceTransports = pcConfig.iceTransportPolicy;
        }

        return new window.webkitRTCPeerConnection(pcConfig, pcConstraints);
      };
      window.RTCPeerConnection.prototype =
          window.webkitRTCPeerConnection.prototype;
      // wrap static methods. Currently just generateCertificate.
      if (window.webkitRTCPeerConnection.generateCertificate) {
        Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', {
          get: function() {
            return window.webkitRTCPeerConnection.generateCertificate;
          }
        });
      }
    } else {
      // migrate from non-spec RTCIceServer.url to RTCIceServer.urls
      var OrigPeerConnection = window.RTCPeerConnection;
      window.RTCPeerConnection = function(pcConfig, pcConstraints) {
        if (pcConfig && pcConfig.iceServers) {
          var newIceServers = [];
          for (var i = 0; i < pcConfig.iceServers.length; i++) {
            var server = pcConfig.iceServers[i];
            if (!server.hasOwnProperty('urls') &&
                server.hasOwnProperty('url')) {
              utils.deprecated('RTCIceServer.url', 'RTCIceServer.urls');
              server = JSON.parse(JSON.stringify(server));
              server.urls = server.url;
              newIceServers.push(server);
            } else {
              newIceServers.push(pcConfig.iceServers[i]);
            }
          }
          pcConfig.iceServers = newIceServers;
        }
        return new OrigPeerConnection(pcConfig, pcConstraints);
      };
      window.RTCPeerConnection.prototype = OrigPeerConnection.prototype;
      // wrap static methods. Currently just generateCertificate.
      Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', {
        get: function() {
          return OrigPeerConnection.generateCertificate;
        }
      });
    }

    var origGetStats = window.RTCPeerConnection.prototype.getStats;
    window.RTCPeerConnection.prototype.getStats = function(selector,
        successCallback, errorCallback) {
      var self = this;
      var args = arguments;

      // If selector is a function then we are in the old style stats so just
      // pass back the original getStats format to avoid breaking old users.
      if (arguments.length > 0 && typeof selector === 'function') {
        return origGetStats.apply(this, arguments);
      }

      // When spec-style getStats is supported, return those when called with
      // either no arguments or the selector argument is null.
      if (origGetStats.length === 0 && (arguments.length === 0 ||
          typeof arguments[0] !== 'function')) {
        return origGetStats.apply(this, []);
      }

      var fixChromeStats_ = function(response) {
        var standardReport = {};
        var reports = response.result();
        reports.forEach(function(report) {
          var standardStats = {
            id: report.id,
            timestamp: report.timestamp,
            type: {
              localcandidate: 'local-candidate',
              remotecandidate: 'remote-candidate'
            }[report.type] || report.type
          };
          report.names().forEach(function(name) {
            standardStats[name] = report.stat(name);
          });
          standardReport[standardStats.id] = standardStats;
        });

        return standardReport;
      };

      // shim getStats with maplike support
      var makeMapStats = function(stats) {
        return new Map(Object.keys(stats).map(function(key) {
          return [key, stats[key]];
        }));
      };

      if (arguments.length >= 2) {
        var successCallbackWrapper_ = function(response) {
          args[1](makeMapStats(fixChromeStats_(response)));
        };

        return origGetStats.apply(this, [successCallbackWrapper_,
          arguments[0]]);
      }

      // promise-support
      return new Promise(function(resolve, reject) {
        origGetStats.apply(self, [
          function(response) {
            resolve(makeMapStats(fixChromeStats_(response)));
          }, reject]);
      }).then(successCallback, errorCallback);
    };

    // add promise support -- natively available in Chrome 51
    if (browserDetails.version < 51) {
      ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate']
          .forEach(function(method) {
            var nativeMethod = window.RTCPeerConnection.prototype[method];
            window.RTCPeerConnection.prototype[method] = function() {
              var args = arguments;
              var self = this;
              var promise = new Promise(function(resolve, reject) {
                nativeMethod.apply(self, [args[0], resolve, reject]);
              });
              if (args.length < 2) {
                return promise;
              }
              return promise.then(function() {
                args[1].apply(null, []);
              },
              function(err) {
                if (args.length >= 3) {
                  args[2].apply(null, [err]);
                }
              });
            };
          });
    }

    // promise support for createOffer and createAnswer. Available (without
    // bugs) since M52: crbug/619289
    if (browserDetails.version < 52) {
      ['createOffer', 'createAnswer'].forEach(function(method) {
        var nativeMethod = window.RTCPeerConnection.prototype[method];
        window.RTCPeerConnection.prototype[method] = function() {
          var self = this;
          if (arguments.length < 1 || (arguments.length === 1 &&
              typeof arguments[0] === 'object')) {
            var opts = arguments.length === 1 ? arguments[0] : undefined;
            return new Promise(function(resolve, reject) {
              nativeMethod.apply(self, [resolve, reject, opts]);
            });
          }
          return nativeMethod.apply(this, arguments);
        };
      });
    }

    // shim implicit creation of RTCSessionDescription/RTCIceCandidate
    ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate']
        .forEach(function(method) {
          var nativeMethod = window.RTCPeerConnection.prototype[method];
          window.RTCPeerConnection.prototype[method] = function() {
            arguments[0] = new ((method === 'addIceCandidate') ?
                window.RTCIceCandidate :
                window.RTCSessionDescription)(arguments[0]);
            return nativeMethod.apply(this, arguments);
          };
        });

    // support for addIceCandidate(null or undefined)
    var nativeAddIceCandidate =
        window.RTCPeerConnection.prototype.addIceCandidate;
    window.RTCPeerConnection.prototype.addIceCandidate = function() {
      if (!arguments[0]) {
        if (arguments[1]) {
          arguments[1].apply(null);
        }
        return Promise.resolve();
      }
      return nativeAddIceCandidate.apply(this, arguments);
    };
  }
};


// Expose public methods.
module.exports = {
  shimMediaStream: chromeShim.shimMediaStream,
  shimOnTrack: chromeShim.shimOnTrack,
  shimAddTrackRemoveTrack: chromeShim.shimAddTrackRemoveTrack,
  shimGetSendersWithDtmf: chromeShim.shimGetSendersWithDtmf,
  shimSourceObject: chromeShim.shimSourceObject,
  shimPeerConnection: chromeShim.shimPeerConnection,
  shimGetUserMedia: require('./getusermedia')
};

},{"../utils.js":13,"./getusermedia":6}],6:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';
var utils = require('../utils.js');
var logging = utils.log;

// Expose public methods.
module.exports = function(window) {
  var browserDetails = utils.detectBrowser(window);
  var navigator = window && window.navigator;

  var constraintsToChrome_ = function(c) {
    if (typeof c !== 'object' || c.mandatory || c.optional) {
      return c;
    }
    var cc = {};
    Object.keys(c).forEach(function(key) {
      if (key === 'require' || key === 'advanced' || key === 'mediaSource') {
        return;
      }
      var r = (typeof c[key] === 'object') ? c[key] : {ideal: c[key]};
      if (r.exact !== undefined && typeof r.exact === 'number') {
        r.min = r.max = r.exact;
      }
      var oldname_ = function(prefix, name) {
        if (prefix) {
          return prefix + name.charAt(0).toUpperCase() + name.slice(1);
        }
        return (name === 'deviceId') ? 'sourceId' : name;
      };
      if (r.ideal !== undefined) {
        cc.optional = cc.optional || [];
        var oc = {};
        if (typeof r.ideal === 'number') {
          oc[oldname_('min', key)] = r.ideal;
          cc.optional.push(oc);
          oc = {};
          oc[oldname_('max', key)] = r.ideal;
          cc.optional.push(oc);
        } else {
          oc[oldname_('', key)] = r.ideal;
          cc.optional.push(oc);
        }
      }
      if (r.exact !== undefined && typeof r.exact !== 'number') {
        cc.mandatory = cc.mandatory || {};
        cc.mandatory[oldname_('', key)] = r.exact;
      } else {
        ['min', 'max'].forEach(function(mix) {
          if (r[mix] !== undefined) {
            cc.mandatory = cc.mandatory || {};
            cc.mandatory[oldname_(mix, key)] = r[mix];
          }
        });
      }
    });
    if (c.advanced) {
      cc.optional = (cc.optional || []).concat(c.advanced);
    }
    return cc;
  };

  var shimConstraints_ = function(constraints, func) {
    if (browserDetails.version >= 61) {
      return func(constraints);
    }
    constraints = JSON.parse(JSON.stringify(constraints));
    if (constraints && typeof constraints.audio === 'object') {
      var remap = function(obj, a, b) {
        if (a in obj && !(b in obj)) {
          obj[b] = obj[a];
          delete obj[a];
        }
      };
      constraints = JSON.parse(JSON.stringify(constraints));
      remap(constraints.audio, 'autoGainControl', 'googAutoGainControl');
      remap(constraints.audio, 'noiseSuppression', 'googNoiseSuppression');
      constraints.audio = constraintsToChrome_(constraints.audio);
    }
    if (constraints && typeof constraints.video === 'object') {
      // Shim facingMode for mobile & surface pro.
      var face = constraints.video.facingMode;
      face = face && ((typeof face === 'object') ? face : {ideal: face});
      var getSupportedFacingModeLies = browserDetails.version < 66;

      if ((face && (face.exact === 'user' || face.exact === 'environment' ||
                    face.ideal === 'user' || face.ideal === 'environment')) &&
          !(navigator.mediaDevices.getSupportedConstraints &&
            navigator.mediaDevices.getSupportedConstraints().facingMode &&
            !getSupportedFacingModeLies)) {
        delete constraints.video.facingMode;
        var matches;
        if (face.exact === 'environment' || face.ideal === 'environment') {
          matches = ['back', 'rear'];
        } else if (face.exact === 'user' || face.ideal === 'user') {
          matches = ['front'];
        }
        if (matches) {
          // Look for matches in label, or use last cam for back (typical).
          return navigator.mediaDevices.enumerateDevices()
          .then(function(devices) {
            devices = devices.filter(function(d) {
              return d.kind === 'videoinput';
            });
            var dev = devices.find(function(d) {
              return matches.some(function(match) {
                return d.label.toLowerCase().indexOf(match) !== -1;
              });
            });
            if (!dev && devices.length && matches.indexOf('back') !== -1) {
              dev = devices[devices.length - 1]; // more likely the back cam
            }
            if (dev) {
              constraints.video.deviceId = face.exact ? {exact: dev.deviceId} :
                                                        {ideal: dev.deviceId};
            }
            constraints.video = constraintsToChrome_(constraints.video);
            logging('chrome: ' + JSON.stringify(constraints));
            return func(constraints);
          });
        }
      }
      constraints.video = constraintsToChrome_(constraints.video);
    }
    logging('chrome: ' + JSON.stringify(constraints));
    return func(constraints);
  };

  var shimError_ = function(e) {
    return {
      name: {
        PermissionDeniedError: 'NotAllowedError',
        InvalidStateError: 'NotReadableError',
        DevicesNotFoundError: 'NotFoundError',
        ConstraintNotSatisfiedError: 'OverconstrainedError',
        TrackStartError: 'NotReadableError',
        MediaDeviceFailedDueToShutdown: 'NotReadableError',
        MediaDeviceKillSwitchOn: 'NotReadableError'
      }[e.name] || e.name,
      message: e.message,
      constraint: e.constraintName,
      toString: function() {
        return this.name + (this.message && ': ') + this.message;
      }
    };
  };

  var getUserMedia_ = function(constraints, onSuccess, onError) {
    shimConstraints_(constraints, function(c) {
      navigator.webkitGetUserMedia(c, onSuccess, function(e) {
        if (onError) {
          onError(shimError_(e));
        }
      });
    });
  };

  navigator.getUserMedia = getUserMedia_;

  // Returns the result of getUserMedia as a Promise.
  var getUserMediaPromise_ = function(constraints) {
    return new Promise(function(resolve, reject) {
      navigator.getUserMedia(constraints, resolve, reject);
    });
  };

  if (!navigator.mediaDevices) {
    navigator.mediaDevices = {
      getUserMedia: getUserMediaPromise_,
      enumerateDevices: function() {
        return new Promise(function(resolve) {
          var kinds = {audio: 'audioinput', video: 'videoinput'};
          return window.MediaStreamTrack.getSources(function(devices) {
            resolve(devices.map(function(device) {
              return {label: device.label,
                kind: kinds[device.kind],
                deviceId: device.id,
                groupId: ''};
            }));
          });
        });
      },
      getSupportedConstraints: function() {
        return {
          deviceId: true, echoCancellation: true, facingMode: true,
          frameRate: true, height: true, width: true
        };
      }
    };
  }

  // A shim for getUserMedia method on the mediaDevices object.
  // TODO(KaptenJansson) remove once implemented in Chrome stable.
  if (!navigator.mediaDevices.getUserMedia) {
    navigator.mediaDevices.getUserMedia = function(constraints) {
      return getUserMediaPromise_(constraints);
    };
  } else {
    // Even though Chrome 45 has navigator.mediaDevices and a getUserMedia
    // function which returns a Promise, it does not accept spec-style
    // constraints.
    var origGetUserMedia = navigator.mediaDevices.getUserMedia.
        bind(navigator.mediaDevices);
    navigator.mediaDevices.getUserMedia = function(cs) {
      return shimConstraints_(cs, function(c) {
        return origGetUserMedia(c).then(function(stream) {
          if (c.audio && !stream.getAudioTracks().length ||
              c.video && !stream.getVideoTracks().length) {
            stream.getTracks().forEach(function(track) {
              track.stop();
            });
            throw new DOMException('', 'NotFoundError');
          }
          return stream;
        }, function(e) {
          return Promise.reject(shimError_(e));
        });
      });
    };
  }

  // Dummy devicechange event methods.
  // TODO(KaptenJansson) remove once implemented in Chrome stable.
  if (typeof navigator.mediaDevices.addEventListener === 'undefined') {
    navigator.mediaDevices.addEventListener = function() {
      logging('Dummy mediaDevices.addEventListener called.');
    };
  }
  if (typeof navigator.mediaDevices.removeEventListener === 'undefined') {
    navigator.mediaDevices.removeEventListener = function() {
      logging('Dummy mediaDevices.removeEventListener called.');
    };
  }
};

},{"../utils.js":13}],7:[function(require,module,exports){
/*
 *  Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';

var SDPUtils = require('sdp');
var utils = require('./utils');

// Wraps the peerconnection event eventNameToWrap in a function
// which returns the modified event object.
function wrapPeerConnectionEvent(window, eventNameToWrap, wrapper) {
  if (!window.RTCPeerConnection) {
    return;
  }
  var proto = window.RTCPeerConnection.prototype;
  var nativeAddEventListener = proto.addEventListener;
  proto.addEventListener = function(nativeEventName, cb) {
    if (nativeEventName !== eventNameToWrap) {
      return nativeAddEventListener.apply(this, arguments);
    }
    var wrappedCallback = function(e) {
      cb(wrapper(e));
    };
    this._eventMap = this._eventMap || {};
    this._eventMap[cb] = wrappedCallback;
    return nativeAddEventListener.apply(this, [nativeEventName,
      wrappedCallback]);
  };

  var nativeRemoveEventListener = proto.removeEventListener;
  proto.removeEventListener = function(nativeEventName, cb) {
    if (nativeEventName !== eventNameToWrap || !this._eventMap
        || !this._eventMap[cb]) {
      return nativeRemoveEventListener.apply(this, arguments);
    }
    var unwrappedCb = this._eventMap[cb];
    delete this._eventMap[cb];
    return nativeRemoveEventListener.apply(this, [nativeEventName,
      unwrappedCb]);
  };

  Object.defineProperty(proto, 'on' + eventNameToWrap, {
    get: function() {
      return this['_on' + eventNameToWrap];
    },
    set: function(cb) {
      if (this['_on' + eventNameToWrap]) {
        this.removeEventListener(eventNameToWrap,
            this['_on' + eventNameToWrap]);
        delete this['_on' + eventNameToWrap];
      }
      if (cb) {
        this.addEventListener(eventNameToWrap,
            this['_on' + eventNameToWrap] = cb);
      }
    }
  });
}

module.exports = {
  shimRTCIceCandidate: function(window) {
    // foundation is arbitrarily chosen as an indicator for full support for
    // https://w3c.github.io/webrtc-pc/#rtcicecandidate-interface
    if (window.RTCIceCandidate && 'foundation' in
        window.RTCIceCandidate.prototype) {
      return;
    }

    var NativeRTCIceCandidate = window.RTCIceCandidate;
    window.RTCIceCandidate = function(args) {
      // Remove the a= which shouldn't be part of the candidate string.
      if (typeof args === 'object' && args.candidate &&
          args.candidate.indexOf('a=') === 0) {
        args = JSON.parse(JSON.stringify(args));
        args.candidate = args.candidate.substr(2);
      }

      // Augment the native candidate with the parsed fields.
      var nativeCandidate = new NativeRTCIceCandidate(args);
      var parsedCandidate = SDPUtils.parseCandidate(args.candidate);
      var augmentedCandidate = Object.assign(nativeCandidate,
          parsedCandidate);

      // Add a serializer that does not serialize the extra attributes.
      augmentedCandidate.toJSON = function() {
        return {
          candidate: augmentedCandidate.candidate,
          sdpMid: augmentedCandidate.sdpMid,
          sdpMLineIndex: augmentedCandidate.sdpMLineIndex,
          usernameFragment: augmentedCandidate.usernameFragment,
        };
      };
      return augmentedCandidate;
    };

    // Hook up the augmented candidate in onicecandidate and
    // addEventListener('icecandidate', ...)
    wrapPeerConnectionEvent(window, 'icecandidate', function(e) {
      if (e.candidate) {
        Object.defineProperty(e, 'candidate', {
          value: new window.RTCIceCandidate(e.candidate),
          writable: 'false'
        });
      }
      return e;
    });
  },

  // shimCreateObjectURL must be called before shimSourceObject to avoid loop.

  shimCreateObjectURL: function(window) {
    var URL = window && window.URL;

    if (!(typeof window === 'object' && window.HTMLMediaElement &&
          'srcObject' in window.HTMLMediaElement.prototype &&
        URL.createObjectURL && URL.revokeObjectURL)) {
      // Only shim CreateObjectURL using srcObject if srcObject exists.
      return undefined;
    }

    var nativeCreateObjectURL = URL.createObjectURL.bind(URL);
    var nativeRevokeObjectURL = URL.revokeObjectURL.bind(URL);
    var streams = new Map(), newId = 0;

    URL.createObjectURL = function(stream) {
      if ('getTracks' in stream) {
        var url = 'polyblob:' + (++newId);
        streams.set(url, stream);
        utils.deprecated('URL.createObjectURL(stream)',
            'elem.srcObject = stream');
        return url;
      }
      return nativeCreateObjectURL(stream);
    };
    URL.revokeObjectURL = function(url) {
      nativeRevokeObjectURL(url);
      streams.delete(url);
    };

    var dsc = Object.getOwnPropertyDescriptor(window.HTMLMediaElement.prototype,
                                              'src');
    Object.defineProperty(window.HTMLMediaElement.prototype, 'src', {
      get: function() {
        return dsc.get.apply(this);
      },
      set: function(url) {
        this.srcObject = streams.get(url) || null;
        return dsc.set.apply(this, [url]);
      }
    });

    var nativeSetAttribute = window.HTMLMediaElement.prototype.setAttribute;
    window.HTMLMediaElement.prototype.setAttribute = function() {
      if (arguments.length === 2 &&
          ('' + arguments[0]).toLowerCase() === 'src') {
        this.srcObject = streams.get(arguments[1]) || null;
      }
      return nativeSetAttribute.apply(this, arguments);
    };
  }
};

},{"./utils":13,"sdp":2}],8:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';

var utils = require('../utils');
var shimRTCPeerConnection = require('rtcpeerconnection-shim');

module.exports = {
  shimGetUserMedia: require('./getusermedia'),
  shimPeerConnection: function(window) {
    var browserDetails = utils.detectBrowser(window);

    if (window.RTCIceGatherer) {
      // ORTC defines an RTCIceCandidate object but no constructor.
      // Not implemented in Edge.
      if (!window.RTCIceCandidate) {
        window.RTCIceCandidate = function(args) {
          return args;
        };
      }
      // ORTC does not have a session description object but
      // other browsers (i.e. Chrome) that will support both PC and ORTC
      // in the future might have this defined already.
      if (!window.RTCSessionDescription) {
        window.RTCSessionDescription = function(args) {
          return args;
        };
      }
      // this adds an additional event listener to MediaStrackTrack that signals
      // when a tracks enabled property was changed. Workaround for a bug in
      // addStream, see below. No longer required in 15025+
      if (browserDetails.version < 15025) {
        var origMSTEnabled = Object.getOwnPropertyDescriptor(
            window.MediaStreamTrack.prototype, 'enabled');
        Object.defineProperty(window.MediaStreamTrack.prototype, 'enabled', {
          set: function(value) {
            origMSTEnabled.set.call(this, value);
            var ev = new Event('enabled');
            ev.enabled = value;
            this.dispatchEvent(ev);
          }
        });
      }
    }

    // ORTC defines the DTMF sender a bit different.
    // https://github.com/w3c/ortc/issues/714
    if (window.RTCRtpSender && !('dtmf' in window.RTCRtpSender.prototype)) {
      Object.defineProperty(window.RTCRtpSender.prototype, 'dtmf', {
        get: function() {
          if (this._dtmf === undefined) {
            if (this.track.kind === 'audio') {
              this._dtmf = new window.RTCDtmfSender(this);
            } else if (this.track.kind === 'video') {
              this._dtmf = null;
            }
          }
          return this._dtmf;
        }
      });
    }

    window.RTCPeerConnection =
        shimRTCPeerConnection(window, browserDetails.version);
  },
  shimReplaceTrack: function(window) {
    // ORTC has replaceTrack -- https://github.com/w3c/ortc/issues/614
    if (window.RTCRtpSender &&
        !('replaceTrack' in window.RTCRtpSender.prototype)) {
      window.RTCRtpSender.prototype.replaceTrack =
          window.RTCRtpSender.prototype.setTrack;
    }
  }
};

},{"../utils":13,"./getusermedia":9,"rtcpeerconnection-shim":1}],9:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';

// Expose public methods.
module.exports = function(window) {
  var navigator = window && window.navigator;

  var shimError_ = function(e) {
    return {
      name: {PermissionDeniedError: 'NotAllowedError'}[e.name] || e.name,
      message: e.message,
      constraint: e.constraint,
      toString: function() {
        return this.name;
      }
    };
  };

  // getUserMedia error shim.
  var origGetUserMedia = navigator.mediaDevices.getUserMedia.
      bind(navigator.mediaDevices);
  navigator.mediaDevices.getUserMedia = function(c) {
    return origGetUserMedia(c).catch(function(e) {
      return Promise.reject(shimError_(e));
    });
  };
};

},{}],10:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';

var utils = require('../utils');

var firefoxShim = {
  shimOnTrack: function(window) {
    if (typeof window === 'object' && window.RTCPeerConnection && !('ontrack' in
        window.RTCPeerConnection.prototype)) {
      Object.defineProperty(window.RTCPeerConnection.prototype, 'ontrack', {
        get: function() {
          return this._ontrack;
        },
        set: function(f) {
          if (this._ontrack) {
            this.removeEventListener('track', this._ontrack);
            this.removeEventListener('addstream', this._ontrackpoly);
          }
          this.addEventListener('track', this._ontrack = f);
          this.addEventListener('addstream', this._ontrackpoly = function(e) {
            e.stream.getTracks().forEach(function(track) {
              var event = new Event('track');
              event.track = track;
              event.receiver = {track: track};
              event.transceiver = {receiver: event.receiver};
              event.streams = [e.stream];
              this.dispatchEvent(event);
            }.bind(this));
          }.bind(this));
        }
      });
    }
    if (typeof window === 'object' && window.RTCTrackEvent &&
        ('receiver' in window.RTCTrackEvent.prototype) &&
        !('transceiver' in window.RTCTrackEvent.prototype)) {
      Object.defineProperty(window.RTCTrackEvent.prototype, 'transceiver', {
        get: function() {
          return {receiver: this.receiver};
        }
      });
    }
  },

  shimSourceObject: function(window) {
    // Firefox has supported mozSrcObject since FF22, unprefixed in 42.
    if (typeof window === 'object') {
      if (window.HTMLMediaElement &&
        !('srcObject' in window.HTMLMediaElement.prototype)) {
        // Shim the srcObject property, once, when HTMLMediaElement is found.
        Object.defineProperty(window.HTMLMediaElement.prototype, 'srcObject', {
          get: function() {
            return this.mozSrcObject;
          },
          set: function(stream) {
            this.mozSrcObject = stream;
          }
        });
      }
    }
  },

  shimPeerConnection: function(window) {
    var browserDetails = utils.detectBrowser(window);

    if (typeof window !== 'object' || !(window.RTCPeerConnection ||
        window.mozRTCPeerConnection)) {
      return; // probably media.peerconnection.enabled=false in about:config
    }
    // The RTCPeerConnection object.
    if (!window.RTCPeerConnection) {
      window.RTCPeerConnection = function(pcConfig, pcConstraints) {
        if (browserDetails.version < 38) {
          // .urls is not supported in FF < 38.
          // create RTCIceServers with a single url.
          if (pcConfig && pcConfig.iceServers) {
            var newIceServers = [];
            for (var i = 0; i < pcConfig.iceServers.length; i++) {
              var server = pcConfig.iceServers[i];
              if (server.hasOwnProperty('urls')) {
                for (var j = 0; j < server.urls.length; j++) {
                  var newServer = {
                    url: server.urls[j]
                  };
                  if (server.urls[j].indexOf('turn') === 0) {
                    newServer.username = server.username;
                    newServer.credential = server.credential;
                  }
                  newIceServers.push(newServer);
                }
              } else {
                newIceServers.push(pcConfig.iceServers[i]);
              }
            }
            pcConfig.iceServers = newIceServers;
          }
        }
        return new window.mozRTCPeerConnection(pcConfig, pcConstraints);
      };
      window.RTCPeerConnection.prototype =
          window.mozRTCPeerConnection.prototype;

      // wrap static methods. Currently just generateCertificate.
      if (window.mozRTCPeerConnection.generateCertificate) {
        Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', {
          get: function() {
            return window.mozRTCPeerConnection.generateCertificate;
          }
        });
      }

      window.RTCSessionDescription = window.mozRTCSessionDescription;
      window.RTCIceCandidate = window.mozRTCIceCandidate;
    }

    // shim away need for obsolete RTCIceCandidate/RTCSessionDescription.
    ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate']
        .forEach(function(method) {
          var nativeMethod = window.RTCPeerConnection.prototype[method];
          window.RTCPeerConnection.prototype[method] = function() {
            arguments[0] = new ((method === 'addIceCandidate') ?
                window.RTCIceCandidate :
                window.RTCSessionDescription)(arguments[0]);
            return nativeMethod.apply(this, arguments);
          };
        });

    // support for addIceCandidate(null or undefined)
    var nativeAddIceCandidate =
        window.RTCPeerConnection.prototype.addIceCandidate;
    window.RTCPeerConnection.prototype.addIceCandidate = function() {
      if (!arguments[0]) {
        if (arguments[1]) {
          arguments[1].apply(null);
        }
        return Promise.resolve();
      }
      return nativeAddIceCandidate.apply(this, arguments);
    };

    // shim getStats with maplike support
    var makeMapStats = function(stats) {
      var map = new Map();
      Object.keys(stats).forEach(function(key) {
        map.set(key, stats[key]);
        map[key] = stats[key];
      });
      return map;
    };

    var modernStatsTypes = {
      inboundrtp: 'inbound-rtp',
      outboundrtp: 'outbound-rtp',
      candidatepair: 'candidate-pair',
      localcandidate: 'local-candidate',
      remotecandidate: 'remote-candidate'
    };

    var nativeGetStats = window.RTCPeerConnection.prototype.getStats;
    window.RTCPeerConnection.prototype.getStats = function(
      selector,
      onSucc,
      onErr
    ) {
      return nativeGetStats.apply(this, [selector || null])
        .then(function(stats) {
          if (browserDetails.version < 48) {
            stats = makeMapStats(stats);
          }
          if (browserDetails.version < 53 && !onSucc) {
            // Shim only promise getStats with spec-hyphens in type names
            // Leave callback version alone; misc old uses of forEach before Map
            try {
              stats.forEach(function(stat) {
                stat.type = modernStatsTypes[stat.type] || stat.type;
              });
            } catch (e) {
              if (e.name !== 'TypeError') {
                throw e;
              }
              // Avoid TypeError: "type" is read-only, in old versions. 34-43ish
              stats.forEach(function(stat, i) {
                stats.set(i, Object.assign({}, stat, {
                  type: modernStatsTypes[stat.type] || stat.type
                }));
              });
            }
          }
          return stats;
        })
        .then(onSucc, onErr);
    };
  },

  shimRemoveStream: function(window) {
    if (!window.RTCPeerConnection ||
        'removeStream' in window.RTCPeerConnection.prototype) {
      return;
    }
    window.RTCPeerConnection.prototype.removeStream = function(stream) {
      var pc = this;
      utils.deprecated('removeStream', 'removeTrack');
      this.getSenders().forEach(function(sender) {
        if (sender.track && stream.getTracks().indexOf(sender.track) !== -1) {
          pc.removeTrack(sender);
        }
      });
    };
  }
};

// Expose public methods.
module.exports = {
  shimOnTrack: firefoxShim.shimOnTrack,
  shimSourceObject: firefoxShim.shimSourceObject,
  shimPeerConnection: firefoxShim.shimPeerConnection,
  shimRemoveStream: firefoxShim.shimRemoveStream,
  shimGetUserMedia: require('./getusermedia')
};

},{"../utils":13,"./getusermedia":11}],11:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';

var utils = require('../utils');
var logging = utils.log;

// Expose public methods.
module.exports = function(window) {
  var browserDetails = utils.detectBrowser(window);
  var navigator = window && window.navigator;
  var MediaStreamTrack = window && window.MediaStreamTrack;

  var shimError_ = function(e) {
    return {
      name: {
        InternalError: 'NotReadableError',
        NotSupportedError: 'TypeError',
        PermissionDeniedError: 'NotAllowedError',
        SecurityError: 'NotAllowedError'
      }[e.name] || e.name,
      message: {
        'The operation is insecure.': 'The request is not allowed by the ' +
        'user agent or the platform in the current context.'
      }[e.message] || e.message,
      constraint: e.constraint,
      toString: function() {
        return this.name + (this.message && ': ') + this.message;
      }
    };
  };

  // getUserMedia constraints shim.
  var getUserMedia_ = function(constraints, onSuccess, onError) {
    var constraintsToFF37_ = function(c) {
      if (typeof c !== 'object' || c.require) {
        return c;
      }
      var require = [];
      Object.keys(c).forEach(function(key) {
        if (key === 'require' || key === 'advanced' || key === 'mediaSource') {
          return;
        }
        var r = c[key] = (typeof c[key] === 'object') ?
            c[key] : {ideal: c[key]};
        if (r.min !== undefined ||
            r.max !== undefined || r.exact !== undefined) {
          require.push(key);
        }
        if (r.exact !== undefined) {
          if (typeof r.exact === 'number') {
            r. min = r.max = r.exact;
          } else {
            c[key] = r.exact;
          }
          delete r.exact;
        }
        if (r.ideal !== undefined) {
          c.advanced = c.advanced || [];
          var oc = {};
          if (typeof r.ideal === 'number') {
            oc[key] = {min: r.ideal, max: r.ideal};
          } else {
            oc[key] = r.ideal;
          }
          c.advanced.push(oc);
          delete r.ideal;
          if (!Object.keys(r).length) {
            delete c[key];
          }
        }
      });
      if (require.length) {
        c.require = require;
      }
      return c;
    };
    constraints = JSON.parse(JSON.stringify(constraints));
    if (browserDetails.version < 38) {
      logging('spec: ' + JSON.stringify(constraints));
      if (constraints.audio) {
        constraints.audio = constraintsToFF37_(constraints.audio);
      }
      if (constraints.video) {
        constraints.video = constraintsToFF37_(constraints.video);
      }
      logging('ff37: ' + JSON.stringify(constraints));
    }
    return navigator.mozGetUserMedia(constraints, onSuccess, function(e) {
      onError(shimError_(e));
    });
  };

  // Returns the result of getUserMedia as a Promise.
  var getUserMediaPromise_ = function(constraints) {
    return new Promise(function(resolve, reject) {
      getUserMedia_(constraints, resolve, reject);
    });
  };

  // Shim for mediaDevices on older versions.
  if (!navigator.mediaDevices) {
    navigator.mediaDevices = {getUserMedia: getUserMediaPromise_,
      addEventListener: function() { },
      removeEventListener: function() { }
    };
  }
  navigator.mediaDevices.enumerateDevices =
      navigator.mediaDevices.enumerateDevices || function() {
        return new Promise(function(resolve) {
          var infos = [
            {kind: 'audioinput', deviceId: 'default', label: '', groupId: ''},
            {kind: 'videoinput', deviceId: 'default', label: '', groupId: ''}
          ];
          resolve(infos);
        });
      };

  if (browserDetails.version < 41) {
    // Work around http://bugzil.la/1169665
    var orgEnumerateDevices =
        navigator.mediaDevices.enumerateDevices.bind(navigator.mediaDevices);
    navigator.mediaDevices.enumerateDevices = function() {
      return orgEnumerateDevices().then(undefined, function(e) {
        if (e.name === 'NotFoundError') {
          return [];
        }
        throw e;
      });
    };
  }
  if (browserDetails.version < 49) {
    var origGetUserMedia = navigator.mediaDevices.getUserMedia.
        bind(navigator.mediaDevices);
    navigator.mediaDevices.getUserMedia = function(c) {
      return origGetUserMedia(c).then(function(stream) {
        // Work around https://bugzil.la/802326
        if (c.audio && !stream.getAudioTracks().length ||
            c.video && !stream.getVideoTracks().length) {
          stream.getTracks().forEach(function(track) {
            track.stop();
          });
          throw new DOMException('The object can not be found here.',
                                 'NotFoundError');
        }
        return stream;
      }, function(e) {
        return Promise.reject(shimError_(e));
      });
    };
  }
  if (!(browserDetails.version > 55 &&
      'autoGainControl' in navigator.mediaDevices.getSupportedConstraints())) {
    var remap = function(obj, a, b) {
      if (a in obj && !(b in obj)) {
        obj[b] = obj[a];
        delete obj[a];
      }
    };

    var nativeGetUserMedia = navigator.mediaDevices.getUserMedia.
        bind(navigator.mediaDevices);
    navigator.mediaDevices.getUserMedia = function(c) {
      if (typeof c === 'object' && typeof c.audio === 'object') {
        c = JSON.parse(JSON.stringify(c));
        remap(c.audio, 'autoGainControl', 'mozAutoGainControl');
        remap(c.audio, 'noiseSuppression', 'mozNoiseSuppression');
      }
      return nativeGetUserMedia(c);
    };

    if (MediaStreamTrack && MediaStreamTrack.prototype.getSettings) {
      var nativeGetSettings = MediaStreamTrack.prototype.getSettings;
      MediaStreamTrack.prototype.getSettings = function() {
        var obj = nativeGetSettings.apply(this, arguments);
        remap(obj, 'mozAutoGainControl', 'autoGainControl');
        remap(obj, 'mozNoiseSuppression', 'noiseSuppression');
        return obj;
      };
    }

    if (MediaStreamTrack && MediaStreamTrack.prototype.applyConstraints) {
      var nativeApplyConstraints = MediaStreamTrack.prototype.applyConstraints;
      MediaStreamTrack.prototype.applyConstraints = function(c) {
        if (this.kind === 'audio' && typeof c === 'object') {
          c = JSON.parse(JSON.stringify(c));
          remap(c, 'autoGainControl', 'mozAutoGainControl');
          remap(c, 'noiseSuppression', 'mozNoiseSuppression');
        }
        return nativeApplyConstraints.apply(this, [c]);
      };
    }
  }
  navigator.getUserMedia = function(constraints, onSuccess, onError) {
    if (browserDetails.version < 44) {
      return getUserMedia_(constraints, onSuccess, onError);
    }
    // Replace Firefox 44+'s deprecation warning with unprefixed version.
    utils.deprecated('navigator.getUserMedia',
        'navigator.mediaDevices.getUserMedia');
    navigator.mediaDevices.getUserMedia(constraints).then(onSuccess, onError);
  };
};

},{"../utils":13}],12:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
'use strict';
var utils = require('../utils');

var safariShim = {
  // TODO: DrAlex, should be here, double check against LayoutTests

  // TODO: once the back-end for the mac port is done, add.
  // TODO: check for webkitGTK+
  // shimPeerConnection: function() { },

  shimLocalStreamsAPI: function(window) {
    if (typeof window !== 'object' || !window.RTCPeerConnection) {
      return;
    }
    if (!('getLocalStreams' in window.RTCPeerConnection.prototype)) {
      window.RTCPeerConnection.prototype.getLocalStreams = function() {
        if (!this._localStreams) {
          this._localStreams = [];
        }
        return this._localStreams;
      };
    }
    if (!('getStreamById' in window.RTCPeerConnection.prototype)) {
      window.RTCPeerConnection.prototype.getStreamById = function(id) {
        var result = null;
        if (this._localStreams) {
          this._localStreams.forEach(function(stream) {
            if (stream.id === id) {
              result = stream;
            }
          });
        }
        if (this._remoteStreams) {
          this._remoteStreams.forEach(function(stream) {
            if (stream.id === id) {
              result = stream;
            }
          });
        }
        return result;
      };
    }
    if (!('addStream' in window.RTCPeerConnection.prototype)) {
      var _addTrack = window.RTCPeerConnection.prototype.addTrack;
      window.RTCPeerConnection.prototype.addStream = function(stream) {
        if (!this._localStreams) {
          this._localStreams = [];
        }
        if (this._localStreams.indexOf(stream) === -1) {
          this._localStreams.push(stream);
        }
        var self = this;
        stream.getTracks().forEach(function(track) {
          _addTrack.call(self, track, stream);
        });
      };

      window.RTCPeerConnection.prototype.addTrack = function(track, stream) {
        if (stream) {
          if (!this._localStreams) {
            this._localStreams = [stream];
          } else if (this._localStreams.indexOf(stream) === -1) {
            this._localStreams.push(stream);
          }
        }
        return _addTrack.call(this, track, stream);
      };
    }
    if (!('removeStream' in window.RTCPeerConnection.prototype)) {
      window.RTCPeerConnection.prototype.removeStream = function(stream) {
        if (!this._localStreams) {
          this._localStreams = [];
        }
        var index = this._localStreams.indexOf(stream);
        if (index === -1) {
          return;
        }
        this._localStreams.splice(index, 1);
        var self = this;
        var tracks = stream.getTracks();
        this.getSenders().forEach(function(sender) {
          if (tracks.indexOf(sender.track) !== -1) {
            self.removeTrack(sender);
          }
        });
      };
    }
  },
  shimRemoteStreamsAPI: function(window) {
    if (typeof window !== 'object' || !window.RTCPeerConnection) {
      return;
    }
    if (!('getRemoteStreams' in window.RTCPeerConnection.prototype)) {
      window.RTCPeerConnection.prototype.getRemoteStreams = function() {
        return this._remoteStreams ? this._remoteStreams : [];
      };
    }
    if (!('onaddstream' in window.RTCPeerConnection.prototype)) {
      Object.defineProperty(window.RTCPeerConnection.prototype, 'onaddstream', {
        get: function() {
          return this._onaddstream;
        },
        set: function(f) {
          if (this._onaddstream) {
            this.removeEventListener('addstream', this._onaddstream);
            this.removeEventListener('track', this._onaddstreampoly);
          }
          this.addEventListener('addstream', this._onaddstream = f);
          this.addEventListener('track', this._onaddstreampoly = function(e) {
            var stream = e.streams[0];
            if (!this._remoteStreams) {
              this._remoteStreams = [];
            }
            if (this._remoteStreams.indexOf(stream) >= 0) {
              return;
            }
            this._remoteStreams.push(stream);
            var event = new Event('addstream');
            event.stream = e.streams[0];
            this.dispatchEvent(event);
          }.bind(this));
        }
      });
    }
  },
  shimCallbacksAPI: function(window) {
    if (typeof window !== 'object' || !window.RTCPeerConnection) {
      return;
    }
    var prototype = window.RTCPeerConnection.prototype;
    var createOffer = prototype.createOffer;
    var createAnswer = prototype.createAnswer;
    var setLocalDescription = prototype.setLocalDescription;
    var setRemoteDescription = prototype.setRemoteDescription;
    var addIceCandidate = prototype.addIceCandidate;

    prototype.createOffer = function(successCallback, failureCallback) {
      var options = (arguments.length >= 2) ? arguments[2] : arguments[0];
      var promise = createOffer.apply(this, [options]);
      if (!failureCallback) {
        return promise;
      }
      promise.then(successCallback, failureCallback);
      return Promise.resolve();
    };

    prototype.createAnswer = function(successCallback, failureCallback) {
      var options = (arguments.length >= 2) ? arguments[2] : arguments[0];
      var promise = createAnswer.apply(this, [options]);
      if (!failureCallback) {
        return promise;
      }
      promise.then(successCallback, failureCallback);
      return Promise.resolve();
    };

    var withCallback = function(description, successCallback, failureCallback) {
      var promise = setLocalDescription.apply(this, [description]);
      if (!failureCallback) {
        return promise;
      }
      promise.then(successCallback, failureCallback);
      return Promise.resolve();
    };
    prototype.setLocalDescription = withCallback;

    withCallback = function(description, successCallback, failureCallback) {
      var promise = setRemoteDescription.apply(this, [description]);
      if (!failureCallback) {
        return promise;
      }
      promise.then(successCallback, failureCallback);
      return Promise.resolve();
    };
    prototype.setRemoteDescription = withCallback;

    withCallback = function(candidate, successCallback, failureCallback) {
      var promise = addIceCandidate.apply(this, [candidate]);
      if (!failureCallback) {
        return promise;
      }
      promise.then(successCallback, failureCallback);
      return Promise.resolve();
    };
    prototype.addIceCandidate = withCallback;
  },
  shimGetUserMedia: function(window) {
    var navigator = window && window.navigator;

    if (!navigator.getUserMedia) {
      if (navigator.webkitGetUserMedia) {
        navigator.getUserMedia = navigator.webkitGetUserMedia.bind(navigator);
      } else if (navigator.mediaDevices &&
          navigator.mediaDevices.getUserMedia) {
        navigator.getUserMedia = function(constraints, cb, errcb) {
          navigator.mediaDevices.getUserMedia(constraints)
          .then(cb, errcb);
        }.bind(navigator);
      }
    }
  },
  shimRTCIceServerUrls: function(window) {
    // migrate from non-spec RTCIceServer.url to RTCIceServer.urls
    var OrigPeerConnection = window.RTCPeerConnection;
    window.RTCPeerConnection = function(pcConfig, pcConstraints) {
      if (pcConfig && pcConfig.iceServers) {
        var newIceServers = [];
        for (var i = 0; i < pcConfig.iceServers.length; i++) {
          var server = pcConfig.iceServers[i];
          if (!server.hasOwnProperty('urls') &&
              server.hasOwnProperty('url')) {
            utils.deprecated('RTCIceServer.url', 'RTCIceServer.urls');
            server = JSON.parse(JSON.stringify(server));
            server.urls = server.url;
            delete server.url;
            newIceServers.push(server);
          } else {
            newIceServers.push(pcConfig.iceServers[i]);
          }
        }
        pcConfig.iceServers = newIceServers;
      }
      return new OrigPeerConnection(pcConfig, pcConstraints);
    };
    window.RTCPeerConnection.prototype = OrigPeerConnection.prototype;
    // wrap static methods. Currently just generateCertificate.
    if ('generateCertificate' in window.RTCPeerConnection) {
      Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', {
        get: function() {
          return OrigPeerConnection.generateCertificate;
        }
      });
    }
  },
  shimTrackEventTransceiver: function(window) {
    // Add event.transceiver member over deprecated event.receiver
    if (typeof window === 'object' && window.RTCPeerConnection &&
        ('receiver' in window.RTCTrackEvent.prototype) &&
        // can't check 'transceiver' in window.RTCTrackEvent.prototype, as it is
        // defined for some reason even when window.RTCTransceiver is not.
        !window.RTCTransceiver) {
      Object.defineProperty(window.RTCTrackEvent.prototype, 'transceiver', {
        get: function() {
          return {receiver: this.receiver};
        }
      });
    }
  },

  shimCreateOfferLegacy: function(window) {
    var origCreateOffer = window.RTCPeerConnection.prototype.createOffer;
    window.RTCPeerConnection.prototype.createOffer = function(offerOptions) {
      var pc = this;
      if (offerOptions) {
        var audioTransceiver = pc.getTransceivers().find(function(transceiver) {
          return transceiver.sender.track &&
              transceiver.sender.track.kind === 'audio';
        });
        if (offerOptions.offerToReceiveAudio === false && audioTransceiver) {
          if (audioTransceiver.direction === 'sendrecv') {
            audioTransceiver.setDirection('sendonly');
          } else if (audioTransceiver.direction === 'recvonly') {
            audioTransceiver.setDirection('inactive');
          }
        } else if (offerOptions.offerToReceiveAudio === true &&
            !audioTransceiver) {
          pc.addTransceiver('audio');
        }

        var videoTransceiver = pc.getTransceivers().find(function(transceiver) {
          return transceiver.sender.track &&
              transceiver.sender.track.kind === 'video';
        });
        if (offerOptions.offerToReceiveVideo === false && videoTransceiver) {
          if (videoTransceiver.direction === 'sendrecv') {
            videoTransceiver.setDirection('sendonly');
          } else if (videoTransceiver.direction === 'recvonly') {
            videoTransceiver.setDirection('inactive');
          }
        } else if (offerOptions.offerToReceiveVideo === true &&
            !videoTransceiver) {
          pc.addTransceiver('video');
        }
      }
      return origCreateOffer.apply(pc, arguments);
    };
  }
};

// Expose public methods.
module.exports = {
  shimCallbacksAPI: safariShim.shimCallbacksAPI,
  shimLocalStreamsAPI: safariShim.shimLocalStreamsAPI,
  shimRemoteStreamsAPI: safariShim.shimRemoteStreamsAPI,
  shimGetUserMedia: safariShim.shimGetUserMedia,
  shimRTCIceServerUrls: safariShim.shimRTCIceServerUrls,
  shimTrackEventTransceiver: safariShim.shimTrackEventTransceiver,
  shimCreateOfferLegacy: safariShim.shimCreateOfferLegacy
  // TODO
  // shimPeerConnection: safariShim.shimPeerConnection
};

},{"../utils":13}],13:[function(require,module,exports){
/*
 *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree.
 */
 /* eslint-env node */
'use strict';

var logDisabled_ = true;
var deprecationWarnings_ = true;

// Utility methods.
var utils = {
  disableLog: function(bool) {
    if (typeof bool !== 'boolean') {
      return new Error('Argument type: ' + typeof bool +
          '. Please use a boolean.');
    }
    logDisabled_ = bool;
    return (bool) ? 'adapter.js logging disabled' :
        'adapter.js logging enabled';
  },

  /**
   * Disable or enable deprecation warnings
   * @param {!boolean} bool set to true to disable warnings.
   */
  disableWarnings: function(bool) {
    if (typeof bool !== 'boolean') {
      return new Error('Argument type: ' + typeof bool +
          '. Please use a boolean.');
    }
    deprecationWarnings_ = !bool;
    return 'adapter.js deprecation warnings ' + (bool ? 'disabled' : 'enabled');
  },

  log: function() {
    if (typeof window === 'object') {
      if (logDisabled_) {
        return;
      }
      if (typeof console !== 'undefined' && typeof console.log === 'function') {
        console.log.apply(console, arguments);
      }
    }
  },

  /**
   * Shows a deprecation warning suggesting the modern and spec-compatible API.
   */
  deprecated: function(oldMethod, newMethod) {
    if (!deprecationWarnings_) {
      return;
    }
    console.warn(oldMethod + ' is deprecated, please use ' + newMethod +
        ' instead.');
  },

  /**
   * Extract browser version out of the provided user agent string.
   *
   * @param {!string} uastring userAgent string.
   * @param {!string} expr Regular expression used as match criteria.
   * @param {!number} pos position in the version string to be returned.
   * @return {!number} browser version.
   */
  extractVersion: function(uastring, expr, pos) {
    var match = uastring.match(expr);
    return match && match.length >= pos && parseInt(match[pos], 10);
  },

  /**
   * Browser detector.
   *
   * @return {object} result containing browser and version
   *     properties.
   */
  detectBrowser: function(window) {
    var navigator = window && window.navigator;

    // Returned result object.
    var result = {};
    result.browser = null;
    result.version = null;

    // Fail early if it's not a browser
    if (typeof window === 'undefined' || !window.navigator) {
      result.browser = 'Not a browser.';
      return result;
    }

    // Firefox.
    if (navigator.mozGetUserMedia) {
      result.browser = 'firefox';
      result.version = this.extractVersion(navigator.userAgent,
          /Firefox\/(\d+)\./, 1);
    } else if (navigator.webkitGetUserMedia) {
      // Chrome, Chromium, Webview, Opera, all use the chrome shim for now
      if (window.webkitRTCPeerConnection) {
        result.browser = 'chrome';
        result.version = this.extractVersion(navigator.userAgent,
          /Chrom(e|ium)\/(\d+)\./, 2);
      } else { // Safari (in an unpublished version) or unknown webkit-based.
        if (navigator.userAgent.match(/Version\/(\d+).(\d+)/)) {
          result.browser = 'safari';
          result.version = this.extractVersion(navigator.userAgent,
            /AppleWebKit\/(\d+)\./, 1);
        } else { // unknown webkit-based browser.
          result.browser = 'Unsupported webkit-based browser ' +
              'with GUM support but no WebRTC support.';
          return result;
        }
      }
    } else if (navigator.mediaDevices &&
        navigator.userAgent.match(/Edge\/(\d+).(\d+)$/)) { // Edge.
      result.browser = 'edge';
      result.version = this.extractVersion(navigator.userAgent,
          /Edge\/(\d+).(\d+)$/, 2);
    } else if (navigator.mediaDevices &&
        navigator.userAgent.match(/AppleWebKit\/(\d+)\./)) {
        // Safari, with webkitGetUserMedia removed.
      result.browser = 'safari';
      result.version = this.extractVersion(navigator.userAgent,
          /AppleWebKit\/(\d+)\./, 1);
    } else { // Default fallthrough: not supported.
      result.browser = 'Not a supported browser.';
      return result;
    }

    return result;
  },

};

// Export.
module.exports = {
  log: utils.log,
  deprecated: utils.deprecated,
  disableLog: utils.disableLog,
  disableWarnings: utils.disableWarnings,
  extractVersion: utils.extractVersion,
  shimCreateObjectURL: utils.shimCreateObjectURL,
  detectBrowser: utils.detectBrowser.bind(utils)
};

},{}]},{},[3])(3)
});
})();