20 lines
2.0 MiB
20 lines
2.0 MiB
var Module=typeof Module!=="undefined"?Module:{};"use strict";var LOG_TYPES={NP_TYPE_NONE:0,NP_TYPE_ERROR:1,NP_TYPE_NORMAL:2,NP_TYPE_DEBUG:3};var logType=LOG_TYPES.NP_TYPE_NORMAL;var logTime=function logTime(){var nowDate=new Date;return nowDate.toLocaleDateString()+" "+nowDate.toLocaleTimeString([],{hour12:false})};var NP_LOG=function NP_LOG(){var _console;for(var _len=arguments.length,args=Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key]}if(logType<LOG_TYPES.NP_TYPE_NORMAL)return;(_console=console).log.apply(_console,[logTime(),"[INFO]"].concat(args))};var NP_ERROR=function NP_ERROR(){var _console2;for(var _len2=arguments.length,args=Array(_len2),_key2=0;_key2<_len2;_key2++){args[_key2]=arguments[_key2]}if(logType<LOG_TYPES.NP_TYPE_ERROR)return;(_console2=console).error.apply(_console2,[logTime(),"[ERROR]"].concat(args))};var NP_DEBUG=function NP_DEBUG(){var _console3;for(var _len3=arguments.length,args=Array(_len3),_key3=0;_key3<_len3;_key3++){args[_key3]=arguments[_key3]}if(logType<LOG_TYPES.NP_TYPE_DEBUG)return;(_console3=console).log.apply(_console3,[logTime(),"[DEBUG]"].concat(args))};Module.print=NP_LOG;Module.printErr=NP_ERROR;"use strict";var _typeof=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(obj){return typeof obj}:function(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj};!function(e){if("object"==(typeof exports==="undefined"?"undefined":_typeof(exports))&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.flvjs=e()}}(function(){var e;return function e(t,n,i){function r(a,o){if(!n[a]){if(!t[a]){var u="function"==typeof require&&require;if(!o&&u)return u(a,!0);if(s)return s(a,!0);var l=new Error("Cannot find module '"+a+"'");throw l.code="MODULE_NOT_FOUND",l}var d=n[a]={exports:{}};t[a][0].call(d.exports,function(e){var n=t[a][1][e];return r(n||e)},d,d.exports,e,t,n,i)}return n[a].exports}for(var s="function"==typeof require&&require,a=0;a<i.length;a++){r(i[a])}return r}({1:[function(t,n,i){(function(r,s){!function(t,r){"object"==(typeof i==="undefined"?"undefined":_typeof(i))&&void 0!==n?n.exports=r():"function"==typeof e&&e.amd?e(r):t.ES6Promise=r()}(this,function(){"use strict";function e(e){var t=typeof e==="undefined"?"undefined":_typeof(e);return null!==e&&("object"===t||"function"===t)}function n(e){return"function"==typeof e}function i(e){V=e}function a(e){z=e}function o(){return void 0!==G?function(){G(l)}:u()}function u(){var e=setTimeout;return function(){return e(l,1)}}function l(){for(var e=0;e<F;e+=2){(0,Y[e])(Y[e+1]),Y[e]=void 0,Y[e+1]=void 0}F=0}function d(e,t){var n=this,i=new this.constructor(f);void 0===i[Q]&&C(i);var r=n._state;if(r){var s=arguments[r-1];z(function(){return A(r,i,s,n._result)})}else L(n,i,e,t);return i}function h(e){var t=this;if(e&&"object"==(typeof e==="undefined"?"undefined":_typeof(e))&&e.constructor===t)return e;var n=new t(f);return b(n,e),n}function f(){}function c(){return new TypeError("You cannot resolve a promise with itself")}function _(){return new TypeError("A promises callback cannot return that same promise.")}function m(e){try{return e.then}catch(e){return te.error=e,te}}function p(e,t,n,i){try{e.call(t,n,i)}catch(e){return e}}function v(e,t,n){z(function(e){var i=!1,r=p(n,t,function(n){i||(i=!0,t!==n?b(e,n):S(e,n))},function(t){i||(i=!0,k(e,t))},"Settle: "+(e._label||" unknown promise"));!i&&r&&(i=!0,k(e,r))},e)}function g(e,t){t._state===$?S(e,t._result):t._state===ee?k(e,t._result):L(t,void 0,function(t){return b(e,t)},function(t){return k(e,t)})}function y(e,t,i){t.constructor===e.constructor&&i===d&&t.constructor.resolve===h?g(e,t):i===te?(k(e,te.error),te.error=null):void 0===i?S(e,t):n(i)?v(e,t,i):S(e,t)}function b(t,n){t===n?k(t,c()):e(n)?y(t,n,m(n)):S(t,n)}function E(e){e._onerror&&e._onerror(e._result),R(e)}function S(e,t){e._state===J&&(e._result=t,e._state=$,0!==e._subscribers.length&&z(R,e))}function k(e,t){e._state===J&&(e._state=ee,e._result=t,z(E,e))}function L(e,t,n,i){var r=e._subscribers,s=r.length;e._onerror=null,r[s]=t,r[s+$]=n,r[s+ee]=i,0===s&&e._state&&z(R,e)}function R(e){var t=e._subscribers,n=e._state;if(0!==t.length){for(var i=void 0,r=void 0,s=e._result,a=0;a<t.length;a+=3){i=t[a],r=t[a+n],i?A(n,i,r,s):r(s)}e._subscribers.length=0}}function w(e,t){try{return e(t)}catch(e){return te.error=e,te}}function A(e,t,i,r){var s=n(i),a=void 0,o=void 0,u=void 0,l=void 0;if(s){if(a=w(i,r),a===te?(l=!0,o=a.error,a.error=null):u=!0,t===a)return void k(t,_())}else a=r,u=!0;t._state!==J||(s&&u?b(t,a):l?k(t,o):e===$?S(t,a):e===ee&&k(t,a))}function T(e,t){try{t(function(t){b(e,t)},function(t){k(e,t)})}catch(t){k(e,t)}}function O(){return ne++}function C(e){e[Q]=ne++,e._state=void 0,e._result=void 0,e._subscribers=[]}function I(){return new Error("Array Methods must be provided an Array")}function D(e){return new ie(this,e).promise}function x(e){var t=this;return new t(N(e)?function(n,i){for(var r=e.length,s=0;s<r;s++){t.resolve(e[s]).then(n,i)}}:function(e,t){return t(new TypeError("You must pass an array to race."))})}function M(e){var t=this,n=new t(f);return k(n,e),n}function j(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function B(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}function P(){var e=void 0;if(void 0!==s)e=s;else if("undefined"!=typeof self)e=self;else try{e=Function("return this")()}catch(e){throw new Error("polyfill failed because global object is unavailable in this environment")}var t=e.Promise;if(t){var n=null;try{n=Object.prototype.toString.call(t.resolve())}catch(e){}if("[object Promise]"===n&&!t.cast)return}e.Promise=re}var U=void 0;U=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)};var N=U,F=0,G=void 0,V=void 0,z=function z(e,t){Y[F]=e,Y[F+1]=t,2===(F+=2)&&(V?V(l):Z())},H="undefined"!=typeof window?window:void 0,q=H||{},K=q.MutationObserver||q.WebKitMutationObserver,W="undefined"==typeof self&&void 0!==r&&"[object process]"==={}.toString.call(r),X="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel,Y=new Array(1e3),Z=void 0;Z=W?function(){return function(){return r.nextTick(l)}}():K?function(){var e=0,t=new K(l),n=document.createTextNode("");return t.observe(n,{characterData:!0}),function(){n.data=e=++e%2}}():X?function(){var e=new MessageChannel;return e.port1.onmessage=l,function(){return e.port2.postMessage(0)}}():void 0===H&&"function"==typeof t?function(){try{var e=Function("return this")().require("vertx");return G=e.runOnLoop||e.runOnContext,o()}catch(e){return u()}}():u();var Q=Math.random().toString(36).substring(2),J=void 0,$=1,ee=2,te={error:null},ne=0,ie=function(){function e(e,t){this._instanceConstructor=e,this.promise=new e(f),this.promise[Q]||C(this.promise),N(t)?(this.length=t.length,this._remaining=t.length,this._result=new Array(this.length),0===this.length?S(this.promise,this._result):(this.length=this.length||0,this._enumerate(t),0===this._remaining&&S(this.promise,this._result))):k(this.promise,I())}return e.prototype._enumerate=function(e){for(var t=0;this._state===J&&t<e.length;t++){this._eachEntry(e[t],t)}},e.prototype._eachEntry=function(e,t){var n=this._instanceConstructor,i=n.resolve;if(i===h){var r=m(e);if(r===d&&e._state!==J)this._settledAt(e._state,t,e._result);else if("function"!=typeof r)this._remaining--,this._result[t]=e;else if(n===re){var s=new n(f);y(s,e,r),this._willSettleAt(s,t)}else this._willSettleAt(new n(function(t){return t(e)}),t)}else this._willSettleAt(i(e),t)},e.prototype._settledAt=function(e,t,n){var i=this.promise;i._state===J&&(this._remaining--,e===ee?k(i,n):this._result[t]=n),0===this._remaining&&S(i,this._result)},e.prototype._willSettleAt=function(e,t){var n=this;L(e,void 0,function(e){return n._settledAt($,t,e)},function(e){return n._settledAt(ee,t,e)})},e}(),re=function(){function e(t){this[Q]=O(),this._result=this._state=void 0,this._subscribers=[],f!==t&&("function"!=typeof t&&j(),this instanceof e?T(this,t):B())}return e.prototype.catch=function(e){return this.then(null,e)},e.prototype.finally=function(e){var t=this,i=t.constructor;return n(e)?t.then(function(t){return i.resolve(e()).then(function(){return t})},function(t){return i.resolve(e()).then(function(){throw t})}):t.then(e,e)},e}();return re.prototype.then=d,re.all=D,re.race=x,re.resolve=h,re.reject=M,re._setScheduler=i,re._setAsap=a,re._asap=z,re.polyfill=P,re.Promise=re,re})}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{_process:3}],2:[function(e,t,n){function i(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function r(e){return"function"==typeof e}function s(e){return"number"==typeof e}function a(e){return"object"==(typeof e==="undefined"?"undefined":_typeof(e))&&null!==e}function o(e){return void 0===e}t.exports=i,i.EventEmitter=i,i.prototype._events=void 0,i.prototype._maxListeners=void 0,i.defaultMaxListeners=10,i.prototype.setMaxListeners=function(e){if(!s(e)||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},i.prototype.emit=function(e){var t,n,i,s,u,l;if(this._events||(this._events={}),"error"===e&&(!this._events.error||a(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var d=new Error('Uncaught, unspecified "error" event. ('+t+")");throw d.context=t,d}if(n=this._events[e],o(n))return!1;if(r(n))switch(arguments.length){case 1:n.call(this);break;case 2:n.call(this,arguments[1]);break;case 3:n.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),n.apply(this,s)}else if(a(n))for(s=Array.prototype.slice.call(arguments,1),l=n.slice(),i=l.length,u=0;u<i;u++){l[u].apply(this,s)}return!0},i.prototype.addListener=function(e,t){var n;if(!r(t))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",e,r(t.listener)?t.listener:t),this._events[e]?a(this._events[e])?this._events[e].push(t):this._events[e]=[this._events[e],t]:this._events[e]=t,a(this._events[e])&&!this._events[e].warned&&(n=o(this._maxListeners)?i.defaultMaxListeners:this._maxListeners)&&n>0&&this._events[e].length>n&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},i.prototype.on=i.prototype.addListener,i.prototype.once=function(e,t){function n(){this.removeListener(e,n),i||(i=!0,t.apply(this,arguments))}if(!r(t))throw TypeError("listener must be a function");var i=!1;return n.listener=t,this.on(e,n),this},i.prototype.removeListener=function(e,t){var n,i,s,o;if(!r(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(n=this._events[e],s=n.length,i=-1,n===t||r(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(a(n)){for(o=s;o-- >0;){if(n[o]===t||n[o].listener&&n[o].listener===t){i=o;break}}if(i<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(i,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},i.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events){"removeListener"!==t&&this.removeAllListeners(t)}return this.removeAllListeners("removeListener"),this._events={},this}if(n=this._events[e],r(n))this.removeListener(e,n);else if(n)for(;n.length;){this.removeListener(e,n[n.length-1])}return delete this._events[e],this},i.prototype.listeners=function(e){return this._events&&this._events[e]?r(this._events[e])?[this._events[e]]:this._events[e].slice():[]},i.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(r(t))return 1;if(t)return t.length}return 0},i.listenerCount=function(e,t){return e.listenerCount(t)}},{}],3:[function(e,t,n){function i(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function s(e){if(h===setTimeout)return setTimeout(e,0);if((h===i||!h)&&setTimeout)return h=setTimeout,setTimeout(e,0);try{return h(e,0)}catch(t){try{return h.call(null,e,0)}catch(t){return h.call(this,e,0)}}}function a(e){if(f===clearTimeout)return clearTimeout(e);if((f===r||!f)&&clearTimeout)return f=clearTimeout,clearTimeout(e);try{return f(e)}catch(t){try{return f.call(null,e)}catch(t){return f.call(this,e)}}}function o(){p&&_&&(p=!1,_.length?m=_.concat(m):v=-1,m.length&&u())}function u(){if(!p){var e=s(o);p=!0;for(var t=m.length;t;){for(_=m,m=[];++v<t;){_&&_[v].run()}v=-1,t=m.length}_=null,p=!1,a(e)}}function l(e,t){this.fun=e,this.array=t}function d(){}var h,f,c=t.exports={};!function(){try{h="function"==typeof setTimeout?setTimeout:i}catch(e){h=i}try{f="function"==typeof clearTimeout?clearTimeout:r}catch(e){f=r}}();var _,m=[],p=!1,v=-1;c.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++){t[n-1]=arguments[n]}m.push(new l(e,t)),1!==m.length||p||s(u)},l.prototype.run=function(){this.fun.apply(null,this.array)},c.title="browser",c.browser=!0,c.env={},c.argv=[],c.version="",c.versions={},c.on=d,c.addListener=d,c.once=d,c.off=d,c.removeListener=d,c.removeAllListeners=d,c.emit=d,c.prependListener=d,c.prependOnceListener=d,c.listeners=function(e){return[]},c.binding=function(e){throw new Error("process.binding is not supported")},c.cwd=function(){return"/"},c.chdir=function(e){throw new Error("process.chdir is not supported")},c.umask=function(){return 0}},{}],4:[function(e,t,n){var i=arguments[3],r=arguments[4],s=arguments[5],a=JSON.stringify;t.exports=function(e,t){function n(e){p[e]=!0;for(var t in r[e][1]){var i=r[e][1][t];p[i]||n(i)}}for(var o,u=Object.keys(s),l=0,d=u.length;l<d;l++){var h=u[l],f=s[h].exports;if(f===e||f&&f.default===e){o=h;break}}if(!o){o=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var c={},l=0,d=u.length;l<d;l++){var h=u[l];c[h]=h}r[o]=["function(require,module,exports){"+e+"(self); }",c]}var _=Math.floor(Math.pow(16,8)*Math.random()).toString(16),m={};m[o]=o,r[_]=["function(require,module,exports){var f = require("+a(o)+");(f.default ? f.default : f)(self);}",m];var p={};n(_);var v="("+i+")({"+Object.keys(p).map(function(e){return a(e)+":["+r[e][0]+","+a(r[e][1])+"]"}).join(",")+"},{},["+a(_)+"])",g=window.URL||window.webkitURL||window.mozURL||window.msURL,y=new Blob([v],{type:"text/javascript"});if(t&&t.bare)return y;var b=g.createObjectURL(y),E=new Worker(b);return E.objectURL=b,E}},{}],5:[function(e,t,n){"use strict";function i(){return Object.assign({},r)}Object.defineProperty(n,"__esModule",{value:!0}),n.createDefaultConfig=i;var r=n.defaultConfig={enableWorker:!1,enableStashBuffer:!0,stashInitialSize:void 0,isLive:!1,lazyLoad:!0,lazyLoadMaxDuration:180,lazyLoadRecoverDuration:30,deferLoadAfterSourceOpen:!0,autoCleanupMaxBackwardDuration:180,autoCleanupMinBackwardDuration:120,statisticsInfoReportInterval:600,fixAudioTimestampGap:!0,accurateSeek:!1,seekType:"range",seekParamStart:"bstart",seekParamEnd:"bend",rangeLoadZeroStart:!1,customSeekHandler:void 0,reuseRedirectedURL:!1,headers:void 0,customLoader:void 0}},{}],6:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=e("../io/io-controller.js"),a=function(e){return e&&e.__esModule?e:{default:e}}(s),o=e("../config.js"),u=function(){function e(){i(this,e)}return r(e,null,[{key:"supportMSEH264Playback",value:function value(){return window.MediaSource&&window.MediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"')}},{key:"supportNetworkStreamIO",value:function value(){var e=new a.default({},(0,o.createDefaultConfig)()),t=e.loaderType;return e.destroy(),"fetch-stream-loader"==t||"xhr-moz-chunked-loader"==t}},{key:"getNetworkLoaderTypeName",value:function value(){var e=new a.default({},(0,o.createDefaultConfig)()),t=e.loaderType;return e.destroy(),t}},{key:"supportNativeMediaPlayback",value:function value(t){void 0==e.videoElement&&(e.videoElement=window.document.createElement("video"));var n=e.videoElement.canPlayType(t);return"probably"===n||"maybe"==n}},{key:"getFeatureList",value:function value(){var t={mseFlvPlayback:!1,mseLiveFlvPlayback:!1,networkStreamIO:!1,networkLoaderName:"",nativeMP4H264Playback:!1,nativeWebmVP8Playback:!1,nativeWebmVP9Playback:!1};return t.mseFlvPlayback=e.supportMSEH264Playback(),t.networkStreamIO=e.supportNetworkStreamIO(),t.networkLoaderName=e.getNetworkLoaderTypeName(),t.mseLiveFlvPlayback=t.mseFlvPlayback&&t.networkStreamIO,t.nativeMP4H264Playback=e.supportNativeMediaPlayback('video/mp4; codecs="avc1.42001E, mp4a.40.2"'),t.nativeWebmVP8Playback=e.supportNativeMediaPlayback('video/webm; codecs="vp8.0, vorbis"'),t.nativeWebmVP9Playback=e.supportNativeMediaPlayback('video/webm; codecs="vp9"'),t}}]),e}();n.default=u},{"../config.js":5,"../io/io-controller.js":23}],7:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=function(){function e(){i(this,e),this.mimeType=null,this.duration=null,this.hasAudio=null,this.hasVideo=null,this.audioCodec=null,this.videoCodec=null,this.audioDataRate=null,this.videoDataRate=null,this.audioSampleRate=null,this.audioChannelCount=null,this.width=null,this.height=null,this.fps=null,this.profile=null,this.level=null,this.refFrames=null,this.chromaFormat=null,this.sarNum=null,this.sarDen=null,this.metadata=null,this.segments=null,this.segmentCount=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}return r(e,[{key:"isComplete",value:function value(){var e=!1===this.hasAudio||!0===this.hasAudio&&null!=this.audioCodec&&null!=this.audioSampleRate&&null!=this.audioChannelCount,t=!1===this.hasVideo||!0===this.hasVideo&&null!=this.videoCodec&&null!=this.width&&null!=this.height&&null!=this.fps&&null!=this.profile&&null!=this.level&&null!=this.refFrames&&null!=this.chromaFormat&&null!=this.sarNum&&null!=this.sarDen;return null!=this.mimeType&&null!=this.duration&&null!=this.metadata&&null!=this.hasKeyframesIndex&&e&&t}},{key:"isSeekable",value:function value(){return!0===this.hasKeyframesIndex}},{key:"getNearestKeyframe",value:function value(e){if(null==this.keyframesIndex)return null;var t=this.keyframesIndex,n=this._search(t.times,e);return{index:n,milliseconds:t.times[n],fileposition:t.filepositions[n]}}},{key:"_search",value:function value(e,t){var n=0,i=e.length-1,r=0,s=0,a=i;for(t<e[0]&&(n=0,s=a+1);s<=a;){if((r=s+Math.floor((a-s)/2))===i||t>=e[r]&&t<e[r+1]){n=r;break}e[r]<t?s=r+1:a=r-1}return n}}]),e}();n.default=s},{}],8:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}();n.SampleInfo=function e(t,n,r,s,a){i(this,e),this.dts=t,this.pts=n,this.duration=r,this.originalDts=s,this.isSyncPoint=a,this.fileposition=null},n.MediaSegmentInfo=function(){function e(){i(this,e),this.beginDts=0,this.endDts=0,this.beginPts=0,this.endPts=0,this.originalBeginDts=0,this.originalEndDts=0,this.syncPoints=[],this.firstSample=null,this.lastSample=null}return r(e,[{key:"appendSyncPoint",value:function value(e){e.isSyncPoint=!0,this.syncPoints.push(e)}}]),e}(),n.IDRSampleList=function(){function e(){i(this,e),this._list=[]}return r(e,[{key:"clear",value:function value(){this._list=[]}},{key:"appendArray",value:function value(e){var t=this._list;0!==e.length&&(t.length>0&&e[0].originalDts<t[t.length-1].originalDts&&this.clear(),Array.prototype.push.apply(t,e))}},{key:"getLastSyncPointBeforeDts",value:function value(e){if(0==this._list.length)return null;var t=this._list,n=0,i=t.length-1,r=0,s=0,a=i;for(e<t[0].dts&&(n=0,s=a+1);s<=a;){if((r=s+Math.floor((a-s)/2))===i||e>=t[r].dts&&e<t[r+1].dts){n=r;break}t[r].dts<e?s=r+1:a=r-1}return this._list[n]}}]),e}(),n.MediaSegmentInfoList=function(){function e(t){i(this,e),this._type=t,this._list=[],this._lastAppendLocation=-1}return r(e,[{key:"isEmpty",value:function value(){return 0===this._list.length}},{key:"clear",value:function value(){this._list=[],this._lastAppendLocation=-1}},{key:"_searchNearestSegmentBefore",value:function value(e){var t=this._list;if(0===t.length)return-2;var n=t.length-1,i=0,r=0,s=n,a=0;if(e<t[0].originalBeginDts)return a=-1;for(;r<=s;){if((i=r+Math.floor((s-r)/2))===n||e>t[i].lastSample.originalDts&&e<t[i+1].originalBeginDts){a=i;break}t[i].originalBeginDts<e?r=i+1:s=i-1}return a}},{key:"_searchNearestSegmentAfter",value:function value(e){return this._searchNearestSegmentBefore(e)+1}},{key:"append",value:function value(e){var t=this._list,n=e,i=this._lastAppendLocation,r=0;-1!==i&&i<t.length&&n.originalBeginDts>=t[i].lastSample.originalDts&&(i===t.length-1||i<t.length-1&&n.originalBeginDts<t[i+1].originalBeginDts)?r=i+1:t.length>0&&(r=this._searchNearestSegmentBefore(n.originalBeginDts)+1),this._lastAppendLocation=r,this._list.splice(r,0,n)}},{key:"getLastSegmentBefore",value:function value(e){var t=this._searchNearestSegmentBefore(e);return t>=0?this._list[t]:null}},{key:"getLastSampleBefore",value:function value(e){var t=this.getLastSegmentBefore(e);return null!=t?t.lastSample:null}},{key:"getLastSyncPointBefore",value:function value(e){for(var t=this._searchNearestSegmentBefore(e),n=this._list[t].syncPoints;0===n.length&&t>0;){t--,n=this._list[t].syncPoints}return n.length>0?n[n.length-1]:null}},{key:"type",get:function get(){return this._type}},{key:"length",get:function get(){return this._list.length}}]),e}()},{}],9:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=e("events"),o=i(a),u=e("../utils/logger.js"),l=i(u),d=e("../utils/browser.js"),h=i(d),f=e("./mse-events.js"),c=i(f),_=e("./media-segment-info.js"),m=e("../utils/exception.js"),p=function(){function e(t){r(this,e),this.TAG="MSEController",this._config=t,this._emitter=new o.default,this._config.isLive&&void 0==this._config.autoCleanupSourceBuffer&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new _.IDRSampleList}return s(e,[{key:"destroy",value:function value(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}},{key:"on",value:function value(e,t){this._emitter.addListener(e,t)}},{key:"off",value:function value(e,t){this._emitter.removeListener(e,t)}},{key:"attachMediaElement",value:function value(e){if(this._mediaSource)throw new m.IllegalStateException("MediaSource has been attached to an HTMLMediaElement!");var t=this._mediaSource=new window.MediaSource;t.addEventListener("sourceopen",this.e.onSourceOpen),t.addEventListener("sourceended",this.e.onSourceEnded),t.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=e,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),e.src=this._mediaSourceObjectURL}},{key:"detachMediaElement",value:function value(){if(this._mediaSource){var e=this._mediaSource;for(var t in this._sourceBuffers){var n=this._pendingSegments[t];n.splice(0,n.length),this._pendingSegments[t]=null,this._pendingRemoveRanges[t]=null,this._lastInitSegments[t]=null;var i=this._sourceBuffers[t];if(i){if("closed"!==e.readyState){try{e.removeSourceBuffer(i)}catch(e){l.default.e(this.TAG,e.message)}i.removeEventListener("error",this.e.onSourceBufferError),i.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[t]=null,this._sourceBuffers[t]=null}}if("open"===e.readyState)try{e.endOfStream()}catch(e){l.default.e(this.TAG,e.message)}e.removeEventListener("sourceopen",this.e.onSourceOpen),e.removeEventListener("sourceended",this.e.onSourceEnded),e.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)}},{key:"appendInitSegment",value:function value(e,t){if(!this._mediaSource||"open"!==this._mediaSource.readyState)return this._pendingSourceBufferInit.push(e),void this._pendingSegments[e.type].push(e);var n=e,i=""+n.container;n.codec&&n.codec.length>0&&(i+=";codecs="+n.codec);var r=!1;if(l.default.v(this.TAG,"Received Initialization Segment, mimeType: "+i),this._lastInitSegments[n.type]=n,i!==this._mimeTypes[n.type]){if(this._mimeTypes[n.type])l.default.v(this.TAG,"Notice: "+n.type+" mimeType changed, origin: "+this._mimeTypes[n.type]+", target: "+i);else{r=!0;try{var s=this._sourceBuffers[n.type]=this._mediaSource.addSourceBuffer(i);s.addEventListener("error",this.e.onSourceBufferError),s.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(e){return l.default.e(this.TAG,e.message),void this._emitter.emit(c.default.ERROR,{code:e.code,msg:e.message})}}this._mimeTypes[n.type]=i}t||this._pendingSegments[n.type].push(n),r||this._sourceBuffers[n.type]&&!this._sourceBuffers[n.type].updating&&this._doAppendSegments(),h.default.safari&&"audio/mpeg"===n.container&&n.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=n.mediaDuration/1e3,this._updateMediaSourceDuration())}},{key:"appendMediaSegment",value:function value(e){var t=e;this._pendingSegments[t.type].push(t),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();var n=this._sourceBuffers[t.type];!n||n.updating||this._hasPendingRemoveRanges()||this._doAppendSegments()}},{key:"seek",value:function value(e){for(var t in this._sourceBuffers){if(this._sourceBuffers[t]){var n=this._sourceBuffers[t];if("open"===this._mediaSource.readyState)try{n.abort()}catch(e){l.default.e(this.TAG,e.message)}this._idrList.clear();var i=this._pendingSegments[t];if(i.splice(0,i.length),"closed"!==this._mediaSource.readyState){for(var r=0;r<n.buffered.length;r++){var s=n.buffered.start(r),a=n.buffered.end(r);this._pendingRemoveRanges[t].push({start:s,end:a})}if(n.updating||this._doRemoveRanges(),h.default.safari){var o=this._lastInitSegments[t];o&&(this._pendingSegments[t].push(o),n.updating||this._doAppendSegments())}}}}}},{key:"endOfStream",value:function value(){var e=this._mediaSource,t=this._sourceBuffers;if(!e||"open"!==e.readyState)return void(e&&"closed"===e.readyState&&this._hasPendingSegments()&&(this._hasPendingEos=!0));t.video&&t.video.updating||t.audio&&t.audio.updating?this._hasPendingEos=!0:(this._hasPendingEos=!1,e.endOfStream())}},{key:"getNearestKeyframe",value:function value(e){return this._idrList.getLastSyncPointBeforeDts(e)}},{key:"_needCleanupSourceBuffer",value:function value(){if(!this._config.autoCleanupSourceBuffer)return!1;var e=this._mediaElement.currentTime;for(var t in this._sourceBuffers){var n=this._sourceBuffers[t];if(n){var i=n.buffered;if(i.length>=1&&e-i.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}},{key:"_doCleanupSourceBuffer",value:function value(){var e=this._mediaElement.currentTime;for(var t in this._sourceBuffers){var n=this._sourceBuffers[t];if(n){for(var i=n.buffered,r=!1,s=0;s<i.length;s++){var a=i.start(s),o=i.end(s);if(a<=e&&e<o+3){if(e-a>=this._config.autoCleanupMaxBackwardDuration){r=!0;var u=e-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[t].push({start:a,end:u})}}else o<e&&(r=!0,this._pendingRemoveRanges[t].push({start:a,end:o}))}r&&!n.updating&&this._doRemoveRanges()}}}},{key:"_updateMediaSourceDuration",value:function value(){var e=this._sourceBuffers;if(0!==this._mediaElement.readyState&&"open"===this._mediaSource.readyState&&!(e.video&&e.video.updating||e.audio&&e.audio.updating)){var t=this._mediaSource.duration,n=this._pendingMediaDuration;n>0&&(isNaN(t)||n>t)&&(l.default.v(this.TAG,"Update MediaSource duration from "+t+" to "+n),this._mediaSource.duration=n),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}}},{key:"_doRemoveRanges",value:function value(){for(var e in this._pendingRemoveRanges){if(this._sourceBuffers[e]&&!this._sourceBuffers[e].updating)for(var t=this._sourceBuffers[e],n=this._pendingRemoveRanges[e];n.length&&!t.updating;){var i=n.shift();t.remove(i.start,i.end)}}}},{key:"_doAppendSegments",value:function value(){var e=this._pendingSegments;for(var t in e){if(this._sourceBuffers[t]&&!this._sourceBuffers[t].updating&&e[t].length>0){var n=e[t].shift();if(n.timestampOffset){var i=this._sourceBuffers[t].timestampOffset,r=n.timestampOffset/1e3,s=Math.abs(i-r);s>.1&&(l.default.v(this.TAG,"Update MPEG audio timestampOffset from "+i+" to "+r),this._sourceBuffers[t].timestampOffset=r),delete n.timestampOffset}if(!n.data||0===n.data.byteLength)continue;try{this._sourceBuffers[t].appendBuffer(n.data),this._isBufferFull=!1,"video"===t&&n.hasOwnProperty("info")&&this._idrList.appendArray(n.info.syncPoints)}catch(e){this._pendingSegments[t].unshift(n),22===e.code?(this._isBufferFull||this._emitter.emit(c.default.BUFFER_FULL),this._isBufferFull=!0):(l.default.e(this.TAG,e.message),this._emitter.emit(c.default.ERROR,{code:e.code,msg:e.message}))}}}}},{key:"_onSourceOpen",value:function value(){if(l.default.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0)for(var e=this._pendingSourceBufferInit;e.length;){var t=e.shift();this.appendInitSegment(t,!0)}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(c.default.SOURCE_OPEN)}},{key:"_onSourceEnded",value:function value(){l.default.v(this.TAG,"MediaSource onSourceEnded")}},{key:"_onSourceClose",value:function value(){l.default.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&null!=this.e&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))}},{key:"_hasPendingSegments",value:function value(){var e=this._pendingSegments;return e.video.length>0||e.audio.length>0}},{key:"_hasPendingRemoveRanges",value:function value(){var e=this._pendingRemoveRanges;return e.video.length>0||e.audio.length>0}},{key:"_onSourceBufferUpdateEnd",value:function value(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(c.default.UPDATE_END)}},{key:"_onSourceBufferError",value:function value(e){l.default.e(this.TAG,"SourceBuffer Error: "+e)}}]),e}();n.default=p},{"../utils/browser.js":40,"../utils/exception.js":41,"../utils/logger.js":42,"./media-segment-info.js":8,"./mse-events.js":10,events:2}],10:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var i={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};n.default=i},{}],11:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=e("events"),o=i(a),u=e("../utils/logger.js"),l=i(u),d=e("../utils/logging-control.js"),h=i(d),f=e("./transmuxing-controller.js"),c=i(f),_=e("./transmuxing-events.js"),m=i(_),p=e("./transmuxing-worker.js"),v=i(p),g=e("./media-info.js"),y=i(g),b=function(){function t(n,i){if(r(this,t),this.TAG="Transmuxer",this._emitter=new o.default,i.enableWorker&&"undefined"!=typeof Worker)try{var s=e("webworkify");this._worker=s(v.default),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[n,i]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},h.default.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:h.default.getConfig()})}catch(e){l.default.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new c.default(n,i)}else this._controller=new c.default(n,i);if(this._controller){var a=this._controller;a.on(m.default.IO_ERROR,this._onIOError.bind(this)),a.on(m.default.DEMUX_ERROR,this._onDemuxError.bind(this)),a.on(m.default.INIT_SEGMENT,this._onInitSegment.bind(this)),a.on(m.default.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),a.on(m.default.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),a.on(m.default.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),a.on(m.default.MEDIA_INFO,this._onMediaInfo.bind(this)),a.on(m.default.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),a.on(m.default.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),a.on(m.default.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),a.on(m.default.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}return s(t,[{key:"destroy",value:function value(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),h.default.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}},{key:"on",value:function value(e,t){this._emitter.addListener(e,t)}},{key:"off",value:function value(e,t){this._emitter.removeListener(e,t)}},{key:"hasWorker",value:function value(){return null!=this._worker}},{key:"open",value:function value(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()}},{key:"close",value:function value(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()}},{key:"seek",value:function value(e){this._worker?this._worker.postMessage({cmd:"seek",param:e}):this._controller.seek(e)}},{key:"pause",value:function value(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}},{key:"resume",value:function value(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}},{key:"_onInitSegment",value:function value(e,t){var n=this;Promise.resolve().then(function(){n._emitter.emit(m.default.INIT_SEGMENT,e,t)})}},{key:"_onMediaSegment",value:function value(e,t){var n=this;Promise.resolve().then(function(){n._emitter.emit(m.default.MEDIA_SEGMENT,e,t)})}},{key:"_onLoadingComplete",value:function value(){var e=this;Promise.resolve().then(function(){e._emitter.emit(m.default.LOADING_COMPLETE)})}},{key:"_onRecoveredEarlyEof",value:function value(){var e=this;Promise.resolve().then(function(){e._emitter.emit(m.default.RECOVERED_EARLY_EOF)})}},{key:"_onMediaInfo",value:function value(e){var t=this;Promise.resolve().then(function(){t._emitter.emit(m.default.MEDIA_INFO,e)})}},{key:"_onMetaDataArrived",value:function value(e){var t=this;Promise.resolve().then(function(){t._emitter.emit(m.default.METADATA_ARRIVED,e)})}},{key:"_onScriptDataArrived",value:function value(e){var t=this;Promise.resolve().then(function(){t._emitter.emit(m.default.SCRIPTDATA_ARRIVED,e)})}},{key:"_onStatisticsInfo",value:function value(e){var t=this;Promise.resolve().then(function(){t._emitter.emit(m.default.STATISTICS_INFO,e)})}},{key:"_onIOError",value:function value(e,t){var n=this;Promise.resolve().then(function(){n._emitter.emit(m.default.IO_ERROR,e,t)})}},{key:"_onDemuxError",value:function value(e,t){var n=this;Promise.resolve().then(function(){n._emitter.emit(m.default.DEMUX_ERROR,e,t)})}},{key:"_onRecommendSeekpoint",value:function value(e){var t=this;Promise.resolve().then(function(){t._emitter.emit(m.default.RECOMMEND_SEEKPOINT,e)})}},{key:"_onLoggingConfigChanged",value:function value(e){this._worker&&this._worker.postMessage({cmd:"logging_config",param:e})}},{key:"_onWorkerMessage",value:function value(e){var t=e.data,n=t.data;if("destroyed"===t.msg||this._workerDestroying)return this._workerDestroying=!1,this._worker.terminate(),void(this._worker=null);switch(t.msg){case m.default.INIT_SEGMENT:case m.default.MEDIA_SEGMENT:this._emitter.emit(t.msg,n.type,n.data);break;case m.default.LOADING_COMPLETE:case m.default.RECOVERED_EARLY_EOF:this._emitter.emit(t.msg);break;case m.default.MEDIA_INFO:Object.setPrototypeOf(n,y.default.prototype),this._emitter.emit(t.msg,n);break;case m.default.METADATA_ARRIVED:case m.default.SCRIPTDATA_ARRIVED:case m.default.STATISTICS_INFO:this._emitter.emit(t.msg,n);break;case m.default.IO_ERROR:case m.default.DEMUX_ERROR:this._emitter.emit(t.msg,n.type,n.info);break;case m.default.RECOMMEND_SEEKPOINT:this._emitter.emit(t.msg,n);break;case"logcat_callback":l.default.emitter.emit("log",n.type,n.logcat)}}}]),t}();n.default=b},{"../utils/logger.js":42,"../utils/logging-control.js":43,"./media-info.js":7,"./transmuxing-controller.js":12,"./transmuxing-events.js":13,"./transmuxing-worker.js":14,events:2,webworkify:4}],12:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=e("events"),o=i(a),u=e("../utils/logger.js"),l=i(u),d=e("../utils/browser.js"),h=i(d),f=e("./media-info.js"),c=i(f),_=e("../demux/flv-demuxer.js"),m=i(_),p=e("../remux/mp4-remuxer.js"),v=i(p),g=e("../demux/demux-errors.js"),y=i(g),b=e("../io/io-controller.js"),E=i(b),S=e("./transmuxing-events.js"),k=i(S),L=(e("../io/loader.js"),function(){function e(t,n){r(this,e),this.TAG="TransmuxingController",this._emitter=new o.default,this._config=n,t.segments||(t.segments=[{duration:t.duration,filesize:t.filesize,url:t.url}]),"boolean"!=typeof t.cors&&(t.cors=!0),"boolean"!=typeof t.withCredentials&&(t.withCredentials=!1),this._mediaDataSource=t,this._currentSegmentIndex=0;var i=0;this._mediaDataSource.segments.forEach(function(e){e.timestampBase=i,i+=e.duration,e.cors=t.cors,e.withCredentials=t.withCredentials,n.referrerPolicy&&(e.referrerPolicy=n.referrerPolicy)}),isNaN(i)||this._mediaDataSource.duration===i||(this._mediaDataSource.duration=i),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}return s(e,[{key:"destroy",value:function value(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null}},{key:"on",value:function value(e,t){this._emitter.addListener(e,t)}},{key:"off",value:function value(e,t){this._emitter.removeListener(e,t)}},{key:"start",value:function value(){this._loadSegment(0),this._enableStatisticsReporter()}},{key:"_loadSegment",value:function value(e,t){this._currentSegmentIndex=e;var n=this._mediaDataSource.segments[e],i=this._ioctl=new E.default(n,this._config,e);i.onError=this._onIOException.bind(this),i.onSeeked=this._onIOSeeked.bind(this),i.onComplete=this._onIOComplete.bind(this),i.onRedirect=this._onIORedirect.bind(this),i.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),t?this._demuxer.bindDataSource(this._ioctl):i.onDataArrival=this._onInitChunkArrival.bind(this),i.open(t)}},{key:"stop",value:function value(){this._internalAbort(),this._disableStatisticsReporter()}},{key:"_internalAbort",value:function value(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)}},{key:"pause",value:function value(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())}},{key:"resume",value:function value(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())}},{key:"seek",value:function value(e){if(null!=this._mediaInfo&&this._mediaInfo.isSeekable()){var t=this._searchSegmentIndexContains(e);if(t===this._currentSegmentIndex){var n=this._mediaInfo.segments[t];if(void 0==n)this._pendingSeekTime=e;else{var i=n.getNearestKeyframe(e);this._remuxer.seek(i.milliseconds),this._ioctl.seek(i.fileposition),this._pendingResolveSeekPoint=i.milliseconds}}else{var r=this._mediaInfo.segments[t];if(void 0==r)this._pendingSeekTime=e,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(t);else{var s=r.getNearestKeyframe(e);this._internalAbort(),this._remuxer.seek(e),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[t].timestampBase,this._loadSegment(t,s.fileposition),this._pendingResolveSeekPoint=s.milliseconds,this._reportSegmentMediaInfo(t)}}this._enableStatisticsReporter()}}},{key:"_searchSegmentIndexContains",value:function value(e){for(var t=this._mediaDataSource.segments,n=t.length-1,i=0;i<t.length;i++){if(e<t[i].timestampBase){n=i-1;break}}return n}},{key:"_onInitChunkArrival",value:function value(e,t){var n=this,i=null,r=0;if(t>0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,r=this._demuxer.parseChunks(e,t);else if((i=m.default.probe(e)).match){this._demuxer=new m.default(i,this._config),this._remuxer||(this._remuxer=new v.default(this._config));var s=this._mediaDataSource;void 0==s.duration||isNaN(s.duration)||(this._demuxer.overridedDuration=s.duration),"boolean"==typeof s.hasAudio&&(this._demuxer.overridedHasAudio=s.hasAudio),"boolean"==typeof s.hasVideo&&(this._demuxer.overridedHasVideo=s.hasVideo),this._demuxer.timestampBase=s.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),r=this._demuxer.parseChunks(e,t)}else i=null,l.default.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(function(){n._internalAbort()}),this._emitter.emit(k.default.DEMUX_ERROR,y.default.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),r=0;return r}},{key:"_onMediaInfo",value:function value(e){var t=this;null==this._mediaInfo&&(this._mediaInfo=Object.assign({},e),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,c.default.prototype));var n=Object.assign({},e);Object.setPrototypeOf(n,c.default.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=n,this._reportSegmentMediaInfo(this._currentSegmentIndex),null!=this._pendingSeekTime&&Promise.resolve().then(function(){var e=t._pendingSeekTime;t._pendingSeekTime=null,t.seek(e)})}},{key:"_onMetaDataArrived",value:function value(e){this._emitter.emit(k.default.METADATA_ARRIVED,e)}},{key:"_onScriptDataArrived",value:function value(e){this._emitter.emit(k.default.SCRIPTDATA_ARRIVED,e)}},{key:"_onIOSeeked",value:function value(){this._remuxer.insertDiscontinuity()}},{key:"_onIOComplete",value:function value(e){var t=e,n=t+1;n<this._mediaDataSource.segments.length?(this._internalAbort(),this._remuxer.flushStashedSamples(),this._loadSegment(n)):(this._remuxer.flushStashedSamples(),this._emitter.emit(k.default.LOADING_COMPLETE),this._disableStatisticsReporter())}},{key:"_onIORedirect",value:function value(e){var t=this._ioctl.extraData;this._mediaDataSource.segments[t].redirectedURL=e}},{key:"_onIORecoveredEarlyEof",value:function value(){this._emitter.emit(k.default.RECOVERED_EARLY_EOF)}},{key:"_onIOException",value:function value(e,t){l.default.e(this.TAG,"IOException: type = "+e+", code = "+t.code+", msg = "+t.msg),this._emitter.emit(k.default.IO_ERROR,e,t),this._disableStatisticsReporter()}},{key:"_onDemuxException",value:function value(e,t){l.default.e(this.TAG,"DemuxException: type = "+e+", info = "+t),this._emitter.emit(k.default.DEMUX_ERROR,e,t)}},{key:"_onRemuxerInitSegmentArrival",value:function value(e,t){this._emitter.emit(k.default.INIT_SEGMENT,e,t)}},{key:"_onRemuxerMediaSegmentArrival",value:function value(e,t){if(null==this._pendingSeekTime&&(this._emitter.emit(k.default.MEDIA_SEGMENT,e,t),null!=this._pendingResolveSeekPoint&&"video"===e)){var n=t.info.syncPoints,i=this._pendingResolveSeekPoint;this._pendingResolveSeekPoint=null,h.default.safari&&n.length>0&&n[0].originalDts===i&&(i=n[0].pts),this._emitter.emit(k.default.RECOMMEND_SEEKPOINT,i)}}},{key:"_enableStatisticsReporter",value:function value(){null==this._statisticsReporter&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))}},{key:"_disableStatisticsReporter",value:function value(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}},{key:"_reportSegmentMediaInfo",value:function value(e){var t=this._mediaInfo.segments[e],n=Object.assign({},t);n.duration=this._mediaInfo.duration,n.segmentCount=this._mediaInfo.segmentCount,delete n.segments,delete n.keyframesIndex,this._emitter.emit(k.default.MEDIA_INFO,n)}},{key:"_reportStatisticsInfo",value:function value(){var e={};e.url=this._ioctl.currentURL,e.hasRedirect=this._ioctl.hasRedirect,e.hasRedirect&&(e.redirectedURL=this._ioctl.currentRedirectedURL),e.speed=this._ioctl.currentSpeed,e.loaderType=this._ioctl.loaderType,e.currentSegmentIndex=this._currentSegmentIndex,e.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(k.default.STATISTICS_INFO,e)}}]),e}());n.default=L},{"../demux/demux-errors.js":16,"../demux/flv-demuxer.js":18,"../io/io-controller.js":23,"../io/loader.js":24,"../remux/mp4-remuxer.js":39,"../utils/browser.js":40,"../utils/logger.js":42,"./media-info.js":7,"./transmuxing-events.js":13,events:2}],13:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var i={IO_ERROR:"io_error",DEMUX_ERROR:"demux_error",INIT_SEGMENT:"init_segment",MEDIA_SEGMENT:"media_segment",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info",RECOMMEND_SEEKPOINT:"recommend_seekpoint"};n.default=i},{}],14:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(n,"__esModule",{value:!0});var r=e("../utils/logger.js"),s=(i(r),e("../utils/logging-control.js")),a=i(s),o=e("../utils/polyfill.js"),u=i(o),l=e("./transmuxing-controller.js"),d=i(l),h=e("./transmuxing-events.js"),f=i(h),c=function c(e){function t(t,n){var i={msg:f.default.INIT_SEGMENT,data:{type:t,data:n}};e.postMessage(i,[n.data])}function n(t,n){var i={msg:f.default.MEDIA_SEGMENT,data:{type:t,data:n}};e.postMessage(i,[n.data])}function i(){var t={msg:f.default.LOADING_COMPLETE};e.postMessage(t)}function r(){var t={msg:f.default.RECOVERED_EARLY_EOF};e.postMessage(t)}function s(t){var n={msg:f.default.MEDIA_INFO,data:t};e.postMessage(n)}function o(t){var n={msg:f.default.METADATA_ARRIVED,data:t};e.postMessage(n)}function l(t){var n={msg:f.default.SCRIPTDATA_ARRIVED,data:t};e.postMessage(n)}function h(t){var n={msg:f.default.STATISTICS_INFO,data:t};e.postMessage(n)}function c(t,n){e.postMessage({msg:f.default.IO_ERROR,data:{type:t,info:n}})}function _(t,n){e.postMessage({msg:f.default.DEMUX_ERROR,data:{type:t,info:n}})}function m(t){e.postMessage({msg:f.default.RECOMMEND_SEEKPOINT,data:t})}function p(t,n){e.postMessage({msg:"logcat_callback",data:{type:t,logcat:n}})}var v=null,g=p.bind(this);u.default.install(),e.addEventListener("message",function(u){switch(u.data.cmd){case"init":v=new d.default(u.data.param[0],u.data.param[1]),v.on(f.default.IO_ERROR,c.bind(this)),v.on(f.default.DEMUX_ERROR,_.bind(this)),v.on(f.default.INIT_SEGMENT,t.bind(this)),v.on(f.default.MEDIA_SEGMENT,n.bind(this)),v.on(f.default.LOADING_COMPLETE,i.bind(this)),v.on(f.default.RECOVERED_EARLY_EOF,r.bind(this)),v.on(f.default.MEDIA_INFO,s.bind(this)),v.on(f.default.METADATA_ARRIVED,o.bind(this)),v.on(f.default.SCRIPTDATA_ARRIVED,l.bind(this)),v.on(f.default.STATISTICS_INFO,h.bind(this)),v.on(f.default.RECOMMEND_SEEKPOINT,m.bind(this));break;case"destroy":v&&(v.destroy(),v=null),e.postMessage({msg:"destroyed"});break;case"start":v.start();break;case"stop":v.stop();break;case"seek":v.seek(u.data.param);break;case"pause":v.pause();break;case"resume":v.resume();break;case"logging_config":var p=u.data.param;a.default.applyConfig(p),!0===p.enableCallback?a.default.addLogListener(g):a.default.removeLogListener(g)}})};n.default=c},{"../utils/logger.js":42,"../utils/logging-control.js":43,"../utils/polyfill.js":44,"./transmuxing-controller.js":12,"./transmuxing-events.js":13}],15:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=e("../utils/logger.js"),o=i(a),u=e("../utils/utf8-conv.js"),l=i(u),d=e("../utils/exception.js"),h=function(){var e=new ArrayBuffer(2);return new DataView(e).setInt16(0,256,!0),256===new Int16Array(e)[0]}(),f=function(){function e(){r(this,e)}return s(e,null,[{key:"parseScriptData",value:function value(t,n,i){var r={};try{var s=e.parseValue(t,n,i),a=e.parseValue(t,n+s.size,i-s.size);r[s.data]=a.data}catch(e){o.default.e("AMF",e.toString())}return r}},{key:"parseObject",value:function value(t,n,i){if(i<3)throw new d.IllegalStateException("Data not enough when parse ScriptDataObject");var r=e.parseString(t,n,i),s=e.parseValue(t,n+r.size,i-r.size),a=s.objectEnd;return{data:{name:r.data,value:s.data},size:r.size+s.size,objectEnd:a}}},{key:"parseVariable",value:function value(t,n,i){return e.parseObject(t,n,i)}},{key:"parseString",value:function value(e,t,n){if(n<2)throw new d.IllegalStateException("Data not enough when parse String");var i=new DataView(e,t,n),r=i.getUint16(0,!h),s=void 0;return s=r>0?(0,l.default)(new Uint8Array(e,t+2,r)):"",{data:s,size:2+r}}},{key:"parseLongString",value:function value(e,t,n){if(n<4)throw new d.IllegalStateException("Data not enough when parse LongString");var i=new DataView(e,t,n),r=i.getUint32(0,!h),s=void 0;return s=r>0?(0,l.default)(new Uint8Array(e,t+4,r)):"",{data:s,size:4+r}}},{key:"parseDate",value:function value(e,t,n){if(n<10)throw new d.IllegalStateException("Data size invalid when parse Date");var i=new DataView(e,t,n),r=i.getFloat64(0,!h);return r+=60*i.getInt16(8,!h)*1e3,{data:new Date(r),size:10}}},{key:"parseValue",value:function value(t,n,i){if(i<1)throw new d.IllegalStateException("Data not enough when parse Value");var r=new DataView(t,n,i),s=1,a=r.getUint8(0),u=void 0,l=!1;try{switch(a){case 0:u=r.getFloat64(1,!h),s+=8;break;case 1:u=!!r.getUint8(1),s+=1;break;case 2:var f=e.parseString(t,n+1,i-1);u=f.data,s+=f.size;break;case 3:u={};var c=0;for(9==(16777215&r.getUint32(i-4,!h))&&(c=3);s<i-4;){var _=e.parseObject(t,n+s,i-s-c);if(_.objectEnd)break;u[_.data.name]=_.data.value,s+=_.size}if(s<=i-3){9===(16777215&r.getUint32(s-1,!h))&&(s+=3)}break;case 8:u={},s+=4;var m=0;for(9==(16777215&r.getUint32(i-4,!h))&&(m=3);s<i-8;){var p=e.parseVariable(t,n+s,i-s-m);if(p.objectEnd)break;u[p.data.name]=p.data.value,s+=p.size}if(s<=i-3){9===(16777215&r.getUint32(s-1,!h))&&(s+=3)}break;case 9:u=void 0,s=1,l=!0;break;case 10:u=[];var v=r.getUint32(1,!h);s+=4;for(var g=0;g<v;g++){var y=e.parseValue(t,n+s,i-s);u.push(y.data),s+=y.size}break;case 11:var b=e.parseDate(t,n+1,i-1);u=b.data,s+=b.size;break;case 12:var E=e.parseString(t,n+1,i-1);u=E.data,s+=E.size;break;default:s=i,o.default.w("AMF","Unsupported AMF value type "+a)}}catch(e){o.default.e("AMF",e.toString())}return{data:u,size:s,objectEnd:l}}}]),e}();n.default=f},{"../utils/exception.js":41,"../utils/logger.js":42,"../utils/utf8-conv.js":45}],16:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var i={OK:"OK",FORMAT_ERROR:"FormatError",FORMAT_UNSUPPORTED:"FormatUnsupported",CODEC_UNSUPPORTED:"CodecUnsupported"};n.default=i},{}],17:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=e("../utils/exception.js"),a=function(){function e(t){i(this,e),this.TAG="ExpGolomb",this._buffer=t,this._buffer_index=0,this._total_bytes=t.byteLength,this._total_bits=8*t.byteLength,this._current_word=0,this._current_word_bits_left=0}return r(e,[{key:"destroy",value:function value(){this._buffer=null}},{key:"_fillCurrentWord",value:function value(){var e=this._total_bytes-this._buffer_index;if(e<=0)throw new s.IllegalStateException("ExpGolomb: _fillCurrentWord() but no bytes available");var t=Math.min(4,e),n=new Uint8Array(4);n.set(this._buffer.subarray(this._buffer_index,this._buffer_index+t)),this._current_word=new DataView(n.buffer).getUint32(0,!1),this._buffer_index+=t,this._current_word_bits_left=8*t}},{key:"readBits",value:function value(e){if(e>32)throw new s.InvalidArgumentException("ExpGolomb: readBits() bits exceeded max 32bits!");if(e<=this._current_word_bits_left){var t=this._current_word>>>32-e;return this._current_word<<=e,this._current_word_bits_left-=e,t}var n=this._current_word_bits_left?this._current_word:0;n>>>=32-this._current_word_bits_left;var i=e-this._current_word_bits_left;this._fillCurrentWord();var r=Math.min(i,this._current_word_bits_left),a=this._current_word>>>32-r;return this._current_word<<=r,this._current_word_bits_left-=r,n=n<<r|a}},{key:"readBool",value:function value(){return 1===this.readBits(1)}},{key:"readByte",value:function value(){return this.readBits(8)}},{key:"_skipLeadingZero",value:function value(){var e=void 0;for(e=0;e<this._current_word_bits_left;e++){if(0!=(this._current_word&2147483648>>>e))return this._current_word<<=e,this._current_word_bits_left-=e,e}return this._fillCurrentWord(),e+this._skipLeadingZero()}},{key:"readUEG",value:function value(){var e=this._skipLeadingZero();return this.readBits(e+1)-1}},{key:"readSEG",value:function value(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}}]),e}();n.default=a},{"../utils/exception.js":41}],18:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}Object.defineProperty(n,"__esModule",{value:!0});var a="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},o=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),u=e("../utils/logger.js"),l=i(u),d=e("./amf-parser.js"),h=i(d),f=e("./sps-parser.js"),c=i(f),_=e("./demux-errors.js"),m=i(_),p=e("../core/media-info.js"),v=i(p),g=e("../utils/exception.js"),y=function(){function e(t,n){r(this,e),this.TAG="FLVDemuxer",this._config=n,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=t.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=t.hasAudioTrack,this._hasVideo=t.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new v.default,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=function(){var e=new ArrayBuffer(2);return new DataView(e).setInt16(0,256,!0),256===new Int16Array(e)[0]}()}return o(e,[{key:"destroy",value:function value(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null}},{key:"bindDataSource",value:function value(e){return e.onDataArrival=this.parseChunks.bind(this),this}},{key:"resetMediaInfo",value:function value(){this._mediaInfo=new v.default}},{key:"_isInitialMetadataDispatched",value:function value(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!(this._hasAudio||!this._hasVideo)&&this._videoInitialMetadataDispatched}},{key:"parseChunks",value:function value(t,n){if(!(this._onError&&this._onMediaInfo&&this._onTrackMetadata&&this._onDataAvailable))throw new g.IllegalStateException("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");var i=0,r=this._littleEndian;if(0===n){if(!(t.byteLength>13))return 0;i=e.probe(t).dataOffset}if(this._firstParse){this._firstParse=!1,n+i!==this._dataOffset&&l.default.w(this.TAG,"First time parsing but chunk byteStart invalid!");0!==new DataView(t,i).getUint32(0,!r)&&l.default.w(this.TAG,"PrevTagSize0 !== 0 !!!"),i+=4}for(;i<t.byteLength;){this._dispatch=!0;var s=new DataView(t,i);if(i+11+4>t.byteLength)break;var a=s.getUint8(0),o=16777215&s.getUint32(0,!r);if(i+11+o+4>t.byteLength)break;if(8===a||9===a||18===a){var u=s.getUint8(4),d=s.getUint8(5),h=s.getUint8(6),f=s.getUint8(7),c=h|d<<8|u<<16|f<<24;0!==(16777215&s.getUint32(7,!r))&&l.default.w(this.TAG,"Meet tag which has StreamID != 0!");var _=i+11;switch(a){case 8:this._parseAudioData(t,_,o,c);break;case 9:this._parseVideoData(t,_,o,c,n+i);break;case 18:this._parseScriptData(t,_,o)}var m=s.getUint32(11+o,!r);m!==11+o&&l.default.w(this.TAG,"Invalid PrevTagSize "+m),i+=11+o+4}else l.default.w(this.TAG,"Unsupported tag type "+a+", skipped"),i+=11+o+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),i}},{key:"_parseScriptData",value:function value(e,t,n){var i=h.default.parseScriptData(e,t,n);if(i.hasOwnProperty("onMetaData")){if(null==i.onMetaData||"object"!==a(i.onMetaData))return void l.default.w(this.TAG,"Invalid onMetaData structure!");this._metadata&&l.default.w(this.TAG,"Found another onMetaData tag!"),this._metadata=i;var r=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},r)),"boolean"==typeof r.hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=r.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),"boolean"==typeof r.hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=r.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),"number"==typeof r.audiodatarate&&(this._mediaInfo.audioDataRate=r.audiodatarate),"number"==typeof r.videodatarate&&(this._mediaInfo.videoDataRate=r.videodatarate),"number"==typeof r.width&&(this._mediaInfo.width=r.width),"number"==typeof r.height&&(this._mediaInfo.height=r.height),"number"==typeof r.duration){if(!this._durationOverrided){var s=Math.floor(r.duration*this._timescale);this._duration=s,this._mediaInfo.duration=s}}else this._mediaInfo.duration=0;if("number"==typeof r.framerate){var o=Math.floor(1e3*r.framerate);if(o>0){var u=o/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=u,this._referenceFrameRate.fps_num=o,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=u}}if("object"===a(r.keyframes)){this._mediaInfo.hasKeyframesIndex=!0;var d=r.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(d),r.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=r,l.default.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(i).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},i))}},{key:"_parseKeyframesIndex",value:function value(e){for(var t=[],n=[],i=1;i<e.times.length;i++){var r=this._timestampBase+Math.floor(1e3*e.times[i]);t.push(r),n.push(e.filepositions[i])}return{times:t,filepositions:n}}},{key:"_parseAudioData",value:function value(e,t,n,i){if(n<=1)return void l.default.w(this.TAG,"Flv: Invalid audio packet, missing SoundData payload!");if(!0!==this._hasAudioFlagOverrided||!1!==this._hasAudio){var r=(this._littleEndian,new DataView(e,t,n)),s=r.getUint8(0),a=s>>>4;if(2!==a&&10!==a)return void this._onError(m.default.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+a);var o=0,u=(12&s)>>>2;if(!(u>=0&&u<=4))return void this._onError(m.default.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+u);o=this._flvSoundRateTable[u];var d=1&s,h=this._audioMetadata,f=this._audioTrack;if(h||(!1===this._hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),h=this._audioMetadata={},h.type="audio",h.id=f.id,h.timescale=this._timescale,h.duration=this._duration,h.audioSampleRate=o,h.channelCount=0===d?1:2),10===a){var c=this._parseAACAudioData(e,t+1,n-1);if(void 0==c)return;if(0===c.packetType){h.config&&l.default.w(this.TAG,"Found another AudioSpecificConfig!");var _=c.data;h.audioSampleRate=_.samplingRate,h.channelCount=_.channelCount,h.codec=_.codec,h.originalCodec=_.originalCodec,h.config=_.config,h.refSampleDuration=1024/h.audioSampleRate*h.timescale,l.default.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",h);var p=this._mediaInfo;p.audioCodec=h.originalCodec,p.audioSampleRate=h.audioSampleRate,p.audioChannelCount=h.channelCount,p.hasVideo?null!=p.videoCodec&&(p.mimeType='video/x-flv; codecs="'+p.videoCodec+","+p.audioCodec+'"'):p.mimeType='video/x-flv; codecs="'+p.audioCodec+'"',p.isComplete()&&this._onMediaInfo(p)}else if(1===c.packetType){var v=this._timestampBase+i,g={unit:c.data,length:c.data.byteLength,dts:v,pts:v};f.samples.push(g),f.length+=c.data.length}else l.default.e(this.TAG,"Flv: Unsupported AAC data type "+c.packetType)}else if(2===a){if(!h.codec){var y=this._parseMP3AudioData(e,t+1,n-1,!0);if(void 0==y)return;h.audioSampleRate=y.samplingRate,h.channelCount=y.channelCount,h.codec=y.codec,h.originalCodec=y.originalCodec,h.refSampleDuration=1152/h.audioSampleRate*h.timescale,l.default.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",h);var b=this._mediaInfo;b.audioCodec=h.codec,b.audioSampleRate=h.audioSampleRate,b.audioChannelCount=h.channelCount,b.audioDataRate=y.bitRate,b.hasVideo?null!=b.videoCodec&&(b.mimeType='video/x-flv; codecs="'+b.videoCodec+","+b.audioCodec+'"'):b.mimeType='video/x-flv; codecs="'+b.audioCodec+'"',b.isComplete()&&this._onMediaInfo(b)}var E=this._parseMP3AudioData(e,t+1,n-1,!1);if(void 0==E)return;var S=this._timestampBase+i,k={unit:E,length:E.byteLength,dts:S,pts:S};f.samples.push(k),f.length+=E.length}}}},{key:"_parseAACAudioData",value:function value(e,t,n){if(n<=1)return void l.default.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");var i={},r=new Uint8Array(e,t,n);return i.packetType=r[0],0===r[0]?i.data=this._parseAACAudioSpecificConfig(e,t+1,n-1):i.data=r.subarray(1),i}},{key:"_parseAACAudioSpecificConfig",value:function value(e,t,n){var i=new Uint8Array(e,t,n),r=null,s=0,a=0,o=0,u=null;if(s=a=i[0]>>>3,(o=(7&i[0])<<1|i[1]>>>7)<0||o>=this._mpegSamplingRates.length)return void this._onError(m.default.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");var l=this._mpegSamplingRates[o],d=(120&i[1])>>>3;if(d<0||d>=8)return void this._onError(m.default.FORMAT_ERROR,"Flv: AAC invalid channel configuration");5===s&&(u=(7&i[1])<<1|i[2]>>>7,i[2]);var h=self.navigator.userAgent.toLowerCase();return-1!==h.indexOf("firefox")?o>=6?(s=5,r=new Array(4),u=o-3):(s=2,r=new Array(2),u=o):-1!==h.indexOf("android")?(s=2,r=new Array(2),u=o):(s=5,u=o,r=new Array(4),o>=6?u=o-3:1===d&&(s=2,r=new Array(2),u=o)),r[0]=s<<3,r[0]|=(15&o)>>>1,r[1]=(15&o)<<7,r[1]|=(15&d)<<3,5===s&&(r[1]|=(15&u)>>>1,r[2]=(1&u)<<7,r[2]|=8,r[3]=0),{config:r,samplingRate:l,channelCount:d,codec:"mp4a.40."+s,originalCodec:"mp4a.40."+a}}},{key:"_parseMP3AudioData",value:function value(e,t,n,i){if(n<4)return void l.default.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");var r=(this._littleEndian,new Uint8Array(e,t,n)),s=null;if(i){if(255!==r[0])return;var a=r[1]>>>3&3,o=(6&r[1])>>1,u=(240&r[2])>>>4,d=(12&r[2])>>>2,h=r[3]>>>6&3,f=3!==h?2:1,c=0,_=0;switch(a){case 0:c=this._mpegAudioV25SampleRateTable[d];break;case 2:c=this._mpegAudioV20SampleRateTable[d];break;case 3:c=this._mpegAudioV10SampleRateTable[d]}switch(o){case 1:34,u<this._mpegAudioL3BitRateTable.length&&(_=this._mpegAudioL3BitRateTable[u]);break;case 2:33,u<this._mpegAudioL2BitRateTable.length&&(_=this._mpegAudioL2BitRateTable[u]);break;case 3:32,u<this._mpegAudioL1BitRateTable.length&&(_=this._mpegAudioL1BitRateTable[u])}s={bitRate:_,samplingRate:c,channelCount:f,codec:"mp3",originalCodec:"mp3"}}else s=r;return s}},{key:"_parseVideoData",value:function value(e,t,n,i,r){if(n<=1)return void l.default.w(this.TAG,"Flv: Invalid video packet, missing VideoData payload!");if(!0!==this._hasVideoFlagOverrided||!1!==this._hasVideo){var s=new Uint8Array(e,t,n)[0],a=(240&s)>>>4,o=15&s;if(7!==o)return void this._onError(m.default.CODEC_UNSUPPORTED,"Flv: Unsupported codec in video frame: "+o);this._parseAVCVideoPacket(e,t+1,n-1,i,r,a)}}},{key:"_parseAVCVideoPacket",value:function value(e,t,n,i,r,s){if(n<4)return void l.default.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");var a=this._littleEndian,o=new DataView(e,t,n),u=o.getUint8(0),d=16777215&o.getUint32(0,!a),h=d<<8>>8;if(0===u)this._parseAVCDecoderConfigurationRecord(e,t+4,n-4);else if(1===u)this._parseAVCVideoData(e,t+4,n-4,i,r,s,h);else if(2!==u)return void this._onError(m.default.FORMAT_ERROR,"Flv: Invalid video packet type "+u)}},{key:"_parseAVCDecoderConfigurationRecord",value:function value(e,t,n){if(n<7)return void l.default.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");var i=this._videoMetadata,r=this._videoTrack,s=this._littleEndian,a=new DataView(e,t,n);i?void 0!==i.avcc&&l.default.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(!1===this._hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),i=this._videoMetadata={},i.type="video",i.id=r.id,i.timescale=this._timescale,i.duration=this._duration);var o=a.getUint8(0),u=a.getUint8(1);a.getUint8(2),a.getUint8(3);if(1!==o||0===u)return void this._onError(m.default.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");if(this._naluLengthSize=1+(3&a.getUint8(4)),3!==this._naluLengthSize&&4!==this._naluLengthSize)return void this._onError(m.default.FORMAT_ERROR,"Flv: Strange NaluLengthSizeMinusOne: "+(this._naluLengthSize-1));var d=31&a.getUint8(5);if(0===d)return void this._onError(m.default.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");d>1&&l.default.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: SPS Count = "+d);for(var h=6,f=0;f<d;f++){var _=a.getUint16(h,!s);if(h+=2,0!==_){var p=new Uint8Array(e,t+h,_);h+=_;var v=c.default.parseSPS(p);if(0===f){i.codecWidth=v.codec_size.width,i.codecHeight=v.codec_size.height,i.presentWidth=v.present_size.width,i.presentHeight=v.present_size.height,i.profile=v.profile_string,i.level=v.level_string,i.bitDepth=v.bit_depth,i.chromaFormat=v.chroma_format,i.sarRatio=v.sar_ratio,i.frameRate=v.frame_rate,!1!==v.frame_rate.fixed&&0!==v.frame_rate.fps_num&&0!==v.frame_rate.fps_den||(i.frameRate=this._referenceFrameRate);var g=i.frameRate.fps_den,y=i.frameRate.fps_num;i.refSampleDuration=i.timescale*(g/y);for(var b=p.subarray(1,4),E="avc1.",S=0;S<3;S++){var k=b[S].toString(16);k.length<2&&(k="0"+k),E+=k}i.codec=E;var L=this._mediaInfo;L.width=i.codecWidth,L.height=i.codecHeight,L.fps=i.frameRate.fps,L.profile=i.profile,L.level=i.level,L.refFrames=v.ref_frames,L.chromaFormat=v.chroma_format_string,L.sarNum=i.sarRatio.width,L.sarDen=i.sarRatio.height,L.videoCodec=E,L.hasAudio?null!=L.audioCodec&&(L.mimeType='video/x-flv; codecs="'+L.videoCodec+","+L.audioCodec+'"'):L.mimeType='video/x-flv; codecs="'+L.videoCodec+'"',L.isComplete()&&this._onMediaInfo(L)}}}var R=a.getUint8(h);if(0===R)return void this._onError(m.default.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No PPS");R>1&&l.default.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: PPS Count = "+R),h++;for(var w=0;w<R;w++){var A=a.getUint16(h,!s);h+=2,0!==A&&(h+=A)}i.avcc=new Uint8Array(n),i.avcc.set(new Uint8Array(e,t,n),0),l.default.v(this.TAG,"Parsed AVCDecoderConfigurationRecord"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._videoInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("video",i)}},{key:"_parseAVCVideoData",value:function value(e,t,n,i,r,s,a){for(var o=this._littleEndian,u=new DataView(e,t,n),d=[],h=0,f=0,c=this._naluLengthSize,_=this._timestampBase+i,m=1===s;f<n;){if(f+4>=n){l.default.w(this.TAG,"Malformed Nalu near timestamp "+_+", offset = "+f+", dataSize = "+n);break}var p=u.getUint32(f,!o);if(3===c&&(p>>>=8),p>n-c)return void l.default.w(this.TAG,"Malformed Nalus near timestamp "+_+", NaluSize > DataSize!");var v=31&u.getUint8(f+c);5===v&&(m=!0);var g=new Uint8Array(e,t+f,c+p),y={type:v,data:g};d.push(y),h+=g.byteLength,f+=c+p}if(d.length){var b=this._videoTrack,E={units:d,length:h,isKeyframe:m,dts:_,cts:a,pts:_+a};m&&(E.fileposition=r),b.samples.push(E),b.length+=h}}},{key:"onTrackMetadata",get:function get(){return this._onTrackMetadata},set:function set(e){this._onTrackMetadata=e}},{key:"onMediaInfo",get:function get(){return this._onMediaInfo},set:function set(e){this._onMediaInfo=e}},{key:"onMetaDataArrived",get:function get(){return this._onMetaDataArrived},set:function set(e){this._onMetaDataArrived=e}},{key:"onScriptDataArrived",get:function get(){return this._onScriptDataArrived},set:function set(e){this._onScriptDataArrived=e}},{key:"onError",get:function get(){return this._onError},set:function set(e){this._onError=e}},{key:"onDataAvailable",get:function get(){return this._onDataAvailable},set:function set(e){this._onDataAvailable=e}},{key:"timestampBase",get:function get(){return this._timestampBase},set:function set(e){this._timestampBase=e}},{key:"overridedDuration",get:function get(){return this._duration},set:function set(e){this._durationOverrided=!0,this._duration=e,this._mediaInfo.duration=e}},{key:"overridedHasAudio",set:function set(e){this._hasAudioFlagOverrided=!0,this._hasAudio=e,this._mediaInfo.hasAudio=e}},{key:"overridedHasVideo",set:function set(e){this._hasVideoFlagOverrided=!0,this._hasVideo=e,this._mediaInfo.hasVideo=e}}],[{key:"probe",value:function value(e){var t=new Uint8Array(e),n={match:!1};if(70!==t[0]||76!==t[1]||86!==t[2]||1!==t[3])return n;var i=(4&t[4])>>>2!=0,r=0!=(1&t[4]),a=s(t,5);return a<9?n:{match:!0,consumed:a,dataOffset:a,hasAudioTrack:i,hasVideoTrack:r}}}]),e}();n.default=y},{"../core/media-info.js":7,"../utils/exception.js":41,"../utils/logger.js":42,"./amf-parser.js":15,"./demux-errors.js":16,"./sps-parser.js":19}],19:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=e("./exp-golomb.js"),a=function(e){return e&&e.__esModule?e:{default:e}}(s),o=function(){function e(){i(this,e)}return r(e,null,[{key:"_ebsp2rbsp",value:function value(e){for(var t=e,n=t.byteLength,i=new Uint8Array(n),r=0,s=0;s<n;s++){s>=2&&3===t[s]&&0===t[s-1]&&0===t[s-2]||(i[r]=t[s],r++)}return new Uint8Array(i.buffer,0,r)}},{key:"parseSPS",value:function value(t){var n=e._ebsp2rbsp(t),i=new a.default(n);i.readByte();var r=i.readByte();i.readByte();var s=i.readByte();i.readUEG();var o=e.getProfileString(r),u=e.getLevelString(s),l=1,d=420,h=[0,420,422,444],f=8;if((100===r||110===r||122===r||244===r||44===r||83===r||86===r||118===r||128===r||138===r||144===r)&&(l=i.readUEG(),3===l&&i.readBits(1),l<=3&&(d=h[l]),f=i.readUEG()+8,i.readUEG(),i.readBits(1),i.readBool()))for(var c=3!==l?8:12,_=0;_<c;_++){i.readBool()&&(_<6?e._skipScalingList(i,16):e._skipScalingList(i,64))}i.readUEG();var m=i.readUEG();if(0===m)i.readUEG();else if(1===m){i.readBits(1),i.readSEG(),i.readSEG();for(var p=i.readUEG(),v=0;v<p;v++){i.readSEG()}}var g=i.readUEG();i.readBits(1);var y=i.readUEG(),b=i.readUEG(),E=i.readBits(1);0===E&&i.readBits(1),i.readBits(1);var S=0,k=0,L=0,R=0;i.readBool()&&(S=i.readUEG(),k=i.readUEG(),L=i.readUEG(),R=i.readUEG());var w=1,A=1,T=0,O=!0,C=0,I=0;if(i.readBool()){if(i.readBool()){var D=i.readByte(),x=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2],M=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1];D>0&&D<16?(w=x[D-1],A=M[D-1]):255===D&&(w=i.readByte()<<8|i.readByte(),A=i.readByte()<<8|i.readByte())}if(i.readBool()&&i.readBool(),i.readBool()&&(i.readBits(4),i.readBool()&&i.readBits(24)),i.readBool()&&(i.readUEG(),i.readUEG()),i.readBool()){var j=i.readBits(32),B=i.readBits(32);O=i.readBool(),C=B,I=2*j,T=C/I}}var P=1;1===w&&1===A||(P=w/A);var U=0,N=0;if(0===l)U=1,N=2-E;else{var F=3===l?1:2,G=1===l?2:1;U=F,N=G*(2-E)}var V=16*(y+1),z=16*(b+1)*(2-E);V-=(S+k)*U,z-=(L+R)*N;var H=Math.ceil(V*P);return i.destroy(),i=null,{profile_string:o,level_string:u,bit_depth:f,ref_frames:g,chroma_format:d,chroma_format_string:e.getChromaFormatString(d),frame_rate:{fixed:O,fps:T,fps_den:I,fps_num:C},sar_ratio:{width:w,height:A},codec_size:{width:V,height:z},present_size:{width:H,height:z}}}},{key:"_skipScalingList",value:function value(e,t){for(var n=8,i=8,r=0,s=0;s<t;s++){0!==i&&(r=e.readSEG(),i=(n+r+256)%256),n=0===i?n:i}}},{key:"getProfileString",value:function value(e){switch(e){case 66:return"Baseline";case 77:return"Main";case 88:return"Extended";case 100:return"High";case 110:return"High10";case 122:return"High422";case 244:return"High444";default:return"Unknown"}}},{key:"getLevelString",value:function value(e){return(e/10).toFixed(1)}},{key:"getChromaFormatString",value:function value(e){switch(e){case 420:return"4:2:0";case 422:return"4:2:2";case 444:return"4:4:4";default:return"Unknown"}}}]),e}();n.default=o},{"./exp-golomb.js":17}],20:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n=e;if(null==n||"object"!==(void 0===n?"undefined":o(n)))throw new w.InvalidArgumentException("MediaDataSource must be an javascript object!");if(!n.hasOwnProperty("type"))throw new w.InvalidArgumentException("MediaDataSource must has type field to indicate video file type!");switch(n.type){case"flv":return new g.default(n,t);default:return new b.default(n,t)}}function s(){return c.default.supportMSEH264Playback()}function a(){return c.default.getFeatureList()}Object.defineProperty(n,"__esModule",{value:!0});var o="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},u=e("events"),l=i(u),d=e("./utils/polyfill.js"),h=i(d),f=e("./core/features.js"),c=i(f),_=e("./io/loader.js"),m=e("./io/web-loader.js"),p=i(m),v=e("./player/flv-player.js"),g=i(v),y=e("./player/native-player.js"),b=i(y),E=e("./player/player-events.js"),S=i(E),k=e("./player/player-errors.js"),L=e("./utils/logging-control.js"),R=i(L),w=e("./utils/exception.js");h.default.install();var A={};A.createPlayer=r,A.isSupported=s,A.getFeatureList=a,A.BaseLoader=_.BaseLoader,A.LoaderStatus=_.LoaderStatus,A.LoaderErrors=_.LoaderErrors,A.Events=S.default,A.ErrorTypes=k.ErrorTypes,A.ErrorDetails=k.ErrorDetails,A.FlvPlayer=g.default,A.NativePlayer=b.default,A.LoggingControl=R.default,A.WebLoader=p.default,A.EventEmitter=l.default,Object.defineProperty(A,"version",{enumerable:!0,get:function get(){return"1.5.0"}}),n.default=A},{"./core/features.js":6,"./io/loader.js":24,"./io/web-loader.js":28,"./player/flv-player.js":33,"./player/native-player.js":34,"./player/player-errors.js":35,"./player/player-events.js":36,"./utils/exception.js":41,"./utils/logging-control.js":43,"./utils/polyfill.js":44,events:2}],21:[function(e,t,n){"use strict";t.exports=e("./flv.js").default},{"./flv.js":20}],22:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=(typeof t==="undefined"?"undefined":_typeof(t))&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(typeof t==="undefined"?"undefined":_typeof(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var o="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},u=function e(t,n,i){null===t&&(t=Function.prototype);var r=Object.getOwnPropertyDescriptor(t,n);if(void 0===r){var s=Object.getPrototypeOf(t);return null===s?void 0:e(s,n,i)}if("value"in r)return r.value;var a=r.get;if(void 0!==a)return a.call(i)},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),d=e("../utils/logger.js"),h=(i(d),e("../utils/browser.js")),f=i(h),c=e("./loader.js"),_=e("../utils/exception.js"),m=function(e){function t(e,n){r(this,t);var i=s(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,"fetch-stream-loader"));return i.TAG="FetchStreamLoader",i._seekHandler=e,i._config=n,i._needStash=!0,i._requestAbort=!1,i._contentLength=null,i._receivedLength=0,i._reader=null,i}return a(t,e),l(t,null,[{key:"isSupported",value:function value(){try{var e=f.default.msedge&&f.default.version.minor>=15048,t=!f.default.msedge||e;return self.fetch&&self.ReadableStream&&t}catch(e){return!1}}}]),l(t,[{key:"destroy",value:function value(){this.isWorking()&&this.abort(),u(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"destroy",this).call(this)}},{key:"open",value:function value(e,t){var n=this,i=null;if(self.AbortController){var r=new self.AbortController;i=r.signal,this._fetchAbortController=r}this._dataSource=e,this._range=t;var s=e.url;this._config.reuseRedirectedURL&&void 0!=e.redirectedURL&&(s=e.redirectedURL);var a=this._seekHandler.getConfig(s,t),u=new self.Headers;if("object"===o(a.headers)){var l=a.headers;for(var d in l){l.hasOwnProperty(d)&&u.append(d,l[d])}}var h={method:"GET",headers:u,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade",signal:i};if("object"===o(this._config.headers))for(var f in this._config.headers){u.append(f,this._config.headers[f])}!1===e.cors&&(h.mode="same-origin"),e.withCredentials&&(h.credentials="include"),e.referrerPolicy&&(h.referrerPolicy=e.referrerPolicy),this._status=c.LoaderStatus.kConnecting,self.fetch(a.url,h).then(function(e){if(n._requestAbort)return n._requestAbort=!1,void(n._status=c.LoaderStatus.kIdle);if(e.ok&&e.status>=200&&e.status<=299){if(e.url!==a.url&&n._onURLRedirect){var t=n._seekHandler.removeURLParameters(e.url);n._onURLRedirect(t)}var i=e.headers.get("Content-Length");return null!=i&&(n._contentLength=parseInt(i),0!==n._contentLength&&n._onContentLengthKnown&&n._onContentLengthKnown(n._contentLength)),n._pump.call(n,e.body.getReader())}if(n._status=c.LoaderStatus.kError,!n._onError)throw new _.RuntimeException("FetchStreamLoader: Http code invalid, "+e.status+" "+e.statusText);n._onError(c.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:e.status,msg:e.statusText})}).catch(function(e){if(n._requestAbort)return void(n._requestAbort=!1);if(n._status=c.LoaderStatus.kError,!n._onError)throw e;n._onError(c.LoaderErrors.EXCEPTION,{code:-1,msg:e.message})})}},{key:"abort",value:function value(){this._requestAbort=!0,this._fetchAbortController&&this._fetchAbortController.abort()}},{key:"_pump",value:function value(e){var t=this;return e.read().then(function(n){if(n.done){if(null!==t._contentLength&&t._receivedLength<t._contentLength){t._status=c.LoaderStatus.kError;var i=c.LoaderErrors.EARLY_EOF,r={code:-1,msg:"Fetch stream meet Early-EOF"};if(!t._onError)throw new _.RuntimeException(r.msg);t._onError(i,r)}else t._status=c.LoaderStatus.kComplete,t._onComplete&&t._onComplete(t._range.from,t._range.from+t._receivedLength-1)}else{if(!0===t._requestAbort)return t._requestAbort=!1,t._status=c.LoaderStatus.kComplete,e.cancel();t._status=c.LoaderStatus.kBuffering;var s=n.value.buffer,a=t._range.from+t._receivedLength;t._receivedLength+=s.byteLength,t._onDataArrival&&t._onDataArrival(s,a,t._receivedLength),t._pump(e)}}).catch(function(e){if(11!==e.code||!f.default.msedge){if(t._requestAbort)return void(t._requestAbort=!1);t._status=c.LoaderStatus.kError;var n=0,i=null;if(19!==e.code&&"network error"!==e.message||!(null===t._contentLength||null!==t._contentLength&&t._receivedLength<t._contentLength)?(n=c.LoaderErrors.EXCEPTION,i={code:e.code,msg:e.message}):(n=c.LoaderErrors.EARLY_EOF,i={code:e.code,msg:"Fetch stream meet Early-EOF"}),!t._onError)throw new _.RuntimeException(i.msg);t._onError(n,i)}})}}]),t}(c.BaseLoader);n.default=m},{"../utils/browser.js":40,"../utils/exception.js":41,"../utils/logger.js":42,"./loader.js":24}],23:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=e("../utils/logger.js"),o=i(a),u=e("./speed-sampler.js"),l=i(u),d=e("./loader.js"),h=e("./fetch-stream-loader.js"),f=i(h),c=e("./xhr-moz-chunked-loader.js"),_=i(c),m=e("./xhr-msstream-loader.js"),p=(i(m),e("./xhr-range-loader.js")),v=i(p),g=e("./websocket-loader.js"),y=i(g),b=e("./range-seek-handler.js"),E=i(b),S=e("./param-seek-handler.js"),k=i(S),L=e("../utils/exception.js"),R=function(){function e(t,n,i){r(this,e),this.TAG="IOController",this._config=n,this._extraData=i,this._stashInitialSize=393216,void 0!=n.stashInitialSize&&n.stashInitialSize>0&&(this._stashInitialSize=n.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=3145728,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,!1===n.enableStashBuffer&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=t,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(t.url),this._refTotalLength=t.filesize?t.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new l.default,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}return s(e,[{key:"destroy",value:function value(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null}},{key:"isWorking",value:function value(){return this._loader&&this._loader.isWorking()&&!this._paused}},{key:"isPaused",value:function value(){return this._paused}},{key:"_selectSeekHandler",value:function value(){var e=this._config;if("range"===e.seekType)this._seekHandler=new E.default(this._config.rangeLoadZeroStart);else if("param"===e.seekType){var t=e.seekParamStart||"bstart",n=e.seekParamEnd||"bend";this._seekHandler=new k.default(t,n)}else{if("custom"!==e.seekType)throw new L.InvalidArgumentException("Invalid seekType in config: "+e.seekType);if("function"!=typeof e.customSeekHandler)throw new L.InvalidArgumentException("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new e.customSeekHandler}}},{key:"_selectLoader",value:function value(){if(null!=this._config.customLoader)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=y.default;else if(f.default.isSupported())this._loaderClass=f.default;else if(_.default.isSupported())this._loaderClass=_.default;else{if(!v.default.isSupported())throw new L.RuntimeException("Your browser doesn't support xhr with arraybuffer responseType!");this._loaderClass=v.default}}},{key:"_createLoader",value:function value(){this._loader=new this._loaderClass(this._seekHandler,this._config),!1===this._loader.needStashBuffer&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}},{key:"open",value:function value(e){this._currentRange={from:0,to:-1},e&&(this._currentRange.from=e),this._speedSampler.reset(),e||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))}},{key:"abort",value:function value(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)}},{key:"pause",value:function value(){this.isWorking()&&(this._loader.abort(),0!==this._stashUsed?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)}},{key:"resume",value:function value(){if(this._paused){this._paused=!1;var e=this._resumeFrom;this._resumeFrom=0,this._internalSeek(e,!0)}}},{key:"seek",value:function value(e){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(e,!0)}},{key:"_internalSeek",value:function value(e,t){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(t),this._loader.destroy(),this._loader=null;var n={from:e,to:-1};this._currentRange={from:n.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,n),this._onSeeked&&this._onSeeked()}},{key:"updateUrl",value:function value(e){if(!e||"string"!=typeof e||0===e.length)throw new L.InvalidArgumentException("Url must be a non-empty string!");this._dataSource.url=e}},{key:"_expandBuffer",value:function value(e){for(var t=this._stashSize;t+1048576<e;){t*=2}if((t+=1048576)!==this._bufferSize){var n=new ArrayBuffer(t);if(this._stashUsed>0){var i=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(n,0,t).set(i,0)}this._stashBuffer=n,this._bufferSize=t}}},{key:"_normalizeSpeed",value:function value(e){var t=this._speedNormalizeList,n=t.length-1,i=0,r=0,s=n;if(e<t[0])return t[0];for(;r<=s;){if((i=r+Math.floor((s-r)/2))===n||e>=t[i]&&e<t[i+1])return t[i];t[i]<e?r=i+1:s=i-1}}},{key:"_adjustStashSize",value:function value(e){var t=0;(t=this._config.isLive?e:e<512?e:e>=512&&e<=1024?Math.floor(1.5*e):2*e)>8192&&(t=8192);var n=1024*t+1048576;this._bufferSize<n&&this._expandBuffer(n),this._stashSize=1024*t}},{key:"_dispatchChunks",value:function value(e,t){return this._currentRange.to=t+e.byteLength-1,this._onDataArrival(e,t)}},{key:"_onURLRedirect",value:function value(e){this._redirectedURL=e,this._onRedirect&&this._onRedirect(e)}},{key:"_onContentLengthKnown",value:function value(e){e&&this._fullRequestFlag&&(this._totalLength=e,this._fullRequestFlag=!1)}},{key:"_onLoaderChunkArrival",value:function value(e,t,n){if(!this._onDataArrival)throw new L.IllegalStateException("IOController: No existing consumer (onDataArrival) callback!");if(!this._paused){this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,this._onRecoveredEarlyEof&&this._onRecoveredEarlyEof()),this._speedSampler.addBytes(e.byteLength);var i=this._speedSampler.lastSecondKBps;if(0!==i){var r=this._normalizeSpeed(i);this._speedNormalized!==r&&(this._speedNormalized=r,this._adjustStashSize(r))}if(this._enableStash){if(0===this._stashUsed&&0===this._stashByteStart&&(this._stashByteStart=t),this._stashUsed+e.byteLength<=this._stashSize){var s=new Uint8Array(this._stashBuffer,0,this._stashSize);s.set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength}else{var a=new Uint8Array(this._stashBuffer,0,this._bufferSize);if(this._stashUsed>0){var o=this._stashBuffer.slice(0,this._stashUsed),u=this._dispatchChunks(o,this._stashByteStart);if(u<o.byteLength){if(u>0){var l=new Uint8Array(o,u);a.set(l,0),this._stashUsed=l.byteLength,this._stashByteStart+=u}}else this._stashUsed=0,this._stashByteStart+=u;this._stashUsed+e.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+e.byteLength),a=new Uint8Array(this._stashBuffer,0,this._bufferSize)),a.set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength}else{var d=this._dispatchChunks(e,t);if(d<e.byteLength){var h=e.byteLength-d;h>this._bufferSize&&(this._expandBuffer(h),a=new Uint8Array(this._stashBuffer,0,this._bufferSize)),a.set(new Uint8Array(e,d),0),this._stashUsed+=h,this._stashByteStart=t+d}}}}else if(0===this._stashUsed){var f=this._dispatchChunks(e,t);if(f<e.byteLength){var c=e.byteLength-f;c>this._bufferSize&&this._expandBuffer(c);var _=new Uint8Array(this._stashBuffer,0,this._bufferSize);_.set(new Uint8Array(e,f),0),this._stashUsed+=c,this._stashByteStart=t+f}}else{this._stashUsed+e.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+e.byteLength);var m=new Uint8Array(this._stashBuffer,0,this._bufferSize);m.set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength;var p=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(p<this._stashUsed&&p>0){var v=new Uint8Array(this._stashBuffer,p);m.set(v,0)}this._stashUsed-=p,this._stashByteStart+=p}}}},{key:"_flushStashBuffer",value:function value(e){if(this._stashUsed>0){var t=this._stashBuffer.slice(0,this._stashUsed),n=this._dispatchChunks(t,this._stashByteStart),i=t.byteLength-n;if(n<t.byteLength){if(!e){if(n>0){var r=new Uint8Array(this._stashBuffer,0,this._bufferSize),s=new Uint8Array(t,n);r.set(s,0),this._stashUsed=s.byteLength,this._stashByteStart+=n}return 0}o.default.w(this.TAG,i+" bytes unconsumed data remain when flush buffer, dropped")}return this._stashUsed=0,this._stashByteStart=0,i}return 0}},{key:"_onLoaderComplete",value:function value(e,t){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}},{key:"_onLoaderError",value:function value(e,t){switch(o.default.e(this.TAG,"Loader error, code = "+t.code+", msg = "+t.msg),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,e=d.LoaderErrors.UNRECOVERABLE_EARLY_EOF),e){case d.LoaderErrors.EARLY_EOF:if(!this._config.isLive&&this._totalLength){var n=this._currentRange.to+1;return void(n<this._totalLength&&(o.default.w(this.TAG,"Connection lost, trying reconnect..."),this._isEarlyEofReconnecting=!0,this._internalSeek(n,!1)))}e=d.LoaderErrors.UNRECOVERABLE_EARLY_EOF;break;case d.LoaderErrors.UNRECOVERABLE_EARLY_EOF:case d.LoaderErrors.CONNECTING_TIMEOUT:case d.LoaderErrors.HTTP_STATUS_CODE_INVALID:case d.LoaderErrors.EXCEPTION:}if(!this._onError)throw new L.RuntimeException("IOException: "+t.msg);this._onError(e,t)}},{key:"status",get:function get(){return this._loader.status}},{key:"extraData",get:function get(){return this._extraData},set:function set(e){this._extraData=e}},{key:"onDataArrival",get:function get(){return this._onDataArrival},set:function set(e){this._onDataArrival=e}},{key:"onSeeked",get:function get(){return this._onSeeked},set:function set(e){this._onSeeked=e}},{key:"onError",get:function get(){return this._onError},set:function set(e){this._onError=e}},{key:"onComplete",get:function get(){return this._onComplete},set:function set(e){this._onComplete=e}},{key:"onRedirect",get:function get(){return this._onRedirect},set:function set(e){this._onRedirect=e}},{key:"onRecoveredEarlyEof",get:function get(){return this._onRecoveredEarlyEof},set:function set(e){this._onRecoveredEarlyEof=e}},{key:"currentURL",get:function get(){return this._dataSource.url}},{key:"hasRedirect",get:function get(){return null!=this._redirectedURL||void 0!=this._dataSource.redirectedURL}},{key:"currentRedirectedURL",get:function get(){return this._redirectedURL||this._dataSource.redirectedURL}},{key:"currentSpeed",get:function get(){return this._loaderClass===v.default?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}},{key:"loaderType",get:function get(){return this._loader.type}}]),e}();n.default=R},{"../utils/exception.js":41,"../utils/logger.js":42,"./fetch-stream-loader.js":22,"./loader.js":24,"./param-seek-handler.js":25,"./range-seek-handler.js":26,"./speed-sampler.js":27,"./websocket-loader.js":29,"./xhr-moz-chunked-loader.js":30,"./xhr-msstream-loader.js":31,"./xhr-range-loader.js":32}],24:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0}),n.BaseLoader=n.LoaderErrors=n.LoaderStatus=void 0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=e("../utils/exception.js"),a=n.LoaderStatus={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4};n.LoaderErrors={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"},n.BaseLoader=function(){function e(t){i(this,e),this._type=t||"undefined",this._status=a.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}return r(e,[{key:"destroy",value:function value(){this._status=a.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}},{key:"isWorking",value:function value(){return this._status===a.kConnecting||this._status===a.kBuffering}},{key:"open",value:function value(e,t){throw new s.NotImplementedException("Unimplemented abstract function!")}},{key:"abort",value:function value(){throw new s.NotImplementedException("Unimplemented abstract function!")}},{key:"type",get:function get(){return this._type}},{key:"status",get:function get(){return this._status}},{key:"needStashBuffer",get:function get(){return this._needStash}},{key:"onContentLengthKnown",get:function get(){return this._onContentLengthKnown},set:function set(e){this._onContentLengthKnown=e}},{key:"onURLRedirect",get:function get(){return this._onURLRedirect},set:function set(e){this._onURLRedirect=e}},{key:"onDataArrival",get:function get(){return this._onDataArrival},set:function set(e){this._onDataArrival=e}},{key:"onError",get:function get(){return this._onError},set:function set(e){this._onError=e}},{key:"onComplete",get:function get(){return this._onComplete},set:function set(e){this._onComplete=e}}]),e}()},{"../utils/exception.js":41}],25:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=function(){function e(t,n){i(this,e),this._startName=t,this._endName=n}return r(e,[{key:"getConfig",value:function value(e,t){var n=e;if(0!==t.from||-1!==t.to){var i=!0;-1===n.indexOf("?")&&(n+="?",i=!1),i&&(n+="&"),n+=this._startName+"="+t.from.toString(),-1!==t.to&&(n+="&"+this._endName+"="+t.to.toString())}return{url:n,headers:{}}}},{key:"removeURLParameters",value:function value(e){var t=e.split("?")[0],n=void 0,i=e.indexOf("?");-1!==i&&(n=e.substring(i+1));var r="";if(void 0!=n&&n.length>0)for(var s=n.split("&"),a=0;a<s.length;a++){var o=s[a].split("="),u=a>0;o[0]!==this._startName&&o[0]!==this._endName&&(u&&(r+="&"),r+=s[a])}return 0===r.length?t:t+"?"+r}}]),e}();n.default=s},{}],26:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=function(){function e(t){i(this,e),this._zeroStart=t||!1}return r(e,[{key:"getConfig",value:function value(e,t){var n={};if(0!==t.from||-1!==t.to){var i=void 0;i=-1!==t.to?"bytes="+t.from.toString()+"-"+t.to.toString():"bytes="+t.from.toString()+"-",n.Range=i}else this._zeroStart&&(n.Range="bytes=0-");return{url:e,headers:n}}},{key:"removeURLParameters",value:function value(e){return e}}]),e}();n.default=s},{}],27:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=function(){function e(){i(this,e),this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}return r(e,[{key:"reset",value:function value(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0}},{key:"addBytes",value:function value(e){0===this._firstCheckpoint?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=e,this._totalBytes+=e):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=e,this._totalBytes+=e):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=e,this._totalBytes+=e,this._lastCheckpoint=this._now())}},{key:"currentKBps",get:function get(){this.addBytes(0);var e=(this._now()-this._lastCheckpoint)/1e3;return 0==e&&(e=1),this._intervalBytes/e/1024}},{key:"lastSecondKBps",get:function get(){return this.addBytes(0),0!==this._lastSecondBytes?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}},{key:"averageKBps",get:function get(){var e=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/e/1024}}]),e}();n.default=s},{}],28:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=(typeof t==="undefined"?"undefined":_typeof(t))&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(typeof t==="undefined"?"undefined":_typeof(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),u=e("../utils/logger.js"),l=(i(u),e("./loader.js"),e("./fetch-stream-loader.js")),d=i(l),h=e("./xhr-moz-chunked-loader.js"),f=i(h),c=e("./xhr-msstream-loader.js"),_=(i(c),e("./xhr-range-loader.js")),m=i(_),p=e("./range-seek-handler.js"),v=i(p),g=e("./param-seek-handler.js"),y=i(g),b=e("./websocket-loader.js"),E=i(b),S=e("../config.js"),k=e("../utils/exception.js"),L=e("events"),R=i(L),w=function(e){function t(){r(this,t);var e=s(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.TAG="WebLoader",e._config=(0,S.createDefaultConfig)(),e._loader=null,e._loaderClass=null,e._seekHandler=null,e._isStart=!1,e._isFirst=!0,e}return a(t,e),o(t,[{key:"start",value:function value(e){if(this._isStart)throw"isStart";this._isWebSocketURL=/wss?:\/\/(.+?)/.test(e),this._currentRange={from:0,to:-1},this._selectSeekHandler(),this._selectLoader(),this._createLoader(),this._loader.open({url:e},Object.assign({},this._currentRange)),this._isStart=!0,this._isFirst=!0}},{key:"stop",value:function value(){this._isStart&&(this._loader.abort(),this._isStart=!1)}},{key:"_selectSeekHandler",value:function value(){var e=this._config;if("range"===e.seekType)this._seekHandler=new v.default(this._config.rangeLoadZeroStart);else if("param"===e.seekType){var t=e.seekParamStart||"bstart",n=e.seekParamEnd||"bend";this._seekHandler=new y.default(t,n)}else{if("custom"!==e.seekType)throw new k.InvalidArgumentException("Invalid seekType in config: "+e.seekType);if("function"!=typeof e.customSeekHandler)throw new k.InvalidArgumentException("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new e.customSeekHandler}}},{key:"_selectLoader",value:function value(){if(this._isWebSocketURL)this._loaderClass=E.default;else if(d.default.isSupported())this._loaderClass=d.default;else if(f.default.isSupported())this._loaderClass=f.default;else{if(!m.default.isSupported())throw new k.RuntimeException("Your browser doesn't support xhr with arraybuffer responseType!");this._loaderClass=m.default}}},{key:"_createLoader",value:function value(){this._loader=new this._loaderClass(this._seekHandler,this._config),this._loader.onContentLength=this._onContentLength.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}},{key:"_onURLRedirect",value:function value(){}},{key:"_onContentLength",value:function value(e){}},{key:"_onLoaderChunkArrival",value:function value(e,t,n){this._isFirst&&(this.emit("start"),this._isFirst=!1),this.emit("data",e)}},{key:"_onLoaderComplete",value:function value(e,t){this.emit("close"),this._isFirst=!0}},{key:"_onLoaderError",value:function value(e,t){this.emit("error",t),this._isFirst=!0}}]),t}(R.default);n.default=w},{"../config.js":5,"../utils/exception.js":41,"../utils/logger.js":42,"./fetch-stream-loader.js":22,"./loader.js":24,"./param-seek-handler.js":25,"./range-seek-handler.js":26,"./websocket-loader.js":29,"./xhr-moz-chunked-loader.js":30,"./xhr-msstream-loader.js":31,"./xhr-range-loader.js":32,events:2}],29:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=(typeof t==="undefined"?"undefined":_typeof(t))&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(typeof t==="undefined"?"undefined":_typeof(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var a=function e(t,n,i){null===t&&(t=Function.prototype);var r=Object.getOwnPropertyDescriptor(t,n);if(void 0===r){var s=Object.getPrototypeOf(t);return null===s?void 0:e(s,n,i)}if("value"in r)return r.value;var a=r.get;if(void 0!==a)return a.call(i)},o=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),u=e("../utils/logger.js"),l=(function(e){e&&e.__esModule}(u),e("./loader.js")),d=e("../utils/exception.js"),h=function(e){function t(){i(this,t);var e=r(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,"websocket-loader"));return e.TAG="WebSocketLoader",e._needStash=!0,e._ws=null,e._requestAbort=!1,e._receivedLength=0,e}return s(t,e),o(t,null,[{key:"isSupported",value:function value(){try{return void 0!==self.WebSocket}catch(e){return!1}}}]),o(t,[{key:"destroy",value:function value(){this._ws&&this.abort(),a(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"destroy",this).call(this)}},{key:"open",value:function value(e){try{var t=this._ws=new self.WebSocket(e.url);t.binaryType="arraybuffer",t.onopen=this._onWebSocketOpen.bind(this),t.onclose=this._onWebSocketClose.bind(this),t.onmessage=this._onWebSocketMessage.bind(this),t.onerror=this._onWebSocketError.bind(this),this._status=l.LoaderStatus.kConnecting}catch(e){this._status=l.LoaderStatus.kError;var n={code:e.code,msg:e.message};if(!this._onError)throw new d.RuntimeException(n.msg);this._onError(l.LoaderErrors.EXCEPTION,n)}}},{key:"abort",value:function value(){var e=this._ws;!e||0!==e.readyState&&1!==e.readyState||(this._requestAbort=!0,e.close()),this._ws=null,this._status=l.LoaderStatus.kComplete}},{key:"_onWebSocketOpen",value:function value(e){this._status=l.LoaderStatus.kBuffering}},{key:"_onWebSocketClose",value:function value(e){if(!0===this._requestAbort)return void(this._requestAbort=!1);this._status=l.LoaderStatus.kComplete,this._onComplete&&this._onComplete(0,this._receivedLength-1)}},{key:"_onWebSocketMessage",value:function value(e){var t=this;if(e.data instanceof ArrayBuffer)this._dispatchArrayBuffer(e.data);else if(e.data instanceof Blob){var n=new FileReader;n.onload=function(){t._dispatchArrayBuffer(n.result)},n.readAsArrayBuffer(e.data)}else{this._status=l.LoaderStatus.kError;var i={code:-1,msg:"Unsupported WebSocket message type: "+e.data.constructor.name};if(!this._onError)throw new d.RuntimeException(i.msg);this._onError(l.LoaderErrors.EXCEPTION,i)}}},{key:"_dispatchArrayBuffer",value:function value(e){var t=e,n=this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,n,this._receivedLength)}},{key:"_onWebSocketError",value:function value(e){this._status=l.LoaderStatus.kError;var t={code:e.code,msg:e.message};if(!this._onError)throw new d.RuntimeException(t.msg);this._onError(l.LoaderErrors.EXCEPTION,t)}}]),t}(l.BaseLoader);n.default=h},{"../utils/exception.js":41,"../utils/logger.js":42,"./loader.js":24}],30:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=(typeof t==="undefined"?"undefined":_typeof(t))&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(typeof t==="undefined"?"undefined":_typeof(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var a="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},o=function e(t,n,i){null===t&&(t=Function.prototype);var r=Object.getOwnPropertyDescriptor(t,n);if(void 0===r){var s=Object.getPrototypeOf(t);return null===s?void 0:e(s,n,i)}if("value"in r)return r.value;var a=r.get;if(void 0!==a)return a.call(i)},u=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),l=e("../utils/logger.js"),d=function(e){return e&&e.__esModule?e:{default:e}}(l),h=e("./loader.js"),f=e("../utils/exception.js"),c=function(e){function t(e,n){i(this,t);var s=r(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,"xhr-moz-chunked-loader"));return s.TAG="MozChunkedLoader",s._seekHandler=e,s._config=n,s._needStash=!0,s._xhr=null,s._requestAbort=!1,s._contentLength=null,s._receivedLength=0,s}return s(t,e),u(t,null,[{key:"isSupported",value:function value(){try{var e=new XMLHttpRequest;return e.open("GET","https://example.com",!0),e.responseType="moz-chunked-arraybuffer","moz-chunked-arraybuffer"===e.responseType}catch(e){return d.default.w("MozChunkedLoader",e.message),!1}}}]),u(t,[{key:"destroy",value:function value(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onloadend=null,this._xhr.onerror=null,this._xhr=null),o(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"destroy",this).call(this)}},{key:"open",value:function value(e,t){this._dataSource=e,this._range=t;var n=e.url;this._config.reuseRedirectedURL&&void 0!=e.redirectedURL&&(n=e.redirectedURL);var i=this._seekHandler.getConfig(n,t);this._requestURL=i.url;var r=this._xhr=new XMLHttpRequest;if(r.open("GET",i.url,!0),r.responseType="moz-chunked-arraybuffer",r.onreadystatechange=this._onReadyStateChange.bind(this),r.onprogress=this._onProgress.bind(this),r.onloadend=this._onLoadEnd.bind(this),r.onerror=this._onXhrError.bind(this),e.withCredentials&&(r.withCredentials=!0),"object"===a(i.headers)){var s=i.headers;for(var o in s){s.hasOwnProperty(o)&&r.setRequestHeader(o,s[o])}}if("object"===a(this._config.headers)){var u=this._config.headers;for(var l in u){u.hasOwnProperty(l)&&r.setRequestHeader(l,u[l])}}this._status=h.LoaderStatus.kConnecting,r.send()}},{key:"abort",value:function value(){this._requestAbort=!0,this._xhr&&this._xhr.abort(),this._status=h.LoaderStatus.kComplete}},{key:"_onReadyStateChange",value:function value(e){var t=e.target;if(2===t.readyState){if(void 0!=t.responseURL&&t.responseURL!==this._requestURL&&this._onURLRedirect){var n=this._seekHandler.removeURLParameters(t.responseURL);this._onURLRedirect(n)}if(0!==t.status&&(t.status<200||t.status>299)){if(this._status=h.LoaderStatus.kError,!this._onError)throw new f.RuntimeException("MozChunkedLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(h.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}else this._status=h.LoaderStatus.kBuffering}}},{key:"_onProgress",value:function value(e){if(this._status!==h.LoaderStatus.kError){null===this._contentLength&&null!==e.total&&0!==e.total&&(this._contentLength=e.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));var t=e.target.response,n=this._range.from+this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,n,this._receivedLength)}}},{key:"_onLoadEnd",value:function value(e){if(!0===this._requestAbort)return void(this._requestAbort=!1);this._status!==h.LoaderStatus.kError&&(this._status=h.LoaderStatus.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1))}},{key:"_onXhrError",value:function value(e){this._status=h.LoaderStatus.kError;var t=0,n=null;if(this._contentLength&&e.loaded<this._contentLength?(t=h.LoaderErrors.EARLY_EOF,n={code:-1,msg:"Moz-Chunked stream meet Early-Eof"}):(t=h.LoaderErrors.EXCEPTION,n={code:-1,msg:e.constructor.name+" "+e.type}),!this._onError)throw new f.RuntimeException(n.msg);this._onError(t,n)}}]),t}(h.BaseLoader);n.default=c},{"../utils/exception.js":41,"../utils/logger.js":42,"./loader.js":24}],31:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=(typeof t==="undefined"?"undefined":_typeof(t))&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(typeof t==="undefined"?"undefined":_typeof(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var a="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},o=function e(t,n,i){null===t&&(t=Function.prototype);var r=Object.getOwnPropertyDescriptor(t,n);if(void 0===r){var s=Object.getPrototypeOf(t);return null===s?void 0:e(s,n,i)}if("value"in r)return r.value;var a=r.get;if(void 0!==a)return a.call(i)},u=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),l=e("../utils/logger.js"),d=function(e){return e&&e.__esModule?e:{default:e}}(l),h=e("./loader.js"),f=e("../utils/exception.js"),c=function(e){function t(e,n){i(this,t);var s=r(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,"xhr-msstream-loader"));return s.TAG="MSStreamLoader",s._seekHandler=e,s._config=n,s._needStash=!0,s._xhr=null,s._reader=null,s._totalRange=null,s._currentRange=null,s._currentRequestURL=null,s._currentRedirectedURL=null,s._contentLength=null,s._receivedLength=0,s._bufferLimit=16777216,s._lastTimeBufferSize=0,s._isReconnecting=!1,s}return s(t,e),u(t,null,[{key:"isSupported",value:function value(){try{if(void 0===self.MSStream||void 0===self.MSStreamReader)return!1;var e=new XMLHttpRequest;return e.open("GET","https://example.com",!0),e.responseType="ms-stream","ms-stream"===e.responseType}catch(e){return d.default.w("MSStreamLoader",e.message),!1}}}]),u(t,[{key:"destroy",value:function value(){this.isWorking()&&this.abort(),this._reader&&(this._reader.onprogress=null,this._reader.onload=null,this._reader.onerror=null,this._reader=null),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr=null),o(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"destroy",this).call(this)}},{key:"open",value:function value(e,t){this._internalOpen(e,t,!1)}},{key:"_internalOpen",value:function value(e,t,n){this._dataSource=e,n?this._currentRange=t:this._totalRange=t;var i=e.url;this._config.reuseRedirectedURL&&(void 0!=this._currentRedirectedURL?i=this._currentRedirectedURL:void 0!=e.redirectedURL&&(i=e.redirectedURL));var r=this._seekHandler.getConfig(i,t);this._currentRequestURL=r.url;var s=this._reader=new self.MSStreamReader;s.onprogress=this._msrOnProgress.bind(this),s.onload=this._msrOnLoad.bind(this),s.onerror=this._msrOnError.bind(this);var o=this._xhr=new XMLHttpRequest;if(o.open("GET",r.url,!0),o.responseType="ms-stream",o.onreadystatechange=this._xhrOnReadyStateChange.bind(this),o.onerror=this._xhrOnError.bind(this),e.withCredentials&&(o.withCredentials=!0),"object"===a(r.headers)){var u=r.headers;for(var l in u){u.hasOwnProperty(l)&&o.setRequestHeader(l,u[l])}}if("object"===a(this._config.headers)){var d=this._config.headers;for(var f in d){d.hasOwnProperty(f)&&o.setRequestHeader(f,d[f])}}this._isReconnecting?this._isReconnecting=!1:this._status=h.LoaderStatus.kConnecting,o.send()}},{key:"abort",value:function value(){this._internalAbort(),this._status=h.LoaderStatus.kComplete}},{key:"_internalAbort",value:function value(){this._reader&&(1===this._reader.readyState&&this._reader.abort(),this._reader.onprogress=null,this._reader.onload=null,this._reader.onerror=null,this._reader=null),this._xhr&&(this._xhr.abort(),this._xhr.onreadystatechange=null,this._xhr=null)}},{key:"_xhrOnReadyStateChange",value:function value(e){var t=e.target;if(2===t.readyState){if(t.status>=200&&t.status<=299){if(this._status=h.LoaderStatus.kBuffering,void 0!=t.responseURL){var n=this._seekHandler.removeURLParameters(t.responseURL);t.responseURL!==this._currentRequestURL&&n!==this._currentRedirectedURL&&(this._currentRedirectedURL=n,this._onURLRedirect&&this._onURLRedirect(n))}var i=t.getResponseHeader("Content-Length");if(null!=i&&null==this._contentLength){var r=parseInt(i);r>0&&(this._contentLength=r,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength))}}else{if(this._status=h.LoaderStatus.kError,!this._onError)throw new f.RuntimeException("MSStreamLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(h.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}}else if(3===t.readyState&&t.status>=200&&t.status<=299){this._status=h.LoaderStatus.kBuffering;var s=t.response;this._reader.readAsArrayBuffer(s)}}},{key:"_xhrOnError",value:function value(e){this._status=h.LoaderStatus.kError;var t=h.LoaderErrors.EXCEPTION,n={code:-1,msg:e.constructor.name+" "+e.type};if(!this._onError)throw new f.RuntimeException(n.msg);this._onError(t,n)}},{key:"_msrOnProgress",value:function value(e){var t=e.target,n=t.result;if(null==n)return void this._doReconnectIfNeeded();var i=n.slice(this._lastTimeBufferSize);this._lastTimeBufferSize=n.byteLength;var r=this._totalRange.from+this._receivedLength;this._receivedLength+=i.byteLength,this._onDataArrival&&this._onDataArrival(i,r,this._receivedLength),n.byteLength>=this._bufferLimit&&(d.default.v(this.TAG,"MSStream buffer exceeded max size near "+(r+i.byteLength)+", reconnecting..."),this._doReconnectIfNeeded())}},{key:"_doReconnectIfNeeded",value:function value(){if(null==this._contentLength||this._receivedLength<this._contentLength){this._isReconnecting=!0,this._lastTimeBufferSize=0,this._internalAbort();var e={from:this._totalRange.from+this._receivedLength,to:-1};this._internalOpen(this._dataSource,e,!0)}}},{key:"_msrOnLoad",value:function value(e){this._status=h.LoaderStatus.kComplete,this._onComplete&&this._onComplete(this._totalRange.from,this._totalRange.from+this._receivedLength-1)}},{key:"_msrOnError",value:function value(e){this._status=h.LoaderStatus.kError;var t=0,n=null;if(this._contentLength&&this._receivedLength<this._contentLength?(t=h.LoaderErrors.EARLY_EOF,n={code:-1,msg:"MSStream meet Early-Eof"}):(t=h.LoaderErrors.EARLY_EOF,n={code:-1,msg:e.constructor.name+" "+e.type}),!this._onError)throw new f.RuntimeException(n.msg);this._onError(t,n)}}]),t}(h.BaseLoader);n.default=c},{"../utils/exception.js":41,"../utils/logger.js":42,"./loader.js":24}],32:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=(typeof t==="undefined"?"undefined":_typeof(t))&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(typeof t==="undefined"?"undefined":_typeof(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var o="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},u=function e(t,n,i){null===t&&(t=Function.prototype);var r=Object.getOwnPropertyDescriptor(t,n);if(void 0===r){var s=Object.getPrototypeOf(t);return null===s?void 0:e(s,n,i)}if("value"in r)return r.value;var a=r.get;if(void 0!==a)return a.call(i)},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),d=e("../utils/logger.js"),h=i(d),f=e("./speed-sampler.js"),c=i(f),_=e("./loader.js"),m=e("../utils/exception.js"),p=function(e){function t(e,n){r(this,t);var i=s(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,"xhr-range-loader"));return i.TAG="RangeLoader",i._seekHandler=e,i._config=n,i._needStash=!1,i._chunkSizeKBList=[128,256,384,512,768,1024,1536,2048,3072,4096,5120,6144,7168,8192],i._currentChunkSizeKB=384,i._currentSpeedNormalized=0,i._zeroSpeedChunkCount=0,i._xhr=null,i._speedSampler=new c.default,i._requestAbort=!1,i._waitForTotalLength=!1,i._totalLengthReceived=!1,i._currentRequestURL=null,i._currentRedirectedURL=null,i._currentRequestRange=null,i._totalLength=null,i._contentLength=null,i._receivedLength=0,i._lastTimeLoaded=0,i}return a(t,e),l(t,null,[{key:"isSupported",value:function value(){try{var e=new XMLHttpRequest;return e.open("GET","https://example.com",!0),e.responseType="arraybuffer","arraybuffer"===e.responseType}catch(e){return h.default.w("RangeLoader",e.message),!1}}}]),l(t,[{key:"destroy",value:function value(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr=null),u(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"destroy",this).call(this)}},{key:"open",value:function value(e,t){this._dataSource=e,this._range=t,this._status=_.LoaderStatus.kConnecting;var n=!1;void 0!=this._dataSource.filesize&&0!==this._dataSource.filesize&&(n=!0,this._totalLength=this._dataSource.filesize),this._totalLengthReceived||n?this._openSubRange():(this._waitForTotalLength=!0,this._internalOpen(this._dataSource,{from:0,to:-1}))}},{key:"_openSubRange",value:function value(){var e=1024*this._currentChunkSizeKB,t=this._range.from+this._receivedLength,n=t+e;null!=this._contentLength&&n-this._range.from>=this._contentLength&&(n=this._range.from+this._contentLength-1),this._currentRequestRange={from:t,to:n},this._internalOpen(this._dataSource,this._currentRequestRange)}},{key:"_internalOpen",value:function value(e,t){this._lastTimeLoaded=0;var n=e.url;this._config.reuseRedirectedURL&&(void 0!=this._currentRedirectedURL?n=this._currentRedirectedURL:void 0!=e.redirectedURL&&(n=e.redirectedURL));var i=this._seekHandler.getConfig(n,t);this._currentRequestURL=i.url;var r=this._xhr=new XMLHttpRequest;if(r.open("GET",i.url,!0),r.responseType="arraybuffer",r.onreadystatechange=this._onReadyStateChange.bind(this),r.onprogress=this._onProgress.bind(this),r.onload=this._onLoad.bind(this),r.onerror=this._onXhrError.bind(this),e.withCredentials&&(r.withCredentials=!0),"object"===o(i.headers)){var s=i.headers;for(var a in s){s.hasOwnProperty(a)&&r.setRequestHeader(a,s[a])}}if("object"===o(this._config.headers)){var u=this._config.headers;for(var l in u){u.hasOwnProperty(l)&&r.setRequestHeader(l,u[l])}}r.send()}},{key:"abort",value:function value(){this._requestAbort=!0,this._internalAbort(),this._status=_.LoaderStatus.kComplete}},{key:"_internalAbort",value:function value(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)}},{key:"_onReadyStateChange",value:function value(e){var t=e.target;if(2===t.readyState){if(void 0!=t.responseURL){var n=this._seekHandler.removeURLParameters(t.responseURL);t.responseURL!==this._currentRequestURL&&n!==this._currentRedirectedURL&&(this._currentRedirectedURL=n,this._onURLRedirect&&this._onURLRedirect(n))}if(t.status>=200&&t.status<=299){if(this._waitForTotalLength)return;this._status=_.LoaderStatus.kBuffering}else{if(this._status=_.LoaderStatus.kError,!this._onError)throw new m.RuntimeException("RangeLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(_.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}}}},{key:"_onProgress",value:function value(e){if(this._status!==_.LoaderStatus.kError){if(null===this._contentLength){var t=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,t=!0;var n=e.total;this._internalAbort(),null!=n&0!==n&&(this._totalLength=n)}if(-1===this._range.to?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,t)return void this._openSubRange();this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}var i=e.loaded-this._lastTimeLoaded;this._lastTimeLoaded=e.loaded,this._speedSampler.addBytes(i)}}},{key:"_normalizeSpeed",value:function value(e){var t=this._chunkSizeKBList,n=t.length-1,i=0,r=0,s=n;if(e<t[0])return t[0];for(;r<=s;){if((i=r+Math.floor((s-r)/2))===n||e>=t[i]&&e<t[i+1])return t[i];t[i]<e?r=i+1:s=i-1}}},{key:"_onLoad",value:function value(e){if(this._status!==_.LoaderStatus.kError){if(this._waitForTotalLength)return void(this._waitForTotalLength=!1);this._lastTimeLoaded=0;var t=this._speedSampler.lastSecondKBps;if(0===t&&++this._zeroSpeedChunkCount>=3&&(t=this._speedSampler.currentKBps),0!==t){var n=this._normalizeSpeed(t);this._currentSpeedNormalized!==n&&(this._currentSpeedNormalized=n,this._currentChunkSizeKB=n)}var i=e.target.response,r=this._range.from+this._receivedLength;this._receivedLength+=i.byteLength;var s=!1;null!=this._contentLength&&this._receivedLength<this._contentLength?this._openSubRange():s=!0,this._onDataArrival&&this._onDataArrival(i,r,this._receivedLength),s&&(this._status=_.LoaderStatus.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1))}}},{key:"_onXhrError",value:function value(e){this._status=_.LoaderStatus.kError;var t=0,n=null;if(this._contentLength&&this._receivedLength>0&&this._receivedLength<this._contentLength?(t=_.LoaderErrors.EARLY_EOF,n={code:-1,msg:"RangeLoader meet Early-Eof"}):(t=_.LoaderErrors.EXCEPTION,n={code:-1,msg:e.constructor.name+" "+e.type}),!this._onError)throw new m.RuntimeException(n.msg);this._onError(t,n)}},{key:"currentSpeed",get:function get(){return this._speedSampler.lastSecondKBps}}]),t}(_.BaseLoader);n.default=p},{"../utils/exception.js":41,"../utils/logger.js":42,"./loader.js":24,"./speed-sampler.js":27}],33:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},a=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),o=e("events"),u=i(o),l=e("../utils/logger.js"),d=i(l),h=e("../utils/browser.js"),f=i(h),c=e("./player-events.js"),_=i(c),m=e("../core/transmuxer.js"),p=i(m),v=e("../core/transmuxing-events.js"),g=i(v),y=e("../core/mse-controller.js"),b=i(y),E=e("../core/mse-events.js"),S=i(E),k=e("./player-errors.js"),L=e("../config.js"),R=e("../utils/exception.js"),w=function(){function e(t,n){if(r(this,e),this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new u.default,this._config=(0,L.createDefaultConfig)(),"object"===(void 0===n?"undefined":s(n))&&Object.assign(this._config,n),"flv"!==t.type.toLowerCase())throw new R.InvalidArgumentException("FlvPlayer requires an flv MediaDataSource input!");!0===t.isLive&&(this._config.isLive=!0),this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this),onvSeeking:this._onvSeeking.bind(this),onvCanPlay:this._onvCanPlay.bind(this),onvStalled:this._onvStalled.bind(this),onvProgress:this._onvProgress.bind(this)},self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now,this._pendingSeekTime=null,this._requestSetTime=!1,this._seekpointRecord=null,this._progressChecker=null,this._mediaDataSource=t,this._mediaElement=null,this._msectl=null,this._transmuxer=null,this._mseSourceOpened=!1,this._hasPendingLoad=!1,this._receivedCanPlay=!1,this._mediaInfo=null,this._statisticsInfo=null;var i=f.default.chrome&&(f.default.version.major<50||50===f.default.version.major&&f.default.version.build<2661);this._alwaysSeekKeyframe=!!(i||f.default.msedge||f.default.msie),this._alwaysSeekKeyframe&&(this._config.accurateSeek=!1)}return a(e,[{key:"destroy",value:function value(){null!=this._progressChecker&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._transmuxer&&this.unload(),this._mediaElement&&this.detachMediaElement(),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}},{key:"on",value:function value(e,t){var n=this;e===_.default.MEDIA_INFO?null!=this._mediaInfo&&Promise.resolve().then(function(){n._emitter.emit(_.default.MEDIA_INFO,n.mediaInfo)}):e===_.default.STATISTICS_INFO&&null!=this._statisticsInfo&&Promise.resolve().then(function(){n._emitter.emit(_.default.STATISTICS_INFO,n.statisticsInfo)}),this._emitter.addListener(e,t)}},{key:"off",value:function value(e,t){this._emitter.removeListener(e,t)}},{key:"attachMediaElement",value:function value(e){var t=this;if(this._mediaElement=e,e.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),e.addEventListener("seeking",this.e.onvSeeking),e.addEventListener("canplay",this.e.onvCanPlay),e.addEventListener("stalled",this.e.onvStalled),e.addEventListener("progress",this.e.onvProgress),this._msectl=new b.default(this._config),this._msectl.on(S.default.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(S.default.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(S.default.SOURCE_OPEN,function(){t._mseSourceOpened=!0,t._hasPendingLoad&&(t._hasPendingLoad=!1,t.load())}),this._msectl.on(S.default.ERROR,function(e){t._emitter.emit(_.default.ERROR,k.ErrorTypes.MEDIA_ERROR,k.ErrorDetails.MEDIA_MSE_ERROR,e)}),this._msectl.attachMediaElement(e),null!=this._pendingSeekTime)try{e.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(e){}}},{key:"detachMediaElement",value:function value(){this._mediaElement&&(this._msectl.detachMediaElement(),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement.removeEventListener("seeking",this.e.onvSeeking),this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay),this._mediaElement.removeEventListener("stalled",this.e.onvStalled),this._mediaElement.removeEventListener("progress",this.e.onvProgress),this._mediaElement=null),this._msectl&&(this._msectl.destroy(),this._msectl=null)}},{key:"load",value:function value(){var e=this;if(!this._mediaElement)throw new R.IllegalStateException("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new R.IllegalStateException("FlvPlayer.load() has been called, please call unload() first!");if(!this._hasPendingLoad){if(this._config.deferLoadAfterSourceOpen&&!1===this._mseSourceOpened)return void(this._hasPendingLoad=!0);this._mediaElement.readyState>0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new p.default(this._mediaDataSource,this._config),this._transmuxer.on(g.default.INIT_SEGMENT,function(t,n){e._msectl.appendInitSegment(n)}),this._transmuxer.on(g.default.MEDIA_SEGMENT,function(t,n){if(e._msectl.appendMediaSegment(n),e._config.lazyLoad&&!e._config.isLive){var i=e._mediaElement.currentTime;n.info.endDts>=1e3*(i+e._config.lazyLoadMaxDuration)&&null==e._progressChecker&&(d.default.v(e.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),e._suspendTransmuxer())}}),this._transmuxer.on(g.default.LOADING_COMPLETE,function(){e._msectl.endOfStream(),e._emitter.emit(_.default.LOADING_COMPLETE)}),this._transmuxer.on(g.default.RECOVERED_EARLY_EOF,function(){e._emitter.emit(_.default.RECOVERED_EARLY_EOF)}),this._transmuxer.on(g.default.IO_ERROR,function(t,n){e._emitter.emit(_.default.ERROR,k.ErrorTypes.NETWORK_ERROR,t,n)}),this._transmuxer.on(g.default.DEMUX_ERROR,function(t,n){e._emitter.emit(_.default.ERROR,k.ErrorTypes.MEDIA_ERROR,t,{code:-1,msg:n})}),this._transmuxer.on(g.default.MEDIA_INFO,function(t){e._mediaInfo=t,e._emitter.emit(_.default.MEDIA_INFO,Object.assign({},t))}),this._transmuxer.on(g.default.METADATA_ARRIVED,function(t){e._emitter.emit(_.default.METADATA_ARRIVED,t)}),this._transmuxer.on(g.default.SCRIPTDATA_ARRIVED,function(t){e._emitter.emit(_.default.SCRIPTDATA_ARRIVED,t)}),this._transmuxer.on(g.default.STATISTICS_INFO,function(t){e._statisticsInfo=e._fillStatisticsInfo(t),e._emitter.emit(_.default.STATISTICS_INFO,Object.assign({},e._statisticsInfo))}),this._transmuxer.on(g.default.RECOMMEND_SEEKPOINT,function(t){e._mediaElement&&!e._config.accurateSeek&&(e._requestSetTime=!0,e._mediaElement.currentTime=t/1e3)}),this._transmuxer.open()}}},{key:"unload",value:function value(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)}},{key:"play",value:function value(){return this._mediaElement.play()}},{key:"pause",value:function value(){this._mediaElement.pause()}},{key:"_fillStatisticsInfo",value:function value(e){if(e.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return e;var t=!0,n=0,i=0;if(this._mediaElement.getVideoPlaybackQuality){var r=this._mediaElement.getVideoPlaybackQuality();n=r.totalVideoFrames,i=r.droppedVideoFrames}else void 0!=this._mediaElement.webkitDecodedFrameCount?(n=this._mediaElement.webkitDecodedFrameCount,i=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=n,e.droppedFrames=i),e}},{key:"_onmseUpdateEnd",value:function value(){if(this._config.lazyLoad&&!this._config.isLive){for(var e=this._mediaElement.buffered,t=this._mediaElement.currentTime,n=0,i=0;i<e.length;i++){var r=e.start(i),s=e.end(i);if(r<=t&&t<s){r,n=s;break}}n>=t+this._config.lazyLoadMaxDuration&&null==this._progressChecker&&(d.default.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}},{key:"_onmseBufferFull",value:function value(){d.default.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),null==this._progressChecker&&this._suspendTransmuxer()}},{key:"_suspendTransmuxer",value:function value(){this._transmuxer&&(this._transmuxer.pause(),null==this._progressChecker&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))}},{key:"_checkProgressAndResume",value:function value(){for(var e=this._mediaElement.currentTime,t=this._mediaElement.buffered,n=!1,i=0;i<t.length;i++){var r=t.start(i),s=t.end(i);if(e>=r&&e<s){e>=s-this._config.lazyLoadRecoverDuration&&(n=!0);break}}n&&(window.clearInterval(this._progressChecker),this._progressChecker=null,n&&(d.default.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}},{key:"_isTimepointBuffered",value:function value(e){for(var t=this._mediaElement.buffered,n=0;n<t.length;n++){var i=t.start(n),r=t.end(n);if(e>=i&&e<r)return!0}return!1}},{key:"_internalSeek",value:function value(e){var t=this._isTimepointBuffered(e),n=!1,i=0;if(e<1&&this._mediaElement.buffered.length>0){var r=this._mediaElement.buffered.start(0);(r<1&&e<r||f.default.safari)&&(n=!0,i=f.default.safari?.1:r)}if(n)this._requestSetTime=!0,this._mediaElement.currentTime=i;else if(t){if(this._alwaysSeekKeyframe){var s=this._msectl.getNearestKeyframe(Math.floor(1e3*e));this._requestSetTime=!0,this._mediaElement.currentTime=null!=s?s.dts/1e3:e}else this._requestSetTime=!0,this._mediaElement.currentTime=e;null!=this._progressChecker&&this._checkProgressAndResume()}else null!=this._progressChecker&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._msectl.seek(e),this._transmuxer.seek(Math.floor(1e3*e)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=e)}},{key:"_checkAndApplyUnbufferedSeekpoint",value:function value(){if(this._seekpointRecord)if(this._seekpointRecord.recordTime<=this._now()-100){var e=this._mediaElement.currentTime;this._seekpointRecord=null,this._isTimepointBuffered(e)||(null!=this._progressChecker&&(window.clearTimeout(this._progressChecker),this._progressChecker=null),this._msectl.seek(e),this._transmuxer.seek(Math.floor(1e3*e)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=e))}else window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}},{key:"_checkAndResumeStuckPlayback",value:function value(e){var t=this._mediaElement;if(e||!this._receivedCanPlay||t.readyState<2){var n=t.buffered;n.length>0&&t.currentTime<n.start(0)&&(d.default.w(this.TAG,"Playback seems stuck at "+t.currentTime+", seek to "+n.start(0)),this._requestSetTime=!0,this._mediaElement.currentTime=n.start(0),this._mediaElement.removeEventListener("progress",this.e.onvProgress))}else this._mediaElement.removeEventListener("progress",this.e.onvProgress)}},{key:"_onvLoadedMetadata",value:function value(e){null!=this._pendingSeekTime&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null)}},{key:"_onvSeeking",value:function value(e){var t=this._mediaElement.currentTime,n=this._mediaElement.buffered;if(this._requestSetTime)return void(this._requestSetTime=!1);if(t<1&&n.length>0){var i=n.start(0);if(i<1&&t<i||f.default.safari)return this._requestSetTime=!0,void(this._mediaElement.currentTime=f.default.safari?.1:i)}if(this._isTimepointBuffered(t)){if(this._alwaysSeekKeyframe){var r=this._msectl.getNearestKeyframe(Math.floor(1e3*t));null!=r&&(this._requestSetTime=!0,this._mediaElement.currentTime=r.dts/1e3)}return void(null!=this._progressChecker&&this._checkProgressAndResume())}this._seekpointRecord={seekPoint:t,recordTime:this._now()},window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}},{key:"_onvCanPlay",value:function value(e){this._receivedCanPlay=!0,this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay)}},{key:"_onvStalled",value:function value(e){this._checkAndResumeStuckPlayback(!0)}},{key:"_onvProgress",value:function value(e){this._checkAndResumeStuckPlayback()}},{key:"type",get:function get(){return this._type}},{key:"buffered",get:function get(){return this._mediaElement.buffered}},{key:"duration",get:function get(){return this._mediaElement.duration}},{key:"volume",get:function get(){return this._mediaElement.volume},set:function set(e){this._mediaElement.volume=e}},{key:"muted",get:function get(){return this._mediaElement.muted},set:function set(e){this._mediaElement.muted=e}},{key:"currentTime",get:function get(){return this._mediaElement?this._mediaElement.currentTime:0},set:function set(e){this._mediaElement?this._internalSeek(e):this._pendingSeekTime=e}},{key:"mediaInfo",get:function get(){return Object.assign({},this._mediaInfo)}},{key:"statisticsInfo",get:function get(){return null==this._statisticsInfo&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)}}]),e}();n.default=w},{"../config.js":5,"../core/mse-controller.js":9,"../core/mse-events.js":10,"../core/transmuxer.js":11,"../core/transmuxing-events.js":13,"../utils/browser.js":40,"../utils/exception.js":41,"../utils/logger.js":42,"./player-errors.js":35,"./player-events.js":36,events:2}],34:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s="function"==typeof Symbol&&"symbol"==_typeof(Symbol.iterator)?function(e){return typeof e==="undefined"?"undefined":_typeof(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e==="undefined"?"undefined":_typeof(e)},a=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),o=e("events"),u=i(o),l=e("./player-events.js"),d=i(l),h=e("../config.js"),f=e("../utils/exception.js"),c=function(){function e(t,n){if(r(this,e),this.TAG="NativePlayer",this._type="NativePlayer",this._emitter=new u.default,this._config=(0,h.createDefaultConfig)(),"object"===(void 0===n?"undefined":s(n))&&Object.assign(this._config,n),"flv"===t.type.toLowerCase())throw new f.InvalidArgumentException("NativePlayer does't support flv MediaDataSource input!");if(t.hasOwnProperty("segments"))throw new f.InvalidArgumentException("NativePlayer("+t.type+") doesn't support multipart playback!");this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this)},this._pendingSeekTime=null,this._statisticsReporter=null,this._mediaDataSource=t,this._mediaElement=null}return a(e,[{key:"destroy",value:function value(){this._mediaElement&&(this.unload(),this.detachMediaElement()),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}},{key:"on",value:function value(e,t){var n=this;e===d.default.MEDIA_INFO?null!=this._mediaElement&&0!==this._mediaElement.readyState&&Promise.resolve().then(function(){n._emitter.emit(d.default.MEDIA_INFO,n.mediaInfo)}):e===d.default.STATISTICS_INFO&&null!=this._mediaElement&&0!==this._mediaElement.readyState&&Promise.resolve().then(function(){n._emitter.emit(d.default.STATISTICS_INFO,n.statisticsInfo)}),this._emitter.addListener(e,t)}},{key:"off",value:function value(e,t){this._emitter.removeListener(e,t)}},{key:"attachMediaElement",value:function value(e){if(this._mediaElement=e,e.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),null!=this._pendingSeekTime)try{e.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(e){}}},{key:"detachMediaElement",value:function value(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement=null),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}},{key:"load",value:function value(){if(!this._mediaElement)throw new f.IllegalStateException("HTMLMediaElement must be attached before load()!");this._mediaElement.src=this._mediaDataSource.url,this._mediaElement.readyState>0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)}},{key:"unload",value:function value(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}},{key:"play",value:function value(){return this._mediaElement.play()}},{key:"pause",value:function value(){this._mediaElement.pause()}},{key:"_onvLoadedMetadata",value:function value(e){null!=this._pendingSeekTime&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(d.default.MEDIA_INFO,this.mediaInfo)}},{key:"_reportStatisticsInfo",value:function value(){this._emitter.emit(d.default.STATISTICS_INFO,this.statisticsInfo)}},{key:"type",get:function get(){return this._type}},{key:"buffered",get:function get(){return this._mediaElement.buffered}},{key:"duration",get:function get(){return this._mediaElement.duration}},{key:"volume",get:function get(){return this._mediaElement.volume},set:function set(e){this._mediaElement.volume=e}},{key:"muted",get:function get(){return this._mediaElement.muted},set:function set(e){this._mediaElement.muted=e}},{key:"currentTime",get:function get(){return this._mediaElement?this._mediaElement.currentTime:0},set:function set(e){this._mediaElement?this._mediaElement.currentTime=e:this._pendingSeekTime=e}},{key:"mediaInfo",get:function get(){var e=this._mediaElement instanceof HTMLAudioElement?"audio/":"video/",t={mimeType:e+this._mediaDataSource.type};return this._mediaElement&&(t.duration=Math.floor(1e3*this._mediaElement.duration),this._mediaElement instanceof HTMLVideoElement&&(t.width=this._mediaElement.videoWidth,t.height=this._mediaElement.videoHeight)),t}},{key:"statisticsInfo",get:function get(){var e={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return e;var t=!0,n=0,i=0;if(this._mediaElement.getVideoPlaybackQuality){var r=this._mediaElement.getVideoPlaybackQuality();n=r.totalVideoFrames,i=r.droppedVideoFrames}else void 0!=this._mediaElement.webkitDecodedFrameCount?(n=this._mediaElement.webkitDecodedFrameCount,i=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=n,e.droppedFrames=i),e}}]),e}();n.default=c},{"../config.js":5,"../utils/exception.js":41,"./player-events.js":36,events:2}],35:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ErrorDetails=n.ErrorTypes=void 0;var i=e("../io/loader.js"),r=e("../demux/demux-errors.js"),s=function(e){return e&&e.__esModule?e:{default:e}}(r);n.ErrorTypes={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},n.ErrorDetails={NETWORK_EXCEPTION:i.LoaderErrors.EXCEPTION,NETWORK_STATUS_CODE_INVALID:i.LoaderErrors.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:i.LoaderErrors.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:i.LoaderErrors.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:s.default.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:s.default.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:s.default.CODEC_UNSUPPORTED}},{"../demux/demux-errors.js":16,"../io/loader.js":24}],36:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var i={ERROR:"error",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info"};n.default=i},{}],37:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=function(){function e(){i(this,e)}return r(e,null,[{key:"getSilentFrame",value:function value(e,t){if("mp4a.40.2"===e){if(1===t)return new Uint8Array([0,200,0,128,35,128]);if(2===t)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(6===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(1===t)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(2===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(3===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}}]),e}();n.default=s},{}],38:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=function(){function e(){i(this,e)}return r(e,null,[{key:"init",value:function value(){e.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]};for(var t in e.types){e.types.hasOwnProperty(t)&&(e.types[t]=[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)])}var n=e.constants={};n.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),n.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),n.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),n.STSC=n.STCO=n.STTS,n.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),n.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),n.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),n.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),n.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),n.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}},{key:"box",value:function value(e){for(var t=8,n=null,i=Array.prototype.slice.call(arguments,1),r=i.length,s=0;s<r;s++){t+=i[s].byteLength}n=new Uint8Array(t),n[0]=t>>>24&255,n[1]=t>>>16&255,n[2]=t>>>8&255,n[3]=255&t,n.set(e,4);for(var a=8,o=0;o<r;o++){n.set(i[o],a),a+=i[o].byteLength}return n}},{key:"generateInitSegment",value:function value(t){var n=e.box(e.types.ftyp,e.constants.FTYP),i=e.moov(t),r=new Uint8Array(n.byteLength+i.byteLength);return r.set(n,0),r.set(i,n.byteLength),r}},{key:"moov",value:function value(t){var n=e.mvhd(t.timescale,t.duration),i=e.trak(t),r=e.mvex(t);return e.box(e.types.moov,n,i,r)}},{key:"mvhd",value:function value(t,n){return e.box(e.types.mvhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,n>>>24&255,n>>>16&255,n>>>8&255,255&n,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]))}},{key:"trak",value:function value(t){return e.box(e.types.trak,e.tkhd(t),e.mdia(t))}},{key:"tkhd",value:function value(t){var n=t.id,i=t.duration,r=t.presentWidth,s=t.presentHeight;return e.box(e.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,r>>>8&255,255&r,0,0,s>>>8&255,255&s,0,0]))}},{key:"mdia",value:function value(t){return e.box(e.types.mdia,e.mdhd(t),e.hdlr(t),e.minf(t))}},{key:"mdhd",value:function value(t){var n=t.timescale,i=t.duration;return e.box(e.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n,i>>>24&255,i>>>16&255,i>>>8&255,255&i,85,196,0,0]))}},{key:"hdlr",value:function value(t){var n=null;return n="audio"===t.type?e.constants.HDLR_AUDIO:e.constants.HDLR_VIDEO,e.box(e.types.hdlr,n)}},{key:"minf",value:function value(t){var n=null;return n="audio"===t.type?e.box(e.types.smhd,e.constants.SMHD):e.box(e.types.vmhd,e.constants.VMHD),e.box(e.types.minf,n,e.dinf(),e.stbl(t))}},{key:"dinf",value:function value(){return e.box(e.types.dinf,e.box(e.types.dref,e.constants.DREF))}},{key:"stbl",value:function value(t){return e.box(e.types.stbl,e.stsd(t),e.box(e.types.stts,e.constants.STTS),e.box(e.types.stsc,e.constants.STSC),e.box(e.types.stsz,e.constants.STSZ),e.box(e.types.stco,e.constants.STCO))}},{key:"stsd",value:function value(t){return"audio"===t.type?"mp3"===t.codec?e.box(e.types.stsd,e.constants.STSD_PREFIX,e.mp3(t)):e.box(e.types.stsd,e.constants.STSD_PREFIX,e.mp4a(t)):e.box(e.types.stsd,e.constants.STSD_PREFIX,e.avc1(t))}},{key:"mp3",value:function value(t){var n=t.channelCount,i=t.audioSampleRate,r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,n,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return e.box(e.types[".mp3"],r)}},{key:"mp4a",value:function value(t){var n=t.channelCount,i=t.audioSampleRate,r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,n,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return e.box(e.types.mp4a,r,e.esds(t))}},{key:"esds",value:function value(t){var n=t.config||[],i=n.length,r=new Uint8Array([0,0,0,0,3,23+i,0,1,0,4,15+i,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([i]).concat(n).concat([6,1,2]));return e.box(e.types.esds,r)}},{key:"avc1",value:function value(t){var n=t.avcc,i=t.codecWidth,r=t.codecHeight,s=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,i>>>8&255,255&i,r>>>8&255,255&r,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return e.box(e.types.avc1,s,e.box(e.types.avcC,n))}},{key:"mvex",value:function value(t){return e.box(e.types.mvex,e.trex(t))}},{key:"trex",value:function value(t){var n=t.id,i=new Uint8Array([0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return e.box(e.types.trex,i)}},{key:"moof",value:function value(t,n){return e.box(e.types.moof,e.mfhd(t.sequenceNumber),e.traf(t,n))}},{key:"mfhd",value:function value(t){var n=new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t]);return e.box(e.types.mfhd,n)}},{key:"traf",value:function value(t,n){var i=t.id,r=e.box(e.types.tfhd,new Uint8Array([0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i])),s=e.box(e.types.tfdt,new Uint8Array([0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n])),a=e.sdtp(t),o=e.trun(t,a.byteLength+16+16+8+16+8+8);return e.box(e.types.traf,r,s,o,a)}},{key:"sdtp",value:function value(t){for(var n=t.samples||[],i=n.length,r=new Uint8Array(4+i),s=0;s<i;s++){var a=n[s].flags;r[s+4]=a.isLeading<<6|a.dependsOn<<4|a.isDependedOn<<2|a.hasRedundancy}return e.box(e.types.sdtp,r)}},{key:"trun",value:function value(t,n){var i=t.samples||[],r=i.length,s=12+16*r,a=new Uint8Array(s);n+=8+s,a.set([0,0,15,1,r>>>24&255,r>>>16&255,r>>>8&255,255&r,n>>>24&255,n>>>16&255,n>>>8&255,255&n],0);for(var o=0;o<r;o++){var u=i[o].duration,l=i[o].size,d=i[o].flags,h=i[o].cts;a.set([u>>>24&255,u>>>16&255,u>>>8&255,255&u,l>>>24&255,l>>>16&255,l>>>8&255,255&l,d.isLeading<<2|d.dependsOn,d.isDependedOn<<6|d.hasRedundancy<<4|d.isNonSync,0,0,h>>>24&255,h>>>16&255,h>>>8&255,255&h],12+16*o)}return e.box(e.types.trun,a)}},{key:"mdat",value:function value(t){return e.box(e.types.mdat,t)}}]),e}();s.init(),n.default=s},{}],39:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=e("../utils/logger.js"),o=i(a),u=e("./mp4-generator.js"),l=i(u),d=e("./aac-silent.js"),h=i(d),f=e("../utils/browser.js"),c=i(f),_=e("../core/media-segment-info.js"),m=e("../utils/exception.js"),p=function(){function e(t){r(this,e),this.TAG="MP4Remuxer",this._config=t,this._isLive=!0===t.isLive,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new _.MediaSegmentInfoList("audio"),this._videoSegmentInfoList=new _.MediaSegmentInfoList("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!(!c.default.chrome||!(c.default.version.major<50||50===c.default.version.major&&c.default.version.build<2661)),this._fillSilentAfterSeek=c.default.msedge||c.default.msie,this._mp3UseMpegAudio=!c.default.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}return s(e,[{key:"destroy",value:function value(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null}},{key:"bindDataSource",value:function value(e){return e.onDataAvailable=this.remux.bind(this),e.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}},{key:"insertDiscontinuity",value:function value(){this._audioNextDts=this._videoNextDts=void 0}},{key:"seek",value:function value(e){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}},{key:"remux",value:function value(e,t){if(!this._onMediaSegment)throw new m.IllegalStateException("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(e,t),this._remuxVideo(t),this._remuxAudio(e)}},{key:"_onTrackMetadataReceived",value:function value(e,t){var n=null,i="mp4",r=t.codec;if("audio"===e)this._audioMeta=t,"mp3"===t.codec&&this._mp3UseMpegAudio?(i="mpeg",r="",n=new Uint8Array):n=l.default.generateInitSegment(t);else{if("video"!==e)return;this._videoMeta=t,n=l.default.generateInitSegment(t)}if(!this._onInitSegment)throw new m.IllegalStateException("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(e,{type:e,data:n.buffer,codec:r,container:e+"/"+i,mediaDuration:t.duration})}},{key:"_calculateDtsBase",value:function value(e,t){this._dtsBaseInited||(e.samples&&e.samples.length&&(this._audioDtsBase=e.samples[0].dts),t.samples&&t.samples.length&&(this._videoDtsBase=t.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}},{key:"flushStashedSamples",value:function value(){var e=this._videoStashedLastSample,t=this._audioStashedLastSample,n={type:"video",id:1,sequenceNumber:0,samples:[],length:0};null!=e&&(n.samples.push(e),n.length=e.length);var i={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};null!=t&&(i.samples.push(t),i.length=t.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(n,!0),this._remuxAudio(i,!0)}},{key:"_remuxAudio",value:function value(e,t){if(null!=this._audioMeta){var n=e,i=n.samples,r=void 0,s=-1,a=-1,u=this._audioMeta.refSampleDuration,d="mp3"===this._audioMeta.codec&&this._mp3UseMpegAudio,f=this._dtsBaseInited&&void 0===this._audioNextDts,m=!1;if(i&&0!==i.length&&(1!==i.length||t)){var p=0,v=null,g=0;d?(p=0,g=n.length):(p=8,g=8+n.length);var y=null;if(i.length>1&&(y=i.pop(),g-=y.length),null!=this._audioStashedLastSample){var b=this._audioStashedLastSample;this._audioStashedLastSample=null,i.unshift(b),g+=b.length}null!=y&&(this._audioStashedLastSample=y);var E=i[0].dts-this._dtsBase;if(this._audioNextDts)r=E-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())r=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&"mp3"!==this._audioMeta.originalCodec&&(m=!0);else{var S=this._audioSegmentInfoList.getLastSampleBefore(E);if(null!=S){var k=E-(S.originalDts+S.duration);k<=3&&(k=0);var L=S.dts+S.duration+k;r=E-L}else r=0}if(m){var R=E-r,w=this._videoSegmentInfoList.getLastSegmentBefore(E);if(null!=w&&w.beginDts<R){var A=h.default.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);if(A){var T=w.beginDts,O=R-w.beginDts;o.default.v(this.TAG,"InsertPrefixSilentAudio: dts: "+T+", duration: "+O),i.unshift({unit:A,dts:T,pts:T}),g+=A.byteLength}}else m=!1}for(var C=[],I=0;I<i.length;I++){var D=i[I],x=D.unit,M=D.dts-this._dtsBase,j=M-r;-1===s&&(s=j);var B=0;if(I!==i.length-1){B=i[I+1].dts-this._dtsBase-r-j}else if(null!=y){var P=y.dts-this._dtsBase-r;B=P-j}else B=C.length>=1?C[C.length-1].duration:Math.floor(u);var U=!1,N=null;if(B>1.5*u&&"mp3"!==this._audioMeta.codec&&this._fillAudioTimestampGap&&!c.default.safari){U=!0;var F=Math.abs(B-u),G=Math.ceil(F/u),V=j+u;o.default.w(this.TAG,"Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.\ndts: "+(j+B)+" ms, expected: "+(j+Math.round(u))+" ms, delta: "+Math.round(F)+" ms, generate: "+G+" frames");var z=h.default.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);null==z&&(o.default.w(this.TAG,"Unable to generate silent frame for "+this._audioMeta.originalCodec+" with "+this._audioMeta.channelCount+" channels, repeat last frame"),z=x),N=[];for(var H=0;H<G;H++){var q=Math.round(V);if(N.length>0){var K=N[N.length-1];K.duration=q-K.dts}var W={dts:q,pts:q,cts:0,unit:z,size:z.byteLength,duration:0,originalDts:M,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};N.push(W),g+=W.size,V+=u}var X=N[N.length-1];X.duration=j+B-X.dts,B=Math.round(u)}C.push({dts:j,pts:j,cts:0,unit:D.unit,size:D.unit.byteLength,duration:B,originalDts:M,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),U&&C.push.apply(C,N)}d?v=new Uint8Array(g):(v=new Uint8Array(g),v[0]=g>>>24&255,v[1]=g>>>16&255,v[2]=g>>>8&255,v[3]=255&g,v.set(l.default.types.mdat,4));for(var Y=0;Y<C.length;Y++){var Z=C[Y].unit;v.set(Z,p),p+=Z.byteLength}var Q=C[C.length-1];a=Q.dts+Q.duration,this._audioNextDts=a;var J=new _.MediaSegmentInfo;J.beginDts=s,J.endDts=a,J.beginPts=s,J.endPts=a,J.originalBeginDts=C[0].originalDts,J.originalEndDts=Q.originalDts+Q.duration,J.firstSample=new _.SampleInfo(C[0].dts,C[0].pts,C[0].duration,C[0].originalDts,!1),J.lastSample=new _.SampleInfo(Q.dts,Q.pts,Q.duration,Q.originalDts,!1),this._isLive||this._audioSegmentInfoList.append(J),n.samples=C,n.sequenceNumber++;var $=null;$=d?new Uint8Array:l.default.moof(n,s),n.samples=[],n.length=0;var ee={type:"audio",data:this._mergeBoxes($,v).buffer,sampleCount:C.length,info:J};d&&f&&(ee.timestampOffset=s),this._onMediaSegment("audio",ee)}}}},{key:"_remuxVideo",value:function value(e,t){if(null!=this._videoMeta){var n=e,i=n.samples,r=void 0,s=-1,a=-1,o=-1,u=-1;if(i&&0!==i.length&&(1!==i.length||t)){var d=8,h=null,f=8+e.length,c=null;if(i.length>1&&(c=i.pop(),f-=c.length),null!=this._videoStashedLastSample){var m=this._videoStashedLastSample;this._videoStashedLastSample=null,i.unshift(m),f+=m.length}null!=c&&(this._videoStashedLastSample=c);var p=i[0].dts-this._dtsBase;if(this._videoNextDts)r=p-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())r=0;else{var v=this._videoSegmentInfoList.getLastSampleBefore(p);if(null!=v){var g=p-(v.originalDts+v.duration);g<=3&&(g=0);var y=v.dts+v.duration+g;r=p-y}else r=0}for(var b=new _.MediaSegmentInfo,E=[],S=0;S<i.length;S++){var k=i[S],L=k.dts-this._dtsBase,R=k.isKeyframe,w=L-r,A=k.cts,T=w+A;-1===s&&(s=w,o=T);var O=0;if(S!==i.length-1){O=i[S+1].dts-this._dtsBase-r-w}else if(null!=c){var C=c.dts-this._dtsBase-r;O=C-w}else O=E.length>=1?E[E.length-1].duration:Math.floor(this._videoMeta.refSampleDuration);if(R){var I=new _.SampleInfo(w,T,O,k.dts,!0);I.fileposition=k.fileposition,b.appendSyncPoint(I)}E.push({dts:w,pts:T,cts:A,units:k.units,size:k.length,isKeyframe:R,duration:O,originalDts:L,flags:{isLeading:0,dependsOn:R?2:1,isDependedOn:R?1:0,hasRedundancy:0,isNonSync:R?0:1}})}h=new Uint8Array(f),h[0]=f>>>24&255,h[1]=f>>>16&255,h[2]=f>>>8&255,h[3]=255&f,h.set(l.default.types.mdat,4);for(var D=0;D<E.length;D++){for(var x=E[D].units;x.length;){var M=x.shift(),j=M.data;h.set(j,d),d+=j.byteLength}}var B=E[E.length-1];if(a=B.dts+B.duration,u=B.pts+B.duration,this._videoNextDts=a,b.beginDts=s,b.endDts=a,b.beginPts=o,b.endPts=u,b.originalBeginDts=E[0].originalDts,b.originalEndDts=B.originalDts+B.duration,b.firstSample=new _.SampleInfo(E[0].dts,E[0].pts,E[0].duration,E[0].originalDts,E[0].isKeyframe),b.lastSample=new _.SampleInfo(B.dts,B.pts,B.duration,B.originalDts,B.isKeyframe),this._isLive||this._videoSegmentInfoList.append(b),n.samples=E,n.sequenceNumber++,this._forceFirstIDR){var P=E[0].flags;P.dependsOn=2,P.isNonSync=0}var U=l.default.moof(n,s);n.samples=[],n.length=0,this._onMediaSegment("video",{type:"video",data:this._mergeBoxes(U,h).buffer,sampleCount:E.length,info:b})}}}},{key:"_mergeBoxes",value:function value(e,t){var n=new Uint8Array(e.byteLength+t.byteLength);return n.set(e,0),n.set(t,e.byteLength),n}},{key:"onInitSegment",get:function get(){return this._onInitSegment},set:function set(e){this._onInitSegment=e}},{key:"onMediaSegment",get:function get(){return this._onMediaSegment},set:function set(e){this._onMediaSegment=e}}]),e}();n.default=p},{"../core/media-segment-info.js":8,"../utils/browser.js":40,"../utils/exception.js":41,"../utils/logger.js":42,"./aac-silent.js":37,"./mp4-generator.js":38}],40:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var i={};!function(){var e=self.navigator.userAgent.toLowerCase(),t=/(edge)\/([\w.]+)/.exec(e)||/(opr)[\/]([\w.]+)/.exec(e)||/(chrome)[ \/]([\w.]+)/.exec(e)||/(iemobile)[\/]([\w.]+)/.exec(e)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(e)||[],n=/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(android)/.exec(e)||/(windows)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||[],r={browser:t[5]||t[3]||t[1]||"",version:t[2]||t[4]||"0",majorVersion:t[4]||t[2]||"0",platform:n[0]||""},s={};if(r.browser){s[r.browser]=!0;var a=r.majorVersion.split(".");s.version={major:parseInt(r.majorVersion,10),string:r.version},a.length>1&&(s.version.minor=parseInt(a[1],10)),a.length>2&&(s.version.build=parseInt(a[2],10))}r.platform&&(s[r.platform]=!0),(s.chrome||s.opr||s.safari)&&(s.webkit=!0),(s.rv||s.iemobile)&&(s.rv&&delete s.rv,r.browser="msie",s.msie=!0),s.edge&&(delete s.edge,r.browser="msedge",s.msedge=!0),s.opr&&(r.browser="opera",s.opera=!0),s.safari&&s.android&&(r.browser="android",s.android=!0),s.name=r.browser,s.platform=r.platform;for(var o in i){i.hasOwnProperty(o)&&delete i[o]}Object.assign(i,s)}(),n.default=i},{}],41:[function(e,t,n){"use strict";function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=(typeof t==="undefined"?"undefined":_typeof(t))&&"function"!=typeof t?e:t}function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(typeof t==="undefined"?"undefined":_typeof(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),o=n.RuntimeException=function(){function e(t){s(this,e),this._message=t}return a(e,[{key:"toString",value:function value(){return this.name+": "+this.message}},{key:"name",get:function get(){return"RuntimeException"}},{key:"message",get:function get(){return this._message}}]),e}();n.IllegalStateException=function(e){function t(e){return s(this,t),i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e))}return r(t,e),a(t,[{key:"name",get:function get(){return"IllegalStateException"}}]),t}(o),n.InvalidArgumentException=function(e){function t(e){return s(this,t),i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e))}return r(t,e),a(t,[{key:"name",get:function get(){return"InvalidArgumentException"}}]),t}(o),n.NotImplementedException=function(e){function t(e){return s(this,t),i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e))}return r(t,e),a(t,[{key:"name",get:function get(){return"NotImplementedException"}}]),t}(o)},{}],42:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=e("events"),a=function(e){return e&&e.__esModule?e:{default:e}}(s),o=function(){function e(){i(this,e)}return r(e,null,[{key:"e",value:function value(t,n){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var i="["+t+"] > "+n;e.ENABLE_CALLBACK&&e.emitter.emit("log","error",i),e.ENABLE_ERROR&&(console.error?console.error(i):console.warn?console.warn(i):console.log(i))}},{key:"i",value:function value(t,n){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var i="["+t+"] > "+n;e.ENABLE_CALLBACK&&e.emitter.emit("log","info",i),e.ENABLE_INFO&&(console.info?console.info(i):console.log(i))}},{key:"w",value:function value(t,n){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var i="["+t+"] > "+n;e.ENABLE_CALLBACK&&e.emitter.emit("log","warn",i),e.ENABLE_WARN&&(console.warn?console.warn(i):console.log(i))}},{key:"d",value:function value(t,n){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var i="["+t+"] > "+n;e.ENABLE_CALLBACK&&e.emitter.emit("log","debug",i),e.ENABLE_DEBUG&&(console.debug?console.debug(i):console.log(i))}},{key:"v",value:function value(t,n){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var i="["+t+"] > "+n;e.ENABLE_CALLBACK&&e.emitter.emit("log","verbose",i),e.ENABLE_VERBOSE&&console.log(i)}}]),e}();o.GLOBAL_TAG="flv.js",o.FORCE_GLOBAL_TAG=!1,o.ENABLE_ERROR=!0,o.ENABLE_INFO=!0,o.ENABLE_WARN=!0,o.ENABLE_DEBUG=!0,o.ENABLE_VERBOSE=!0,o.ENABLE_CALLBACK=!1,o.emitter=new a.default,n.default=o},{events:2}],43:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=e("events"),o=i(a),u=e("./logger.js"),l=i(u),d=function(){function e(){r(this,e)}return s(e,null,[{key:"getConfig",value:function value(){return{globalTag:l.default.GLOBAL_TAG,forceGlobalTag:l.default.FORCE_GLOBAL_TAG,enableVerbose:l.default.ENABLE_VERBOSE,enableDebug:l.default.ENABLE_DEBUG,enableInfo:l.default.ENABLE_INFO,enableWarn:l.default.ENABLE_WARN,enableError:l.default.ENABLE_ERROR,enableCallback:l.default.ENABLE_CALLBACK}}},{key:"applyConfig",value:function value(e){l.default.GLOBAL_TAG=e.globalTag,l.default.FORCE_GLOBAL_TAG=e.forceGlobalTag,l.default.ENABLE_VERBOSE=e.enableVerbose,l.default.ENABLE_DEBUG=e.enableDebug,l.default.ENABLE_INFO=e.enableInfo,l.default.ENABLE_WARN=e.enableWarn,l.default.ENABLE_ERROR=e.enableError,l.default.ENABLE_CALLBACK=e.enableCallback}},{key:"_notifyChange",value:function value(){var t=e.emitter;if(t.listenerCount("change")>0){var n=e.getConfig();t.emit("change",n)}}},{key:"registerListener",value:function value(t){e.emitter.addListener("change",t)}},{key:"removeListener",value:function value(t){e.emitter.removeListener("change",t)}},{key:"addLogListener",value:function value(t){l.default.emitter.addListener("log",t),l.default.emitter.listenerCount("log")>0&&(l.default.ENABLE_CALLBACK=!0,e._notifyChange())}},{key:"removeLogListener",value:function value(t){l.default.emitter.removeListener("log",t),0===l.default.emitter.listenerCount("log")&&(l.default.ENABLE_CALLBACK=!1,e._notifyChange())}},{key:"forceGlobalTag",get:function get(){return l.default.FORCE_GLOBAL_TAG},set:function set(t){l.default.FORCE_GLOBAL_TAG=t,e._notifyChange()}},{key:"globalTag",get:function get(){return l.default.GLOBAL_TAG},set:function set(t){l.default.GLOBAL_TAG=t,e._notifyChange()}},{key:"enableAll",get:function get(){return l.default.ENABLE_VERBOSE&&l.default.ENABLE_DEBUG&&l.default.ENABLE_INFO&&l.default.ENABLE_WARN&&l.default.ENABLE_ERROR},set:function set(t){l.default.ENABLE_VERBOSE=t,l.default.ENABLE_DEBUG=t,l.default.ENABLE_INFO=t,l.default.ENABLE_WARN=t,l.default.ENABLE_ERROR=t,e._notifyChange()}},{key:"enableDebug",get:function get(){return l.default.ENABLE_DEBUG},set:function set(t){l.default.ENABLE_DEBUG=t,e._notifyChange()}},{key:"enableVerbose",get:function get(){return l.default.ENABLE_VERBOSE},set:function set(t){l.default.ENABLE_VERBOSE=t,e._notifyChange()}},{key:"enableInfo",get:function get(){return l.default.ENABLE_INFO},set:function set(t){l.default.ENABLE_INFO=t,e._notifyChange()}},{key:"enableWarn",get:function get(){return l.default.ENABLE_WARN},set:function set(t){l.default.ENABLE_WARN=t,e._notifyChange()}},{key:"enableError",get:function get(){return l.default.ENABLE_ERROR},set:function set(t){l.default.ENABLE_ERROR=t,e._notifyChange()}}]),e}();d.emitter=new o.default,n.default=d},{"./logger.js":42,events:2}],44:[function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),s=function(){function t(){i(this,t)}return r(t,null,[{key:"install",value:function value(){Object.setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Object.assign=Object.assign||function(e){if(void 0===e||null===e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),n=1;n<arguments.length;n++){var i=arguments[n];if(void 0!==i&&null!==i)for(var r in i){i.hasOwnProperty(r)&&(t[r]=i[r])}}return t},"function"!=typeof self.Promise&&e("es6-promise").polyfill()}}]),t}();s.install(),n.default=s},{"es6-promise":1}],45:[function(e,t,n){"use strict";function i(e,t,n){var i=e;if(t+n<i.length){for(;n--;){if(128!=(192&i[++t]))return!1}return!0}return!1}function r(e){for(var t=[],n=e,r=0,s=e.length;r<s;){if(n[r]<128)t.push(String.fromCharCode(n[r])),++r;else{if(n[r]<192);else if(n[r]<224){if(i(n,r,1)){var a=(31&n[r])<<6|63&n[r+1];if(a>=128){t.push(String.fromCharCode(65535&a)),r+=2;continue}}}else if(n[r]<240){if(i(n,r,2)){var o=(15&n[r])<<12|(63&n[r+1])<<6|63&n[r+2];if(o>=2048&&55296!=(63488&o)){t.push(String.fromCharCode(65535&o)),r+=3;continue}}}else if(n[r]<248&&i(n,r,3)){var u=(7&n[r])<<18|(63&n[r+1])<<12|(63&n[r+2])<<6|63&n[r+3];if(u>65536&&u<1114112){u-=65536,t.push(String.fromCharCode(u>>>10|55296)),t.push(String.fromCharCode(1023&u|56320)),r+=4;continue}}t.push(String.fromCharCode(65533)),++r}}return t.join("")}Object.defineProperty(n,"__esModule",{value:!0}),n.default=r},{}]},{},[21])(21)});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_HAS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_HAS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_NODE=ENVIRONMENT_HAS_NODE&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";var nodeFS;var nodePath;read_=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}read_=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort()}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){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:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var tempRet0=0;var setTempRet0=function(value){tempRet0=value};var getTempRet0=function(){return tempRet0};var GLOBAL_BASE=8;var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime;if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);ret=convertReturnValue(ret);if(stack!==0)stackRestore(stack);return ret}function cwrap(ident,returnType,argTypes,opts){argTypes=argTypes||[];var numericArgs=argTypes.every(function(type){return type==="number"});var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return function(){return ccall(ident,returnType,argTypes,arguments,opts)}}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}function getMemory(size){if(!runtimeInitialized)return dynamicAlloc(size);return _malloc(size)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(u8Array[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=u8Array[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|u8Array[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var PAGE_SIZE=16384;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=1137312,DYNAMIC_BASE=6380192,DYNAMICTOP_PTR=1137280;var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(INITIAL_TOTAL_MEMORY)}INITIAL_TOTAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){FS.ignorePermissions=false;callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_exp=Math.exp;var Math_log=Math.log;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var tempDouble;var tempI64;var ASM_CONSTS=[function($0){if(typeof NP=="undefined"){NP={}}NP[$0]={}},function($0){var self=SL[$0];if(self&&self.audioContext&&self.audioContext.state=="suspended"){self.audioContext.resume()}},function($0,$1,$2,$3,$4){var self=NP[$0];var ret=self.emit("stats",{"buf":$1,"fps":$2,"abps":$3,"vbps":$4})},function($0,$1,$2){var self=NP[$0];var ret=self.emit("audioInfo",$1,$2)},function($0,$1,$2){var self=NP[$0];var ret=self.emit("videoInfo",$1,$2)},function($0){if(typeof NB=="undefined"){NB={}}NB[$0]={}},function($0,$1,$2){var ws=NB[$0].ws;var inputDataHeap=new Uint8Array(Module.HEAPU8.buffer,$1,$2);ws.send(inputDataHeap)},function($0){if(typeof SL=="undefined"){SL={}}SL[$0]={}},function($0){if(typeof SL[$0]=="object"){delete SL[$0]}},function($0){var self=SL[$0];if(self.scriptProcessorNode!=undefined){self.scriptProcessorNode.disconnect();self.scriptProcessorNode=undefined}if(self.audioContext!=undefined){self.audioContext.close();self.audioContext=undefined}if(self.currentOutputBuffer!=undefined){self.currentOutputBuffer=undefined}return 0},function($0){var self=SL[$0];if(typeof AudioContext!="undefined"){self.audioContext=new AudioContext}else if(typeof webkitAudioContext!="undefined"){self.audioContext=new webkitAudioContext}return self.audioContext==undefined?-1:0},function($0){return SL[$0].audioContext.sampleRate},function($0,$1,$2,$3){var self=SL[$3];self.scriptProcessorNode=self.audioContext["createScriptProcessor"]($1,0,$0);self.scriptProcessorNode["onaudioprocess"]=function(e){self.currentOutputBuffer=e["outputBuffer"];dynCall("vi",$2,[$3])};self.scriptProcessorNode["connect"](self.audioContext["destination"]);self.audioContext.resume()},function($0,$1,$2,$3,$4){var self=SL[$0];var channelData=self.currentOutputBuffer.getChannelData(0);if($3==$2){for(var i=0;i<$2;i++){channelData[i]=HEAPF32[$1+(i<<2)>>2]*$4}}else{channelData.fill(0)}}];function _emscripten_asm_const_ii(code,a0){return ASM_CONSTS[code](a0)}function _emscripten_asm_const_iiii(code,a0,a1,a2){return ASM_CONSTS[code](a0,a1,a2)}function _emscripten_asm_const_iiiiii(code,a0,a1,a2,a3,a4){return ASM_CONSTS[code](a0,a1,a2,a3,a4)}function _emscripten_asm_const_iiiiid(code,a0,a1,a2,a3,a4){return ASM_CONSTS[code](a0,a1,a2,a3,a4)}function _emscripten_asm_const_iiiii(code,a0,a1,a2,a3){return ASM_CONSTS[code](a0,a1,a2,a3)}function _get_do_str(){var jsString=document.domain;var lengthBytes=lengthBytesUTF8(jsString)+1;var stringOnWasmHeap=_malloc(lengthBytes);stringToUTF8(jsString,stringOnWasmHeap,lengthBytes+1);return stringOnWasmHeap}__ATINIT__.push({func:function(){___emscripten_environ_constructor()}});memoryInitializer="data:application/octet-stream;base64,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJHXELqxQxO6O7IBujCa/7mtSQC6qSMEuuECCbp/TQ+6FtcUuiXnGborxCC6bHolum9zK7pPrDG6Yvg1usGiO7rFLz66Tw9Duo1cRLrPXEm6lIBKulBfTbrR8Uu6gZFMuqOCTLrnXku6YwlIuvtkRbpg3z+6qyU9un1ZNbouVi66uD0murnfG7o93xG6WeMGugyB8bnJs9a5+o+3uZ/il7nOBly5+KkXud52gbgnaGI3PYLlONI5Vjnvo5o5ThvTORrjBTq+jyM69YFDOkiqYTrfk4E6QnWTOmDcpDoHObY62GrKOuUX3TqQfvA66QcCO5CmDDuL2BY77mIhO0G3KzvhpjY7hyFBO8r7Szv1j1Y7SpFhO9n7azvqcHY7lHmAOxfChTvXfYo7/EuPO8YklDtVuJg7vxCdO5wDoTu7IKU7nXOoO57nqztMN687jZexO1zRsztnyLU7N0y3O0s5uDsN/rg7sMa4O3BfuDuwOrc7jIy1O81qsztoa7A7L72sO5ReqDuPUKM7JqWdO8Lcljuqh487YyyHOyUHfDtvAWg7QFFSO71tOjuCniA7bN4EO5vkzjol5o46qeMYOjaQ5zcqPg+6OKCXumxy7LpUtCK7/UdRuw8cgbsvvZq7OFS1u9sI0buQ8u27qgQGvJ+gFbx6uSW8IGE2vJijR7wOclk8/sVrPNCdfjyJEok86P2SPJEunTxtjac8QCayPCP5vDxFBMg8fEDTPA613jyvWeo8+iv2PP4HAT05EQc9ICgNPQZVEz36hRk9GMQfPfEHJj1BTCw9JKAyPf7tOD0KOD89vX5FPa26Sz1p8VE9GB5YPUwwXj3kN2Q9VCJqPbb9bz2FsXU9cEV7PWdhgD2JA4M9iJSFPf4PiD3adYo94rSMPevfjj0g7JA9l9eSPauelD3UPpY978GXPQoUmT0WPpo9eD2bPVoOnD2fq5w9yxmdPXFSnT1hVZ09oh+dPbGunD2NAZw9ohibPT7smT3cgZg94tCWPezXlD3rmZI9ZRWQPUI+jT2KJIo977GGPVP1gj0Pyn09UAJ1PSGVaz3rd2E9OKtWPSInSz1y/z490BQyPfRvJD25FRY9Yf8GPTc+7jxNDc08JmSqPKQahjwDt0A8oi/kOy2JATvhSFK7HW4MvNR8Z7yK4qK8MIrTvEjhAr0IyRy982s3vSHdUr3xFW+97AWGvcTglL0FH6S9xLizvXixw70WCdS95bnkvabG9b2UlQO+aHIMvud6Fb4Frh6+wAgovr6KMb5yNDu+ogNFvtz5Tr6bD1m+3UpjvoWjbb7vHXi+FVuBvr61hr6cHYy+lJKRvqITl744oJy+RDeivuTWp76rgK2+EzKzvtXpuD6IqL4+z2vEPhwzyj6c/c8+ssvVPlqa2z4naeE+EjjnPkQF7T5I0PI+xpb4Pr9Y/j4YCwI/R+UEP8S8Bz+2jwo/UV0NP/ElED/+5xI/b6QVP0hZGD8vBxs/WKwdP65JID/f3SI/lGglPyvpJz8gXyo/mMosPwwqLz/2fTE/7cUzPzsANj+hLTg/fU06P8dePD//YT4/GVZAP7E6Qj/kD0Q/ydRFP6WIRz+BLEk/yL5KP60/TD/Ork0/hQtPP3NWUD9NjlE/4bJSPy/FUz85w1Q/fa5VP1GFVj/FSFc/u/dXP0SSWD+ZGFk/N4tZPw7oWT+kMFo/5mRaP7ODWj+cjlo/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOkOXjvnCbo7JuIKPCEgQDwEGHs8VBidPPP0vTy2lN88gcwAPQvUET2stiI9WmUzPWDqQz1wT1Q9nZxkPfjYdD3IhYI9uJ2KPam3kj0M1Jo92/CiPakMqz29JrM91j+7PdRZwz3Qdss9AJnTPX7C2z3p9OM9cDHsPfV49D20zfw9nZkCPlnWBj5kHgs+hXIPPhLTEz5VQBg+iLocPl9BIT4b1CU+DXIqPpoaLz7nzDM+7Ic4PsFKPT6nFEI+E+VGPqW7Sz4TmFA+JHpVPqZhWj5iTl8+HUBkPp82aT7eMW4+ADJzPhg3eD4qQX0+EyiBPvmxgz4zPoY+q8yIPlBdiz4g8I0+DoWQPgwckz73tJU+n0+YPtbrmj5uiZ0+/SegPurGoj65ZaU+CQSoPpOhqj4jPq0+i9mvPqlzsj6eDLU+uqS3Pjk8uj4507w+uWm/PqP/wT7hlMQ+WCnHPuC8yT5IT8w+ZeDOPhRw0T4g/tM+UIrWPnYU2T51nNs+KiLePm2l4D4cJuM+IqTlPqEf6D7gmOo+CxDtPjOF7z5D+PE+Gmn0PprX9j6vQ/k+OK37Pg8U/j4OPAA/q2wBP+abAj/IyQM/WPYEP5YhBj+BSwc/GXQIP1ubCT9GwQo/1uULPwoJDT/iKg4/XksPP4FqED9PiBE/zKQSP/6/Ez/t2RQ/o70VP9bUFj+W6hc/5f4YP8IRGj8vIxs/LDMcP7lBHT/YTh4/iFofP8tkID+ibSE/EHUiPxd7Iz+7fyQ//oIlP9+EJj9ghSc/gIQoP0KCKT+mfio/rXkrP1hzLD+oay0/nWIuPzZYLz9zTDA/VD8xP9gwMj/8IDM/wQ80PyP9ND8j6TU/vdM2P/G8Nz+7pDg/HIs5PxBwOj+WUzs/qzU8P0sWPT9y9T0/G9M+P0WvPz/tiUA/EGNBP606Qj/BEEM/ROVDPzS4RD+JiUU/QVlGP1cnRz/J80c/kr5IP7CHST8fT0o/2hRLP97YSz8nm0w/sFtNP3QaTj9u104/nJJPP/dLUD99A1E/KrlRP/lsUj/oHlM/9s5TPx99VD9hKVU/udNVPyR8Vj+hIlc/LsdXP8dpWD9qClk/FqlZP8pFWj+E4Fo/RnlbPw0QXD/bpFw/sTddP43IXT9xV14/XuReP1hvXz9j+F8/gn9gP7gEYT8KiGE/fQliPxWJYj/aBmM/14JjPxX9Yz+gdWQ/g+xkP8phZT9/1WU/rkdmP2q4Zj/KJ2c/5pVnP9gCaD+4bmg/oNloP6dDaT/prGk/gxVqP5l9aj9Q5Wo/y0xrPxq0az8+G2w/NYJsP/robD8uT20/HrRtPw4Xbj9Dd24/rdNuP+sqbz+ae28/WsRvP1EEcD9rXnA/PHFwP6mGcD8innA/6rZwP0XQcD966XA/RAJxP9IacT9XM3E/BkxxP/NkcT8TfnE/WZdxP7mwcT8tynE/uuNxP2H9cT8lF3I/CTFyPw5Lcj8zZXI/eX9yP+KZcj9rtHI/Fc9yP+Dpcj/LBHM/2R9zPwo7cz9gVnM/23FzP3qNcz88qXM/H8VzPyThcz9N/XM/mxl0PxA2dD+tUnQ/cG90P1eMdD9iqXQ/kcZ0P+TjdD9eAXU/AR91P8w8dT+9WnU/1Hh1Pw6XdT9rtXU/7dN1P5XydT9kEXY/WjB2P3RPdj+ybnY/EI52P5Ctdj8yzXY/9+x2P+EMdz/vLHc/H013P29tdz/ejXc/bK53PxjPdz/l73c/0xB4P+ExeD8PU3g/WXR4P76VeD89t3g/1th4P4z6eD9fHHk/Tj55P1hgeT95gnk/saR5P/7GeT9h6Xk/3Qt6P3Euej8cUXo/3nN6P7SWej+buXo/lNx6P57/ej+8Ins/7kV7PzRpez+NjHs/9a97P2vTez/v9ns/gRp8PyM+fD/VYXw/mIV8P2qpfD9IzXw/MfF8PyUVfT8lOX0/Ml19P02BfT93pX0/rcl9P+3tfT83En4/iTZ+P+Vafj9Mf34/waN+P0LIfj/P7H4/ZxF/Pwc2fz+vWn8/Xn9/PxKkfz/KyH8/hO1/Pz8JgD+hG4A/CC6AP3FAgD/eUoA/TGWAP7x3gD8tioA/npyAPw6vgD99wYA/6tOAP1fmgD/F+IA/MwuBP6IdgT8QMIE/fkKBP+pUgT9TZ4E/u3mBPyOMgT+KnoE/8LCBP1bDgT+51YE/GeiBP3X6gT/ODII/Jh+CP3sxgj/OQ4I/H1aCP2togj+xeoI/84yCPy+fgj9nsYI/m8OCP8vVgj/254I/GvqCPzcMgz9MHoM/WTCDP19Cgz9gVIM/WWaDP0t4gz80ioM/EpyDP+atgz+wv4M/cdGDPyjjgz/X9IM/egaEPxIYhD+eKYQ/HDuEP41MhD/zXYQ/TW+EP5uAhD/ckYQ/D6OEPzS0hD9JxYQ/UNaEP0jnhD8z+IQ/EQmFP98ZhT+eKoU/TTuFP+pLhT93XIU/9GyFP2J9hT/BjYU/D56FP02uhT94voU/kc6FP5nehT+R7oU/ef6FP1EOhj8ZHoY/0C2GP3Q9hj8HTYY/iVyGP/prhj9de4Y/sIqGP/SZhj8oqYY/SriGP1vHhj9c1oY/TuWGPzD0hj8EA4c/yBGHP34ghz8kL4c/uj2HP0FMhz+5Woc/I2mHP393hz/QhYc/FpSHP1Oihz+FsIc/pL6HP6rMhz+Q2oc/YeiHPzn2hz83BIg/dBKIP8kgiD/OLog/GDyIPzxIiD/nUog/uEuIPwNIiD/mP4g/xjOIP38kiD/qEog/0v+HP87rhz8+14c/fsKHP+Sthz97mYc/CIWHP09whz8WW4c/OUWHP6Muhz9BF4c/A/+GP/rlhj9WzIY/SbKGPwCYhj+afYY/I2OGP6ZIhj8uLoY/tROGPyb5hT9q3oU/bMOFPwWohT8AjIU/Jm+FP0NRhT80MoU/5BGFP0LwhD88zYQ/0aiEPxCDhD8JXIQ/yjOEP20KhD8T4IM/4bSDP/aIgz9sXIM/Vy+DP8gBgz/P04I/dqWCP712gj+jR4I/KRiCP0LogT/at4E/2YaBPyxVgT+/IoE/gu+AP2W7gD9ZhoA/S1CAPyUZgD+jwX8/d05/P6/Yfj9IYH4/QuV9P55nfT+v53w/GmZ8P4Tjez+RYHs/st16PyVbej8k2Xk/5ld5PyzXeD9DVng/c9R3PwhRdz+Zy3Y/CER2Pzm6dT8SLnU/mJ90P/AOdD8/fHM/rudyP4lRcj9GunE/XCJxP0CKcD9X8m8/9FpvP2rEbj8GL24/b5ptP6gFbT+ub2w/hddrP8w8az++n2o/ngBqP65faT9ivWg/WRpoPzV3Zz+T1GY/lTJmP+CQZT8V72Q/1kxkP+upYz9BBmM/x2FiP228YT84FmE/QG9gP57HXz9sH18/wnZeP7rNXT9sJF0/83pcP2bRWz+YJVs/THtaPw7QWT//I1k/PXdYP+jJVz8eHFc//m1WP6e/VT83EVU/ymJUP2W0Uz/wBVM/U1dSP3WoUT8M+VA/oUhQP7iWTz/e4k4/Ny1OP3x2TT9wv0w/0QhMPzFTSz/ynko/dexJPxM8ST9KjUg/xN5HPx8vRz8FfUY/7cdFPyEQRT/0VUQ/uplDP/HbQj9CHUI/WF5BP9yfQD9F4j8/2yU/P+JqPj+esT0/Hvo8P0BEPD/gjzs/0tw6P2EqOj9Ndzk/T8I4PysKOD9aTjc/Eo82P47MNT8QBzU/TD80P2t2Mz+ZrTI//OUxPzUgMT9cXDA/g5ovP7raLj/nHC4/yGAtPximLD+Q7Cs/6TMrP9R7Kj8ExCk/KwwpP+dTKD/Dmic/SeAmPwUkJj+kZSU/+KQkP9ThIz8NHCM/v1MiP0WJIT8BvSA/V+8fP9UgHz87Uh4/SYQdP763HD8z7Rs/HiUbP/NfGj8inhk/3d8YPxUlGD+3bRc/rbkWP1oIFj+fWBU/V6kUP1r5Ez9tRxM/P5ISP33YET/fGBE/JFMQPwmIDz9duA4/7+QNPzAPDT8rOQw/8mQLP5CUCj9GyQk/kgMJP+dDCD+tigc/H9cGP0snBj81eQU/5MoEP+oaBD9laAM/drICP0f4AT/fOQE/IngAP/Vn/z6n3P0+KFD8PprO+j5hPfk+47P3PnIy9j7ut/Q+IEPzPtDS8T50ZfA+L/nuPiOM7T6BHOw+t6nqPnQ06T5zvec+dUXmPnjN5D7BVuM+lOLhPihy4D5bBd8+sZrdPqAw3D6kxdo+0FjZPs7p1z5NeNY+BgTVPoGN0z4VFtI+IZ/QPv4pzz5Yt80+MUfMPoPZyj5Fbsk+RQXIPieexj6POMU+H9TDPodwwj6DDcE+0Kq/PixIvj6I5bw+BYO7PsQguj7pvrg+hF23PpP8tT4XnLQ+DjyzPnzcsT5vfbA+8h6vPhHBrT7XY6w+VAerPpKrqT6gUKg+gfamPjKdpT6tRKQ+7uyiPu+VoT6qP6A+HOqePkOVnT4jQZw+xO2aPi2bmT5mSZg+c/iWPlWolT4JWZQ+kAqTPu28kT4mcJA+QSSPPkPZjT4wj4w+BEaLPr39iT5atog+3W+HPlAqhj695YQ+K6KDPqFfgj4fHoE+ULt/Pnk8fT6+v3o+KUV4PsTMdT6XVnM+puJwPutwbj5hAWw+BJRpPtUoZz7fv2Q+LFliPsf0Xz6vkl0+2jJbPj7VWD7PeVY+iCBUPmjJUT5wdE8+nyFNPuvQSj5Fgkg+mjVGPtnqQz74oUE+9Fo/Ps8VPT6H0jo+RJE4PlNSNj4CFjQ+o9wxPoGmLz7ucy0+N0UrPqwaKT6b9CY+f9okPuLHIj4xuiA+IrEePm6sHD7Hqxo+5K4YPnq1Fj5AvxQ+6ssSPi7bED7v7A4+NgENPhEYCz6LMQk+sE0HPohsBT4bjgM+c7IBPjWz/z1FB/w9NWH4PSLB9D0jJ/E9OpPtPXIF6j3OfeY9X/ziPTeB3z1vDNw9F57YPTk21T3U1NE943nOPWMlyz1a18c92o/EPfBOwT2uFL49F+G6PSW0tz3QjbQ9D26xPehUrj1mQqs9mzaoPZMxpT1RM6I9yjufPfRKnD3GYJk9QH2WPW+gkz1hypA9I/uNPbUyiz0McYg9GraFPdQBgz06VIA9r1p7PW4adj3K53A9vMJrPSirZj3toGE98KNcPSy0Vz2x0VI9lfxNPeg0ST2sekQ9w80/PRcuOz2NmzY9KhYyPQieLT1KMyk9CNYkPUiGID3rQxw91Q4YPe3mEz0jzA89er4LPfK9Bz2QygM9R8j/PLoU+DzFefA8yvboPGuL4TyvN9o8kPvSPBTXyzx1ysQ8Kta9PKP6tjxXOLA8PJCpPLADozwalJw80kKWPL0PkDw++Yk8tv2DPP02fDzVonA8UT1lPA8FWjyM+E48aRhEPB9nOTxU5y48gJskPISDGjymnBA8AOQGPMat+jsd6ec733zVO7trwzvKuLE7aWegO198jzu/+H07Y9hdO06TPju4FyA7LFMCO79lyjqzQpE6vBUyOvkohjn9gyu5BcYXupeVgbqGTra6GtTpuo/qDbvy9CW7stQ8u1BXUrsOcWa7RT55uz5uhbsftY27WIuVu8cQnbuQZaS7fKmru1bvsrt+Pbq7qJnBu8gIybujgdC7O+zXuzww37tUNea7IOjsu/Q587thHPm7OoH+u0axAbxW4QO8/NEFvLmEB7yA/Qi8+kIKvAlcC7xOTwy8/iINvILcDbxCgQ68tBYPvKegD7yWIRC82psQvMAREbz1ghG8p+wRvP1LErwInhK8rN8SvJkNE7yKJBO8RSETvLkAE7w3wBK8+lwSvH7UEbztJRG8k1IQvJ1bD7xjQg68ngkNvIC1C7w8Sgq898sIvFo/B7xtqQW8JA8EvEV1Arz/3AC88If+u1dP+7tUC/i7SbX0u71F8bvPtO27Rvvpu4kV5rsXBOK7ccfdu25g2bsW09S79CbQu5Zjy7tdkMa7Z7LBu2TMvLsY4be7B/Oyu50CrrtBDqm7chSku4ETn7vACJq7vfCUuwrIj7t0i4q7lDuFu165f7sb5nS77gVqu7IdX7uYL1S7ID1Ju6RHPrskUDO7Ilcou/NcHbtuYhK7FGgHu3Xc+Lpw6uK6x/vMutESt7pDNKG6eWWLuvhUa7qnEEC6uAYVunJ+1Lk+Dn+5iNOsuJRCrDhQunw5Z07ROcvoETrz5zo68ZtjOq/8hTq/+5k6IcatOiNXwTq9qtQ6lL3nOv2O+jrQjgY7k7QPO8e3GDsUlyE7o1EqO5vlMjunUjs7G5hDOyG2Szu7rFM7jHhbOwwUYzsweWo7mqJxO3OPeDttQ387BuGCOxYHhju+FYk7gQ6MOzjzjjtlxZE7XoWUO/YxlzsWypk7p0ycO7q2njuGA6E7LS6jOz8ypTugDac7fsCoOwJLqjuYras7r+qsO3kGrjtnBa87a+uvO4u8sDvQfLE7/i+yO8fZsjt/ebM7dAq0O92HtDtd7bQ7bja1O3FetTv1YLU73jm1O5LmtDtPZrQ7E7izO1/bsjvK0bE7L5+wO4FHrztvzq071zesO76HqjsWwqg7e+qmO5wEpTvsE6M72RuhO4AfnzuhH507TRqbO64NmTsU+JY7ZtaUO3KkkjscXpA7iP+NOwKEiztu5og7mCGGO+IwgzvJEYA7w4h5O4KRcjsnPms755VjOwSmWzvpe1M7LSVLOxizQjvPOjo7SdExO6iKKTv7biE7Z3sZO5CsETtx/gk7nWMCO9qJ9Tp3F+Y6xkTWOufxxTq9DLU6J4OjOrZEkTpUvHw6N/BVOqJ3LjogpQY6PHK9OWKSWzkcfnU4xPW9uAFiebmoKMm5a5IKuvpyMLoyUla6j0d8up01kbpaa6S6q8a3ui4/y7oqzd66kWfyulUDA7uK0Qy7tZkWu89XILuACiq797Mzu2RXPbv19ka7AJNQu60pWrt4uWO7jEFtu2jBdrtFHIC7ztKEu3eDibtWLo67GNSSu711l7uyE5y7IK6gu95Epbvr16m7x2euu9/0srszf7e7wQa8u6GLwLv8DcW7043JuyYLzrv0hdK7lP7Wu51127u469+7fmHku5rX6Lv4Tu27Wsjxu+tE9ruZxfq7ekv/u9PrAbyPNQS8fYMGvB3WCLz8LQu8r4sNvOLvD7xtWxK8L88UvAxMF7zP0hm8L2QcvPcAH7zUqSG8IFwkvMcRJ7zewym8DWssvOICL7xnijG8zgA0vCxlNrz2tji8yvU6vEkhPbwxOT+8Qj1BvGctQ7x/CUW8ltFGvLaFSLwJJkq8vLJLvBgsTbxqkk68J+ZPvMYnUbzRV1K8QXdTvEyHVLw0iVW8fH5WvHBnV7yDQ1i83xFZvNjRWbwkg1q8DCZbvNy6W7zrQVy8eLtcvK4nXby5hl28w9hdvC4eXryPV168h4VevLioXrw2wV68Ys5evKTPXrxRxF68PqxevNWHXrxuV168iRtevCbUXbzagF28QyFdvPe0XLxsPFy847hbvNUrW7ykllq8yPpZvK5ZWbzYtFi80w1YvC5mV7yLpla8Uw1WvClpVbwMulS8HQBUvEY7U7yoa1K8IpFRvLSrULxJu0+8zL9OvAa5Tbzipky8IIlLvKBfSrzMKkm8cetHvFGiRrwsUEW8OPVDvCqRQrysI0G8fqw/vAssPrw0ozy88RI7vC18ObyA3ze8aT02vFWWNLy56jK8CzsxvOOHL7zg0S28bhksvKNeKrzpoCi83t8mvCIbJbxMUyO8HoohvBvBH7zR+R28VTUcvKt0GryTuBi87wEXvGBRFbxnpxO8egQSvBlpELyb1Q68YUoNvNXHC7wtTgq8it0IvOB1B7wbFwa8EMEEvGhzA7y3LQK8dO8AvPhv/7vlBf27bJH6uzME+Ls7UfW7u3Pyu/dt77teQuy7dPPou2eD5btn9OG7dUjeu6yB2rv4oda7tKvSu82gzrtxg8q7elXGu34Ywrsszr27Bni5u7oXtbvfrrC7+D6su57Jp7v8T6O7/9Keu75TmrsR05W791GRu7XRjLt2U4i7UtiDu2rDfruZ4XW7Ng5tu29LZLtznFu7IAVTu9CISrvdKkK7oOw5u8PNMbtuzSm7zOohu7ElGrtHfhK7u/QKu2KJA7sme/i6/Cfquvkd3LrNYc66fvXAulzWs7pjAqe6kHeauuM1jrq4QIK6IDRtuuWJVrpvh0C6ITQrurCWFrp7tAK6/BbfuVIjurl9eJa5WP9nuR1EJbkvE8m4K0gWuNSWvjd1P6c4eZENOQdtRTmo9Ho5O+mWOeDOrjlJ/MQ5JEHZORuc6znBMvw5VpUFOmNVDDoNdRI6NRUYOhVYHTrgWyI6tDInOvHhKzpHbjA6FNs0OpwfOTpnJj06+tlAOuEmRDqu/0Y6/VpJOmkvSzrndkw6dzFNOndkTTr2F006qVJMOqIeSzr7i0k6HKZHOnZ8RTpuGEM6GIZAOoDNPToO+Do6dgw4OsAONTryAjI6Z+wuOh/LKzoYnSg6TGAlOmIRIjqurx461DcbOtWpFzoCAxQ6BUQQOolrDDrjegg6vnAEOh5RADrBPvg5Fb/vOUgr5zlmi9453OzVObdXzTm01sQ54XG8OfoztDm1I6w5cUakOTSgnDmhK5U5tuiNORfShjnUzH85VENyOawHZTnPEVg5HGdLOZIHPzk/+zI5gkcnOQnvGzmS/BA5e3UGOUK++DhqeOU4yx7TOGaxwTjbKrE4K4uhOJjHkjiC5YQ4nKlvODggVziWOUA4xMoqOH7eFjgIagQ4wNrmNxymxzeeS6s3UaCRN3kddTfa10s3xm8nN2NkBzd7Fdc2xm+nNuirfTYJkDo2i4gDNtsqsTX5HVw16/X2NJW/VjSVv1YzWdkAs1nZgLN3zCuzd8wrsnfMKzJ3zCsyd8wrMnfMKzJ3zCuyd8wrs5W/VrNZ2QCzlb9WM5W/VjTA2uY0/7FONXoWpTVSnvU1RHgsNvKJaTY0rJg2hfPCNtPw8zYP0hU3pjE1NxRtWDdnWX83QiaVN72NrDeQI8Y3ybzhN2dZ/zdyhw8442MgOAdCMjiaLEU44BhZOJYRbjj/BYI4a4mNOLCNmTgtGKY4JR6zOPakwDhCp844TRrdOFnz6zhLIvs44lAFOdYwDTlQLhU5REEdObFpJTmLny05L+g1Oe5APjl3rEY5HChPOTq5VzmBYmA5QSFpOSr4cTmA3Ho5wuGBOe1ThjmyvIo5CxiPOetdkzlLipc5HJWbObF7nzmqOKM5qcamOa4lqjm5Va05G1SwOdskszn4x7U5yz64OauKujlHrrw5pa2+OceIwDmyQ8I5FuHDOfNgxTmZwMY5Wv3HOS8TyTkQ/sk5mrTKOcQyyznSbcs5D1/LORT9yjl2Oso5gBDJOct1xzlRZsU5u+DCOanfvzl8aLw5kIC4OaIytDkYiK85Xo6qOT9YpTmD+J8594GaOaf8lDnraY85FMeJOcoShDnxgXw5TnhwObXdYzmHhFY520lIOZgdOTk34ig5S4oXOTIbBTnCf+M4NEG7OKLQkTgp/U44bu3xNxZmCDcvvFS3g80MuBfiZLia1p64pLfLuAAv+bgVqRO5TBsruZP7Qrk5R1u5gvNzudl6hrl/HZO5q92fuam0rLkTmbm5i4XGuQl207mOauC5cmTtuQtl+rmCtQO6KTkKuiK6ELrANxe6/68duoghJLpYiiq6a+gwur45N7r8fj26erdDuo3iSbqH/0+6ZwxWun8IXLp58mG6VMpnumKNbbqhO3O6ENN4ugJTfrq53IG63IKEuucah7oupIm6CB+MunKKjroX5pC69jGTurttlboOmZe6m7OZura9m7pftp26QJ6full0obqqOKO63OqkupmKpro2F6i6s5Cpurn2qrqgSay6ZIitugazrrrbyK+6jMmwuhi0sborirK6dU2zuk8BtLpqqbS6dUe1uhrctbpbZ7a6jOm2ugNjt7rB07e6xju4umebuLr68bi60j+5ukaEubpUv7m6p/C5uukXurrFNLq6jUa6uplNuro9Sbq6ITm6upwcurqs87m6/L25uuB6ubqtKbm6Dcu4uqxeuLo05be6pl63ugPLtrpJKra6z3y1uj/CtLqZ+rO6MyazumJFsrp7V7G6Kl2wum9Wr7pKQ666uiOtusD3q7oIwKq6O3ypulstqLoT06a6Ym2luvX8o7ofgaK6jPqgupJpn7qIzp26Fimcuut6mrpdxJi6bAaXushClbpxepO6va2RurDej7pJDY66jTuMuhGihDouT5A7U37rO2SoLzylKm88m62ZPPgmvTz/Z+E80/4CPV0/FT1fVSc9XUE5PWoQSz0Cy1w94nJuPV0GgD3e0Ig9r5qRPedgmj2gIKM9QtirPeqItD3XNb09kOHFPfSOzj1YQ9c9MwPgPRzQ6D3Yq/E9B5r6PY/PAT6LXwY+Dv4KPhWrDz7NZhQ+kTEZPtsKHj5k8SI+P+QnPpbiLD4Y6zE+S/w2PgUVPD5xNEE+QlpGPjSGSz7ft1A+Re9VPrYsWz4YcGA+H7llPvIHaz4KXXA+krh1PpUaez5yQYA+oPiCPsGyhT68b4g+iS+LPh/yjT51t5A+Vn+TPlhJlj4xFZk+ruKbPtewnj5KfqE+T0qkPm0Upz7U3Kk+sqOsPsJorz4zLLI+We+0Ph6ztz7Gd7o+CT29Pg4CwD6AxsI+SorFPgpNyD5BDss+sc3NPiSL0D4NRtM+6P3VPnuy2D6sY9s+iRHePge84D7oYuM+3wbmPpWp6D6zS+s+Ye3tPpSN8D7cKvM+9MT1Prlb+D607vo+dn39PuwDAD8NRwE/q4gCPxbJAz9PCAU/RUYGP8yCBz/WvQg/ZPcJP2IvCz+7ZQw/bJoNP3bNDj/b/g8/ny4RP8dcEj9ciRM/ZbQUP7lSFj+pexc/9KIYP5rIGT+d7Bo//Q4cP7svHT/YTh4/VGwfPzCIID9uoiE/E7siPyDSIz+a5yQ/gvslP9gNJz+dHig/0y0pP3o7Kj+URys/IlIsPyVbLT+dYi4/iWgvP+psMD++bzE/BHEyP7pwMz/gbjQ/cms1P25mNj/UXzc/oFc4P9BNOT9jQjo/VTU7P6QmPD9LFj0/RQQ+P43wPj8f2z8/+sNAPxurQT9+kEI/H3RDP/dVRD//NUU/MhRGP4vwRj8Hy0c/oaNIP1V6ST8fT0o/+SFLP+DySz/NwUw/u45NP6VZTj+FIk8/VulPPxOuUD+3cFE/PjFSP6TvUj/nq1M/AmZUP/QdVT+501U/TYdWP684Vz/b51c/zpRYP4Y/WT8B6Fk/Po5aPzsyWz/601s/enNcP7oQXT+8q10/gERePwjbXj9Yb18/dAFgP2GRYD8iH2E/vqphPzo0Yj+cu2I/70BjP0DEYz+cRWQ/EcVkP6xCZT96vmU/izhmP/GwZj/KJ2c/M51nP0oRaD8thGg/+/VoP9JmaT/S1mk/JEZqP/O0aj9sI2s/r5FrP8L/az+hbWw/S9tsP2ZIbT8etG0/kB1uP9ODbj+d5W4/90BvP5aVbz97228/hTFwP6dWcD9eaXA/Q39wP7eXcD/jsXA/4sxwP8/ncD9EAnE/dBxxP542cT/9UHE/omtxP3yGcT98oXE/l7xxP8rXcT8b83E/iw5yPx8qcj/XRXI/tGFyP7h9cj/imXI/MbZyP6bScj9A73I//wtzP+Uocz/1RXM/LmNzP5KAcz8dnnM/z7tzP6jZcz+o93M/0xV0Pyk0dD+tUnQ/XHF0PzSQdD81r3Q/X850P7PtdD80DXU/4yx1P79MdT/GbHU/94x1P0+tdT/QzXU/fO51P1UPdj9aMHY/iFF2P95ydj9alHY//LV2P8XXdj+3+XY/0ht3PxU+dz9/YHc/DIN3P7uldz+NyHc/g+t3P6AOeD/hMXg/RlV4P8t4eD9vnHg/MMB4PxDkeD8QCHk/MSx5P3JQeT/PdHk/R5l5P9a9eT9/4nk/Qgd6PyIsej8cUXo/MHZ6P1qbej+YwHo/6uV6P1ALez/NMHs/YlZ7Pwx8ez/KoXs/mMd7P3Xtez9iE3w/YTl8P3NffD+YhXw/zat8PxHSfD9h+Hw/vR59PyhFfT+ha30/LJJ9P8W4fT9s330/HQZ+P9gsfj+eU34/cXp+P1Khfj9CyH4/P+9+P0gWfz9bPX8/d2R/P5mLfz/Bsn8/7dl/PwwTgD+rJoA/TjqAP/RNgD+dYYA/R3WAP/KIgD+enIA/SLCAP/LDgD+a14A/QeuAP+n+gD+SEoE/PCaBP+U5gT+MTYE/MGGBP9N0gT91iIE/FpyBP7avgT9Ww4E/89aBP4zqgT8h/oE/sxGCP0Ilgj/QOII/W0yCP+Ffgj9jc4I/3YaCP1Oagj/CrYI/LsGCP5XUgj/254I/UPuCP6AOgz/oIYM/KDWDP2BIgz+RW4M/um6DP9mBgz/ulIM/9qeDP/O6gz/lzYM/zOCDP6nzgz96BoQ/PhmEP/MrhD+aPoQ/MlGEP71jhD86doQ/qoiEPwqbhD9arYQ/mb+EP8fRhD/k44Q/8vWEP/EHhT/fGYU/vCuFP4U9hT87T4U/3mCFP3ByhT/wg4U/X5WFP7umhT8CuIU/NsmFP1XahT9h64U/W/yFP0MNhj8ZHoY/2y6GP4k/hj8iUIY/qGCGPx1xhj+AgYY/0pGGPxKihj8+soY/V8KGP17Shj9S4oY/NfKGPwcChz/IEYc/eCGHPxYxhz+jQIc/HlCHP4lfhz/jboc/L36HP26Nhz+inIc/y6uHP+K6hz/fyYc/t9iHP3Xnhz859oc/KAWIP10UiD+hI4g/cDKIP0lAiD+xTIg/T1eIPw1biD9KUYg/J0iIP5Y5iD8CKIg/JBSIP+X+hz/T6Ic/ZNKHP/67hz+5pYc/WI+HP5J4hz8oYYc/+0iHP/svhz8PFoc/N/uGP6ffhj+bw4Y/UKeGP+qKhj95boY/ClKGP6g1hj9FGYY/wPyFPwHghT/nwoU/PKWFP7uGhT8kZ4U/QUaFP/gjhT8yAIU/29qEP+2zhD96i4Q/lWGEP1I2hD/QCYQ/OtyDP7utgz95foM/jU6DPw0egz8Q7YI/oruCP8iJgj9/V4I/yCSCP5jxgT/UvYE/YomBPyhUgT8QHoE/B+eAP/uugD/XdYA/gzuAP8n/fz/DhX8/ywh/P9qIfj/xBX4/C4B9P3v3fD8GbXw/deF7P41Vez/JyXo/cT56P9CzeT8HKnk/haB4P2YWeD/Kinc/BP12P9lsdj8s2nU/2UR1P+GsdD9uEnQ/rXVzP9DWcj89NnI/gpRxPzHycD/ST3A/1q1vP58Mbz+abG4/wM1tPxYvbT9dj2w/We1rP3FIaz/eoGo/8fZpP/5KaT+YnWg/g+9nP4VBZz87lGY/jOdlP/06ZT8bjmQ/iuBjPycyYz/fgmI/ndJhP2EhYT9Hb2A/bbxfP/MIXz/3VF4/l6BdP/LrXD8mN1w/UYJbP3fQWj+EGFo/kl9ZP8mlWD9O61c/SDBXP9t0Vj8tuVU/Yv1UP55BVD/ehVM/CcpSPwEOUj+bUVE/ZZRQP8rVTz8vFU8/YVJOPw6OTT8myUw/lARMPxJBSz8ff0o/L79JP6MBST+/RUg/2IlHPz/MRj+MC0Y/iUdFP6eARD9Ct0M/3OtCPzQfQj8YUkE/WoVAP5e5Pz8p7z4/ZiY+P5tfPT/Vmjw/5tc7P6gWOz+/Vjo/Bpc5P+3VOD/hETg/zkk3P7F9Nj/erTU/m9o0P6UEND9aLTM/KFYyP26AMT/ZrDA/f9svP3sMLz/UPy4/VXUtP6isLD965Ss/dh8rPz5aKj91lSk/vNAoP6MLKD+cRSc/GX4mP460JT+d6CQ/EBokP61IIz9VdCI/Sp0hPwbEID/86B8/vgwfPyMwHj8XVB0/g3kcPyyhGz+iyxo/c/kZPyUrGT/pYBg/qpoXP1fYFj+uGRY/rV0VP+iiFD//5xM/fysTP9VrEj9qpxE/ntwQP+AKED//Mg8/81UOP8V0DT9IkQw/AK4LP3PNCj/l8Qk/dRwJP6FNCD8Jhgc/dsUGP/cJBj8YUQU/bJgEPxjeAz/4IAM/AGACPziaAT/MzwA/0AEAPydj/j6Jvvw+GSH7Pk96+T5C1fc+rDn2PsSm9D4JG/M+C5XxPt0S8D4Yku4+cxDtPsqL6z6rA+o+AnnoPq7s5j6oX+U+StPjPhpJ4j60wuA+xkDfPvvB3T5pRNw+MsbaPhJG2T6Pw9c+Sz7WPvi11D5bK9M+G6DRPukV0D42js4+egnNPqSHyz6yCMo+gIzIPq0Sxz7FmsU+WSTEPgKvwj5wOsE+T8a/PlRSvj5y3rw+02q7PqD3uT7/hLg++xK3PpKhtT7EMLQ+kcCyPgZRsT4x4q8+IXSuPuUGrT6Omqs+LC+qPs3EqD52W6c+HfOlPtCLpD7XJKM+g7uhPoZOoD7Z3Z4+x2qdPgv4mz5khpo+xhWZPlOmlz4nOJY+RcuUPq5fkz5v9ZE+mIyQPjMljz5Dv40+ylqMPsX3ij4wlok+DTaIPmbXhj5IeoU+vR6EPuDEgj7QbIE+jxaAPiyEfT7o3Xo+pTl4PnCXdT5u93I+F1pwPpy/bT7zJ2s+DZNoPtcAZj5VcWM+leRgPrVaXj7S01s+4U9ZPsvOVj4iUFQ+j9NRPhNZTz7D4Ew+8WpKPrj3Rz4Bh0U+lhhDPiCsQD6NQT4+2tg7Pk5yOT5sDjc+l600Pi9QMj6T9i8+JaEtPkNQKz5NBCk+o70mPt++Iz7kiyE+U14fPs81HT7/ERs+ifIYPhLXFj5AvxQ+uKoSPiSZED5iig4+hX4MPpl1Cj6ubwg+z2wGPgdtBD5hcAI+53YAPlkB/T2MG/k9iDz1PWlk8T06k+09A8npPcoF5j2jSeI9ppTePe/m2j2RQNc9kaHTPe0J0D2cecw9pfDIPRRvxT399ME9d4K+PYcXuz0ltLc9S1i0PewDsT0Rt609zHGqPS40pz1D/qM9CNCgPXKpnT1zipo9BHOXPTFjlD0MW5E9pVqOPf5hiz0McYg9vYeFPQimgj3Tl3895vJ5PWBddD1Z1249umBpPWL5Yz0loV4981dZPdodVD3t8k49StdJPfDKRD3DzT89pd86PXoANj1HMDE9L28sPV69Jz3qGiM9yIcePdUDGj3rjhU98igRPejRDD3MiQg9p1AEPU4mAD26FPg81/jvPCz45zxkEuA8ekfYPG2X0DxYAsk8nIjBPMQqujxh6bI8S8WrPP6/pDw42508sBiXPKN4kDw++Yk8hpiDPAmpejyhV248CTtiPFtRVjx3mUo8CRU/PE3HMzyIsyg8PdsdPPI7Ezws0gg83zT9O7Um6TvffNU7uDrCO/Fjrzvm/Jw7NguLO1oqczvJPFE70kEwO8whEDvPjeE6+TGkOrboTzrmYLI55jLiuIOOELqXlYG6Y8i5uoKX8LqkzhK78S0su44oRLvSi1q7yF5vu9hjgbujdIq7QfmSu3AVm7uF8KK7mrGquwRzsrt+Pbq76BfCu7YHyrtR/9G7B+HZu1KP4bsA7ui7Bejvuy1s9ruGaPy7U+gAvDpSA7yycwW8M04HvA3mCLz6Qgq8XG0LvEFtDLwASg28OgoOvI60DrwTTw+8zt0PvHBjELwS4xC84V0RvGTREbzpORK895MSvNvbEryZDRO8NiUTvKseE7x99hK8RakSvLQzErwwkxG8zscQvDzTD7zStg68HnUNvJ0SDLyElAq85P8IvCdaB7xtqQW8wPMDvL8+ArxWiwC86qz9u0M6+rtDuPa7hh7zu3tj77vofeu7Amfnuwce47vPo967BfnZu9sh1bv0JtC7txHLu8bqxbssuMC7BH27u6g8trud+bC7TbOru7NnprvjFKG7WLibu/VNlru00ZC7ZD+Lu8OWhbteuX+7uCx0u/qRaLuD7ly7rERRu02WRbvp5Dm7VjEuu2x8Irurxha7wBALu6q2/rrXTee6CujPukeIuLpDNKG6B/KJujiNZboZcDe6bpcJuo4auLnWbju5pTIDt8yxAjfDmzk56Sa1OZKDBjo2KzI6n31dOl03hDrkeZk6BoCuOrlEwzpJwtc6svXrOvHd/zoDvQk7oGMTO87hHDsKNiY7qF4vO1FbODvaK0E7GNBJOwxIUjtakFo7TKJiO4F2ajvBBXI74U55OzQrgDstkIM7I9mGO1cIijvkH407DCKQO/0PkzvL6JU7MquYO8dVmzsY5Z07iFOgOzWbojuutqQ77qOmOyFjqDuG9Kk7XlirO3CSrDvup607eZ6uO657rzvBRLA7UP6wO2KtsTt4UrI7NeiyO+Noszt5zrM77RK0O98wtDvdIrQ7SeSzO8lyszudzbI7w/OxO9HlsDsOqK87Az+uO2GvrDua/ao7Yi6pO5ZGpzvTSqU7iz+jOwUpoTtJC5872+mcOyfEmjuml5g7mGKWOyEilDuP0ZE77muPO03sjDsgTYo7CoiHO/6WhDsJdIE7TDl8OysidTsvom072rplO+t3XTuo6lQ7riJMO8UyQzvDMzo7Uz8xO6BvKDsY0h87NWQXO0YhDzvsBAc7Ffn9Ot/X7Towbt06sYnMOoMKuzot3Kg6h+aVOosmgjoEjVs6LvQxOpfoBzpCfLs5ecdOOcftHzgcP/m4GoaPuSH337ld+he6X+Y/us7fZ7ptAoi6MzqcupedsLqPJcW6BsfZukB27rpqlAG7L+oLuw83FrvYdiC7Y6oquwnVNLt8+j67wR1Ju1Y+U7uPWl275m9nuwJ7cbveeXu7fLWCu32mh7tckIy7HHSRu6hSlrsELpu7HAeguzHepLuDs6m7kYauuwVXs7sKJbi7jPC8u165wbtWf8a7iULLu/gC0Lv4wNS7dX3ZuwY53rvt9OK7gbLnu8Vy7Lv6NvG7NwD2u6rP+ruUpv+7MUMCvEy4BLwwMwe8lLQJvCU9DLzZzQ68nGcRvJALFLytuha883UZvFo+HLzMEx+8YvEhvC3PJLx0pCe8N2oqvCYeLbxgvy+85EwyvMXFNLyCKTe8sHc5vO+vO7wT0j28B94/vKrTQbwIs0O8IXxFvBQvR7w3zEi87FNKvJ3GS7z3JE28mm9OvGinT7zDzVC8TuRRvJfsUrwI51O81tJUvB+vVbwMe1a8iDZXvP/hV7y7fVi8PQpZvKaHWbxB9lm8OFZavOynWrwK7Fq8PCNbvFpOW7xPbVu8bX9bvPWDW7w6elu8UWJbvKc8W7zHCVu8+8lavO58WrwrIlq8GblZvNtBWbycvVi8Ci5YvOeUV7zt81a880xWvMihVbxD9FS8XkZUvC5WVrwkrFW8pvVUvL0yVLyKY1O8+IdSvAagUby0q1C82KpPvGedTrwgg028zltMvEYnS7xy5Um8CJdIvAs9R7x82EW83WlEvAzxQryJbUG8E98/vOxFPrw0ozy8A/g6vHxFObxUjDe8Fs01vEUINLyBPjK8YHAwvJmeLrzjySy8h/IqvBIYKbwBOie8s1clvL9xI7weiiG8s6IfvEq9HbxI2xu8w/0ZvLwlGLwqVBa8uokUvBjHEry4DBG8MlsPvPGyDbxrFAy8AYAKvNP1CLzgdQe8CgAGvBmUBLyuMQO8HNgBvASHALzseP67z+L7uxE5+burava732zzuxlA8Luf5+y7S2bpuwy/5btn9OG7ygjeu8/+2bvl2NW7ppnRu6tDzbtj2ci751zEuzrQv7tgNbu7Mo62u7HcsbujIq27CWKou2eco7v/0p67/Qaau005lbtda5C7r56Lu7DUhru4DoK7v5x6u6UqcbtUyme7/H5euyRNVbvTOEy7kUZDu2F4OrvDzTG730Upu9/fILttmxi733gQuzR4CLtvmgC7JsPxuqCh4rqs1tO6+2XFuotOt7pYjam6Wx+cuusEj7q4QIK6NqxrujWQU7p7NTy6vKIlul/hD7p86fW59a7NuaP1prlcpYG5k0Y7uXE367g5HEi4gqh7NzBinzh5kQ05LxNJOdrygDmC0Zs5fOa0OWH1yznn0eA5MJDzOZsvAjr4tgk6YXoQOhWgFjpYUBw6b7MhOoHhJjrx4Ss6yLowOg9wNTqs8zk6ICw+Our/QTqRWUU6pSlIOhVmSjp9BUw6fQJNOsxjTTp3MU06jHNMOss2Szr7i0k6N4NHOvItRTpAmEI6js8/OpjePDpvzzk6dak2OgRwMzrUKTA6j9csOt53KTpmByY6eIMiOhDqHjrUNxs6GGwXOtiEEzpogQ86HWELOqIkBzpPzQI6/7z8Ocy58znAm+o5QWzhObw42DlEDc85RvfFOSYAvTn6M7Q5JpyrOWA/ozkAH5s5/zaTOQaGizkNCIQ5HHJ5ObQsaznUN105K5ZPORdNQjlIXzU5HNIoOaCtHDmS/BA5UMQFOSwf9jjJvOE4d2HOOPQXvDgj0Ko4BIqaOJlFiziK5Xk4ESNfOE0uRjjF8S44N3gZOGqhBTjA2uY3MbjFNzOwpzdA2Iw38olpN6FCPzfNAxo37ZrzNm+TvDZTRY42zF1PNlGgETZt7r81JDlsNVnZADWVv1Y0d8wrM3fMK7NZ2YCzd8wrswAAAIB3zKsyAAAAAAAAAAB3zKsyAAAAgHfMK7OVv1azd8wrs3fMKzPNAkw0h5fxNCrNXjUN2rM1ieMGNqFCPzYM24E2qyCrNixy2zauvQk3H54pN0DbTTcfSnY314qRN+tJqjfRTMU3AqniN0AvATikNhI4NFUkOCirNzhHGEw4ybxhOHd4eDjENYg4QcCUOBHhoTg0mK847Nq9ON2jzDgF89s4SrjrODLe+zgALQY5fJAOOdAOFzn8px858lMoOQMQMTkv3Dk5JrtCOeesSznRtlQ5NNZdOR8TZznianA5v9J5Of6fgTntU4Y5x/uKOYaTjzluEJQ5x2uYOTSgnDlXqKA5eH2kOeocqDlUhas5D7iuORm1sTl0fLQ5zhC3OS52uTmUrLs5X7m9OT2fvzmGX8E58QDDOXZ/xDln2MU5EwnHOW8JyDlx1cg5X2LJOdOmyTm+msk5Xi/JOZ9YyDnDC8c5DT7FOc/swjkCFMA5nq+8ObLHuDlLZLQ51ZKvObxgqjki4qQ52C2fOV9dmTl5f5M50JKNOWSXhznVh4E5wqp2OQ7NaTkvPlw5JctNOQlRPjkFtS05P9wbOau+CDkZCek4x8G+OCAYkziN2Uw4mwDkN6fWsTaN1ou3jFwiuOFuf7i3tq64UUzeuItJB7lN2B+52984uZNlUrkJXGy5OliDuQqskLm5Hp654qaruc89ubka2sa5a3rUuXMh4rmI0O+5q4f9ucKiBbqugQy6l14TuiI2GrpHBCG6BMcnugF9Lro6JDW6r7w7umFGQrqnwki6KTBPujyOVbqI21u6ChZiur47aLqhSm66W0F0upUeerqf33+6O8GCujeDhboYNYi6MtaKujBmjboQ5Y+6fVKSuiKulLpV+Ja6EjCZultVm7raZ526OWefundTobrqK6O6OvCkuhKgprodO6i6rsCpunIxq7oQjKy6iNCtujD+rroDE7C6owmxug7hsbpMnbK6ukOzuhLds7pXa7S6Nu+0uq1otbpq2LW6az62ugebtro+7ra6EDi3uid4t7otrre6zNm3ugT7t7opEbi65hu4uuQauLokDri6pPS3ug/Pt7pknLe6o1y3unYPt7rasra6eUa2uvzJtbpmPrW6DKS0uvD7s7oRRbO6GoCyugytsbqPy7C6+9uvuqXerrqN0626X7usunCVq7q+Yaq6nx+puhPQp7rGcqa6Dgmluu2So7phEKK6FoKgugvnnrrsP526D42buh/PmbodB5i6DzeWup5flLp5gpK6+KCQuhu8jrqR1Yy6Be6KukVuZCBvZiB0aGUgdHJpYWwhAAAAAAAAAAAAAAAAAAAAfBUAABErAAAiVgAARKwAAAAAgL8AAIC/AAAAAAAAgD8AAIA/AACAvwAAgD8AAIA/AACAvwAAgD8AAAAAAAAAAAAAgD8AAIA/AACAPwAAAABhdHRyaWJ1dGUgdmVjNCBhUG9zaXRpb247IGF0dHJpYnV0ZSB2ZWMyIGFUZXh0dXJlQ29vcmQ7IHZhcnlpbmcgdmVjMiB2VGV4dHVyZUNvb3JkOyB2b2lkIG1haW4oKSB7IGdsX1Bvc2l0aW9uID0gYVBvc2l0aW9uOyB2VGV4dHVyZUNvb3JkID0gYVRleHR1cmVDb29yZDsgfQAAAAAAcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7IHVuaWZvcm0gc2FtcGxlcjJEIFl0ZXg7IHVuaWZvcm0gc2FtcGxlcjJEIFV0ZXg7IHVuaWZvcm0gc2FtcGxlcjJEIFZ0ZXg7IHZhcnlpbmcgdmVjMiB2VGV4dHVyZUNvb3JkOyBjb25zdCBtYXQzIHVtM19Db2xvckNvbnZlcnNpb24gPSBtYXQzKDEuMTY0LCAxLjE2NCwgMS4xNjQsIDAuMCwgLTAuMjEzLCAyLjExMiwgMS43OTMsIC0wLjUzMywgMC4wKTsgdm9pZCBtYWluKHZvaWQpIHsgbWVkaXVtcCB2ZWMzIHl1djsgbG93cCB2ZWMzIHJnYjsgeXV2LnggPSAodGV4dHVyZTJEKFl0ZXgsIHZUZXh0dXJlQ29vcmQpLnIgLSAoMTYuMCAvIDI1NS4wKSk7IHl1di55ID0gKHRleHR1cmUyRChVdGV4LCB2VGV4dHVyZUNvb3JkKS5yIC0gMC41KTsgeXV2LnogPSAodGV4dHVyZTJEKFZ0ZXgsIHZUZXh0dXJlQ29vcmQpLnIgLSAwLjUpOyByZ2IgPSB1bTNfQ29sb3JDb252ZXJzaW9uICogeXV2OyBnbF9GcmFnQ29sb3IgPSB2ZWM0KHJnYiwgMSk7IH0AAAAAAAAAAAAAAAAEAAAABQAAAAUAAAAGAAAAUAAAAA0AAAAGAAAAAgAAAAcAAAAKAAAATwAAAAsAAABRAAAADgAAAFIAAAABAAAACgAAAIwBAAALAAAAhAMAAAwAAABICQAADQAAAEgJAAAUAAAASAkAABUAAACQEgAAFgAAAKQfAAAeAAAApB8AAB8AAABQRgAAIAAAAABQAAAoAAAAAIAAACkAAAAAgAAAKgAAAACIAAAyAAAAQK8BADMAAAAA0AIANAAAAADQAgBHcmF5ADQyMAAANDIyAAA0NDQAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAAMAAAACwAAAAoAAAALAAAAEAAAAAsAAAAoAAAAIQAAABgAAAALAAAAFAAAAAsAAAAgAAAACwAAAFAAAAAhAAAAEgAAAAsAAAAPAAAACwAAAEAAAAAhAAAAoAAAAGMAAAAEAAAAAwAAAAMAAAACAAAAAgAAAAEAAAAAAAAAAAAAAAYKDRASFxkbCgsQEhcZGx0NEBIXGRsdHxASFxkbHR8hEhcZGx0fISQXGRsdHyEkJhkbHR8hJCYoGx0fISQmKCoJDQ8RExUWGA0NERMVFhgZDxETFRYYGRsRExUWGBkbHBMVFhgZGxweFRYYGRscHiAWGBkbHB4gIRgZGxweICEjBg0UHA0UHCAUHCAlHCAlKgoOFBgOFBgbFBgbHhgbHiIvHw8AFxsdHgcLDQ4nKy0uEAMFCgwTFRocIyUqLAECBAgREhQYBgkWGSAhIiQoJikAEAECBAggAwUKDA8vBwsNDgYJHyMlKiwhIiQoJystLhESFBgTFRocFxsdHhYZJikBAP//AgACAAIAAQACAAAAAgADAAIAAhACAAEQAgAAEAIAAxACAAIgAgABIAIAACACAAMgAgACDwIAAQ8CAAAPAgADDwIAAh8CAAEfAgAAHwIAAx8CAAIvAgABLwIAAC8CAAMvBAD//wAAAAAAAAAACBABABAwAgAgMAIAQDAEAEAyBAAAAAAAAAAAAAAAAAAIEAEAEBACACAQAgBAEAQAAPEBAAgQAQAIQAEACFABABAwAgAgMAIAEMACACDAAgAQkAIAIJACABBgAgAgYAIAELACACCwAgAQ4AIAIOACABBwAgAgcAIAENACACDQAgAQ8AIAIPACAEDwBAAAAAAAAAEBAAgQAQAIQAEACFABABAwAgAgMAIAEMACACDAAgAQ8AIAIPACAEAwBABAwAQAQPAEAAAAAAAAAAAAAAAAAAoNEAsOEg0QFA4SFxAUGRIXHQAAAAAAAAAAAAAAAAAAAAMEAwMBBQEEBQIFAwEFARQSIBMZGBYTIxUcGhoXKhghHxwZLRojISAcMx4oJiQgOiIuKwAAAAAAAAAAAAAAAAABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMAAAAAAAAAAAAAAAAAAAEBAQEBAQICAgICAgMDAwMDAwQEBAQEBAUFBQUFBQYGBgYGBgcHBwcHBwgICAgICAkJCQkJCQoKCgoKCgsLCwsLCwwMDAwMDA0NDQ0NDQ4ODg4AAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR0eHyAgISIiIyMkJCUlJSYmJicnJycAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMjJCUmJicoKCkpKiorKyssLCwtLS0tAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKSorLCwtLi4vLzAwMTExMjIyMzMzMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLy8wMTIyMzQ0NTU2Njc3Nzg4ODk5OTkAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU1Njc4ODk6Ojs7PDw9PT0+Pj4/Pz8/AAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7Ozw9Pj4/QEBBQUJCQ0NDRERERUVFRQAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUFCQ0RERUZGR0dISElJSUpKSktLS0sAAAAAAAAAAKKfAgCpnwIAjGkAAExPT0IAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8AAAAAAAAAALCfAgCwnwIAkGkAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEAAAAAAAAAAAMCfAgDKnwIA2HMAAExPT0L//////////wAAAAAAAPC/AAAAAAAA8D8SAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABCBAJAgMKERggGRILBAUMExohKDApIhsUDQYHDhUcIyoxODkyKyQdFg8XHiUsMzo7NC0mHycuNTw9Ni83Pj8AAQQIBQIDBgkMDQoHCw4PAAAAAAAAAAAAAAAAAAAAAMCgAgDCoAIASAAAAAIAAABADQMAAAAAAAAAAAAAAAAAAAAAAAAA4EMZAAAAAAAAANqgAgDCoAIASAAAAAIAAAAA9AEAAAAAAAAAAAAAAAAAAADA////30EJAAAAAAAAAN2gAgDgoAIAUAAAAAEAAAAACT0AAAAAAAAAAAAAAPA/AADA////30ERAAAAAAAAABA9AwAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg////70E7AAAAED0DAPShAgD+oQIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAED0DACmiAgAtogIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAF2iAgBiogIAAAAAAIAAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAIKiAgCHogIAAAAAAIAAAAAACAAAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAJeiAgCeogIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAED0DAK+iAgCzogIAAAAAAIAAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DALuiAgC/ogIAAAAAAIAAAABAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAN2iAgAAAAAAAAAAAIAAAAAAAQAAAAAAAAAAAAAAAODBAADA////30EAAAAAED0DAO2iAgDzogIAAAAAAIAAAAAAAgAAAAAAAAAAAAAAAODBAADA////30EAAAAAED0DACejAgAtowIAAAAAAIAAAAAABAAAAAAAAAAAAAAAAODBAADA////30EAAAAAED0DAOYpAwBhowIAAAAAAIAAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ETAAAAED0DAH6jAgCHowIAAAAAAIAAAAAAQAAAAAAAAAAAAAAAAODBAADA////30EAAAAAED0DAJmjAgCeowIAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAM2jAgDXowIAAAAAAIAAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAED0DAAOkAgAHpAIAAAAAAIAAAAAAAAIAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DACekAgAtpAIAAAAAAIAAAAAAAAQAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAECkAgBKpAIAAAAAAIAAAAAAAAgAAAAAAAAAAAAAAODBAADA////30ETAAAAED0DAFqkAgBopAIAAAAAAIAAAAAAAEAAAAAAAAAAAAAAAODBAADA////30EZAAAAED0DAKSkAgCtpAIAAAAAAIAAAAAAAIAAAAAAAAAAAAAAAODBAADA////30E7AAAAED0DAELxAgDZpAIAAAAAAIAAAAAAAAABAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAAylAgARpQIAAAAAAIAAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAC6lAgAzpQIAAAAAAIAAAAAAAACAAAAAAAAAAAAAAODBAADA////30ERAAAAED0DAD6lAgBNpQIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAED0DAHalAgB7pQIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAo6UCAKqlAgCwpQIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAo6UCAMilAgDTpQIAAAAAAIAAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAo6UCAPilAgAFpgIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAo6UCAESmAgBLpgIAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAo6UCAHqmAgCCpgIAAAAAAIAAAAAAAEAAAAAAAAAAAAAAAODBAADA////30ESAAAAo6UCAKymAgC3pgIAAAAAAIAAAAAAAAAQAAAAAAAAAAAAAODBAADA////30ESAAAAo6UCAOWmAgDxpgIAAAAAAIAAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ESAAAAo6UCADSnAgBGpwIAAAAAAIAAAAAAAABAAAAAAAAAAAAAAODBAADA////30EiAAAAo6UCAHCnAgB6pwIAlAAAAAEAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAJenAgCcpwIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAL2nAgDCpwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAOOnAgDopwIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAP+nAgADqAIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCACqoAgAvqAIAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAEaoAgBKqAIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAJUzAwB1qAIAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAIuoAgCRqAIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAKmoAgCsqAIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAMGoAgDFqAIAAAAAAIAAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCANuoAgDfqAIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCAPWoAgD6qAIAAAAAAIAAAAAyAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAcKcCABGpAgAAAAAAbAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAABupAgAdqQIAjAAAAAEAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAEGpAgBEqQIAoAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAAGSpAgBnqQIApAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAACBAAwCEqQIAuAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAAAAAAJmpAgAAAAAArAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EJAAAAAAAAAKSpAgAAAAAAsAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAALGpAgAAAAAAeAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAALepAgC9qQIA4AEAAAQAAAAAAAAAAADgPwAAAOD//+/HAAAA4P//70cRAAAAAAAAADWqAgA7qgIA5AEAAAQAAAAAAAAAAADgPwAAAAAAAPC/AAAA4P//70cRAAAAAAAAAFyqAgBhqgIA6AEAAAEAAAACAAAAAAAAAAAAAAAAAPC/AAAAAABAUUARAAAAAAAAAIWqAgCKqgIA7AEAAAEAAAAfAAAAAAAAAAAAAAAAAPC/AAAAAAAAkEARAAAAAAAAAK6qAgC0qgIA8AEAAAEAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAOqqAgDtqgIAoAAAAAEAAAAAAAAAAAAAAAAAAAAAAPC/AADA////30ERAAAAAAAAACGrAgArqwIApAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAAE2rAgBZqwIAqAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAGyrAgB3qwIArAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJ+rAgCiqwIAbAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALyrAgAAAAAAcAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAMSrAgAAAAAAdAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAANCrAgAAAAAAeAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAANurAgAAAAAAfAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAOarAgAAAAAAgAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAO6rAgAAAAAAhAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAParAgAAAAAAiAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAAGsAgAAAAAAjAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAAusAgAAAAAAkAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABasAgAAAAAANAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAACCsAgAkrAIAnAIAAAAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAE6sAgAAAAAAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAFmsAgBlrAIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAKCsAgCrrAIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAOGsAgDmrAIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAAetAgASrQIAAAAAAIAAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAOrvAgAAAAAAAAAAAIAAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAC2tAgA0rQIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAF6tAgAAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAGqtAgBzrQIAAAAAAIAAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAKetAgAAAAAAAAAAAIAAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCALStAgDFrQIAAAAAAIAAAAAAAgAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAAGuAgAGrgIAAAAAAIAAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCADmuAgAAAAAAAAAAAIAAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAEWuAgAAAAAAAAAAAIAAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAE2uAgBQrgIAAAAAAIAAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAPszAwCIrgIAAAAAAIAAAAAAQAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAJmuAgAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAIKwCAJ+uAgCmrgIAoAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAn64CAMuuAgDQrgIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAn64CAJ+uAgAirwIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAn64CAHGvAgAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAn64CAHivAgCDrwIAAAAAAIAAAAD//////////wAAAAAAAODBAADA////30EbAAAAn64CAJ+vAgCsrwIAAAAAAIAAAAD+/////////wAAAAAAAODBAADA////30EbAAAAn64CANevAgDhrwIAsAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAAAOwAgAOsAIAsAIAAAAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACACiwAgAxsAIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACAEawAgBQsAIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACAHqwAgCBsAIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACAKKwAgCqsAIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACANKwAgDdsAIAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACAOuwAgDzsAIAAAAAAIAAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACAFmxAgBjsQIAAAAAAIAAAAAAAAIAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACAJCxAgCbsQIAAAAAAIAAAAAAAAQAAAAAAAAAAAAAAODBAADA////30EaAAAAA7ACANmxAgAAAAAAtAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAOaxAgAAAAAAtAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAPKxAgD9sQIAuAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAACKyAgAqsgIA9AEAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAWEARAAAAAAAAAFqyAgAqsgIA+AEAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAGayAgAqsgIA/AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHOyAgAAAAAABAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAIWyAgAqsgIADAIAAAUAAAAAAAAAAAAAAAAAAAAAAGDAAAAAAADAX0ARAAAAAAAAAIuyAgCTsgIAEAIAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EZAAAAAAAAANSyAgDcsgIAGAIAAAIAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAECzAgBIswIAAAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAG6zAgAqsgIAIAIAAAQAAAAAAAAAAADwPwAAAOD//+/HAAAA4P//70cRAAAAAAAAAIKzAgCMswIAvAAAAAQAAACamZmZmZnpvwAAAOD//+/HAAAA4P//70cRAAAAAAAAAK6zAgC4swIAwAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAANqzAgAqsgIAJAIAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAOezAgDrswIACAMAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAA57MCABwhAwD5swIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA57MCAA+0AgAXtAIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA57MCACS0AgAotAIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA57MCADm0AgAAAAAAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA57MCAD20AgAAAAAAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA57MCAEW0AgBKtAIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA57MCAGG0AgBrtAIAxAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAJ20AgCotAIAyAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAMS0AgDPtAIAzAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAOq0AgDxtAIA0AAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAP+0AgAJtQIA1AAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAADm1AgA+tQIADAMAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAObUCABwhAwAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCACS0AgAAAAAAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAFm1AgAAAAAAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAGC1AgAAAAAAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAGq1AgAAAAAAAAAAAIAAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAD20AgAAAAAAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAG61AgAAAAAAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAHK1AgAAAAAAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAHy1AgAAAAAAAAAAAIAAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAIq1AgAAAAAAAAAAAIAAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAJa1AgAAAAAAAAAAAIAAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAKG1AgAAAAAAAAAAAIAAAAAXAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAK21AgAAAAAAAAAAAIAAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCALG1AgAAAAAAAAAAAIAAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCALa1AgC+tQIAAAAAAIAAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAOG1AgDntQIAAAAAAIAAAAAUAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAP+1AgAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAObUCAAq2AgAAAAAA2AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABa2AgAZtgIApAIAAAAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFrYCADi2AgBCtgIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFrYCAG22AgB1tgIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFrYCAJ+2AgCrtgIAAAAAAIAAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAFrYCANS2AgAAAAAAEAMAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAOq2AgDvtgIA3AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6rYCAAG3AgAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6rYCAAa3AgAAAAAAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6rYCAAy3AgAAAAAAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6rYCABO3AgAatwIA5AAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAC63AgAatwIA5AAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAE8cAwAytwIAqAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30E7AAAATxwDAEy3AgBRtwIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAF63AgBhtwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAATxwDAEawAgAAAAAAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAG63AgB2twIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAIu3AgCOtwIAAAAAAIAAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDALS3AgC3twIAAAAAAIAAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAMW3AgAAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAM+3AgAAAAAAAAAAAIAAAAAAAIAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAN63AgAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAOO3AgAAAAAAAAAAAIAAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAO23AgAAAAAAAAAAAIAAAAAAAgAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAPG3AgD0twIAAAAAAIAAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAAa4AgALuAIAAAAAAIAAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDADi4AgAAAAAAAAAAAIAAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAD24AgBEuAIAAAAAAIAAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAIe4AgCTuAIAAAAAAIAAAAAAQAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAKm4AgCxuAIAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAATxwDAMy4AgDXuAIAAAAAAIAAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAATxwDAOy4AgDxuAIAAAAAAIAAAAAAAAABAAAAAAAAAAAAAODBAADA////30EaAAAATxwDAAq5AgAQuQIArAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ESAAAAPLkCAEW5AgBIuQIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAPLkCAOqqAgBquQIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAPLkCAIy5AgCPuQIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAPLkCALK5AgC2uQIA7AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCANy5AgDjuQIA8AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAP+5AgAFugIA9AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCACG6AgAqugIA+AAAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAEq6AgBTugIA/AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAH26AgCHugIAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALu6AgDBugIABAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANe6AgDeugIACAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAAW7AgAJuwIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCACu7AgAvuwIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAEW7AgBKuwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAOezAgB7uwIAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAJmjAgCnuwIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAN+7AgDjuwIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAAe8AgAKvAIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAJenAgAaRwMAAAAAAIAAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCACi8AgAtvAIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAFK8AgBXvAIAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAHu8AgCAvAIAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAKy8AgAAAAAAAAAAAIAAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCALO8AgAAAAAAAAAAAIAAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCALq8AgC/vAIAAAAAAIAAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAO28AgD6vAIADAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAC29AgAyvQIAEAEAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFS9AgAAAAAAFAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAGa9AgBvvQIAGAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAKG9AgCnvQIAHAEAAAEAAAA/Qg8AAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALi9AgC+vQIAIAEAAAEAAAA/Qg8AAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAM+9AgAAAAAAVAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAN69AgAAAAAANAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA3r0CAOS9AgDovQIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA3r0CAGSpAgAOvgIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA3r0CAB++AgAjvgIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA3r0CADW+AgA5vgIAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA3r0CAEq+AgBSvgIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA3r0CAGa+AgBuvgIAOAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHy+AgAAAAAAJAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAIi+AgAAAAAAKAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAJq+AgCevgIALAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEARAAAAmr4CAFm1AgDQvgIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAmr4CANq+AgDfvgIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAmr4CAAe8AgDvvgIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAmr4CAAi/AgAAAAAAOAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABm/AgAmvwIAOAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAD2/AgAqsgIAPAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAEK/AgAqsgIAQAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAEe/AgBKvwIAPAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFq/AgBsvwIAMAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAKOlAgAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg////70EbAAAAo6UCADQcAwAAAAAAWAMAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALy/AgDEvwIAIAMAAAEAAAABAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAAvL8CABwhAwDevwIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAvL8CAA3AAgAawAIAQAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAADbAAgBDwAIARAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFjAAgBbwAIASAEAAAEAAAAAAAAAAAAAAAAAAAAAACDAAAAAAAAAMEARAAAAAAAAAG7AAgB0wAIAOAMAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAIDAAgCJwAIATAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAAMDAAgDMwAIAUAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAAAbBAgAAAAAAPAMAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAABsECAC4xAwAAAAAAAAAAAIAAAACd/////////wAAAAAAAODBAADA////30EZAAAABsECAA7BAgAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECABfBAgAAAAAAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAB/BAgAAAAAAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECACfBAgAAAAAAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAC/BAgAAAAAAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECADbBAgAAAAAAAAAAAIAAAAAcAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAEDBAgAAAAAAAAAAAIAAAAAWAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAEfBAgAAAAAAAAAAAIAAAAAmAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAE/BAgAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAF3BAgAAAAAAAAAAAIAAAACDAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAPT2AgAAAAAAAAAAAIAAAAAUAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAGrBAgAAAAAAAAAAAIAAAAAeAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAHHBAgAAAAAAAAAAAIAAAAAoAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAHvBAgAAAAAAAAAAAIAAAAAyAAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAIbBAgAAAAAAAAAAAIAAAAA8AAAAAAAAAAAAAAAAAODBAADA////30EJAAAABsECAJDBAgAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAABsECAJnBAgAAAAAAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAABsECAKTBAgAAAAAAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAABsECAK/BAgAAAAAAAAAAAIAAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAABsECALnBAgAAAAAAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAABsECAMDBAgAAAAAAQAMAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAAwMECAC4xAwAAAAAAAAAAAIAAAACd/////////wAAAAAAAODBAADA////30EZAAAAwMECAMbBAgDNwQIAGAMAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EaAAAAAAAAAPjBAgAHwgIARAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAABzCAgAowgIASAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAADrCAgBDwgIATAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFfCAgBfwgIAUAIAAAEAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA07kCAHvCAgAqsgIAVAEAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAIfCAgCOwgIAWAEAAAEAAADsAAAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAALfCAgC+wgIAXAEAAAEAAABKDgAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAAOfCAgDswgIAYAEAAAEAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAACfDAgA4wwIARAMAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCAHbDAgCAwwIASAMAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCALHDAgC8wwIATAMAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCAAlEAwDiwwIAAAAAAIAAAADw/////////wAAAAAAAODBAADA////30ESAAAAbMMCAO0gAwDzwwIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCAArEAgAQxAIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCADHEAgA3xAIAAAAAAIAAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCAFjEAgBexAIAAAAAAIAAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCAILEAgCKxAIAAAAAAIAAAAAYAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCAPUgAwCtxAIAAAAAAIAAAAAwAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAbMMCAMDEAgDNxAIAZAEAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEARAAAAAAAAAA3FAgAXxQIAaAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAEXFAgBQxQIAbAEAAAEAAAAZAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHTFAgB5xQIAcAEAAAEAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAK7FAgC7xQIAdAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANbFAgDexQIAVAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAAPGAgANxgIAeAEAAAEAAAAGAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAFHGAgAAAAAAfAEAAAEAAAAAAQAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAF/GAgBtxgIAgAEAAAEAAAAoAAAAAAAAAAAAAAAAAPA/AADA////30ERAAAAAAAAAJbGAgAAAAAAWAAAAAEAAAD//////////wAAAAAAAODBAADA////30EZAAAAAAAAAKjGAgAAAAAAWAIAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAAL3GAgAAAAAAXAIAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAANLGAgDnxgIAYAIAAAIAAAD//////////wAAAAAAAPC/AAAAAAAA4EMRAAAAAAAAACHHAgAAAAAAFAMAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAN87AwAAAAAAwAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMLAAAA3zsDADXHAgAAAAAAyAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMKAAAANccCAEzHAgAAAAAAKAIAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAFvHAgAAAAAALAIAAAQAAAAAAAAAAAAIQAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAGrHAgAAAAAAdAAAAAEAAAABAAAAAAAAAAAAAAAAAPA/AADA////30EbAAAAAAAAAHrHAgCKxwIAhAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAAmscCAD8xAwCvxwIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAC4xAwC2xwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAEUxAwDCxwIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAEwxAwDLxwIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAFQxAwDVxwIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAF4xAwDhxwIAAAAAAIAAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAGgxAwDtxwIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAG0xAwDyxwIAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAHQxAwD6xwIAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAAbIAgD6xwIAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAH0xAwARyAIAAAAAAIAAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAIYxAwAdyAIAAAAAAIAAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAI8xAwApyAIAAAAAAIAAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCADPIAgC2xwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAmscCAD/IAgBJyAIAiAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAAaMgCAD8xAwCvxwIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAC4xAwC2xwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAHfIAgDCxwIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAH/IAgDLxwIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAFQxAwDVxwIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAF4xAwDhxwIAAAAAAIAAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAJkxAwCHyAIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAKAxAwCOyAIAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAKcxAwCSyAIAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAK4xAwCiyAIAAAAAAIAAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCALsxAwCwyAIAAAAAAIAAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAMMxAwC4yAIAAAAAAIAAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCANAxAwDGyAIAAAAAAIAAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCANoxAwDXyAIAAAAAAIAAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAOQxAwDoyAIAAAAAAIAAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAHQxAwD6xwIAAAAAAIAAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAO4xAwDzyAIAAAAAAIAAAAASAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCADPIAgC2xwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAJUzAwCOyAIAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAADJAgCSyAIAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAAnJAgCiyAIAAAAAAIAAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCABbJAgCwyAIAAAAAAIAAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAB3JAgC4yAIAAAAAAIAAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCACrJAgDGyAIAAAAAAIAAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCADfJAgDXyAIAAAAAAIAAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAAbIAgD6xwIAAAAAAIAAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAaMgCAETJAgBPyQIAjAEAAAEAAAACAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAW8kCAGvJAgBvyQIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAD8xAwCvxwIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAC4xAwC2xwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAP8xAwBzyQIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAEwxAwDLxwIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAFQxAwDVxwIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAF4xAwDhxwIAAAAAAIAAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAAMyAwB3yQIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAAkyAwB9yQIAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCABIyAwCJyQIAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCABoyAwCUyQIAAAAAAIAAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCADPIAgC2xwIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAJ/JAgB3yQIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCAKXJAgB9yQIAAAAAAIAAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCALDJAgCJyQIAAAAAAIAAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAW8kCALrJAgDGyQIAkAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAA0skCAC4xAwC2xwIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA0skCAOPJAgDmyQIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA0skCAPnJAgD8yQIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA0skCADPIAgC2xwIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA0skCAAnKAgDmyQIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA0skCAA7KAgD8yQIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA0skCABPKAgAqygIAlAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAQcoCAC4xAwC2xwIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCAAG3AgBdygIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCAGLKAgBpygIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCAHDKAgB4ygIAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCAIHKAgCFygIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCAInKAgCUygIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCAKDKAgCnygIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCADPIAgC2xwIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAQcoCAK7KAgC/ygIABAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAANjKAgDfygIAmAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAABfLAgAjywIAJAMAAAAAAAADAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAAF8sCAD7LAgAAAAAAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAF8sCAETLAgAAAAAAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAF8sCAErLAgBdywIA0AEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEAJAAAASssCAHDLAgBzywIAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCAIbLAgCJywIAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCAJHLAgCUywIAAAAAAIAAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCAKbLAgCpywIAAAAAAIAAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCALrLAgC9ywIAAAAAAIAAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCAMbLAgDJywIAAAAAAIAAAAAFAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCANTLAgDXywIAAAAAAIAAAAAGAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCAOHLAgDkywIAAAAAAIAAAAAHAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCAO/LAgDyywIAAAAAAIAAAAAIAAAAAAAAAAAAAAAAAODBAADA////30EJAAAASssCAPrLAgANzAIA1AEAAFRNRlP//////////wAAAAAAAPC/AADA////30EKAAAA+ssCADjMAgAAAAAAfAMAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAEXMAgBRzAIAqAMAAAUAAAAAAAAAAAAAAAAAAAAAAGDAAAAAAADAX0AiAAAAAAAAAH3MAgCOzAIArAMAAAAAAAAAAAAAAAAAAAAAAAAAAPC/AADA////30EiAAAAfcwCAL/MAgAAAAAAAAAAAIAAAAD//////////wAAAAAAAODBAADA////30EiAAAAfcwCABwhAwAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EiAAAAfcwCAMrMAgAAAAAAAAAAAIAAAAABAAAAAAAAAAAAAAAAAODBAADA////30EiAAAAfcwCANbMAgDmzAIA1AMAAAEAAAABAAAA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BgAMAB4AKABbAM0A2QDOAdwB2QPxAyUACwAKAA0AJABXAGEAzADdAMwB3gHTA+cDXQAhAB8AIwAnAFkAZADYAN8A0gHiAd0D7gPRAFUAKQBWAFgAYgDOAOAA4gDaAdQD4wPrB8kBXgBaAFwAYwDKANoAxwHKAeAB2wPoA+wH4wHSAMsA0ADXANsAxgHVAdgBygPaA+oH8QfhAdQAzwDWAN4A4QDQAdYB0QPVA/ID7gf7B+kDzQHIAcsB0QHXAd8BzwPgA+8D5gf4B/oP6wPdAdMB2QHbAdIDzAPcA+oD7QfzB/kH+Q/yB84D5AHLA9gD1gPiA+UD6Af0B/UH9wf7D/oH7APfA+ED5APmA/AD6QfvB/gP/g/8D/8PAAAAAAAAAAAAAAAAAAAAAAYAGQA9AJwAxgCnAZADwgPfA+YH8wf7D+wH+g/+D44DBQABAAgAFAA3AEIAkgCvAJEBpQG1AZ4DwAOiA80D1geuABcABwAJABgAOQBAAI4AowC4AJkBrAHBAbEDlgO+A8oDnQA8ABUAFgAaADsARACRAKUAvgCWAa4BuQGhA5EDpQPVA5QAmgA2ADgAOgBBAIwAmwCwAMMAngGrAbwBnwOPA6kDzwOTAL8APgA/AEMARQCeAKcAuQCUAaIBugHDAaYDpwO7A9QDnwCgAY8AjQCQAJgApgC2AMQAnwGvAb8BmQO/A7QDyQPnA6gAtgGrAKQAqgCyAMIAxQCYAaQBuAGMA6QDxAPGA90D6AOtAK8DkgG9ALwAjgGXAZoBowGxAY0DmAO3A9MD0QPbA90HtADeA6kBmwGcAaEBqgGtAbMBiwOyA7gDzgPhA+AD0gflB7cA4we7AagBpgGwAbIBtwGbA5oDugO1A9YD1wfkA9gH6ge6AOgHoAO9AbQBigPEAZIDqgOwA7wD1wPUB9wH2wfVB/AHwQD7B8gDowOVA50DrAOuA8UD2APiA+YD5AfnB+AH6Qf3B5AB8geTA74BwAGUA5cDrQPDA8ED0gPaB9kH3wfrB/QH+geVAfgHvQOcA6sDqAOzA7kD0APjA+UD4gfeB+0H8Qf5B/wHkwH9D9wDtgPHA8wDywPZA9oD0wfhB+4H7wf1B/YH/A//D50BwgG1AKEAlgCXAJUAmQCgAKIArACpALEAswC7AMAAjwEEAAAAAAAAAAAAAAAAAAAAoNYAAADXAABg1wAAwNcAACDYAACA2AAA4NgAACDZAABg2QAAENoAAMDaAAAAAAAACwkLCgcKCwkLCgcKBwUHCQcKCwkLCQcJCwkLCQcJBwUHCQcJBwUHBQEFBwUHCQcJBwUHCQcJCwkLCQcJCwkLCgcJBwUHCQcKCwkLCgcJCwkLAAAAAAAAAAAAAAAAAAAACQcJCAYICQgJCAYHBgUGBwYICQcICAYICQcJCAYHBgUGBwYIBgUGBQMFBgUGCAYHBgUGCAYICQcJCAYICAcJCAYHBgQGCAYHCQcJBwYICQcJAAAAAAAAAAAAAAAAAAAAAQQIBAUICQkKBAYJBgYJCQkKCQoNCQkLCwoMBAYKBgcKCgoMBQcLBgcKCQkLCQoNCAkMCgsMCAoPCQsPDQ4QCAoOCQoODAwPCwwQCgsPDAwPAAAAAAAAAAAAAAAAAAAABAUIBQQICQgLBQUIBQQICAcKCQgLCAgKCwoLBAUIBAQICAgKBAQIBAQHCAcJCAgKBwcJCgkKCAgLCAcKCwoMCAcKBwcJCgkLCwoMCgkLCwoLAAAAAAAAAAAAAAAAAAAADQwLCwoLCwwNDAsKCQgJCgsMDAoJCAcICQoLCwkIBQQFCAkLCggHBAEEBwgLCwkIBQQFCAkLCwoJCAcICQoLDAsKCQgJCgsMDQwMCwoKCwwNAAAAAAAAAAAAAAAAAAAACwoJCQkJCQoLCgkIBwcHCAkKCQgGBgYGBggJCQcGBAQEBgcJCQcGBAQEBgcJCQcGBAQEBgcJCQgGBgYGBggJCgkIBwcHBwgKCwoJCQkJCQoLAAAAAAAAAAAAAAAAAAAAAQMGBwgJCgsDBAYHCAgJCQYGBwgICQkKBwcICAkJCgoICAkJCgoKCwkICQkKCgsLCgkJCgoLDAwLCgoKCwsMDAUEBQYHCAkKBAMEBQYHBwgFBAQFBgcHCAYFBQYGBwgIBwYGBgcHCAkIBwYHBwgICgkHBwgICAkJCggICAkJCQoBAwYICQoKCwsMDA0NAwQGBwgICQoKCgsMDAYGBwgICQoKCgsMDAwIBwgJCQoKCwsLDAwNCQgJCQoKCwsLDAwMDQoJCQoLCwsMCwwMDQ0LCQoLCwsMDAwMDQ0NCwoKCwsMDA0NDQ0NDQsKCgsLCwwMDQ0ODQ4LCgsLDAwMDA0NDg4ODAsLDAwMDQ0NDg4ODwwLDAwMDQ0NDQ4ODw8NDAwM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/v7+/v7+/v7+/v7+/v7+/gMDAwMDAwMDAwMDAwMDAwP9/f39/f39/f39/f39/f39AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAYBAAAGBgMABgcHBgYICAcAAAAAAAAAAAAAAAABAAAABwEAAAQGAQADAwIFAgMCAAAAAAAAAAAAAAAAAAEAAAAHAgAABwcDAAkHBwUJCQcGCgoJBwsLCgcMDAsKDQwMCwAAAAAAAAAAAAAAAAEAAAAPAQAADg0BAAcMCwEGBQoBBwYECQcGBQgHBgUEBwUEBAAAAAAAAAAAAAAAAAgCAABMAQAAGAEAAAABAAABAAAABgIAAAgGAwAJCAcFCgkIBgsKCQcNCwoIDQ0LCQ0NDQoODg0LDg4ODQ8PDg4PDw8OEA8PDxAQEA8QEBAQEBAQEAIAAAAGAgAABgUDAAcGBgQIBgYECAcHBQkICAYLCQkGCwsLBwwLCwkMDAwLDAwMCw0NDQwNDQ0NDQ4NDQ4ODg0ODg4OBAAAAAYEAAAGBQQABgUFBAcFBQQHBQUEBwYGBAcGBgQIBwcFCAgHBgkICAcJCQgICQkJCAoJCQkKCgoKCgoKCgoKCgoGAAAABgYAAAYGBgAGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgEAAAAFAQAABwQBAAcGBQMHBgUD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AAAAAAgAAAACAAAABwAAAAEAAAAAAAAAAwAAAAEAAAAAAAAACAAAAAIAAAAHAAAAAgAAAAAAAAADAAAAAgAAAAAAAAAIAAAAAgAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMApAwADAAAAIAAAAAAAAAAAAAAAAwAAAAIAAAAAAAAACAAAAAIAAAAHAAAAAwAAAAAAAAADAAAAAQAAAAAAAAAIAAAAAgAAAAcAAAACAAAAAAAAAAMAAAAAAAAAAAAAAAgAAAACAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxikDAAMBAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADOKQMAAwAAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANYpAwADAgIAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3ikDAAMCAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADmKQMAAQAAAEAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADrKQMAAAAAAPQpAwABAAAABAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+ikDAAEAAAAEAAAAAAAAAAAAAAABAAAAAAAAAAcAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKgMAAQAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUqAwADAQEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADioDAAMBAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXKgMAAwAAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAqAwAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyoDAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwKgMAAwEAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgqAwADAgAAAAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAGAAAAAAAAAAAAAAAIAAAABQAAAAcAAAABAAAAAAAAAAYAAAADAAAAAAAAAAgAAAAFAAAABwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQioDAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAAAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHKgMAAwAAACQAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAEAAAADAAAAAAAAAAQAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAABAAAAAwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEwqAwADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVioDAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAYAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABbKgMAAwAAACQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAEAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAwAAAAAAAAABAAAAAwAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAqAwADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaioDAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABvKgMAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQqAwAEAAAAoAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAAAAAAeSoDAAQAAACgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAAB+KgMABAAAAKAAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAAAAAAAIMqAwAEAAAAoAAAAAAAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAiCoDAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkSoDAAAAAACXKgMAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgKgMAAAAAAKYqAwADAAEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArioDAAMAAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC3KgMABAEBAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAMAqAwAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyyoDAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXKgMAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOMqAwAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7ioDAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4KgMAAwAAACEAAAAAAAAAAAAAAAYAAAAAAAAAAAAAABAAAAAFAAAADwAAAAEAAAAAAAAABgAAAAIAAAAAAAAAEAAAAAUAAAAPAAAAAwAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArAwADAAAAIAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACCsDAAMAAAAhAAAAAAAAAAAAAAACAAAA/////wMAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAIAAAAAAAAABQAAAAYAAAABAAAABQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARKwMAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAwAAAAUAAAABAAAABAAAAAIAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABorAwADAAAAIQAAAAAAAAAAAAAAAgAAAP////8CAAAABQAAAAEAAAAEAAAAAAAAAAAAAAACAAAAAAAAAAUAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIysDAAMAAAAgAAAAAAAAAAAAAAACAAAAAQAAAAIAAAAFAAAAAQAAAAQAAAACAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsKwMAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAA/////wMAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUrAwADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAABAAAAAwAAAAUAAAABAAAABAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPisDAAMAAAAhAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAP////8CAAAABQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHKwMAAwAAACAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAQAAAAIAAAAFAAAAAQAAAAQAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFArAwAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWysDAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmKwMAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHArAwADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfCsDAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIKwMAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJQrAwADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCsDAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsKwMAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALgrAwAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxCsDAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADOKwMAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABAAAAAwAAAAIAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANcrAwADAAAAIQAAAAAAAAAAAAAAAgAAAP////8AAAAABAAAAAEAAAADAAAAAAAAAAAAAAACAAAAAAAAAAQAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4CsDAAMAAAAgAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAEAAAADAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADpKwMAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAA/////wAAAAAEAAAAAQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPIrAwACAAAAgAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPYrAwAAAAAA/SsDAAMAAAAhAAAAAAAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFLAMAAwAAACAAAAAAAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAABgAAAAIAAAAAAAAAEAAAAAUAAAAPAAAAAwAAAAAAAAAGAAAAAAAAAAAAAAAQAAAABQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0sAwADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGCwDAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjLAMAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8sAwADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOywDAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHLAMAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFMsAwADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXiwDAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABpLAMAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHUsAwADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgSwDAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMLAMAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJcsAwAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnywDAAMAAAAwAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkLAMAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKwsAwADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtCwDAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC9LAMAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMYsAwADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzywDAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYLAMABAEAAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAOEsAwAEAAAAkAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAADAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAA6iwDAAQBAQCRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAD2LAMABAEBAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAItAwAEAQAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAADi0DAAQBAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAaLQMABAAAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAACYtAwAEAAAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAMi0DAAQBAQCRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAA/LQMABAEBAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAEwtAwAEAQAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAWS0DAAQBAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAABmLQMABAAAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAHMtAwAEAAAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAgC0DAAQBAQCRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAACNLQMABAEBAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAJotAwAEAQAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAApy0DAAQBAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAC0LQMABAAAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAMEtAwAEAAAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAzi0DAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADULQMAAwAAAAAAAAAAAAAAAAAAAAYAAAAAAAAABAAAAAwAAAAFAAAACwAAAAEAAAAAAAAABgAAAAIAAAAEAAAADAAAAAUAAAALAAAAAwAAAAAAAAAGAAAABAAAAAQAAAAMAAAABQAAAAsAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANwtAwADAAAAAQAAAAAAAAAAAAAABgAAAAAAAAAEAAAADAAAAAUAAAALAAAAAQAAAAAAAAAGAAAAAgAAAAQAAAAMAAAABQAAAAsAAAADAAAAAAAAAAYAAAAEAAAABAAAAAwAAAAFAAAACwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5C0DAAMBAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADpLQMAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAAAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAAAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAtAwADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAKAAAAAwAAAAkAAAABAAAAAQAAAAQAAAACAAAAAAAAAAoAAAADAAAACQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9y0DAAQAAAChAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAAAAAAALgMABAAAAKAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAAAkuAwAEAAAAoQAAAAAAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAEi4DAAQAAACgAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAAAAAAbLgMAAwEAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMuAwAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJy4DAAIAAACBAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAAAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuLgMAAgAAAIAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAAAAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUuAwAEAAAAsAAAAAAAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAADAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAOy4DAAQAAACxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAABFLgMABAAAALAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAE8uAwAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUy4DAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYLgMAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQuAwAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaS4DAAMAAAAgAAAAAAAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABuLgMAAwAAACAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHMuAwADAAAAIAAAAAAAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeC4DAAMAAAAgAAAAAAAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB9LgMAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIkuAwADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlS4DAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAChLgMAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK0uAwADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuS4DAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADFLgMAAwEAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANEuAwADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3S4DAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADpLgMAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPUuAwADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAS8DAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANLwMAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYvAwADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHy8DAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoLwMAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADEvAwADAgAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOi8DAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGLwMAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFIvAwADAAAAIAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAAAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXi8DAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqLwMAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHkvAwADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiC8DAAMAAAAgAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACXLwMAAwAAACEBAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKYvAwADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtS8DAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADELwMAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANMvAwADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4i8DAAMAAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADuLwMAAwABABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPovAwADAAEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABjADAAMAAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASMAMABAAAAIAAAAAAAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAAAAAAABswAwAEAAAAgQAAAAAAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAAAAAAJDADAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1MAMAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAABgAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAGAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAYAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwwAwADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAGAAAACgAAAAEAAAAJAAAAAQAAAAEAAAAEAAAAAAAAAAYAAAAKAAAAAwAAAAkAAAABAAAAAQAAAAQAAAACAAAABgAAAAoAAAADAAAACQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQzADAAQAAACxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAABNMAMABAAAALAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAFcwAwAEAAAAsQAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAYTADAAQAAACwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAABrMAMAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHYwAwABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH8wAwAAAAAAhTADAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjjADAAAAAACUMAMAAQAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdMAMAAAAAAKMwAwABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKwwAwAAAAAAsjADAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAABAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC5MAMAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAABAAAAAAAAAAAAAAAEAAAAAMAAAAPAAAAAQAAAAEAAAAEAAAAAgAAAAAAAAAQAAAAAwAAAA8AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAwAwAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxjADAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzjADAAAAAADTMAMAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADbMAMAAAAAAOAwAwADAAAAMQIAAAAAAAACAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAA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EjsDACwAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BCAAAAAAAAAApOwMAEjsDACwAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BCAAAAAAAAAA5OwMAPTsDAAwAAABUTUZT//////////8AAAAAAADwvwAAwP///99BCAAAAAAAAABVOwMAPTsDAAwAAABUTUZT//////////8AAAAAAADwvwAAwP///99BCAAAAAAAAABjOwMAZzsDABQAAABUTUZT//////////8AAAAAAADwvwAAwP///99BCAAAAAAAAACAOwMAZzsDABQAAABUTUZT//////////8AAAAAAADwvwAAwP///99BCAAAAAAAAACPOwMAkzsDAHgAAABUTUZT//////////8AAAAAAADwvwAAwP///99BCAAAAAAAAACuOwMAkzsDAHgAAABUTUZT//////////8AAAAAAADwvwAAwP///99BCAAAAAAAAADCOwMAxjsDAGgAAABBTEhDAAAAAAAAAAAAAAAAAADgwwAAAAAAAOBDCAAAAN87AwDuOwMAxjsDAGgAAABBTEhDAAAAAAAAAAAAAAAAAADgwwAAAAAAAOBDCAAAAN87AwAAPAMABDwDAHAAAABBTEhDAAAAAAAAAAAAAAAAAADgwwAAAAAAAOBDCAAAAN87AwAePAMABDwDAHAAAABBTEhDAAAAAAAAAAAAAAAAAADgwwAAAAAAAOBDCAAAAN87AwAxPAMANjwDADgAAAAEAAAAzTt/Zp6g5j8AAAAAAABAwAAAAAAAAEBACAAAAAAAAABLPAMANjwDADgAAAAEAAAAzTt/Zp6g5j8AAAAAAABAwAAAAAAAAEBACAAAAAAAAABcPAMAYTwDADQAAAAEAAAAzTt/Zp6g5j8AAAAAAABAwAAAAAAAAEBACAAAAAAAAAB4PAMAizwDADQAAAAEAAAAzTt/Zp6g5j8AAAAAAABAwAAAAAAAAEBACAAAAAAAAACiPAMAsDwDADwAAAAEAAAAAAAAAAAAAAAAAAAAAABAwAAAAAAAAEBACAAAAAAAAADCPAMAyDwDAEAAAAAEAAAAAAAAAAAA8D8AAAAAAECPwAAAAAAAQI9ACAAAAAAAAADcPAMAyDwDAEAAAAAEAAAAAAAAAAAA8D8AAAAAAECPwAAAAAAAQI9ACAAAAAAAAADsPAMA/DwDAEQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQI9ACAAAAAAAAAAQPQMAFj0DADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P///+9BCAAAABA9AwAgPQMAFj0DADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P///+9BCAAAABA9AwAqPQMALj0DAAAAAACAAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAABA9AwA/PQMATD0DAIgAAAAEAAAAAAAAAAAA8D8AAAAAAAAAAAAAwP///99BCAAAAAAAAABdPQMAaz0DAHwAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwFFACAAAAF09AwB9PQMAiT0DAAAAAACAAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwCjPQMArj0DAAAAAACAAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwDHPQMA1T0DAAAAAACAAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwD9PQMABj4DAAAAAACAAAAAQQAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwArPgMAMz4DAAAAAACAAAAARQAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwBXPgMAYz4DAAAAAACAAAAARgAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwCLPgMAmD4DAAAAAACAAAAARwAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwDBPgMAzD4DAAAAAACAAAAAQgAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwDzPgMABz8DAAAAAACAAAAAQwAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwA3PwMASz8DAAAAAACAAAAARAAAAAAAAAAAAAAAAADgwQAAwP///99BCAAAAF09AwB7PwMAhz8DACQrAAABAAAAIAAAAAAAAAAAAAAAAAAAAAAAwP///99BCAAAAAAAAACmPwMAsj8DACgrAAABAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAADhACAAAAAAAAADRPwMA3z8DACwrAABMT09CAQAAAAAAAAAAAAAA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/////////////////wABAgMEBQYHCAn/////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP///////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAARAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAoAAAAACgAAAAAJCwAAAAAACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAADAxMjM0NTY3ODlBQkNERUZUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wAAAAAAAAAAABJbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgAAAAAAAAUAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAGAAAAulkRAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAP//////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PSVkCgBDb2RlYyBub3QgZm91bmQAQ291bGQgbm90IGFsbG9jYXRlIGNvZGVjIGNvbnRleHQAQ291bGQgbm90IG9wZW4gY29kZWMsJXMKAENvdWxkIG5vdCBpbml0IHJlc2FtcGxlcgB7IHZhciB3cyA9IE5CWyQwXS53czsgdmFyIGlucHV0RGF0YUhlYXAgPSBuZXcgVWludDhBcnJheShNb2R1bGUuSEVBUFU4LmJ1ZmZlciwgJDEsICQyKTsgd3Muc2VuZChpbnB1dERhdGFIZWFwKTsgfQBzd3JfY29udmVydCBlcnJvciByZXQ9JWQKAGF2Y29kZWNfZW5jb2RlX2F1ZGlvMiBlcnJvciByZXQ9JWQKAEdMIGVycm9yIGFmdGVyICVzKCk6IDB4JTA4eAoAZ2xDcmVhdGVTaGFkZXIAdmVydGV4AGZyYWdtZW50AENvdWxkIG5vdCBjb21waWxlICVzIHNoYWRlcjoKJXMKACVzOiBDb3VsZCBub3QgY3JlYXRlIHByb2dyYW0AaW5pdEdMAGFQb3NpdGlvbgBnbEdldEF0dHJpYkxvY2F0aW9uIGFQb3NpdGlvbgAlczogQ291bGQgbm90IGdldCBhUG9zaXRpb24gaGFuZGxlAGFUZXh0dXJlQ29vcmQAZ2xHZXRBdHRyaWJMb2NhdGlvbiBhVGV4dHVyZUNvb3JkACVzOiBDb3VsZCBub3QgZ2V0IGFUZXh0dXJlQ29vcmQgaGFuZGxlAGdsVmVydGV4QXR0cmliUG9pbnRlciBhUG9zaXRpb24AZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSBwb3NpdGlvbkhhbmRsZQBnbFZlcnRleEF0dHJpYlBvaW50ZXIgYVRleHR1cmVDb29yZABnbEVuYWJsZVZlcnRleEF0dHJpYkFycmF5IGFUZXh0dXJlQ29vcmQAWXRleABnbEdldFVuaWZvcm1Mb2NhdGlvbgBnbFVuaWZvcm0xaSBZdGV4AFV0ZXgAZ2xHZXRVbmlmb3JtTG9jYXRpb24gVXRleABnbFVuaWZvcm0xaSBVdGV4AFZ0ZXgAZ2xVbmlmb3JtMWkAZ2xDcmVhdGVQcm9ncmFtAENvdWxkIG5vdCBsaW5rIHByb2dyYW0AQ291bGQgbm90IGxpbmsgcHJvZ3JhbToKJXMKAGRlbGV0ZVRleHR1cmVzAFZpZGVvIHNpemUgY2hhbmdlOiVkIHggJWQKAHNldHVwVGV4dHVyZXMAaW5pdGlhbGl6ZVRleHR1cmUAeyBpZiAodHlwZW9mKFNMKSA9PSAndW5kZWZpbmVkJykgeyBTTCA9IHt9OyB9IFNMWyQwXSA9IHt9OyB9AHsgaWYgKHR5cGVvZihTTFskMF0pID09ICdvYmplY3QnKSB7IGRlbGV0ZSBTTFskMF07IH0gfQB7IHZhciBzZWxmID0gU0xbJDBdOyBpZiAoc2VsZi5zY3JpcHRQcm9jZXNzb3JOb2RlICE9IHVuZGVmaW5lZCkgeyBzZWxmLnNjcmlwdFByb2Nlc3Nvck5vZGUuZGlzY29ubmVjdCgpOyBzZWxmLnNjcmlwdFByb2Nlc3Nvck5vZGUgPSB1bmRlZmluZWQ7IH0gaWYgKHNlbGYuYXVkaW9Db250ZXh0ICE9IHVuZGVmaW5lZCkgeyBzZWxmLmF1ZGlvQ29udGV4dC5jbG9zZSgpOyBzZWxmLmF1ZGlvQ29udGV4dCA9IHVuZGVmaW5lZDsgfSBpZiAoc2VsZi5jdXJyZW50T3V0cHV0QnVmZmVyICE9IHVuZGVmaW5lZCkgeyBzZWxmLmN1cnJlbnRPdXRwdXRCdWZmZXIgPSB1bmRlZmluZWQgfSByZXR1cm4gMDsgfQB7IHZhciBzZWxmID0gU0xbJDBdOyBpZiAodHlwZW9mKEF1ZGlvQ29udGV4dCkgIT0gJ3VuZGVmaW5lZCcpIHsgc2VsZi5hdWRpb0NvbnRleHQgPSBuZXcgQXVkaW9Db250ZXh0KCk7IH0gZWxzZSBpZiAodHlwZW9mKHdlYmtpdEF1ZGlvQ29udGV4dCkgIT0gJ3VuZGVmaW5lZCcpIHsgc2VsZi5hdWRpb0NvbnRleHQgPSBuZXcgd2Via2l0QXVkaW9Db250ZXh0KCk7IH0gcmV0dXJuIHNlbGYuYXVkaW9Db250ZXh0ID09IHVuZGVmaW5lZCA/IC0xIDogMDsgfQBXZWIgQXVkaW8gQVBJIGlzIG5vdCBhdmFpbGFibGUhAHsgcmV0dXJuIFNMWyQwXS5hdWRpb0NvbnRleHQuc2FtcGxlUmF0ZTsgfQB7IHZhciBzZWxmID0gU0xbJDNdOyBzZWxmLnNjcmlwdFByb2Nlc3Nvck5vZGUgPSBzZWxmLmF1ZGlvQ29udGV4dFsnY3JlYXRlU2NyaXB0UHJvY2Vzc29yJ10oJDEsIDAsICQwKTsgc2VsZi5zY3JpcHRQcm9jZXNzb3JOb2RlWydvbmF1ZGlvcHJvY2VzcyddID0gZnVuY3Rpb24oZSkgeyBzZWxmLmN1cnJlbnRPdXRwdXRCdWZmZXIgPSBlWydvdXRwdXRCdWZmZXInXTsgZHluQ2FsbCgndmknLCAkMiwgWyQzXSk7IH07IHNlbGYuc2NyaXB0UHJvY2Vzc29yTm9kZVsnY29ubmVjdCddKHNlbGYuYXVkaW9Db250ZXh0WydkZXN0aW5hdGlvbiddKTsgc2VsZi5hdWRpb0NvbnRleHQucmVzdW1lKCk7IH0AU0RMMiBvcGVuIGF1ZGlvIGRldmljZSBzcj0lZCBuYnM9JWQKAHsgdmFyIHNlbGYgPSBTTFskMF07IHZhciBjaGFubmVsRGF0YSA9IHNlbGYuY3VycmVudE91dHB1dEJ1ZmZlci5nZXRDaGFubmVsRGF0YSgwKTsgaWYgKCQzID09ICQyKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgJDI7IGkrKykgeyBjaGFubmVsRGF0YVtpXSA9IEhFQVBGMzJbKCQxICsgKGkgPDwgMikpID4+IDJdICogJDQ7IH0gfSBlbHNlIHsgY2hhbm5lbERhdGEuZmlsbCgwKTsgfSB9AGxpYmF2Y29kZWMvYXZwYWNrZXQuYwBzaXplPD0weDdmZmZmZmZmIC0gNSAmJiBwIC0gcGt0LT5kYXRhID49IHNpemUAcGt0LT5zaXplID49IDAAVGhpcyBkZWNvZGVyIGRvZXMgbm90IHN1cHBvcnQgcGFyYW1ldGVyIGNoYW5nZXMsIGJ1dCBQQVJBTV9DSEFOR0Ugc2lkZSBkYXRhIHdhcyBzZW50IHRvIGl0LgoASW52YWxpZCBjaGFubmVsIGNvdW50AEludmFsaWQgc2FtcGxlIHJhdGUAUEFSQU1fQ0hBTkdFIHNpZGUgZGF0YSB0b28gc21hbGwuCgBFcnJvciBhcHBseWluZyBwYXJhbWV0ZXIgY2hhbmdlcy4KAEVycm9yIHByZS1wcm9jZXNzaW5nIGEgcGFja2V0IGJlZm9yZSBkZWNvZGluZwoAIWZyYW1lLT5idWZbMF0AbGliYXZjb2RlYy9kZWNvZGUuYwBza2lwICVkIC8gZGlzY2FyZCAlZCBzYW1wbGVzIGR1ZSB0byBzaWRlIGRhdGEKAHNraXAgd2hvbGUgZnJhbWUsIHNraXAgbGVmdDogJWQKAENvdWxkIG5vdCB1cGRhdGUgdGltZXN0YW1wcyBmb3Igc2tpcHBlZCBzYW1wbGVzLgoAc2tpcCAlZC8lZCBzYW1wbGVzCgBDb3VsZCBub3QgdXBkYXRlIHRpbWVzdGFtcHMgZm9yIGRpc2NhcmRlZCBzYW1wbGVzLgoAZGlzY2FyZCAlZC8lZCBzYW1wbGVzCgBNdWx0aXBsZSBmcmFtZXMgaW4gYSBwYWNrZXQuCgBUb28gbWFueSBlcnJvcnMgd2hlbiBkcmFpbmluZywgdGhpcyBpcyBhIGJ1Zy4gU3RvcCBkcmFpbmluZyBhbmQgZm9yY2UgRU9GLgoAZnJhbWUtPmJ1ZlswXQAsAEEgbm9uLWV4aXN0aW5nIGJpdHN0cmVhbSBmaWx0ZXIgJXMgcmVxdWVzdGVkIGJ5IGEgZGVjb2Rlci4gVGhpcyBpcyBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdC4KAEludmFsaWQgY3JvcHBpbmcgaW5mb3JtYXRpb24gc2V0IGJ5IGEgZGVjb2RlcjogJXp1LyV6dS8lenUvJXp1IChmcmFtZSBzaXplICVkeCVkKS4gVGhpcyBpcyBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdAoAYXZjaS0+Y29tcGF0X2RlY29kZV9jb25zdW1lZCA9PSAwAEdvdCB1bmV4cGVjdGVkIHBhY2tldCBhZnRlciBFT0YKAEdvdCB1bmV4cGVjdGVkIHBhY2tldCBzaXplIGFmdGVyIGEgcGFydGlhbCBkZWNvZGUKAFRoZSBkZXByZWNhdGVkIGF2Y29kZWNfZGVjb2RlXyogQVBJIGNhbm5vdCByZXR1cm4gYWxsIHRoZSBmcmFtZXMgZm9yIHRoaXMgZGVjb2Rlci4gU29tZSBmcmFtZXMgd2lsbCBiZSBkcm9wcGVkLiBVcGRhdGUgeW91ciBjb2RlIHRvIHRoZSBuZXcgZGVjb2RpbmcgQVBJIHRvIGZpeCB0aGlzLgoAbiA+PSAxAEZvcm1hdCByZXR1cm5lZCBmcm9tIGdldF9idWZmZXIoKSBkb2VzIG5vdCBtYXRjaCB0aGUgZm9ybWF0IG9mIHByb3ZpZGVkIEFWSFdGcmFtZXNDb250ZXh0CgBjaG9pY2VzW25dICE9IEFWX1BJWF9GTVRfTk9ORQBDb3VsZCBub3QgZmluZCBhbiBBVkhXQWNjZWwgZm9yIHRoZSBwaXhlbCBmb3JtYXQ6ICVzAElnbm9yaW5nIGV4cGVyaW1lbnRhbCBod2FjY2VsOiAlcwoAZnJhbWUtPm5iX2V4dGVuZGVkX2J1ZiA9PSAwAGRlZmF1bHRfZ2V0X2J1ZmZlciBjYWxsZWQgb24gZnJhbWUgJXAAcGljLT5kYXRhWypdIT1OVUxMIGluIGF2Y29kZWNfZGVmYXVsdF9nZXRfYnVmZmVyCgBVbmFibGUgdG8gZ2V0IHBpeGVsIGZvcm1hdCBkZXNjcmlwdG9yIGZvciBmb3JtYXQgJXMKAGRlZmF1bHRfZ2V0X2J1ZmZlciBjYWxsZWQgb24gcGljICVwCgBJbmNvbnNpc3RlbnQgY2hhbm5lbCBjb25maWd1cmF0aW9uLgoAVG9vIG1hbnkgY2hhbm5lbHM6ICVkLgoAZ2V0X2J1ZmZlcigpIGZhaWxlZAoAdmlkZW9fZ2V0X2J1ZmZlcjogaW1hZ2UgcGFyYW1ldGVycyBpbnZhbGlkCgBwaWMtPmRhdGFbKl0hPU5VTEwgaW4gZ2V0X2J1ZmZlcl9pbnRlcm5hbAoAZnJhbWUtPmRhdGFbaV0AQnVmZmVyIHJldHVybmVkIGJ5IGdldF9idWZmZXIyKCkgZGlkIG5vdCB6ZXJvIHVudXNlZCBwbGFuZSBwb2ludGVycwoASW52YWxpZCBuZWdhdGl2ZSB1c2VyIHBhY2tldCBzaXplICVkCgBJbnZhbGlkIG1pbmltdW0gcmVxdWlyZWQgcGFja2V0IHNpemUgJWxsZCAobWF4IGFsbG93ZWQgaXMgJWQpCgAhYXZwa3QtPmRhdGEgfHwgYXZwa3QtPmRhdGEgIT0gYXZjdHgtPmludGVybmFsLT5ieXRlX2J1ZmZlcgBsaWJhdmNvZGVjL2VuY29kZS5jAFVzZXIgcGFja2V0IGlzIHRvbyBzbWFsbCAoJWQgPCAlbGxkKQoARmFpbGVkIHRvIGFsbG9jYXRlIHBhY2tldCBvZiBzaXplICVsbGQKAFRoaXMgZW5jb2RlciByZXF1aXJlcyB1c2luZyB0aGUgYXZjb2RlY19zZW5kX2ZyYW1lKCkgQVBJLgoARW5jb2RpbmcgdG8gYSBwbGFuYXIgc2FtcGxlIGZvcm1hdCwgd2l0aCBtb3JlIHRoYW4gJWQgY2hhbm5lbHMsIGJ1dCBleHRlbmRlZF9kYXRhIGlzIG5vdCBzZXQuCgBleHRlbmRlZF9kYXRhIGlzIG5vdCBzZXQuCgBtb3JlIHNhbXBsZXMgdGhhbiBmcmFtZSBzaXplIChhdmNvZGVjX2VuY29kZV9hdWRpbzIpCgBuYl9zYW1wbGVzICglZCkgIT0gZnJhbWVfc2l6ZSAoJWQpIChhdmNvZGVjX2VuY29kZV9hdWRpbzIpCgBhdmN0eC0+Y29kZWMtPmVuY29kZTIAUHJvdmlkZWQgcGFja2V0IGlzIHRvbyBzbWFsbCwgbmVlZHMgdG8gYmUgJWQKAEFWRnJhbWUuZm9ybWF0IGlzIG5vdCBzZXQKAEFWRnJhbWUud2lkdGggb3IgaGVpZ2h0IGlzIG5vdCBzZXQKAHJldCA8PSAwAEZvcmNpbmcgdGhyZWFkIGNvdW50IHRvIDEgZm9yIE1KUEVHIGVuY29kaW5nLCB1c2UgLXRocmVhZF90eXBlIHNsaWNlIG9yIGEgY29uc3RhbnQgcXVhbnRpemVyIGlmIHlvdSB3YW50IHRvIHVzZSBtdWx0aXBsZSBjcHUgY29yZXMKAE1KUEVHIENCUiBlbmNvZGluZyB3b3JrcyBiYWRseSB3aXRoIGZyYW1lIG11bHRpLXRocmVhZGluZywgY29uc2lkZXIgdXNpbmcgLXRocmVhZHMgMSwgLXRocmVhZF90eXBlIHNsaWNlIG9yIGEgY29uc3RhbnQgcXVhbnRpemVyLgoAbm9uX2RldGVybWluaXN0aWMARm9yY2luZyB0aHJlYWQgY291bnQgdG8gMSBmb3IgaHVmZnl1diBlbmNvZGluZyB3aXRoIGZpcnN0IHBhc3Mgb3IgY29udGV4dCAxCgAhYXZjdHgtPmludGVybmFsLT5mcmFtZV90aHJlYWRfZW5jb2RlcgBsaWJhdmNvZGVjL2ZyYW1lX3RocmVhZF9lbmNvZGVyLmMAMQAhdGhyZWFkX2F2Y3R4LT5pbnRlcm5hbC0+ZnJhbWVfdGhyZWFkX2VuY29kZXIAZmZfZnJhbWVfdGhyZWFkX2VuY29kZXJfaW5pdCBmYWlsZWQKAG1pc3NpbmcgcGljdHVyZSBpbiBhY2Nlc3MgdW5pdCB3aXRoIHNpemUgJWQKAGlsbGVnYWwgcmVvcmRlcmluZ19vZl9waWNfbnVtc19pZGMgJWQKAHJlZmVyZW5jZSBjb3VudCAlZCBvdmVyZmxvdwoAQVZDLXBhcnNlcjogbmFsIGxlbmd0aCBzaXplIGludmFsaWQKAEFWQy1wYXJzZXI6IG5hbCBzaXplICVkIHJlbWFpbmluZyAlZAoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFNQUwoAc3BzX2lkICV1IG91dCBvZiByYW5nZQoAY2hyb21hX2Zvcm1hdF9pZGMgJXUAc2VwYXJhdGUgY29sb3IgcGxhbmVzIGFyZSBub3Qgc3VwcG9ydGVkCgBEaWZmZXJlbnQgY2hyb21hIGFuZCBsdW1hIGJpdCBkZXB0aABpbGxlZ2FsIGJpdCBkZXB0aCB2YWx1ZSAoJWQsICVkKQoAbG9nMl9tYXhfZnJhbWVfbnVtX21pbnVzNCBvdXQgb2YgcmFuZ2UgKDAtMTIpOiAlZAoAbG9nMl9tYXhfcG9jX2xzYiAoJWQpIGlzIG91dCBvZiByYW5nZQoAcG9jX2N5Y2xlX2xlbmd0aCBvdmVyZmxvdyAlZAoAaWxsZWdhbCBQT0MgdHlwZSAlZAoAdG9vIG1hbnkgcmVmZXJlbmNlIGZyYW1lcyAlZAoAaGVpZ2h0IG92ZXJmbG93CgBtYl93aWR0aC9oZWlnaHQgb3ZlcmZsb3cKAGRpc2NhcmRpbmcgc3BzIGNyb3BwaW5nLCBvcmlnaW5hbCB2YWx1ZXMgYXJlIGw6JWQgcjolZCB0OiVkIGI6JWQKAGNyb3AgdmFsdWVzIGludmFsaWQgJWQgJWQgJWQgJWQgLyAlZCAlZAoAVlVJAE92ZXJyZWFkICVzIGJ5ICVkIGJpdHMKAFBJQy1BRkYATUItQUZGAEZSTQA4QjgAc3BzOiV1IHByb2ZpbGU6JWQvJWQgcG9jOiVkIHJlZjolZCAlZHglZCAlcyAlcyBjcm9wOiV1LyV1LyV1LyV1ICVzICVzICVkLyVkIGIlZCByZW86JWQKAGlsbGVnYWwgYXNwZWN0IHJhdGlvCgBUcnVuY2F0ZWQgVlVJCgB0aW1lX3NjYWxlL251bV91bml0c19pbl90aWNrIGludmFsaWQgb3IgdW5zdXBwb3J0ZWQgKCV1LyV1KQoAQ2xpcHBpbmcgaWxsZWdhbCBudW1fcmVvcmRlcl9mcmFtZXMgJWQKAGNwYl9jb3VudCAlZCBpbnZhbGlkCgBkZWx0YSBzY2FsZSAlZCBpcyBpbnZhbGlkCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgUFBTICglenUgPiAlenUpCgBJbnZhbGlkIGx1bWEgYml0IGRlcHRoPSVkCgBVbmltcGxlbWVudGVkIGx1bWEgYml0IGRlcHRoPSVkAEZNTyBub3Qgc3VwcG9ydGVkCgByZWZlcmVuY2Ugb3ZlcmZsb3cgKHBwcykKAENBVkxDAENBQkFDAHdlaWdodGVkAExQQVIAQ09OU1RSAFJFRFUAOHg4RENUAHBwczoldSBzcHM6JXUgJXMgc2xpY2VfZ3JvdXBzOiVkIHJlZjoldS8ldSAlcyBxcDolZC8lZC8lZC8lZCAlcyAlcyAlcyAlcwoAQ3VycmVudCBwcm9maWxlIGRvZXNuJ3QgcHJvdmlkZSBtb3JlIFJCU1AgZGF0YSBpbiBQUFMsIHNraXBwaW5nCgBTRUkgdHlwZSAlZCBzaXplICVkIHRydW5jYXRlZCBhdCAlZAoAdW5rbm93biBTRUkgdHlwZSAlZAoAbm9uLWV4aXN0aW5nIFNQUyAlZCByZWZlcmVuY2VkIGluIGJ1ZmZlcmluZyBwZXJpb2QKAHJlY292ZXJ5X2ZyYW1lX2NudCAldSBpcyBvdXQgb2YgcmFuZ2UKAHgyNjQgLSBjb3JlICVkAHgyNjQgLSBjb3JlIDAwMDAAdXNlciBkYXRhOiIlcyIKAFNQUyB1bmF2YWlsYWJsZSBpbiBkZWNvZGVfcGljdHVyZV90aW1pbmcKAAEBAQICAwMCA2N0X3R5cGU6JVggcGljX3N0cnVjdDolZAoAY2hlY2tlcmJvYXJkX3JsAGNoZWNrZXJib2FyZF9scgBjb2xfaW50ZXJsZWF2ZWRfcmwAY29sX2ludGVybGVhdmVkX2xyAHJvd19pbnRlcmxlYXZlZF9ybAByb3dfaW50ZXJsZWF2ZWRfbHIAcmlnaHRfbGVmdABsZWZ0X3JpZ2h0AGJvdHRvbV90b3AAdG9wX2JvdHRvbQBibG9ja19ybABibG9ja19scgACAwEGBQAQIDAAIBBAYDBQcGJ1Zl9pbmRleCA8PSBidWZfc2l6ZQBsaWJhdmNvZGVjL2gyNjRkZWMuYwBRMjY0AG5vIGZyYW1lIQoAcGljdC0+YnVmWzBdIHx8ICEqZ290X2ZyYW1lAER1cGxpY2F0aW5nIGZpZWxkICVkIHRvIGZpbGwgbWlzc2luZwoAc3RlcmVvX21vZGUARXJyb3Igc3BsaXR0aW5nIHRoZSBpbnB1dCBpbnRvIE5BTCB1bml0cy4KAEludmFsaWQgaW50ZXIgSURSIGZyYW1lCgBpbnZhbGlkIG1peGVkIElEUiAvIG5vbiBJRFIgZnJhbWVzIGNhbm5vdCBiZSBkZWNvZGVkIGluIHNsaWNlIG11bHRpdGhyZWFkaW5nIG1vZGUKAGRhdGEgcGFydGl0aW9uaW5nAFNQUyBkZWNvZGluZyBmYWlsdXJlLCB0cnlpbmcgYWdhaW4gd2l0aCB0aGUgY29tcGxldGUgTkFMCgBVbmtub3duIE5BTCBjb2RlOiAlZCAoJWQgYml0cykKAGRlY29kZV9zbGljZV9oZWFkZXIgZXJyb3IKAEdyZWVuIE1ldGFkYXRhIEluZm8gU0VJIG1lc3NhZ2UKACAgZ3JlZW5fbWV0YWRhdGFfdHlwZTogJWQKACAgZ3JlZW5fbWV0YWRhdGFfcGVyaW9kX3R5cGU6ICVkCgAgIGdyZWVuX21ldGFkYXRhX251bV9zZWNvbmRzOiAlZAoAICBncmVlbl9tZXRhZGF0YV9udW1fcGljdHVyZXM6ICVkCgAgIFNFSSBHUkVFTiBDb21wbGV4aXR5IE1ldHJpY3M6ICVmICVmICVmICVmCgAgIHhzZF9tZXRyaWNfdHlwZTogJWQKACAgeHNkX21ldHJpY192YWx1ZTogJWYKAEludmFsaWQgemVyby1zaXplZCBWQ0wgTkFMIHVuaXQKAHB0aHJlYWRfb25jZSBoYXMgZmFpbGVkLgBFcnJvciByZXNpbGllbmNlIHdpdGggc2xpY2UgdGhyZWFkcyBpcyBlbmFibGVkLiBJdCBpcyB1bnNhZmUgYW5kIHVuc3VwcG9ydGVkIGFuZCBtYXkgY3Jhc2guIFVzZSBpdCBhdCB5b3VyIG93biByaXNrCgBIMjY0IERlY29kZXIAaXNfYXZjAGlzIGF2YwBuYWxfbGVuZ3RoX3NpemUAZW5hYmxlX2VyAEVuYWJsZSBlcnJvciByZXNpbGllbmNlIG9uIGRhbWFnZWQgZnJhbWVzICh1bnNhZmUpAENhbm5vdCBhbGxvY2F0ZSBtZW1vcnkuCgBSZWZlcmVuY2Ugbm90IGF2YWlsYWJsZSBmb3IgZXJyb3IgY29uY2VhbGluZwoAUmVmZXJlbmNlIGludmFsaWQKAGxpYmF2Y29kZWMvaDI2NGRzcC5jAAAggKAAEFBhY2tldCBpcyB0b28gc21hbGwKAExlZnRvdmVyIGJ5dGVzOiAlZC4KAGxpYmF2Y29kZWMvb3B0aW9ucy5jAEFWQ29kZWNDb250ZXh0AGIAc2V0IGJpdHJhdGUgKGluIGJpdHMvcykAYWIAYnQAU2V0IHZpZGVvIGJpdHJhdGUgdG9sZXJhbmNlIChpbiBiaXRzL3MpLiBJbiAxLXBhc3MgbW9kZSwgYml0cmF0ZSB0b2xlcmFuY2Ugc3BlY2lmaWVzIGhvdyBmYXIgcmF0ZWNvbnRyb2wgaXMgd2lsbGluZyB0byBkZXZpYXRlIGZyb20gdGhlIHRhcmdldCBhdmVyYWdlIGJpdHJhdGUgdmFsdWUuIFRoaXMgaXMgbm90IHJlbGF0ZWQgdG8gbWluaW11bS9tYXhpbXVtIGJpdHJhdGUuIExvd2VyaW5nIHRvbGVyYW5jZSB0b28gbXVjaCBoYXMgYW4gYWR2ZXJzZSBlZmZlY3Qgb24gcXVhbGl0eS4AdW5hbGlnbmVkAGFsbG93IGRlY29kZXJzIHRvIHByb2R1Y2UgdW5hbGlnbmVkIG91dHB1dABtdjQAdXNlIGZvdXIgbW90aW9uIHZlY3RvcnMgcGVyIG1hY3JvYmxvY2sgKE1QRUctNCkAcXBlbAB1c2UgMS80LXBlbCBtb3Rpb24gY29tcGVuc2F0aW9uAGxvb3AAdXNlIGxvb3AgZmlsdGVyAHFzY2FsZQB1c2UgZml4ZWQgcXNjYWxlAGdtYwB1c2UgZ21jAG12MABhbHdheXMgdHJ5IGEgbWIgd2l0aCBtdj08MCwwPgBpbnB1dF9wcmVzZXJ2ZWQAcGFzczEAdXNlIGludGVybmFsIDItcGFzcyByYXRlY29udHJvbCBpbiBmaXJzdCAgcGFzcyBtb2RlAHBhc3MyAHVzZSBpbnRlcm5hbCAyLXBhc3MgcmF0ZWNvbnRyb2wgaW4gc2Vjb25kIHBhc3MgbW9kZQBvbmx5IGRlY29kZS9lbmNvZGUgZ3JheXNjYWxlAGVtdV9lZGdlAGRvIG5vdCBkcmF3IGVkZ2VzAHBzbnIAZXJyb3JbP10gdmFyaWFibGVzIHdpbGwgYmUgc2V0IGR1cmluZyBlbmNvZGluZwB0cnVuY2F0ZWQASW5wdXQgYml0c3RyZWFtIG1pZ2h0IGJlIHJhbmRvbWx5IHRydW5jYXRlZABuYXEAbm9ybWFsaXplIGFkYXB0aXZlIHF1YW50aXphdGlvbgBpbGRjdAB1c2UgaW50ZXJsYWNlZCBEQ1QAbG93X2RlbGF5AGZvcmNlIGxvdyBkZWxheQBnbG9iYWxfaGVhZGVyAHBsYWNlIGdsb2JhbCBoZWFkZXJzIGluIGV4dHJhZGF0YSBpbnN0ZWFkIG9mIGV2ZXJ5IGtleWZyYW1lAGJpdGV4YWN0AHVzZSBvbmx5IGJpdGV4YWN0IGZ1bmN0aW9ucyAoZXhjZXB0IChJKURDVCkASC4yNjMgYWR2YW5jZWQgaW50cmEgY29kaW5nIC8gTVBFRy00IEFDIHByZWRpY3Rpb24AaWxtZQBpbnRlcmxhY2VkIG1vdGlvbiBlc3RpbWF0aW9uAGNnb3AAY2xvc2VkIEdPUABvdXRwdXRfY29ycnVwdABPdXRwdXQgZXZlbiBwb3RlbnRpYWxseSBjb3JydXB0ZWQgZnJhbWVzAGZhc3QAYWxsb3cgbm9uLXNwZWMtY29tcGxpYW50IHNwZWVkdXAgdHJpY2tzAGZsYWdzMgBub291dABza2lwIGJpdHN0cmVhbSBlbmNvZGluZwBpZ25vcmVjcm9wAGlnbm9yZSBjcm9wcGluZyBpbmZvcm1hdGlvbiBmcm9tIHNwcwBsb2NhbF9oZWFkZXIAcGxhY2UgZ2xvYmFsIGhlYWRlcnMgYXQgZXZlcnkga2V5ZnJhbWUgaW5zdGVhZCBvZiBpbiBleHRyYWRhdGEAY2h1bmtzAEZyYW1lIGRhdGEgbWlnaHQgYmUgc3BsaXQgaW50byBtdWx0aXBsZSBjaHVua3MAc2hvd2FsbABTaG93IGFsbCBmcmFtZXMgYmVmb3JlIHRoZSBmaXJzdCBrZXlmcmFtZQBleHBvcnRfbXZzAGV4cG9ydCBtb3Rpb24gdmVjdG9ycyB0aHJvdWdoIGZyYW1lIHNpZGUgZGF0YQBza2lwX21hbnVhbABkbyBub3Qgc2tpcCBzYW1wbGVzIGFuZCBleHBvcnQgc2tpcCBpbmZvcm1hdGlvbiBhcyBmcmFtZSBzaWRlIGRhdGEAYXNzX3JvX2ZsdXNoX25vb3AAZG8gbm90IHJlc2V0IEFTUyBSZWFkT3JkZXIgZmllbGQgb24gZmx1c2gAbWVfbWV0aG9kAHNldCBtb3Rpb24gZXN0aW1hdGlvbiBtZXRob2QAemVybwB6ZXJvIG1vdGlvbiBlc3RpbWF0aW9uIChmYXN0ZXN0KQBmdWxsAGZ1bGwgbW90aW9uIGVzdGltYXRpb24gKHNsb3dlc3QpAGVwenMARVBaUyBtb3Rpb24gZXN0aW1hdGlvbgBlc2EAZXNhIG1vdGlvbiBlc3RpbWF0aW9uIChhbGlhcyBmb3IgZnVsbCkAdGVzYQB0ZXNhIG1vdGlvbiBlc3RpbWF0aW9uAGRpYQBkaWFtb25kIG1vdGlvbiBlc3RpbWF0aW9uIChhbGlhcyBmb3IgRVBaUykAbG9nIG1vdGlvbiBlc3RpbWF0aW9uAHBob2RzAHBob2RzIG1vdGlvbiBlc3RpbWF0aW9uAHgxAFgxIG1vdGlvbiBlc3RpbWF0aW9uAGhleABoZXggbW90aW9uIGVzdGltYXRpb24AdW1oAHVtaCBtb3Rpb24gZXN0aW1hdGlvbgBpdGVyAGl0ZXIgbW90aW9uIGVzdGltYXRpb24AdGltZV9iYXNlAGcAc2V0IHRoZSBncm91cCBvZiBwaWN0dXJlIChHT1ApIHNpemUAYXIAc2V0IGF1ZGlvIHNhbXBsaW5nIHJhdGUgKGluIEh6KQBhYwBzZXQgbnVtYmVyIG9mIGF1ZGlvIGNoYW5uZWxzAHNldCBjdXRvZmYgYmFuZHdpZHRoAGZyYW1lX3NpemUAZnJhbWVfbnVtYmVyAGRlbGF5AHFjb21wAHZpZGVvIHF1YW50aXplciBzY2FsZSBjb21wcmVzc2lvbiAoVkJSKS4gQ29uc3RhbnQgb2YgcmF0ZWNvbnRyb2wgZXF1YXRpb24uIFJlY29tbWVuZGVkIHJhbmdlIGZvciBkZWZhdWx0IHJjX2VxOiAwLjAtMS4wAHFibHVyAHZpZGVvIHF1YW50aXplciBzY2FsZSBibHVyIChWQlIpAHFtaW4AbWluaW11bSB2aWRlbyBxdWFudGl6ZXIgc2NhbGUgKFZCUikAcW1heABtYXhpbXVtIHZpZGVvIHF1YW50aXplciBzY2FsZSAoVkJSKQBxZGlmZgBtYXhpbXVtIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgcXVhbnRpemVyIHNjYWxlcyAoVkJSKQBiZgBzZXQgbWF4aW11bSBudW1iZXIgb2YgQi1mcmFtZXMgYmV0d2VlbiBub24tQi1mcmFtZXMAYl9xZmFjdG9yAFFQIGZhY3RvciBiZXR3ZWVuIFAtIGFuZCBCLWZyYW1lcwByY19zdHJhdGVneQByYXRlY29udHJvbCBtZXRob2QAYl9zdHJhdGVneQBzdHJhdGVneSB0byBjaG9vc2UgYmV0d2VlbiBJL1AvQi1mcmFtZXMAcHMAUlRQIHBheWxvYWQgc2l6ZSBpbiBieXRlcwBtdl9iaXRzAGhlYWRlcl9iaXRzAGlfdGV4X2JpdHMAcF90ZXhfYml0cwBpX2NvdW50AHBfY291bnQAc2tpcF9jb3VudABtaXNjX2JpdHMAZnJhbWVfYml0cwBjb2RlY190YWcAYnVnAHdvcmsgYXJvdW5kIG5vdCBhdXRvZGV0ZWN0ZWQgZW5jb2RlciBidWdzAGF1dG9kZXRlY3QAb2xkX21zbXBlZzQAc29tZSBvbGQgbGF2Yy1nZW5lcmF0ZWQgTVNNUEVHNHYzIGZpbGVzIChubyBhdXRvZGV0ZWN0aW9uKQB4dmlkX2lsYWNlAFh2aWQgaW50ZXJsYWNpbmcgYnVnIChhdXRvZGV0ZWN0ZWQgaWYgRk9VUkNDID09IFhWSVgpAHVtcDQAKGF1dG9kZXRlY3RlZCBpZiBGT1VSQ0MgPT0gVU1QNCkAbm9fcGFkZGluZwBwYWRkaW5nIGJ1ZyAoYXV0b2RldGVjdGVkKQBhY192bGMAaWxsZWdhbCBWTEMgYnVnIChhdXRvZGV0ZWN0ZWQgcGVyIEZPVVJDQykAcXBlbF9jaHJvbWEAc3RkX3FwZWwAb2xkIHN0YW5kYXJkIHFwZWwgKGF1dG9kZXRlY3RlZCBwZXIgRk9VUkNDL3ZlcnNpb24pAHFwZWxfY2hyb21hMgBkaXJlY3RfYmxvY2tzaXplAGRpcmVjdC1xcGVsLWJsb2Nrc2l6ZSBidWcgKGF1dG9kZXRlY3RlZCBwZXIgRk9VUkNDL3ZlcnNpb24pAGVkZ2UAZWRnZSBwYWRkaW5nIGJ1ZyAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAaHBlbF9jaHJvbWEAZGNfY2xpcABtcwB3b3JrIGFyb3VuZCB2YXJpb3VzIGJ1Z3MgaW4gTWljcm9zb2Z0J3MgYnJva2VuIGRlY29kZXJzAHRydW5jYXRlZCBmcmFtZXMAaWVkZ2UAc3RyaWN0AGhvdyBzdHJpY3RseSB0byBmb2xsb3cgdGhlIHN0YW5kYXJkcwB2ZXJ5AHN0cmljdGx5IGNvbmZvcm0gdG8gYSBvbGRlciBtb3JlIHN0cmljdCB2ZXJzaW9uIG9mIHRoZSBzcGVjIG9yIHJlZmVyZW5jZSBzb2Z0d2FyZQBzdHJpY3RseSBjb25mb3JtIHRvIGFsbCB0aGUgdGhpbmdzIGluIHRoZSBzcGVjIG5vIG1hdHRlciB3aGF0IHRoZSBjb25zZXF1ZW5jZXMAbm9ybWFsAHVub2ZmaWNpYWwAYWxsb3cgdW5vZmZpY2lhbCBleHRlbnNpb25zAGV4cGVyaW1lbnRhbABhbGxvdyBub24tc3RhbmRhcmRpemVkIGV4cGVyaW1lbnRhbCB0aGluZ3MAYl9xb2Zmc2V0AFFQIG9mZnNldCBiZXR3ZWVuIFAtIGFuZCBCLWZyYW1lcwBlcnJfZGV0ZWN0AHNldCBlcnJvciBkZXRlY3Rpb24gZmxhZ3MAY3JjY2hlY2sAdmVyaWZ5IGVtYmVkZGVkIENSQ3MAYml0c3RyZWFtAGRldGVjdCBiaXRzdHJlYW0gc3BlY2lmaWNhdGlvbiBkZXZpYXRpb25zAGJ1ZmZlcgBkZXRlY3QgaW1wcm9wZXIgYml0c3RyZWFtIGxlbmd0aABleHBsb2RlAGFib3J0IGRlY29kaW5nIG9uIG1pbm9yIGVycm9yIGRldGVjdGlvbgBpZ25vcmVfZXJyAGlnbm9yZSBlcnJvcnMAY2FyZWZ1bABjb25zaWRlciB0aGluZ3MgdGhhdCB2aW9sYXRlIHRoZSBzcGVjLCBhcmUgZmFzdCB0byBjaGVjayBhbmQgaGF2ZSBub3QgYmVlbiBzZWVuIGluIHRoZSB3aWxkIGFzIGVycm9ycwBjb21wbGlhbnQAY29uc2lkZXIgYWxsIHNwZWMgbm9uIGNvbXBsaWFuY2llcyBhcyBlcnJvcnMAYWdncmVzc2l2ZQBjb25zaWRlciB0aGluZ3MgdGhhdCBhIHNhbmUgZW5jb2RlciBzaG91bGQgbm90IGRvIGFzIGFuIGVycm9yAGhhc19iX2ZyYW1lcwBibG9ja19hbGlnbgBtcGVnX3F1YW50AHVzZSBNUEVHIHF1YW50aXplcnMgaW5zdGVhZCBvZiBILjI2MwBxc3F1aXNoAGRlcHJlY2F0ZWQsIHVzZSBlbmNvZGVyIHByaXZhdGUgb3B0aW9ucyBpbnN0ZWFkAHJjX3Ftb2RfYW1wAHJjX3Ftb2RfZnJlcQByY19vdmVycmlkZV9jb3VudAByY19lcQBtYXhyYXRlAG1heGltdW0gYml0cmF0ZSAoaW4gYml0cy9zKS4gVXNlZCBmb3IgVkJWIHRvZ2V0aGVyIHdpdGggYnVmc2l6ZS4AbWlucmF0ZQBtaW5pbXVtIGJpdHJhdGUgKGluIGJpdHMvcykuIE1vc3QgdXNlZnVsIGluIHNldHRpbmcgdXAgYSBDQlIgZW5jb2RlLiBJdCBpcyBvZiBsaXR0bGUgdXNlIG90aGVyd2lzZS4AYnVmc2l6ZQBzZXQgcmF0ZWNvbnRyb2wgYnVmZmVyIHNpemUgKGluIGJpdHMpAHJjX2J1Zl9hZ2dyZXNzaXZpdHkAaV9xZmFjdG9yAFFQIGZhY3RvciBiZXR3ZWVuIFAtIGFuZCBJLWZyYW1lcwBpX3FvZmZzZXQAUVAgb2Zmc2V0IGJldHdlZW4gUC0gYW5kIEktZnJhbWVzAHJjX2luaXRfY3BseABkY3QARENUIGFsZ29yaXRobQBhdXRvc2VsZWN0IGEgZ29vZCBvbmUAZmFzdGludABmYXN0IGludGVnZXIAaW50AGFjY3VyYXRlIGludGVnZXIAbW14AGFsdGl2ZWMAZmFhbgBmbG9hdGluZyBwb2ludCBBQU4gRENUAGx1bWlfbWFzawBjb21wcmVzc2VzIGJyaWdodCBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAHRjcGx4X21hc2sAdGVtcG9yYWwgY29tcGxleGl0eSBtYXNraW5nAHNjcGx4X21hc2sAc3BhdGlhbCBjb21wbGV4aXR5IG1hc2tpbmcAcF9tYXNrAGludGVyIG1hc2tpbmcAZGFya19tYXNrAGNvbXByZXNzZXMgZGFyayBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAGlkY3QAc2VsZWN0IElEQ1QgaW1wbGVtZW50YXRpb24Ac2ltcGxlAHNpbXBsZW1teABhcm0Ac2g0AHNpbXBsZWFybQBzaW1wbGVhcm12NXRlAHNpbXBsZWFybXY2AHNpbXBsZW5lb24Ac2ltcGxlYWxwaGEAaXBwAHh2aWQAeHZpZG1teABkZXByZWNhdGVkLCBmb3IgY29tcGF0aWJpbGl0eSBvbmx5AGZhYW5pAGZsb2F0aW5nIHBvaW50IEFBTiBJRENUAHNpbXBsZWF1dG8Ac2xpY2VfY291bnQAZWMAc2V0IGVycm9yIGNvbmNlYWxtZW50IHN0cmF0ZWd5AGd1ZXNzX212cwBpdGVyYXRpdmUgbW90aW9uIHZlY3RvciAoTVYpIHNlYXJjaCAoc2xvdykAZGVibG9jawB1c2Ugc3Ryb25nIGRlYmxvY2sgZmlsdGVyIGZvciBkYW1hZ2VkIE1CcwBmYXZvcl9pbnRlcgBmYXZvciBwcmVkaWN0aW5nIGZyb20gdGhlIHByZXZpb3VzIGZyYW1lAGJpdHNfcGVyX2NvZGVkX3NhbXBsZQBwcmVkAHByZWRpY3Rpb24gbWV0aG9kAGxlZnQAcGxhbmUAbWVkaWFuAGFzcGVjdABzYW1wbGUgYXNwZWN0IHJhdGlvAHNhcgBwcmludCBzcGVjaWZpYyBkZWJ1ZyBpbmZvAHBpY3QAcGljdHVyZSBpbmZvAHJjAHJhdGUgY29udHJvbABtYl90eXBlAG1hY3JvYmxvY2sgKE1CKSB0eXBlAHFwAHBlci1ibG9jayBxdWFudGl6YXRpb24gcGFyYW1ldGVyIChRUCkAbXYAbW90aW9uIHZlY3RvcgBkY3RfY29lZmYAZ3JlZW5fbWV0YWRhdGEAc2tpcABzdGFydGNvZGUAcHRzAGVyAGVycm9yIHJlY29nbml0aW9uAG1tY28AbWVtb3J5IG1hbmFnZW1lbnQgY29udHJvbCBvcGVyYXRpb25zIChILjI2NCkAYnVncwB2aXNfcXAAdmlzdWFsaXplIHF1YW50aXphdGlvbiBwYXJhbWV0ZXIgKFFQKSwgbG93ZXIgUVAgYXJlIHRpbnRlZCBncmVlbmVyAHZpc19tYl90eXBlAHZpc3VhbGl6ZSBibG9jayB0eXBlcwBidWZmZXJzAHBpY3R1cmUgYnVmZmVyIGFsbG9jYXRpb25zAHRocmVhZF9vcHMAdGhyZWFkaW5nIG9wZXJhdGlvbnMAbm9tYwBza2lwIG1vdGlvbiBjb21wZW5zYXRpb24AdmlzbXYAdmlzdWFsaXplIG1vdGlvbiB2ZWN0b3JzIChNVnMpIChkZXByZWNhdGVkKQBkZWJ1Z19tdgBwZgBmb3J3YXJkIHByZWRpY3RlZCBNVnMgb2YgUC1mcmFtZXMAZm9yd2FyZCBwcmVkaWN0ZWQgTVZzIG9mIEItZnJhbWVzAGJiAGJhY2t3YXJkIHByZWRpY3RlZCBNVnMgb2YgQi1mcmFtZXMAY21wAGZ1bGwtcGVsIE1FIGNvbXBhcmUgZnVuY3Rpb24AY21wX2Z1bmMAc3ViY21wAHN1Yi1wZWwgTUUgY29tcGFyZSBmdW5jdGlvbgBtYmNtcABtYWNyb2Jsb2NrIGNvbXBhcmUgZnVuY3Rpb24AaWxkY3RjbXAAaW50ZXJsYWNlZCBEQ1QgY29tcGFyZSBmdW5jdGlvbgBkaWFfc2l6ZQBkaWFtb25kIHR5cGUgJiBzaXplIGZvciBtb3Rpb24gZXN0aW1hdGlvbgBsYXN0X3ByZWQAYW1vdW50IG9mIG1vdGlvbiBwcmVkaWN0b3JzIGZyb20gdGhlIHByZXZpb3VzIGZyYW1lAHByZW1lAHByZSBtb3Rpb24gZXN0aW1hdGlvbgBwcmVjbXAAcHJlIG1vdGlvbiBlc3RpbWF0aW9uIGNvbXBhcmUgZnVuY3Rpb24Ac2FkAHN1bSBvZiBhYnNvbHV0ZSBkaWZmZXJlbmNlcywgZmFzdABzc2UAc3VtIG9mIHNxdWFyZWQgZXJyb3JzAHNhdGQAc3VtIG9mIGFic29sdXRlIEhhZGFtYXJkIHRyYW5zZm9ybWVkIGRpZmZlcmVuY2VzAHN1bSBvZiBhYnNvbHV0ZSBEQ1QgdHJhbnNmb3JtZWQgZGlmZmVyZW5jZXMAc3VtIG9mIHNxdWFyZWQgcXVhbnRpemF0aW9uIGVycm9ycyAoYXZvaWQsIGxvdyBxdWFsaXR5KQBiaXQAbnVtYmVyIG9mIGJpdHMgbmVlZGVkIGZvciB0aGUgYmxvY2sAcmQAcmF0ZSBkaXN0b3J0aW9uIG9wdGltYWwsIHNsb3cAdnNhZABzdW0gb2YgYWJzb2x1dGUgdmVydGljYWwgZGlmZmVyZW5jZXMAdnNzZQBzdW0gb2Ygc3F1YXJlZCB2ZXJ0aWNhbCBkaWZmZXJlbmNlcwBuc3NlAG5vaXNlIHByZXNlcnZpbmcgc3VtIG9mIHNxdWFyZWQgZGlmZmVyZW5jZXMAZGN0bWF4AGNocm9tYQBtc2FkAHN1bSBvZiBhYnNvbHV0ZSBkaWZmZXJlbmNlcywgbWVkaWFuIHByZWRpY3RlZABwcmVfZGlhX3NpemUAZGlhbW9uZCB0eXBlICYgc2l6ZSBmb3IgbW90aW9uIGVzdGltYXRpb24gcHJlLXBhc3MAc3VicQBzdWItcGVsIG1vdGlvbiBlc3RpbWF0aW9uIHF1YWxpdHkAZHRnX2FjdGl2ZV9mb3JtYXQAbWVfcmFuZ2UAbGltaXQgbW90aW9uIHZlY3RvcnMgcmFuZ2UgKDEwMjMgZm9yIERpdlggcGxheWVyKQBpYmlhcwBpbnRyYSBxdWFudCBiaWFzAHBiaWFzAGludGVyIHF1YW50IGJpYXMAZ2xvYmFsX3F1YWxpdHkAY29kZXIAdmxjAHZhcmlhYmxlIGxlbmd0aCBjb2RlciAvIEh1ZmZtYW4gY29kZXIAYXJpdGhtZXRpYyBjb2RlcgByYXcAcmF3IChubyBlbmNvZGluZykAcmxlAHJ1bi1sZW5ndGggY29kZXIAZGVmbGF0ZQBkZWZsYXRlLWJhc2VkIGNvZGVyAGNvbnRleHQAY29udGV4dCBtb2RlbABzbGljZV9mbGFncwB4dm1jX2FjY2VsZXJhdGlvbgBtYmQAbWFjcm9ibG9jayBkZWNpc2lvbiBhbGdvcml0aG0gKGhpZ2ggcXVhbGl0eSBtb2RlKQB1c2UgbWJjbXAAYml0cwB1c2UgZmV3ZXN0IGJpdHMAdXNlIGJlc3QgcmF0ZSBkaXN0b3J0aW9uAHN0cmVhbV9jb2RlY190YWcAc2NfdGhyZXNob2xkAHNjZW5lIGNoYW5nZSB0aHJlc2hvbGQAbG1pbgBsbWF4AG5yAG5vaXNlIHJlZHVjdGlvbgByY19pbml0X29jY3VwYW5jeQBudW1iZXIgb2YgYml0cyB3aGljaCBzaG91bGQgYmUgbG9hZGVkIGludG8gdGhlIHJjIGJ1ZmZlciBiZWZvcmUgZGVjb2Rpbmcgc3RhcnRzAHRocmVhZHMAc2V0IHRoZSBudW1iZXIgb2YgdGhyZWFkcwBhdXRvZGV0ZWN0IGEgc3VpdGFibGUgbnVtYmVyIG9mIHRocmVhZHMgdG8gdXNlAG1lX3RocmVzaG9sZABtb3Rpb24gZXN0aW1hdGlvbiB0aHJlc2hvbGQAbWJfdGhyZXNob2xkAG1hY3JvYmxvY2sgdGhyZXNob2xkAGRjAGludHJhX2RjX3ByZWNpc2lvbgBuc3NldwBuc3NlIHdlaWdodABza2lwX3RvcABudW1iZXIgb2YgbWFjcm9ibG9jayByb3dzIGF0IHRoZSB0b3Agd2hpY2ggYXJlIHNraXBwZWQAc2tpcF9ib3R0b20AbnVtYmVyIG9mIG1hY3JvYmxvY2sgcm93cyBhdCB0aGUgYm90dG9tIHdoaWNoIGFyZSBza2lwcGVkAHByb2ZpbGUAYWFjX21haW4AYWFjX2xvdwBhYWNfc3NyAGFhY19sdHAAYWFjX2hlAGFhY19oZV92MgBhYWNfbGQAYWFjX2VsZABtcGVnMl9hYWNfbG93AG1wZWcyX2FhY19oZQBkdHNfZXMAZHRzXzk2XzI0AGR0c19oZF9ocmEAZHRzX2hkX21hAG1wZWc0X3NwAG1wZWc0X2NvcmUAbXBlZzRfbWFpbgBtcGVnNF9hc3AAbWFpbjEwAGxldmVsAGxvd3JlcwBkZWNvZGUgYXQgMT0gMS8yLCAyPTEvNCwgMz0xLzggcmVzb2x1dGlvbnMAc2tpcF90aHJlc2hvbGQAZnJhbWUgc2tpcCB0aHJlc2hvbGQAc2tpcF9mYWN0b3IAZnJhbWUgc2tpcCBmYWN0b3IAc2tpcF9leHAAZnJhbWUgc2tpcCBleHBvbmVudABza2lwY21wAGZyYW1lIHNraXAgY29tcGFyZSBmdW5jdGlvbgBib3JkZXJfbWFzawBtYmxtaW4AbWluaW11bSBtYWNyb2Jsb2NrIExhZ3JhbmdlIGZhY3RvciAoVkJSKQBtYmxtYXgAbWF4aW11bSBtYWNyb2Jsb2NrIExhZ3JhbmdlIGZhY3RvciAoVkJSKQBtZXBjAG1vdGlvbiBlc3RpbWF0aW9uIGJpdHJhdGUgcGVuYWx0eSBjb21wZW5zYXRpb24gKDEuMCA9IDI1NikAc2tpcF9sb29wX2ZpbHRlcgBza2lwIGxvb3AgZmlsdGVyaW5nIHByb2Nlc3MgZm9yIHRoZSBzZWxlY3RlZCBmcmFtZXMAYXZkaXNjYXJkAHNraXBfaWRjdABza2lwIElEQ1QvZGVxdWFudGl6YXRpb24gZm9yIHRoZSBzZWxlY3RlZCBmcmFtZXMAc2tpcF9mcmFtZQBza2lwIGRlY29kaW5nIGZvciB0aGUgc2VsZWN0ZWQgZnJhbWVzAGRpc2NhcmQgbm8gZnJhbWUAZGlzY2FyZCB1c2VsZXNzIGZyYW1lcwBub3JlZgBkaXNjYXJkIGFsbCBub24tcmVmZXJlbmNlIGZyYW1lcwBiaWRpcgBkaXNjYXJkIGFsbCBiaWRpcmVjdGlvbmFsIGZyYW1lcwBub2tleQBkaXNjYXJkIGFsbCBmcmFtZXMgZXhjZXB0IGtleWZyYW1lcwBub2ludHJhAGRpc2NhcmQgYWxsIGZyYW1lcyBleGNlcHQgSSBmcmFtZXMAZGlzY2FyZCBhbGwgZnJhbWVzAGJpZGlyX3JlZmluZQByZWZpbmUgdGhlIHR3byBtb3Rpb24gdmVjdG9ycyB1c2VkIGluIGJpZGlyZWN0aW9uYWwgbWFjcm9ibG9ja3MAYnJkX3NjYWxlAGRvd25zY2FsZSBmcmFtZXMgZm9yIGR5bmFtaWMgQi1mcmFtZSBkZWNpc2lvbgBrZXlpbnRfbWluAG1pbmltdW0gaW50ZXJ2YWwgYmV0d2VlbiBJRFItZnJhbWVzAHJlZnMAcmVmZXJlbmNlIGZyYW1lcyB0byBjb25zaWRlciBmb3IgbW90aW9uIGNvbXBlbnNhdGlvbgBjaHJvbWFvZmZzZXQAY2hyb21hIFFQIG9mZnNldCBmcm9tIGx1bWEAdHJlbGxpcwByYXRlLWRpc3RvcnRpb24gb3B0aW1hbCBxdWFudGl6YXRpb24Ac2NfZmFjdG9yAG11bHRpcGxpZWQgYnkgcXNjYWxlIGZvciBlYWNoIGZyYW1lIGFuZCBhZGRlZCB0byBzY2VuZV9jaGFuZ2Vfc2NvcmUAbXYwX3RocmVzaG9sZABiX3NlbnNpdGl2aXR5AGFkanVzdCBzZW5zaXRpdml0eSBvZiBiX2ZyYW1lX3N0cmF0ZWd5IDEAY29tcHJlc3Npb25fbGV2ZWwAbWluX3ByZWRpY3Rpb25fb3JkZXIAbWF4X3ByZWRpY3Rpb25fb3JkZXIAdGltZWNvZGVfZnJhbWVfc3RhcnQAR09QIHRpbWVjb2RlIGZyYW1lIHN0YXJ0IG51bWJlciwgaW4gbm9uLWRyb3AtZnJhbWUgZm9ybWF0AGJpdHNfcGVyX3Jhd19zYW1wbGUAcmVxdWVzdF9jaGFubmVsX2xheW91dAByY19tYXhfdmJ2X3VzZQByY19taW5fdmJ2X3VzZQB0aWNrc19wZXJfZnJhbWUAY29sb3JfcHJpbWFyaWVzAGNvbG9yIHByaW1hcmllcwBjb2xvcl9wcmltYXJpZXNfdHlwZQBCVC43MDkAVW5zcGVjaWZpZWQAQlQuNDcwIE0AQlQuNDcwIEJHAFNNUFRFIDE3MCBNAFNNUFRFIDI0MCBNAEZpbG0AQlQuMjAyMABTTVBURSA0MjgtMQBzbXB0ZTQyOF8xAFNNUFRFIDQzMS0yAFNNUFRFIDQyMi0xAEpFREVDIFAyMgB1bnNwZWNpZmllZABjb2xvcl90cmMAY29sb3IgdHJhbnNmZXIgY2hhcmFjdGVyaXN0aWNzAGNvbG9yX3RyY190eXBlAGdhbW1hMjIAZ2FtbWEyOABMaW5lYXIATG9nAExvZyBzcXVhcmUgcm9vdABJRUMgNjE5NjYtMi00AEJULjEzNjEASUVDIDYxOTY2LTItMQBCVC4yMDIwIC0gMTAgYml0AEJULjIwMjAgLSAxMiBiaXQAU01QVEUgMjA4NABBUklCIFNURC1CNjcAbG9nX3NxcnQAaWVjNjE5NjZfMl80AGJ0MTM2MQBpZWM2MTk2Nl8yXzEAYnQyMDIwXzEwYml0AGJ0MjAyMF8xMmJpdABjb2xvcnNwYWNlAGNvbG9yIHNwYWNlAGNvbG9yc3BhY2VfdHlwZQByZ2IAUkdCAEZDQwBZQ0dDTwBCVC4yMDIwIE5DTABCVC4yMDIwIENMAFNNUFRFIDIwODUAeWNvY2cAYnQyMDIwX25jbABidDIwMjBfY2wAY29sb3JfcmFuZ2UAY29sb3IgcmFuZ2UAY29sb3JfcmFuZ2VfdHlwZQB0dgBNUEVHICgyMTkqMl4obi04KSkAcGMASlBFRyAoMl5uLTEpAG1wZWcAanBlZwBjaHJvbWFfc2FtcGxlX2xvY2F0aW9uAGNocm9tYSBzYW1wbGUgbG9jYXRpb24AY2hyb21hX3NhbXBsZV9sb2NhdGlvbl90eXBlAExlZnQAY2VudGVyAENlbnRlcgB0b3BsZWZ0AFRvcC1sZWZ0AHRvcABUb3AAYm90dG9tbGVmdABCb3R0b20tbGVmdABib3R0b20AQm90dG9tAGxvZ19sZXZlbF9vZmZzZXQAc2V0IHRoZSBsb2cgbGV2ZWwgb2Zmc2V0AHNsaWNlcwBzZXQgdGhlIG51bWJlciBvZiBzbGljZXMsIHVzZWQgaW4gcGFyYWxsZWxpemVkIGVuY29kaW5nAHRocmVhZF90eXBlAHNlbGVjdCBtdWx0aXRocmVhZGluZyB0eXBlAHNsaWNlAGZyYW1lAGF1ZGlvX3NlcnZpY2VfdHlwZQBhdWRpbyBzZXJ2aWNlIHR5cGUAbWEATWFpbiBBdWRpbyBTZXJ2aWNlAGVmAEVmZmVjdHMAdmkAVmlzdWFsbHkgSW1wYWlyZWQAaGkASGVhcmluZyBJbXBhaXJlZABkaQBEaWFsb2d1ZQBjbwBDb21tZW50YXJ5AGVtAEVtZXJnZW5jeQB2bwBWb2ljZSBPdmVyAGthAEthcmFva2UAcmVxdWVzdF9zYW1wbGVfZm10AHNhbXBsZSBmb3JtYXQgYXVkaW8gZGVjb2RlcnMgc2hvdWxkIHByZWZlcgBwa3RfdGltZWJhc2UAc3ViX2NoYXJlbmMAc2V0IGlucHV0IHRleHQgc3VidGl0bGVzIGNoYXJhY3RlciBlbmNvZGluZwBzdWJfY2hhcmVuY19tb2RlAHNldCBpbnB1dCB0ZXh0IHN1YnRpdGxlcyBjaGFyYWN0ZXIgZW5jb2RpbmcgbW9kZQBkb19ub3RoaW5nAHByZV9kZWNvZGVyAHN1Yl90ZXh0X2Zvcm1hdABzZXQgZGVjb2RlZCB0ZXh0IHN1YnRpdGxlIGZvcm1hdABhc3Nfd2l0aF90aW1pbmdzAHJlZmNvdW50ZWRfZnJhbWVzAHNpZGVfZGF0YV9vbmx5X3BhY2tldHMAYXBwbHlfY3JvcHBpbmcAc2tpcF9hbHBoYQBTa2lwIHByb2Nlc3NpbmcgYWxwaGEAZmllbGRfb3JkZXIARmllbGQgb3JkZXIAcHJvZ3Jlc3NpdmUAdHQAdGIAZHVtcF9zZXBhcmF0b3IAc2V0IGluZm9ybWF0aW9uIGR1bXAgZmllbGQgc2VwYXJhdG9yAGNvZGVjX3doaXRlbGlzdABMaXN0IG9mIGRlY29kZXJzIHRoYXQgYXJlIGFsbG93ZWQgdG8gYmUgdXNlZABwaXhlbF9mb3JtYXQAc2V0IHBpeGVsIGZvcm1hdAB2aWRlb19zaXplAHNldCB2aWRlbyBzaXplAG1heF9waXhlbHMATWF4aW11bSBudW1iZXIgb2YgcGl4ZWxzAGh3YWNjZWxfZmxhZ3MAaWdub3JlX2xldmVsAGlnbm9yZSBsZXZlbCBldmVuIGlmIHRoZSBjb2RlYyBsZXZlbCB1c2VkIGlzIHVua25vd24gb3IgaGlnaGVyIHRoYW4gdGhlIG1heGltdW0gc3VwcG9ydGVkIGxldmVsIHJlcG9ydGVkIGJ5IHRoZSBoYXJkd2FyZSBkcml2ZXIAYWxsb3dfaGlnaF9kZXB0aABhbGxvdyB0byBvdXRwdXQgWVVWIHBpeGVsIGZvcm1hdHMgd2l0aCBhIGRpZmZlcmVudCBjaHJvbWEgc2FtcGxpbmcgdGhhbiA0OjI6MCBhbmQvb3Igb3RoZXIgdGhhbiA4IGJpdHMgcGVyIGNvbXBvbmVudABhbGxvd19wcm9maWxlX21pc21hdGNoAGF0dGVtcHQgdG8gZGVjb2RlIGFueXdheSBpZiBIVyBhY2NlbGVyYXRlZCBkZWNvZGVyJ3Mgc3VwcG9ydGVkIHByb2ZpbGVzIGRvIG5vdCBleGFjdGx5IG1hdGNoIHRoZSBzdHJlYW0ATlVMTABsaWJhdmNvZGVjL3BhcnNlci5jAEZhaWxlZCB0byByZWFsbG9jYXRlIHBhcnNlciBidWZmZXIgdG8gJWQKAG5leHQgPj0gMCB8fCBwYy0+YnVmZmVyAEludmFsaWQgc2FtcGxlX3NpemUKAEludmFsaWQgbnVtYmVyIG9mIGNoYW5uZWxzCgBjb2RlYyBpZHMgbWlzbWF0Y2gKAEludmFsaWQgUENNIHBhY2tldCwgZGF0YSBoYXMgc2l6ZSAlZCBidXQgYXQgbGVhc3QgYSBzaXplIG9mICVkIHdhcyBleHBlY3RlZAoAUENNIGNoYW5uZWxzIG91dCBvZiBib3VuZHMKAGF2X3BhY2tldF9yZWYoKSBmYWlsZWQgaW4gc3VibWl0X3BhY2tldCgpCgBwLT5hdmN0eC0+Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfVklERU8gfHwgcC0+YXZjdHgtPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX0FVRElPAGxpYmF2Y29kZWMvcHRocmVhZF9mcmFtZS5jAGZjdHgtPmFzeW5jX2xvY2sAJXAgZmluaXNoZWQgJWQgZmllbGQgJWQKAHRocmVhZCBhd2FpdGluZyAlZCBmaWVsZCAlZCBmcm9tICVwCgBNdWx0aXBsZSBmZl90aHJlYWRfZmluaXNoX3NldHVwKCkgY2FsbHMKAEZpbmFsIHRocmVhZCB1cGRhdGUgZmFpbGVkCgAhcC0+aHdhY2NlbF9zZXJpYWxpemluZwBBIGZyYW1lIHRocmVhZGVkIGRlY29kZXIgZGlkIG5vdCBmcmVlIHRoZSBmcmFtZSBvbiBmYWlsdXJlLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0LgoAZ2V0X2Zvcm1hdCgpIGNhbm5vdCBiZSBjYWxsZWQgYWZ0ZXIgZmZfdGhyZWFkX2ZpbmlzaF9zZXR1cCgpCgB0aHJlYWRfZ2V0X2J1ZmZlcigpIGZhaWxlZAoAZ2V0X2J1ZmZlcigpIGNhbm5vdCBiZSBjYWxsZWQgYWZ0ZXIgZmZfdGhyZWFkX2ZpbmlzaF9zZXR1cCgpCgB0aHJlYWRfcmVsZWFzZV9idWZmZXIgY2FsbGVkIG9uIHBpYyAlcAoALi9saWJhdnV0aWwvbWVtX2ludGVybmFsLmgAaWdub3JpbmcgaW52YWxpZCBTQVI6ICVkLyVkCgBkZXNjLT5mbGFncyAmICgxIDw8IDQpAGxpYmF2Y29kZWMvdXRpbHMuYwBJbnN1ZmZpY2llbnQgdGhyZWFkIGxvY2tpbmcuIEF0IGxlYXN0ICVkIHRocmVhZHMgYXJlIGNhbGxpbmcgYXZjb2RlY19vcGVuMigpIGF0IHRoZSBzYW1lIHRpbWUgcmlnaHQgbm93LgoATm8gbG9jayBtYW5hZ2VyIGlzIHNldCwgcGxlYXNlIHNlZSBhdl9sb2NrbWdyX3JlZ2lzdGVyKCkKACFmZl9hdmNvZGVjX2xvY2tlZABObyBjb2RlYyBwcm92aWRlZCB0byBhdmNvZGVjX29wZW4yKCkKAFRoaXMgQVZDb2RlY0NvbnRleHQgd2FzIGFsbG9jYXRlZCBmb3IgJXMsIGJ1dCAlcyBwYXNzZWQgdG8gYXZjb2RlY19vcGVuMigpCgBDb2RlYyAoJXMpIG5vdCBvbiB3aGl0ZWxpc3QgJyVzJwoASWdub3JpbmcgaW52YWxpZCB3aWR0aC9oZWlnaHQgdmFsdWVzCgBpZ25vcmluZyBpbnZhbGlkIFNBUjogJXUvJXUKAENvZGVjIHR5cGUgb3IgaWQgbWlzbWF0Y2hlcwoAZGVjb2RlcgBlbmNvZGVyAFRoZSAlcyAnJXMnIGlzIGV4cGVyaW1lbnRhbCBidXQgZXhwZXJpbWVudGFsIGNvZGVjcyBhcmUgbm90IGVuYWJsZWQsIGFkZCAnLXN0cmljdCAlZCcgaWYgeW91IHdhbnQgdG8gdXNlIGl0LgoAQWx0ZXJuYXRpdmVseSB1c2UgdGhlIG5vbiBleHBlcmltZW50YWwgJXMgJyVzJy4KAFRoZSBtYXhpbXVtIHZhbHVlIGZvciBsb3dyZXMgc3VwcG9ydGVkIGJ5IHRoZSBkZWNvZGVyIGlzICVkCgBUaGUgJ3Zpc212JyBvcHRpb24gaXMgZGVwcmVjYXRlZCwgc2VlIHRoZSBjb2RlY3ZpZXcgZmlsdGVyIGluc3RlYWQuCgBUaGUgZW5jb2RlciB0aW1lYmFzZSBpcyBub3Qgc2V0LgoAJWQAU3BlY2lmaWVkIHNhbXBsZSBmb3JtYXQgJXMgaXMgaW52YWxpZCBvciBub3Qgc3VwcG9ydGVkCgBTcGVjaWZpZWQgcGl4ZWwgZm9ybWF0ICVzIGlzIGludmFsaWQgb3Igbm90IHN1cHBvcnRlZAoAU3BlY2lmaWVkIHNhbXBsZSByYXRlICVkIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0IG5vdCBzcGVjaWZpZWQKAFNwZWNpZmllZCBjaGFubmVsIGxheW91dCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBudW1iZXIgb2Ygc3BlY2lmaWVkIGNoYW5uZWxzICVkCgBTcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkIGlzIG5vdCBzdXBwb3J0ZWQKAFNwZWNpZmllZCBiaXQgZGVwdGggJWQgbm90IHBvc3NpYmxlIHdpdGggdGhlIHNwZWNpZmllZCBwaXhlbCBmb3JtYXRzIGRlcHRoICVkCgBkaW1lbnNpb25zIG5vdCBzZXQKAEJpdHJhdGUgJWxsZCBpcyBleHRyZW1lbHkgbG93LCBtYXliZSB5b3UgbWVhbiAlbGxkawoAdGlja3NfcGVyX2ZyYW1lICVkIHRvbyBsYXJnZSBmb3IgdGhlIHRpbWViYXNlICVkLyVkLgBNaXNtYXRjaGluZyBBVkNvZGVjQ29udGV4dC5waXhfZm10IGFuZCBBVkhXRnJhbWVzQ29udGV4dC5mb3JtYXQKAE1pc21hdGNoaW5nIEFWQ29kZWNDb250ZXh0LnN3X3BpeF9mbXQgKCVzKSBhbmQgQVZIV0ZyYW1lc0NvbnRleHQuc3dfZm9ybWF0ICglcykKAGdyYXkgZGVjb2RpbmcgcmVxdWVzdGVkIGJ1dCBub3QgZW5hYmxlZCBhdCBjb25maWd1cmF0aW9uIHRpbWUKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkOiBpZ25vcmluZyBzcGVjaWZpZWQgY2hhbm5lbCBsYXlvdXQKAENoYXJhY3RlciBlbmNvZGluZyBpcyBvbmx5IHN1cHBvcnRlZCB3aXRoIHN1YnRpdGxlcyBjb2RlY3MKAENvZGVjICclcycgaXMgYml0bWFwLWJhc2VkLCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nIHdpbGwgYmUgaWdub3JlZAoAQ2hhcmFjdGVyIGVuY29kaW5nIHN1YnRpdGxlcyBjb252ZXJzaW9uIG5lZWRzIGEgbGliYXZjb2RlYyBidWlsdCB3aXRoIGljb252IHN1cHBvcnQgZm9yIHRoaXMgY29kZWMKACooY29uc3QgQVZDbGFzcyAqKilhdmN0eC0+cHJpdl9kYXRhID09IGNvZGVjLT5wcml2X2NsYXNzAGZmX2F2Y29kZWNfbG9ja2VkACFkc3QtPnByb2dyZXNzAHAgPD0gZW5kAEVycm9yIGRlY29kaW5nIEFBQyBmcmFtZSBoZWFkZXIuCgBpbnZhbGlkIHNhbXBsaW5nIHJhdGUgaW5kZXggJWQKAEVsZW0gdHlwZToleCBpZDoleAoAY2hhbm5lbCBlbGVtZW50ICVkLiVkIGlzIG5vdCBhbGxvY2F0ZWQKAE5vdCBldmFsdWF0aW5nIGEgZnVydGhlciBwcm9ncmFtX2NvbmZpZ19lbGVtZW50IGFzIHRoaXMgY29uc3RydWN0IGlzIGR1YmlvdXMgYXQgYmVzdC4KAFRZUEVfRklMOiBJbnB1dCBidWZmZXIgZXhoYXVzdGVkIGJlZm9yZSBFTkQgZWxlbWVudCBmb3VuZAoASW5wdXQgYnVmZmVyIGV4aGF1c3RlZCBiZWZvcmUgRU5EIGVsZW1lbnQgZm91bmQKAG5vIGZyYW1lIGRhdGEgZm91bmQKAENoYW5uZWxFbGVtZW50ICVkLiVkIG1pc3NpbmcgCgBEZXBlbmRlbnQgY291cGxpbmcgaXMgbm90IHN1cHBvcnRlZCB0b2dldGhlciB3aXRoIExUUAoAZXh0ZW5zaW9uIHR5cGU6ICVkIGxlbjolZAoAU0JSIHdhcyBmb3VuZCBiZWZvcmUgdGhlIGZpcnN0IGNoYW5uZWwgZWxlbWVudC4KAFNCUiB3aXRoIDk2MCBmcmFtZSBsZW5ndGgAU0JSIHNpZ25hbGVkIHRvIGJlIG5vdC1wcmVzZW50IGJ1dCB3YXMgZm91bmQgaW4gdGhlIGJpdHN0cmVhbS4KAEltcGxpY2l0IFNCUiB3YXMgZm91bmQgd2l0aCBhIGZpcnN0IG9jY3VycmVuY2UgYWZ0ZXIgdGhlIGZpcnN0IGZyYW1lLgoARklMTDolcwoAbGliZmFhYyAlZC4lZABUb28gbGFyZ2UgcmVtYXBwZWQgaWQAVG9vIG1hbnkgY2hhbm5lbHMKAFNhbXBsZSByYXRlIGluZGV4IGluIHByb2dyYW0gY29uZmlnIGVsZW1lbnQgZG9lcyBub3QgbWF0Y2ggdGhlIHNhbXBsZSByYXRlIGluZGV4IGNvbmZpZ3VyZWQgYnkgdGhlIGNvbnRhaW5lci4KAGRlY29kZV9wY2U6IElucHV0IGJ1ZmZlciBleGhhdXN0ZWQgYmVmb3JlIEVORCBlbGVtZW50IGZvdW5kCgBsaWJhdmNvZGVjL2FhY2RlY190ZW1wbGF0ZS5jAHNraXBfZGF0YV9zdHJlYW1fZWxlbWVudDogSW5wdXQgYnVmZmVyIGV4aGF1c3RlZCBiZWZvcmUgRU5EIGVsZW1lbnQgZm91bmQKAG1zX3ByZXNlbnQgPSAzIGlzIHJlc2VydmVkLgoAUmVzZXJ2ZWQgYml0IHNldC4KAEFBQyBMRCBpcyBvbmx5IGRlZmluZWQgZm9yIE9OTFlfTE9OR19TRVFVRU5DRSBidXQgd2luZG93IHNlcXVlbmNlICVkIGZvdW5kLgoAUHJlZGljdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBBQUMtTEMuCgBMVFAgaW4gRVIgQUFDIExEIG5vdCB5ZXQgaW1wbGVtZW50ZWQuCgBOdW1iZXIgb2Ygc2NhbGVmYWN0b3IgYmFuZHMgaW4gZ3JvdXAgKCVkKSBleGNlZWRzIGxpbWl0ICglZCkuCgBJbnZhbGlkIFByZWRpY3RvciBSZXNldCBHcm91cC4KAFB1bHNlIHRvb2wgbm90IGFsbG93ZWQgaW4gZWlnaHQgc2hvcnQgc2VxdWVuY2UuCgBQdWxzZSBkYXRhIGNvcnJ1cHQgb3IgaW52YWxpZC4KAFNTUgBlcnJvciBpbiBzcGVjdHJhbCBkYXRhLCBFU0Mgb3ZlcmZsb3cKAFROUyBmaWx0ZXIgb3JkZXIgJWQgaXMgZ3JlYXRlciB0aGFuIG1heGltdW0gJWQuCgBJZiB5b3UgaGVhcmQgYW4gYXVkaWJsZSBhcnRpZmFjdCwgdGhlcmUgbWF5IGJlIGEgYnVnIGluIHRoZSBkZWNvZGVyLiBDbGlwcGVkIGludGVuc2l0eSBzdGVyZW8gcG9zaXRpb24gKCVkIC0+ICVkKQBJZiB5b3UgaGVhcmQgYW4gYXVkaWJsZSBhcnRpZmFjdCwgdGhlcmUgbWF5IGJlIGEgYnVnIGluIHRoZSBkZWNvZGVyLiBDbGlwcGVkIG5vaXNlIGdhaW4gKCVkIC0+ICVkKQBTY2FsZWZhY3RvciAoJWQpIG91dCBvZiByYW5nZS4KAGludmFsaWQgYmFuZCB0eXBlCgBkZWNvZGVfYmFuZF90eXBlczogSW5wdXQgYnVmZmVyIGV4aGF1c3RlZCBiZWZvcmUgRU5EIGVsZW1lbnQgZm91bmQKAE51bWJlciBvZiBiYW5kcyAoJWQpIGV4Y2VlZHMgbGltaXQgKCVkKS4KAG1vbm8gd2l0aCBDUEUKAHN0ZXJlbyB3aXRoIFNDRQoAU0NFAFRoaXMgc3RyZWFtIHNlZW1zIHRvIGluY29ycmVjdGx5IHJlcG9ydCBpdHMgbGFzdCBjaGFubmVsIGFzICVzWyVkXSwgbWFwcGluZyB0byBMRkVbMF0KAFRoaXMgc3RyZWFtIHNlZW1zIHRvIGluY29ycmVjdGx5IHJlcG9ydCBpdHMgbGFzdCBjaGFubmVsIGFzICVzWyVkXSwgbWFwcGluZyB0byBTQ0VbMV0KAGludmFsaWQgZGVmYXVsdCBjaGFubmVsIGNvbmZpZ3VyYXRpb24gKCVkKQoAQXNzdW1pbmcgYW4gaW5jb3JyZWN0bHkgZW5jb2RlZCA3LjEgY2hhbm5lbCBsYXlvdXQgaW5zdGVhZCBvZiBhIHNwZWMtY29tcGxpYW50IDcuMSh3aWRlKSBsYXlvdXQsIHVzZSAtc3RyaWN0ICVkIHRvIGRlY29kZSBhY2NvcmRpbmcgdG8gdGhlIHNwZWNpZmljYXRpb24gaW5zdGVhZC4KAE1vcmUgdGhhbiBvbmUgQUFDIFJEQiBwZXIgQURUUyBmcmFtZQBVbmtub3duIEVSIGNoYW5uZWwgY29uZmlndXJhdGlvbiAlZABBdWRpbyBzcGVjaWZpYyBjb25maWcgc2l6ZSBpcyBpbnZhbGlkCgBpbnZhbGlkIGxvdyBkZWxheSBzYW1wbGluZyByYXRlIGluZGV4ICVkCgBTQlIrAEF1ZGlvIG9iamVjdCB0eXBlICVzJWQAQUFDIGRhdGEgcmVzaWxpZW5jZSAoZmxhZ3MgJXgpAExvdyBEZWxheSBTQlIAZXBDb25maWcgJWQAQUFDIGRlY29kZXIAZHVhbF9tb25vX21vZGUAU2VsZWN0IHRoZSBjaGFubmVsIHRvIGRlY29kZSBmb3IgZHVhbCBtb25vAGF1dG9zZWxlY3Rpb24AbWFpbgBTZWxlY3QgTWFpbi9MZWZ0IGNoYW5uZWwAc3ViAFNlbGVjdCBTdWIvUmlnaHQgY2hhbm5lbABib3RoAFNlbGVjdCBib3RoIGNoYW5uZWxzAEV4cGVjdGVkIHRvIHJlYWQgJWQgU0JSIGJ5dGVzIGFjdHVhbGx5IHJlYWQgJWQuCgBJbnZhbGlkIGJpdHN0cmVhbSAtIGNhbm5vdCBhcHBseSBTQlIgdG8gZWxlbWVudCB0eXBlICVkCgBTQlIgRXh0ZW5zaW9uIG92ZXIgcmVhZC4KAFBhcmFtZXRyaWMgU3RlcmVvIHNpZ25hbGVkIHRvIGJlIG5vdC1wcmVzZW50IGJ1dCB3YXMgZm91bmQgaW4gdGhlIGJpdHN0cmVhbS4KAFJlc2VydmVkIFNCUiBleHRlbnNpb25zAG5vaXNlX2ZhY3NfcSAlZCBpcyBpbnZhbGlkCgBlbnZfZmFjc19xICVkIGlzIGludmFsaWQKAEludmFsaWQgYml0c3RyZWFtLCB0b28gbWFueSBTQlIgZW52ZWxvcGVzIGluIEZJWEZJWCB0eXBlIFNCUiBmcmFtZTogJWQKAAABAgIDA0ludmFsaWQgYml0c3RyZWFtLCB0b28gbWFueSBTQlIgZW52ZWxvcGVzIGluIFZBUlZBUiB0eXBlIFNCUiBmcmFtZTogJWQKAGJzX3BvaW50ZXIgPj0gMABsaWJhdmNvZGVjL2FhY3Nicl90ZW1wbGF0ZS5jAEludmFsaWQgYml0c3RyZWFtLCBic19wb2ludGVyIHBvaW50cyB0byBhIG1pZGRsZSBub2lzZSBib3JkZXIgb3V0c2lkZSB0aGUgdGltZSBib3JkZXJzIHRhYmxlOiAlZAoATm90IHN0cmljdGx5IG1vbm90b25lIHRpbWUgYm9yZGVycwoAU0JSIHJlc2V0IGZhaWxlZC4gU3dpdGNoaW5nIFNCUiB0byBwdXJlIHVwc2FtcGxpbmcgbW9kZS4KAFN0b3AgZnJlcXVlbmN5IGJvcmRlciB0b28gaGlnaDogJWQKAFN0YXJ0IGZyZXF1ZW5jeSBib3JkZXIgdG9vIGhpZ2g6ICVkCgBUb28gbWFueSBub2lzZSBmbG9vciBzY2FsZSBmYWN0b3JzOiAlZAoAcGF0Y2ggY29uc3RydWN0aW9uIGZhaWxlZAoAVG9vIG1hbnkgcGF0Y2hlczogJWQKAFVuc3VwcG9ydGVkIHNhbXBsZSByYXRlIGZvciBTQlI6ICVkCgBJbnZhbGlkIGJzX3N0b3BfZnJlcTogJWQKAEludmFsaWQgYml0c3RyZWFtLCB0b28gbWFueSBRTUYgc3ViYmFuZHM6ICVkCgBJbnZhbGlkIG51bV9iYW5kc18wOiAlZAoASW52YWxpZCB2RGswWyVkXTogJWQKAEludmFsaWQgdkRrMVslZF06ICVkCgBJbnZhbGlkIG5fbWFzdGVyOiAlZAoASW52YWxpZCBiaXRzdHJlYW0sIGNyb3Nzb3ZlciBiYW5kIGluZGV4IGJleW9uZCBhcnJheSBib3VuZHM6ICVkCgBlbGVtZW50IHR5cGUgbWlzbWF0Y2ggJWQgIT0gJWQKAE5vIHF1YW50aXplZCBkYXRhIHJlYWQgZm9yIHNicl9kZXF1YW50LgoAc2JyLT5kYXRhW2NoXS5ic19udW1fZW52ID4gMABreCAhPSBmX3RhYmxle2hpZ2gsbG93fVswXS4gRGVyaXZlZCBmcmVxdWVuY3kgdGFibGVzIHdlcmUgbm90IHJlZ2VuZXJhdGVkLgoARVJST1IgOiBubyBzdWJiYW5kIGZvdW5kIGZvciBmcmVxdWVuY3kgJWQKAGVudmVsb3BlIHNjYWxlZmFjdG9yIG92ZXJmbG93IGluIGRlcXVhbnQKAHRlbXAxIDw9IDFFMjAAbGliYXZjb2RlYy9hYWNzYnIuYwApKS8xMTMvLysrKygoKCguMTExLi4qKiooKAAAACQkJR8fAAAAAAAAAAAjIyUeHgAAAAAADAwMDg4ODw8PDw8PDyEhJigoKCkpJSUlIiIfHyIoKjMuLioqKicnAAAAHyAlHx8AAAAAAAAAAB8gJR4eAAAAAAAJCQoODg4ODg4ODg4ObGliYXZjb2RlYy9iaXRzdHJlYW0uYwBuYl9jb2RlcyArIDEgPD0gKHNpemVvZihsb2NhbGJ1ZikgLyBzaXplb2YoKGxvY2FsYnVmKVswXSkpAHN5bWJvbHNfc2l6ZSA8PSAyIHx8ICFzeW1ib2xzAFRvbyBsb25nIFZMQyAoJWQpIGluIGluaXRfdmxjCgBJbnZhbGlkIGNvZGUgJXggZm9yICVkIGluIGluaXRfdmxjCgBuZWVkZWQgJWQgaGFkICVkCgByZXQgPj0gMABpbmNvcnJlY3QgY29kZXMKAEEgbm9uLU5VTEwgcGFja2V0IHNlbnQgYWZ0ZXIgYW4gRU9GLgoAQ29kZWMgJyVzJyAoJWQpIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIGJpdHN0cmVhbSBmaWx0ZXIgJyVzJy4gU3VwcG9ydGVkIGNvZGVjcyBhcmU6IAAlcyAoJWQpIABBVkJTRkNvbnRleHQAbXBlZzF2aWRlbwBtcGVnMnZpZGVvAG1wZWd2aWRlb194dm1jAGgyNjEAaDI2MwBydjEwAHJ2MjAAbWpwZWcAbWpwZWdiAG1wZWc0AHJhd3ZpZGVvAG1zbXBlZzR2MQBtc21wZWc0djIAbXNtcGVnNHYzAHdtdjEAd212MgBoMjYzcABoMjYzaQBmbHYxAHN2ZwBzdnExAHN2cTMAZHZ2aWRlbwBodWZmeXV2AGN5dXYAaDI2NABpbmRlbzMAdnAzAHRoZW9yYQBhc3YxAGFzdjIAZmZ2MQA0eG0AdmNyMQBjbGpyAG1kZWMAcm9xAGludGVycGxheXZpZGVvAHhhbl93YzMAeGFuX3djNABycHphAGNpbmVwYWsAd3NfdnFhAG1zcmxlAG1zdmlkZW8xAGlkY2luADhicHMAc21jAGZsaWMAdHJ1ZW1vdGlvbjEAdm1kdmlkZW8AbXN6aAB6bGliAHF0cmxlAHNub3cAdHNjYwB1bHRpAHFkcmF3AHZpeGwAcXBlZwBmZnZodWZmAHJ2MzAAcnY0MAB2YzEAd212MwBsb2NvAHdudjEAYWFzYwBpbmRlbzIAZnJhcHMAdHJ1ZW1vdGlvbjIAYm1wAGNzY2QAbW12aWRlbwB6bWJ2AGF2cwBzbWFja3ZpZGVvAG51dgBrbXZjAGZsYXNoc3YAY2F2cwBqcGVnMjAwMAB2bW5jAHZwNQB2cDYAdnA2ZgBkc2ljaW52aWRlbwB0aWVydGV4c2VxdmlkZW8AZHhhAGRueGhkAHRocABjOTMAYmV0aHNvZnR2aWQAdnA2YQBhbXYAdmIAaW5kZW80AGluZGVvNQBtaW1pYwBybDIAZXNjYXBlMTI0AGRhYWxhAGRpcmFjAGJmaQBjbXYAbW90aW9ucGl4ZWxzAHRndgB0Z3EAdHFpAGF1cmEAYXVyYTIAdjIxMHgAdG12AHYyMTAAbWFkAGZyd3UAZmxhc2hzdjIAY2RncmFwaGljcwByMjEwAGFubQBiaW5rdmlkZW8AaWZmX2lsYm0Aa2d2MQB5b3AAdnA4AHZwOQBwaWN0b3IAYTY0X211bHRpAGE2NF9tdWx0aTUAcjEwawBtMTAxAG12YzEAbXZjMgBteHBlZwBsYWdhcml0aABwcm9yZXMAanYAZGZhAHV0dmlkZW8AYm12X3ZpZGVvAHZibGUAZHh0b3J5AHY0MTAAY2R4bAB6ZXJvY29kZWMAbXNzMQBtc2ExAHRzY2MyAG10czIAY2xsYwBtc3MyAGFpYwB5NDFwAGVzY2FwZTEzMABhdnJwADAxMnYAYXZ1aQBheXV2AHRhcmdhX3kyMTYAdjMwOAB2NDA4AHl1djQAYXZybgBjcGlhAHhmYWNlAHNtdmpwZWcAZzJtAGhubTR2aWRlbwBoZXZjAGZpYwBwYWZfdmlkZW8AdnA3AHNhbm0Ac2dpcmxlAGhxeABocV9ocWEAaGFwAGR4dgBzY3JlZW5wcmVzc28Ac3BlZWRocQB3cmFwcGVkX2F2ZnJhbWUAcnNjYwBtYWdpY3l1dgB0cnVlbW90aW9uMnJ0AGNmaGQAc2hlZXJ2aWRlbwB5bGMAcGl4bGV0AGZtdmMAc2NwcgBjbGVhcnZpZGVvAGF2MQBiaXRwYWNrZWQAbXNjYwBzcmdjAGdkdgBhbGlhc19waXgAYW5zaQBicmVuZGVyX3BpeABkZHMAZHB4AGV4cgBmaXRzAGdpZgBqcGVnbHMAbGpwZWcAcGFtAHBibQBwY3gAcGdtAHBnbXl1dgBwbmcAcHBtAHBzZABwdHgAc2dpAHNwNXgAc3VucmFzdAB0YXJnYQB0ZHNjAHRpZmYAdHhkAHZjMWltYWdlAHdlYnAAd212M2ltYWdlAHhibQB4cG0AeHdkAGFwbmcAcGNtX3MxNmxlAHBjbV9zMTZiZQBwY21fdTE2bGUAcGNtX3UxNmJlAHBjbV9zOABwY21fdTgAcGNtX211bGF3AHBjbV9hbGF3AHBjbV9zMzJsZQBwY21fczMyYmUAcGNtX3M2NGxlAHBjbV9zNjRiZQBwY21fdTMybGUAcGNtX3UzMmJlAHBjbV9zMjRsZQBwY21fczI0YmUAcGNtX3UyNGxlAHBjbV91MjRiZQBwY21fczI0ZGF1ZABwY21fem9yawBwY21fczE2YmVfcGxhbmFyAHBjbV9zMTZsZV9wbGFuYXIAcGNtX3MyNGxlX3BsYW5hcgBwY21fczMybGVfcGxhbmFyAHBjbV9kdmQAcGNtX2YxNmxlAHBjbV9mMjRsZQBwY21fZjMyYmUAcGNtX2YzMmxlAHBjbV9mNjRiZQBwY21fZjY0bGUAcGNtX2JsdXJheQBwY21fbHhmAHMzMDJtAHBjbV9zOF9wbGFuYXIAYWRwY21faW1hX3F0AGFkcGNtX2ltYV93YXYAYWRwY21faW1hX2RrMwBhZHBjbV9pbWFfZGs0AGFkcGNtX2ltYV93cwBhZHBjbV9pbWFfc21qcGVnAGFkcGNtX21zAGFkcGNtXzR4bQBhZHBjbV94YQBhZHBjbV9hZHgAYWRwY21fZWEAYWRwY21fZzcyNgBhZHBjbV9jdABhZHBjbV9zd2YAYWRwY21feWFtYWhhAGFkcGNtX3NicHJvXzQAYWRwY21fc2Jwcm9fMwBhZHBjbV9zYnByb18yAGFkcGNtX3RocABhZHBjbV90aHBfbGUAYWRwY21faW1hX2FtdgBhZHBjbV9lYV9yMQBhZHBjbV9lYV9yMwBhZHBjbV9lYV9yMgBhZHBjbV9pbWFfZWFfc2VhZABhZHBjbV9pbWFfZWFfZWFjcwBhZHBjbV9lYV94YXMAYWRwY21fZWFfbWF4aXNfeGEAYWRwY21faW1hX2lzcwBhZHBjbV9nNzIyAGFkcGNtX2ltYV9hcGMAYWRwY21fYWZjAGFkcGNtX2ltYV9va2kAYWRwY21fZHRrAGFkcGNtX2ltYV9yYWQAYWRwY21fZzcyNmxlAGFkcGNtX3ZpbWEAYWRwY21fcHN4AGFkcGNtX2FpY2EAYWRwY21faW1hX2RhdDQAYW1yX25iAGFtcl93YgByYV8xNDQAcmFfMjg4AHJvcV9kcGNtAGludGVycGxheV9kcGNtAHhhbl9kcGNtAHNvbF9kcGNtAHNkeDJfZHBjbQBncmVtbGluX2RwY20AbXAyAG1wMwBhYWMAYWMzAGR0cwB2b3JiaXMAZHZhdWRpbwB3bWF2MQB3bWF2MgBtYWNlMwBtYWNlNgB2bWRhdWRpbwBmbGFjAG1wM2FkdQBtcDNvbjQAc2hvcnRlbgBhbGFjAHdlc3R3b29kX3NuZDEAZ3NtAHFkbTIAY29vawB0cnVlc3BlZWNoAHR0YQBzbWFja2F1ZGlvAHFjZWxwAHdhdnBhY2sAZHNpY2luYXVkaW8AaW1jAG11c2VwYWNrNwBtbHAAZ3NtX21zAGF0cmFjMwB2b3h3YXJlAGFwZQBuZWxseW1vc2VyAG11c2VwYWNrOABzcGVleAB3bWF2b2ljZQB3bWFwcm8Ad21hbG9zc2xlc3MAYXRyYWMzcABhdHJhYzNwYWwAYXRyYWMzYWwAZWFjMwBzaXByAG1wMQB0d2ludnEAdHJ1ZWhkAG1wNGFscwBhdHJhYzEAYmlua2F1ZGlvX3JkZnQAYmlua2F1ZGlvX2RjdABhYWNfbGF0bQBxZG1jAGNlbHQAZzcyM18xAGRzc19zcABkb2xieV9lAGc3MjkAOHN2eF9leHAAOHN2eF9maWIAYm12X2F1ZGlvAHJhbGYAaWFjAGlsYmMAd2F2ZXN5bnRoAHNvbmljAHNvbmljbHMAb3B1cwBjb21mb3J0bm9pc2UAdGFrAG1ldGFzb3VuZABwYWZfYXVkaW8AYXZjAGV2cmMAc212ADRndgBkc2RfbHNiZgBkc2RfbXNiZgBkc2RfbHNiZl9wbGFuYXIAZHNkX21zYmZfcGxhbmFyAGludGVycGxheWFjbQB4bWExAHhtYTIAZHN0AGFkcGNtX210YWYAZHZkX3N1YnRpdGxlAGR2Yl9zdWJ0aXRsZQB0ZXh0AHhzdWIAYXNzAHNzYQBtb3ZfdGV4dABoZG12X3Bnc19zdWJ0aXRsZQBkdmJfdGVsZXRleHQAc3J0AHN1YnJpcABtaWNyb2R2ZABtcGwyAGVpYV82MDgAamFjb3N1YgBwanMAc2FtaQByZWFsdGV4dABzdGwAc3Vidmlld2VyMQBzdWJ2aWV3ZXIAdnBsYXllcgB3ZWJ2dHQAaGRtdl90ZXh0X3N1YnRpdGxlAHR0ZgBiaW50ZXh0AHhiaW4AaWRmAG90ZgBrbHYAZHZkX25hdl9wYWNrZXQAdGltZWRfaWQzAGJpbl9kYXRhAHNjdGVfMzUAYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtAGFwcGxpY2F0aW9uL3ZuZC5tcy1vcGVudHlwZQBhcHBsaWNhdGlvbi94LXRydWV0eXBlLWZvbnQAYXBwbGljYXRpb24veC1mb250AGltYWdlL3BuZwBpbWFnZS94LXh3aW5kb3dkdW1wAGltYWdlL3gteHBpeG1hcABpbWFnZS94LXhiaXRtYXAAaW1hZ2Uvd2VicABpbWFnZS90aWZmAGltYWdlL3gtdGFyZ2EAaW1hZ2UveC10Z2EAaW1hZ2UveC1wY3gAaW1hZ2UveC1wb3J0YWJsZS1waXhtYXAAaW1hZ2UvZ2lmAGltYWdlL2pwMgBpbWFnZS94LW1zLWJtcABpbWFnZS9zdmcreG1sAGltYWdlL2pwZWcAaW50ZXJuYWwgZXJyb3IsIHNsaWNlIGVuZCBiZWZvcmUgc3RhcnQKAGlnbm9yaW5nIGxhc3QgbWlzc2luZyBzbGljZQoAQ2Fubm90IHVzZSBwcmV2aW91cyBwaWN0dXJlIGluIGVycm9yIGNvbmNlYWxtZW50CgBDYW5ub3QgdXNlIG5leHQgcGljdHVyZSBpbiBlcnJvciBjb25jZWFsbWVudAoAV2FybmluZyBNVnMgbm90IGF2YWlsYWJsZQoAJTJYIABjb25jZWFsaW5nICVkIERDLCAlZCBBQywgJWQgTVYgZXJyb3JzIGluICVjIGZyYW1lCgBzLT5hdmN0eC0+Y29kZWNfaWQgIT0gQVZfQ09ERUNfSURfSDI2NABsaWJhdmNvZGVjL2Vycm9yX3Jlc2lsaWVuY2UuYwBzLT5xdWFydGVyX3NhbXBsZQBndWVzc19kYygpIGlzIG91dCBvZiBtZW1vcnkKAG5leHRfYmxvY2tsaXN0X2xlbmd0aCA8PSBtYl9oZWlnaHQgKiBtYl93aWR0aABuYWwtPnNraXBwZWRfYnl0ZXNfcG9zX3NpemUgPj0gbmFsLT5za2lwcGVkX2J5dGVzAGxpYmF2Y29kZWMvaDI2NDVfcGFyc2UuYwBFeGNlZWRlZCBuZXh0IE5BTEZGIHBvc2l0aW9uLCByZS1zeW5jaW5nLgoATm8gc3RhcnQgY29kZSBpcyBmb3VuZC4KAE5BTEZGOiBDb25zdW1lZCBvbmx5ICVkIGJ5dGVzIGluc3RlYWQgb2YgJWQKAEludmFsaWQgTkFMIHVuaXQgJWQsIHNraXBwaW5nLgoAbmFsX3VuaXRfdHlwZTogJWQsIG5hbF9yZWZfaWRjOiAlZAoAbmFsX3VuaXRfdHlwZTogJWQoJXMpLCBudWhfbGF5ZXJfaWQ6ICVkLCB0ZW1wb3JhbF9pZDogJWQKAFNFSV9TVUZGSVgAU0VJX1BSRUZJWABGRF9OVVQARU9CX05VVABFT1NfTlVUAEFVRABQUFMAU1BTAFZQUwBDUkFfTlVUAElEUl9OX0xQAElEUl9XX1JBREwAQkxBX05fTFAAQkxBX1dfUkFETABCTEFfV19MUABSQVNMX1IAUkFTTF9OAFJBRExfUgBSQURMX04AU1RTQV9SAFNUU0FfTgBUU0FfUgBUU0FfTgBUUkFJTF9SAFRSQUlMX04ASW52YWxpZCBOQUwgdW5pdCBzaXplICglZCA+ICVkKS4KAAECAwMBAgIAAQEAAAEBAQABAQAAAQAAAG1iX3NraXBfcnVuICVkIGlzIGludmFsaWQKAG1iX3R5cGUgJWQgaW4gJWMgc2xpY2UgdG9vIGxhcmdlIGF0ICVkICVkCgBOb3QgZW5vdWdoIGRhdGEgZm9yIGFuIGludHJhIFBDTSBibG9jay4KAEIgc3ViX21iX3R5cGUgJXUgb3V0IG9mIHJhbmdlIGF0ICVkICVkCgBQIHN1Yl9tYl90eXBlICV1IG91dCBvZiByYW5nZSBhdCAlZCAlZAoAcmVmICV1IG92ZXJmbG93CgBjYnAgdG9vIGxhcmdlICgldSkgYXQgJWQgJWQKAGRxdWFudCBvdXQgb2YgcmFuZ2UgKCVkKSBhdCAlZCAlZAoAY29ycnVwdGVkIG1hY3JvYmxvY2sgJWQgJWQgKHRvdGFsX2NvZWZmPSVkKQoASW52YWxpZCBsZXZlbCBwcmVmaXgKAG5lZ2F0aXZlIG51bWJlciBvZiB6ZXJvIGNvZWZmcyBhdCAlZCAlZAoAcG9jZGlmZiBvdmVyZmxvdwoAcG9jZGlmZjAgb3ZlcmZsb3cKAGN1ci0+bWJhZmYgPT0gKGgpLT5tYl9hZmZfZnJhbWUAbGliYXZjb2RlYy9oMjY0X2RpcmVjdC5jAGNvIGxvY2F0ZWQgUE9DcyB1bmF2YWlsYWJsZQoAbHVtYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAGNocm9tYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAE91dCBvZiByYW5nZSB3ZWlnaHQKAP8ACf//////AAAAAHRvcCBibG9jayB1bmF2YWlsYWJsZSBmb3IgcmVxdWVzdGVkIGludHJhIG1vZGUgJWQKAAD/CgD///8A/wsAAGxlZnQgYmxvY2sgdW5hdmFpbGFibGUgZm9yIHJlcXVlc3RlZCBpbnRyYTR4NCBtb2RlICVkCgBvdXQgb2YgcmFuZ2UgaW50cmEgY2hyb21hIHByZWQgbW9kZQoABAH//3RvcCBibG9jayB1bmF2YWlsYWJsZSBmb3IgcmVxdWVzdGVkIGludHJhIG1vZGUKAGxlZnQgYmxvY2sgdW5hdmFpbGFibGUgZm9yIHJlcXVlc3RlZCBpbnRyYSBtb2RlCgAF/wL/BnJlZmVyZW5jZSBvdmVyZmxvdyAldSA+ICV1IG9yICV1ID4gJXUKAGF2Y0MgJWQgdG9vIHNob3J0CgBEZWNvZGluZyBzcHMgJWQgZnJvbSBhdmNDIGZhaWxlZAoARGVjb2RpbmcgcHBzICVkIGZyb20gYXZjQyBmYWlsZWQKAElnbm9yaW5nIE5BTCB0eXBlICVkIGluIGV4dHJhZGF0YQoAU1BTIGRlY29kaW5nIGZhaWx1cmUsIHRyeWluZyBhZ2FpbiBhZnRlciBlc2NhcGluZyB0aGUgTkFMCgBidWZfc2l6ZSA+PSAwAGxpYmF2Y29kZWMvYnl0ZXN0cmVhbS5oACFkc3QtPmYtPmJ1ZlswXQBsaWJhdmNvZGVjL2gyNjRfcGljdHVyZS5jAHNyYy0+Zi0+YnVmWzBdAHNyYy0+dGYuZiA9PSBzcmMtPmYAaGFyZHdhcmUgYWNjZWxlcmF0b3IgZmFpbGVkIHRvIGRlY29kZSBwaWN0dXJlCgBhYnNfZGlmZl9waWNfbnVtIG92ZXJmbG93CgBsb25nX3Rlcm1fcGljX2lkeCBvdmVyZmxvdwoAbGliYXZjb2RlYy9oMjY0X3JlZnMuYwByZWZlcmVuY2UgcGljdHVyZSBtaXNzaW5nIGR1cmluZyByZW9yZGVyCgBNaXNzaW5nIHJlZmVyZW5jZSBwaWN0dXJlLCBkZWZhdWx0IGlzICVkCgBhdl9idWZmZXJfZ2V0X3JlZl9jb3VudChzbC0+cmVmX2xpc3RbbGlzdF1baW5kZXhdLnBhcmVudC0+Zi0+YnVmWzBdKSA+IDAAbGVuIDw9IDMyAERpc2NhcmRpbmcgbWlzbWF0Y2hpbmcgcmVmZXJlbmNlCgBpbmRleCA8IGRlZl9sZW4AbG9uZyB0ZXJtIGxpc3Q6CgAldSBmbjolZCBwb2M6JWQgJXAKAHNob3J0IHRlcm0gbGlzdDoKAHJlZmVyZW5jZSBjb3VudCBvdmVyZmxvdwoAaWxsZWdhbCBtb2RpZmljYXRpb25fb2ZfcGljX251bXNfaWRjICV1CgBubyBtbWNvIGhlcmUKAG1tY286JWQgJWQgJWQKAG1tY286IHVucmVmIHNob3J0IGZhaWx1cmUKAG1tY286IHVucmVmIHNob3J0ICVkIGNvdW50ICVkCgBtbWNvOiB1bnJlZiBsb25nIGZhaWx1cmUKAG1tY286IGNhbm5vdCBhc3NpZ24gY3VycmVudCBwaWN0dXJlIHRvIHNob3J0IGFuZCBsb25nIGF0IHRoZSBzYW1lIHRpbWUKAG1tY286IGNhbm5vdCBhc3NpZ24gY3VycmVudCBwaWN0dXJlIHRvIDIgbG9uZyB0ZXJtIHJlZmVyZW5jZXMKACFoLT5jdXJfcGljX3B0ci0+bG9uZ19yZWYAaWxsZWdhbCBzaG9ydCB0ZXJtIHJlZmVyZW5jZSBhc3NpZ25tZW50IGZvciBzZWNvbmQgZmllbGQgaW4gY29tcGxlbWVudGFyeSBmaWVsZCBwYWlyIChmaXJzdCBmaWVsZCBpcyBsb25nIHRlcm0pCgBpbGxlZ2FsIHNob3J0IHRlcm0gYnVmZmVyIHN0YXRlIGRldGVjdGVkCgBudW1iZXIgb2YgcmVmZXJlbmNlIGZyYW1lcyAoJWQrJWQpIGV4Y2VlZHMgbWF4ICglZDsgcHJvYmFibHkgY29ycnVwdCBpbnB1dCksIGRpc2NhcmRpbmcgb25lCgByZW1vdmUgc2hvcnQgJWQgY291bnQgJWQKACVkICVkICVwCgBpbGxlZ2FsIGxvbmcgcmVmIGluIG1lbW9yeSBtYW5hZ2VtZW50IGNvbnRyb2wgb3BlcmF0aW9uICVkCgBpbGxlZ2FsIG1lbW9yeSBtYW5hZ2VtZW50IGNvbnRyb2wgb3BlcmF0aW9uICVkCgBoMjY0X3NsaWNlX2hlYWRlcl9pbml0KCkgZmFpbGVkAENvdWxkIG5vdCBhbGxvY2F0ZSBtZW1vcnkKAFZEUEFVIGRlY29kaW5nIGRvZXMgbm90IHN1cHBvcnQgdmlkZW8gY29sb3JzcGFjZS4KAFVuc3VwcG9ydGVkIGJpdCBkZXB0aCAlZAoAY29udGV4dF9pbml0KCkgZmFpbGVkLgoAVG9vIG1hbnkgZmllbGRzCgBCcm9rZW4gZnJhbWUgcGFja2V0aXppbmcKAHNsID09IGgtPnNsaWNlX2N0eABsaWJhdmNvZGVjL2gyNjRfc2xpY2UuYwBQUFMgY2hhbmdlZCBiZXR3ZWVuIHNsaWNlcwoAU1BTIGNoYW5nZWQgaW4gdGhlIG1pZGRsZSBvZiB0aGUgZnJhbWUKAENoYW5naW5nIGZpZWxkIG1vZGUgKCVkIC0+ICVkKSBiZXR3ZWVuIHNsaWNlcyBpcyBub3QgYWxsb3dlZAoAdW5zZXQgY3VyX3BpY19wdHIgb24gc2xpY2UgJWQKAEludmFsaWQgbWl4IG9mIElEUiBhbmQgbm9uLUlEUiBzbGljZXMKAGZpcnN0X21iX2luX3NsaWNlIG92ZXJmbG93CgBQb3NzaWJseSB0b28gbWFueSBzbGljZXMgKCVkID49ICVkKSwgaW5jcmVhc2UgTUFYX1NMSUNFUyBhbmQgcmVjb21waWxlIGlmIHRoZXJlIGFyZSBhcnRpZmFjdHMKAFQAQgBGACBmaXgAIElEUgBjAFRFTVAAU1BBVABzbGljZTolZCAlcyBtYjolZCAlYyVzJXMgZnJhbWU6JWQgcG9jOiVkLyVkIHJlZjolZC8lZCBxcDolZCBsb29wOiVkOiVkOiVkIHdlaWdodDolZCVzICVzCgBoLT5jdXJfcGljX3B0cgBoLT5jdXJfcGljX3B0ci0+Zi0+YnVmWzBdAEludmFsaWQgZmllbGQgbW9kZSBjb21iaW5hdGlvbiAlZC8lZAoARm91bmQgcmVmZXJlbmNlIGFuZCBub24tcmVmZXJlbmNlIGZpZWxkcyBpbiB0aGUgc2FtZSBmcmFtZSwgd2hpY2gARnJhbWUgbnVtIGdhcCAlZCAlZAoASW52YWxpZCBQT0MgJWQ8JWQKAEluY3JlYXNpbmcgcmVvcmRlciBidWZmZXIgdG8gJWQKAHBpY3MgPD0gMTYAb29vAG5vIHBpY3R1cmUgJXMKAEF0dGVtcHQgdG8gc3RhcnQgYSBmcmFtZSBvdXRzaWRlIFNFVFVQIHN0YXRlCgBubyBmcmFtZSBidWZmZXIgYXZhaWxhYmxlCgAhcGljLT5mLT5kYXRhWzBdACFwaWMtPmh3YWNjZWxfcGljdHVyZV9wcml2YXRlAGNoYW5naW5nIHdpZHRoICVkIC0+ICVkIC8gaGVpZ2h0ICVkIC0+ICVkIG9uIHNsaWNlICVkCgBSZWluaXQgY29udGV4dCB0byAlZHglZCwgcGl4X2ZtdDogJXMKAGgyNjRfc2xpY2VfaGVhZGVyX2luaXQoKSBmYWlsZWQKAHNwcy0+Y3JvcF9yaWdodCArIHNwcy0+Y3JvcF9sZWZ0IDwgKHVuc2lnbmVkKWgtPndpZHRoAHNwcy0+Y3JvcF90b3AgKyBzcHMtPmNyb3BfYm90dG9tIDwgKHVuc2lnbmVkKWgtPmhlaWdodABjb250ZXh0X2NvdW50ICYmIGgtPnNsaWNlX2N0eFtjb250ZXh0X2NvdW50IC0gMV0ubWJfeSA8IGgtPm1iX2hlaWdodABoLT5ibG9ja19vZmZzZXRbMTVdID09ICg0ICogKChzY2FuOFsxNV0gLSBzY2FuOFswXSkgJiA3KSA8PCBoLT5waXhlbF9zaGlmdCkgKyA0ICogc2wtPmxpbmVzaXplICogKChzY2FuOFsxNV0gLSBzY2FuOFswXSkgPj4gMykAU2xpY2Ugb3ZlcmxhcHMgd2l0aCBuZXh0IGF0ICVkCgBieXRlc3RyZWFtIG92ZXJyZWFkICV0ZAoAZXJyb3Igd2hpbGUgZGVjb2RpbmcgTUIgJWQgJWQsIGJ5dGVzdHJlYW0gJXRkCgBlcnJvciB3aGlsZSBkZWNvZGluZyBNQiAlZCAlZAoAIWgtPnNldHVwX2ZpbmlzaGVkAHNsaWNlIHR5cGUgJWQgdG9vIGxhcmdlIGF0ICVkCgBBIG5vbi1pbnRyYSBzbGljZSBpbiBhbiBJRFIgTkFMIHVuaXQuCgBwcHNfaWQgJXUgb3V0IG9mIHJhbmdlCgBub24tZXhpc3RpbmcgUFBTICV1IHJlZmVyZW5jZWQKAG5vbi1leGlzdGluZyBTUFMgJXUgcmVmZXJlbmNlZAoARnJhbWUgbnVtIGNoYW5nZSBmcm9tICVkIHRvICVkCgBUaGlzIHN0cmVhbSB3YXMgZ2VuZXJhdGVkIGJ5IGEgYnJva2VuIGVuY29kZXIsIGludmFsaWQgOHg4IGluZmVyZW5jZQoAY2FiYWNfaW5pdF9pZGMgJXUgb3ZlcmZsb3cKAFFQICV1IG91dCBvZiByYW5nZQoAZGVibG9ja2luZ19maWx0ZXJfaWRjICV1IG91dCBvZiByYW5nZQoAZGVibG9ja2luZyBmaWx0ZXIgcGFyYW1ldGVycyAlZCAlZCBvdXQgb2YgcmFuZ2UKAEludmFsaWQgVUUgZ29sb21iIGNvZGUKAGJpdF9kZXB0aDw9OABsaWJhdmNvZGVjL2gyNjRwcmVkLmMAbiA8PSAxMDI0AGxpYmF2Y29kZWMva2Jkd2luLmMAAAECAwQFBghJbnZhbGlkIHNhbXBsZSByYXRlICVkCgBudWxsAEFwcGxpY2F0aW9uIGhhcyByZXF1ZXN0ZWQgJWQgdGhyZWFkcy4gVXNpbmcgYSB0aHJlYWQgY291bnQgZ3JlYXRlciB0aGFuICVkIGlzIG5vdCByZWNvbW1lbmRlZC4KAAoUIgoUIgULEQULEWlpZF9tb2RlICVkIGlzIHJlc2VydmVkLgoAaWNjX21vZGUgJWQgaXMgcmVzZXJ2ZWQuCgAAAQIEAQIDBGJvcmRlcl9wb3NpdGlvbiBub24gbW9ub3RvbmUuCgBwcyBleHRlbnNpb24gb3ZlcmZsb3cgJWQKAGlpZF9wYXIgaW52YWxpZAoAaWNjX3BhciBpbnZhbGlkCgBFeHBlY3RlZCB0byByZWFkICVkIFBTIGJpdHMgYWN0dWFsbHkgcmVhZCAlZC4KAB4eDg4HBwAAAABpbGxlZ2FsIGljYwoAaWxsZWdhbCBpaWQKAA4ODAoHBQMBAgQGCAkLDQ4NCwkHBQMBAgQGCAoMDgEDBAQEBAQEAQAGBAIDBQcBAwQFBQQEAwECAgMCAAMDAQMEBAUFBAMBAQYEDw4FAAEDBAUFBAQDAQIBBwYAAgP9/wEDBQcKDhIWUmVmZXJlbmNlICVkID49ICVkCgBncmF5IGNocm9tYQoAY2FiYWMgZGVjb2RlIG9mIHFzY2FsZSBkaWZmIGZhaWxlZCBhdCAlZCAlZAoAAAABAQICAgECAwQAAAAAb3ZlcmZsb3cgaW4gZGVjb2RlX2NhYmFjX21iX212ZAoAIAoJDQBBTEwARkwAZnJvbnQgbGVmdABGUgBmcm9udCByaWdodABGQwBmcm9udCBjZW50ZXIATEZFAGxvdyBmcmVxdWVuY3kAQkwAYmFjayBsZWZ0AEJSAGJhY2sgcmlnaHQARkxDAGZyb250IGxlZnQtb2YtY2VudGVyAEZSQwBmcm9udCByaWdodC1vZi1jZW50ZXIAQkMAYmFjayBjZW50ZXIAU0wAc2lkZSBsZWZ0AFNSAHNpZGUgcmlnaHQAVEMAdG9wIGNlbnRlcgBURkwAdG9wIGZyb250IGxlZnQAVEZDAHRvcCBmcm9udCBjZW50ZXIAVEZSAHRvcCBmcm9udCByaWdodABUQkwAdG9wIGJhY2sgbGVmdABUQkMAdG9wIGJhY2sgY2VudGVyAFRCUgB0b3AgYmFjayByaWdodABETABkb3dubWl4IGxlZnQARFIAZG93bm1peCByaWdodABXTAB3aWRlIGxlZnQAV1IAd2lkZSByaWdodABTREwAc3Vycm91bmQgZGlyZWN0IGxlZnQAU0RSAHN1cnJvdW5kIGRpcmVjdCByaWdodABMRkUyAGxvdyBmcmVxdWVuY3kgMgBtb25vAHN0ZXJlbwAyLjEAMy4wADMuMChiYWNrKQA0LjAAcXVhZABxdWFkKHNpZGUpADMuMQA1LjAANS4wKHNpZGUpADQuMQA1LjEANS4xKHNpZGUpADYuMAA2LjAoZnJvbnQpAGhleGFnb25hbAA2LjEANi4xKGJhY2spADYuMShmcm9udCkANy4wADcuMChmcm9udCkANy4xADcuMSh3aWRlKQA3LjEod2lkZS1zaWRlKQBvY3RhZ29uYWwAaGV4YWRlY2Fnb25hbABkb3dubWl4ACVzACVkIGNoYW5uZWxzACAoACsAKQBkZXRlY3RlZCAlZCBsb2dpY2FsIGNvcmVzCgBFcnJvciBudW1iZXIgJWQgb2NjdXJyZWQAQlNGX05PVF9GT1VORABCaXRzdHJlYW0gZmlsdGVyIG5vdCBmb3VuZABCVUcASW50ZXJuYWwgYnVnLCBzaG91bGQgbm90IGhhdmUgaGFwcGVuZWQAQlVHMgBCVUZGRVJfVE9PX1NNQUxMAEJ1ZmZlciB0b28gc21hbGwAREVDT0RFUl9OT1RfRk9VTkQARGVjb2RlciBub3QgZm91bmQAREVNVVhFUl9OT1RfRk9VTkQARGVtdXhlciBub3QgZm91bmQARU5DT0RFUl9OT1RfRk9VTkQARW5jb2RlciBub3QgZm91bmQARU9GAEVuZCBvZiBmaWxlAEVYSVQASW1tZWRpYXRlIGV4aXQgcmVxdWVzdGVkAEVYVEVSTkFMAEdlbmVyaWMgZXJyb3IgaW4gYW4gZXh0ZXJuYWwgbGlicmFyeQBGSUxURVJfTk9UX0ZPVU5EAEZpbHRlciBub3QgZm91bmQASU5QVVRfQ0hBTkdFRABJbnB1dCBjaGFuZ2VkAElOVkFMSUREQVRBAEludmFsaWQgZGF0YSBmb3VuZCB3aGVuIHByb2Nlc3NpbmcgaW5wdXQATVVYRVJfTk9UX0ZPVU5EAE11eGVyIG5vdCBmb3VuZABPUFRJT05fTk9UX0ZPVU5EAE9wdGlvbiBub3QgZm91bmQAT1VUUFVUX0NIQU5HRUQAT3V0cHV0IGNoYW5nZWQAUEFUQ0hXRUxDT01FAE5vdCB5ZXQgaW1wbGVtZW50ZWQgaW4gRkZtcGVnLCBwYXRjaGVzIHdlbGNvbWUAUFJPVE9DT0xfTk9UX0ZPVU5EAFByb3RvY29sIG5vdCBmb3VuZABTVFJFQU1fTk9UX0ZPVU5EAFN0cmVhbSBub3QgZm91bmQAVU5LTk9XTgBVbmtub3duIGVycm9yIG9jY3VycmVkAEVYUEVSSU1FTlRBTABFeHBlcmltZW50YWwgZmVhdHVyZQBJTlBVVF9BTkRfT1VUUFVUX0NIQU5HRUQASW5wdXQgYW5kIG91dHB1dCBjaGFuZ2VkAEhUVFBfQkFEX1JFUVVFU1QAU2VydmVyIHJldHVybmVkIDQwMCBCYWQgUmVxdWVzdABIVFRQX1VOQVVUSE9SSVpFRABTZXJ2ZXIgcmV0dXJuZWQgNDAxIFVuYXV0aG9yaXplZCAoYXV0aG9yaXphdGlvbiBmYWlsZWQpAEhUVFBfRk9SQklEREVOAFNlcnZlciByZXR1cm5lZCA0MDMgRm9yYmlkZGVuIChhY2Nlc3MgZGVuaWVkKQBIVFRQX05PVF9GT1VORABTZXJ2ZXIgcmV0dXJuZWQgNDA0IE5vdCBGb3VuZABIVFRQX09USEVSXzRYWABTZXJ2ZXIgcmV0dXJuZWQgNFhYIENsaWVudCBFcnJvciwgYnV0IG5vdCBvbmUgb2YgNDB7MCwxLDMsNH0ASFRUUF9TRVJWRVJfRVJST1IAU2VydmVyIHJldHVybmVkIDVYWCBTZXJ2ZXIgRXJyb3IgcmVwbHkARmFpbGVkIHRvIG1hcCBmcmFtZSBpbnRvIGRlcml2ZWQgZnJhbWUgY29udGV4dDogJWQuCgBJbnZhbGlkIG1hcHBpbmcgZm91bmQgd2hlbiBhdHRlbXB0aW5nIHVubWFwLgoAUGljdHVyZSBzaXplICV1eCV1IGlzIGludmFsaWQKAFBpY3R1cmUgc2l6ZSAldXgldSBleGNlZWRzIHNwZWNpZmllZCBtYXggcGl4ZWwgY291bnQgJWxsZCwgc2VlIHRoZSBkb2N1bWVudGF0aW9uIGlmIHlvdSB3aXNoIHRvIGluY3JlYXNlIGl0CgBJTUdVVElMUwBhYnMoc3JjX2xpbmVzaXplKSA+PSBieXRld2lkdGgAbGliYXZ1dGlsL2ltZ3V0aWxzLmMAYWJzKGRzdF9saW5lc2l6ZSkgPj0gYnl0ZXdpZHRoAGF2X2ltYWdlX2dldF9saW5lc2l6ZSBmYWlsZWQKACVzJXMlcyVzAFslcyBAICVwXSAAWyVzXSAAcGFuaWMAZmF0YWwAZXJyb3IAd2FybmluZwBpbmZvAHZlcmJvc2UAZGVidWcAcXVpZXQAICAgIExhc3QgbWVzc2FnZSByZXBlYXRlZCAlZCB0aW1lcw0AICAgIExhc3QgbWVzc2FnZSByZXBlYXRlZCAlZCB0aW1lcwoAG1sldTszJXVtJXMbWzBtABtbNDg7NTsldW0bWzM4OzU7JWRtJXMbWzBtABtbNDg7NTsldW0bWzM4OzU7JXVtJXMbWzBtAFRFUk0ATk9fQ09MT1IAQVZfTE9HX0ZPUkNFX05PQ09MT1IAQVZfTE9HX0ZPUkNFX0NPTE9SAEFWX0xPR19GT1JDRV8yNTZDT0xPUgAyNTZjb2xvcgAgaXMgbm90IGltcGxlbWVudGVkLiBVcGRhdGUgeW91ciBGRm1wZWcgdmVyc2lvbiB0byB0aGUgbmV3ZXN0IG9uZSBmcm9tIEdpdC4gSWYgdGhlIHByb2JsZW0gc3RpbGwgb2NjdXJzLCBpdCBtZWFucyB0aGF0IHlvdXIgZmlsZSBoYXMgYSBmZWF0dXJlIHdoaWNoIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4KAElmIHlvdSB3YW50IHRvIGhlbHAsIHVwbG9hZCBhIHNhbXBsZSBvZiB0aGlzIGZpbGUgdG8gZnRwOi8vdXBsb2FkLmZmbXBlZy5vcmcvaW5jb21pbmcvIGFuZCBjb250YWN0IHRoZSBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0LiAoZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcpCgB2YWwgfHwgIW1pbl9zaXplAGxpYmF2dXRpbC9tZW1faW50ZXJuYWwuaABVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgZHVyYXRpb24KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjaGFubmVsIGxheW91dAoASW52YWxpZCBvcHRpb24gdHlwZS4KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjb2xvcgoAc2FtcGxlIGZvcm1hdABVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgJXMKAFZhbHVlICVkIGZvciBwYXJhbWV0ZXIgJyVzJyBvdXQgb2YgJXMgZm9ybWF0IHJhbmdlIFslZCAtICVkXQoAcGl4ZWwgZm9ybWF0AFZhbHVlICVmIGZvciBwYXJhbWV0ZXIgJyVzJyBvdXQgb2YgcmFuZ2UgWyVnIC0gJWddCgBWYWx1ZSAlZiBmb3IgcGFyYW1ldGVyICclcycgaXMgbm90IGEgdmFsaWQgc2V0IG9mIDMyYml0IGludGVnZXIgZmxhZ3MKAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyB2aWRlbyByYXRlCgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgaW1hZ2Ugc2l6ZQoAJWQlKjFbOi9dJWQlYwBjb25zdF92YWx1ZXMgYXJyYXkgdG9vIHNtYWxsIGZvciAlcwoAZGVmYXVsdABhbGwAVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiCgBhdXRvAHRydWUseSx5ZXMsZW5hYmxlLGVuYWJsZWQsb24AZmFsc2UsbixubyxkaXNhYmxlLGRpc2FibGVkLG9mZgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgYm9vbGVhbgoAQVZPcHRpb24gdHlwZSAlZCBvZiBvcHRpb24gJXMgbm90IGltcGxlbWVudGVkIHlldAoARXJyb3Igc2V0dGluZyBvcHRpb24gJXMgdG8gdmFsdWUgJXMuCgAlZDolZCVjAG50c2MAcGFsAHFudHNjAHFwYWwAc250c2MAc3BhbABudHNjLWZpbG0Ac3FjaWYAcWNpZgBjaWYANGNpZgAxNmNpZgBxcXZnYQBxdmdhAHZnYQBzdmdhAHhnYQB1eGdhAHF4Z2EAc3hnYQBxc3hnYQBoc3hnYQB3dmdhAHd4Z2EAd3N4Z2EAd3V4Z2EAd294Z2EAd3FzeGdhAHdxdXhnYQB3aHN4Z2EAd2h1eGdhAGNnYQBlZ2EAaGQ0ODAAaGQ3MjAAaGQxMDgwADJrADJrZGNpADJrZmxhdAAya3Njb3BlADRrADRrZGNpADRrZmxhdAA0a3Njb3BlAG5oZABocXZnYQB3cXZnYQBmd3F2Z2EAaHZnYQBxaGQAdWhkMjE2MAB1aGQ0MzIwADB4AGJpa2VzaGVkADAxMjM0NTY3ODlBQkNERUZhYmNkZWYASW52YWxpZCAweFJSR0dCQltBQV0gY29sb3Igc3RyaW5nOiAnJXMnCgBDYW5ub3QgZmluZCBjb2xvciAnJXMnCgBJbnZhbGlkIGFscGhhIHZhbHVlIHNwZWNpZmllciAnJXMnIGluICclcycKAEFsaWNlQmx1ZQBBbnRpcXVlV2hpdGUAQXF1YQBBcXVhbWFyaW5lAEF6dXJlAEJlaWdlAEJpc3F1ZQBCbGFjawBCbGFuY2hlZEFsbW9uZABCbHVlAEJsdWVWaW9sZXQAQnJvd24AQnVybHlXb29kAENhZGV0Qmx1ZQBDaGFydHJldXNlAENob2NvbGF0ZQBDb3JhbABDb3JuZmxvd2VyQmx1ZQBDb3Juc2lsawBDcmltc29uAEN5YW4ARGFya0JsdWUARGFya0N5YW4ARGFya0dvbGRlblJvZABEYXJrR3JheQBEYXJrR3JlZW4ARGFya0toYWtpAERhcmtNYWdlbnRhAERhcmtPbGl2ZUdyZWVuAERhcmtvcmFuZ2UARGFya09yY2hpZABEYXJrUmVkAERhcmtTYWxtb24ARGFya1NlYUdyZWVuAERhcmtTbGF0ZUJsdWUARGFya1NsYXRlR3JheQBEYXJrVHVycXVvaXNlAERhcmtWaW9sZXQARGVlcFBpbmsARGVlcFNreUJsdWUARGltR3JheQBEb2RnZXJCbHVlAEZpcmVCcmljawBGbG9yYWxXaGl0ZQBGb3Jlc3RHcmVlbgBGdWNoc2lhAEdhaW5zYm9ybwBHaG9zdFdoaXRlAEdvbGQAR29sZGVuUm9kAEdyYXkAR3JlZW4AR3JlZW5ZZWxsb3cASG9uZXlEZXcASG90UGluawBJbmRpYW5SZWQASW5kaWdvAEl2b3J5AEtoYWtpAExhdmVuZGVyAExhdmVuZGVyQmx1c2gATGF3bkdyZWVuAExlbW9uQ2hpZmZvbgBMaWdodEJsdWUATGlnaHRDb3JhbABMaWdodEN5YW4ATGlnaHRHb2xkZW5Sb2RZZWxsb3cATGlnaHRHcmVlbgBMaWdodEdyZXkATGlnaHRQaW5rAExpZ2h0U2FsbW9uAExpZ2h0U2VhR3JlZW4ATGlnaHRTa3lCbHVlAExpZ2h0U2xhdGVHcmF5AExpZ2h0U3RlZWxCbHVlAExpZ2h0WWVsbG93AExpbWUATGltZUdyZWVuAExpbmVuAE1hZ2VudGEATWFyb29uAE1lZGl1bUFxdWFNYXJpbmUATWVkaXVtQmx1ZQBNZWRpdW1PcmNoaWQATWVkaXVtUHVycGxlAE1lZGl1bVNlYUdyZWVuAE1lZGl1bVNsYXRlQmx1ZQBNZWRpdW1TcHJpbmdHcmVlbgBNZWRpdW1UdXJxdW9pc2UATWVkaXVtVmlvbGV0UmVkAE1pZG5pZ2h0Qmx1ZQBNaW50Q3JlYW0ATWlzdHlSb3NlAE1vY2Nhc2luAE5hdmFqb1doaXRlAE5hdnkAT2xkTGFjZQBPbGl2ZQBPbGl2ZURyYWIAT3JhbmdlAE9yYW5nZVJlZABPcmNoaWQAUGFsZUdvbGRlblJvZABQYWxlR3JlZW4AUGFsZVR1cnF1b2lzZQBQYWxlVmlvbGV0UmVkAFBhcGF5YVdoaXAAUGVhY2hQdWZmAFBlcnUAUGluawBQbHVtAFBvd2RlckJsdWUAUHVycGxlAFJlZABSb3N5QnJvd24AUm95YWxCbHVlAFNhZGRsZUJyb3duAFNhbG1vbgBTYW5keUJyb3duAFNlYUdyZWVuAFNlYVNoZWxsAFNpZW5uYQBTaWx2ZXIAU2t5Qmx1ZQBTbGF0ZUJsdWUAU2xhdGVHcmF5AFNub3cAU3ByaW5nR3JlZW4AU3RlZWxCbHVlAFRhbgBUZWFsAFRoaXN0bGUAVG9tYXRvAFR1cnF1b2lzZQBWaW9sZXQAV2hlYXQAV2hpdGUAV2hpdGVTbW9rZQBZZWxsb3cAWWVsbG93R3JlZW4AJUg6JU06JVMAamFudWFyeQBmZWJydWFyeQBtYXJjaABhcHJpbABtYXkAanVuZQBqdWx5AGF1Z3VzdABzZXB0ZW1iZXIAb2N0b2JlcgBub3ZlbWJlcgBkZWNlbWJlcgBub3cAJUo6JU06JVMAJU06JVMAJUg6JU0AJUglTQAlSAAlSCVNJVMAJVkgLSAlbSAtICVkACVZJW0lZAB5dXY0MjBwAHl1eXY0MjIAcmdiMjQAYmdyMjQAeXV2NDIycAB5dXY0NDRwAHl1djQxMHAAeXV2NDExcABncmF5AGdyYXk4LHk4AG1vbm93AG1vbm9iAHBhbDgAeXV2ajQyMHAAeXV2ajQyMnAAeXV2ajQ0NHAAeHZtY21jAHh2bWNpZGN0AHV5dnk0MjIAdXl5dnl5NDExAGJncjgAYmdyNABiZ3I0X2J5dGUAcmdiOAByZ2I0AHJnYjRfYnl0ZQBudjEyAG52MjEAYXJnYgByZ2JhAGFiZ3IAYmdyYQBncmF5MTZiZQB5MTZiZQBncmF5MTZsZQB5MTZsZQB5dXY0NDBwAHl1dmo0NDBwAHl1dmE0MjBwAHZkcGF1X2gyNjQAdmRwYXVfbXBlZzEAdmRwYXVfbXBlZzIAdmRwYXVfd212MwB2ZHBhdV92YzEAcmdiNDhiZQByZ2I0OGxlAHJnYjU2NWJlAHJnYjU2NWxlAHJnYjU1NWJlAHJnYjU1NWxlAGJncjU2NWJlAGJncjU2NWxlAGJncjU1NWJlAGJncjU1NWxlAHZhYXBpX21vY28AdmFhcGlfaWRjdAB2YWFwaV92bGQAeXV2NDIwcDE2bGUAeXV2NDIwcDE2YmUAeXV2NDIycDE2bGUAeXV2NDIycDE2YmUAeXV2NDQ0cDE2bGUAeXV2NDQ0cDE2YmUAdmRwYXVfbXBlZzQAZHh2YTJfdmxkAHJnYjQ0NGxlAHJnYjQ0NGJlAGJncjQ0NGxlAGJncjQ0NGJlAHlhOABncmF5OGEAYmdyNDhiZQBiZ3I0OGxlAHl1djQyMHA5YmUAeXV2NDIwcDlsZQB5dXY0MjBwMTBiZQB5dXY0MjBwMTBsZQB5dXY0MjJwMTBiZQB5dXY0MjJwMTBsZQB5dXY0NDRwOWJlAHl1djQ0NHA5bGUAeXV2NDQ0cDEwYmUAeXV2NDQ0cDEwbGUAeXV2NDIycDliZQB5dXY0MjJwOWxlAHZkYV92bGQAZ2JycABnYnJwOWJlAGdicnA5bGUAZ2JycDEwYmUAZ2JycDEwbGUAZ2JycDE2YmUAZ2JycDE2bGUAeXV2YTQyMnAAeXV2YTQ0NHAAeXV2YTQyMHA5YmUAeXV2YTQyMHA5bGUAeXV2YTQyMnA5YmUAeXV2YTQyMnA5bGUAeXV2YTQ0NHA5YmUAeXV2YTQ0NHA5bGUAeXV2YTQyMHAxMGJlAHl1dmE0MjBwMTBsZQB5dXZhNDIycDEwYmUAeXV2YTQyMnAxMGxlAHl1dmE0NDRwMTBiZQB5dXZhNDQ0cDEwbGUAeXV2YTQyMHAxNmJlAHl1dmE0MjBwMTZsZQB5dXZhNDIycDE2YmUAeXV2YTQyMnAxNmxlAHl1dmE0NDRwMTZiZQB5dXZhNDQ0cDE2bGUAdmRwYXUAeHl6MTJsZQB4eXoxMmJlAG52MTYAbnYyMGxlAG52MjBiZQByZ2JhNjRiZQByZ2JhNjRsZQBiZ3JhNjRiZQBiZ3JhNjRsZQB5dnl1NDIyAHZkYQB5YTE2YmUAeWExNmxlAGdicmFwAGdicmFwMTZiZQBnYnJhcDE2bGUAcXN2AG1tYWwAZDNkMTF2YV92bGQAY3VkYQAwcmdiAHJnYjAAMGJncgBiZ3IwAHl1djQyMHAxMmJlAHl1djQyMHAxMmxlAHl1djQyMHAxNGJlAHl1djQyMHAxNGxlAHl1djQyMnAxMmJlAHl1djQyMnAxMmxlAHl1djQyMnAxNGJlAHl1djQyMnAxNGxlAHl1djQ0NHAxMmJlAHl1djQ0NHAxMmxlAHl1djQ0NHAxNGJlAHl1djQ0NHAxNGxlAGdicnAxMmJlAGdicnAxMmxlAGdicnAxNGJlAGdicnAxNGxlAHl1dmo0MTFwAGJheWVyX2JnZ3I4AGJheWVyX3JnZ2I4AGJheWVyX2dicmc4AGJheWVyX2dyYmc4AGJheWVyX2JnZ3IxNmxlAGJheWVyX2JnZ3IxNmJlAGJheWVyX3JnZ2IxNmxlAGJheWVyX3JnZ2IxNmJlAGJheWVyX2dicmcxNmxlAGJheWVyX2dicmcxNmJlAGJheWVyX2dyYmcxNmxlAGJheWVyX2dyYmcxNmJlAHl1djQ0MHAxMGxlAHl1djQ0MHAxMGJlAHl1djQ0MHAxMmxlAHl1djQ0MHAxMmJlAGF5dXY2NGxlAGF5dXY2NGJlAHZpZGVvdG9vbGJveF92bGQAcDAxMGxlAHAwMTBiZQBnYnJhcDEyYmUAZ2JyYXAxMmxlAGdicmFwMTBiZQBnYnJhcDEwbGUAbWVkaWFjb2RlYwBncmF5MTJiZQB5MTJiZQBncmF5MTJsZQB5MTJsZQBncmF5MTBiZQB5MTBiZQBncmF5MTBsZQB5MTBsZQBwMDE2bGUAcDAxNmJlAGQzZDExAGdyYXk5YmUAeTliZQBncmF5OWxlAHk5bGUAZ2JycGYzMmJlAGdicnBmMzJsZQBnYnJhcGYzMmJlAGdicmFwZjMybGUAZHJtX3ByaW1lAHJnYjMyAGJncjMyACVzJXMAbGUAdmFhcGkAdW5rbm93bgByZXNlcnZlZABidDcwOQBidDQ3MG0AYnQ0NzBiZwBzbXB0ZTE3MG0Ac21wdGUyNDBtAGZpbG0AYnQyMDIwAHNtcHRlNDI4AHNtcHRlNDMxAHNtcHRlNDMyAGplZGVjLXAyMgBsaW5lYXIAbG9nMTAwAGxvZzMxNgBpZWM2MTk2Ni0yLTQAYnQxMzYxZQBpZWM2MTk2Ni0yLTEAYnQyMDIwLTEwAGJ0MjAyMC0xMgBzbXB0ZTIwODQAYXJpYi1zdGQtYjY3AGdicgBmY2MAeWNnY28AYnQyMDIwbmMAYnQyMDIwYwBzbXB0ZTIwODUAY2hyb21hLWRlcml2ZWQtbmMAY2hyb21hLWRlcml2ZWQtYwBpY3RjcAAvZGV2L3VyYW5kb20AL2Rldi9yYW5kb20Ac2l6ZW9mKHRtcCkgPj0gYXZfc2hhX3NpemUAbGliYXZ1dGlsL3JhbmRvbV9zZWVkLmMAgABuYl90aHJlYWRzID49IDAAbGliYXZ1dGlsL3NsaWNldGhyZWFkLmMAbmJfam9icyA+IDAASW52YWxpZCBjaGFycyAnJXMnIGF0IHRoZSBlbmQgb2YgZXhwcmVzc2lvbiAnJXMnCgBVbmRlZmluZWQgY29uc3RhbnQgb3IgbWlzc2luZyAnKCcgaW4gJyVzJwoATWlzc2luZyAnKScgaW4gJyVzJwoATWlzc2luZyAnKScgb3IgdG9vIG1hbnkgYXJncyBpbiAnJXMnCgBzaW5oAGNvc2gAdGFuaABzaW4AY29zAHRhbgBhdGFuAGFzaW4AYWNvcwBleHAAbG9nAGFicwB0aW1lAHNxdWlzaABnYXVzcwBtb2QAbWF4AG1pbgBlcQBndGUAZ3QAbHRlAGx0AGxkAGlzbmFuAGlzaW5mAHN0AHdoaWxlAHRheWxvcgByb290AGZsb29yAGNlaWwAdHJ1bmMAcm91bmQAc3FydABub3QAcG93AHByaW50AHJhbmRvbQBoeXBvdABnY2QAaWYAaWZub3QAYml0YW5kAGJpdG9yAGJldHdlZW4AY2xpcABhdGFuMgBsZXJwAFVua25vd24gZnVuY3Rpb24gaW4gJyVzJwoARQBQSQBQSEkAUVAyTEFNQkRBAEV2YWwAJWYKAEZhaWxlZCB0byBzZXQgY2xvc2Ugb24gZXhlYwoARmFpbGVkIHRvIHNldCBvcHRpb24KAFJlcXVlc3RlZCBpbnB1dCBzYW1wbGUgZm9ybWF0ICVkIGlzIGludmFsaWQKAFJlcXVlc3RlZCBvdXRwdXQgc2FtcGxlIGZvcm1hdCAlZCBpcyBpbnZhbGlkCgBJbnB1dCBjaGFubmVsIGxheW91dCAweCVsbHggaXMgaW52YWxpZCBvciB1bnN1cHBvcnRlZC4KAE91dHB1dCBjaGFubmVsIGxheW91dCAweCVsbHggaXMgaW52YWxpZCBvciB1bnN1cHBvcnRlZC4KAFJlcXVlc3RlZCByZXNhbXBsaW5nIGVuZ2luZSBpcyB1bmF2YWlsYWJsZQoASW5wdXQgY2hhbm5lbCBsYXlvdXQgaGFzIGEgZGlmZmVyZW50IG51bWJlciBvZiBjaGFubmVscyB0aGFuIHRoZSBudW1iZXIgb2YgdXNlZCBjaGFubmVscywgaWdub3JpbmcgbGF5b3V0CgBVc2luZyAlcyBpbnRlcm5hbGx5IGJldHdlZW4gZmlsdGVycwoAUmVxdWVzdGVkIHNhbXBsZSBmb3JtYXQgJXMgaXMgbm90IHN1cHBvcnRlZCBpbnRlcm5hbGx5LCBTMTYvUzMyL1M2NC9GTFQvREJMIGlzIHN1cHBvcnRlZAoARmFpbGVkIHRvIGluaXRpYWxpemUgcmVzYW1wbGVyCgBSZXNhbXBsaW5nIG9ubHkgc3VwcG9ydGVkIHdpdGggaW50ZXJuYWwgczE2L3MzMi9mbHQvZGJsCgAhcy0+aW5fY2hfbGF5b3V0AGxpYnN3cmVzYW1wbGUvc3dyZXNhbXBsZS5jAElucHV0IGNoYW5uZWwgY291bnQgYW5kIGxheW91dCBhcmUgdW5zZXQKAE91dHB1dCBjaGFubmVsIGxheW91dCAlcyBtaXNtYXRjaGVzIHNwZWNpZmllZCBjaGFubmVsIGNvdW50ICVkCgBJbnB1dCBjaGFubmVsIGxheW91dCAlcyBtaXNtYXRjaGVzIHNwZWNpZmllZCBjaGFubmVsIGNvdW50ICVkCgBSZW1hdHJpeCBpcyBuZWVkZWQgYmV0d2VlbiAlcyBhbmQgJXMgYnV0IHRoZXJlIGlzIG5vdCBlbm91Z2ggaW5mb3JtYXRpb24gdG8gZG8gaXQKAHMtPnVzZWRfY2hfY291bnQAcy0+b3V0LmNoX2NvdW50ACFzLT5wcmVvdXQuY291bnQAYS0+YnBzAGEtPmNoX2NvdW50AENvbnRleHQgaGFzIG5vdCBiZWVuIGluaXRpYWxpemVkCgBzLT5kcm9wX291dHB1dABvdXQtPnBsYW5hciA9PSBpbi0+cGxhbmFyAG91dC0+YnBzID09IGluLT5icHMAb3V0LT5jaF9jb3VudCA9PSBpbi0+Y2hfY291bnQAIXMtPnJlc2FtcGxlAHMtPm1pZGJ1Zi5jaF9jb3VudCA9PSBzLT51c2VkX2NoX2NvdW50AHMtPm1pZGJ1Zi5jaF9jb3VudCA9PSBzLT5vdXQuY2hfY291bnQAcy0+aW4ucGxhbmFyAHMtPmRpdGhlci5ub2lzZS5jaF9jb3VudCA9PSBwcmVvdXQtPmNoX2NvdW50AGN0eC0+Y2hhbm5lbHMgPT0gb3V0LT5jaF9jb3VudABsaWJzd3Jlc2FtcGxlL2F1ZGlvY29udmVydC5jAHMtPmRpdGhlci5tZXRob2QgPCBTV1JfRElUSEVSX05CAGxpYnN3cmVzYW1wbGUvZGl0aGVyLmMAUmVxdWVzdGVkIG5vaXNlIHNoYXBpbmcgZGl0aGVyIG5vdCBhdmFpbGFibGUgYXQgdGhpcyBzYW1wbGluZyByYXRlLCB1c2luZyB0cmlhbmd1bGFyIGhwIGRpdGhlcgoAU1dSZXNhbXBsZXIAaWNoAHNldCBpbnB1dCBjaGFubmVsIGNvdW50AGluX2NoYW5uZWxfY291bnQAb2NoAHNldCBvdXRwdXQgY2hhbm5lbCBjb3VudABvdXRfY2hhbm5lbF9jb3VudAB1Y2gAc2V0IHVzZWQgY2hhbm5lbCBjb3VudAB1c2VkX2NoYW5uZWxfY291bnQAaXNyAHNldCBpbnB1dCBzYW1wbGUgcmF0ZQBpbl9zYW1wbGVfcmF0ZQBvc3IAc2V0IG91dHB1dCBzYW1wbGUgcmF0ZQBvdXRfc2FtcGxlX3JhdGUAaXNmAHNldCBpbnB1dCBzYW1wbGUgZm9ybWF0AGluX3NhbXBsZV9mbXQAb3NmAHNldCBvdXRwdXQgc2FtcGxlIGZvcm1hdABvdXRfc2FtcGxlX2ZtdAB0c2YAc2V0IGludGVybmFsIHNhbXBsZSBmb3JtYXQAaW50ZXJuYWxfc2FtcGxlX2ZtdABpY2wAc2V0IGlucHV0IGNoYW5uZWwgbGF5b3V0AGNoYW5uZWxfbGF5b3V0AGluX2NoYW5uZWxfbGF5b3V0AG9jbABzZXQgb3V0cHV0IGNoYW5uZWwgbGF5b3V0AG91dF9jaGFubmVsX2xheW91dABjbGV2AHNldCBjZW50ZXIgbWl4IGxldmVsAGNlbnRlcl9taXhfbGV2ZWwAc2xldgBzZXQgc3Vycm91bmQgbWl4IGxldmVsAHN1cnJvdW5kX21peF9sZXZlbABzZXQgc3Vycm91bmQgbWl4IExldmVsAGxmZV9taXhfbGV2ZWwAc2V0IExGRSBtaXggbGV2ZWwAcm12b2wAc2V0IHJlbWF0cml4IHZvbHVtZQByZW1hdHJpeF92b2x1bWUAcmVtYXRyaXhfbWF4dmFsAHNldCByZW1hdHJpeCBtYXh2YWwAZmxhZ3MAc2V0IGZsYWdzAHN3cl9mbGFncwByZXMAZm9yY2UgcmVzYW1wbGluZwBkaXRoZXJfc2NhbGUAc2V0IGRpdGhlciBzY2FsZQBkaXRoZXJfbWV0aG9kAHNldCBkaXRoZXIgbWV0aG9kAHJlY3Rhbmd1bGFyAHNlbGVjdCByZWN0YW5ndWxhciBkaXRoZXIAdHJpYW5ndWxhcgBzZWxlY3QgdHJpYW5ndWxhciBkaXRoZXIAdHJpYW5ndWxhcl9ocABzZWxlY3QgdHJpYW5ndWxhciBkaXRoZXIgd2l0aCBoaWdoIHBhc3MAbGlwc2hpdHoAc2VsZWN0IExpcHNoaXR6IG5vaXNlIHNoYXBpbmcgZGl0aGVyAHNoaWJhdGEAc2VsZWN0IFNoaWJhdGEgbm9pc2Ugc2hhcGluZyBkaXRoZXIAbG93X3NoaWJhdGEAc2VsZWN0IGxvdyBTaGliYXRhIG5vaXNlIHNoYXBpbmcgZGl0aGVyAGhpZ2hfc2hpYmF0YQBzZWxlY3QgaGlnaCBTaGliYXRhIG5vaXNlIHNoYXBpbmcgZGl0aGVyAGZfd2VpZ2h0ZWQAc2VsZWN0IGYtd2VpZ2h0ZWQgbm9pc2Ugc2hhcGluZyBkaXRoZXIAbW9kaWZpZWRfZV93ZWlnaHRlZABzZWxlY3QgbW9kaWZpZWQtZS13ZWlnaHRlZCBub2lzZSBzaGFwaW5nIGRpdGhlcgBpbXByb3ZlZF9lX3dlaWdodGVkAHNlbGVjdCBpbXByb3ZlZC1lLXdlaWdodGVkIG5vaXNlIHNoYXBpbmcgZGl0aGVyAGZpbHRlcl9zaXplAHNldCBzd3IgcmVzYW1wbGluZyBmaWx0ZXIgc2l6ZQBwaGFzZV9zaGlmdABzZXQgc3dyIHJlc2FtcGxpbmcgcGhhc2Ugc2hpZnQAbGluZWFyX2ludGVycABlbmFibGUgbGluZWFyIGludGVycG9sYXRpb24AZXhhY3RfcmF0aW9uYWwAZW5hYmxlIGV4YWN0IHJhdGlvbmFsAGN1dG9mZgBzZXQgY3V0b2ZmIGZyZXF1ZW5jeSByYXRpbwByZXNhbXBsZV9jdXRvZmYAcmVzYW1wbGVyAHNldCByZXNhbXBsaW5nIEVuZ2luZQBzd3IAc2VsZWN0IFNXIFJlc2FtcGxlcgBzb3hyAHNlbGVjdCBTb1ggUmVzYW1wbGVyAHByZWNpc2lvbgBzZXQgc294ciByZXNhbXBsaW5nIHByZWNpc2lvbiAoaW4gYml0cykAY2hlYnkAZW5hYmxlIHNveHIgQ2hlYnlzaGV2IHBhc3NiYW5kICYgaGlnaGVyLXByZWNpc2lvbiBpcnJhdGlvbmFsIHJhdGlvIGFwcHJveGltYXRpb24AbWluX2NvbXAAc2V0IG1pbmltdW0gZGlmZmVyZW5jZSBiZXR3ZWVuIHRpbWVzdGFtcHMgYW5kIGF1ZGlvIGRhdGEgKGluIHNlY29uZHMpIGJlbG93IHdoaWNoIG5vIHRpbWVzdGFtcCBjb21wZW5zYXRpb24gb2YgZWl0aGVyIGtpbmQgaXMgYXBwbGllZABtaW5faGFyZF9jb21wAHNldCBtaW5pbXVtIGRpZmZlcmVuY2UgYmV0d2VlbiB0aW1lc3RhbXBzIGFuZCBhdWRpbyBkYXRhIChpbiBzZWNvbmRzKSB0byB0cmlnZ2VyIHBhZGRpbmcvdHJpbW1pbmcgdGhlIGRhdGEuAGNvbXBfZHVyYXRpb24Ac2V0IGR1cmF0aW9uIChpbiBzZWNvbmRzKSBvdmVyIHdoaWNoIGRhdGEgaXMgc3RyZXRjaGVkL3NxdWVlemVkIHRvIG1ha2UgaXQgbWF0Y2ggdGhlIHRpbWVzdGFtcHMuAG1heF9zb2Z0X2NvbXAAc2V0IG1heGltdW0gZmFjdG9yIGJ5IHdoaWNoIGRhdGEgaXMgc3RyZXRjaGVkL3NxdWVlemVkIHRvIG1ha2UgaXQgbWF0Y2ggdGhlIHRpbWVzdGFtcHMuAGFzeW5jAHNpbXBsaWZpZWQgMSBwYXJhbWV0ZXIgYXVkaW8gdGltZXN0YW1wIG1hdGNoaW5nLCAwKGRpc2FibGVkKSwgMShmaWxsaW5nIGFuZCB0cmltbWluZyksID4xKG1heGltdW0gc3RyZXRjaC9zcXVlZXplIGluIHNhbXBsZXMgcGVyIHNlY29uZCkAZmlyc3RfcHRzAEFzc3VtZSB0aGUgZmlyc3QgcHRzIHNob3VsZCBiZSB0aGlzIHZhbHVlIChpbiBzYW1wbGVzKS4AbWF0cml4X2VuY29kaW5nAHNldCBtYXRyaXhlZCBzdGVyZW8gZW5jb2RpbmcAbm9uZQBzZWxlY3Qgbm9uZQBkb2xieQBzZWxlY3QgRG9sYnkAZHBsaWkAc2VsZWN0IERvbGJ5IFBybyBMb2dpYyBJSQBmaWx0ZXJfdHlwZQBzZWxlY3Qgc3dyIGZpbHRlciB0eXBlAGN1YmljAHNlbGVjdCBjdWJpYwBibGFja21hbl9udXR0YWxsAHNlbGVjdCBCbGFja21hbiBOdXR0YWxsIHdpbmRvd2VkIHNpbmMAa2Fpc2VyAHNlbGVjdCBLYWlzZXIgd2luZG93ZWQgc2luYwBrYWlzZXJfYmV0YQBzZXQgc3dyIEthaXNlciB3aW5kb3cgYmV0YQBvdXRwdXRfc2FtcGxlX2JpdHMAc2V0IHN3ciBudW1iZXIgb2Ygb3V0cHV0IHNhbXBsZSBiaXRzAFNXUgBJbnB1dCBjaGFubmVsIGxheW91dCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQKAE91dHB1dCBjaGFubmVsIGxheW91dCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQKAGxpYnN3cmVzYW1wbGUvcmVtYXRyaXguYwBNYXRyaXggY29lZmZpY2llbnRzOgoAPwAlczogACVzOiVmIAAKAFRyZWF0aW5nICVzIGFzIG1vbm8KACFzLT5vdXRfY2hfbGF5b3V0IHx8IG91dC0+Y2hfY291bnQgPT0gYXZfZ2V0X2NoYW5uZWxfbGF5b3V0X25iX2NoYW5uZWxzKHMtPm91dF9jaF9sYXlvdXQpACFzLT4gaW5fY2hfbGF5b3V0IHx8IGluIC0+Y2hfY291bnQgPT0gYXZfZ2V0X2NoYW5uZWxfbGF5b3V0X25iX2NoYW5uZWxzKHMtPiBpbl9jaF9sYXlvdXQpAEFzc2VydGlvbiAlcyBmYWlsZWQgYXQgJXM6JWQKACFjLT5mcmFjICYmICFjLT5kc3RfaW5jcl9tb2QAbGlic3dyZXNhbXBsZS9yZXNhbXBsZS5jAHRhcF9jb3VudCA9PSAxIHx8IHRhcF9jb3VudCAlIDIgPT0gMAAwAGEtPnBsYW5hcgBVbnN1cHBvcnRlZCBzYW1wbGUgZm9ybWF0CgBGaWx0ZXIgbGVuZ3RoIHRvbyBsYXJnZQoAaW5maW5pdHkAAAECBAcDBgUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4=";var tempDoublePtr=1137296;function demangle(func){return func}function demangleAll(text){var regex=/\b__Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]=(typeof navigator==="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";ENV["_"]=thisProgram;poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i<strings.length;i++){var line=strings[i];writeAsciiToMemory(line,poolPtr);HEAP32[envPtr+i*ptrSize>>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")}};var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(19)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.flush(stream.tty)},flush:function(stream){stream.tty.ops.flush(stream.tty)},read:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(6)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(5)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(11)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(6)}try{for(var i=0;i<length;i++){stream.tty.ops.put_char(stream.tty,buffer[offset+i])}}catch(e){throw new FS.ErrnoError(5)}if(length){stream.node.timestamp=Date.now()}return i}},default_tty_ops:{get_char:function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc?Buffer.alloc(BUFSIZE):new Buffer(BUFSIZE);var bytesRead=0;var isPosixPlatform=process.platform!="win32";var fd=process.stdin.fd;if(isPosixPlatform){var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}}try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null)}catch(e){if(e.toString().indexOf("EOF")!=-1)bytesRead=0;else throw e}if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(1)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length<newSize)node.contents.push(0);node.usedBytes=newSize},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[2]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(39)}}}delete old_node.parent.contents[old_node.name];old_node.name=new_name;new_dir.contents[new_name]=old_node;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name]},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(39)}delete parent.contents[name]},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(22)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size},write:function(stream,buffer,offset,length,position,canOwn){canOwn=false;if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(22)}return position},allocate:function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)},mmap:function(stream,buffer,offset,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(19)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<stream.node.usedBytes){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;var fromHeap=buffer.buffer==HEAP8.buffer;ptr=_malloc(length);if(!ptr){throw new FS.ErrnoError(12)}(fromHeap?HEAP8:buffer).set(contents,ptr)}return{ptr:ptr,allocated:allocated}},msync:function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(19)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};var IDBFS={dbs:{},indexedDB:function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret},DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function(mount){return MEMFS.mount.apply(null,arguments)},syncfs:function(mount,populate,callback){IDBFS.getLocalSet(mount,function(err,local){if(err)return callback(err);IDBFS.getRemoteSet(mount,function(err,remote){if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)})})},getDB:function(name,callback){var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}};req.onsuccess=function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)};req.onerror=function(e){callback(this.error);e.preventDefault()}},getLocalSet:function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return function(p){return PATH.join2(root,p)}}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})},getRemoteSet:function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,function(err,db){if(err)return callback(err);try{var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=function(e){callback(this.error);e.preventDefault()};var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()}}catch(e){return callback(e)}})},loadLocalEntry:function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}},storeLocalEntry:function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)},removeLocalEntry:function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)},loadRemoteEntry:function(store,path,callback){var req=store.get(path);req.onsuccess=function(event){callback(null,event.target.result)};req.onerror=function(e){callback(this.error);e.preventDefault()}},storeRemoteEntry:function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=function(){callback(null)};req.onerror=function(e){callback(this.error);e.preventDefault()}},removeRemoteEntry:function(store,path,callback){var req=store.delete(path);req.onsuccess=function(){callback(null)};req.onerror=function(e){callback(this.error);e.preventDefault()}},reconcile:function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach(function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.timestamp){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=function(e){done(this.error);e.preventDefault()};transaction.oncomplete=function(e){if(!errored){callback(null)}};create.sort().forEach(function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var NODEFS={isWindows:false,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={1024:flags["O_APPEND"],64:flags["O_CREAT"],128:flags["O_EXCL"],0:flags["O_RDONLY"],2:flags["O_RDWR"],4096:flags["O_SYNC"],512:flags["O_TRUNC"],1:flags["O_WRONLY"]}},bufferFrom:function(arrayBuffer){return Buffer["alloc"]?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)},mount:function(mount){assert(ENVIRONMENT_HAS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)},createNode:function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(22)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node},getMode:function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}return stat.mode},realPath:function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)},flagsForNode:function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(22)}},node_ops:{getattr:function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}},setattr:function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},lookup:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)},mknod:function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}return node},rename:function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},unlink:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},rmdir:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},readdir:function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},symlink:function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},readlink:function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}}},stream_ops:{open:function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},close:function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},read:function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(-e.errno)}},write:function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(-e.errno)}},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(-e.errno)}}}if(position<0){throw new FS.ErrnoError(22)}return position}}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,parts[i],WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)});(mount.opts["blobs"]||[]).forEach(function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])});(mount.opts["packages"]||[]).forEach(function(pack){pack["metadata"].files.forEach(function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))})});return root},createNode:function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node},node_ops:{getattr:function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}},lookup:function(parent,name){throw new FS.ErrnoError(2)},mknod:function(parent,name,mode,dev){throw new FS.ErrnoError(1)},rename:function(oldNode,newDir,newName){throw new FS.ErrnoError(1)},unlink:function(parent,name){throw new FS.ErrnoError(1)},rmdir:function(parent,name){throw new FS.ErrnoError(1)},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newName,oldPath){throw new FS.ErrnoError(1)},readlink:function(node){throw new FS.ErrnoError(1)}},stream_ops:{read:function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size},write:function(stream,buffer,offset,length,position){throw new FS.ErrnoError(5)},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(22)}return position}}};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(path,opts){path=PATH_FS.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH_FS.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"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},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 13}return 0},mayLookup:function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0},mayOpen:function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(29)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=17)throw e}}},mkdev:function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:function(oldpath,newpath){if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(2)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(2)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(1)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(16)}if(!old_dir||!new_dir)throw new FS.ErrnoError(2);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(18)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(22)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(39)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(1)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(16)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}},rmdir:function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(1)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}},readdir:function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(20)}return node.node_ops.readdir(node)},unlink:function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(1)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}},readlink:function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(2)}if(!link.node_ops.readlink){throw new FS.ErrnoError(22)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(2)}if(!node.node_ops.getattr){throw new FS.ErrnoError(1)}return node.node_ops.getattr(node)},lstat:function(path){return FS.stat(path,true)},chmod:function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(1)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:function(path,mode){FS.chmod(path,mode,true)},fchmod:function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(9)}FS.chmod(stream.node,mode)},chown:function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(1)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:function(path,uid,gid){FS.chown(path,uid,gid,true)},fchown:function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(9)}FS.chown(stream.node,uid,gid)},truncate:function(path,len){if(len<0){throw new FS.ErrnoError(22)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(1)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(21)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(22)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(9)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(22)}FS.truncate(stream.node,len)},utime:function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(2)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(17)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(2)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;console.log("FS.trackingDelegate error on read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream},close:function(stream){if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:function(stream){return stream.fd===null},llseek:function(stream,offset,whence){if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(29)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(22)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(22)}if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(9)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(21)}if(!stream.stream_ops.read){throw new FS.ErrnoError(22)}var seeking=typeof position!=="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(29)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(22)}if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(9)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(21)}if(!stream.stream_ops.write){throw new FS.ErrnoError(22)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!=="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(29)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+stream.path+"') threw an exception: "+e.message)}return bytesWritten},allocate:function(stream,offset,length){if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if(offset<0||length<=0){throw new FS.ErrnoError(22)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(9)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(19)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(95)}stream.stream_ops.allocate(stream,offset,length)},mmap:function(stream,buffer,offset,length,position,prot,flags){if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(13)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(13)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(19)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)},msync:function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:function(stream){return 0},ioctl:function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(25)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";var stream=FS.open(path,opts.flags,opts.mode);if(typeof data==="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:function(){return FS.currentPath},chdir:function(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(2)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(20)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path},createDefaultDirectories:function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices:function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:function(){return 0},write:function(stream,buffer,offset,length,pos){return length}});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto==="object"&&typeof crypto["getRandomValues"]==="function"){var randomBuffer=new Uint8Array(1);random_device=function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]}}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");random_device=function(){return crypto_module["randomBytes"](1)[0]}}catch(e){}}else{}if(!random_device){random_device=function(){abort("random_device")}}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(9);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:function(){return stream.path}}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams:function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");var stdout=FS.open("/dev/stdout","w");var stderr=FS.open("/dev/stderr","w")},ensureErrnoError:function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=function(errno){this.errno=errno};this.setErrno(errno);this.message="FS error"};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[2].forEach(function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"})},staticInit:function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}},init:function(input,output,error){FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}},getMode:function(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode},joinPath:function(parts,forceRelative){var path=PATH.join.apply(null,parts);if(forceRelative&&path[0]=="/")path=path.substr(1);return path},absolutePath:function(relative,base){return PATH_FS.resolve(base,relative)},standardizePath:function(path){return PATH.normalize(path)},findObject:function(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{___setErrNo(ret.error);return null}},analyzePath:function(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createFolder:function(parent,name,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.mkdir(path,mode)},createPath:function(parent,path,canRead,canWrite){parent=typeof parent==="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:function(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:function(parent,name,data,canRead,canWrite,canOwn){var path=name?PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name):parent;var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,"w");FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node},createDevice:function(parent,name,input,output){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:function(stream){stream.seekable=false},close:function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}},read:function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(5)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(11)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:function(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(5)}}if(length){stream.node.timestamp=Date.now()}return i}});return FS.mkdev(path,mode,dev)},createLink:function(parent,name,target,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)},forceLoadFile:function(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;var success=true;if(typeof XMLHttpRequest!=="undefined"){throw new 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.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){success=false}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}if(!success)___setErrNo(5);return success},createLazyFile:function(parent,name,url,canRead,canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node},createPreloadedFile:function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}var handled=false;Module["preloadPlugins"].forEach(function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,function(){if(onerror)onerror();removeRunDependency(dep)});handled=true}});if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,function(byteArray){processData(byteArray)},onerror)}else{processData(url)}},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},DB_NAME:function(){return"EM_FS_"+window.location.pathname},DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function(paths,onload,onerror){onload=onload||function(){};onerror=onerror||function(){};var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function openRequest_onupgradeneeded(){console.log("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(function(path){var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=function putRequest_onsuccess(){ok++;if(ok+fail==total)finish()};putRequest.onerror=function putRequest_onerror(){fail++;if(ok+fail==total)finish()}});transaction.onerror=onerror};openRequest.onerror=onerror},loadFilesFromDB:function(paths,onload,onerror){onload=onload||function(){};onerror=onerror||function(){};var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(function(path){var getRequest=files.get(path);getRequest.onsuccess=function getRequest_onsuccess(){if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=function getRequest_onerror(){fail++;if(ok+fail==total)finish()}});transaction.onerror=onerror};openRequest.onerror=onerror}};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(9);dir=dirstream.path}path=PATH.join2(dir,path)}return path},doStat:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-20}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-22}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-22;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-22}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;if(!node){return-2}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-13}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret},doWritev:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},getStreamFromFD:function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(9);return stream},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();return low},getZero:function(){SYSCALLS.get()}};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-75}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[result>>2]=tempI64[0],HEAP32[result+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-22}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-22;case 9:___setErrNo(22);return-1;default:{return-22}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-25;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-25;return 0}case 21519:{if(!stream.tty)return-25;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-25;return-22}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-25;return 0}case 21524:{if(!stream.tty)return-25;return 0}default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _fd_write(stream,iov,iovcnt,pnum){try{stream=FS.getStream(stream);if(!stream)throw new FS.ErrnoError(9);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___wasi_fd_write(){return _fd_write.apply(null,arguments)}function _abort(){Module["abort"]()}var _acos=Math_acos;var _asin=Math_asin;var _atan=Math_atan;function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}var _cos=Math_cos;function _emscripten_clear_interval(id){clearInterval(id)}var JSEvents={keyEvent:0,mouseEvent:0,wheelEvent:0,uiEvent:0,focusEvent:0,deviceOrientationEvent:0,deviceMotionEvent:0,fullscreenChangeEvent:0,pointerlockChangeEvent:0,visibilityChangeEvent:0,touchEvent:0,previousFullscreenElement:null,previousScreenX:null,previousScreenY:null,removeEventListenersRegistered:false,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence<y.precedence})},removeDeferredCalls:function(targetFunction){for(var i=0;i<JSEvents.deferredCalls.length;++i){if(JSEvents.deferredCalls[i].targetFunction==targetFunction){JSEvents.deferredCalls.splice(i,1);--i}}},canPerformEventHandlerRequests:function(){return JSEvents.inEventHandler&&JSEvents.currentEventHandler.allowsDeferredCalls},runDeferredCalls:function(){if(!JSEvents.canPerformEventHandlerRequests()){return}for(var i=0;i<JSEvents.deferredCalls.length;++i){var call=JSEvents.deferredCalls[i];JSEvents.deferredCalls.splice(i,1);--i;call.targetFunction.apply(this,call.argsList)}},inEventHandler:0,currentEventHandler:null,eventHandlers:[],isInternetExplorer:function(){return navigator.userAgent.indexOf("MSIE")!==-1||navigator.appVersion.indexOf("Trident/")>0},removeAllHandlersOnTarget:function(target,eventTypeString){for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==target&&(!eventTypeString||eventTypeString==JSEvents.eventHandlers[i].eventTypeString)){JSEvents._removeHandler(i--)}}},_removeHandler:function(i){var h=JSEvents.eventHandlers[i];h.target.removeEventListener(h.eventTypeString,h.eventListenerFunc,h.useCapture);JSEvents.eventHandlers.splice(i,1)},registerOrRemoveHandler:function(eventHandler){var jsEventHandler=function jsEventHandler(event){++JSEvents.inEventHandler;JSEvents.currentEventHandler=eventHandler;JSEvents.runDeferredCalls();eventHandler.handlerFunc(event);JSEvents.runDeferredCalls();--JSEvents.inEventHandler};if(eventHandler.callbackfunc){eventHandler.eventListenerFunc=jsEventHandler;eventHandler.target.addEventListener(eventHandler.eventTypeString,jsEventHandler,eventHandler.useCapture);JSEvents.eventHandlers.push(eventHandler);JSEvents.registerRemoveEventListeners()}else{for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==eventHandler.target&&JSEvents.eventHandlers[i].eventTypeString==eventHandler.eventTypeString){JSEvents._removeHandler(i--)}}}},getBoundingClientRectOrZeros:function(target){return target.getBoundingClientRect?target.getBoundingClientRect():{left:0,top:0}},pageScrollPos:function(){if(pageXOffset>0||pageYOffset>0){return[pageXOffset,pageYOffset]}if(typeof document.documentElement.scrollLeft!=="undefined"||typeof document.documentElement.scrollTop!=="undefined"){return[document.documentElement.scrollLeft,document.documentElement.scrollTop]}return[document.body.scrollLeft|0,document.body.scrollTop|0]},getNodeNameForTarget:function(target){if(!target)return"";if(target==window)return"#window";if(target==screen)return"#screen";return target&&target.nodeName?target.nodeName:""},tick:function(){if(window["performance"]&&window["performance"]["now"])return window["performance"]["now"]();else return Date.now()},fullscreenEnabled:function(){return document.fullscreenEnabled||document.mozFullScreenEnabled||document.webkitFullscreenEnabled||document.msFullscreenEnabled}};var __specialEventTargets=[0,typeof document!=="undefined"?document:0,typeof window!=="undefined"?window:0];function __findEventTarget(target){try{if(!target)return window;if(typeof target==="number")target=__specialEventTargets[target]||UTF8ToString(target);if(target==="#window")return window;else if(target==="#document")return document;else if(target==="#screen")return screen;else if(target==="#canvas")return Module["canvas"];return typeof target==="string"?document.getElementById(target):target}catch(e){return null}}function __findCanvasEventTarget(target){if(typeof target==="number")target=UTF8ToString(target);if(!target||target==="#canvas"){if(typeof GL!=="undefined"&&GL.offscreenCanvases["canvas"])return GL.offscreenCanvases["canvas"];return Module["canvas"]}if(typeof GL!=="undefined"&&GL.offscreenCanvases[target])return GL.offscreenCanvases[target];return __findEventTarget(target)}function _emscripten_get_canvas_element_size(target,width,height){var canvas=__findCanvasEventTarget(target);if(!canvas)return-4;HEAP32[width>>2]=canvas.width;HEAP32[height>>2]=canvas.height}function _emscripten_get_element_css_size(target,width,height){target=target?__findEventTarget(target):Module["canvas"];if(!target)return-4;if(target.getBoundingClientRect){var rect=target.getBoundingClientRect();HEAPF64[width>>3]=rect.right-rect.left;HEAPF64[height>>3]=rect.bottom-rect.top}else{HEAPF64[width>>3]=target.clientWidth;HEAPF64[height>>3]=target.clientHeight}return 0}function _emscripten_get_heap_size(){return HEAP8.length}function _emscripten_set_canvas_element_size(target,width,height){var canvas=__findCanvasEventTarget(target);if(!canvas)return-4;canvas.width=width;canvas.height=height;return 0}function _emscripten_set_element_css_size(target,width,height){target=target?__findEventTarget(target):Module["canvas"];if(!target)return-4;target.style.width=width+"px";target.style.height=height+"px";return 0}function _emscripten_set_interval(cb,msecs,userData){return setInterval(function(){dynCall_vi(cb,userData)},msecs)}function __registerTouchEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.touchEvent)JSEvents.touchEvent=_malloc(1684);target=__findEventTarget(target);var touchEventHandlerFunc=function(ev){var e=ev||event;var touches={};for(var i=0;i<e.touches.length;++i){var touch=e.touches[i];touch.changed=false;touches[touch.identifier]=touch}for(var i=0;i<e.changedTouches.length;++i){var touch=e.changedTouches[i];touches[touch.identifier]=touch;touch.changed=true}for(var i=0;i<e.targetTouches.length;++i){var touch=e.targetTouches[i];touches[touch.identifier].onTarget=true}var touchEvent=JSEvents.touchEvent;var ptr=touchEvent;HEAP32[ptr+4>>2]=e.ctrlKey;HEAP32[ptr+8>>2]=e.shiftKey;HEAP32[ptr+12>>2]=e.altKey;HEAP32[ptr+16>>2]=e.metaKey;ptr+=20;var canvasRect=Module["canvas"]?Module["canvas"].getBoundingClientRect():undefined;var targetRect=JSEvents.getBoundingClientRectOrZeros(target);var numTouches=0;for(var i in touches){var t=touches[i];HEAP32[ptr>>2]=t.identifier;HEAP32[ptr+4>>2]=t.screenX;HEAP32[ptr+8>>2]=t.screenY;HEAP32[ptr+12>>2]=t.clientX;HEAP32[ptr+16>>2]=t.clientY;HEAP32[ptr+20>>2]=t.pageX;HEAP32[ptr+24>>2]=t.pageY;HEAP32[ptr+28>>2]=t.changed;HEAP32[ptr+32>>2]=t.onTarget;if(canvasRect){HEAP32[ptr+44>>2]=t.clientX-canvasRect.left;HEAP32[ptr+48>>2]=t.clientY-canvasRect.top}else{HEAP32[ptr+44>>2]=0;HEAP32[ptr+48>>2]=0}HEAP32[ptr+36>>2]=t.clientX-targetRect.left;HEAP32[ptr+40>>2]=t.clientY-targetRect.top;ptr+=52;if(++numTouches>=32){break}}HEAP32[touchEvent>>2]=numTouches;if(dynCall_iiii(callbackfunc,eventTypeId,touchEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:eventTypeString=="touchstart"||eventTypeString=="touchend",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:touchEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_touchstart_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){__registerTouchEventCallback(target,userData,useCapture,callbackfunc,22,"touchstart",targetThread);return 0}function __fillVisibilityChangeEventData(eventStruct,e){var visibilityStates=["hidden","visible","prerender","unloaded"];var visibilityState=visibilityStates.indexOf(document.visibilityState);HEAP32[eventStruct>>2]=document.hidden;HEAP32[eventStruct+4>>2]=visibilityState}function __registerVisibilityChangeEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.visibilityChangeEvent)JSEvents.visibilityChangeEvent=_malloc(8);var visibilityChangeEventHandlerFunc=function(ev){var e=ev||event;var visibilityChangeEvent=JSEvents.visibilityChangeEvent;__fillVisibilityChangeEventData(visibilityChangeEvent,e);if(dynCall_iiii(callbackfunc,eventTypeId,visibilityChangeEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:visibilityChangeEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_visibilitychange_callback_on_thread(userData,useCapture,callbackfunc,targetThread){if(!__specialEventTargets[1]){return-4}__registerVisibilityChangeEventCallback(__specialEventTargets[1],userData,useCapture,callbackfunc,21,"visibilitychange",targetThread);return 0}var GL={counter:1,lastError:0,buffers:[],mappedBuffers:{},programs:[],framebuffers:[],renderbuffers:[],textures:[],uniforms:[],shaders:[],vaos:[],contexts:{},currentContext:null,offscreenCanvases:{},timerQueriesEXT:[],programInfos:{},stringCache:{},unpackAlignment:4,init:function(){GL.miniTempBuffer=new Float32Array(GL.MINI_TEMP_BUFFER_SIZE);for(var i=0;i<GL.MINI_TEMP_BUFFER_SIZE;i++){GL.miniTempBufferViews[i]=GL.miniTempBuffer.subarray(0,i+1)}},recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i<ret;i++){table[i]=null}return ret},MINI_TEMP_BUFFER_SIZE:256,miniTempBuffer:null,miniTempBufferViews:[0],getSource:function(shader,count,string,length){var source="";for(var i=0;i<count;++i){var len=length?HEAP32[length+i*4>>2]:-1;source+=UTF8ToString(HEAP32[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){var ctx=canvas.getContext("webgl",webGLContextAttributes)||canvas.getContext("experimental-webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=_malloc(8);var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault==="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents==="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;_free(GL.contexts[contextHandle]);GL.contexts[contextHandle]=null},acquireInstancedArraysExtension:function(ctx){var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=function(index,divisor){ext["vertexAttribDivisorANGLE"](index,divisor)};ctx["drawArraysInstanced"]=function(mode,first,count,primcount){ext["drawArraysInstancedANGLE"](mode,first,count,primcount)};ctx["drawElementsInstanced"]=function(mode,count,type,indices,primcount){ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount)}}},acquireVertexArrayObjectExtension:function(ctx){var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=function(){return ext["createVertexArrayOES"]()};ctx["deleteVertexArray"]=function(vao){ext["deleteVertexArrayOES"](vao)};ctx["bindVertexArray"]=function(vao){ext["bindVertexArrayOES"](vao)};ctx["isVertexArray"]=function(vao){return ext["isVertexArrayOES"](vao)}}},acquireDrawBuffersExtension:function(ctx){var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=function(n,bufs){ext["drawBuffersWEBGL"](n,bufs)}}},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;if(context.version<2){GL.acquireInstancedArraysExtension(GLctx);GL.acquireVertexArrayObjectExtension(GLctx);GL.acquireDrawBuffersExtension(GLctx)}GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query");var automaticallyEnabledExtensions=["OES_texture_float","OES_texture_half_float","OES_standard_derivatives","OES_vertex_array_object","WEBGL_compressed_texture_s3tc","WEBGL_depth_texture","OES_element_index_uint","EXT_texture_filter_anisotropic","EXT_frag_depth","WEBGL_draw_buffers","ANGLE_instanced_arrays","OES_texture_float_linear","OES_texture_half_float_linear","EXT_blend_minmax","EXT_shader_texture_lod","WEBGL_compressed_texture_pvrtc","EXT_color_buffer_half_float","WEBGL_color_buffer_float","EXT_sRGB","WEBGL_compressed_texture_etc1","EXT_disjoint_timer_query","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_astc","EXT_color_buffer_float","WEBGL_compressed_texture_s3tc_srgb","EXT_disjoint_timer_query_webgl2"];var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(automaticallyEnabledExtensions.indexOf(ext)!=-1){GLctx.getExtension(ext)}})},populateUniformTable:function(program){var p=GL.programs[program];var ptable=GL.programInfos[program]={uniforms:{},maxUniformLength:0,maxAttributeLength:-1,maxUniformBlockNameLength:-1};var utable=ptable.uniforms;var numUniforms=GLctx.getProgramParameter(p,35718);for(var i=0;i<numUniforms;++i){var u=GLctx.getActiveUniform(p,i);var name=u.name;ptable.maxUniformLength=Math.max(ptable.maxUniformLength,name.length+1);if(name.slice(-1)=="]"){name=name.slice(0,name.lastIndexOf("["))}var loc=GLctx.getUniformLocation(p,name);if(loc){var id=GL.getNewId(GL.uniforms);utable[name]=[u.size,id];GL.uniforms[id]=loc;for(var j=1;j<u.size;++j){var n=name+"["+j+"]";loc=GLctx.getUniformLocation(p,n);id=GL.getNewId(GL.uniforms);GL.uniforms[id]=loc}}}}};var __emscripten_webgl_power_preferences=["default","low-power","high-performance"];function _emscripten_webgl_do_create_context(target,attributes){var contextAttributes={};var a=attributes>>2;contextAttributes["alpha"]=!!HEAP32[a+(0>>2)];contextAttributes["depth"]=!!HEAP32[a+(4>>2)];contextAttributes["stencil"]=!!HEAP32[a+(8>>2)];contextAttributes["antialias"]=!!HEAP32[a+(12>>2)];contextAttributes["premultipliedAlpha"]=!!HEAP32[a+(16>>2)];contextAttributes["preserveDrawingBuffer"]=!!HEAP32[a+(20>>2)];var powerPreference=HEAP32[a+(24>>2)];contextAttributes["powerPreference"]=__emscripten_webgl_power_preferences[powerPreference];contextAttributes["failIfMajorPerformanceCaveat"]=!!HEAP32[a+(28>>2)];contextAttributes.majorVersion=HEAP32[a+(32>>2)];contextAttributes.minorVersion=HEAP32[a+(36>>2)];contextAttributes.enableExtensionsByDefault=HEAP32[a+(40>>2)];contextAttributes.explicitSwapControl=HEAP32[a+(44>>2)];contextAttributes.proxyContextToMainThread=HEAP32[a+(48>>2)];contextAttributes.renderViaOffscreenBackBuffer=HEAP32[a+(52>>2)];var canvas=__findCanvasEventTarget(target);if(!canvas){return 0}if(contextAttributes.explicitSwapControl){return 0}var contextHandle=GL.createContext(canvas,contextAttributes);return contextHandle}function _emscripten_webgl_create_context(a0,a1){return _emscripten_webgl_do_create_context(a0,a1)}function _emscripten_webgl_destroy_context_calling_thread(contextHandle){if(GL.currentContext==contextHandle)GL.currentContext=0;GL.deleteContext(contextHandle)}function _emscripten_webgl_destroy_context(a0){return _emscripten_webgl_destroy_context_calling_thread(a0)}function _emscripten_webgl_init_context_attributes(attributes){var a=attributes>>2;for(var i=0;i<56>>2;++i){HEAP32[a+i]=0}HEAP32[a+(0>>2)]=HEAP32[a+(4>>2)]=HEAP32[a+(12>>2)]=HEAP32[a+(16>>2)]=HEAP32[a+(32>>2)]=HEAP32[a+(40>>2)]=1}function _emscripten_webgl_make_context_current(contextHandle){var success=GL.makeContextCurrent(contextHandle);return success?0:-5}Module["_emscripten_webgl_make_context_current"]=_emscripten_webgl_make_context_current;var _exp=Math_exp;var _fabs=Math_abs;function _getenv(name){if(name===0)return 0;name=UTF8ToString(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}function _glActiveTexture(x0){GLctx["activeTexture"](x0)}function _glAttachShader(program,shader){GLctx.attachShader(GL.programs[program],GL.shaders[shader])}function _glBindBuffer(target,buffer){GLctx.bindBuffer(target,GL.buffers[buffer])}function _glBindTexture(target,texture){GLctx.bindTexture(target,GL.textures[texture])}function _glBufferData(target,size,data,usage){GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)}function _glClear(x0){GLctx["clear"](x0)}function _glClearColor(x0,x1,x2,x3){GLctx["clearColor"](x0,x1,x2,x3)}function _glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}function _glCreateProgram(){var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;GL.programs[id]=program;return id}function _glCreateShader(shaderType){var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id}function _glDeleteProgram(id){if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null;GL.programInfos[id]=null}function _glDeleteShader(id){if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null}function _glDeleteTextures(n,textures){for(var i=0;i<n;i++){var id=HEAP32[textures+i*4>>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function _glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function __glGenObject(n,buffers,createFunction,objectTable){for(var i=0;i<n;i++){var buffer=GLctx[createFunction]();var id=buffer&&GL.getNewId(objectTable);if(buffer){buffer.name=id;objectTable[id]=buffer}else{GL.recordError(1282)}HEAP32[buffers+i*4>>2]=id}}function _glGenBuffers(n,buffers){__glGenObject(n,buffers,"createBuffer",GL.buffers)}function _glGenTextures(n,textures){__glGenObject(n,textures,"createTexture",GL.textures)}function _glGetAttribLocation(program,name){return GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name))}function _glGetError(){var error=GLctx.getError()||GL.lastError;GL.lastError=0;return error}function _glGetProgramInfoLog(program,maxLength,length,infoLog){var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _glGetProgramiv(program,pname,p){if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}var ptable=GL.programInfos[program];if(!ptable){GL.recordError(1282);return}if(pname==35716){var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){HEAP32[p>>2]=ptable.maxUniformLength}else if(pname==35722){if(ptable.maxAttributeLength==-1){program=GL.programs[program];var numAttribs=GLctx.getProgramParameter(program,35721);ptable.maxAttributeLength=0;for(var i=0;i<numAttribs;++i){var activeAttrib=GLctx.getActiveAttrib(program,i);ptable.maxAttributeLength=Math.max(ptable.maxAttributeLength,activeAttrib.name.length+1)}}HEAP32[p>>2]=ptable.maxAttributeLength}else if(pname==35381){if(ptable.maxUniformBlockNameLength==-1){program=GL.programs[program];var numBlocks=GLctx.getProgramParameter(program,35382);ptable.maxUniformBlockNameLength=0;for(var i=0;i<numBlocks;++i){var activeBlockName=GLctx.getActiveUniformBlockName(program,i);ptable.maxUniformBlockNameLength=Math.max(ptable.maxUniformBlockNameLength,activeBlockName.length+1)}}HEAP32[p>>2]=ptable.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(GL.programs[program],pname)}}function _glGetShaderInfoLog(shader,maxLength,length,infoLog){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _glGetShaderiv(shader,pname,p){if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source===null||source.length==0?0:source.length+1;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}}function _glGetUniformLocation(program,name){name=UTF8ToString(name);var arrayIndex=0;if(name[name.length-1]=="]"){var leftBrace=name.lastIndexOf("[");arrayIndex=name[leftBrace+1]!="]"?parseInt(name.slice(leftBrace+1)):0;name=name.slice(0,leftBrace)}var uniformInfo=GL.programInfos[program]&&GL.programInfos[program].uniforms[name];if(uniformInfo&&arrayIndex>=0&&arrayIndex<uniformInfo[0]){return uniformInfo[1]+arrayIndex}else{return-1}}function _glLinkProgram(program){GLctx.linkProgram(GL.programs[program]);GL.populateUniformTable(program)}function _glPixelStorei(pname,param){if(pname==3317){GL.unpackAlignment=param}GLctx.pixelStorei(pname,param)}function _glShaderSource(shader,count,string,length){var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)}function __computeUnpackAlignedImageSize(width,height,sizePerPixel,alignment){function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=width*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,alignment);return height*alignedRowSize}var __colorChannelsInGlTextureFormat={6402:1,6406:1,6407:3,6408:4,6409:1,6410:2,35904:3,35906:4};var __sizeOfGlTextureElementType={5121:1,5123:2,5125:4,5126:4,32819:2,32820:2,33635:2,34042:4,36193:2};function emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat){var sizePerPixel=__colorChannelsInGlTextureFormat[format]*__sizeOfGlTextureElementType[type];if(!sizePerPixel){GL.recordError(1280);return}var bytes=__computeUnpackAlignedImageSize(width,height,sizePerPixel,GL.unpackAlignment);var end=pixels+bytes;switch(type){case 5121:return HEAPU8.subarray(pixels,end);case 5126:return HEAPF32.subarray(pixels>>2,end>>2);case 5125:case 34042:return HEAPU32.subarray(pixels>>2,end>>2);case 5123:case 33635:case 32819:case 32820:case 36193:return HEAPU16.subarray(pixels>>1,end>>1);default:GL.recordError(1280)}}function _glTexImage2D(target,level,internalFormat,width,height,border,format,type,pixels){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null)}function _glTexParameterf(x0,x1,x2){GLctx["texParameterf"](x0,x1,x2)}function _glUniform1i(location,v0){GLctx.uniform1i(GL.uniforms[location],v0)}function _glUseProgram(program){GLctx.useProgram(GL.programs[program])}function _glVertexAttribPointer(index,size,type,normalized,stride,ptr){GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)}function _glViewport(x0,x1,x2,x3){GLctx["viewport"](x0,x1,x2,x3)}var ___tm_timezone=(stringToUTF8("GMT",1137184,4),1137184);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(a0){return _llvm_exp2_f32(a0)}function _llvm_log2_f32(x){return Math.log(x)/Math.LN2}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()<winter.getTimezoneOffset()){HEAP32[__get_tzname()>>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=new Date(2e3,6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}var _log=Math_log;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _mktime(tmPtr){_tzset();var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(2e3,6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3|0}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_cond_signal(){return 0}function _pthread_cond_wait(){return 0}function _pthread_create(){return 11}function _pthread_join(){}function abortOnCannotGrowMemory(requestedSize){abort("OOM")}function emscripten_realloc_buffer(size){try{var newBuffer=new ArrayBuffer(size);if(newBuffer.byteLength!=size)return;new Int8Array(newBuffer).set(HEAP8);_emscripten_replace_memory(newBuffer);updateGlobalBufferAndViews(newBuffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=16777216;var LIMIT=2147483648-PAGE_MULTIPLE;if(requestedSize>LIMIT){return false}var MIN_TOTAL_MEMORY=16777216;var newSize=Math.max(oldSize,MIN_TOTAL_MEMORY);while(newSize<requestedSize){if(newSize<=536870912){newSize=alignUp(2*newSize,PAGE_MULTIPLE)}else{newSize=Math.min(alignUp((3*newSize+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=emscripten_realloc_buffer(newSize);if(!replacement){return false}return true}var _sin=Math_sin;function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-16777216;return maxHeapSize/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(22);return-1}var _tan=Math_tan;FS.staticInit();if(ENVIRONMENT_HAS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}var GLctx;GL.init();var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i<input.length);return output};function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE==="boolean"&&ENVIRONMENT_IS_NODE){var buf;try{buf=Buffer.from(s,"base64")}catch(_){buf=new Buffer(s,"base64")}return new Uint8Array(buf.buffer,buf.byteOffset,buf.byteLength)}try{var decoded=decodeBase64(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i)}return bytes}catch(_){throw new Error("Converting base64 string to bytes failed.")}}function tryParseAsDataURI(filename){if(!isDataURI(filename)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}var asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,Infinity:Infinity};var asmLibraryArg={"a":abort,"b":setTempRet0,"c":getTempRet0,"d":___buildEnvironment,"e":___setErrNo,"f":___syscall140,"g":___syscall221,"h":___syscall3,"i":___syscall5,"j":___syscall54,"k":___syscall6,"l":___wasi_fd_write,"m":__computeUnpackAlignedImageSize,"n":__fillVisibilityChangeEventData,"o":__findCanvasEventTarget,"p":__findEventTarget,"q":__glGenObject,"r":__registerTouchEventCallback,"s":__registerVisibilityChangeEventCallback,"t":_abort,"u":_acos,"v":_asin,"w":_atan,"x":_clock,"y":_cos,"z":_emscripten_asm_const_ii,"A":_emscripten_asm_const_iiii,"B":_emscripten_asm_const_iiiii,"C":_emscripten_asm_const_iiiiid,"D":_emscripten_asm_const_iiiiii,"E":_emscripten_clear_interval,"F":_emscripten_get_canvas_element_size,"G":_emscripten_get_element_css_size,"H":_emscripten_get_heap_size,"I":_emscripten_memcpy_big,"J":_emscripten_resize_heap,"K":_emscripten_set_canvas_element_size,"L":_emscripten_set_element_css_size,"M":_emscripten_set_interval,"N":_emscripten_set_touchstart_callback_on_thread,"O":_emscripten_set_visibilitychange_callback_on_thread,"P":_emscripten_webgl_create_context,"Q":_emscripten_webgl_destroy_context,"R":_emscripten_webgl_destroy_context_calling_thread,"S":_emscripten_webgl_do_create_context,"T":_emscripten_webgl_init_context_attributes,"U":_emscripten_webgl_make_context_current,"V":_exp,"W":_fabs,"X":_fd_write,"Y":_get_do_str,"Z":_getenv,"_":_gettimeofday,"$":_glActiveTexture,"aa":_glAttachShader,"ab":_glBindBuffer,"ac":_glBindTexture,"ad":_glBufferData,"ae":_glClear,"af":_glClearColor,"ag":_glCompileShader,"ah":_glCreateProgram,"ai":_glCreateShader,"aj":_glDeleteProgram,"ak":_glDeleteShader,"al":_glDeleteTextures,"am":_glDrawArrays,"an":_glEnableVertexAttribArray,"ao":_glGenBuffers,"ap":_glGenTextures,"aq":_glGetAttribLocation,"ar":_glGetError,"as":_glGetProgramInfoLog,"at":_glGetProgramiv,"au":_glGetShaderInfoLog,"av":_glGetShaderiv,"aw":_glGetUniformLocation,"ax":_glLinkProgram,"ay":_glPixelStorei,"az":_glShaderSource,"aA":_glTexImage2D,"aB":_glTexParameterf,"aC":_glUniform1i,"aD":_glUseProgram,"aE":_glVertexAttribPointer,"aF":_glViewport,"aG":_gmtime_r,"aH":_llvm_exp2_f32,"aI":_llvm_exp2_f64,"aJ":_llvm_log2_f32,"aK":_llvm_trunc_f64,"aL":_localtime_r,"aM":_log,"aN":_mktime,"aO":_pthread_cond_destroy,"aP":_pthread_cond_init,"aQ":_pthread_cond_signal,"aR":_pthread_cond_wait,"aS":_pthread_create,"aT":_pthread_join,"aU":_sin,"aV":_sysconf,"aW":_tan,"aX":_tzset,"aY":abortOnCannotGrowMemory,"aZ":demangle,"a_":demangleAll,"a$":emscriptenWebGLGetTexPixelData,"ba":emscripten_realloc_buffer,"bb":jsStackTrace,"bc":stackTrace,"bd":tempDoublePtr,"be":DYNAMICTOP_PTR};// EMSCRIPTEN_START_ASM
|
|
var asm=(/** @suppress {uselessCode} */ function(global,env,buffer) {
|
|
"almost asm";var a=new global.Int8Array(buffer),b=new global.Int16Array(buffer),c=new global.Int32Array(buffer),d=new global.Uint8Array(buffer),e=new global.Uint16Array(buffer),f=new global.Float32Array(buffer),g=new global.Float64Array(buffer),h=env.bd|0,i=env.be|0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=global.NaN,s=global.Infinity,t=global.Math.floor,u=global.Math.abs,v=global.Math.sqrt,w=global.Math.pow,x=global.Math.cos,y=global.Math.sin,z=global.Math.tan,A=global.Math.acos,B=global.Math.asin,C=global.Math.atan,D=global.Math.atan2,E=global.Math.exp,F=global.Math.log,G=global.Math.ceil,H=global.Math.imul,I=global.Math.min,J=global.Math.clz32,K=env.a,L=env.b,M=env.c,N=env.d,O=env.e,P=env.f,Q=env.g,R=env.h,S=env.i,T=env.j,U=env.k,V=env.l,W=env.m,X=env.n,Y=env.o,Z=env.p,_=env.q,$=env.r,aa=env.s,ba=env.t,ca=env.u,da=env.v,ea=env.w,fa=env.x,ga=env.y,ha=env.z,ia=env.A,ja=env.B,ka=env.C,la=env.D,ma=env.E,na=env.F,oa=env.G,pa=env.H,qa=env.I,ra=env.J,sa=env.K,ta=env.L,ua=env.M,va=env.N,wa=env.O,xa=env.P,ya=env.Q,za=env.R,Aa=env.S,Ba=env.T,Ca=env.U,Da=env.V,Ea=env.W,Fa=env.X,Ga=env.Y,Ha=env.Z,Ia=env._,Ja=env.$,Ka=env.aa,La=env.ab,Ma=env.ac,Na=env.ad,Oa=env.ae,Pa=env.af,Qa=env.ag,Ra=env.ah,Sa=env.ai,Ta=env.aj,Ua=env.ak,Va=env.al,Wa=env.am,Xa=env.an,Ya=env.ao,Za=env.ap,_a=env.aq,$a=env.ar,ab=env.as,bb=env.at,cb=env.au,db=env.av,eb=env.aw,fb=env.ax,gb=env.ay,hb=env.az,ib=env.aA,jb=env.aB,kb=env.aC,lb=env.aD,mb=env.aE,nb=env.aF,ob=env.aG,pb=env.aH,qb=env.aI,rb=env.aJ,sb=env.aK,tb=env.aL,ub=env.aM,vb=env.aN,wb=env.aO,xb=env.aP,yb=env.aQ,zb=env.aR,Ab=env.aS,Bb=env.aT,Cb=env.aU,Db=env.aV,Eb=env.aW,Fb=env.aX,Gb=env.aY,Hb=env.aZ,Ib=env.a_,Jb=env.a$,Kb=env.ba,Lb=env.bb,Mb=env.bc,Nb=1137312,Ob=6380192,Pb=0.0;function Qb(newBuffer){a=new Int8Array(newBuffer);d=new Uint8Array(newBuffer);b=new Int16Array(newBuffer);e=new Uint16Array(newBuffer);c=new Int32Array(newBuffer);f=new Float32Array(newBuffer);g=new Float64Array(newBuffer);buffer=newBuffer;return true}
|
|
// EMSCRIPTEN_START_FUNCS
|
|
function Fi(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;p=a+4|0;e=c[p>>2]|0;q=a+8|0;r=a+12|0;l=c[r>>2]|0;s=a+2|0;f=b[s>>1]|0;d=b[a>>1]|0;if(!(c[q>>2]|e|l|f)){s=d<<3&65528|d<<19;c[a>>2]=s;c[p>>2]=s;c[q>>2]=s;c[r>>2]=s}else{o=(d*16383|0)+1024|0;h=e<<16>>16;j=h*21407|0;d=j+o|0;h=h*8867|0;g=h+o|0;h=o-h|0;j=o-j|0;o=a+6|0;e=b[o>>1]|0;m=(e*19266|0)+(f*22725|0)|0;k=(H(e,-4520)|0)+(f*19266|0)|0;i=(H(e,-22725)|0)+(f*12873|0)|0;e=(H(e,-12873)|0)+(f*4520|0)|0;n=q;f=c[n>>2]|0;if((f|0)==0&(c[n+4>>2]|0)==0){n=e;l=m;e=a+10|0;f=a+14|0}else{x=f<<16>>16;v=x*16383|0;w=l<<16>>16;u=w*8867|0;x=H(x,-16383)|0;w=w*21407|0;t=a+10|0;y=b[t>>1]|0;f=a+14|0;l=b[f>>1]|0;n=(y*19266|0)+e+(H(l,-22725)|0)|0;i=(y*4520|0)+i+(l*19266|0)|0;k=(H(y,-22725)|0)+k+(H(l,-12873)|0)|0;l=(y*12873|0)+m+(l*4520|0)|0;j=v+j-u|0;h=x+h+w|0;g=x+g-w|0;d=v+d+u|0;e=t}b[a>>1]=(l+d|0)>>>11;b[f>>1]=(d-l|0)>>>11;b[s>>1]=(k+g|0)>>>11;b[r>>1]=(g-k|0)>>>11;b[p>>1]=(i+h|0)>>>11;b[e>>1]=(h-i|0)>>>11;b[o>>1]=(n+j|0)>>>11;b[q>>1]=(j-n|0)>>>11}return}function Gi(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;l=m+8|0;j=m;i=0;g=c[e+1164>>2]|0;while(1){h=(g|0)!=0;if((i|0)==32)break;if(!(h?(c[g+20>>2]|0)!=0:0)){h=c[e+(i<<2)>>2]|0;if(h)g=c[h+4>>2]|0}i=i+1|0}do if(h){if(!((c[g+1152>>2]|0)==0?!(c[g+1156>>2]|0):0)){k=hH(b,c[g+1176>>2]|0)|0;c[a+16>>2]=k;k=hH(b,c[g+1180>>2]|0)|0;c[a+12>>2]=k}if(c[g+1160>>2]|0){h=Yz(b,4)|0;j=a+4|0;c[j>>2]=h;k=a+8|0;c[k>>2]=0;if(h>>>0>8){g=-1094995529;break}e=d[170850+h>>0]|0;h=g+1164|0;g=0;while(1){if((g|0)==(e|0))break;if(Yz(b,1)|0){i=1<<(Yz(b,2)|0);c[k>>2]=c[k>>2]|i;yO(b,1);yO(b,5);i=Yz(b,1)|0;yO(b,1);yO(b,1);yO(b,8);if(!i){if((Yz(b,1)|0?(yO(b,6),Yz(b,1)|0):0)?(yO(b,6),Yz(b,1)|0):0)yO(b,5)}else{yO(b,6);yO(b,6);yO(b,5)}i=c[h>>2]|0;if((i|0)>0)yO(b,i)}g=g+1|0}b=c[j>>2]|0;c[l>>2]=c[k>>2];c[l+4>>2]=b;mx(f,48,170859,l)}c[a>>2]=1;g=0}else{mx(f,16,170808,j);g=-1397768184}while(0);Nb=m;return g|0}function Hi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+32|0;l=m+16|0;f=m;k=c[(c[a+64>>2]|0)+16>>2]|0;h=c[k+76>>2]|0;c[b+32>>2]=c[k+60>>2];g=(h|0)>8;if(g){i=qR(h)|0;d=b+64|0;c[d>>2]=i;i=h+-8|0;c[b+284>>2]=i;i=qR(i)|0;e=b+280|0;c[e>>2]=i;if((i|0)==0|(c[d>>2]|0)==0){zM(d);zM(e);d=-12}else{i=d;j=6}}else{e=b+64|0;c[e>>2]=b;if(!(c[b+284>>2]|0)){i=e;j=6}else{c[f>>2]=167585;c[f+4>>2]=166508;c[f+8>>2]=1375;mx(0,0,214689,f);ba()}}a:do if((j|0)==6){e=g?8:h;d=0;while(1){if((d|0)>=(e|0)){j=10;break}f=rt(c[k>>2]|0)|0;c[b+248+(d<<2)>>2]=f;if(!f)break;h=c[f+4>>2]|0;c[b+(d<<2)>>2]=h;c[(c[i>>2]|0)+(d<<2)>>2]=h;d=d+1|0}b:do if((j|0)==10){e=b+284|0;f=b+280|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break;g=rt(c[k>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break b;c[(c[i>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}if(!(c[a+680>>2]&32768)){d=0;break a}c[l>>2]=b;mx(a,48,167613,l);d=0;break a}while(0);rv(b);d=-12}while(0);Nb=m;return d|0}function Ii(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(!((b|0)==0&(c|0)==0)){if(!((e|0)==0&(f|0)==0)){o=iP(0,0,b|0,c|0)|0;o=oK(o&b|0,(M()|0)&c|0,-862635923,36691299)|0;o=GN(o|0,M()|0,58)|0;M()|0;o=a[91936+o>>0]|0;g=o&255;j=iP(0,0,e|0,f|0)|0;j=oK(j&e|0,(M()|0)&f|0,-862635923,36691299)|0;j=GN(j|0,M()|0,58)|0;M()|0;j=a[91936+j>>0]|0;h=j&255;i=g>>>0>h>>>0;o=YM(b|0,c|0,o&255|0)|0;m=M()|0;n=(m|0)>-1|(m|0)==-1&o>>>0>4294967295;b=iP(0,0,o|0,m|0)|0;l=M()|0;f=YM(e|0,f|0,j&255|0)|0;j=M()|0;k=(j|0)>-1|(j|0)==-1&f>>>0>4294967295;c=iP(0,0,f|0,j|0)|0;e=M()|0;b=n?o:b;c=k?f:c;f=n?m:l;e=k?j:e;while(1){if((b|0)==(c|0)&(f|0)==(e|0))break;k=(f|0)>(e|0)|(f|0)==(e|0)&b>>>0>c>>>0;m=k?c:b;o=k?e:f;k=iP((k?b:c)|0,(k?f:e)|0,m|0,o|0)|0;l=M()|0;n=iP(0,0,k|0,l|0)|0;n=oK(k&n|0,l&(M()|0)|0,-862635923,36691299)|0;n=GN(n|0,M()|0,58)|0;M()|0;n=YM(k|0,l|0,d[91936+n>>0]|0|0)|0;b=m;c=n;f=o;e=M()|0}b=uN(b|0,f|0,(i?h:g)|0)|0;c=M()|0}}else{c=f;b=e}L(c|0);return b|0}function Ji(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=H(k,l)|0;k=H(k,g)|0;l=H(l,h)|0;h=H(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;l=((H(m,d[c>>0]|0)|0)+32|0)>>>6&255;a[b>>0]=l;l=((H(m,d[c+1>>0]|0)|0)+32|0)>>>6&255;a[b+1>>0]=l;b=b+e|0;c=c+e|0;g=g+1|0}}else{h=(l|0)==0?1:e;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=H(m,d[c>>0]|0)|0;l=(l+32+(H(j,d[c+h>>0]|0)|0)|0)>>>6&255;a[b>>0]=l;l=H(m,d[c+1>>0]|0)|0;l=(l+32+(H(j,d[c+i>>0]|0)|0)|0)>>>6&255;a[b+1>>0]=l;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,d[c>>0]|0)|0;q=c+1|0;r=H(k,d[q>>0]|0)|0;n=c+e|0;p=H(l,d[n>>0]|0)|0;o=c+i|0;p=(s+32+r+p+(H(h,d[o>>0]|0)|0)|0)>>>6&255;a[b>>0]=p;q=H(m,d[q>>0]|0)|0;p=H(k,d[c+2>>0]|0)|0;o=H(l,d[o>>0]|0)|0;o=(q+32+p+o+(H(h,d[c+j>>0]|0)|0)|0)>>>6&255;a[b+1>>0]=o;b=b+e|0;g=g+1|0;c=n}}while(0);return}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;h=i;jq(a|0,0,1016)|0;c[a>>2]=160896;e=(b|0)!=0;a:do if(e){d=c[b+8>>2]|0;c[a+8>>2]=d;c[a+12>>2]=b;c[a+48>>2]=c[b+12>>2];switch(d|0){case 1:{d=8;break a}case 0:{d=16;break a}case 3:{d=32;break a}default:{f=6;break a}}}else{c[a+8>>2]=-1;f=6}while(0);if((f|0)==6)d=0;Ue(a,d,d);c[a+108>>2]=0;c[a+112>>2]=1;c[a+880>>2]=0;c[a+884>>2]=1;c[a+892>>2]=0;c[a+896>>2]=1;c[a+472>>2]=9;c[a+156>>2]=7;c[a+816>>2]=5;c[a+820>>2]=1;c[a+228>>2]=0;c[a+232>>2]=1;c[a+144>>2]=-1;c[a+888>>2]=-1;c[a+424>>2]=-1;f=a+696|0;c[f>>2]=0;c[f+4>>2]=-2147483648;b:do if(e){e=c[b+52>>2]|0;if(e|0){f=a+60|0;d=c[f>>2]|0;if(!d){d=rR(e)|0;c[f>>2]=d;if(!d){g=-12;break}}e=c[b+44>>2]|0;if(e|0){c[d>>2]=e;sU(c[f>>2]|0)}}d=c[b+68>>2]|0;if(d){while(1){e=c[d>>2]|0;if(!e){g=0;break b}if((zd(a,e,c[d+4>>2]|0,0)|0)>-1)d=d+8|0;else break}c[h>>2]=191710;c[h+4>>2]=172188;c[h+8>>2]=143;mx(0,0,214689,h);ba()}else g=0}else g=0;while(0);Nb=i;return g|0}function Li(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;o=Nb;Nb=Nb+32|0;m=o+16|0;i=o+8|0;h=o;j=d[e+22>>0]|0;k=(c[e+92>>2]|0)-j|0;c[e+310116>>2]=k;n=(k+1|0)>>>1;c[e+310112>>2]=n;l=e+310276|0;Bk(l|0,e+310128+(j<<1)|0,(k<<1)+2|0)|0;j=b[e+310276+(k<<1)>>1]|0;f=j&65535;l=b[l>>1]|0;g=l&65535;c[e+84>>2]=f-g;c[e+76>>2]=g;do if((j&65535)<=64){if((l&65535)>32){f=c[a+4>>2]|0;c[i>>2]=g;mx(f,16,190695,i);f=-1;break}j=e+310226|0;b[j>>1]=l;g=k&1;h=n+1|0;f=1;while(1){if((f|0)==(h|0))break;b[e+310226+(f<<1)>>1]=b[e+310276+((f<<1)-g<<1)>>1]|0;f=f+1|0}p=+(d[e+25>>0]|0);i=uV(+rb(+(+((c[e+60>>2]|0)>>>0)/+(l&65535)))*p)|0;i=(i|0)>1?i:1;c[e+310120>>2]=i;if(i>>>0>5){f=c[a+4>>2]|0;c[m>>2]=i;mx(f,16,190732,m);f=-1;break}b[e+310374>>1]=b[j>>1]|0;h=i+1|0;f=0;g=1;while(1){if(g>>>0>i>>>0)break;m=(((n-f|0)>>>0)/((h-g|0)>>>0)|0)+f|0;b[e+310374+(g<<1)>>1]=b[e+310226+(m<<1)>>1]|0;f=m;g=g+1|0}if((Qh(a,e)|0)<0)f=-1;else{ie(e);c[e+88040>>2]=0;c[e+176008>>2]=0;f=0}}else{n=c[a+4>>2]|0;c[h>>2]=f;mx(n,16,190659,h);f=-1}while(0);Nb=o;return f|0}function Mi(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=g+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;i=aN(+f[b>>2]*2147483648.0)|0;j=M()|0;k=kP(i|0,j|0,-2147483648,0)|0;l=M()|0;j=YM(i|0,j|0,63)|0;M()|0;c[a>>2]=l>>>0>0|(l|0)==0&k>>>0>4294967295?j^2147483647:i;i=b+d|0;j=a+e|0;k=aN(+f[i>>2]*2147483648.0)|0;l=M()|0;m=kP(k|0,l|0,-2147483648,0)|0;n=M()|0;l=YM(k|0,l|0,63)|0;M()|0;c[j>>2]=n>>>0>0|(n|0)==0&m>>>0>4294967295?l^2147483647:k;i=i+d|0;j=j+e|0;k=aN(+f[i>>2]*2147483648.0)|0;l=M()|0;m=kP(k|0,l|0,-2147483648,0)|0;n=M()|0;l=YM(k|0,l|0,63)|0;M()|0;c[j>>2]=n>>>0>0|(n|0)==0&m>>>0>4294967295?l^2147483647:k;i=i+d|0;j=j+e|0;k=aN(+f[i>>2]*2147483648.0)|0;l=M()|0;m=kP(k|0,l|0,-2147483648,0)|0;n=M()|0;l=YM(k|0,l|0,63)|0;M()|0;c[j>>2]=n>>>0>0|(n|0)==0&m>>>0>4294967295?l^2147483647:k;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=g>>>0)break;n=aN(+f[b>>2]*2147483648.0)|0;m=M()|0;l=kP(n|0,m|0,-2147483648,0)|0;k=M()|0;m=YM(n|0,m|0,63)|0;M()|0;c[a>>2]=k>>>0>0|(k|0)==0&l>>>0>4294967295?m^2147483647:n;a=a+e|0;b=b+d|0}return}function Ni(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;b=(b|0)!=0;if(b){r=d[a+-1>>0]|0;u=d[a+~f>>0]|0}else{u=d[a+-1>>0]|0;r=u}s=d[a+(f+-1)>>0]|0;t=s+2|0;v=d[a+((f<<1)+-1)>>0]|0;w=v+2|0;x=d[a+((f*3|0)+-1)>>0]|0;y=d[a+((f<<2)+-1)>>0]|0;z=d[a+((f*5|0)+-1)>>0]|0;A=d[a+((f*6|0)+-1)>>0]|0;B=d[a+((f*7|0)+-1)>>0]|0;g=0-f|0;if(b){g=d[a+g>>0]|0;q=d[a+~f>>0]|0}else{q=d[a+g>>0]|0;g=q}o=d[a+(1-f)>>0]|0;p=o+2|0;h=d[a+(2-f)>>0]|0;i=h+2|0;j=d[a+(3-f)>>0]|0;k=d[a+(4-f)>>0]|0;l=d[a+(5-f)>>0]|0;m=d[a+(6-f)>>0]|0;n=d[a+(7-f)>>0]|0;if(!e)b=n;else b=d[a+(8-f)>>0]|0;g=H(((t+u+(r<<1)|0)>>>2)+8+((w+r+(s<<1)|0)>>>2)+((t+(v<<1)+x|0)>>>2)+((w+(x<<1)+y|0)>>>2)+((x+2+(y<<1)+z|0)>>>2)+((y+2+(z<<1)+A|0)>>>2)+((A+2+(B*3|0)|0)>>>2)+((z+2+(A<<1)+B|0)>>>2)+((p+q+(g<<1)|0)>>>2)+((i+g+(o<<1)|0)>>>2)+((p+(h<<1)+j|0)>>>2)+((i+(j<<1)+k|0)>>>2)+((j+2+(k<<1)+l|0)>>>2)+((k+2+(l<<1)+m|0)>>>2)+((l+2+(m<<1)+n|0)>>>2)+((m+2+(n<<1)+b|0)>>>2)>>4,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=g;c[a+4>>2]=g;b=b+1|0;a=a+f|0}return}function Oi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;i=fN(+g[b>>3]*2147483648.0)|0;j=M()|0;k=kP(i|0,j|0,-2147483648,0)|0;l=M()|0;j=YM(i|0,j|0,63)|0;M()|0;c[a>>2]=l>>>0>0|(l|0)==0&k>>>0>4294967295?j^2147483647:i;i=b+d|0;j=a+e|0;k=fN(+g[i>>3]*2147483648.0)|0;l=M()|0;m=kP(k|0,l|0,-2147483648,0)|0;n=M()|0;l=YM(k|0,l|0,63)|0;M()|0;c[j>>2]=n>>>0>0|(n|0)==0&m>>>0>4294967295?l^2147483647:k;i=i+d|0;j=j+e|0;k=fN(+g[i>>3]*2147483648.0)|0;l=M()|0;m=kP(k|0,l|0,-2147483648,0)|0;n=M()|0;l=YM(k|0,l|0,63)|0;M()|0;c[j>>2]=n>>>0>0|(n|0)==0&m>>>0>4294967295?l^2147483647:k;i=i+d|0;j=j+e|0;k=fN(+g[i>>3]*2147483648.0)|0;l=M()|0;m=kP(k|0,l|0,-2147483648,0)|0;n=M()|0;l=YM(k|0,l|0,63)|0;M()|0;c[j>>2]=n>>>0>0|(n|0)==0&m>>>0>4294967295?l^2147483647:k;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=f>>>0)break;n=fN(+g[b>>3]*2147483648.0)|0;m=M()|0;l=kP(n|0,m|0,-2147483648,0)|0;k=M()|0;m=YM(n|0,m|0,63)|0;M()|0;c[a>>2]=k>>>0>0|(k|0)==0&l>>>0>4294967295?m^2147483647:n;a=a+e|0;b=b+d|0}return}function Pi(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;E=Nb;Nb=Nb+256|0;w=E;x=c[a>>2]|0;y=a+4|0;z=c[y>>2]|0;A=a+8|0;B=c[A>>2]|0;C=a+12|0;D=c[C>>2]|0;o=a+16|0;p=c[o>>2]|0;q=a+20|0;r=c[q>>2]|0;s=a+24|0;t=c[s>>2]|0;u=a+28|0;v=c[u>>2]|0;e=0;f=r;g=p;h=D;i=B;j=z;k=x;l=v;m=t;while(1){if((e|0)==64)break;if(e>>>0<16){n=b+(e<<2)|0;n=IS(d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24|0)|0}else{F=c[w+(e+-15<<2)>>2]|0;n=c[w+(e+-2<<2)>>2]|0;n=(c[w+(e+-7<<2)>>2]|0)+(c[w+(e+-16<<2)>>2]|0)+((F<<14|F>>>18)^F>>>3^(F<<25|F>>>7))+((n<<13|n>>>19)^n>>>10^(n<<15|n>>>17))|0}c[w+(e<<2)>>2]=n;J=((g<<26|g>>>6)^(g<<21|g>>>11)^(g<<7|g>>>25))+l+((m^f)&g^m)+n+(c[149024+(e<<2)>>2]|0)|0;I=m;H=k;G=j;n=i;F=g;e=e+1|0;g=J+h|0;k=((i|j)&k|i&j)+((k<<30|k>>>2)^(k<<19|k>>>13)^(k<<10|k>>>22))+J|0;m=f;l=I;j=H;i=G;h=n;f=F}c[a>>2]=k+x;c[y>>2]=j+z;c[A>>2]=i+B;c[C>>2]=h+D;c[o>>2]=g+p;c[q>>2]=f+r;c[s>>2]=m+t;c[u>>2]=l+v;Nb=E;return}function Qi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=Nb;Nb=Nb+16|0;i=m+8|0;e=m;j=c[a+704>>2]|0;k=a+8|0;do if(!(c[k>>2]|0)){h=a+124|0;g=a+128|0;f=a+992|0;if((un(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,c[f+4>>2]|0,-1,0,a)|0)>=0?(c[a+144>>2]|0)>=0:0){f=b+68|0;e=b+72|0;if((c[f>>2]|0)>=1?(c[e>>2]|0)>=1:0)e=1;else{o=c[h>>2]|0;h=c[a+792>>2]|0;n=0-(0-(c[a+132>>2]|0)>>h)|0;c[f>>2]=(o|0)>(n|0)?o:n;g=c[g>>2]|0;h=0-(0-(c[a+136>>2]|0)>>h)|0;c[e>>2]=(g|0)>(h|0)?g:h;e=0}if((((c[b>>2]|0)==0?(c[b+4>>2]|0)==0:0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){f=e;l=13;break}mx(a,16,167917,i);e=-22;break}mx(a,16,167873,e);e=-22}else{f=1;l=13}while(0);if((l|0)==13){e=NT(a,b)|0;if((e|0)>=0){if(j){e=c[j+24>>2]|0;if(!e)l=18;else e=Yb[e&15](a,b)|0}else{c[a+888>>2]=c[a+144>>2];l=18}if((l|0)==18){e=Zb[c[a+472>>2]&15](a,b,d)|0;if((e|0)>-1)Go(a,b)}if((c[k>>2]|f|0)==0?(c[(c[a+12>>2]|0)+112>>2]&16|0)==0:0){c[b+68>>2]=c[a+124>>2];c[b+72>>2]=c[a+128>>2]}}}Nb=m;return e|0}function Ri(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+80|0;g=aQ(c[h>>2]|0)|0;e=a+352|0;f=c[e>>2]|0;if(!f){f=a+240|0;f=px(c[f>>2]|0,c[f+4>>2]|0)|0;c[e>>2]=f}i=(g|0)==0?1:f;j=a+32|0;if(!((c[j>>2]|0)==0?(d=up(j,f,c[a+76>>2]|0,c[h>>2]|0,b)|0,(d|0)<0):0))k=5;a:do if((k|0)==5){g=(i|0)>8;do if(g){e=BO(i,4)|0;d=a+64|0;c[d>>2]=e;e=i+-8|0;h=BO(e,4)|0;f=a+280|0;c[f>>2]=h;if((h|0)==0|(c[d>>2]|0)==0){zM(d);zM(f);d=-12;break a}else{c[a+284>>2]=e;b=d;break}}else{b=a+64|0;c[b>>2]=a}while(0);e=g?8:i;d=0;while(1){if((d|0)>=(e|0))break;f=cI(c[j>>2]|0)|0;c[a+248+(d<<2)>>2]=f;if(!f){k=13;break}h=c[f+4>>2]|0;c[a+(d<<2)>>2]=h;c[(c[b>>2]|0)+(d<<2)>>2]=h;d=d+1|0}if((k|0)==13){rv(a);d=-12;break}e=i+-8|0;f=a+280|0;d=0;while(1){if((d|0)>=(e|0)){d=0;break a}g=cI(c[j>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break;c[(c[b>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}rv(a);d=-12}while(0);return d|0}function Si(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=Nb;Nb=Nb+5168|0;n=p+5144|0;m=p+5136|0;h=p+5120|0;o=p+1024|0;j=p;k=p+5152|0;i=(d|0)>-1;l=i?d&255:d;i=i?d>>>8&255:0;if((l|0)<=(c[40512]|0)){JV(1136448)|0;si(b,l,e,f,o,162052,k);e=o+1024|0;q=c[e>>2]|0;f=o+2048|0;b=c[f>>2]|0;g=o+3072|0;d=c[g>>2]|0;c[h>>2]=c[o>>2];c[h+4>>2]=q;c[h+8>>2]=b;c[h+12>>2]=d;MM(j,1024,203790,h)|0;d=c[284119]|0;if(!d){b=(jK(2)|0)==0;b=b?-1:1;c[284119]=b}else b=d;if((!((c[40513]|0)==0|0==0)?(q=(hz(j,1132208)|0)!=0,!(q|(a[j>>0]|0)==0)):0)?(q=j+((wu(j)|0)+-1)|0,(a[q>>0]|0)!=13):0){d=(c[284120]|0)+1|0;c[284120]=d;if((b|0)==1){q=c[40553]|0;c[m>>2]=d;yN(q,203867,m)|0}}else{d=c[284120]|0;if((d|0)>0){q=c[40553]|0;c[n>>2]=d;yN(q,203903,n)|0;c[284120]=0}nU(1132208,j)|0;vN(c[o>>2]|0);Bo(c[k>>2]|0,0,c[o>>2]|0);vN(c[e>>2]|0);Bo(c[k+4>>2]|0,0,c[e>>2]|0);vN(c[f>>2]|0);q=l>>3;q=(q|0)<7?q:7;q=(q|0)>0?q:0;Bo(q,i,c[f>>2]|0);vN(c[g>>2]|0);Bo(q,i,c[g>>2]|0)}ot(o+3072|0,0)|0;JV(1136448)|0}Nb=p;return}function Ti(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;i=0-q|0;j=a+6+(i<<1)|0;f=a+(q<<2<<1)+-2|0;d=f+(0-(c&-2)<<1)|0;p=a+((q*14|0)+-2)|0;o=a+((c+-2&-2)-(c>>>1<<2))|0;h=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(i<<1)|0;l=(H((e[j+(g<<1)>>1]|0)-(e[j+(0-g<<1)>>1]|0)|0,g)|0)+c|0;h=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+h|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(h*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[o+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+n>>5;b[c+2>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+h>>5;b[c+4>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+i>>5;b[c+6>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+j>>5;b[c+8>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+k>>5;b[c+10>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+l>>5;b[c+12>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+m>>5;b[c+14>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Ui(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;i=0-q|0;j=a+6+(i<<1)|0;f=a+(q<<2<<1)+-2|0;d=f+(0-(c&-2)<<1)|0;p=a+((q*14|0)+-2)|0;o=a+((c+-2&-2)-(c>>>1<<2))|0;h=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(i<<1)|0;l=(H((e[j+(g<<1)>>1]|0)-(e[j+(0-g<<1)>>1]|0)|0,g)|0)+c|0;h=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+h|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(h*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[o+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+n>>5;b[c+2>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+h>>5;b[c+4>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+i>>5;b[c+6>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+j>>5;b[c+8>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+k>>5;b[c+10>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+l>>5;b[c+12>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+m>>5;b[c+14>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Vi(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;i=0-q|0;j=a+6+(i<<1)|0;f=a+(q<<2<<1)+-2|0;d=f+(0-(c&-2)<<1)|0;p=a+((q*14|0)+-2)|0;o=a+((c+-2&-2)-(c>>>1<<2))|0;h=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(i<<1)|0;l=(H((e[j+(g<<1)>>1]|0)-(e[j+(0-g<<1)>>1]|0)|0,g)|0)+c|0;h=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+h|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(h*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[o+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+n>>5;b[c+2>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+h>>5;b[c+4>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+i>>5;b[c+6>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+j>>5;b[c+8>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+k>>5;b[c+10>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+l>>5;b[c+12>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+m>>5;b[c+14>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Wi(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function Xi(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a:do if(f>>>0>=7){a[g>>0]=a[e+1>>0]|0;a[g+1>>0]=a[e+2>>0]|0;a[g+2>>0]=a[e+3>>0]|0;a[g+3>>0]=(a[e+4>>0]&3)+1<<24>>24;m=a[e+5>>0]&31;n=g+4|0;a[n>>0]=m;h=g+2315|0;o=g+6411|0;if(f>>>0>8&m<<24>>24!=0){i=6;m=0;while(1){k=e+i|0;l=(d[k>>0]|0)<<8|(d[e+(i+1)>>0]|0);i=i+2+l|0;if(i>>>0>=f>>>0){h=-1;break a}j=h+l|0;if(j>>>0>o>>>0){h=-1;break a}Bk(h|0,k+2|0,l|0)|0;c[g+8+(m<<3)+4>>2]=h;b[g+8+(m<<3)>>1]=l;m=m+1|0;if(!((i+2|0)>>>0<f>>>0&m>>>0<(d[n>>0]|0)>>>0))break;else h=j}}else{j=h;i=6}if(i>>>0<f>>>0){m=a[e+i>>0]|0;h=i+1|0;n=g+5|0;a[n>>0]=m;if((i+3|0)>>>0<f>>>0&m<<24>>24!=0){m=0;do{k=e+h|0;l=(d[k>>0]|0)<<8|(d[e+(h+1)>>0]|0);h=h+2+l|0;if(h>>>0>f>>>0){h=-1;break a}i=j;j=j+l|0;if(j>>>0>o>>>0){h=-1;break a}Bk(i|0,k+2|0,l|0)|0;c[g+264+(m<<3)+4>>2]=i;b[g+264+(m<<3)>>1]=l;m=m+1|0}while((h+2|0)>>>0<f>>>0&m>>>0<(d[n>>0]|0)>>>0)}}else h=-1}else h=-1;while(0);return h|0}function Yi(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;i=0-q|0;j=a+6+(i<<1)|0;f=a+(q<<2<<1)+-2|0;d=f+(0-(c&-2)<<1)|0;p=a+((q*14|0)+-2)|0;o=a+((c+-2&-2)-(c>>>1<<2))|0;h=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(i<<1)|0;l=(H((e[j+(g<<1)>>1]|0)-(e[j+(0-g<<1)>>1]|0)|0,g)|0)+c|0;h=(H((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+h|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(h*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(H(g+n|0,-3)|0)+16+((e[o+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+n>>5;b[c+2>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+h>>5;b[c+4>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+i>>5;b[c+6>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+j>>5;b[c+8>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+k>>5;b[c+10>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+l>>5;b[c+12>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+m>>5;b[c+14>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Zi(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function _i(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function $i(a){a=a|0;var 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;n=((b[a>>1]|0)*16383|0)+524256|0;s=a+32|0;i=b[s>>1]|0;d=n+(H(i,-8867)|0)|0;r=n+(H(i,-21407)|0)|0;o=a+16|0;c=b[o>>1]|0;p=a+48|0;q=b[p>>1]|0;f=(q*19266|0)+(c*22725|0)|0;e=(H(q,-4520)|0)+(c*19266|0)|0;g=(H(q,-22725)|0)+(c*12873|0)|0;c=(H(q,-12873)|0)+(c*4520|0)|0;q=a+64|0;h=b[q>>1]|0;m=h<<16>>16==0;h=h<<16>>16;j=H(h,-16383)|0;h=m?0:h*16383|0;l=n+(i*21407|0)+h|0;j=m?0:j;i=n+(i*8867|0)+j|0;j=d+j|0;h=r+h|0;r=a+80|0;d=b[r>>1]|0;if(!(d<<16>>16)){m=f;d=g}else{d=d<<16>>16;c=(d*19266|0)+c|0;e=(H(d,-22725)|0)+e|0;m=(d*12873|0)+f|0;d=(d*4520|0)+g|0}n=a+96|0;f=b[n>>1]|0;if(!(f<<16>>16)){k=h;g=l}else{g=f<<16>>16;k=(H(g,-8867)|0)+h|0;j=(g*21407|0)+j|0;i=(H(g,-21407)|0)+i|0;g=(g*8867|0)+l|0}h=a+112|0;f=b[h>>1]|0;if(!(f<<16>>16))f=m;else{l=f<<16>>16;c=(H(l,-22725)|0)+c|0;e=(H(l,-12873)|0)+e|0;f=(l*4520|0)+m|0;d=(l*19266|0)+d|0}b[a>>1]=f+g>>20;b[o>>1]=e+i>>20;b[s>>1]=d+j>>20;b[p>>1]=c+k>>20;b[q>>1]=k-c>>20;b[r>>1]=j-d>>20;b[n>>1]=i-e>>20;b[h>>1]=g-f>>20;return}function aj(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;x=a+156|0;y=c[a+144>>2]|0;p=+f[a+152>>2];q=d+260|0;r=a+132|0;s=y+-2|0;t=+f[a+148>>2];u=((s|0)>0?s:0)+3&-4;v=(u|0)<(y|0);w=a+160+(u<<2)|0;h=c[x>>2]|0;o=0;while(1){if((o|0)>=(c[q>>2]|0))break;l=(c[e+(o<<2)>>2]|0)+(c[r>>2]<<2)|0;m=c[d+(o<<2)>>2]|0;n=c[b+(o<<2)>>2]|0;k=0;h=c[x>>2]|0;while(1){if((k|0)>=(g|0))break;i=p*+(c[m+(k<<2)>>2]|0);j=0;while(1){if((j|0)>=(s|0))break;z=j+h|0;i=i-(+f[a+160+(j<<2)>>2]*+f[a+240+(o*160|0)+(z<<2)>>2]+ +f[a+160+((j|1)<<2)>>2]*+f[a+240+(o*160|0)+(z+1<<2)>>2]+ +f[a+160+((j|2)<<2)>>2]*+f[a+240+(o*160|0)+(z+2<<2)>>2]+ +f[a+160+((j|3)<<2)>>2]*+f[a+240+(o*160|0)+(z+3<<2)>>2]);j=j+4|0}if(v)i=i-+f[w>>2]*+f[a+240+(o*160|0)+(u+h<<2)>>2];z=((h|0)==0?y:h)+-1|0;A=+XT(+(i+ +f[l+(k<<2)>>2]));i=A-i;f[a+240+(o*160|0)+(z<<2)>>2]=i;f[a+240+(o*160|0)+(z+y<<2)>>2]=i;i=A*t;i=i>2147483647.0?2147483647.0:i;c[n+(k<<2)>>2]=~~(i>-2147483648.0?i:-2147483648.0);k=k+1|0;h=z}o=o+1|0}c[x>>2]=h;return}function bj(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=Nb;Nb=Nb+16|0;i=k;j=h>>1;if(!f){f=e[a+-2>>1]|0;g=f}else{g=e[a+-2>>1]|0;f=e[a+(~j<<1)>>1]|0}s=e[a+(j+-1<<1)>>1]|0;r=s+2|0;q=e[a+((h&-2)+-1<<1)>>1]|0;p=q+2|0;o=e[a+((j*3|0)+-1<<1)>>1]|0;n=e[a+((j<<2)+-1<<1)>>1]|0;m=e[a+((j*5|0)+-1<<1)>>1]|0;l=e[a+((j*6|0)+-1<<1)>>1]|0;h=e[a+((j*7|0)+-1<<1)>>1]|0;b[i>>1]=(r+f+(g<<1)|0)>>>2;b[i+2>>1]=(p+g+(s<<1)|0)>>>2;b[i+4>>1]=(r+(q<<1)+o|0)>>>2;b[i+6>>1]=(p+(o<<1)+n|0)>>>2;b[i+8>>1]=(o+2+(n<<1)+m|0)>>>2;b[i+10>>1]=(n+2+(m<<1)+l|0)>>>2;b[i+12>>1]=(m+2+(l<<1)+h|0)>>>2;b[i+14>>1]=(l+2+(h*3|0)|0)>>>2;h=0;g=a;f=d;while(1){if((h|0)==8)break;s=(c[f>>2]|0)+(e[i+(h<<1)>>1]|0)|0;b[g>>1]=s;s=(c[f+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[f+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[f+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[f+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[f+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[f+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[f+28>>2]|0)+s;h=h+1|0;g=g+(j<<1)|0;f=f+32|0}jq(d|0,0,256)|0;Nb=k;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=Nb;Nb=Nb+16|0;g=m;if((f|0)<=-1){c[g>>2]=209563;c[g+4>>2]=209579;c[g+8>>2]=106;mx(0,0,214689,g);ba()}if(!f){f=fM()|0;f=(f|0)>1?f+1|0:1}j=(e|0)==0;l=f+(j<<31>>31)|0;k=rR(120)|0;c[a>>2]=k;a:do if(!k)f=-12;else{if(l|0?(i=BO(l,88)|0,c[k>>2]=i,(i|0)==0):0){zM(a);f=-12;break}c[k+108>>2]=b;c[k+112>>2]=d;c[k+116>>2]=e;b=k+4|0;c[b>>2]=f;g=k+8|0;c[k+104>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;RU(k+24|0,0)|0;xb(k+52|0,0)|0;c[k+100>>2]=0;g=0;while(1){if((g|0)>=(l|0))break a;n=c[k>>2]|0;i=n+(g*88|0)|0;c[i>>2]=k;d=n+(g*88|0)+4|0;RU(d,0)|0;e=n+(g*88|0)+32|0;xb(e|0,0)|0;JV(d)|0;h=n+(g*88|0)+84|0;c[h>>2]=0;i=Ab(n+(g*88|0)+80|0,0,31,i|0)|0;if(i|0)break;while(1){if(c[h>>2]|0)break;zb(e|0,d|0)|0}JV(d)|0;g=g+1|0}c[b>>2]=g+(j&1);JV(d)|0;wb(e|0)|0;JV(d)|0;tq(a);f=0-i|0}while(0);Nb=m;return f|0}function dj(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function ej(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function fj(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function gj(a,d,e,g,h){a=a|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0;y=a+156|0;z=c[y>>2]|0;A=c[a+144>>2]|0;q=+f[a+152>>2];r=c[e+260>>2]|0;s=a+132|0;t=A+-2|0;u=+f[a+148>>2];v=((t|0)>0?t:0)+3&-4;w=(v|0)<(A|0);x=a+160+(v<<2)|0;i=z;p=0;while(1){if((p|0)>=(r|0))break;m=(c[g+(p<<2)>>2]|0)+(c[s>>2]<<2)|0;n=c[e+(p<<2)>>2]|0;o=c[d+(p<<2)>>2]|0;l=0;i=z;while(1){if((l|0)>=(h|0))break;j=q*+(b[n+(l<<1)>>1]|0);k=0;while(1){if((k|0)>=(t|0))break;B=k+i|0;j=j-(+f[a+160+(k<<2)>>2]*+f[a+240+(p*160|0)+(B<<2)>>2]+ +f[a+160+((k|1)<<2)>>2]*+f[a+240+(p*160|0)+(B+1<<2)>>2]+ +f[a+160+((k|2)<<2)>>2]*+f[a+240+(p*160|0)+(B+2<<2)>>2]+ +f[a+160+((k|3)<<2)>>2]*+f[a+240+(p*160|0)+(B+3<<2)>>2]);k=k+4|0}if(w)j=j-+f[x>>2]*+f[a+240+(p*160|0)+(v+i<<2)>>2];B=((i|0)==0?A:i)+-1|0;C=+XT(+(j+ +f[m+(l<<2)>>2]));j=C-j;f[a+240+(p*160|0)+(B<<2)>>2]=j;f[a+240+(p*160|0)+(B+A<<2)>>2]=j;j=C*u;j=j>32767.0?32767.0:j;b[o+(l<<1)>>1]=~~(j>-32768.0?j:-32768.0);l=l+1|0;i=B}p=p+1|0}c[y>>2]=i;return}function hj(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function ij(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==8)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function jj(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==8)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function kj(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function lj(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==16)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function mj(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==16)break;h=a+-6|0;d=e[h>>1]|0;f=a+-4|0;k=e[f>>1]|0;c=a+-2|0;l=e[c>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(t|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(r|0)):0){if((g|0)>=(s|0)){b[c>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=d-l|0;if((((i|0)>-1?i:0-i|0)|0)<(r|0)){v=e[a+-8>>1]|0;g=m+l|0;b[c>>1]=(o+4+d+(g+k<<1)|0)>>>3;b[f>>1]=(l+2+d+k+m|0)>>>2;i=k+4+(d*3|0)|0;c=h;d=3;f=v<<1}else{i=l+2|0;d=2;f=o;g=k<<1}b[c>>1]=(i+g+f|0)>>>d;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function nj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(a|0){if(wU(a)|0){f=a+64|0;b=c[f>>2]|0;e=c[b+16>>2]|0;if((c[b+52>>2]|0)!=0?(c[a+800>>2]|0)>1:0){yt(a);b=c[f>>2]|0}if(c[b+20>>2]|0)jP(a);b=c[a+12>>2]|0;if(b|0?(d=c[b+92>>2]|0,d|0):0)Wb[d&31](a)|0;b=c[f>>2]|0;c[b+48>>2]=0;zM(b+44|0);iQ((c[f>>2]|0)+12|0);iQ((c[f>>2]|0)+100|0);iQ((c[f>>2]|0)+76|0);fQ((c[f>>2]|0)+68|0);fQ((c[f>>2]|0)+40|0);fQ((c[f>>2]|0)+24|0);b=0;while(1){if((b|0)==4)break;gM(e+(b<<2)|0);b=b+1|0}zM((c[f>>2]|0)+16|0);b=c[a+704>>2]|0;if(b|0?(g=c[b+52>>2]|0,g|0):0)Wb[g&31](a)|0;zM((c[f>>2]|0)+60|0);BI(a);zM(f)}d=a+972|0;e=a+968|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;zM((c[e>>2]|0)+(b*12|0)|0);b=b+1|0}zM(e);c[d>>2]=0;nT(a+976|0);nT(a+1e3|0);d=a+60|0;e=c[d>>2]|0;b=a+12|0;if((e|0?(h=c[b>>2]|0,h|0):0)?c[h+44>>2]|0:0)CE(e);CE(a);zM(d);if(UM(c[b>>2]|0)|0){zM(a+100|0);iQ(a+796|0)}c[b>>2]=0;c[a+808>>2]=0}return 0}function oj(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=Nb;Nb=Nb+16|0;k=l;if(!g){g=d[c+-1>>0]|0;h=g}else{h=d[c+-1>>0]|0;g=d[c+~i>>0]|0}t=d[c+(i+-1)>>0]|0;s=t+2|0;r=d[c+((i<<1)+-1)>>0]|0;q=r+2|0;p=d[c+((i*3|0)+-1)>>0]|0;o=d[c+((i<<2)+-1)>>0]|0;n=d[c+((i*5|0)+-1)>>0]|0;m=d[c+((i*6|0)+-1)>>0]|0;j=d[c+((i*7|0)+-1)>>0]|0;a[k>>0]=(s+g+(h<<1)|0)>>>2;a[k+1>>0]=(q+h+(t<<1)|0)>>>2;a[k+2>>0]=(s+(r<<1)+p|0)>>>2;a[k+3>>0]=(q+(p<<1)+o|0)>>>2;a[k+4>>0]=(p+2+(o<<1)+n|0)>>>2;a[k+5>>0]=(o+2+(n<<1)+m|0)>>>2;a[k+6>>0]=(n+2+(m<<1)+j|0)>>>2;a[k+7>>0]=(m+2+(j*3|0)|0)>>>2;j=0;h=c;g=f;while(1){if((j|0)==8)break;t=(e[g>>1]|0)+(d[k+j>>0]|0)|0;a[h>>0]=t;t=t+(e[g+2>>1]|0)|0;a[h+1>>0]=t;t=t+(e[g+4>>1]|0)|0;a[h+2>>0]=t;t=t+(e[g+6>>1]|0)|0;a[h+3>>0]=t;t=t+(e[g+8>>1]|0)|0;a[h+4>>0]=t;t=t+(e[g+10>>1]|0)|0;a[h+5>>0]=t;t=t+(e[g+12>>1]|0)|0;a[h+6>>0]=t;a[h+7>>0]=t+(e[g+14>>1]|0);j=j+1|0;h=h+i|0;g=g+16|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));Nb=l;return}function pj(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;w=(d[b>>0]|0)-(d[a>>0]|0)|0;v=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;u=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;t=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;s=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;r=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;q=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;p=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;o=(d[b+8>>0]|0)-(d[a+8>>0]|0)|0;n=(d[b+9>>0]|0)-(d[a+9>>0]|0)|0;m=(d[b+10>>0]|0)-(d[a+10>>0]|0)|0;l=(d[b+11>>0]|0)-(d[a+11>>0]|0)|0;k=(d[b+12>>0]|0)-(d[a+12>>0]|0)|0;j=(d[b+13>>0]|0)-(d[a+13>>0]|0)|0;i=(d[b+14>>0]|0)-(d[a+14>>0]|0)|0;c=(d[b+15>>0]|0)-(d[a+15>>0]|0)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function qj(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=a[c>>0]|0;h=a[e>>0]|0;p=(b&255)-(h&255)|0;j=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;q=j-p|0;k=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;j=k-j|0;l=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;k=l-k|0;m=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;l=m-l|0;n=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;m=n-m|0;i=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;n=i-n|0;i=(d[c+7>>0]|0)-(d[e+7>>0]|0)-i|0;o=1;i=((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((i|0)>-1?i:0-i|0)|0;while(1){k=c+f|0;l=e+f|0;if((o|0)>=(g|0))break;m=a[k>>0]|0;n=a[l>>0]|0;b=(h&255)-(b&255)+((m&255)-(n&255))|0;j=1;b=((b|0)>-1?b:0-b|0)+i|0;h=m;i=n;while(1){if((j|0)==8)break;p=a[k+j>>0]|0;q=a[l+j>>0]|0;s=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;t=(h&255)-(i&255)|0;r=j-f+-1|0;r=(p&255)-(q&255)-(GM(s,t,t+s-(d[k+r>>0]|0)+(d[l+r>>0]|0)|0)|0)|0;j=j+1|0;b=((r|0)>-1?r:0-r|0)+b|0;h=p;i=q}o=o+1|0;i=b;e=l;c=k;b=m;h=n}return i|0}function rj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=a+12|0;rv(c[e>>2]|0);qN(c[e>>2]|0,b);a=RT(b,c[e>>2]|0)|0;a:do if((a|0)>=0){a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];c[b+28>>2]=c[a+28>>2];a=b+32|0;d=(c[e>>2]|0)+32|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c[d+16>>2];c[a+20>>2]=c[d+20>>2];c[a+24>>2]=c[d+24>>2];c[a+28>>2]=c[d+28>>2];a=c[e>>2]|0;do if((c[a+64>>2]|0)!=(a|0)){a=c[a+352>>2]<<2;if(!a){rv(b);a=-558323010;break a}d=Ax(a)|0;c[b+64>>2]=d;if(!d){rv(b);a=-12;break a}else{e=c[e>>2]|0;Bk(d|0,c[e+64>>2]|0,a|0)|0;a=e;break}}else c[b+64>>2]=b;while(0);c[b+80>>2]=c[a+80>>2];c[b+68>>2]=c[a+68>>2];c[b+72>>2]=c[a+72>>2];f=a+240|0;d=c[f+4>>2]|0;e=b+240|0;c[e>>2]=c[f>>2];c[e+4>>2]=d;c[b+76>>2]=c[a+76>>2];c[b+352>>2]=c[a+352>>2];a=0}while(0);return a|0}function sj(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==8)break;k=b+-3|0;i=d[k>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(l=n-o|0,(((l|0)>-1?l:0-l|0)|0)<(f|0)):0)?(l=r-p|0,(((l|0)>-1?l:0-l|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(p+2+n+(r<<1)|0)>>>2;break}l=i-o|0;if((((l|0)>-1?l:0-l|0)|0)<(f|0)){w=d[b+-4>>0]|0;v=p+o|0;a[g>>0]=(r+4+i+(v+n<<1)|0)>>>3;a[j>>0]=(o+2+i+n+p|0)>>>2;l=n+4+(i*3|0)|0;g=k;h=3;i=w<<1;j=v}else{l=o+2|0;h=2;i=r;j=n<<1}a[g>>0]=(l+j+i|0)>>>h;w=t-p|0;if((((w|0)>-1?w:0-w|0)|0)<(f|0)){w=d[b+3>>0]|0;v=p+o+r|0;a[b>>0]=(n+4+t+(v<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(v+4+(t*3|0)+(w<<1)|0)>>>3;break}else{a[b>>0]=(p+2+n+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function tj(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=a+32|0;z=a+36|0;h=c[z>>2]|0;s=c[a+48>>2]|0;i=0;j=c[y>>2]|0;while(1){if((j|0)<(s|0))break;i=i+1|0;j=j-s|0}t=a+4|0;u=a+12|0;v=a+8|0;w=a+28|0;x=a+24|0;r=a+40|0;q=0;while(1){if((q|0)>=(f|0))break;l=(c[t>>2]|0)+((H(c[u>>2]|0,j)|0)<<1)|0;m=c[v>>2]|0;n=((m|0)>1?m:1)&2147483646;k=0;p=0;a=16384;while(1){o=k|1;if((o|0)>=(m|0))break;B=k+i|0;A=(H(b[l+(k<<1)>>1]|0,b[e+(B<<1)>>1]|0)|0)+a|0;k=k+2|0;p=(H(b[l+(o<<1)>>1]|0,b[e+(B+1<<1)>>1]|0)|0)+p|0;a=A}if((n|0)<(m|0))a=(H(b[l+(n<<1)>>1]|0,b[e+(n+i<<1)>>1]|0)|0)+a|0;a=kP(a|0,((a|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;a=YM(a|0,M()|0,15)|0;M()|0;b[d+(q<<1)>>1]=(a+32768|0)>>>0>65535?a>>31^32767:a;a=(c[w>>2]|0)+h|0;h=c[r>>2]|0;B=(a|0)<(h|0);h=B?0:h;j=(c[x>>2]|0)+j+((B^1)&1)|0;while(1){if((j|0)<(s|0))break;i=i+1|0;j=j-s|0}q=q+1|0;h=a-h|0}if(g|0){c[z>>2]=h;c[y>>2]=j}return i|0}function uj(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==16)break;k=b+-3|0;i=d[k>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(l=n-o|0,(((l|0)>-1?l:0-l|0)|0)<(f|0)):0)?(l=r-p|0,(((l|0)>-1?l:0-l|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(p+2+n+(r<<1)|0)>>>2;break}l=i-o|0;if((((l|0)>-1?l:0-l|0)|0)<(f|0)){w=d[b+-4>>0]|0;v=p+o|0;a[g>>0]=(r+4+i+(v+n<<1)|0)>>>3;a[j>>0]=(o+2+i+n+p|0)>>>2;l=n+4+(i*3|0)|0;g=k;h=3;i=w<<1;j=v}else{l=o+2|0;h=2;i=r;j=n<<1}a[g>>0]=(l+j+i|0)>>>h;w=t-p|0;if((((w|0)>-1?w:0-w|0)|0)<(f|0)){w=d[b+3>>0]|0;v=p+o+r|0;a[b>>0]=(n+4+t+(v<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(v+4+(t*3|0)+(w<<1)|0)>>>3;break}else{a[b>>0]=(p+2+n+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function vj(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=0-c|0;l=b+7+k|0;i=b+(c<<3)+-1|0;h=i+(0-(c<<1))|0;j=(c*15|0)+-1|0;m=~c;g=2;n=(d[i>>0]|0)-(d[h>>0]|0)|0;o=(d[l+1>>0]|0)-(d[l+-1>>0]|0)|0;while(1){if((g|0)==9)break;p=i+c|0;q=h+k|0;r=(H((d[l+g>>0]|0)-(d[l+(0-g)>>0]|0)|0,g)|0)+o|0;s=(H((d[p>>0]|0)-(d[q>>0]|0)|0,g)|0)+n|0;g=g+1|0;n=s;o=r;h=q;i=p}h=b+j|0;g=b+m|0;do if(!e)if(!f){f=(n*5|0)+32>>6;k=(o*5|0)+32>>6;break}else{f=(n>>2)+n>>4;k=(o>>2)+o>>4;break}else{f=(((o|0)/4|0)*5|0)/16|0;k=(((n|0)/4|0)*5|0)/16|0}while(0);l=k<<1;m=k*3|0;e=k<<2;i=(H(f+k|0,-7)|0)+16+((d[g+16>>0]|0)+(d[h>>0]|0)<<4)|0;j=16;while(1){if(!j)break;g=i;h=-16;while(1){if((h|0)>=0)break;s=g>>5;a[b+(h+16)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+k>>5;a[b+(h+17)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+l>>5;a[b+(h+18)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+m>>5;a[b+(h+19)>>0]=s>>>0>255?(s^-2147483648)>>31:s;g=g+e|0;h=h+4|0}i=i+f|0;j=j+-1|0;b=b+c|0}return}function wj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=Nb;Nb=Nb+32|0;l=o+24|0;k=o+16|0;j=o;m=a+4|0;e=c[(c[m>>2]|0)+4>>2]|0;h=a+16|0;d=c[h>>2]|0;a:do if(!e)n=13;else{f=c[d+4>>2]|0;b=0;while(1){g=c[e+(b<<2)>>2]|0;if(!g)break;if((f|0)==(g|0)){n=13;break a}else b=b+1|0}b=IL(f)|0;if(!b)b=209198;else b=c[b+8>>2]|0;i=c[(c[h>>2]|0)+4>>2]|0;d=c[c[m>>2]>>2]|0;c[j>>2]=b;c[j+4>>2]=i;c[j+8>>2]=d;mx(a,16,191774,j);d=0;while(1){b=c[(c[(c[m>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;if(!b)break;b=IL(b)|0;if(!b)b=209198;else b=c[b+8>>2]|0;j=c[(c[(c[m>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;c[k>>2]=b;c[k+4>>2]=j;mx(a,16,191860,k);d=d+1|0}mx(a,16,214486,l);b=-22}while(0);do if((n|0)==13){b=Jv(c[a+20>>2]|0,d)|0;if((b|0)>=0){l=a+24|0;n=c[l+4>>2]|0;b=a+32|0;c[b>>2]=c[l>>2];c[b+4>>2]=n;b=c[(c[m>>2]|0)+16>>2]|0;if(b|0?(i=Wb[b&31](a)|0,(i|0)<0):0){b=i;break}b=0}}while(0);Nb=o;return b|0}function xj(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;l=Nb;Nb=Nb+16|0;h=l;j=(g|0)==0?1136552:g;g=c[j>>2]|0;a:do if(!e)if(!g)g=0;else k=19;else{i=(b|0)==0?h:b;if(!f)g=-2;else{if(!g){g=a[e>>0]|0;if(g<<24>>24>-1){c[i>>2]=g&255;g=g<<24>>24!=0&1;break}h=(zV()|0)+188|0;g=a[e>>0]|0;if(!(c[c[h>>2]>>2]|0)){c[i>>2]=g<<24>>24&57343;g=1;break}g=(g&255)+-194|0;if(g>>>0>50){k=19;break}g=c[157232+(g<<2)>>2]|0;h=f+-1|0;if(h){e=e+1|0;k=11}}else{h=f;k=11}b:do if((k|0)==11){b=d[e>>0]|0;m=b>>>3;if((m+-16|m+(g>>26))>>>0>7){k=19;break a}g=b+-128|g<<6;b=h+-1|0;if((g|0)<0)do{e=e+1|0;if(!b)break b;h=a[e>>0]|0;if((h&-64)<<24>>24!=-128){k=19;break a}g=(h&255)+-128|g<<6;b=b+-1|0}while((g|0)<0);c[j>>2]=0;c[i>>2]=g;g=f-b|0;break a}while(0);c[j>>2]=g;g=-2}}while(0);if((k|0)==19){c[j>>2]=0;g=PV()|0;c[g>>2]=84;g=-1}Nb=l;return g|0}function yj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+32|0;j=l+16|0;e=l+8|0;d=l;f=c[(c[a+64>>2]|0)+16>>2]|0;h=b+80|0;i=MT(c[h>>2]|0)|0;do if((((c[b>>2]|0)==0?(g=b+4|0,(c[g>>2]|0)==0):0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){if(!i){d=rQ(c[h>>2]|0)|0;c[e>>2]=d;mx(a,16,167701,e);d=-22;break}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;c[b+64>>2]=b;d=0;while(1){if(d>>>0>=4)break;e=c[f+(d<<2)>>2]|0;if(!e)break;c[b+32+(d<<2)>>2]=c[f+60+(d<<2)>>2];e=rt(e)|0;c[b+248+(d<<2)>>2]=e;if(!e){k=20;break}c[b+(d<<2)>>2]=c[e+4>>2];d=d+1|0}if((k|0)==20){rv(b);d=-12;break}while(1){if(d>>>0>=8)break;c[b+(d<<2)>>2]=0;c[b+32+(d<<2)>>2]=0;d=d+1|0}if(!(0==0?(c[i+8>>2]&66|0)==0:0))Zq(c[g>>2]|0,c[h>>2]|0)|0;if(!(c[a+680>>2]&32768))d=0;else{c[j>>2]=b;mx(a,48,167754,j);d=0}}else k=5;while(0);if((k|0)==5){mx(a,16,167651,d);d=-1}Nb=l;return d|0}function zj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=Nb;Nb=Nb+16|0;s=u;f=(c[e+4>>2]|0)==2;if(f)r=7;else r=(c[a+6472>>2]|0)==1?20:12;p=e+92|0;q=f?1:2;k=(f&1)<<1;j=6-k|0;k=5-k|0;h=0;a:while(1){if((h|0)>=(c[p>>2]|0)){e=0;break}o=Yz(d,q)|0;l=b+4+(h<<2)|0;c[l>>2]=o;b:do if(o|0){m=NL(d)|0;n=m+3|0;i=0;while(1){if((i|0)>=(c[l>>2]|0))break b;e=Yz(d,j)|0;c[b+36+(h<<4)+(i<<2)>>2]=e;e=Yz(d,k)|0;o=b+292+(h<<4)+(i<<2)|0;c[o>>2]=e;if((e|0)>(r|0)){t=9;break a}c:do if(e|0){g=NL(d)|0;c[b+164+(h<<4)+(i<<2)>>2]=g;g=NL(d)|0;f=n-g|0;g=43632+((g<<1)+m<<2)|0;e=0;while(1){if((e|0)>=(c[o>>2]|0))break c;v=c[g>>2]|0;v=v+((Yz(d,f)|0)<<2)|0;c[b+2980+(h*320|0)+(i*80|0)+(e<<2)>>2]=c[v>>2];e=e+1|0}}while(0);i=i+1|0}}while(0);h=h+1|0}if((t|0)==9){v=c[a+4>>2]|0;c[s>>2]=e;c[s+4>>2]=r;mx(v,16,188736,s);c[o>>2]=0;e=-1094995529}Nb=u;return e|0}function Aj(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Nb;Nb=Nb+96|0;p=q+16|0;n=q+8|0;o=q;k=q+40|0;j=b+96|0;h=c[j>>2]|0;if(h|0){ya(h|0)|0;c[j>>2]=0}m=b+92|0;h=c[m>>2]|0;if(h|0){TS(h);c[m>>2]=0}if(a[d>>0]|0){l=b+80|0;h=c[l>>2]|0;if(h|0){qd(h);c[l>>2]=0}h=AO(d)|0;c[l>>2]=h;Ba(k|0);h=xa(d|0,k|0)|0;c[j>>2]=h;Ca(h|0)|0;oa(d|0,n|0,o|0)|0;h=b+84|0;j=b+88|0;na(d|0,h|0,j|0)|0;e=+g[n>>3];i=+g[o>>3];do if((e!=300.0&i!=150.0?(c[h>>2]|0)==300:0)?(c[j>>2]|0)==150:0)if(!(a[b+251>>0]|0)){k=~~e;c[h>>2]=k;d=~~i;c[j>>2]=d;sa(c[l>>2]|0,k|0,d|0)|0;break}else{k=~~(e*f);c[h>>2]=k;d=~~(i*f);c[j>>2]=d;sa(c[l>>2]|0,k|0,d|0)|0;break}while(0);f=+g[o>>3];d=c[h>>2]|0;o=c[j>>2]|0;g[p>>3]=+g[n>>3];g[p+8>>3]=f;c[p+16>>2]=d;c[p+20>>2]=o;EN(163137,p)|0;p=EP(c[h>>2]|0,c[j>>2]|0)|0;c[m>>2]=p}Nb=q;return 0}function Bj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;f=j;e=a+64|0;i=c[(c[e>>2]|0)+20>>2]|0;c[b+8>>2]=a;c[b+4>>2]=a;Ce(a,c[b>>2]|0)|0;a:do if(!(c[a+808>>2]&1))e=YI(a,c[b>>2]|0,d)|0;else{h=i+300|0;do if((c[h>>2]|0)!=1){if(!(c[(c[a+12>>2]|0)+64>>2]|0)){if(c[a+812>>2]|0)break;if((c[a+472>>2]|0)==9)break}mx(a,16,185108,f);e=-1;break a}while(0);if(c[(c[e>>2]|0)+4>>2]|0){e=cI(8)|0;c[b+12>>2]=e;if(!e){e=-12;break}g=c[e+4>>2]|0;c[g>>2]=-1;c[g+4>>2]=-1}JV((c[i>>2]|0)+8|0)|0;g=a+812|0;if((c[g>>2]|0)==0?(c[a+472>>2]|0)!=9:0){f=i+184|0;JV(f)|0;c[i+316>>2]=c[b>>2];c[i+320>>2]=d;c[h>>2]=2;e=i+60|0;JV(e|0)|0;while(1){if((c[h>>2]|0)==1)break;zb(e|0,f|0)|0}e=c[i+296>>2]|0;JV(f)|0}else e=YI(a,c[b>>2]|0,d)|0;if(((c[g>>2]|0)==0?(c[a+472>>2]|0)!=9:0)?(c[(c[a+12>>2]|0)+64>>2]|0)==0:0)Pq(a);if(e|0)nT(b+12|0);JV((c[i>>2]|0)+8|0)|0}while(0);Nb=j;return e|0}function Cj(a,b,d,e,h){a=a|0;b=b|0;d=d|0;e=e|0;h=h|0;var i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0;y=a+156|0;z=c[y>>2]|0;A=c[a+144>>2]|0;q=c[d+260>>2]|0;r=a+132|0;s=+f[a+152>>2];t=A+-2|0;u=+f[a+148>>2];v=((t|0)>0?t:0)+3&-4;w=(v|0)<(A|0);x=a+160+(v<<2)|0;i=z;p=0;while(1){if((p|0)>=(q|0))break;m=(c[e+(p<<2)>>2]|0)+(c[r>>2]<<2)|0;n=c[d+(p<<2)>>2]|0;o=c[b+(p<<2)>>2]|0;l=0;i=z;while(1){if((l|0)>=(h|0))break;j=+g[n+(l<<3)>>3]*s;k=0;while(1){if((k|0)>=(t|0))break;B=k+i|0;j=j-(+f[a+160+(k<<2)>>2]*+f[a+240+(p*160|0)+(B<<2)>>2]+ +f[a+160+((k|1)<<2)>>2]*+f[a+240+(p*160|0)+(B+1<<2)>>2]+ +f[a+160+((k|2)<<2)>>2]*+f[a+240+(p*160|0)+(B+2<<2)>>2]+ +f[a+160+((k|3)<<2)>>2]*+f[a+240+(p*160|0)+(B+3<<2)>>2]);k=k+4|0}if(w)j=j-+f[x>>2]*+f[a+240+(p*160|0)+(v+i<<2)>>2];B=((i|0)==0?A:i)+-1|0;C=+XT(+(j+ +f[m+(l<<2)>>2]));j=C-j;f[a+240+(p*160|0)+(B<<2)>>2]=j;f[a+240+(p*160|0)+(B+A<<2)>>2]=j;g[o+(l<<3)>>3]=C*u;l=l+1|0;i=B}p=p+1|0}c[y>>2]=i;return}function Dj(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0;x=a+156|0;y=c[x>>2]|0;z=c[a+144>>2]|0;p=+f[a+152>>2];q=c[d+260>>2]|0;r=a+132|0;s=z+-2|0;t=+f[a+148>>2];u=((s|0)>0?s:0)+3&-4;v=(u|0)<(z|0);w=a+160+(u<<2)|0;h=y;o=0;while(1){if((o|0)>=(q|0))break;l=(c[e+(o<<2)>>2]|0)+(c[r>>2]<<2)|0;m=c[d+(o<<2)>>2]|0;n=c[b+(o<<2)>>2]|0;k=0;h=y;while(1){if((k|0)>=(g|0))break;i=p*+f[m+(k<<2)>>2];j=0;while(1){if((j|0)>=(s|0))break;A=j+h|0;i=i-(+f[a+160+(j<<2)>>2]*+f[a+240+(o*160|0)+(A<<2)>>2]+ +f[a+160+((j|1)<<2)>>2]*+f[a+240+(o*160|0)+(A+1<<2)>>2]+ +f[a+160+((j|2)<<2)>>2]*+f[a+240+(o*160|0)+(A+2<<2)>>2]+ +f[a+160+((j|3)<<2)>>2]*+f[a+240+(o*160|0)+(A+3<<2)>>2]);j=j+4|0}if(v)i=i-+f[w>>2]*+f[a+240+(o*160|0)+(u+h<<2)>>2];A=((h|0)==0?z:h)+-1|0;B=+XT(+(i+ +f[l+(k<<2)>>2]));i=B-i;f[a+240+(o*160|0)+(A<<2)>>2]=i;f[a+240+(o*160|0)+(A+z<<2)>>2]=i;f[n+(k<<2)>>2]=B*t;k=k+1|0;h=A}o=o+1|0}c[x>>2]=h;return}function Ej(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+32|0;g=h+16|0;e=h+8|0;d=h;c[a+20>>2]=0;b=tp()|0;f=a+40|0;c[f>>2]=b;do if(b){lb(b|0);b=_a(c[f>>2]|0,164217)|0;d=a+52|0;c[d>>2]=b;jJ(164227)|0;if((c[d>>2]|0)==-1){c[e>>2]=164210;EN(164257,e)|0;break}e=_a(c[f>>2]|0,164292)|0;b=a+56|0;c[b>>2]=e;jJ(164306)|0;if((c[b>>2]|0)==-1){c[g>>2]=164210;EN(164340,g)|0;break}else{pr(a);g=a+124|0;Ya(1,g|0);La(34962,c[g>>2]|0);Na(34962,64,a+128|0,35044);mb(c[d>>2]|0,2,5126,0,16,0);jJ(164379)|0;Xa(c[d>>2]|0);jJ(164411)|0;mb(c[b>>2]|0,2,5126,0,16,8);jJ(164452)|0;Xa(c[b>>2]|0);jJ(164488)|0;g=eb(c[f>>2]|0,164528)|0;jJ(164533)|0;kb(g|0,0);jJ(164554)|0;g=eb(c[f>>2]|0,164571)|0;jJ(164576)|0;kb(g|0,1);jJ(164602)|0;g=eb(c[f>>2]|0,164619)|0;jJ(164533)|0;kb(g|0,2);jJ(164624)|0;Pa(0.0,0.0,0.0,1.0);Oa(16384);c[a+24>>2]=1;break}}else{c[d>>2]=164210;EN(164181,d)|0}while(0);Nb=h;return}function Fj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:do if(((b|0)!=0?(d=c[b>>2]|0,(d|0)!=0):0)?(d|0)==(c[a>>2]|0):0){e=0;d=0;while(1){b:while(1){e=sC(b,e)|0;if(!e)break a;h=c[e+8>>2]|0;i=a+h|0;h=b+h|0;f=c[e+12>>2]|0;switch(f|0){case 5:{j=8;break b}case 7:{j=11;break b}case 8:{j=15;break b}case 128:break;default:{f=$h(f)|0;if((f|0)<0){d=f;break b}Bk(i|0,h|0,f|0)|0}}}if((j|0)==8){j=0;f=c[i>>2]|0;if((f|0)!=(c[h>>2]|0)){zM(i);f=c[h>>2]|0}g=sN(f)|0;c[i>>2]=g;d=(g|0)==0&(c[h>>2]|0)!=0?-12:d}else if((j|0)==11){j=0;g=c[h+4>>2]|0;f=c[i>>2]|0;if((f|0)!=(c[h>>2]|0)){zM(i);f=c[h>>2]|0}h=IO(f,g)|0;c[i>>2]=h;h=(g|0)!=0&(h|0)==0;c[i+4>>2]=h?0:g;d=h?-12:d}else if((j|0)==15){j=0;if((c[h>>2]|0)!=(c[i>>2]|0))HC(i);c[i>>2]=0;wI(i,c[h>>2]|0,0)|0;h=QS(c[h>>2]|0)|0;i=(h|0)==(QS(c[i>>2]|0)|0);d=i?d:-12}}}else d=-22;while(0);return d|0}function Gj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Nb;Nb=Nb+32|0;p=q+16|0;o=q;n=g^3;m=(f|0)==0;l=0;f=0;h=0;while(1){if(!((h|0)<(e|0)|(f|0)<(e|0))){f=26;break}k=f;while(1){if((k|0)>=(e|0)){f=0;break}j=c[d+(k<<2)>>2]|0;if(j|0?c[j+640>>2]&g|0:0){f=1;break}k=k+1|0}while(1){if((h|0)>=(e|0)){j=0;break}j=c[d+(h<<2)>>2]|0;if(j|0?c[j+640>>2]&n|0:0){j=1;break}h=h+1|0}if(f){if((l|0)>=(b|0)){f=15;break}f=d+(k<<2)|0;if(m)i=c[(c[f>>2]|0)+88>>2]|0;else i=k;f=c[f>>2]|0;c[f+96>>2]=i;IK(a+(l*40|0)|0,f,g,1);f=l+1|0;k=k+1|0}else f=l;if(j){if((f|0)>=(b|0)){f=21;break}i=c[d+(h<<2)>>2]|0;if(m)j=c[i+88>>2]|0;else j=h;c[i+96>>2]=j;IK(a+(f*40|0)|0,i,n,0);f=f+1|0;h=h+1|0}l=f;f=k}if((f|0)==15){c[o>>2]=198007;c[o+4>>2]=197783;c[o+8>>2]=90;mx(0,0,214689,o);ba()}else if((f|0)==21){c[p>>2]=198007;c[p+4>>2]=197783;c[p+8>>2]=95;mx(0,0,214689,p);ba()}else if((f|0)==26){Nb=q;return l|0}return 0}function Hj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=Nb;Nb=Nb+320|0;g=o+16|0;f=o;m=o+32|0;if((b|0)>=0?(n=a+264|0,d=c[n>>2]|0,k=a+260|0,e=c[k>>2]|0,((1073741823/(d|0)|0|0)/(e|0)|0|0)>=(b|0)):0){l=a+268|0;if((c[l>>2]|0)<(b|0)){j=b<<1;i=(H(d,j)|0)+31&-32;Bk(m|0,a|0,280)|0;if(!d){c[f>>2]=211031;c[f+4>>2]=210702;c[f+8>>2]=407;mx(0,0,214689,f);ba()}if(!e){c[g>>2]=211038;c[g+4>>2]=210702;c[g+8>>2]=408;mx(0,0,214689,g);ba()}h=BO(i,e)|0;g=a+256|0;c[g>>2]=h;if(!h)b=-12;else{h=a+272|0;f=0;while(1){d=c[k>>2]|0;if((f|0)>=(d|0))break;e=(c[h>>2]|0)==0;if(e)b=c[n>>2]|0;else b=i;b=(c[g>>2]|0)+(H(b,f)|0)|0;c[a+(f<<2)>>2]=b;d=c[l>>2]|0;if(!(e|(d|0)==0))Bk(b|0,c[m+(f<<2)>>2]|0,H(c[n>>2]|0,d)|0)|0;f=f+1|0}b=c[l>>2]|0;if(b|0?(c[h>>2]|0)==0:0){k=H(b,d)|0;Bk(c[a>>2]|0,c[m>>2]|0,H(k,c[n>>2]|0)|0)|0}zM(m+256|0);c[l>>2]=j;b=1}}else b=0}else b=-22;Nb=o;return b|0}function Ij(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function Jj(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=H(j,g)|0;s=b+p|0;t=s;s=s+4|0;m=H(j,h)|0;l=e+m|0;r=l;l=l+4|0;k=H(j,f)|0;q=a+k|0;o=q;n=c[o>>2]|0;o=c[o+4>>2]|0;l=fJ(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=fJ(n,o,l,M()|0)|0;o=M()|0;c[q>>2]=l;c[q+4>>2]=o;p=b+(p+8)|0;q=p;p=p+4|0;m=e+(m+8)|0;o=m;m=m+4|0;k=a+(k+8)|0;l=k;n=c[l>>2]|0;l=c[l+4>>2]|0;m=fJ(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;m=fJ(n,l,m,M()|0)|0;l=M()|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function Kj(a,d,e,f,g,h,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;o=Nb;Nb=Nb+16|0;n=o+8|0;k=o;m=a+25628|0;l=c[m>>2]|0;c[l+21788>>2]=h;c[l+21792>>2]=i;e=(H(c[a+27e3>>2]|0,i)|0)+h|0;j=l+21796|0;c[j>>2]=e;e=l+27824|0;f=e+120|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=(c[l+23404>>2]|0)>>>0>d>>>0?d:0;if(!(c[l+23416+(e*40|0)>>2]|0)){mx(c[a+4>>2]|0,48,172054,k);e=0}if((c[l+23416+(e*40|0)+24>>2]&3|0)==3){d=(c[a+24384>>2]|0)+(c[j>>2]<<2)|0;n=e*257&65535;b[d>>1]=n;b[d+2>>1]=n;d=H(e,16843009)|0;c[l+28284>>2]=d;c[l+28292>>2]=d;c[l+28300>>2]=d;c[l+28308>>2]=d;g=c[g+4>>2]<<16|c[g>>2]&65535;c[l+28e3>>2]=g;c[l+28004>>2]=g;c[l+28008>>2]=g;c[l+28012>>2]=g;c[l+28032>>2]=g;c[l+28036>>2]=g;c[l+28040>>2]=g;c[l+28044>>2]=g;c[l+28064>>2]=g;c[l+28068>>2]=g;c[l+28072>>2]=g;c[l+28076>>2]=g;c[l+28096>>2]=g;c[l+28100>>2]=g;c[l+28104>>2]=g;c[l+28108>>2]=g;c[l+21828>>2]=0;c[l+21832>>2]=0;mO(a,c[m>>2]|0)}else mx(c[a+4>>2]|0,48,172100,n);Nb=o;return}function Lj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0;i=Nb;Nb=Nb+144|0;e=i+96|0;g=i+48|0;h=i;j=c+152|0;km(e,b,j);km(g,b+8|0,j);km(h,b+16|0,j);b=0;while(1){if((b|0)==5)break;p=+f[g+(b<<3)>>2];m=+f[c+(b<<3)>>2];r=+f[g+(b<<3)+4>>2];k=+f[c+(b<<3)+4>>2];l=+f[h+(b<<3)>>2];u=b<<1;q=+f[c+(u<<3)>>2];n=+f[h+(b<<3)+4>>2];o=+f[c+(u<<3)+4>>2];t=+f[e+(b<<3)>>2];j=H(b,d)|0;f[a+(j<<3)>>2]=p*m-r*k+t+(l*q-n*o);s=+f[e+(b<<3)+4>>2];f[a+(j<<3)+4>>2]=q*n+l*o+(m*r+p*k+s);j=b+5|0;k=+f[c+(j<<3)>>2];m=+f[c+(j<<3)+4>>2];v=j<<1;o=+f[c+(v<<3)>>2];q=+f[c+(v<<3)+4>>2];j=H(j,d)|0;f[a+(j<<3)>>2]=t+(p*k-r*m)+(l*o-n*q);f[a+(j<<3)+4>>2]=s+(r*k+p*m)+(n*o+l*q);j=b+10|0;q=+f[c+(j<<3)>>2];o=+f[c+(j<<3)+4>>2];u=u+5|0;m=+f[c+(u<<3)>>2];k=+f[c+(u<<3)+4>>2];j=H(j,d)|0;f[a+(j<<3)>>2]=t+(p*q-r*o)+(l*m-n*k);f[a+(j<<3)+4>>2]=s+(r*q+p*o)+(n*m+l*k);b=b+1|0}Nb=i;return}function Mj(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0-c|0;j=b+3+i|0;g=b+(c<<2)+-1|0;f=g+(0-(c<<1))|0;p=(c*7|0)+-1|0;q=~c;k=(d[g>>0]|0)-(d[f>>0]|0)|0;e=(d[j+1>>0]|0)-(d[j+-1>>0]|0)|0;h=2;while(1){if((h|0)==5)break;o=g+c|0;n=f+i|0;m=(H((d[j+h>>0]|0)-(d[j+(0-h)>>0]|0)|0,h)|0)+e|0;k=(H((d[o>>0]|0)-(d[n>>0]|0)|0,h)|0)+k|0;e=m;f=n;g=o;h=h+1|0}o=(e*17|0)+16>>5;h=(k*17|0)+16>>5;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=8;f=(H(h+o|0,-3)|0)+16+((d[b+q+8>>0]|0)+(d[b+p>>0]|0)<<4)|0;e=b;while(1){if(!g)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function Nj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=Nb;Nb=Nb+48|0;p=r+32|0;m=r+28|0;n=r+24|0;o=r;c[p>>2]=a;j=c[(c[a+64>>2]|0)+52>>2]|0;k=j+3524|0;d=j+36|0;e=j+32|0;f=j+64|0;l=j+4|0;g=j+3184|0;h=o+16|0;i=j+3212|0;a:while(1){if(c[k>>2]|0){a=0;break}a=jT()|0;if(a){Zw(a);JV(d)|0;while(1){if((PT(c[e>>2]|0)|0)>=1?(c[k>>2]|0)==0:0)break;if(c[k>>2]|0){q=8;break a}zb(f|0,d|0)|0}Qw(c[e>>2]|0,o,24,0)|0;JV(d)|0;b=c[o>>2]|0;c[n>>2]=b;b=Me(c[p>>2]|0,a,b,m)|0;JV(l)|0;rv(c[n>>2]|0);JV(l)|0;iQ(n);if(!(c[m>>2]|0)){c[a+24>>2]=0;c[a+28>>2]=0}else{s=Qy(a)|0;b=(b|0)>-1&(s|0)<0?s:b}JV(g)|0;s=c[h>>2]|0;c[j+112+(s*24|0)+4>>2]=a;s=j+112+(s*24|0)+8|0;c[s>>2]=b;c[s+4>>2]=((b|0)<0)<<31>>31;yb(i|0)|0;JV(g)|0}}if((q|0)==8)JV(d)|0;FV(a);JV(l)|0;nj(c[p>>2]|0)|0;JV(l)|0;zM(p);Nb=r;return 0}function Oj(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=a+32|0;y=a+36|0;h=c[y>>2]|0;r=c[a+48>>2]|0;i=0;j=c[x>>2]|0;while(1){if((j|0)<(r|0))break;i=i+1|0;j=j-r|0}s=a+4|0;t=a+12|0;u=a+8|0;v=a+40|0;w=a+28|0;q=a+24|0;p=0;while(1){if((p|0)>=(f|0))break;m=c[t>>2]|0;n=(c[s>>2]|0)+((H(m,j)|0)<<1)|0;o=c[u>>2]|0;a=0;k=16384;l=16384;while(1){if((a|0)>=(o|0))break;A=b[e+(a+i<<1)>>1]|0;z=(H(b[n+(a<<1)>>1]|0,A)|0)+l|0;A=(H(b[n+(a+m<<1)>>1]|0,A)|0)+k|0;a=a+1|0;k=A;l=z}a=k-l|0;a=oK(a|0,((a|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;A=M()|0;z=c[v>>2]|0;A=Eu(a|0,A|0,z|0,((z|0)<0)<<31>>31|0)|0;M()|0;A=l+A|0;a=A>>15;b[d+(p<<1)>>1]=(a+32768|0)>>>0>65535?A>>31^32767:a;a=(c[w>>2]|0)+h|0;A=(a|0)<(z|0);h=A?0:z;j=(c[q>>2]|0)+j+((A^1)&1)|0;while(1){if((j|0)<(r|0))break;i=i+1|0;j=j-r|0}p=p+1|0;h=a-h|0}if(g|0){c[y>>2]=h;c[x>>2]=j}return i|0}function Pj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=0;f=0;g=0;h=0;i=0;j=0;while(1){if((e|0)==4)break;k=a+((H(e,b)|0)+-1)|0;k=f+(d[k>>0]|0)+(d[a+(e-b)>>0]|0)|0;l=e+4|0;m=a+((H(l,b)|0)+-1)|0;n=a+((H(e+8|0,b)|0)+-1)|0;o=a+((H(e+12|0,b)|0)+-1)|0;e=e+1|0;f=k;g=g+(d[a+(l-b)>>0]|0)|0;h=h+(d[m>>0]|0)|0;i=i+(d[n>>0]|0)|0;j=j+(d[o>>0]|0)|0}k=H((f+4|0)>>>3,16843009)|0;l=H((g+2|0)>>>2,16843009)|0;m=(h+2|0)>>>2;o=g+4|0;f=(o+h|0)>>>3;g=(i+2|0)>>>2;h=(o+i|0)>>>3;n=(j+2|0)>>>2;o=(o+j|0)>>>3;e=0;while(1){if((e|0)==4)break;j=a+(H(e,b)|0)|0;c[j>>2]=k;c[j+4>>2]=l;e=e+1|0}k=H(m,16843009)|0;i=H(f,16843009)|0;j=H(g,16843009)|0;g=H(h,16843009)|0;h=H(n,16843009)|0;f=H(o,16843009)|0;e=4;while(1){if((e|0)==8)break;o=a+(H(e,b)|0)|0;c[o>>2]=k;c[o+4>>2]=i;e=e+1|0}e=8;while(1){if((e|0)==12)break;o=a+(H(e,b)|0)|0;c[o>>2]=j;c[o+4>>2]=g;e=e+1|0}e=12;while(1){if((e|0)==16)break;o=a+(H(e,b)|0)|0;c[o>>2]=h;c[o+4>>2]=f;e=e+1|0}return}function Qj(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=a[b+96+(h*87968|0)+87940>>0]|0;l=(l&255)>16?((l&255)<<1)+-32|0:0;jq(d|0,0,19456)|0;j=c[b+72>>2]|0;h=0;while(1){if((h|0)==(j|0))break;i=0;while(1){if((i|0)>=(l|0))break;k=i+2|0;c[d+(i<<8)+(h<<2)>>2]=c[g+(h*320|0)+(k<<3)>>2];c[d+9728+(i<<8)+(h<<2)>>2]=c[g+(h*320|0)+(k<<3)+4>>2];i=i+1|0}h=h+1|0}k=(c[b+80>>2]|0)+j|0;h=j;while(1){if(h>>>0>=k>>>0)break;i=0;while(1){if((i|0)>=(l|0))break;j=i+32|0;c[d+(i<<8)+(h<<2)>>2]=c[e+(j<<9)+(h<<3)>>2];c[d+9728+(i<<8)+(h<<2)>>2]=c[e+(j<<9)+(h<<3)+4>>2];i=i+1|0}h=h+1|0}h=c[b+76>>2]|0;i=0;while(1){if((i|0)==(h|0))break;j=l;while(1){if((j|0)>=38)break;e=j+2|0;c[d+(j<<8)+(i<<2)>>2]=c[g+(i*320|0)+(e<<3)>>2];c[d+9728+(j<<8)+(i<<2)>>2]=c[g+(i*320|0)+(e<<3)+4>>2];j=j+1|0}i=i+1|0}j=(c[b+84>>2]|0)+h|0;while(1){if(h>>>0>=j>>>0)break;i=l;while(1){if((i|0)>=32)break;c[d+(i<<8)+(h<<2)>>2]=c[f+(i<<9)+(h<<3)>>2];c[d+9728+(i<<8)+(h<<2)>>2]=c[f+(i<<9)+(h<<3)+4>>2];i=i+1|0}h=h+1|0}return 0}function Rj(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;o=Nb;Nb=Nb+16|0;l=o+10|0;m=o+5|0;k=o;n=b+(e<<4)|0;if((a[d+(e*3|0)>>0]|0)==1){k=a[d+(e*3|0)+1>>0]|0;d=n;c[d>>2]=h|f;c[d+4>>2]=i|g;a[b+(e<<4)+8>>0]=1;a[b+(e<<4)+9>>0]=k;a[b+(e<<4)+10>>0]=j;k=n+11|0;a[k>>0]=a[l>>0]|0;a[k+1>>0]=a[l+1>>0]|0;a[k+2>>0]=a[l+2>>0]|0;a[k+3>>0]=a[l+3>>0]|0;a[k+4>>0]=a[l+4>>0]|0;k=1}else{p=a[d+(e*3|0)+1>>0]|0;l=j&255;j=n;c[j>>2]=f;c[j+4>>2]=g;a[b+(e<<4)+8>>0]=0;a[b+(e<<4)+9>>0]=p;a[b+(e<<4)+10>>0]=l;g=n+11|0;a[g>>0]=a[m>>0]|0;a[g+1>>0]=a[m+1>>0]|0;a[g+2>>0]=a[m+2>>0]|0;a[g+3>>0]=a[m+3>>0]|0;a[g+4>>0]=a[m+4>>0]|0;g=e+1|0;j=b+(g<<4)|0;f=a[d+(g*3|0)+1>>0]|0;e=j;c[e>>2]=h;c[e+4>>2]=i;a[b+(g<<4)+8>>0]=0;a[b+(g<<4)+9>>0]=f;a[b+(g<<4)+10>>0]=l;j=j+11|0;a[j>>0]=a[k>>0]|0;a[j+1>>0]=a[k+1>>0]|0;a[j+2>>0]=a[k+2>>0]|0;a[j+3>>0]=a[k+3>>0]|0;a[j+4>>0]=a[k+4>>0]|0;k=2}Nb=o;return k|0}function Sj(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=c[d+672>>2]|0;t=v+32|0;u=d+588|0;m=h<<1;n=i<<1;o=d+568|0;k=0;while(1){if((k|0)==4)break;q=k&1;r=k>>>1;p=(c[u>>2]|0)+((H(c[o>>2]|0,r+n|0)|0)+(q|m)<<1)|0;p=b[p>>1]|0;p=p<<16>>16<2040?p:2040;p=((p<<16>>16>0?p:0)&65535)>>>3&255;q=q<<3;r=r<<3;l=0;while(1){if((l|0)==8)break;s=l+r|0;j=0;while(1){if((j|0)==8)break;w=e+(j+q+(H(c[t>>2]|0,s)|0))|0;a[w>>0]=p;j=j+1|0}l=l+1|0}k=k+1|0}k=(H(c[d+564>>2]|0,i)|0)+h|0;j=b[(c[d+592>>2]|0)+(k<<1)>>1]|0;k=b[(c[d+596>>2]|0)+(k<<1)>>1]|0;j=j<<16>>16<2040?j:2040;k=k<<16>>16<2040?k:2040;a:do if(g|0){e=((j<<16>>16>0?j:0)&65535)>>>3&255;m=v+36|0;d=((k<<16>>16>0?k:0)&65535)>>>3&255;l=v+40|0;k=0;while(1){if((k|0)==8)break a;j=0;while(1){if((j|0)==8)break;w=f+((H(c[m>>2]|0,k)|0)+j)|0;a[w>>0]=e;w=g+((H(c[l>>2]|0,k)|0)+j)|0;a[w>>0]=d;j=j+1|0}k=k+1|0}}while(0);return}function Tj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}i=f>>1;f=f&-2;h=i*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;p=a+(g+i<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;p=a+(g+f<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;p=a+(g+h<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<16384?o:(o^-2147483648)>>31&16383;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function Uj(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=c+e|0;p=b+3|0;h=d[p>>0]|0;i=c+h|0;a:do if((i+1|0)>>>0<o>>>0){n=f+g|0;e=f;m=c;c=f;k=0;j=i;while(1){if(!h){e=0;break a}l=0;i=0;do{l=l<<8|(d[m+i>>0]|0);i=i+1|0}while((i|0)!=(h|0));if((l|0)<1){e=0;break a}if((m+l+h|0)>>>0>o>>>0){e=0;break a}switch(a[j>>0]&31){case 8:case 7:{i=1;break}case 5:{if(!(k<<24>>24)){if((c|0)!=(f|0))eF(f+(Rv(b)|0)|0,f|0,c-e|0)|0;h=ng(b,f,g)|0;if((h|0)<1){e=0;break a}c=c+h|0;i=1}else i=k;break}default:i=k}if((c+l+4|0)>>>0>n>>>0){e=0;break a}a[c>>0]=0;a[c+1>>0]=0;a[c+2>>0]=0;a[c+3>>0]=1;Bk(c+4|0,m+(d[p>>0]|0)|0,l|0)|0;c=c+(l+4)|0;h=d[p>>0]|0;m=m+(l+h)|0;j=m+h|0;if((j+1|0)>>>0>=o>>>0)break;else k=i}q=19}else{e=f;c=e;q=19}while(0);if((q|0)==19)e=c-e|0;return e|0}function Vj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}i=f>>1;f=f&-2;h=i*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;p=a+(g+i<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;p=a+(g+f<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;p=a+(g+h<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<4096?o:(o^-2147483648)>>31&4095;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function Wj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}i=f>>1;f=f&-2;h=i*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;p=a+(g+i<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;p=a+(g+f<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;p=a+(g+h<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<1024?o:(o^-2147483648)>>31&1023;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function Xj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}i=f>>1;f=f&-2;h=i*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;p=a+(g+i<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;p=a+(g+f<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;p=a+(g+h<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<512?o:(o^-2147483648)>>31&511;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function Yj(a){a=a|0;var b=0,c=0.0,d=0.0,e=0,g=0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0.0,x=0,y=0.0,z=0,A=0.0,B=0.0,C=0,D=0.0;Tr(a);C=a+32|0;i=+f[C>>2];q=a+40|0;k=+f[q>>2];D=i+k;b=a+36|0;r=+f[b>>2];e=a+44|0;h=+f[e>>2];w=r+h;v=a+48|0;c=+f[v>>2];j=a+56|0;o=+f[j>>2];B=c+o;z=a+52|0;p=+f[z>>2];m=a+60|0;d=+f[m>>2];s=p+d;A=+f[a>>2];n=a+4|0;l=+f[n>>2];g=a+16|0;t=+f[g>>2];x=a+20|0;u=+f[x>>2];y=B-D;B=D+B;f[C>>2]=A-B;f[a>>2]=B+A;f[z>>2]=u-y;f[x>>2]=y+u;u=w-s;s=w+s;f[v>>2]=t-u;f[g>>2]=u+t;f[b>>2]=l-s;f[n>>2]=s+l;k=(i-k)*.7071067690849304;h=(r-h)*.7071067690849304;r=k+h;k=h-k;o=(c-o)*.7071067690849304;d=(p-d)*.7071067690849304;p=o-d;d=o+d;n=a+8|0;o=+f[n>>2];b=a+12|0;c=+f[b>>2];g=a+24|0;h=+f[g>>2];a=a+28|0;i=+f[a>>2];l=p-r;p=r+p;f[q>>2]=o-p;f[n>>2]=p+o;f[m>>2]=i-l;f[a>>2]=l+i;i=k-d;d=k+d;f[j>>2]=h-i;f[g>>2]=i+h;f[e>>2]=c-d;f[b>>2]=d+c;return}function Zj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+224|0;g=l+192|0;j=l+200|0;h=l;i=l+196|0;k=Kp(e,j)|0;do if((k|0)>0){f=b+6736|0;if((c[f>>2]|0)==0?(a[j+16>>0]|0)!=1:0){PM(c[b+4>>2]|0,189576,g);c[f>>2]=1}GJ(b)|0;g=j+15|0;f=a[g>>0]|0;if(!(f<<24>>24)){c[b+6484>>2]=0;if((c[b+5672>>2]|0?(c[b+6464>>2]|0)==0:0)?(c[i>>2]=2,a[h+3>>0]=0,a[h>>0]=0,a[h+5>>0]=1,a[h+2>>0]=1,a[h+1>>0]=0,a[h+4>>0]=1,eh(b,h,2,2,0)|0):0){f=-7;break}}else{f=f&255;c[b+6484>>2]=f;f=ju(c[b+4>>2]|0,h,i,f)|0;if((f|0)<0)break;f=c[b+6728>>2]|0;f=eh(b,h,c[i>>2]|0,f>>>0>2?f:2,0)|0;if((f|0)<0)break}i=c[j>>2]|0;c[b+6480>>2]=i;c[b+6476>>2]=d[j+14>>0];c[b+6472>>2]=d[j+13>>0];c[b+6516>>2]=0;if(!(((c[b+6464>>2]|0)==4?(c[b+6220>>2]|0)==(d[g>>0]|0):0)?(c[b+6216>>2]|0)==(i|0):0)){c[b+6488>>2]=-1;c[b+6512>>2]=-1}if(!(a[j+12>>0]|0)){yO(e,16);f=k}else f=k}else f=k;while(0);Nb=l;return f|0}function _j(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(d|0){d=c+19|0;a[b+33>>0]=a[d>>0]|0;a[b+32>>0]=a[d>>0]|0;d=c+18|0;a[b+31>>0]=a[d>>0]|0;a[b+30>>0]=a[d>>0]|0;a[b+29>>0]=a[d>>0]|0;a[b+28>>0]=a[d>>0]|0;d=c+17|0;a[b+27>>0]=a[d>>0]|0;a[b+26>>0]=a[d>>0]|0;d=c+16|0;a[b+25>>0]=a[d>>0]|0;a[b+24>>0]=a[d>>0]|0;d=c+15|0;a[b+23>>0]=a[d>>0]|0;a[b+22>>0]=a[d>>0]|0;d=c+14|0;a[b+21>>0]=a[d>>0]|0;a[b+20>>0]=a[d>>0]|0;a[b+19>>0]=a[c+13>>0]|0;a[b+18>>0]=a[c+12>>0]|0;a[b+17>>0]=a[c+11>>0]|0}a[b+16>>0]=a[c+10>>0]|0;e=c+9|0;a[b+15>>0]=a[e>>0]|0;a[b+14>>0]=a[e>>0]|0;e=c+8|0;a[b+13>>0]=a[e>>0]|0;a[b+12>>0]=a[e>>0]|0;a[b+11>>0]=a[c+7>>0]|0;a[b+10>>0]=a[c+6>>0]|0;e=c+5|0;a[b+9>>0]=a[e>>0]|0;a[b+8>>0]=a[e>>0]|0;e=c+4|0;a[b+7>>0]=a[e>>0]|0;a[b+6>>0]=a[e>>0]|0;e=c+3|0;a[b+5>>0]=a[e>>0]|0;d=c+2|0;a[b+4>>0]=((a[e>>0]|0)+(a[d>>0]|0)|0)/2|0;a[b+3>>0]=a[d>>0]|0;d=c+1|0;a[b+2>>0]=a[d>>0]|0;a[b+1>>0]=((a[d>>0]|0)+(a[c>>0]|0)|0)/2|0;a[b>>0]=a[c>>0]|0;return}function $j(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=Nb;Nb=Nb+16|0;k=p;f=c[b+376>>2]|0;i=a+376|0;a:do if(f){g=c[i>>2]|0;f=f+4|0;do if(g){f=c[f>>2]|0;g=c[g+4>>2]|0;if(!(((f|0)==(g|0)?(c[b+80>>2]|0)==(c[f+40>>2]|0):0)?(c[a+80>>2]|0)==(c[f+36>>2]|0):0)){h=c[(c[f+4>>2]|0)+12>>2]|0;if(!h)break;if((c[h+4>>2]|0)!=(g|0))break}e=c[b+248>>2]|0;if(!e){mx(f,16,203482,k);e=-22;break a}else{e=c[e+4>>2]|0;rv(a);e=Kf(a,c[e>>2]|0)|0;break a}}else f=c[f>>2]|0;while(0);if(!(((c[f+36>>2]|0)==(c[b+80>>2]|0)?(j=c[(c[c[f+4>>2]>>2]|0)+80>>2]|0,(j|0)!=0):0)?(e=_b[j&7](f,a,b,d)|0,(e|0)!=-38):0))o=15}else o=15;while(0);do if((o|0)==15){e=c[i>>2]|0;if(((e|0?(l=c[e+4>>2]|0,(c[l+36>>2]|0)==(c[a+80>>2]|0)):0)?(m=c[(c[c[l+4>>2]>>2]|0)+76>>2]|0,m|0):0)?(n=_b[m&7](l,a,b,d)|0,(n|0)!=-38):0){e=n;break}e=-38}while(0);Nb=p;return e|0}function ak(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;i=0-p|0;j=a+14+(i<<1)|0;g=a+(p<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;o=a+((p*30|0)+-2)|0;n=a+((c+-2&-2)-(c>>>1<<2))|0;c=2;h=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(i<<1)|0;k=(H((e[j+(c<<1)>>1]|0)-(e[j+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+h|0;c=c+1|0;h=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(h*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[n+32>>1]|0)+(e[o>>1]|0)<<4)|0;h=16;f=a;while(1){if(!h)break;c=g;d=-16;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<16384?q:(q^-2147483648)>>31&16383;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<16384?q:(q^-2147483648)>>31&16383;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<16384?q:(q^-2147483648)>>31&16383;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<16384?q:(q^-2147483648)>>31&16383;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function bk(a){a=a|0;var b=0,d=0,e=0,g=0.0,i=0,j=0,k=0,l=0,m=0;j=a+76|0;b=c[j>>2]|0;c[a+132>>2]=b;c[a+128>>2]=b;b=a+72|0;e=c[b>>2]|0;c[a+124>>2]=e;c[a+120>>2]=e;c[a+116>>2]=e;c[a+112>>2]=e;e=a+68|0;k=c[e>>2]|0;c[a+108>>2]=k;c[a+104>>2]=k;k=a+64|0;m=c[k>>2]|0;c[a+100>>2]=m;c[a+96>>2]=m;m=a+60|0;d=c[m>>2]|0;c[a+92>>2]=d;c[a+88>>2]=d;d=a+56|0;l=c[d>>2]|0;c[a+84>>2]=l;c[a+80>>2]=l;l=a+52|0;c[j>>2]=c[l>>2];j=a+48|0;c[b>>2]=c[j>>2];b=a+44|0;c[e>>2]=c[b>>2];e=a+40|0;c[k>>2]=c[e>>2];k=a+36|0;i=c[k>>2]|0;c[m>>2]=i;c[d>>2]=i;d=a+32|0;i=c[d>>2]|0;c[l>>2]=i;c[j>>2]=i;j=a+28|0;c[b>>2]=c[j>>2];b=a+24|0;c[e>>2]=c[b>>2];e=a+20|0;i=c[e>>2]|0;c[k>>2]=i;c[d>>2]=i;d=a+16|0;i=c[d>>2]|0;c[j>>2]=i;c[b>>2]=i;b=a+12|0;i=c[b>>2]|0;c[e>>2]=i;e=a+8|0;g=+f[e>>2];f[d>>2]=(g+(c[h>>2]=i,+f[h>>2]))*.5;f[b>>2]=g;b=a+4|0;d=c[b>>2]|0;c[e>>2]=d;f[b>>2]=(+f[a>>2]+(c[h>>2]=d,+f[h>>2]))*.5;return}function ck(a,b,d,g){a=a|0;b=b|0;d=d|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0;x=Nb;Nb=Nb+128|0;q=x;r=c[a+8>>2]|0;v=a+24|0;w=c[v>>2]|0;s=1<<w;j=d+((H((c[a+4>>2]|0)+-1|0,g)|0)<<2)|0;k=a+16|0;l=0-g|0;t=a+96|0;m=a+640|0;u=a+92|0;n=a+32|0;o=a+128|0;h=0;while(1){if((h|0)>=(s|0))break;p=h*15|0;i=0;while(1){if((i|0)==15)break;C=c[(c[k>>2]|0)+(i+p<<2)>>2]|0;D=j+((H(C,l)|0)<<2)|0;B=+f[D>>2];D=d+((H(C,g)|0)<<2)|0;z=+f[D>>2];D=c[t>>2]|0;C=C>>1;y=D+(C<<3)|0;A=+f[D+(C<<3)+4>>2];f[q+(i<<3)>>2]=B*+f[y>>2]-z*A;f[q+(i<<3)+4>>2]=B*A+z*+f[y>>2];i=i+1|0}ic[c[m>>2]&255]((c[u>>2]|0)+((e[(c[n>>2]|0)+(h<<1)>>1]|0)<<3)|0,q,o,s);h=h+1|0}i=r>>1;j=a+60|0;h=0;while(1){if((h|0)==15)break;fc[c[j>>2]&255](v,(c[u>>2]|0)+(h<<w<<3)|0);h=h+1|0}kc[c[a+644>>2]&127](b,c[u>>2]|0,c[t>>2]|0,c[a+20>>2]|0,i);Nb=x;return}function dk(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:(a^-2147483648)>>31&16383)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:(i^-2147483648)>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function ek(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;i=0-p|0;j=a+14+(i<<1)|0;g=a+(p<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;o=a+((p*30|0)+-2)|0;n=a+((c+-2&-2)-(c>>>1<<2))|0;c=2;h=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(i<<1)|0;k=(H((e[j+(c<<1)>>1]|0)-(e[j+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+h|0;c=c+1|0;h=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(h*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[n+32>>1]|0)+(e[o>>1]|0)<<4)|0;h=16;f=a;while(1){if(!h)break;c=g;d=-16;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<4096?q:(q^-2147483648)>>31&4095;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<4096?q:(q^-2147483648)>>31&4095;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<4096?q:(q^-2147483648)>>31&4095;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<4096?q:(q^-2147483648)>>31&4095;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function fk(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;i=0-p|0;j=a+14+(i<<1)|0;g=a+(p<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;o=a+((p*30|0)+-2)|0;n=a+((c+-2&-2)-(c>>>1<<2))|0;c=2;h=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(i<<1)|0;k=(H((e[j+(c<<1)>>1]|0)-(e[j+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+h|0;c=c+1|0;h=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(h*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[n+32>>1]|0)+(e[o>>1]|0)<<4)|0;h=16;f=a;while(1){if(!h)break;c=g;d=-16;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<1024?q:(q^-2147483648)>>31&1023;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<1024?q:(q^-2147483648)>>31&1023;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<1024?q:(q^-2147483648)>>31&1023;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<1024?q:(q^-2147483648)>>31&1023;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function gk(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+8|0;c[j>>2]=0;k=a+64|0;c[k>>2]=0;a:do if((d+-2|0)>>>0<=15){c[a>>2]=d;l=1<<d;if((d|0)<17){i=Ax(l<<1)|0;c[j>>2]=i;if(!i){m=18;break}}else{i=Ax(l<<2)|0;c[k>>2]=i;if(!i){m=18;break}}i=Ax(l<<3)|0;c[a+12>>2]=i;if(i){i=a+4|0;c[i>>2]=e;f=a+56|0;c[f>>2]=0;c[a+32>>2]=192;c[a+36>>2]=193;c[a+40>>2]=694;c[a+44>>2]=695;c[a+48>>2]=696;c[a+52>>2]=696;e=4;while(1){if((e|0)>(d|0))break;kS(e);e=e+1|0}e=c[f>>2]|0;if((e|0)==2){dq(a);e=0;break}d=(e|0)==1;a=l+-1|0;f=0;while(1){if((f|0)>=(l|0)){e=0;break a}h=d?f>>>1&1|f&2147483644|f<<1&2:f;g=a&0-(Mx(f,l,c[i>>2]|0)|0);e=c[j>>2]|0;if(e|0)b[e+(g<<1)>>1]=h;e=c[k>>2]|0;if(e|0)c[e+(g<<2)>>2]=h;f=f+1|0}}else m=18}else m=18;while(0);if((m|0)==18){zM(j);zM(k);zM(a+12|0);e=-1}return e|0}function hk(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:(a^-2147483648)>>31&4095)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:(i^-2147483648)>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function ik(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:(a^-2147483648)>>31&1023)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:(i^-2147483648)>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function jk(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;i=0-p|0;j=a+14+(i<<1)|0;g=a+(p<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;o=a+((p*30|0)+-2)|0;n=a+((c+-2&-2)-(c>>>1<<2))|0;c=2;h=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[j+2>>1]|0)-(e[j+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(i<<1)|0;k=(H((e[j+(c<<1)>>1]|0)-(e[j+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(H((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+h|0;c=c+1|0;h=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(h*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(H(i+m|0,-7)|0)+16+((e[n+32>>1]|0)+(e[o>>1]|0)<<4)|0;h=16;f=a;while(1){if(!h)break;c=g;d=-16;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<512?q:(q^-2147483648)>>31&511;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<512?q:(q^-2147483648)>>31&511;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<512?q:(q^-2147483648)>>31&511;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<512?q:(q^-2147483648)>>31&511;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function kk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+16|0;f=l;j=SU(d)|0;i=b+32|0;k=c[i>>2]|0;c[b+4>>2]=1;c[b+8>>2]=0;h=b+20|0;a[f>>0]=a[h>>0]|0;a[f+1>>0]=a[h+1>>0]|0;a[f+2>>0]=a[h+2>>0]|0;a[f+3>>0]=a[h+3>>0]|0;a[f+4>>0]=a[h+4>>0]|0;a[f+5>>0]=a[h+5>>0]|0;e=NL(d)|0;c[b+28>>2]=e;e=(Yz(d,4)|0)&255;a[h>>0]=e;e=(Yz(d,4)|0)&255;a[b+21>>0]=e;e=(Yz(d,3)|0)&255;a[b+22>>0]=e;yO(d,2);e=(NL(d)|0)&255;g=(NL(d)|0)&255;if(!(e<<24>>24)){a[b+23>>0]=2;a[b+24>>0]=1;e=2}else{e=(Yz(d,2)|0)&255;a[b+23>>0]=e;e=(NL(d)|0)&255;a[b+24>>0]=e;e=(Yz(d,2)|0)&255}a[b+25>>0]=e;if(Zx(f,h,6)|0)c[b+16>>2]=1;if(!(g<<24>>24)){c[i>>2]=2;c[b+36>>2]=2;c[b+40>>2]=1;f=1;e=2}else{f=Yz(d,2)|0;c[i>>2]=f;f=Yz(d,2)|0;c[b+36>>2]=f;f=NL(d)|0;c[b+40>>2]=f;f=NL(d)|0;e=c[i>>2]|0}c[b+44>>2]=f;if((e|0)!=(k|0)?(c[b+16>>2]|0)==0:0)ie(b);k=(SU(d)|0)-j|0;Nb=l;return k|0}function lk(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:(a^-2147483648)>>31&511)|0)>>>1;a=d+2|0;n=H((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+4|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+6|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:(i^-2147483648)>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function mk(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;o=d[c+1>>0]|0;q=(d[a+1>>0]|0)+2|0;p=(d[b>>0]|0)-((q+(d[a>>0]|0)+(d[c>>0]|0)+o|0)>>>2)|0;r=d[a+2>>0]|0;n=d[c+2>>0]|0;o=(d[b+1>>0]|0)-((q+o+r+n|0)>>>2)|0;q=d[a+3>>0]|0;m=d[c+3>>0]|0;n=(d[b+2>>0]|0)-((r+2+n+q+m|0)>>>2)|0;r=d[a+4>>0]|0;l=d[c+4>>0]|0;m=(d[b+3>>0]|0)-((q+2+m+r+l|0)>>>2)|0;q=d[a+5>>0]|0;k=d[c+5>>0]|0;l=(d[b+4>>0]|0)-((r+2+l+q+k|0)>>>2)|0;r=d[a+6>>0]|0;j=d[c+6>>0]|0;k=(d[b+5>>0]|0)-((q+2+k+r+j|0)>>>2)|0;q=d[a+7>>0]|0;i=d[c+7>>0]|0;j=(d[b+6>>0]|0)-((r+2+j+q+i|0)>>>2)|0;i=(d[b+7>>0]|0)-((q+2+i+(d[a+8>>0]|0)+(d[c+8>>0]|0)|0)>>>2)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function nk(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!b){e=d[a+-1>>0]|0;b=e}else{b=d[a+-1>>0]|0;e=d[a+~f>>0]|0}u=d[a+(f+-1)>>0]|0;t=u+2|0;r=f<<1;s=d[a+(r+-1)>>0]|0;q=s+2|0;p=f*3|0;o=d[a+(p+-1)>>0]|0;n=f<<2;m=d[a+(n+-1)>>0]|0;l=f*5|0;k=d[a+(l+-1)>>0]|0;j=f*6|0;i=d[a+(j+-1)>>0]|0;g=f*7|0;h=d[a+(g+-1)>>0]|0;e=H((t+e+(b<<1)|0)>>>2,16843009)|0;c[a>>2]=e;c[a+4>>2]=e;e=H((q+b+(u<<1)|0)>>>2,16843009)|0;f=a+f|0;c[f>>2]=e;c[f+4>>2]=e;f=H((t+(s<<1)+o|0)>>>2,16843009)|0;e=a+r|0;c[e>>2]=f;c[e+4>>2]=f;e=H((q+(o<<1)+m|0)>>>2,16843009)|0;f=a+p|0;c[f>>2]=e;c[f+4>>2]=e;f=H((o+2+(m<<1)+k|0)>>>2,16843009)|0;e=a+n|0;c[e>>2]=f;c[e+4>>2]=f;e=H((m+2+(k<<1)+i|0)>>>2,16843009)|0;f=a+l|0;c[f>>2]=e;c[f+4>>2]=e;f=H((k+2+(i<<1)+h|0)>>>2,16843009)|0;e=a+j|0;c[e>>2]=f;c[e+4>>2]=f;e=H((i+2+(h*3|0)|0)>>>2,16843009)|0;f=a+g|0;c[f>>2]=e;c[f+4>>2]=e;return}function ok(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+16|0;i=l;a:do if((a|0)!=0?(j=c[a>>2]|0,(j|0)!=0):0){b:do if(f&1|0){if(!(f&2)){i=0;while(1){i=BN(a,i)|0;if(!i)break b;h=ok(i,b,d,e,f,g)|0;if(h|0)break a}}c[i>>2]=0;h=0;while(1){h=aP(j,h)|0;c[i>>2]=h;if(!h){i=8;break}h=ok(i,b,d,e,f,0)|0;if(h|0){i=11;break}h=c[i>>2]|0}if((i|0)==8)break;else if((i|0)==11)break a}while(0);j=(d|0)==0;h=0;c:while(1){h=sC(a,h)|0;if(!h){h=0;break a}do if((hz(c[h>>2]|0,b)|0)==0?(c[h+40>>2]&e|0)==(e|0):0){i=(c[h+12>>2]|0)==128;if(j)if(i)break;else break c;if((i?(k=c[h+44>>2]|0,k|0):0)?(hz(k,d)|0)==0:0)break c}while(0)}if(g)if(!(f&2)){c[g>>2]=a;break}else{c[g>>2]=0;break}}else h=0;while(0);Nb=l;return h|0}function pk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;l=m+8|0;d=m;i=c[a+60>>2]|0;b=Jk(a,i)|0;do if((b|0)>=0){if(qP(1136332,16)|0){mx(a,16,171783,d);b=-1313558101;break}f=a+116|0;do if((c[f>>2]|0)==1){b=c[i+4>>2]|0;d=b+112|0;e=c[d>>2]|0;if((e|0)<1073741823){c[d>>2]=e<<1;break}else{e=b+108|0;c[e>>2]=(c[e>>2]|0)/2|0;break}}while(0);c[f>>2]=2;b=c[a+104>>2]|0;if(((b|0)>0?(g=c[a+100>>2]|0,g|0):0)?(h=Di(g,b,i+27036|0,i+27020|0,i+27024|0,c[a+688>>2]|0,a)|0,(h|0)<0):0){Fs(a)|0;b=h;break}b=c[i+28200>>2]|0;if((b|0?c[b+660>>2]|0:0)?(j=(c[i+4>>2]|0)+180|0,k=c[b+664>>2]|0,(c[j>>2]|0)<(k|0)):0)c[j>>2]=k;c[(c[a+64>>2]|0)+4>>2]=1;Ns(i);b=i+29656|0;d=c[b>>2]|0;if((d|0)<0){if(c[a+808>>2]&2|0){c[b>>2]=0;b=0;break}}else if(!d){b=0;break}if(!(c[a+808>>2]&2))b=0;else{mx(a,24,171808,l);b=0}}while(0);Nb=m;return b|0}function qk(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==4)break;p=f+(h<<1)|0;o=b[p>>1]|0;l=f+(h+8<<1)|0;n=b[l>>1]|0;k=n+o|0;n=o-n|0;o=f+(h+4<<1)|0;i=b[o>>1]|0;j=f+(h+12<<1)|0;q=b[j>>1]|0;m=(i>>1)-q|0;i=(q>>1)+i|0;b[p>>1]=i+k;b[o>>1]=m+n;b[l>>1]=n-m;b[j>>1]=k-i;h=h+1|0}i=g<<1;j=g*3|0;h=0;while(1){if((h|0)==4)break;q=h<<2;p=b[f+(q<<1)>>1]|0;m=b[f+((q|2)<<1)>>1]|0;o=m+p|0;m=p-m|0;p=b[f+((q|1)<<1)>>1]|0;q=b[f+((q|3)<<1)>>1]|0;n=(p>>1)-q|0;p=(q>>1)+p|0;q=c+h|0;l=(p+o>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+g)|0;l=(n+m>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+i)|0;n=(m-n>>6)+(d[q>>0]|0)|0;a[q>>0]=n>>>0>255?(n^-2147483648)>>31:n;q=c+(h+j)|0;p=(o-p>>6)+(d[q>>0]|0)|0;a[q>>0]=p>>>0>255?(p^-2147483648)>>31:p;h=h+1|0}h=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=Nb;Nb=Nb+496|0;h=k+480|0;f=k+472|0;e=k+72|0;j=k;g=k+484|0;i=a;jq(e|0,0,400)|0;d=j;a=d+72|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));c[g>>2]=0;a=i+32|0;c[c[a>>2]>>2]=b;d=i+36|0;b=c[d>>2]|0;a=c[a>>2]|0;a=he(c[i+28>>2]|0,b,c[b+76>>2]|0,a,c[a+76>>2]|0)|0;do if((a|0)>=1){d=c[d>>2]|0;l=d+240|0;b=c[l+4>>2]|0;f=e+240|0;c[f>>2]=c[l>>2];c[f+4>>2]=b;c[e+80>>2]=c[d+80>>2];c[e>>2]=c[d>>2];c[e+76>>2]=a;d=GC()|0;f=M()|0;b=i+40|0;b=iP(d|0,f|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Eu(b|0,M()|0,1e3,0)|0;f=M()|0;d=e+104|0;c[d>>2]=b;c[d+4>>2]=f;d=Bd(c[i+24>>2]|0,j,e,g)|0;if(!(c[g>>2]|0)){c[h>>2]=d;EN(164052,h)|0;d=-2;break}a=i+48|0;d=it(a,c[j+8>>2]|0,c[j+28>>2]|0,c[j+24>>2]|0)|0;AP(j);if((d|0)<0)d=3;else bS(i,a,d)}else{c[f>>2]=a;EN(164026,f)|0;d=-1}while(0);Nb=k;return d|0}function sk(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=a[d+28272+e>>0]|0;k=a[d+28272+f>>0]|0;h=j<<24>>24!=k<<24>>24;if(!(j<<24>>24==-1|h)){h=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=(((h|0)>-1?h:0-h|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6}do if((c[d+23412>>2]|0)==2){if(!h){i=a[d+28312+e>>0]|0;h=a[d+28312+f>>0]|0;l=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;if(!((i<<24>>24!=h<<24>>24?1:((b[d+28112+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|(((l|0)>-1?l:0-l|0)|0)>=(g|0))){h=0;break}}else{h=a[d+28312+f>>0]|0;i=a[d+28312+e>>0]|0}if(j<<24>>24!=h<<24>>24?1:i<<24>>24!=k<<24>>24)h=1;else{l=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;h=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=((b[d+28112+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6|((((l|0)>-1?l:0-l|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|(((h|0)>-1?h:0-h|0)|0)>=(g|0)}}while(0);return h&1|0}function tk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;j=m;k=a+20|0;l=a+12|0;g=c[l>>2]|0;h=c[d>>2]|0;if((g|0)==(h|0)?(c[k>>2]|0)==(b|0):0){if((c[a+16>>2]|0)!=(c[d+4>>2]|0))i=4}else if((g|0)!=(h|0)){f=a+16|0;if(!g){e=f;i=9}else{e=f;f=c[f>>2]|0;g=h;i=7}}else{g=h;i=4}if((i|0)==4){e=a+16|0;f=c[e>>2]|0;if((g|0)==0?1:(f|0)==(c[d+4>>2]|0))i=9;else i=7}if((i|0)==7)if(!f)i=9;else{i=c[d+4>>2]|0;c[j>>2]=g;c[j+4>>2]=i;EN(164718,j)|0;i=9}if((i|0)==9){c[a+192>>2]=0;c[k>>2]=b;c[l>>2]=c[d>>2];c[e>>2]=c[d+4>>2];pr(a);UQ(a)}lb(c[a+40>>2]|0);nb(0,0,c[a>>2]|0,c[a+4>>2]|0);e=c[a+44>>2]|0;if(!((e|0)==(c[d>>2]|0)?(c[a+48>>2]|0)==(c[d+4>>2]|0):0)){UC(a,d);e=c[d>>2]|0}f=c[d+8>>2]|0;if((f|0)>(e|0)?(c[a+192>>2]|0)==0:0){nN(a,+(f-e|0)/+(f|0));UQ(a)}Au(a,d);Wa(5,0,4);Nb=m;return 0}function uk(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+64|0;q=s;p=s+12|0;r=s+8|0;l=p;m=l+52|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(m|0));c[r>>2]=0;o=Ax((wu(d)|0)+1|0)|0;if(!o)l=-12;else{n=o;l=d;a:while(1){do{m=a[l>>0]|0;if(!(m<<24>>24))break a;l=l+1|0}while((dP(m<<24>>24)|0)!=0);a[n>>0]=m;n=n+1|0}a[n>>0]=0;c[p>>2]=162092;c[p+4>>2]=100;m=p+8|0;c[m>>2]=o;c[p+16>>2]=e;c[p+20>>2]=g;c[p+24>>2]=f;c[p+28>>2]=i;c[p+32>>2]=h;c[p+40>>2]=j;c[p+44>>2]=k;l=ko(r,p)|0;do if((l|0)>=0){m=c[m>>2]|0;if(a[m>>0]|0){c[q>>2]=m;c[q+4>>2]=d;mx(p,16,209615,q);l=-22;break}m=c[r>>2]|0;if(yk(m)|0){q=rR(80)|0;c[m+32>>2]=q;if(!q)l=-12;else{c[b>>2]=m;c[r>>2]=0}}else l=-22}while(0);kI(c[r>>2]|0);FV(o)}Nb=s;return l|0}function vk(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=21328+(0-(d[b+~c>>0]|0))|0;v=b+(0-c)|0;f=v+1|0;g=v+2|0;h=v+3|0;i=v+4|0;j=v+5|0;k=v+6|0;l=v+7|0;m=v+8|0;n=v+9|0;o=v+10|0;p=v+11|0;q=v+12|0;r=v+13|0;s=v+14|0;t=v+15|0;e=0;while(1){if((e|0)==16)break;w=u+(d[b+-1>>0]|0)|0;a[b>>0]=a[w+(d[v>>0]|0)>>0]|0;a[b+1>>0]=a[w+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[w+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[w+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[w+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[w+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[w+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[w+(d[l>>0]|0)>>0]|0;a[b+8>>0]=a[w+(d[m>>0]|0)>>0]|0;a[b+9>>0]=a[w+(d[n>>0]|0)>>0]|0;a[b+10>>0]=a[w+(d[o>>0]|0)>>0]|0;a[b+11>>0]=a[w+(d[p>>0]|0)>>0]|0;a[b+12>>0]=a[w+(d[q>>0]|0)>>0]|0;a[b+13>>0]=a[w+(d[r>>0]|0)>>0]|0;a[b+14>>0]=a[w+(d[s>>0]|0)>>0]|0;a[b+15>>0]=a[w+(d[t>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function wk(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=d[b+-1>>0]|0;q=d[b+(e+-1)>>0]|0;j=e<<1;m=d[b+(j+-1)>>0]|0;f=e*3|0;l=d[b+(f+-1)>>0]|0;i=d[b+((e<<2)+-1)>>0]|0;h=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;o=d[b+(2-e)>>0]|0;r=d[b+(3-e)>>0]|0;p=d[c>>0]|0;n=d[c+1>>0]|0;k=d[c+2>>0]|0;c=d[c+3>>0]|0;s=(q<<1)+4|0;a[b>>0]=(s+(d[b+(1-e)>>0]|0)+r+(o+t<<1)|0)>>>3;a[b+1>>0]=(s+t+m+o+(r<<1)+p|0)>>>3;o=m<<1;r=(s+o+r+(p<<1)+n|0)>>>3&255;a[b+e>>0]=r;a[b+2>>0]=r;o=o+4|0;p=(o+q+l+p+(n<<1)+k|0)>>>3&255;a[b+(e+1)>>0]=p;a[b+3>>0]=p;n=(o+n+c+(k+l<<1)|0)>>>3&255;a[b+j>>0]=n;a[b+(e+2)>>0]=n;m=(m+4+k+((c+l|0)*3|0)|0)>>>3&255;a[b+(j|1)>>0]=m;a[b+(e+3)>>0]=m;e=l+2|0;l=(e+(i<<1)+h|0)>>>2&255;a[b+(f+1)>>0]=l;a[b+(j+3)>>0]=l;e=(e+i+k+c|0)>>>2&255;a[b+(j+2)>>0]=e;a[b+f>>0]=e;a[b+(f+2)>>0]=(i+1+h|0)>>>1;a[b+(f+3)>>0]=(i+2+(h<<1)+g|0)>>>2;return}function xk(a,b,g,h){a=a|0;b=b|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;x=Nb;Nb=Nb+16|0;w=c[g+368>>2]|0;a:do if((c[a+6472>>2]|0)==4)mx(c[a+4>>2]|0,16,187684,x);else{v=g+288|0;u=c[g+304>>2]|0;p=b+13760|0;a=0;q=0;r=g+14048|0;while(1){if((q|0)>=(u|0))break a;s=g+308+q|0;t=d[v>>0]|0;b=0;while(1){if(b>>>0>=t>>>0)break;b:do if(!(c[g+6160+(a<<2)>>2]|0))b=b+1|0;else{n=+f[g+148808+(h*480|0)+(a<<2)>>2];o=w+(b<<1)|0;b=b+1|0;k=w+(b<<1)|0;j=0;while(1){if(j>>>0>=(d[s>>0]|0)>>>0)break b;l=e[k>>1]|0;m=j<<7;i=e[o>>1]|0;while(1){if(i>>>0>=l>>>0)break;z=i+m|0;y=p+(z<<2)|0;f[y>>2]=+f[y>>2]+n*+f[r+(z<<2)>>2];i=i+1|0}j=j+1|0}}while(0);a=a+1|0}z=(d[s>>0]|0)<<7;p=p+(z<<2)|0;q=q+1|0;r=r+(z<<2)|0}}while(0);Nb=x;return}function yk(a){a=a|0;a:do if(!a)a=0;else switch(c[a>>2]|0){case 1:case 0:{a=1;break a}case 33:case 32:case 31:case 30:case 29:case 28:case 27:case 9:case 8:case 6:case 7:case 5:case 3:case 2:{if(!(yk(c[a+20>>2]|0)|0)){a=0;break a}a=(c[a+24>>2]|0)==0;break a}case 38:{if(!(yk(c[a+20>>2]|0)|0)){a=0;break a}a=c[a+24>>2]|0;if(!a){a=1;break a}a=(yk(a)|0)!=0;break a}case 25:case 37:case 36:{if(!(yk(c[a+20>>2]|0)|0)){a=0;break a}if(!(yk(c[a+24>>2]|0)|0)){a=0;break a}a=c[a+28>>2]|0;if(!a){a=1;break a}a=(yk(a)|0)!=0;break a}case 44:case 42:case 41:{if(!(yk(c[a+20>>2]|0)|0)){a=0;break a}if(!(yk(c[a+24>>2]|0)|0)){a=0;break a}a=(yk(c[a+28>>2]|0)|0)!=0;break a}default:{if(!(yk(c[a+20>>2]|0)|0)){a=0;break a}if(!(yk(c[a+24>>2]|0)|0)){a=0;break a}a=(c[a+28>>2]|0)==0;break a}}while(0);return a&1|0}function zk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Nb;Nb=Nb+16|0;i=n;m=b+6472|0;if((c[m>>2]|0)!=39?(NL(d)|0)==0:0){j=0;i=0;k=0;l=11}else l=3;a:do if((l|0)==3){h=e+288|0;if(!(De(b,h,d)|0)){k=a[e+74508>>0]|0;f=e+74496|0;Bk(f|0,h|0,292)|0;a[e+74509>>0]=k;if((c[e+74596>>2]|0?(c[m>>2]|0)!=1:0)?(k=(Yz(d,1)|0)&255,g=e+74524|0,a[g>>0]=k,k<<24>>24):0)Jy(g,d,a[f>>0]|0);f=Yz(d,2)|0;switch(f|0){case 0:{j=f;i=1;k=1;l=11;break a}case 3:{mx(c[b+4>>2]|0,16,188316,i);f=-1094995529;break a}default:{gx(e,d,f);j=f;i=1;k=1;l=11;break a}}}else f=-1094995529}while(0);if((l|0)==11){h=e+288|0;f=rh(b,h,d,i)|0;if(!f){g=e+74496|0;f=rh(b,g,d,i)|0;if(!f){if(k){if(j|0)Xn(b,e);if((c[m>>2]|0)==1){$f(b,h);$f(b,g)}}Pk(b,e,j);f=0}}}Nb=n;return f|0}function Ak(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=d[b+(1-e)>>0]|0;p=d[b+(3-e)>>0]|0;l=d[c>>0]|0;i=d[c+1>>0]|0;j=d[c+2>>0]|0;g=d[c+3>>0]|0;s=d[b+(e+-1)>>0]|0;h=e<<1;c=e*3|0;n=d[b+(c+-1)>>0]|0;o=d[b+((e<<2)+-1)>>0]|0;m=d[b+((e*5|0)+-1)>>0]|0;k=d[b+((e*6|0)+-1)>>0]|0;f=d[b+((e*7|0)+-1)>>0]|0;r=(d[b+(h+-1)>>0]|0)+(d[b+(2-e)>>0]|0)|0;q=r+4|0;a[b>>0]=(q+(d[b+(0-e)>>0]|0)+(d[b+-1>>0]|0)+(s+t<<1)|0)>>>3;p=n+p|0;n=p+4|0;r=(n+t+s+(r<<1)|0)>>>3&255;a[b+e>>0]=r;a[b+1>>0]=r;p=(q+l+o+(p<<1)|0)>>>3&255;a[b+h>>0]=p;a[b+(e+1)>>0]=p;a[b+2>>0]=p;l=o+l|0;n=(n+i+m+(l<<1)|0)>>>3&255;a[b+c>>0]=n;a[b+(h|1)>>0]=n;a[b+(e+2)>>0]=n;a[b+3>>0]=n;i=m+i|0;l=(l+4+j+k+(i<<1)|0)>>>3&255;a[b+(c+1)>>0]=l;a[b+(h+2)>>0]=l;a[b+(e+3)>>0]=l;e=k+j|0;i=(i+4+g+f+(e<<1)|0)>>>3&255;a[b+(c+2)>>0]=i;a[b+(h+3)>>0]=i;a[b+(c+3)>>0]=(e+2+g+f|0)>>>2;return}function Bk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192){qa(b|0,d|0,e|0)|0;return b|0}h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function Ck(a){a=a|0;var b=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0.0;d=a+4|0;k=+f[d>>2];f[a>>2]=(+f[a>>2]*2.0+k)*.3333333432674408;e=a+8|0;f[d>>2]=(k+ +f[e>>2]*2.0)*.3333333432674408;d=a+12|0;i=a+16|0;k=+f[i>>2];f[e>>2]=(+f[d>>2]*2.0+k)*.3333333432674408;e=a+20|0;f[d>>2]=(k+ +f[e>>2]*2.0)*.3333333432674408;d=a+24|0;b=a+28|0;f[i>>2]=(+f[d>>2]+ +f[b>>2])*.5;i=a+32|0;g=a+36|0;f[e>>2]=(+f[i>>2]+ +f[g>>2])*.5;e=a+40|0;c[d>>2]=c[e>>2];d=a+44|0;c[b>>2]=c[d>>2];b=a+48|0;j=a+52|0;f[i>>2]=(+f[b>>2]+ +f[j>>2])*.5;i=a+56|0;h=a+60|0;f[g>>2]=(+f[i>>2]+ +f[h>>2])*.5;g=a+64|0;c[e>>2]=c[g>>2];e=a+68|0;c[d>>2]=c[e>>2];d=a+72|0;c[b>>2]=c[d>>2];b=a+76|0;c[j>>2]=c[b>>2];f[i>>2]=(+f[a+80>>2]+ +f[a+84>>2])*.5;f[h>>2]=(+f[a+88>>2]+ +f[a+92>>2])*.5;f[g>>2]=(+f[a+96>>2]+ +f[a+100>>2])*.5;f[e>>2]=(+f[a+104>>2]+ +f[a+108>>2])*.5;f[d>>2]=(+f[a+112>>2]+ +f[a+116>>2]+ +f[a+120>>2]+ +f[a+124>>2])*.25;f[b>>2]=(+f[a+128>>2]+ +f[a+132>>2])*.5;return}function Dk(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==4)break;j=c+1|0;m=c+-1|0;i=c+2|0;h=H((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+3|0;h=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[k>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=H((d[k>>0]|0)+(d[c>>0]|0)|0,-5)|0;l=c+4|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=H((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+5|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;i=H((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+6>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function Ek(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=Nb;Nb=Nb+320|0;n=v;o=c[a>>2]|0;p=a+4|0;q=c[p>>2]|0;r=a+8|0;s=c[r>>2]|0;t=a+12|0;u=c[t>>2]|0;l=a+16|0;m=c[l>>2]|0;f=m;g=u;h=s;i=q;j=o;k=0;while(1){if((k|0)==80)break;if(k>>>0<16){e=b+(k<<2)|0;e=IS(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0}else{e=c[n+(k+-8<<2)>>2]^c[n+(k+-3<<2)>>2]^c[n+(k+-14<<2)>>2]^c[n+(k+-16<<2)>>2];e=e<<1|e>>>31}c[n+(k<<2)>>2]=e;f=f+(j<<5|j>>>27)+e|0;do if(k>>>0<40){e=g^h;if(k>>>0<20){e=(e&i^g)+1518500249|0;break}else{e=(e^i)+1859775393|0;break}}else if(k>>>0<60){e=((h|i)&g|h&i)+-1894007588|0;break}else{e=(g^h^i)+-899497514|0;break}while(0);y=j;x=h;w=g;h=i<<30|i>>>2;j=f+e|0;k=k+1|0;i=y;g=x;f=w}c[a>>2]=j+o;c[p>>2]=i+q;c[r>>2]=h+s;c[t>>2]=g+u;c[l>>2]=f+m;Nb=v;return}function Fk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=Nb;Nb=Nb+16|0;m=n;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;j=MT(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if(((j|0)!=0?(i=c[j+8>>2]|0,(i&8|0)==0&0==0):0)?(c[a>>2]=f,h=c[g>>2]|0,(h|0)<=(2147482623/(e|0)|0|0)):0){h=H(h,e)|0;if(!((i&66|0)==0&0==0)){c[a+4>>2]=f+h;b=h+1024|0;break}b=0;while(1){if((b|0)==4)break;c[m+(c[j+16+(b<<5)>>2]<<2)>>2]=1;b=b+1|0}l=j+6|0;k=e+-1|0;b=h;e=1;j=f;while(1){if(e>>>0>=4)break a;if(!(c[m+(e<<2)>>2]|0))break a;if((e+-1|0)>>>0<2)i=d[l>>0]|0;else i=0;j=j+h|0;c[a+(e<<2)>>2]=j;f=k+(1<<i)>>i;o=c[g+(e<<2)>>2]|0;h=H(o,f)|0;i=(b|0)>(2147483647-h|0);if((o|0)>(2147483647/(f|0)|0|0)){b=-22;break a}if(i){b=-22;break}else{b=(i?0:h)+b|0;e=e+1|0}}}else b=-22;while(0);Nb=n;return b|0}function Gk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0;y=a+32|0;z=a+36|0;h=c[z>>2]|0;s=c[a+48>>2]|0;i=0;k=c[y>>2]|0;while(1){if((k|0)<(s|0))break;i=i+1|0;k=k-s|0}t=a+4|0;u=a+12|0;v=a+8|0;w=a+28|0;x=a+24|0;r=a+40|0;q=0;while(1){if((q|0)>=(e|0))break;l=(c[t>>2]|0)+((H(c[u>>2]|0,k)|0)<<3)|0;m=c[v>>2]|0;n=((m|0)>1?m:1)&2147483646;a=0;p=0.0;j=0.0;while(1){o=a|1;if((o|0)>=(m|0))break;B=a+i|0;A=j+ +g[d+(B<<3)>>3]*+g[l+(a<<3)>>3];a=a+2|0;p=p+ +g[d+(B+1<<3)>>3]*+g[l+(o<<3)>>3];j=A}if((n|0)<(m|0))j=j+ +g[d+(n+i<<3)>>3]*+g[l+(n<<3)>>3];g[b+(q<<3)>>3]=p+j;a=(c[w>>2]|0)+h|0;h=c[r>>2]|0;B=(a|0)<(h|0);h=B?0:h;k=(c[x>>2]|0)+k+((B^1)&1)|0;while(1){if((k|0)<(s|0))break;i=i+1|0;k=k-s|0}q=q+1|0;h=a-h|0}if(f|0){c[z>>2]=h;c[y>>2]=k}return i|0}function Hk(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0;y=a+32|0;z=a+36|0;h=c[z>>2]|0;s=c[a+48>>2]|0;i=0;k=c[y>>2]|0;while(1){if((k|0)<(s|0))break;i=i+1|0;k=k-s|0}t=a+4|0;u=a+12|0;v=a+8|0;w=a+28|0;x=a+24|0;r=a+40|0;q=0;while(1){if((q|0)>=(e|0))break;l=(c[t>>2]|0)+((H(c[u>>2]|0,k)|0)<<2)|0;m=c[v>>2]|0;n=((m|0)>1?m:1)&2147483646;a=0;p=0.0;j=0.0;while(1){o=a|1;if((o|0)>=(m|0))break;B=a+i|0;A=j+ +f[d+(B<<2)>>2]*+f[l+(a<<2)>>2];a=a+2|0;p=p+ +f[d+(B+1<<2)>>2]*+f[l+(o<<2)>>2];j=A}if((n|0)<(m|0))j=j+ +f[d+(n+i<<2)>>2]*+f[l+(n<<2)>>2];f[b+(q<<2)>>2]=p+j;a=(c[w>>2]|0)+h|0;h=c[r>>2]|0;B=(a|0)<(h|0);h=B?0:h;k=(c[x>>2]|0)+k+((B^1)&1)|0;while(1){if((k|0)<(s|0))break;i=i+1|0;k=k-s|0}q=q+1|0;h=a-h|0}if(g|0){c[z>>2]=h;c[y>>2]=k}return i|0}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:do if((e|0)>=3){if((Yz(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}yO(d,8);e=e+1|0}}yO(d,1);if(((Yz(d,1)|0)!=0?(yO(d,1),g=Yz(d,5)|0,yO(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=oK(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=kP(f|0,M()|0,e|0,((e|0)<0)<<31>>31|0)|0;f=M()|0;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=ox(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(Yz(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(Yz(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(Yz(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}yO(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function Jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[b+4>>2]=a;c[b+29576>>2]=-1;c[b+29648>>2]=c[a+124>>2];c[b+29652>>2]=c[a+128>>2];c[b+26364>>2]=3;c[b+25688>>2]=c[a+668>>2];c[b+25684>>2]=c[a+92>>2];c[b+28232>>2]=65536;c[b+29556>>2]=-1;c[b+29560>>2]=0;c[b+28248>>2]=-1;c[b+29844>>2]=-1;c[b+29696>>2]=-1;c[b+28728>>2]=-2147483648;d=0;while(1){if((d|0)==16)break;c[b+28660+(d<<2)>>2]=-2147483648;d=d+1|0}ZI(b+29660|0);c[a+404>>2]=1;if(!(c[a+808>>2]&2))d=1;else d=c[a+800>>2]|0;e=b+25632|0;c[e>>2]=d;a=YO(d,34768)|0;f=b+25628|0;c[f>>2]=a;a:do if(a){d=0;while(1){a=BP()|0;if(d>>>0>=36)break;c[b+696+(d*656|0)>>2]=a;if(!a){d=-12;break a}else d=d+1|0}c[b+24316>>2]=a;if((a|0)!=0?(a=BP()|0,c[b+24972>>2]=a,(a|0)!=0):0){a=c[e>>2]|0;d=0;while(1){if((d|0)>=(a|0)){d=0;break a}c[(c[f>>2]|0)+(d*34768|0)>>2]=b;d=d+1|0}}else d=-12}else{c[e>>2]=0;d=-12}while(0);return d|0}function Kk(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;k=((e[a>>1]|0)+1+(((H(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[a>>1]=k;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=(k|0)==0?1:l;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;k=((e[a>>1]|0)+1+((k+32+(H(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=k;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(m,e[c>>1]|0)|0;o=H(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=H(k,e[d>>1]|0)|0;n=((e[a>>1]|0)+1+((p+32+o+n+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=n;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function Lk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=Nb;Nb=Nb+224|0;n=o+216|0;i=o+208|0;h=o+200|0;g=o+192|0;l=o;m=o+220|0;c[m>>2]=0;c[e+40>>2]=0;c[e+16>>2]=0;p=NL(d)|0;c[e+44>>2]=p;e=Yz(d,3)|0;do if(!e){if(NL(d)|0){PM(b,189789,h);e=-1163346256;break}while(1){if(!(Yz(d,4)|0))break;e=Yz(d,4)|0;if((e|0)==15)e=(Yz(d,8)|0)+15|0;if((e|0)==270)e=(Yz(d,16)|0)+270|0;e=e<<3;if((NS(d)|0)<(e|4|0)){j=12;break}JK(d,e)}if((j|0)==12){mx(b,16,187583,i);e=-1094995529;break}e=ju(b,l,m,f)|0;if(!e){if(a|0?(k=eh(a,l,c[m>>2]|0,3,0)|0,k|0):0){e=k;break}e=Yz(d,2)|0;if(!e)e=0;else{c[n>>2]=e;PM(b,189803,n);e=-1163346256}}}else{c[g>>2]=e;PM(b,189758,g);e=-1163346256}while(0);Nb=o;return e|0}function Mk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[1079616+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[1079616+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+8>>0]|0)-(d[a+8>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+9>>0]|0)-(d[a+9>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+10>>0]|0)-(d[a+10>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+11>>0]|0)-(d[a+11>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+12>>0]|0)-(d[a+12>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+13>>0]|0)-(d[a+13>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+14>>0]|0)-(d[a+14>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+15>>0]|0)-(d[a+15>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Nk(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=Nb;Nb=Nb+32|0;l=p+24|0;m=p+16|0;n=p+8|0;o=p;g[h>>3]=a;s=c[h>>2]|0;i=c[h+4>>2]|0;g[h>>3]=b;e=c[h>>2]|0;i=i&2147483647;f=c[h+4>>2]&2147483647;j=i>>>0<f>>>0|(i|0)==(f|0)&s>>>0<e>>>0;r=j?e:s;q=j?f:i;e=j?s:e;f=j?i:f;i=GN(r|0,q|0,52)|0;M()|0;j=GN(e|0,f|0,52)|0;M()|0;c[h>>2]=r;c[h+4>>2]=q;a=+g[h>>3];c[h>>2]=e;c[h+4>>2]=f;k=+g[h>>3];do if((j|0)!=2047){if(!((e|0)==0&(f|0)==0|(i|0)==2047)){if((i-j|0)>64){a=a+k;break}if((i|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{s=(j|0)<573;d=s?1.90109156629516e-211:1.0;b=s?a*5260135901548373507240989.0e186:a;a=s?k*5260135901548373507240989.0e186:k}ZM(l,m,b);ZM(n,o,a);a=d*+v(+(+g[o>>3]+ +g[m>>3]+ +g[n>>3]+ +g[l>>3]))}}else a=k;while(0);Nb=p;return +a}function Ok(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,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;q=d+8|0;r=e+8|0;s=d+12|0;t=e+12|0;u=d+16|0;v=e+16|0;h=d+24|0;i=e+24|0;j=d+4|0;k=e+36|0;l=d+20|0;m=e+52|0;n=d+28|0;o=e+60|0;p=a+4|0;g=0;while(1){if((g|0)>=(f|0))break;y=H(c[r>>2]|0,b[(c[q>>2]|0)+(g<<1)>>1]|0)|0;y=(H(c[t>>2]|0,b[(c[s>>2]|0)+(g<<1)>>1]|0)|0)+y|0;w=H(c[e>>2]|0,b[(c[d>>2]|0)+(g<<1)>>1]|0)|0;x=H(c[v>>2]|0,b[(c[u>>2]|0)+(g<<1)>>1]|0)|0;y=y+16384|0;x=y+w+x+(H(c[i>>2]|0,b[(c[h>>2]|0)+(g<<1)>>1]|0)|0)|0;w=x>>15;b[(c[a>>2]|0)+(g<<1)>>1]=(w+32768|0)>>>0>65535?x>>31^32767:w;w=H(c[k>>2]|0,b[(c[j>>2]|0)+(g<<1)>>1]|0)|0;x=H(c[m>>2]|0,b[(c[l>>2]|0)+(g<<1)>>1]|0)|0;x=y+w+x+(H(c[o>>2]|0,b[(c[n>>2]|0)+(g<<1)>>1]|0)|0)|0;w=x>>15;b[(c[p>>2]|0)+(g<<1)>>1]=(w+32768|0)>>>0>65535?x>>31^32767:w;g=g+1|0}return}function Pk(a,b,g){a=a|0;b=b|0;g=g|0;var h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;s=c[b+74576>>2]|0;t=b+74512|0;u=b+74496|0;r=(g|0)==0;p=a+5404|0;m=b+14048|0;n=b+88256|0;o=0;g=0;while(1){if((o|0)>=(c[t>>2]|0))break;q=b+74516+o|0;a=0;while(1){if((a|0)>=(d[u>>0]|0|0))break;l=c[b+81392+(g<<2)>>2]|0;a:do if((c[b+80368+(g<<2)>>2]&-2|0)==14){h=a;while(1){if((h|0)>=(l|0))break a;a=(c[b+80368+(g<<2)>>2]<<1)+-29|0;if(!r)a=H(1-((d[b+13+g>>0]|0)<<1)|0,a)|0;j=+f[b+81872+(g<<2)>>2]*+(a|0);k=s+(h<<1)|0;h=h+1|0;i=s+(h<<1)|0;a=0;while(1){if(a>>>0>=(d[q>>0]|0)>>>0)break;w=a<<7;v=e[k>>1]|0;gc[c[(c[p>>2]|0)+12>>2]&7](n+(w<<2)+(v<<2)|0,m+(w<<2)+(v<<2)|0,j,(e[i>>1]|0)-v|0);a=a+1|0}g=g+1|0}}else{h=l;g=g-a+l|0}while(0);a=h}w=(d[q>>0]|0)<<7;m=m+(w<<2)|0;n=n+(w<<2)|0;o=o+1|0}return}function Qk(a,b,g,h,i,j,k,l,m){a=a|0;b=b|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=Nb;Nb=Nb+16|0;A=B;z=b+76|0;v=b+310448|0;w=b+310120|0;x=b+390984|0;s=l+m|0;n=c[z>>2]|0;m=0;r=0;a:while(1){if(r>>>0>=(c[v>>2]|0)>>>0){m=13;break}t=b+310452+r|0;u=b+310458+r|0;q=0;while(1){if(q>>>0>=(d[t>>0]|0)>>>0)break;p=q+(d[u>>0]|0)|0;o=c[w>>2]|0;while(1){if(m>>>0>o>>>0)break;if((n|0)<(e[b+310374+(m<<1)>>1]|0|0))break;m=m+1|0}o=m+-1|0;if((m|0)<1){m=10;break a}jc[c[x>>2]&1](g+(n*320|0)+16|0,h+(p*320|0)+16|0,i+(p<<3)|0,j+(p<<3)|0,+f[k+(o<<2)>>2],(d[l>>0]|0)<<1,(d[s>>0]|0)<<1);q=q+1|0;n=n+1|0;m=o}r=r+1|0}if((m|0)==10){z=c[a+4>>2]|0;c[A>>2]=n;mx(z,16,191264,A)}else if((m|0)==13?(y=(c[z>>2]|0)+(c[b+84>>2]|0)|0,y>>>0>n>>>0):0)jq(g+(n*320|0)|0,0,(y-n|0)*320|0)|0;Nb=B;return}function Rk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0,K=0;p=+f[d>>2];q=+f[d+16>>2];r=+f[d+4>>2];s=+f[d+20>>2];t=+f[d+8>>2];u=+f[d+24>>2];v=+f[d+12>>2];o=+f[d+28>>2];h=+f[c>>2];i=+f[c+16>>2];j=+f[c+4>>2];k=+f[c+20>>2];d=0;l=+f[c+8>>2];m=+f[c+24>>2];n=+f[c+12>>2];g=+f[c+28>>2];while(1){if((d|0)>=(e|0))break;K=a+(d<<3)|0;G=+f[K>>2];J=a+(d<<3)+4|0;F=+f[J>>2];I=b+(d<<3)|0;H=+f[I>>2];c=b+(d<<3)+4|0;E=+f[c>>2];D=p+h;B=r+j;z=t+l;x=v+n;C=q+i;A=s+k;y=u+m;w=o+g;f[K>>2]=D*G+z*H-C*F-y*E;f[J>>2]=y*H+(C*G+(D*F+z*E));f[I>>2]=B*G+x*H-A*F-w*E;f[c>>2]=w*H+(A*G+(B*F+x*E));h=D;i=C;j=B;k=A;d=d+1|0;l=z;m=y;n=x;g=w}return}function Sk(a){a=a|0;var b=0,d=0,e=0;b=a+32|0;a:do if((c[b>>2]|0)==3&(c[b+4>>2]|0)==0){e=a+24|0;b=c[e+4>>2]|0;switch(c[e>>2]|0){case 63:{if(b|0){d=20;break a}break}case 1551:{if(b|0){d=20;break a}break}case 1599:{if(b|0){d=20;break a}if(!(+g[a+13472>>3]==+g[a+13984>>3])){d=20;break a}if(!(+g[a+13480>>3]==+g[a+13992>>3])){d=20;break a}if(+g[a+13464>>3]!=0.0){d=20;break a}if(+g[a+13496>>3]!=0.0){d=20;break a}if(+g[a+13968>>3]!=0.0){d=20;break a}if(+g[a+14e3>>3]!=0.0){d=20;break a}if(+g[a+13512>>3]!=0.0){d=20;break a}if(+g[a+14016>>3]!=0.0){d=20;break a}else{a=147;break a}}default:{d=20;break a}}if(((((+g[a+13472>>3]==+g[a+13984>>3]?+g[a+13480>>3]==+g[a+13992>>3]:0)?!(+g[a+13464>>3]!=0.0):0)?!(+g[a+13496>>3]!=0.0):0)?!(+g[a+13968>>3]!=0.0):0)?!(+g[a+14e3>>3]!=0.0):0)a=146;else d=20}else d=20;while(0);if((d|0)==20)a=0;return a|0}function Tk(a){a=a|0;var b=0,d=0,e=0;b=a+32|0;a:do if((c[b>>2]|0)==3&(c[b+4>>2]|0)==0){e=a+24|0;b=c[e+4>>2]|0;switch(c[e>>2]|0){case 63:{if(b|0){d=20;break a}break}case 1551:{if(b|0){d=20;break a}break}case 1599:{if(b|0){d=20;break a}if(!(+g[a+13472>>3]==+g[a+13984>>3])){d=20;break a}if(!(+g[a+13480>>3]==+g[a+13992>>3])){d=20;break a}if(+g[a+13464>>3]!=0.0){d=20;break a}if(+g[a+13496>>3]!=0.0){d=20;break a}if(+g[a+13968>>3]!=0.0){d=20;break a}if(+g[a+14e3>>3]!=0.0){d=20;break a}if(+g[a+13512>>3]!=0.0){d=20;break a}if(+g[a+14016>>3]!=0.0){d=20;break a}else{a=151;break a}}default:{d=20;break a}}if(((((+g[a+13472>>3]==+g[a+13984>>3]?+g[a+13480>>3]==+g[a+13992>>3]:0)?!(+g[a+13464>>3]!=0.0):0)?!(+g[a+13496>>3]!=0.0):0)?!(+g[a+13968>>3]!=0.0):0)?!(+g[a+14e3>>3]!=0.0):0)a=150;else d=20}else d=20;while(0);if((d|0)==20)a=0;return a|0}function Uk(a){a=a|0;var b=0,d=0,e=0;b=a+32|0;a:do if((c[b>>2]|0)==3&(c[b+4>>2]|0)==0){e=a+24|0;b=c[e+4>>2]|0;switch(c[e>>2]|0){case 63:{if(b|0){d=20;break a}break}case 1551:{if(b|0){d=20;break a}break}case 1599:{if(b|0){d=20;break a}if(!(+g[a+13472>>3]==+g[a+13984>>3])){d=20;break a}if(!(+g[a+13480>>3]==+g[a+13992>>3])){d=20;break a}if(+g[a+13464>>3]!=0.0){d=20;break a}if(+g[a+13496>>3]!=0.0){d=20;break a}if(+g[a+13968>>3]!=0.0){d=20;break a}if(+g[a+14e3>>3]!=0.0){d=20;break a}if(+g[a+13512>>3]!=0.0){d=20;break a}if(+g[a+14016>>3]!=0.0){d=20;break a}else{a=149;break a}}default:{d=20;break a}}if(((((+g[a+13472>>3]==+g[a+13984>>3]?+g[a+13480>>3]==+g[a+13992>>3]:0)?!(+g[a+13464>>3]!=0.0):0)?!(+g[a+13496>>3]!=0.0):0)?!(+g[a+13968>>3]!=0.0):0)?!(+g[a+14e3>>3]!=0.0):0)a=148;else d=20}else d=20;while(0);if((d|0)==20)a=0;return a|0}function Vk(a){a=a|0;var b=0,d=0,e=0;b=a+32|0;a:do if((c[b>>2]|0)==3&(c[b+4>>2]|0)==0){e=a+24|0;b=c[e+4>>2]|0;switch(c[e>>2]|0){case 63:{if(b|0){d=20;break a}break}case 1551:{if(b|0){d=20;break a}break}case 1599:{if(b|0){d=20;break a}if(!(+g[a+13472>>3]==+g[a+13984>>3])){d=20;break a}if(!(+g[a+13480>>3]==+g[a+13992>>3])){d=20;break a}if(+g[a+13464>>3]!=0.0){d=20;break a}if(+g[a+13496>>3]!=0.0){d=20;break a}if(+g[a+13968>>3]!=0.0){d=20;break a}if(+g[a+14e3>>3]!=0.0){d=20;break a}if(+g[a+13512>>3]!=0.0){d=20;break a}if(+g[a+14016>>3]!=0.0){d=20;break a}else{a=153;break a}}default:{d=20;break a}}if(((((+g[a+13472>>3]==+g[a+13984>>3]?+g[a+13480>>3]==+g[a+13992>>3]:0)?!(+g[a+13464>>3]!=0.0):0)?!(+g[a+13496>>3]!=0.0):0)?!(+g[a+13968>>3]!=0.0):0)?!(+g[a+14e3>>3]!=0.0):0)a=152;else d=20}else d=20;while(0);if((d|0)==20)a=0;return a|0}function Wk(a){a=a|0;var b=0,d=0,e=0;b=a+32|0;a:do if((c[b>>2]|0)==3&(c[b+4>>2]|0)==0){e=a+24|0;b=c[e+4>>2]|0;switch(c[e>>2]|0){case 63:{if(b|0){d=20;break a}break}case 1551:{if(b|0){d=20;break a}break}case 1599:{if(b|0){d=20;break a}if(!(+g[a+13472>>3]==+g[a+13984>>3])){d=20;break a}if(!(+g[a+13480>>3]==+g[a+13992>>3])){d=20;break a}if(+g[a+13464>>3]!=0.0){d=20;break a}if(+g[a+13496>>3]!=0.0){d=20;break a}if(+g[a+13968>>3]!=0.0){d=20;break a}if(+g[a+14e3>>3]!=0.0){d=20;break a}if(+g[a+13512>>3]!=0.0){d=20;break a}if(+g[a+14016>>3]!=0.0){d=20;break a}else{a=145;break a}}default:{d=20;break a}}if(((((+g[a+13472>>3]==+g[a+13984>>3]?+g[a+13480>>3]==+g[a+13992>>3]:0)?!(+g[a+13464>>3]!=0.0):0)?!(+g[a+13496>>3]!=0.0):0)?!(+g[a+13968>>3]!=0.0):0)?!(+g[a+14e3>>3]!=0.0):0)a=144;else d=20}else d=20;while(0);if((d|0)==20)a=0;return a|0}function Xk(b,d){b=b|0;d=d|0;var e=0,g=0,h=0,i=0;e=d+13760|0;i=(a[d+12>>0]|0)!=0;h=i?285984:218944;i=i?290080:215360;a:do switch(c[d+4>>2]|0){case 2:{Bk(e|0,d+17856|0,2048)|0;jq(d+16064|0,0,1792)|0;ic[c[(c[b+5404>>2]|0)+28>>2]&255](d+15552|0,b+4864|0,i+256|0,64);g=0;while(1){if((g|0)==64)break a;f[d+13760+(g+512<<2)>>2]=+f[b+1024+(1023-g<<2)>>2]*+f[i+(63-g<<2)>>2];g=g+1|0}}case 1:{Bk(e|0,b+3072|0,1792)|0;jq(d+16064|0,0,1792)|0;ic[c[(c[b+5404>>2]|0)+28>>2]&255](d+15552|0,b+4864|0,i+256|0,64);g=0;while(1){if((g|0)==64)break a;f[d+13760+(g+512<<2)>>2]=+f[b+1024+(1023-g<<2)>>2]*+f[i+(63-g<<2)>>2];g=g+1|0}}default:{ic[c[(c[b+5404>>2]|0)+28>>2]&255](e,b+3072|0,h+2048|0,512);g=0;while(1){if((g|0)==512)break;f[d+13760+(g+512<<2)>>2]=+f[b+1024+(1023-g<<2)>>2]*+f[h+(511-g<<2)>>2];g=g+1|0}}}while(0);b=d+36288|0;Bk(d+32192|0,b|0,4096)|0;Bk(b|0,c[d+74176>>2]|0,4096)|0;Bk(d+40384|0,e|0,4096)|0;return}function Yk(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0;A=Nb;Nb=Nb+48|0;z=A;v=a+28|0;w=z+40|0;x=z+16|0;y=z+24|0;r=z+28|0;s=z+4|0;t=z+8|0;u=z+12|0;q=0;while(1){if((q|0)>=(g|0))break;fc[c[v>>2]&255](e+(q*320|0)|0,z);j=+f[x>>2];k=+f[y>>2];l=+f[r>>2];h=+f[w>>2]*j-(k*k+l*l)/1.0000009536743164;if(h!=0.0){B=+f[z>>2];p=+f[s>>2];m=(k*B-l*p-j*+f[t>>2])/h;h=(l*B+k*p-j*+f[u>>2])/h}else{m=0.0;h=0.0}n=d+(q<<3)|0;f[n>>2]=m;o=d+(q<<3)+4|0;f[o>>2]=h;if(j!=0.0){p=-(+f[z>>2]+k*m+l*h)/j;h=-(+f[s>>2]+k*h-l*m)/j}else{p=0.0;h=0.0}a=b+(q<<3)|0;f[a>>2]=p;i=b+(q<<3)+4|0;f[i>>2]=h;m=+f[n>>2];B=+f[o>>2];if(!(!(m*m+B*B>=16.0)?!(p*p+h*h>=16.0):0)){f[n>>2]=0.0;f[o>>2]=0.0;f[a>>2]=0.0;f[i>>2]=0.0}q=q+1|0}Nb=A;return}function Zk(b,c,d){b=b|0;c=c|0;d=d|0;if(!d)d=0;else{d=c+9|0;a[b+33>>0]=a[d>>0]|0;a[b+32>>0]=a[d>>0]|0;a[b+31>>0]=a[d>>0]|0;a[b+30>>0]=a[d>>0]|0;a[b+29>>0]=a[d>>0]|0;a[b+28>>0]=a[d>>0]|0;d=c+8|0;a[b+27>>0]=a[d>>0]|0;a[b+26>>0]=a[d>>0]|0;a[b+25>>0]=a[d>>0]|0;a[b+24>>0]=a[d>>0]|0;d=c+7|0;a[b+23>>0]=a[d>>0]|0;a[b+22>>0]=a[d>>0]|0;a[b+21>>0]=a[d>>0]|0;a[b+20>>0]=a[d>>0]|0;d=c+6|0;a[b+19>>0]=a[d>>0]|0;a[b+18>>0]=a[d>>0]|0;d=c+5|0;a[b+17>>0]=a[d>>0]|0;d=a[d>>0]|0}a[b+16>>0]=d;d=c+4|0;a[b+15>>0]=a[d>>0]|0;a[b+14>>0]=a[d>>0]|0;a[b+13>>0]=a[d>>0]|0;a[b+12>>0]=a[d>>0]|0;d=c+3|0;a[b+11>>0]=a[d>>0]|0;a[b+10>>0]=a[d>>0]|0;d=c+2|0;a[b+9>>0]=a[d>>0]|0;a[b+8>>0]=a[d>>0]|0;a[b+7>>0]=a[d>>0]|0;a[b+6>>0]=a[d>>0]|0;d=c+1|0;a[b+5>>0]=a[d>>0]|0;a[b+4>>0]=a[d>>0]|0;a[b+3>>0]=a[d>>0]|0;a[b+2>>0]=a[c>>0]|0;a[b+1>>0]=a[c>>0]|0;a[b>>0]=a[c>>0]|0;return}function _k(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+16|0;j=k;f=0;while(1){if(f>>>0>=28){i=3;break}e=c[90320+(f<<4)>>2]|0;if((wu(e)|0)==(d|0)?(Zx(e,b,d)|0)==0:0){i=6;break}f=f+1|0}do if((i|0)==3){e=0;while(1){if(e>>>0>=36)break;if(((e+-18|0)>>>0>10?(g=c[90768+(e<<3)>>2]|0,(wu(g)|0)==(d|0)):0)?(Zx(g,b,d)|0)==0:0){i=12;break}e=e+1|0}if((i|0)==12){e=uN(1,0,e|0)|0;f=M()|0;break}e=PV()|0;c[e>>2]=0;e=BQ(b,j,10)|0;i=PV()|0;if(((c[i>>2]|0)==0?(h=c[j>>2]|0,(h+1-b|0)==(d|0)):0)?(a[h>>0]|0)==99:0){e=xD(e)|0;f=M()|0;break}g=PV()|0;c[g>>2]=0;g=XP(b,j,0)|0;e=M()|0;i=PV()|0;if(!(c[i>>2]|0)){j=((e|0)>0|(e|0)==0&g>>>0>0)&((c[j>>2]|0)-b|0)==(d|0);f=j?e:0;e=j?g:0}else{f=0;e=0}}else if((i|0)==6){e=90320+(f<<4)+8|0;f=c[e+4>>2]|0;e=c[e>>2]|0}while(0);L(f|0);Nb=k;return e|0}function $k(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=g>>1;g=0-r|0;if(!d){j=e[a+(g<<1)>>1]|0;d=j}else{d=e[a+(g<<1)>>1]|0;j=e[a+(~r<<1)>>1]|0}h=e[a+(1-r<<1)>>1]|0;i=h+2|0;k=e[a+(2-r<<1)>>1]|0;l=k+2|0;m=e[a+(3-r<<1)>>1]|0;n=e[a+(4-r<<1)>>1]|0;o=e[a+(5-r<<1)>>1]|0;p=e[a+(6-r<<1)>>1]|0;q=e[a+(7-r<<1)>>1]|0;if(!f)g=q;else g=e[a+(8-r<<1)>>1]|0;b[a>>1]=(i+j+(d<<1)|0)>>>2;b[a+2>>1]=(l+d+(h<<1)|0)>>>2;b[a+4>>1]=(i+(k<<1)+m|0)>>>2;b[a+6>>1]=(l+(m<<1)+n|0)>>>2;j=a+8|0;b[j>>1]=(m+2+(n<<1)+o|0)>>>2;b[a+10>>1]=(n+2+(o<<1)+p|0)>>>2;b[a+12>>1]=(o+2+(p<<1)+q|0)>>>2;b[a+14>>1]=(p+2+(q<<1)+g|0)>>>2;h=a;d=c[h>>2]|0;h=c[h+4>>2]|0;i=c[j>>2]|0;j=c[j+4>>2]|0;g=1;while(1){if((g|0)==8)break;f=a+((H(g,r)|0)<<1)|0;q=f;c[q>>2]=d;c[q+4>>2]=h;f=f+8|0;c[f>>2]=i;c[f+4>>2]=j;g=g+1|0}return}function al(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+64|0;g=c[d>>2]|0;a:do if((wU(a)|0)!=0?(wO(c[a+12>>2]|0)|0)!=0:0)if(!(c[(c[d>>2]|0)+64>>2]|0)){e=(b|0)!=0;if((e?(c[b+28>>2]|0)==0:0)?c[b+24>>2]|0:0){d=-22;break}d=Zh(a)|0;if((d|0)>=0){f=g+68|0;AP(c[f>>2]|0);do if(e){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0)break;d=kq(c[f>>2]|0,b)|0;if((d|0)<0)break a}while(0);d=nt(c[c[g+32>>2]>>2]|0,c[f>>2]|0)|0;if((d|0)<0){AP(c[f>>2]|0);break}d=c[g+76>>2]|0;b:do if((c[d+248>>2]|0)==0?(h=qv(a,d)|0,(h|0)<0):0)if((h|0)<-11)switch(h|0){case -541478725:break b;default:{d=h;break a}}else switch(h|0){case -11:break b;default:{d=h;break a}}while(0);d=0}}else d=-541478725;else d=-22;while(0);return d|0}function bl(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;e=c+1|0;a[b>>0]=((a[c>>0]<<1)+(a[e>>0]|0)|0)/3|0;a[b+1>>0]=((a[c+2>>0]<<1)+(a[e>>0]|0)|0)/3|0;e=c+4|0;a[b+2>>0]=((a[c+3>>0]<<1)+(a[e>>0]|0)|0)/3|0;a[b+3>>0]=((a[c+5>>0]<<1)+(a[e>>0]|0)|0)/3|0;a[b+4>>0]=((a[c+7>>0]|0)+(a[c+6>>0]|0)|0)/2|0;a[b+5>>0]=((a[c+9>>0]|0)+(a[c+8>>0]|0)|0)/2|0;a[b+6>>0]=a[c+10>>0]|0;a[b+7>>0]=a[c+11>>0]|0;a[b+8>>0]=((a[c+13>>0]|0)+(a[c+12>>0]|0)|0)/2|0;a[b+9>>0]=((a[c+15>>0]|0)+(a[c+14>>0]|0)|0)/2|0;a[b+10>>0]=a[c+16>>0]|0;if(d|0){a[b+11>>0]=a[c+17>>0]|0;a[b+12>>0]=a[c+18>>0]|0;a[b+13>>0]=a[c+19>>0]|0;a[b+14>>0]=((a[c+21>>0]|0)+(a[c+20>>0]|0)|0)/2|0;a[b+15>>0]=((a[c+23>>0]|0)+(a[c+22>>0]|0)|0)/2|0;a[b+16>>0]=((a[c+25>>0]|0)+(a[c+24>>0]|0)|0)/2|0;a[b+17>>0]=((a[c+27>>0]|0)+(a[c+26>>0]|0)|0)/2|0;a[b+18>>0]=((a[c+29>>0]|0)+(a[c+28>>0]|0)+(a[c+30>>0]|0)+(a[c+31>>0]|0)|0)/4|0;a[b+19>>0]=((a[c+33>>0]|0)+(a[c+32>>0]|0)|0)/2|0}return}function cl(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0;m=+f[a>>2];j=+f[a+16>>2];l=a+4|0;i=+f[l>>2];k=+f[a+20>>2];c=1;d=0.0;e=0.0;g=0.0;h=m*k-j*i;i=m*j+i*k;while(1){if((c|0)==38)break;p=+f[a+(c<<3)>>2];o=+f[a+(c<<3)+4>>2];q=c+2|0;n=+f[a+(q<<3)>>2];m=+f[a+(q<<3)+4>>2];c=c+1|0;d=d+(p*p+o*o);e=e+(p*k-o*j);g=g+(p*j+o*k);h=h+(p*m-o*n);i=i+(p*n+o*m);j=n;k=m}f[b+8>>2]=i;f[b+12>>2]=h;p=+f[a>>2];o=+f[l>>2];f[b+40>>2]=d+p*p+o*o;r=a+304|0;o=+f[r>>2];c=a+308|0;p=+f[c>>2];f[b+16>>2]=d+o*o+p*p;q=a+8|0;s=a+12|0;f[b+24>>2]=g+ +f[a>>2]*+f[q>>2]+ +f[l>>2]*+f[s>>2];f[b+28>>2]=e+ +f[a>>2]*+f[s>>2]-+f[l>>2]*+f[q>>2];q=a+312|0;l=a+316|0;f[b>>2]=g+ +f[r>>2]*+f[q>>2]+ +f[c>>2]*+f[l>>2];f[b+4>>2]=e+ +f[r>>2]*+f[l>>2]-+f[c>>2]*+f[q>>2];return}function dl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a+23412>>2]|0;g=0;while(1){if(g>>>0>=i>>>0)break;j=c[a+23404+(g<<2)>>2]|0;h=0;while(1){if(h>>>0>=j>>>0)break;f=(h<<1)+16|0;k=a+23416+(g*1920|0)+(f*40|0)|0;b=k;d=a+23416+(g*1920|0)+(h*40|0)|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=0;while(1){if((b|0)==3)break;e=a+23416+(g*1920|0)+(f*40|0)+12+(b<<2)|0;c[e>>2]=c[e>>2]<<1;b=b+1|0}c[a+23416+(g*1920|0)+(f*40|0)+24>>2]=1;c[a+23416+(g*1920|0)+(f*40|0)+28>>2]=c[(c[a+23416+(g*1920|0)+(f*40|0)+36>>2]|0)+76>>2];b=k+40|0;d=k;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));d=a+23416+(g*1920|0)+(h*40|0)+36|0;b=0;while(1){if((b|0)==3)break;f=k+40+(b<<2)|0;c[f>>2]=(c[f>>2]|0)+(c[(c[c[d>>2]>>2]|0)+32+(b<<2)>>2]|0);b=b+1|0}c[k+64>>2]=2;c[k+68>>2]=c[(c[k+76>>2]|0)+80>>2];h=h+1|0}g=g+1|0}return}function el(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+48|0;k=l+16|0;j=l+8|0;i=l;h=l+24|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];h=_g(d,h,g)|0;a:do if((h|0)<0)g=-1094995529;else{g=c[d+4>>2]|0;if((g|0)>12){c[i>>2]=g;mx(b,16,187345,i);g=-1094995529;break}if((g+-3|0)>>>0>4&(c[d>>2]|0)==23){c[j>>2]=g;mx(b,16,189688,j);g=-1094995529;break}JK(e,h);g=c[d>>2]|0;switch(g|0){case 23:case 17:case 4:case 2:case 1:{g=Th(a,b,e,f,d,c[d+12>>2]|0)|0;if((g|0)<0)break a;break}case 39:{g=Lk(a,b,e,d,c[d+12>>2]|0)|0;if((g|0)<0)break a;break}default:{c[k>>2]=(c[d+16>>2]|0)==1?189730:1137073;c[k+4>>2]=g;PM(b,189735,k);g=-38;break a}}g=SU(e)|0}while(0);Nb=l;return g|0}function fl(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;d=d+(0-(g&-2)<<1)|0;while(1){if((i|0)==7)break;l=d+2|0;k=d+-2|0;m=d+4|0;n=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;g=d+6|0;b[h>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[d+-4>>1]|0)+n+(e[g>>1]|0);g=H((e[g>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+g+(e[d+8>>1]|0);h=h+8|0;i=i+1|0;d=d+(j<<1)|0}h=f>>1;d=c+16|0;g=0;while(1){if((g|0)==2)break;j=b[d+-8>>1]|0;n=(b[d>>1]|0)+10230|0;l=(b[d+8>>1]|0)+10230|0;k=(b[d+16>>1]|0)+10230|0;m=(b[d+24>>1]|0)+10230|0;c=b[d+32>>1]|0;f=(b[d+-16>>1]|0)+10742+m+((l+n|0)*20|0)+(H(k+(j+10230)|0,-5)|0)>>10;b[a>>1]=f>>>0<1024?f:(f^-2147483648)>>31&1023;n=j+20972+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[a+(h<<1)>>1]=n>>>0<1024?n:(n^-2147483648)>>31&1023;a=a+2|0;d=d+2|0;g=g+1|0}return}function gl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=(e|0)==0&(f|0)==-2147483648;if(h)if((b|0)==0&(d|0)==-2147483648)g=0;else{i=a+928|0;c[i>>2]=b;c[i+4>>2]=d;i=5}else{g=a+928|0;l=g;k=c[l+4>>2]|0;j=a+912|0;m=j;l=kP(c[m>>2]|0,c[m+4>>2]|0,((k|0)>(f|0)|((k|0)==(f|0)?(c[l>>2]|0)>>>0>=e>>>0:0))&1|0,0)|0;k=M()|0;c[j>>2]=l;c[j+4>>2]=k;c[g>>2]=e;c[g+4>>2]=f;if((b|0)==0&(d|0)==-2147483648){g=a+920|0;c[g>>2]=e;c[g+4>>2]=f;g=0}else i=5}if((i|0)==5){g=a+920|0;k=g;l=c[k+4>>2]|0;m=a+904|0;j=m;k=kP(c[j>>2]|0,c[j+4>>2]|0,((l|0)>(d|0)|((l|0)==(d|0)?(c[k>>2]|0)>>>0>=b>>>0:0))&1|0,0)|0;l=M()|0;c[m>>2]=k;c[m+4>>2]=l;c[g>>2]=b;c[g+4>>2]=d;g=1}l=a+904|0;j=c[l+4>>2]|0;m=a+912|0;k=c[m+4>>2]|0;m=g&(h|((j|0)<(k|0)|((j|0)==(k|0)?(c[l>>2]|0)>>>0<=(c[m>>2]|0)>>>0:0)));L((m?d:f)|0);return (m?b:e)|0}function hl(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Nb;Nb=Nb+32|0;v=x+16|0;u=x+8|0;t=x;r=(c[h+4>>2]|0)==2?3:5;s=h+16|0;q=(1<<r)+-1|0;p=0;i=0;a:while(1){if((p|0)>=(c[s>>2]|0)){i=0;break}j=0;while(1){if((j|0)>=(d[h>>0]|0|0))break;n=Yz(g,4)|0;if((n|0)==12){w=8;break a}k=j;do{l=Yz(g,r)|0;k=(k&255)+l|0;if((NS(g)|0)<0){w=10;break a}o=k&255;m=a[h>>0]|0;if(o>>>0>(m&255)>>>0){w=12;break a}}while((l|0)==(q|0));while(1){if((j|0)>=(o|0))break;c[e+(i<<2)>>2]=n;c[f+(i<<2)>>2]=o;j=j+1|0;i=i+1|0}}p=p+1|0}if((w|0)==8){mx(c[b+4>>2]|0,16,189030,t);i=-1094995529}else if((w|0)==10){mx(c[b+4>>2]|0,16,189049,u);i=-1094995529}else if((w|0)==12){i=c[b+4>>2]|0;c[v>>2]=o;c[v+4>>2]=m&255;mx(i,16,189117,v);i=-1094995529}Nb=x;return i|0}function il(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=H(j,g)|0;k=b+n|0;o=k;k=k+4|0;m=H(j,h)|0;p=e+m|0;l=p;p=p+4|0;p=fJ(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24)|0;l=M()|0;k=H(j,f)|0;o=a+k|0;c[o>>2]=p;c[o+4>>2]=l;n=b+(n+8)|0;o=n;n=n+4|0;m=e+(m+8)|0;l=m;m=m+4|0;m=fJ(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;l=M()|0;k=a+(k+8)|0;c[k>>2]=m;c[k+4>>2]=l;j=j+1|0}return}function jl(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=Nb;Nb=Nb+176|0;a=l+152|0;h=l+32|0;i=l;k=1136320;j=c[k>>2]|0;k=c[k+4>>2]|0;if((c[40522]|0)>>>0>=121){c[a>>2]=209510;c[a+4>>2]=209537;c[a+8>>2]=77;mx(0,0,214689,a);ba()}e=(j|0)!=0|(k|0)!=0;a=0;b=0;d=0;while(1){f=fa()|0;g=f-a|0;if(((b<<1|1)+a|0)<(f|0)){a=1136320;a=kP(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=M()|0;m=1136320;c[m>>2]=a;c[m+4>>2]=b;m=1133232+((a&511)<<2)|0;c[m>>2]=(c[m>>2]|0)+(g>>>0<3294638521?g:g+1000328775|0);if((f-d|0)>31249?(m=iP(a|0,b|0,j|0,k|0)|0,b=M()|0,b>>>0>0|(b|0)==0&m>>>0>64|e&(b>>>0>0|(b|0)==0&m>>>0>4)):0)break}else{m=1133232+((c[284080]&511)<<2)|0;b=H(c[m>>2]|0,1664525)|0;c[m>>2]=(g>>>0<3294638521?g:g+1000328775|0)+1013904223+b}a=f;b=g;d=(d|0)==0?f:d}zo(h,160)|0;Ju(h,1133232,2048);er(h,i);m=IS(c[i>>2]|0)|0;m=(IS(c[i+16>>2]|0)|0)+m|0;Nb=l;return m|0}function kl(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=Nb;Nb=Nb+224|0;p=t+208|0;q=t+160|0;r=t+80|0;s=t;h=q;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[p>>2]=c[e>>2];if((Wc(0,d,p,r,q,f,g)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=NV(b)|0;else o=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;h=b+48|0;if(!(c[h>>2]|0)){i=b+44|0;j=c[i>>2]|0;c[i>>2]=s;k=b+28|0;c[k>>2]=s;l=b+20|0;c[l>>2]=s;c[h>>2]=80;m=b+16|0;c[m>>2]=s+80;e=Wc(b,d,p,r,q,f,g)|0;if(j){Zb[c[b+36>>2]&15](b,0,0)|0;e=(c[l>>2]|0)==0?-1:e;c[i>>2]=j;c[h>>2]=0;c[m>>2]=0;c[k>>2]=0;c[l>>2]=0}}else e=Wc(b,d,p,r,q,f,g)|0;h=c[b>>2]|0;c[b>>2]=h|n;if(o|0)MV(b);e=(h&32|0)==0?e:-1}Nb=t;return e|0}function ll(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;h=H(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;k=((d[b>>0]|0)+1+(((H(l,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[b>>0]=k;b=b+e|0;g=g+1|0;c=c+e|0}}else{h=(k|0)==0?1:e;g=0;while(1){if((g|0)>=(f|0))break a;k=H(l,d[c>>0]|0)|0;k=((d[b>>0]|0)+1+((k+32+(H(i,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=k;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(l,d[c>>0]|0)|0;o=H(j,d[c+1>>0]|0)|0;m=c+e|0;n=H(k,d[m>>0]|0)|0;n=((d[b>>0]|0)+1+((p+32+o+n+(H(h,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=n;b=b+e|0;g=g+1|0;c=m}}while(0);return}function ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a>>>0>16?a:16;if(!(d+-1&d))a=d;else{a=16;while(1)if(a>>>0<d>>>0)a=a<<1;else break}if((-64-a|0)>>>0<=b>>>0){h=PV()|0;c[h>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=xc(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;ud(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;ud(f,i)}i=b+8|0;return i|0}function nl(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function ol(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=b+112|0;f=g;e=c[f>>2]|0;f=c[f+4>>2]|0;if(!((e|0)==0&(f|0)==0)?(i=b+120|0,h=c[i+4>>2]|0,!((h|0)<(f|0)|((h|0)==(f|0)?(c[i>>2]|0)>>>0<e>>>0:0))):0)j=4;else{e=HJ(b)|0;if((e|0)>=0){f=c[g>>2]|0;g=c[g+4>>2]|0;i=c[b+8>>2]|0;if(!((f|0)==0&(g|0)==0)){h=c[b+4>>2]|0;k=i-h|0;l=((k|0)<0)<<31>>31;m=b+120|0;f=iP(f|0,g|0,c[m>>2]|0,c[m+4>>2]|0)|0;m=M()|0;g=i;if((m|0)>(l|0)|(m|0)==(l|0)&f>>>0>k>>>0)j=9;else c[b+104>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+104>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;k=g+1-f|0;m=b+120|0;l=m;k=kP(c[l>>2]|0,c[l+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;l=M()|0;c[m>>2]=k;c[m+4>>2]=l}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+104>>2]=0;e=-1}return e|0}function pl(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=Nb;Nb=Nb+64|0;h=i;g=0;while(1){if((g|0)==4)break;q=g<<2;m=b[e+(q<<1)>>1]|0;n=q|1;k=b[e+(n<<1)>>1]|0;p=k+m|0;k=m-k|0;m=q|2;o=b[e+(m<<1)>>1]|0;j=q|3;r=b[e+(j<<1)>>1]|0;l=o-r|0;o=r+o|0;c[h+(q<<2)>>2]=o+p;c[h+(n<<2)>>2]=p-o;c[h+(m<<2)>>2]=k-l;c[h+(j<<2)>>2]=l+k;g=g+1|0}g=0;while(1){if((g|0)==4)break;r=d[172140+g>>0]|0;q=c[h+(g<<2)>>2]|0;n=c[h+(g+8<<2)>>2]|0;p=n+q|0;n=q-n|0;q=c[h+(g+4<<2)>>2]|0;m=c[h+(g+12<<2)>>2]|0;o=q-m|0;q=m+q|0;m=((H(q+p|0,f)|0)+128|0)>>>8&65535;b[a+(r<<1)>>1]=m;m=((H(o+n|0,f)|0)+128|0)>>>8&65535;b[a+(r+16<<1)>>1]=m;o=((H(n-o|0,f)|0)+128|0)>>>8&65535;b[a+(r+64<<1)>>1]=o;q=((H(p-q|0,f)|0)+128|0)>>>8&65535;b[a+(r+80<<1)>>1]=q;g=g+1|0}Nb=i;return}function ql(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;y=a+32|0;z=a+36|0;i=c[z>>2]|0;w=c[a+40>>2]|0;h=+(w|0);x=c[a+48>>2]|0;j=c[y>>2]|0;k=0;while(1){if((j|0)<(x|0))break;j=j-x|0;k=k+1|0}r=1.0/h;s=a+4|0;t=a+12|0;u=a+8|0;v=a+28|0;q=a+24|0;p=0;a=j;j=k;while(1){if((p|0)>=(e|0))break;m=c[t>>2]|0;n=(c[s>>2]|0)+((H(m,a)|0)<<3)|0;o=c[u>>2]|0;k=0;h=0.0;l=0.0;while(1){if((k|0)>=(o|0))break;B=+g[d+(k+j<<3)>>3];A=l+B*+g[n+(k<<3)>>3];B=h+B*+g[n+(k+m<<3)>>3];k=k+1|0;h=B;l=A}g[b+(p<<3)>>3]=l+r*(h-l)*+(i|0);i=(c[v>>2]|0)+i|0;o=(i|0)<(w|0);k=o?0:w;a=(c[q>>2]|0)+a+((o^1)&1)|0;while(1){if((a|0)<(x|0))break;j=j+1|0;a=a-x|0}p=p+1|0;i=i-k|0}if(f|0){c[z>>2]=i;c[y>>2]=a}return j|0}function rl(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;y=a+32|0;z=a+36|0;i=c[z>>2]|0;w=c[a+40>>2]|0;h=+(w|0);x=c[a+48>>2]|0;j=c[y>>2]|0;k=0;while(1){if((j|0)<(x|0))break;j=j-x|0;k=k+1|0}r=1.0/h;s=a+4|0;t=a+12|0;u=a+8|0;v=a+28|0;q=a+24|0;p=0;a=j;j=k;while(1){if((p|0)>=(e|0))break;m=c[t>>2]|0;n=(c[s>>2]|0)+((H(m,a)|0)<<2)|0;o=c[u>>2]|0;k=0;h=0.0;l=0.0;while(1){if((k|0)>=(o|0))break;B=+f[d+(k+j<<2)>>2];A=l+B*+f[n+(k<<2)>>2];B=h+B*+f[n+(k+m<<2)>>2];k=k+1|0;h=B;l=A}f[b+(p<<2)>>2]=r*(h-l)*+(i|0)+l;i=(c[v>>2]|0)+i|0;o=(i|0)<(w|0);k=o?0:w;a=(c[q>>2]|0)+a+((o^1)&1)|0;while(1){if((a|0)<(x|0))break;j=j+1|0;a=a-x|0}p=p+1|0;i=i-k|0}if(g|0){c[z>>2]=i;c[y>>2]=a}return j|0}function sl(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function tl(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function ul(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=d+44|0;e=c[l>>2]|0;a:do if(!e){e=0;m=10}else{g=Ax(e*12|0)|0;b:do if(g|0){k=d+40|0;e=c[l>>2]|0;f=e*12|0;Bk(g|0,c[k>>2]|0,f|0)|0;j=b+40|0;c[j>>2]=g;if((d|0)!=(b|0))jq(g|0,0,f|0)|0;i=0;while(1){if((i|0)>=(e|0)){m=10;break a}e=c[(c[k>>2]|0)+(i*12|0)+4>>2]|0;if(e>>>0>4294967263)break b;e=Ax(e+32|0)|0;if(!e)break b;f=c[k>>2]|0;g=f+(i*12|0)+4|0;Bk(e|0,c[f+(i*12|0)>>2]|0,c[g>>2]|0)|0;d=e+(c[g>>2]|0)|0;h=d+32|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(h|0));h=c[j>>2]|0;c[h+(i*12|0)>>2]=e;c[h+(i*12|0)+4>>2]=c[g>>2];c[h+(i*12|0)+8>>2]=c[f+(i*12|0)+8>>2];i=i+1|0;e=c[l>>2]|0}}while(0);AP(b);e=-12}while(0);if((m|0)==10){c[b+44>>2]=e;e=0}return e|0}function vl(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function wl(a,b,d){a=a|0;b=b|0;d=d|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0;k=c[a+8>>2]|0;l=c[a+24>>2]|0;m=c[a+28>>2]|0;i=1<<c[a+20>>2];j=i>>2;g=0;h=d;d=d+(i>>1<<2)+-4|0;while(1){if((g|0)>=(j|0))break;n=e[k+(g<<1)>>1]|0;o=l+(g<<2)|0;p=m+(g<<2)|0;f[b+(n<<3)>>2]=+f[d>>2]*+f[o>>2]-+f[h>>2]*+f[p>>2];f[b+(n<<3)+4>>2]=+f[d>>2]*+f[p>>2]+ +f[h>>2]*+f[o>>2];g=g+1|0;h=h+8|0;d=d+-8|0}g=i>>3;fc[c[a+36>>2]&255](a,b);d=0;while(1){if((g|0)<=(d|0))break;k=g-d+-1|0;n=b+(k<<3)+4|0;r=+f[n>>2];t=+f[m+(k<<2)>>2];a=b+(k<<3)|0;s=+f[a>>2];q=+f[l+(k<<2)>>2];k=d+g|0;p=b+(k<<3)+4|0;x=+f[p>>2];w=+f[m+(k<<2)>>2];o=b+(k<<3)|0;v=+f[o>>2];u=+f[l+(k<<2)>>2];f[a>>2]=r*t-s*q;f[n>>2]=w*v+x*u;f[o>>2]=x*w-v*u;f[p>>2]=t*s+r*q;d=d+1|0}return}function xl(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,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;q=d+8|0;r=e+8|0;s=d+12|0;t=e+12|0;u=d+16|0;v=e+16|0;h=d+24|0;i=e+24|0;j=d+4|0;k=e+36|0;l=d+20|0;m=e+52|0;n=d+28|0;o=e+60|0;p=a+4|0;g=0;while(1){if((g|0)>=(f|0))break;y=H(c[r>>2]|0,b[(c[q>>2]|0)+(g<<1)>>1]|0)|0;y=(H(c[t>>2]|0,b[(c[s>>2]|0)+(g<<1)>>1]|0)|0)+y|0;w=H(c[e>>2]|0,b[(c[d>>2]|0)+(g<<1)>>1]|0)|0;x=H(c[v>>2]|0,b[(c[u>>2]|0)+(g<<1)>>1]|0)|0;y=y+16384|0;x=(y+w+x+(H(c[i>>2]|0,b[(c[h>>2]|0)+(g<<1)>>1]|0)|0)|0)>>>15&65535;b[(c[a>>2]|0)+(g<<1)>>1]=x;x=H(c[k>>2]|0,b[(c[j>>2]|0)+(g<<1)>>1]|0)|0;w=H(c[m>>2]|0,b[(c[l>>2]|0)+(g<<1)>>1]|0)|0;w=(y+x+w+(H(c[o>>2]|0,b[(c[n>>2]|0)+(g<<1)>>1]|0)|0)|0)>>>15&65535;b[(c[p>>2]|0)+(g<<1)>>1]=w;g=g+1|0}return}function yl(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;k=((H(m,e[c>>1]|0)|0)+32|0)>>>6&65535;b[a>>1]=k;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=(k|0)==0?1:l;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;k=(k+32+(H(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6&65535;b[a>>1]=k;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(m,e[c>>1]|0)|0;o=H(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=H(k,e[d>>1]|0)|0;n=(p+32+o+n+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6&65535;b[a>>1]=n;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function zl(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=i|0;var j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0;q=Nb;Nb=Nb+16|0;p=q;j=0;while(1){if((j|0)==3)break;f[p+(j<<2)>>2]=+f[161988+(j<<2)>>2]*h;j=j+1|0}m=d+4|0;j=0;while(1){if((j|0)>=(i|0))break;r=+f[b+(j<<3)>>2];t=+f[d>>2];s=+f[b+(j<<3)+4>>2];k=+f[m>>2];n=j+2|0;o=j+5|0;h=r*t-s*k;k=t*s+r*k;l=0;while(1){if((l|0)==3)break;r=+f[p+(l<<2)>>2];x=n-l|0;u=+f[c+(l*296|0)+(x<<3)>>2];w=+f[c+(l*296|0)+(x<<3)+4>>2];v=+f[e+(l<<3)>>2];t=+f[e+(l<<3)+4>>2];s=u*v-w*t-h*r;t=w*v+u*t-k*r;f[c+(l*296|0)+(o<<3)>>2]=h+r*s;f[c+(l*296|0)+(o<<3)+4>>2]=k+r*t;h=s;k=t;l=l+1|0}x=g+(j<<2)|0;f[a+(j<<3)>>2]=h*+f[x>>2];f[a+(j<<3)+4>>2]=k*+f[x>>2];j=j+1|0}Nb=q;return}function Al(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=Nb;Nb=Nb+32|0;i=o+16|0;h=o;f=c[a+28200>>2]|0;b=c[f+84>>2]|0;d=c[f+80>>2]|0;e=c[f+88>>2]|0;f=c[f+92>>2]|0;m=c[a+25656>>2]|0;p=d+b|0;k=m-p|0;n=c[a+25660>>2]|0;g=f+e|0;j=n-g|0;if(m>>>0<=p>>>0){c[h>>2]=199992;c[h+4>>2]=199033;c[h+8>>2]=880;mx(0,0,214689,h);ba()}if(n>>>0<=g>>>0){c[i>>2]=200046;c[i+4>>2]=199033;c[i+8>>2]=881;mx(0,0,214689,i);ba()}g=a+29648|0;i=c[g>>2]|0;h=a+29652|0;if((((i|0)>0?(l=c[h>>2]|0,(e|d|0)==0&(l|0)>0):0)?(i+15^k+15)>>>0<16:0)?!((l|0)>(j|0)|((i|0)>(k|0)|(l+15^j+15)>>>0>15)):0){h=l;g=i;f=n-l|0;e=0;d=0;b=m-i|0}else{c[g>>2]=0;c[h>>2]=0;h=j;g=k}p=c[a+4>>2]|0;c[p+132>>2]=m;c[p+136>>2]=n;c[p+124>>2]=g;c[p+128>>2]=h;c[a+25704>>2]=b;c[a+25700>>2]=d;c[a+25708>>2]=e;c[a+25712>>2]=f;Nb=o;return}function Bl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=Nb;Nb=Nb+32|0;n=o+16|0;yO(e,2);m=Yz(e,4)|0;if((c[b+4>>2]|0)!=(m|0))mx(a,24,188040,o);k=Yz(e,4)|0;b=Yz(e,4)|0;g=Yz(e,4)|0;h=Yz(e,2)|0;l=Yz(e,3)|0;m=Yz(e,4)|0;if(NL(e)|0)yO(e,4);if(NL(e)|0)yO(e,4);if(NL(e)|0)yO(e,3);i=b+k|0;j=i+g|0;do if((NS(e)|0)>=(((m+j|0)*5|0)+(l+h+m<<2)|0)){lr(d,1,e,k);lr(d+(k*3|0)|0,2,e,b);lr(d+(i*3|0)|0,3,e,g);lr(d+(j*3|0)|0,4,e,h);g=j+h|0;JK(e,l<<2);lr(d+(g*3|0)|0,5,e,m);eQ(e,f);b=(Yz(e,8)|0)<<3;if((NS(e)|0)<(b|0)){mx(a,16,188151,n);b=-1094995529;break}else{JK(e,b);b=m+g|0;break}}else{mx(a,16,188151,o+8|0);b=-1}while(0);Nb=o;return b|0}function Cl(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;d=d+(0-(g&-2)<<1)|0;while(1){if((i|0)==7)break;l=d+2|0;k=d+-2|0;m=d+4|0;n=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;g=d+6|0;b[h>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[d+-4>>1]|0)+n+(e[g>>1]|0);g=H((e[g>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+g+(e[d+8>>1]|0);h=h+8|0;i=i+1|0;d=d+(j<<1)|0}h=f>>1;d=c+16|0;g=0;while(1){if((g|0)==2)break;j=b[d+-8>>1]|0;n=b[d>>1]|0;l=b[d+8>>1]|0;k=b[d+16>>1]|0;m=b[d+24>>1]|0;c=b[d+32>>1]|0;f=(b[d+-16>>1]|0)+512+m+((l+n|0)*20|0)+(H(k+j|0,-5)|0)>>10;b[a>>1]=f>>>0<512?f:(f^-2147483648)>>31&511;n=j+512+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[a+(h<<1)>>1]=n>>>0<512?n:(n^-2147483648)>>31&511;a=a+2|0;d=d+2|0;g=g+1|0}return}function Dl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a+13444>>2]|0;e=c[a+13384>>2]|0;b=kP(b|0,((b|0)<0)<<31>>31|0,2,0)|0;b=kP(b|0,M()|0,e|0,((e|0)<0)<<31>>31|0)|0;e=M()|0;h=c[f+48>>2]|0;d=((h|0)<0)<<31>>31;e=oK(b|0,e|0,h|0,d|0)|0;b=M()|0;g=c[f+32>>2]|0;g=iP(e|0,b|0,g|0,((g|0)<0)<<31>>31|0)|0;b=M()|0;e=c[a+44>>2]|0;a=c[a+40>>2]|0;d=oK(a|0,((a|0)<0)<<31>>31|0,h|0,d|0)|0;d=Re(g,b,e,((e|0)<0)<<31>>31,d,M()|0,3)|0;e=M()|0;a=kP(d|0,e|0,2,0)|0;b=M()|0;if(c[f+44>>2]|0)if((e|0)>0|(e|0)==0&d>>>0>2147483645){b=-1;a=-22}else{e=c[f+16>>2]|0;e=oK(a|0,b|0,e|0,((e|0)<0)<<31>>31|0)|0;e=kP(e|0,M()|0,-1,-1)|0;g=M()|0;h=c[f+20>>2]|0;h=Eu(e|0,g|0,h|0,((h|0)<0)<<31>>31|0)|0;h=kP(h|0,M()|0,1,0)|0;f=M()|0;g=(b|0)>(f|0)|(b|0)==(f|0)&a>>>0>h>>>0;b=g?b:f;a=g?a:h}L(b|0);return a|0}function El(e,f,g,h,i,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0;o=(c[f+21792>>2]>>c[f+21828>>2]<<4)+j|0;do if(k|0){j=a[(d[88688+h>>0]|0)+(f+28272)>>0]|0;if((c[(c[(c[f+23416+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+23416+(j*40|0)+24>>2]&3|0)==(c[e+26364>>2]|0):0)break;n=yJ(f,h,i,o,0)|0;j=g+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0)c[m>>2]=(c[m>>2]|0)+1;k=k<<16>>16;b[j>>1]=(n|0)<(k|0)?k:n}while(0);do if(l|0){j=a[(d[88688+h>>0]|0)+(f+28312)>>0]|0;if((c[(c[(c[f+25336+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+25336+(j*40|0)+24>>2]&3|0)==(c[e+26364>>2]|0):0)break;n=yJ(f,h,i,o,1)|0;j=g+96+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0){m=m+4|0;c[m>>2]=(c[m>>2]|0)+1}m=k<<16>>16;b[j>>1]=(n|0)<(m|0)?m:n}while(0);return}function Fl(a,b,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;p=Nb;Nb=Nb+16|0;n=p;m=p+4|0;c[m>>2]=a;if(!a){a=zQ()|0;c[m>>2]=a;if(!a)a=0;else o=3}else o=3;do if((o|0)==3){c[a+4>>2]=k;c[a+8>>2]=l;if((((((((_P(a,211968,b,d,0)|0)>=0?(_P(a,211811,e,((e|0)<0)<<31>>31,0)|0)>=0:0)?(_P(a,211726,f,((f|0)<0)<<31>>31,0)|0)>=0:0)?(_P(a,211906,g,h,0)|0)>=0:0)?(_P(a,211769,i,((i|0)<0)<<31>>31,0)|0)>=0:0)?(_P(a,211685,j,((j|0)<0)<<31>>31,0)|0)>=0:0)?(o=a+104|0,o=px(c[o>>2]|0,c[o+4>>2]|0)|0,(_P(a,211547,o,((o|0)<0)<<31>>31,0)|0)>=0):0)?(o=a+112|0,o=px(c[o>>2]|0,c[o+4>>2]|0)|0,(_P(a,211592,o,((o|0)<0)<<31>>31,0)|0)>=0):0){_P(a,211639,0,0,0)|0;break}mx(a,16,210092,n);RM(m);a=0}while(0);Nb=p;return a|0}function Gl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;g=j;i=a+32856|0;do if(!(Vu(i,b+2+(d+-3>>31)+(d+-33>>31)+(a+32904)|0)|0)){c[e>>2]=0;d=0}else{f=1;d=b+3|0;while(1){if(f>>>0>=9){h=5;break}if(!(Vu(i,a+32904+d|0)|0)){b=f;d=f;break}b=d+(f>>>0<4&1)|0;f=f+1|0;d=b}if((h|0)==5){b=3;while(1){if(!(uI(i)|0))break;if(b>>>0>23){h=15;break}d=(1<<b)+f|0;b=b+1|0;f=d}if((h|0)==15){mx(c[(c[a>>2]|0)+4>>2]|0,16,201512,g);d=-2147483648;break}while(1){d=b+-1|0;if(!b)break;b=d;f=((uI(i)|0)<<d)+f|0}b=f;d=(f|0)<70?f:70}c[e>>2]=d;e=c[i>>2]|0;d=e<<1;c[i>>2]=d;if(!(e&32767)){VM(i);d=c[i>>2]|0}e=c[a+32860>>2]<<17;a=d-e|0;d=a>>31;c[i>>2]=(d&e)+a;d=(d^0-b)-d|0}while(0);Nb=j;return d|0}function Hl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=Nb;Nb=Nb+64|0;g=h;f=0;while(1){if((f|0)==4)break;p=f<<2;l=c[b+(p<<2)>>2]|0;m=p|1;j=c[b+(m<<2)>>2]|0;o=j+l|0;j=l-j|0;l=p|2;n=c[b+(l<<2)>>2]|0;i=p|3;q=c[b+(i<<2)>>2]|0;k=n-q|0;n=q+n|0;c[g+(p<<2)>>2]=n+o;c[g+(m<<2)>>2]=o-n;c[g+(l<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;q=d[172140+f>>0]|0;p=c[g+(f<<2)>>2]|0;m=c[g+(f+8<<2)>>2]|0;o=m+p|0;m=p-m|0;p=c[g+(f+4<<2)>>2]|0;l=c[g+(f+12<<2)>>2]|0;n=p-l|0;p=l+p|0;l=(H(p+o|0,e)|0)+128>>8;c[a+(q<<2)>>2]=l;l=(H(n+m|0,e)|0)+128>>8;c[a+(q+16<<2)>>2]=l;n=(H(m-n|0,e)|0)+128>>8;c[a+(q+64<<2)>>2]=n;p=(H(o-p|0,e)|0)+128>>8;c[a+(q+80<<2)>>2]=p;f=f+1|0}Nb=h;return}function Il(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function Jl(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=c[b+25372>>2]|0;r=(h|0)!=0;p=r?16:0;q=c[b+23404>>2]|0;q=r?(q<<1)+16|0:q;if(r)n=1;else n=(c[a+26364>>2]|0)!=3;jq(d+(e*192|0)|0,0,192)|0;k=s+616+(g<<3)+(e<<2)|0;l=s+632|0;h=0;while(1){if((h|0)==2)break;m=h+1|0;o=n&(h|0)!=(f|0);j=(h^f)+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0))break;h=c[s+104+(g<<8)+(e<<7)+(i<<2)>>2]|0;if(n)a=(h&3|0)==3?m+(h&-4)|0:h;else a=h|3;h=p;while(1){if((h|0)>=(q|0))break;if((c[b+23416+(h*40|0)+24>>2]&3|c[(c[b+23416+(h*40|0)+36>>2]|0)+88>>2]<<2|0)==(a|0)){t=14;break}h=h+1|0}if((t|0)==14){t=0;h=r?h+-16^f:h;if(c[l>>2]|0)c[d+(e*192|0)+(j+(i<<1)<<2)>>2]=h;if(!o)c[d+(e*192|0)+(i<<2)>>2]=h}i=i+1|0}h=m}return}function Kl(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=Nb;Nb=Nb+144|0;l=o;m=o+128|0;n=c[a+4916>>2]|0;ic[c[a+2964>>2]&255](l,e,f,g);k=$b[c[a+6248>>2]&63](a,l,0,c[a+1920>>2]|0,m)|0;c[a+16>>2]=k;if(!(c[a+4312>>2]|0)){e=a+4940|0;f=a+4936|0;h=0;g=0}else{e=a+4924|0;f=a+4920|0;h=d[(c[a+4944>>2]|0)+((b[l>>1]|0)+256)>>0]|0;g=1}j=c[e>>2]|0;i=c[f>>2]|0;do if((k|0)>=(g|0)){f=0;while(1){c[m>>2]=g;if((g|0)==(k|0))break;e=b[l+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=n;f=0;h=e+h|0}g=g+1|0}e=d[a+204+k>>0]|0;c[m>>2]=e;e=(b[l+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+n|0;break}}while(0);Nb=o;return h|0}function Ll(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<16384?c:(c^-2147483648)>>31&16383)|0)>>>1;c=a+(i<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<16384?q:(q^-2147483648)>>31&16383)|0)>>>1;c=a+(g<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<16384?p:(p^-2147483648)>>31&16383)|0)>>>1;c=a+(h<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<16384?j:(j^-2147483648)>>31&16383)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function Ml(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;do if(c[a+26360>>2]|0){j=c[a+27e3>>2]|0;h=(H(j,f&-2)|0)+d|0;g=h+-1|0;i=(f&1|0)!=0;if(i?(c[b+832>>2]|0)==(e[(c[a+26356>>2]|0)+(g<<1)>>1]|0|0):0)g=((c[b+21828>>2]|0)==((c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>7&1|0)?j:0)+g|0;if(!(c[b+21828>>2]|0)){h=(H(j,f+-1|0)|0)+d|0;break}h=h-j|0;if(!i?(c[b+832>>2]|0)==(e[(c[a+26356>>2]|0)+(h<<1)>>1]|0|0):0)h=h-((c[(c[a+24364>>2]|0)+(h<<2)>>2]&128|0)==0?0:j)|0}else{h=c[b+21796>>2]|0;g=h+-1|0;h=h-(c[a+27e3>>2]<<((c[a+26364>>2]|0)!=3&1))|0}while(0);i=c[a+26356>>2]|0;d=c[b+832>>2]|0;if((d|0)==(e[i+(g<<1)>>1]|0|0))g=(c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>11&1^1;else g=0;if((d|0)==(e[i+(h<<1)>>1]|0|0))g=((c[(c[a+24364>>2]|0)+(h<<2)>>2]|0)>>>11&1^1)+g|0;return Vu(b+32856|0,((c[b+840>>2]|0)==3?g+13|0:g)+11+(b+32904)|0)|0}function Nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=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;w=Nb;Nb=Nb+64|0;v=w;p=a+8|0;q=v+48|0;r=v+52|0;s=v+56|0;t=v+60|0;u=v+4|0;e=v+8|0;g=v+12|0;h=v+16|0;i=v+40|0;j=v+20|0;k=v+44|0;l=v+24|0;m=v+32|0;n=v+28|0;o=v+36|0;a=b;b=0;while(1){if((b|0)==32)break;kc[c[p>>2]&127](v,a,1101408,1,8);c[d+(b<<3)>>2]=c[q>>2];c[d+(b<<3)+4>>2]=c[r>>2];c[d+256+(b<<3)>>2]=c[s>>2];c[d+256+(b<<3)+4>>2]=c[t>>2];c[d+512+(b<<3)>>2]=c[v>>2];c[d+512+(b<<3)+4>>2]=c[u>>2];c[d+768+(b<<3)>>2]=c[e>>2];c[d+768+(b<<3)+4>>2]=c[g>>2];f[d+1024+(b<<3)>>2]=+f[h>>2]+ +f[i>>2];f[d+1024+(b<<3)+4>>2]=+f[j>>2]+ +f[k>>2];f[d+1280+(b<<3)>>2]=+f[l>>2]+ +f[m>>2];f[d+1280+(b<<3)+4>>2]=+f[n>>2]+ +f[o>>2];a=a+8|0;b=b+1|0}Nb=w;return}function Ol(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;q=a+12|0;r=a+8|0;s=a+4|0;m=0;while(1){if((m|0)>=(e|0))break;t=c[q>>2]|0;u=c[r>>2]|0;v=c[s>>2]|0;n=c[a>>2]|0;o=b+(m<<4<<2)|0;i=n;j=v;k=u;f=t;l=0;while(1){if((l|0)==64)break;p=d[(l&3)+(92e3+(l>>>4<<2))>>0]|0;h=(c[92016+(l<<2)>>2]|0)+f|0;do if(l>>>0<32)if(l>>>0<16){f=(i^j)&k^i;g=l;break}else{f=i&k|j&~i;g=(l*5|0)+1|0;break}else if(l>>>0<48){f=i^j^k;g=(l*3|0)+5|0;break}else{f=(k|~i)^j;g=l*7|0;break}while(0);g=o+((g&15)<<2)|0;f=h+((d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)+f)|0;g=k;h=j;k=(f<<p|f>>>(32-p|0))+k|0;l=l+1|0;f=i;j=g;i=h}c[a>>2]=i+n;c[s>>2]=j+v;c[r>>2]=k+u;c[q>>2]=f+t;m=m+1|0}return}function Pl(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0;l=Nb;Nb=Nb+16|0;j=l;e=l+8|0;i=mP(b)|0;h=(M()|0)&2147483647;do if(h>>>0>2146435072|(h|0)==2146435072&i>>>0>0){c[a>>2]=0;c[a+4>>2]=0}else{if(+u(+b)>2147483650.0){c[a>>2]=b<0.0?-1:1;c[a+4>>2]=0;break}+gu(b,e);f=(c[e>>2]|0)+-1|0;f=(f|0)>0?f:0;c[e>>2]=f;e=uN(1,0,61-f|0)|0;f=M()|0;g=j+4|0;m=+t(+((+(e>>>0)+4294967296.0*+(f|0))*b+.5));h=~~m>>>0;i=+u(m)>=1.0?(m>0.0?~~+I(+t(m/4294967296.0),4294967295.0)>>>0:~~+G((m-+(~~m>>>0))/4294967296.0)>>>0):0;Mf(j,g,h,i,e,f,d,((d|0)<0)<<31>>31)|0;if(!(c[j>>2]|0)){if((d|0)!=2147483647&(b!=0.0&(d|0)>0))k=8}else if((d|0)!=2147483647&((d|0)>0&(b!=0.0&(c[g>>2]|0)==0)))k=8;if((k|0)==8)Mf(j,g,h,i,e,f,2147483647,0)|0;d=j;j=c[d+4>>2]|0;k=a;c[k>>2]=c[d>>2];c[k+4>>2]=j}while(0);Nb=l;return}function Ql(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=d>>1;l=e[a+(~k<<1)>>1]|0;q=e[a+(0-k<<1)>>1]|0;o=e[a+(1-k<<1)>>1]|0;n=e[a+(2-k<<1)>>1]|0;i=e[a+-2>>1]|0;h=e[a+(k+-1<<1)>>1]|0;j=d&-2;g=e[a+(j+-1<<1)>>1]|0;c=k*3|0;f=e[a+(c+-1<<1)>>1]|0;m=i+1|0;p=(m+l|0)>>>1&65535;b[a+(k+2<<1)>>1]=p;b[a>>1]=p;p=q+2|0;r=(p+(l<<1)+i|0)>>>2&65535;b[a+(k+3<<1)>>1]=r;b[a+2>>1]=r;l=l+2|0;b[a+4>>1]=(l+(q<<1)+o|0)>>>2;b[a+6>>1]=(p+(o<<1)+n|0)>>>2;m=(m+h|0)>>>1&65535;b[a+(j+2<<1)>>1]=m;b[a+(k<<1)>>1]=m;l=(l+(i<<1)+h|0)>>>2&65535;b[a+(j+3<<1)>>1]=l;b[a+(k+1<<1)>>1]=l;k=(h+1+g|0)>>>1&65535;b[a+(c+2<<1)>>1]=k;b[a+(j<<1)>>1]=k;i=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(c+3<<1)>>1]=i;b[a+((d|1)<<1)>>1]=i;b[a+(c<<1)>>1]=(g+1+f|0)>>>1;b[a+(c+1<<1)>>1]=(h+2+(g<<1)+f|0)>>>2;return}function Rl(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=d>>1;p=e[a+(~j<<1)>>1]|0;o=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;h=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;i=d&-2;f=e[a+(i+-1<<1)>>1]|0;c=j*3|0;n=o+1|0;q=(n+p|0)>>>1&65535;b[a+((d|1)<<1)>>1]=q;b[a>>1]=q;n=(n+m|0)>>>1&65535;b[a+(i+2<<1)>>1]=n;b[a+2>>1]=n;n=(m+1+l|0)>>>1&65535;b[a+(i+3<<1)>>1]=n;b[a+4>>1]=n;b[a+6>>1]=(l+1+k|0)>>>1;n=o+2|0;d=(n+(p<<1)+h|0)>>>2&65535;b[a+(c+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=p+2|0;o=(d+(o<<1)+m|0)>>>2&65535;b[a+(c+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+(m<<1)+l|0)>>>2&65535;b[a+(c+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(i<<1)>>1]=(d+(h<<1)+g|0)>>>2;b[a+(c<<1)>>1]=(h+2+(g<<1)+f|0)>>>2;return}function Sl(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<4096?c:(c^-2147483648)>>31&4095)|0)>>>1;c=a+(i<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<4096?q:(q^-2147483648)>>31&4095)|0)>>>1;c=a+(g<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<4096?p:(p^-2147483648)>>31&4095)|0)>>>1;c=a+(h<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<4096?j:(j^-2147483648)>>31&4095)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function Tl(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<1024?c:(c^-2147483648)>>31&1023)|0)>>>1;c=a+(i<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<1024?q:(q^-2147483648)>>31&1023)|0)>>>1;c=a+(g<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<1024?p:(p^-2147483648)>>31&1023)|0)>>>1;c=a+(h<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<1024?j:(j^-2147483648)>>31&1023)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function Ul(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function Vl(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;h=i;g=c[a>>2]|0;do if(g){f=g+8|0;if((c[f>>2]|0)==(b|0))d=0;else{if((c[(c[g>>2]|0)+20>>2]&2|0?OO(g)|0:0)?(e=g+4|0,d=c[e>>2]|0,(d|0)==(c[c[g>>2]>>2]|0)):0){d=eP(d,b)|0;if(!d){d=-12;break}c[e>>2]=d;h=c[g>>2]|0;c[h>>2]=d;c[f>>2]=b;c[h+4>>2]=b;d=0;break}c[h>>2]=0;Wl(h,b)|0;d=c[h>>2]|0;if(!d)d=-12;else{f=c[f>>2]|0;Bk(c[d+4>>2]|0,c[g+4>>2]|0,((f|0)<(b|0)?f:b)|0)|0;fu(a,h);d=0}}}else{d=eP(0,b)|0;c[h>>2]=d;do if(d){d=vs(d,b,194,0,0)|0;if(!d){zM(h);d=-12;break}else{h=(c[d>>2]|0)+20|0;c[h>>2]=c[h>>2]|2;c[a>>2]=d;d=0;break}}else d=-12;while(0)}while(0);Nb=i;return d|0}function Xl(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<512?c:(c^-2147483648)>>31&511)|0)>>>1;c=a+(i<<1)|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<512?q:(q^-2147483648)>>31&511)|0)>>>1;c=a+(g<<1)|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<512?p:(p^-2147483648)>>31&511)|0)>>>1;c=a+(h<<1)|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<512?j:(j^-2147483648)>>31&511)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function Yl(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=a[e>>0]&-16;a[b>>0]=j;i=(d[e>>0]|0)>>>2&3;a[b+1>>0]=i;a[b+2>>0]=(d[e>>0]|0)>>>1&1;a[b+3>>0]=a[e>>0]&1;h=j&255;a:do switch(j<<24>>24){case -96:{if(f>>>0>=4){if(!(a[e+1>>0]|0)){i=e+2|0;j=f+-2|0;KG(i,j,b+6|0)|0;b=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,256,i,j,g,g,0)|0;break a}if(!(UF(b,f+7|0)|0)){j=b+6440|0;aw(b+6|0,(f&65535)+-2|0,c[j>>2]|0,7)|0;eF((c[j>>2]|0)+7|0,e+2|0,f+-2|0)|0;b=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,160,c[j>>2]|0,f+5|0,g,g,0)|0}else b=-12}else b=-22;break}case -32:case 32:{b=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,h,e+1|0,f+-1|0,g,g,0)|0;break}default:b=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,h,e+1|0,f+-1|0,g,g,i&255)|0}while(0);return b|0}function Zl(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function _l(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d[b+-1>>0]|0;o=d[b+(e+-1)>>0]|0;h=e<<1;l=d[b+(h+-1)>>0]|0;f=e*3|0;g=a[b+(f+-1)>>0]|0;k=g&255;n=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;j=d[c>>0]|0;m=d[c+1>>0]|0;i=d[c+2>>0]|0;c=d[c+3>>0]|0;q=(o<<1)+4|0;a[b>>0]=(q+(d[b+(1-e)>>0]|0)+p+(n+r<<1)|0)>>>3;a[b+1>>0]=(q+r+l+n+(p<<1)+j|0)>>>3;n=l<<1;p=(q+n+p+(j<<1)+m|0)>>>3&255;a[b+e>>0]=p;a[b+2>>0]=p;n=n+4|0;j=(n+o+k+j+(m<<1)+i|0)>>>3&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=k<<1;m=(n+j+m+(i<<1)+c|0)>>>3&255;a[b+h>>0]=m;a[b+(e+2)>>0]=m;k=(l+4+i+((c+k|0)*3|0)|0)>>>3&255;a[b+(h|1)>>0]=k;a[b+(e+3)>>0]=k;a[b+(f+1)>>0]=g;a[b+(h+3)>>0]=g;e=(j+c+2+i|0)>>>2&255;a[b+(h+2)>>0]=e;a[b+f>>0]=e;a[b+(f+3)>>0]=g;a[b+(f+2)>>0]=g;return}function $l(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;p=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;o=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;n=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;m=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;l=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;k=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;j=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;i=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function am(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;h=H(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;k=((H(l,d[c>>0]|0)|0)+32|0)>>>6&255;a[b>>0]=k;b=b+e|0;g=g+1|0;c=c+e|0}}else{h=(k|0)==0?1:e;g=0;while(1){if((g|0)>=(f|0))break a;k=H(l,d[c>>0]|0)|0;k=(k+32+(H(i,d[c+h>>0]|0)|0)|0)>>>6&255;a[b>>0]=k;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=H(l,d[c>>0]|0)|0;o=H(j,d[c+1>>0]|0)|0;m=c+e|0;n=H(k,d[m>>0]|0)|0;n=(p+32+o+n+(H(h,d[c+i>>0]|0)|0)|0)>>>6&255;a[b>>0]=n;b=b+e|0;g=g+1|0;c=m}}while(0);return}function bm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;i=j;do if((c[f>>2]|0)<=63){h=a+492+(d<<6)+(e<<2)|0;g=c[h>>2]|0;e=(g|0)!=0;if(!b){if(e)tT(g+156512|0);zM(h);e=0;break}if(!e){e=rR(547552)|0;c[h>>2]=e;if(!e){e=-12;break}ix(a,e+156512|0,d)}if((d|0)==2)e=0;else{g=c[f>>2]|0;b=(d|0)==1;if(!b)if(!d)e=(c[a+6512>>2]|0)==1?63:64;else e=64;else e=63;if((g|0)>=(e|0)){mx(c[a+4>>2]|0,16,188021,i);e=-1094995529;break}i=(c[h>>2]|0)+288|0;e=g+1|0;c[f>>2]=e;c[a+5412+(g<<2)>>2]=i;if(!b){if(d|0){e=0;break}if((c[a+6512>>2]|0)!=1){e=0;break}}d=(c[h>>2]|0)+74496|0;c[f>>2]=g+2;c[a+5412+(e<<2)>>2]=d;e=0}}else e=-1094995529;while(0);Nb=j;return e|0}function cm(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+16|0;k=l;if((a[b>>0]|0)==48?(a[b+1>>0]|32)<<24>>24==120:0)f=+((nR(b,k,16)|0)>>>0);else f=+vU(b,k);i=c[k>>2]|0;e=i;if((i|0)!=(b|0)){b=a[i>>0]|0;if(b<<24>>24==100)if((a[i+1>>0]|0)==66){f=+qb(+(f/20.0*3.321928094887362));b=i+2|0;c[k>>2]=b;e=b;j=14}else j=10;else if((b+-69&255)<54)j=10;else{h=b;b=i}do if((j|0)==10){b=(b<<24>>24)+-69|0;if(a[149280+(b*24|0)+16>>0]|0){h=i+1|0;if((a[h>>0]|0)==105){f=f*+g[149280+(b*24|0)>>3];b=i+2|0;c[k>>2]=b;e=b;j=14;break}else{f=f*+g[149280+(b*24|0)+8>>3];c[k>>2]=h;e=h;b=h;j=14;break}}else{b=i;j=14}}while(0);if((j|0)==14)h=a[b>>0]|0;if(h<<24>>24==66){e=b+1|0;c[k>>2]=e;f=f*8.0}}if(d|0)c[d>>2]=e;Nb=l;return +f}function dm(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=0;while(1){if((g|0)==4)break;i=c+1|0;l=c+-1|0;h=c+2|0;m=H((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+3|0;m=(((d[i>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[j>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[j>>0]|0)+(d[c>>0]|0)|0,-5)|0;k=c+4|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+5|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[l>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=H((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+6>>0]|0)>>5;a[b+3>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function em(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==7)break;m=f+1|0;l=f+-1|0;n=f+2|0;o=H((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;k=f+3|0;b[i>>1]=(((d[m>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+o+(d[k>>0]|0);k=H((d[k>>0]|0)+(d[f>>0]|0)|0,-5)|0;b[i+2>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+4>>0]|0);i=i+4|0;j=j+1|0;f=f+h|0}f=e+8|0;i=0;while(1){if((i|0)==2)break;e=b[f+-4>>1]|0;o=b[f>>1]|0;m=b[f+4>>1]|0;l=b[f+8>>1]|0;n=b[f+12>>1]|0;k=b[f+16>>1]|0;h=(b[f+-8>>1]|0)+512+n+((m+o|0)*20|0)+(H(l+e|0,-5)|0)>>10;a[c>>0]=h>>>0>255?(h^-2147483648)>>31:h;o=e+512+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;a[c+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;c=c+1|0;f=f+2|0;i=i+1|0}return}function fm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=Nb;Nb=Nb+32|0;h=l;i=l+16|0;j=a+28|0;f=c[j>>2]|0;c[h>>2]=f;k=a+20|0;f=(c[k>>2]|0)-f|0;c[h+4>>2]=f;c[h+8>>2]=b;c[h+12>>2]=d;e=a+60|0;g=2;b=f+d|0;while(1){if(!((V(c[e>>2]|0,h|0,g|0,i|0)|0)<<16>>16))f=c[i>>2]|0;else{c[i>>2]=-1;f=-1}if((b|0)==(f|0)){b=6;break}if((f|0)<0){b=8;break}p=c[h+4>>2]|0;n=f>>>0>p>>>0;m=n?h+8|0:h;p=f-(n?p:0)|0;c[m>>2]=(c[m>>2]|0)+p;o=m+4|0;c[o>>2]=(c[o>>2]|0)-p;g=g+(n<<31>>31)|0;b=b-f|0;h=m}if((b|0)==6){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[j>>2]=p;c[k>>2]=p}else if((b|0)==8){c[a+16>>2]=0;c[j>>2]=0;c[k>>2]=0;c[a>>2]=c[a>>2]|32;if((g|0)==2)d=0;else d=d-(c[h+4>>2]|0)|0}Nb=l;return d|0}function gm(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=f>>1;f=0-q|0;if(!b){i=e[a+(f<<1)>>1]|0;b=i}else{b=e[a+(f<<1)>>1]|0;i=e[a+(~q<<1)>>1]|0}g=e[a+(1-q<<1)>>1]|0;h=g+2|0;j=e[a+(2-q<<1)>>1]|0;k=j+2|0;l=e[a+(3-q<<1)>>1]|0;m=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;o=e[a+(6-q<<1)>>1]|0;p=e[a+(7-q<<1)>>1]|0;if(!d)f=p;else f=e[a+(8-q<<1)>>1]|0;g=((h+i+(b<<1)|0)>>>2)+4+((k+b+(g<<1)|0)>>>2)+((h+(j<<1)+l|0)>>>2)+((k+(l<<1)+m|0)>>>2)+((l+2+(m<<1)+n|0)>>>2)+((m+2+(n<<1)+o|0)>>>2)+((n+2+(o<<1)+p|0)>>>2)+((o+2+(p<<1)+f|0)>>>2)>>3;g=oK(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=M()|0;b=0;f=a;while(1){if((b|0)==8)break;a=f;c[a>>2]=g;c[a+4>>2]=h;a=f+8|0;c[a>>2]=g;c[a+4>>2]=h;b=b+1|0;f=f+(q<<1)|0}return}function hm(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;f=f+(0-(h&-2)<<1)|0;while(1){if((j|0)==7)break;h=e[f>>1]|0;m=e[f+2>>1]|0;l=e[f+-2>>1]|0;n=e[f+4>>1]|0;p=H(n+l|0,-5)|0;o=e[f+6>>1]|0;c[i>>2]=((m+h|0)*20|0)+(e[f+-4>>1]|0)+p+o;h=H(o+h|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+h+(e[f+8>>1]|0);i=i+16|0;j=j+1|0;f=f+(k<<1)|0}i=g>>1;f=d+32|0;h=0;while(1){if((h|0)==2)break;d=c[f+-16>>2]|0;p=c[f>>2]|0;n=c[f+16>>2]|0;m=c[f+32>>2]|0;o=c[f+48>>2]|0;l=c[f+64>>2]|0;k=(c[f+-32>>2]|0)+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[a+(i<<1)>>1]=p>>>0<16384?p:(p^-2147483648)>>31&16383;a=a+2|0;f=f+4|0;h=h+1|0}return}function im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=a+800|0;b=c[i>>2]|0;h=a+12|0;if(((UM(c[h>>2]|0)|0)!=0?(c[a+48>>2]|0)==1:0)?(c[a+128>>2]|0)>2800:0){c[i>>2]=1;j=10}else j=5;a:do if((j|0)==5){if(!b){b=fM()|0;d=c[a+128>>2]|0;if(d){g=(d+15|0)/16|0;b=(b|0)>(g|0)?g:b}e=b+1|0;e=(b|0)>1?((e|0)<16?e:16):1;c[i>>2]=e}else e=b;if((e|0)<2)j=10;else{f=rR(48)|0;g=a+64|0;b=(c[g>>2]|0)+20|0;c[b>>2]=f;d=(c[(c[h>>2]|0)+112>>2]&32|0)==0?0:25;c[284109]=d;do if(f){b=cj(f,a,115,d,e)|0;if((b|0)<2){tq(f);b=(c[g>>2]|0)+20|0;break}else{c[i>>2]=b;c[a+816>>2]=7;c[a+820>>2]=41;break a}}while(0);zM(b);c[i>>2]=1;c[a+808>>2]=0}}while(0);if((j|0)==10)c[a+808>>2]=0;return 0}function jm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<6;s=g<<6;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;u=l-u|0;b[g>>1]=u>>>0<16384?u:(u^-2147483648)>>31&16383}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function km(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0;r=+f[b+24>>2];u=+f[b+96>>2];j=r+u;e=+f[b+28>>2];k=+f[b+100>>2];l=e+k;p=r-u;q=e-k;s=+f[b+48>>2];t=+f[b+72>>2];i=s+t;g=+f[b+52>>2];m=+f[b+76>>2];o=g+m;n=s-t;h=g-m;f[a>>2]=u+(t+(s+(r+ +f[b>>2])));d=b+4|0;f[a+4>>2]=k+(m+(g+(e+ +f[d>>2])));e=+f[c>>2];g=+f[c+8>>2];m=i*e-j*g;k=o*e-l*g;i=j*e-i*g;g=l*e-o*g;o=+f[c+4>>2];e=+f[c+12>>2];l=h*o-q*e;j=n*o-p*e;h=q*o+h*e;e=p*o+n*e;f[a+8>>2]=+f[b>>2]+(i+h);f[a+12>>2]=+f[d>>2]+(g-e);f[a+16>>2]=m-l+ +f[b>>2];f[a+20>>2]=k+j+ +f[d>>2];f[a+24>>2]=m+l+ +f[b>>2];f[a+28>>2]=k-j+ +f[d>>2];f[a+32>>2]=i-h+ +f[b>>2];f[a+36>>2]=g+e+ +f[d>>2];return}function lm(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;f=f+(0-(h&-2)<<1)|0;while(1){if((j|0)==7)break;h=e[f>>1]|0;m=e[f+2>>1]|0;l=e[f+-2>>1]|0;n=e[f+4>>1]|0;p=H(n+l|0,-5)|0;o=e[f+6>>1]|0;c[i>>2]=((m+h|0)*20|0)+(e[f+-4>>1]|0)+p+o;h=H(o+h|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+h+(e[f+8>>1]|0);i=i+16|0;j=j+1|0;f=f+(k<<1)|0}i=g>>1;f=d+32|0;h=0;while(1){if((h|0)==2)break;d=c[f+-16>>2]|0;p=c[f>>2]|0;n=c[f+16>>2]|0;m=c[f+32>>2]|0;o=c[f+48>>2]|0;l=c[f+64>>2]|0;k=(c[f+-32>>2]|0)+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[a+(i<<1)>>1]=p>>>0<4096?p:(p^-2147483648)>>31&4095;a=a+2|0;f=f+4|0;h=h+1|0}return}function mm(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+16|0;q=r;m=MT(g)|0;a:do if(m|0?(k=c[m+8>>2]|0,(k&8|0)==0&0==0):0){if(!((k&66|0)==0&0==0)){lc[j&63](c[a>>2]|0,c[b>>2]|0,c[e>>2]|0,c[f>>2]|0,h,i);Bk(c[a+4>>2]|0,c[e+4>>2]|0,1024)|0;break}l=d[m+4>>0]|0;p=0;k=0;while(1){if((k|0)==(l|0))break;o=(c[m+16+(k<<5)>>2]|0)+1|0;p=(p|0)>(o|0)?p:o;k=k+1|0}m=m+6|0;n=0-i|0;l=0;while(1){if((l|0)>=(p|0))break a;o=Kx(g,h,l)|0;if((o|0)<0)break;if((l+-1|0)>>>0<2)k=0-(n>>(d[m>>0]|0))|0;else k=i;lc[j&63](c[a+(l<<2)>>2]|0,c[b+(l<<2)>>2]|0,c[e+(l<<2)>>2]|0,c[f+(l<<2)>>2]|0,o,k);l=l+1|0}mx(0,16,203760,q)}while(0);Nb=r;return}function nm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=oS(c[b+8>>2]|0,o)|0;f=oS(c[b+12>>2]|0,o)|0;g=oS(c[b+16>>2]|0,o)|0;a:do if((h>>>0<d>>>2>>>0?(n=d-(h<<2)|0,f>>>0<n>>>0&g>>>0<n>>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=oS(c[b+(g<<2)>>2]|0,o)|0;g=oS(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0<d>>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=hz(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}l=f?l:k;h=f?j:h-j|0}f=i+m|0;g=oS(c[b+(f<<2)>>2]|0,o)|0;f=oS(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0<d>>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function om(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<4;s=g<<4;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;u=l-u|0;b[g>>1]=u>>>0<4096?u:(u^-2147483648)>>31&4095}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function pm(d,g){d=d|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;m=c[g+80>>2]|0;a:do if((c[g+4>>2]|0)!=2){l=c[g+74176>>2]|0;h=b[g+30>>1]|0;j=h<<16>>16<1024?((h&65535)<<16)+67108864>>16:2048;h=2048-(h<<16>>16)|0;i=g+36|0;k=0;while(1){if((k|0)>=(j|0))break;f[l+(k<<2)>>2]=+f[g+32192+(h+k<<2)>>2]*+f[i>>2];k=k+1|0}i=d+1024|0;jq(l+(k<<2)|0,0,8192-(k<<2)|0)|0;ic[c[d+6756>>2]&255](d,i,l,g);h=g+292|0;if(c[h>>2]|0)ic[c[d+6752>>2]&255](i,h,g,0);k=a[g>>0]|0;k=((k&255)<40?k:40)&255;h=0;while(1){if(h>>>0>=k>>>0)break a;b:do if(!(a[g+40+h>>0]|0))h=h+1|0;else{i=h+1|0;j=e[m+(i<<1)>>1]|0;h=e[m+(h<<1)>>1]|0;while(1){if(h>>>0>=j>>>0){h=i;break b}l=g+13760+(h<<2)|0;f[l>>2]=+f[d+1024+(h<<2)>>2]+ +f[l>>2];h=h+1|0}}while(0)}}while(0);return}function qm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<2;s=g<<2;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;u=l-u|0;b[g>>1]=u>>>0<1024?u:(u^-2147483648)>>31&1023}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function rm(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;q=d[c+-4>>0]|0;p=d[c>>0]|0;o=d[c+4>>0]|0;j=d[c+8>>0]|0;l=d[c+12>>0]|0;m=d[c+16>>0]|0;k=d[c+20>>0]|0;n=d[c+24>>0]|0;i=(d[c+-8>>0]|0)+16+l+((o+p|0)*20|0)+(H(j+q|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;i=b+e|0;q=q+16+m+((j+o|0)*20|0)+(H(l+p|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;i=b+g|0;p=p+16+k+((l+j|0)*20|0)+(H(m+o|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;i=b+h|0;j=o+16+n+((m+l|0)*20|0)+(H(k+j|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((j>>>0>255?(j^-2147483648)>>31:j)&255)|0)>>>1;f=f+1|0;b=b+1|0;c=c+1|0}return}function sm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<1;s=g<<1;p=d>>1;q=0-p|0;r=H(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;u=l-u|0;b[g>>1]=u>>>0<512?u:(u^-2147483648)>>31&511}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function tm(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=Nb;Nb=Nb+16|0;f=t;g=MT(c[a+80>>2]|0)|0;if(0==0?(c[g+8>>2]&16|0)==0:0){c[f>>2]=185266;c[f+4>>2]=185289;c[f+8>>2]=520;mx(0,0,214689,f);ba()}o=g+4|0;p=a+68|0;q=g+5|0;r=a+72|0;s=g+6|0;m=g+32|0;l=0;while(1){if(l>>>0>=(d[o>>0]|0)>>>0)break;f=c[p>>2]|0;if((l+-1|0)>>>0<2){n=0-(0-(c[r>>2]|0)>>(d[s>>0]|0))|0;f=0-(0-f>>(d[q>>0]|0))|0}else n=c[r>>2]|0;j=e+(l<<2)|0;k=a+32+(l<<2)|0;g=0;i=c[a+(l<<2)>>2]|0;while(1){if((g|0)>=(n|0))break;a:do if((c[m>>2]|0)>8){h=0;while(1){if((h|0)>=(f|0))break a;b[i+(h<<1)>>1]=c[j>>2];h=h+1|0}}else jq(i|0,c[j>>2]&255|0,f|0)|0;while(0);g=g+1|0;i=i+(c[k>>2]|0)|0}l=l+1|0}Nb=t;return}function um(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+16|0;k=l;a:do if(((c[b+44>>2]|0)==0?(j=b+28|0,f=c[j>>2]|0,(f|0)>12):0)?(i=c[b+24>>2]|0,e=i+f+-8|0,g=e,f=g,g=g+4|0,g=gQ(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0,i,(g|0)==-1910117890&(M()|0)==-1941070576):0){b=e+-5|0;e=1;while(1){f=IS(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0;if(f>>>0>2147483642){h=0;break a}g=b-i|0;if(g>>>0<f>>>0){h=0;break a}if((a[b+4>>0]|0)<0)break;if(e>>>0>83|g>>>0<(f+5|0)>>>0){h=0;break a}b=b+(-5-f)|0;e=e+1|0}i=g-f|0;c[j>>2]=i;if((i|0)>-1)h=1;else{c[k>>2]=166226;c[k+4>>2]=166158;c[k+8>>2]=503;mx(0,0,214689,k);ba()}}else h=0;while(0);Nb=l;return h|0}function vm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=(e|0)!=0;if(!j?(c[b+668>>2]|0)!=0:0){h=1;i=b+768|0;k=b+960|0}else{h=0;i=18624;k=18688}if(!(NL(a)|0))return 0;l=mp(a,f,16,18752,h?b+672|0:18752)|0;m=f+16|0;l=mp(a,m,16,18752,f)|0|l;m=l|(mp(a,f+32|0,16,18752,m)|0);l=f+48|0;m=m|(mp(a,l,16,18768,h?b+720|0:18768)|0);h=f+64|0;l=m|(mp(a,h,16,18768,l)|0);h=l|(mp(a,f+80|0,16,18768,h)|0);if(!(!j?(c[d+64>>2]|0)==0:0)){h=mp(a,g,64,18624,i)|0|h;f=g+192|0;h=h|(mp(a,f,64,18688,k)|0);if((c[b+12>>2]|0)==3){m=g+64|0;l=mp(a,m,64,18624,g)|0|h;h=g+256|0;l=l|(mp(a,h,64,18688,f)|0);m=l|(mp(a,g+128|0,64,18624,m)|0);h=m|(mp(a,g+320|0,64,18688,h)|0)}}return ((h|0)==0?e:h)|0}function wm(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;n=e[a+(~h<<1)>>1]|0;i=e[a+(0-h<<1)>>1]|0;g=e[a+(1-h<<1)>>1]|0;f=e[a+(2-h<<1)>>1]|0;c=e[a+(3-h<<1)>>1]|0;l=e[a+-2>>1]|0;o=e[a+(h+-1<<1)>>1]|0;j=d&-2;k=e[a+(j+-1<<1)>>1]|0;m=h*3|0;b[a+(m<<1)>>1]=(o+2+(e[a+(m+-1<<1)>>1]|0)+(k<<1)|0)>>>2;k=(l+2+k+(o<<1)|0)>>>2&65535;b[a+(m+1<<1)>>1]=k;b[a+(j<<1)>>1]=k;k=n+2|0;o=(k+o+(l<<1)|0)>>>2&65535;b[a+(m+2<<1)>>1]=o;b[a+((d|1)<<1)>>1]=o;b[a+(h<<1)>>1]=o;d=i+2|0;l=(d+(n<<1)+l|0)>>>2&65535;b[a+(m+3<<1)>>1]=l;b[a+(j+2<<1)>>1]=l;b[a+(h+1<<1)>>1]=l;b[a>>1]=l;i=(k+(i<<1)+g|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;d=(d+(g<<1)+f|0)>>>2&65535;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;b[a+6>>1]=(g+2+(f<<1)+c|0)>>>2;return}function xm(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=d[b+(1-e)>>0]|0;n=d[b+(3-e)>>0]|0;m=d[c>>0]|0;l=d[c+1>>0]|0;h=d[c+2>>0]|0;g=d[c+3>>0]|0;o=d[b+(e+-1)>>0]|0;i=e<<1;c=e*3|0;f=d[b+(c+-1)>>0]|0;j=(d[b+(i+-1)>>0]|0)+(d[b+(2-e)>>0]|0)|0;k=j+4|0;a[b>>0]=(k+(d[b+(0-e)>>0]|0)+(d[b+-1>>0]|0)+(o+p<<1)|0)>>>3;j=(p+4+n+o+f+(j<<1)|0)>>>3&255;a[b+e>>0]=j;a[b+1>>0]=j;k=(k+m+(n<<1)+(f*3|0)|0)>>>3&255;a[b+i>>0]=k;a[b+(e+1)>>0]=k;a[b+2>>0]=k;k=f<<2;j=k+l+4|0;n=(j+n+(m<<1)|0)>>>3&255;a[b+c>>0]=n;a[b+(i|1)>>0]=n;a[b+(e+2)>>0]=n;a[b+3>>0]=n;k=(m+4+h+(l<<1)+k|0)>>>3&255;a[b+(c+1)>>0]=k;a[b+(i+2)>>0]=k;a[b+(e+3)>>0]=k;e=(j+g+(h<<1)|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(i+3)>>0]=e;a[b+(c+3)>>0]=(h+2+g+(f<<1)|0)>>>2;return}function ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a+92>>2]=c[b+92>>2];c[a+152>>2]=c[b+152>>2];c[a+472>>2]=c[b+472>>2];c[a+68>>2]=c[b+68>>2];c[a+680>>2]=c[b+680>>2];c[a+684>>2]=c[b+684>>2];c[a+292>>2]=c[b+292>>2];c[a+96>>2]=c[b+96>>2];f=a+836|0;d=b+836|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[a+432>>2]=c[b+432>>2];f=b+696|0;d=c[f+4>>2]|0;g=a+696|0;c[g>>2]=c[f>>2];c[g+4>>2]=d;c[a+812>>2]=c[b+812>>2];g=b+216|0;d=c[g>>2]|0;do if(d){e=b+224|0;b=c[e>>2]|0;if(!b)h=7;else{f=a+224|0;if((c[a+216>>2]|0)<(d|0)){d=JD(f,d,4)|0;if((d|0)<=-1)break;d=c[g>>2]|0;b=c[e>>2]|0}Bk(c[f>>2]|0,b|0,d<<2|0)|0;d=c[g>>2]|0;h=7}}else{d=0;h=7}while(0);if((h|0)==7){c[a+216>>2]=d;d=0}return d|0}function zm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;h=j;f=j+4|0;i=c[a+4>>2]|0;g=i+4|0;d=c[g>>2]|0;if(!(c[d+12>>2]|0))if(c[(c[d>>2]|0)+60>>2]|0)if(c[i+28>>2]|0){h=rI(a)|0;a=b+376|0;c[a>>2]=h;if(h){d=Yb[c[(c[c[g>>2]>>2]|0)+60>>2]&15](i,b)|0;if((d|0)<0)nT(a);else d=0}else d=-12}else d=-22;else d=-38;else{c[b+80>>2]=c[i+36>>2];a=rI(a)|0;c[b+376>>2]=a;do if((a|0)!=0?(e=BP()|0,c[f>>2]=e,(e|0)!=0):0){d=zm(c[(c[g>>2]|0)+12>>2]|0,e,0)|0;if((d|0)>=0){d=$j(b,e,c[(c[g>>2]|0)+16>>2]|0)|0;if(!d){iQ(f);d=0;break}else{c[h>>2]=d;mx(i,16,203429,h);iQ(f);break}}}else d=-12;while(0)}Nb=j;return d|0}function Am(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0;p=Nb;Nb=Nb+32|0;o=p+8|0;m=p;l=p+28|0;do if((e|0)!=0?(hz(e,214025)|0)!=0:0){k=Wb[i&31](e)|0;if((k|0)==-1){k=BQ(e,l,0)|0;if(k>>>0<h>>>0?(a[c[l>>2]>>0]|0)==0:0){n=7;break}else{c[m>>2]=e;c[m+4>>2]=j;mx(b,16,204649,m);i=-22;break}}else n=7}else{k=-1;n=7}while(0);do if((n|0)==7){q=+g[d+24>>3];e=~~(q>-1.0?q:-1.0);q=+g[d+32>>3];n=h+-1|0;r=+(n|0);i=~~(q>r?r:q);h=(i|e|0)==0;e=h?-1:e;i=h?n:i;if((k|0)<(e|0)|(k|0)>(i|0)){f=c[d>>2]|0;c[o>>2]=k;c[o+4>>2]=f;c[o+8>>2]=j;c[o+12>>2]=e;c[o+16>>2]=i;mx(b,16,204690,o);i=-34;break}else{c[f>>2]=k;i=0;break}}while(0);Nb=p;return i|0}function Bm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:(t^-2147483648)>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function Cm(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=0-g|0;if(!e){k=d[b+h>>0]|0;h=k}else{h=d[b+h>>0]|0;k=d[b+~g>>0]|0}i=d[b+(1-g)>>0]|0;j=i+2|0;l=d[b+(2-g)>>0]|0;m=l+2|0;n=d[b+(3-g)>>0]|0;o=d[b+(4-g)>>0]|0;p=d[b+(5-g)>>0]|0;q=d[b+(6-g)>>0]|0;r=d[b+(7-g)>>0]|0;if(!f)e=r;else e=d[b+(8-g)>>0]|0;a[b>>0]=(j+k+(h<<1)|0)>>>2;a[b+1>>0]=(m+h+(i<<1)|0)>>>2;a[b+2>>0]=(j+(l<<1)+n|0)>>>2;a[b+3>>0]=(m+(n<<1)+o|0)>>>2;i=b+4|0;a[i>>0]=(n+2+(o<<1)+p|0)>>>2;a[b+5>>0]=(o+2+(p<<1)+q|0)>>>2;a[b+6>>0]=(p+2+(q<<1)+r|0)>>>2;a[b+7>>0]=(q+2+(r<<1)+e|0)>>>2;h=c[b>>2]|0;i=c[i>>2]|0;e=1;while(1){if((e|0)==8)break;f=b+(H(e,g)|0)|0;c[f>>2]=h;c[f+4>>2]=i;e=e+1|0}return}function Dm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;q=g<<6;r=d>>1;p=d&-2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:(t^-2147483648)>>31&16383}f=f+1|0;g=g+(r<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function Em(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:(t^-2147483648)>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function Fm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:(t^-2147483648)>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function Gm(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function Hm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;q=g<<4;r=d>>1;p=d&-2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:(t^-2147483648)>>31&4095}f=f+1|0;g=g+(r<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function Im(){var a=0,b=0,d=0.0,e=0,h=0;a:do if(!(c[234303]|0)){a=1;while(1){if((a|0)==8192)break;g[937216+(a<<3)>>3]=1.0;a=a+1|0}e=2;while(1){if((e|0)==90)break;b:do if(+g[937216+(e<<3)>>3]==1.0){d=+(e|0);d=+Eo(d)*d;a=e;while(1){if(a>>>0>=8192)break b;b=a;while(1){if(b>>>0>=8192)break;h=937216+(b<<3)|0;g[h>>3]=d*+g[h>>3];b=b+a|0}a=H(a,e)|0}}while(0);e=e+1|0}b=91;while(1){if(b>>>0>=8192)break;c:do if(+g[937216+(b<<3)>>3]==1.0){d=+(b|0);d=+Eo(d)*d;a=b;while(1){if(a>>>0>=8192)break c;h=937216+(a<<3)|0;g[h>>3]=d*+g[h>>3];a=a+b|0}}while(0);b=b+2|0}a=0;while(1){if((a|0)==8192)break a;f[904448+(a<<2)>>2]=+g[937216+(a<<3)>>3];a=a+1|0}}while(0);return}function Jm(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;i=a+((H(b,l)|0)+-1<<1)|0;i=d+(e[i>>1]|0)+(e[a+(b-l<<1)>>1]|0)|0;j=b+4|0;k=a+((H(j,l)|0)+-1<<1)|0;b=b+1|0;d=i;f=f+(e[a+(j-l<<1)>>1]|0)|0;g=g+(e[k>>1]|0)|0}d=oK((d+4|0)>>>3|0,0,65537,65537)|0;h=M()|0;i=oK((f+2|0)>>>2|0,0,65537,65537)|0;j=M()|0;k=(g+2|0)>>>2;f=(g+4+f|0)>>>3;b=0;while(1){if((b|0)==4)break;g=a+((H(b,l)|0)<<1)|0;m=g;c[m>>2]=d;c[m+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=oK(k|0,0,65537,65537)|0;h=M()|0;d=oK(f|0,0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;m=a+((H(b,l)|0)<<1)|0;k=m;c[k>>2]=g;c[k+4>>2]=h;m=m+8|0;c[m>>2]=d;c[m+4>>2]=f;b=b+1|0}return}function Km(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;q=g<<2;r=d>>1;p=d&-2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:(t^-2147483648)>>31&1023}f=f+1|0;g=g+(r<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function Lm(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:(t^-2147483648)>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function Mm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;g=a;h=g+68|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));k=1<<b;c[a+20>>2]=b;c[a+16>>2]=k;l=k>>2;g=a+60|0;c[g>>2]=0;a:do if((gk(a,b+-2|0,d)|0)>=0?(m=$Q((k|0)/2|0)|0,c[a+24>>2]=m,(m|0)!=0):0){switch(c[g>>2]|0){case 0:{d=m+(l<<2)|0;c[a+28>>2]=d;h=1;a=d;break}case 1:{d=m+4|0;c[a+28>>2]=d;h=2;a=d;break}default:{n=9;break a}}j=e<0.0?+(l|0)+.125:.125;i=+v(+(+u(+e)));e=+(k|0);g=0;while(1){if((g|0)>=(l|0)){g=0;break a}o=(j+ +(g|0))*6.283185307179586/e;p=-(i*+x(+o));k=H(g,h)|0;f[m+(k<<2)>>2]=p;o=-(i*+y(+o));f[a+(k<<2)>>2]=o;g=g+1|0}}else n=9;while(0);if((n|0)==9){rU(a);g=-1}return g|0}function Nm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else i=16;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)==g<<24>>24)if(!e){i=16;break}else break;f=H(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break c;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break}}else i=11;while(0);if((i|0)==11)if(!e){i=16;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;e=e+-1|0;if(!e){i=16;break}else b=b+1|0}}while(0);if((i|0)==16)b=0;return b|0}function Om(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;q=g<<1;r=d>>1;p=d&-2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(q|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:(t^-2147483648)>>31&511}f=f+1|0;g=g+(r<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function Pm(b,f){b=b|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0;n=Nb;Nb=Nb+96|0;j=n+80|0;i=n+72|0;h=n+40|0;m=n+32|0;l=n+24|0;k=n+16|0;o=n+8|0;mx(f,48,171495,n);c[o>>2]=d[b>>0];mx(f,48,171528,o);switch(a[b>>0]|0){case 0:{o=b+1|0;c[k>>2]=d[o>>0];mx(f,48,171555,k);switch(a[o>>0]|0){case 2:{c[l>>2]=e[b+2>>1];mx(f,48,171589,l);break}case 3:{c[m>>2]=e[b+4>>1];mx(f,48,171623,m);break}default:{}}r=+(d[b+7>>0]|0)/255.0;q=+(d[b+8>>0]|0)/255.0;p=+(d[b+9>>0]|0)/255.0;g[h>>3]=+(d[b+6>>0]|0)/255.0;g[h+8>>3]=r;g[h+16>>3]=q;g[h+24>>3]=p;mx(f,48,171658,h);break}case 1:{o=b+10|0;c[i>>2]=d[o>>0];mx(f,48,171703,i);if(!(a[o>>0]|0)){g[j>>3]=+(e[b+12>>1]|0)/100.0;mx(f,48,171726,j)}break}default:{}}Nb=n;return}function Qm(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=d[b+(0-e)>>0]|0;n=d[b+(1-e)>>0]|0;m=d[b+(2-e)>>0]|0;l=d[b+(3-e)>>0]|0;k=d[c>>0]|0;j=d[c+1>>0]|0;c=d[c+2>>0]|0;p=(n<<1)+4|0;a[b>>0]=(p+f+h+(o+g<<1)|0)>>>3;q=m+1|0;r=(q+n|0)>>>1&255;f=e<<1;a[b+f>>0]=r;a[b+1>>0]=r;q=(q+l|0)>>>1&255;a[b+(f|1)>>0]=q;a[b+2>>0]=q;q=(l+1+k|0)>>>1&255;a[b+(f+2)>>0]=q;a[b+3>>0]=q;a[b+(f+3)>>0]=(k+1+j|0)>>>1;a[b+e>>0]=(p+g+(h<<1)+i+o+m|0)>>>3;g=l+2|0;h=(g+n+(m<<1)|0)>>>2&255;i=e*3|0;a[b+i>>0]=h;a[b+(e+1)>>0]=h;h=k+2|0;f=(h+m+(l<<1)|0)>>>2&255;a[b+(i+1)>>0]=f;a[b+(e+2)>>0]=f;g=(g+(k<<1)+j|0)>>>2&255;a[b+(i+2)>>0]=g;a[b+(e+3)>>0]=g;a[b+(i+3)>>0]=(h+(j<<1)+c|0)>>>2;return}function Rm(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;i=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;n=m+1|0;b[a>>1]=(n+i|0)>>>1;n=(n+l|0)>>>1&65535;k=d&-2;b[a+(k<<1)>>1]=n;b[a+2>>1]=n;n=(l+1+j|0)>>>1&65535;b[a+((d|1)<<1)>>1]=n;b[a+4>>1]=n;d=(j+1+g|0)>>>1&65535;b[a+(k+2<<1)>>1]=d;b[a+6>>1]=d;b[a+(k+3<<1)>>1]=(g+1+f|0)>>>1;k=l+2|0;b[a+(h<<1)>>1]=(k+i+(m<<1)|0)>>>2;i=j+2|0;l=(i+m+(l<<1)|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=l;b[a+(h+1<<1)>>1]=l;j=(k+(j<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Sm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;n=(d[a+1>>0]|0)+1|0;o=(d[b>>0]|0)-((n+(d[a>>0]|0)|0)>>>1)|0;m=d[a+2>>0]|0;n=(d[b+1>>0]|0)-((n+m|0)>>>1)|0;l=d[a+3>>0]|0;m=(d[b+2>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+4>>0]|0;l=(d[b+3>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+5>>0]|0;k=(d[b+4>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+6>>0]|0;j=(d[b+5>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+7>>0]|0;i=(d[b+6>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+7>>0]|0)-((c+1+(d[a+8>>0]|0)|0)>>>1)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Nb;Nb=Nb+48|0;k=n+40|0;m=n+32|0;l=n+24|0;j=n+16|0;i=n+8|0;h=n;if((b|0)<1)b=px(d,e)|0;f=0;while(1){if(f>>>0>=28){g=9;break}if((b|0)==(c[90320+(f<<4)+4>>2]|0)?(g=90320+(f<<4)+8|0,(c[g>>2]|0)==(d|0)?(c[g+4>>2]|0)==(e|0):0):0){g=7;break}f=f+1|0}if((g|0)==7){c[h>>2]=c[90320+(f<<4)>>2];Ot(a,202212,h)}else if((g|0)==9?(c[i>>2]=b,Ot(a,202215,i),!((d|0)==0&(e|0)==0)):0){Ot(a,202227,j);b=0;g=0;while(1){if((g|0)==64)break;j=uN(1,0,g|0)|0;if(!((j&d|0)==0&((M()|0)&e|0)==0)){f=WQ(g)|0;if(f|0){if((b|0)>0)Ot(a,202230,l);c[m>>2]=f;Ot(a,202212,m)}b=b+1|0}g=g+1|0}Ot(a,202232,k)}Nb=n;return}function Um(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=Ax((wu(c[b>>2]|0)|0)+1|0)|0;f=c[b>>2]|0;if(!e)e=0;else{g=f+(Kn(f,201545)|0)|0;h=e;f=e;a:while(1){b:while(1){i=a[g>>0]|0;if(!(i<<24>>24))break a;if(Kn(g,d)|0)break a;j=g+1|0;switch(i<<24>>24){case 39:{i=8;break b}case 92:{k=a[j>>0]|0;if(k<<24>>24){i=10;break b}break}default:{}}a[f>>0]=i;g=j;f=f+1|0}if((i|0)==8){while(1){g=a[j>>0]|0;k=g<<24>>24==0;i=j+1|0;if(!(k^g<<24>>24!=39))break;a[f>>0]=g;j=i;f=f+1|0}g=k?j:i;h=k?h:f}else if((i|0)==10){j=f+1|0;a[f>>0]=k;g=g+2|0;h=j;f=j}}do{a[f>>0]=0;f=f+-1|0;if(f>>>0<h>>>0)break}while((Kn(f,201545)|0)!=0);c[b>>2]=g}return e|0}function Vm(a){a=a|0;var d=0,e=0,g=0,h=0,i=0;h=Nb;Nb=Nb+16|0;e=c[a+60>>2]|0;a:do if((c[a+420>>2]|0)>=1){g=a+48|0;b:do switch(c[g>>2]|0){case 65543:{d=0;while(1){if((d|0)==256)break b;i=(SM(d&255)|0)&65535;b[e+(d<<1)>>1]=i;d=d+1|0}}case 65542:{d=0;while(1){if((d|0)==256)break b;i=(CP(d&255)|0)&65535;b[e+(d<<1)>>1]=i;d=d+1|0}}case 67587:case 67586:{f[e+516>>2]=1.0/+(1<<(c[a+784>>2]|0)+-1|0);i=ED(0)|0;c[e+512>>2]=i;if(!i){d=-12;break a}break}default:{}}while(0);i=c[c[(c[a+12>>2]|0)+32>>2]>>2]|0;c[a+424>>2]=i;if((i|0)==2){d=SI(c[g>>2]|0)|0;c[a+788>>2]=d;d=0}else d=0}else{mx(a,16,184565,h);d=-22}while(0);Nb=h;return d|0}function Wm(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=c+e|0;m=f+g|0;n=b+29|0;g=a[n>>0]|0;h=g&255;a:do if((c+h+1|0)>>>0<o>>>0){l=m;e=f;j=0;i=h;while(1){k=0;h=0;do{k=k<<8|(d[c+(h&255)>>0]|0);h=h+1<<24>>24}while((g&255)>=(h&255));h=c+(i+1)|0;c=h+k|0;if(c>>>0>o>>>0){e=0;break a}if(j<<24>>24==0&(a[h>>0]&112)==32){g=Er(b,e,l-e|0)|0;if((g|0)<1){e=0;break a}j=1;e=e+g|0}if((e+k+4|0)>>>0>m>>>0){e=0;break a}a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;a[e+3>>0]=1;Bk(e+4|0,h|0,k|0)|0;e=e+(k+4)|0;g=a[n>>0]|0;i=g&255;if((c+i+1|0)>>>0>=o>>>0){p=11;break}}}else{e=f;p=11}while(0);if((p|0)==11)e=e-f|0;return e|0}function Xm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=Nb;Nb=Nb+64|0;g=m+48|0;j=m+32|0;k=m+16|0;l=m;f=c[a+4>>2]|0;if(((c[f+92>>2]&8|0)==0?(c[f+96>>2]&4194304|0)==0:0)?(c[d+644>>2]|0)==0:0)f=0;else{do if(!(c[f+704>>2]|0)){h=(c[d+76>>2]|0)==2147483647;if(!h?(c[d+80>>2]|0)!=2147483647:0)break;i=c[d>>2]|0;n=h&1;c[g>>2]=n;mx(f,48,171159,g);g=0-(n^1)|0;f=0;while(1){if((f|0)==4)break;o=i+(f<<2)|0;n=c[i+32+(f<<2)>>2]|0;c[j+(f<<2)>>2]=(c[o>>2]|0)+(n&g);c[l+(f<<2)>>2]=(c[o>>2]|0)+(h?n:0);c[k+(f<<2)>>2]=n<<1;f=f+1|0}bx(j,k,l,k,c[i+80>>2]|0,c[i+68>>2]|0,c[i+72>>2]>>1)}while(0);f=kx(a,b,d)|0;if((f|0)>=0){c[e>>2]=1;f=0}}Nb=m;return f|0}function Ym(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=Nb;Nb=Nb+16|0;g=i;if(b>>>0>e>>>0){c[g>>2]=187302;c[g+4>>2]=185289;c[g+8>>2]=2174;mx(0,0,214689,g);ba()}a:do if(b>>>0<e>>>0){h=0;while(1){if(h>>>0>=3)break;j=c[f>>2]<<8;g=b+1|0;c[f>>2]=j|d[b>>0];if((g|0)==(e|0)|(j|0)==256){e=g;break a}else{h=h+1|0;b=g}}b:while(1){if(b>>>0>=e>>>0)break;j=a[b+-1>>0]|0;g=j&255;do if((j&255)<=1)if(!(a[b+-2>>0]|0)){h=b+1|0;if(!(g+-1|d[b+-3>>0])){b=h;break b}else{b=h;break}}else{b=b+2|0;break}else b=b+3|0;while(0)}e=b>>>0>e>>>0?e:b;j=e+-4|0;j=IS(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24|0)|0;c[f>>2]=j}while(0);Nb=i;return e|0}function Zm(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=d+8|0;n=e+8|0;o=d+12|0;p=e+12|0;q=d+16|0;r=e+16|0;h=d+4|0;i=e+28|0;j=d+20|0;k=e+44|0;l=a+4|0;g=0;while(1){if((g|0)>=(f|0))break;s=H(c[n>>2]|0,b[(c[m>>2]|0)+(g<<1)>>1]|0)|0;s=(H(c[p>>2]|0,b[(c[o>>2]|0)+(g<<1)>>1]|0)|0)+s|0;u=H(c[e>>2]|0,b[(c[d>>2]|0)+(g<<1)>>1]|0)|0;s=s+16384|0;u=s+u+(H(c[r>>2]|0,b[(c[q>>2]|0)+(g<<1)>>1]|0)|0)|0;t=u>>15;b[(c[a>>2]|0)+(g<<1)>>1]=(t+32768|0)>>>0>65535?u>>31^32767:t;t=H(c[i>>2]|0,b[(c[h>>2]|0)+(g<<1)>>1]|0)|0;t=s+t+(H(c[k>>2]|0,b[(c[j>>2]|0)+(g<<1)>>1]|0)|0)|0;s=t>>15;b[(c[l>>2]|0)+(g<<1)>>1]=(s+32768|0)>>>0>65535?t>>31^32767:s;g=g+1|0}return}function _m(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=Nb;Nb=Nb+16|0;e=h;if((b|0)<=0){c[e>>2]=209603;c[e+4>>2]=209579;c[e+8>>2]=172;mx(0,0,214689,e);ba()}c[a+12>>2]=b;f=c[a+4>>2]|0;e=a+8|0;c[e>>2]=(f|0)<(b|0)?f:b;c[a+16>>2]=0;c[a+20>>2]=c[e>>2];f=a+116|0;d=(d|0)!=0;b=(c[e>>2]|0)+((d&(c[f>>2]|0)!=0^1)<<31>>31)|0;e=0;while(1){if((e|0)>=(b|0))break;j=c[a>>2]|0;i=j+(e*88|0)+4|0;JV(i)|0;c[j+(e*88|0)+84>>2]=0;yb(j+(e*88|0)+32|0)|0;JV(i)|0;e=e+1|0}b=c[f>>2]|0;if(!(d&(b|0)!=0)){if(!(fx(a)|0))g=9}else{ec[b&31](c[a+108>>2]|0);g=9}if((g|0)==9){e=a+24|0;JV(e)|0;d=a+100|0;b=a+52|0;while(1){if(c[d>>2]|0)break;zb(b|0,e|0)|0}c[d>>2]=0;JV(e)|0}Nb=h;return}function $m(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f<<6;p=g<<6;o=d>>1;m=0;while(1){if((m|0)==4)break;l=a[h+m>>0]|0;f=l<<24>>24<<6;n=f+-63|0;a:do if(l<<24>>24>=1){l=63-f|0;f=1;k=c;while(1){if(!f)break a;f=k+-2|0;g=e[f>>1]|0;d=e[k+-4>>1]|0;i=e[k>>1]|0;j=e[k+2>>1]|0;r=g-i|0;if(((((r|0)>-1?r:0-r|0)|0)<(q|0)?(r=d-g|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0)?(r=j-i|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0){r=d+4-j+(i-g<<2)>>3;r=(r|0)<(l|0)?l:(r|0)>(n|0)?n:r;j=r+g|0;b[f>>1]=j>>>0<16384?j:(j^-2147483648)>>31&16383;r=i-r|0;b[k>>1]=r>>>0<16384?r:(r^-2147483648)>>31&16383}f=0;k=k+(o<<1)|0}}while(0);c=c+(o<<1)|0;m=m+1|0}return}function an(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=f>>1;if(!b){b=e[a+-2>>1]|0;d=b}else{d=e[a+-2>>1]|0;b=e[a+(~h<<1)>>1]|0}o=e[a+(h+-1<<1)>>1]|0;n=o+2|0;m=e[a+((f&-2)+-1<<1)>>1]|0;l=m+2|0;k=e[a+((h*3|0)+-1<<1)>>1]|0;j=e[a+((h<<2)+-1<<1)>>1]|0;i=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;f=e[a+((h*7|0)+-1<<1)>>1]|0;f=((n+b+(d<<1)|0)>>>2)+4+((l+d+(o<<1)|0)>>>2)+((n+(m<<1)+k|0)>>>2)+((l+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+g|0)>>>2)+((g+2+(f*3|0)|0)>>>2)+((i+2+(g<<1)+f|0)>>>2)>>3;f=oK(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;d=a;while(1){if((b|0)==8)break;o=d;c[o>>2]=f;c[o+4>>2]=g;o=d+8|0;c[o>>2]=f;c[o+4>>2]=g;b=b+1|0;d=d+(h<<1)|0}return}function bn(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f<<4;p=g<<4;o=d>>1;m=0;while(1){if((m|0)==4)break;l=a[h+m>>0]|0;f=l<<24>>24<<4;n=f+-15|0;a:do if(l<<24>>24>=1){l=15-f|0;f=1;k=c;while(1){if(!f)break a;f=k+-2|0;g=e[f>>1]|0;d=e[k+-4>>1]|0;i=e[k>>1]|0;j=e[k+2>>1]|0;r=g-i|0;if(((((r|0)>-1?r:0-r|0)|0)<(q|0)?(r=d-g|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0)?(r=j-i|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0){r=d+4-j+(i-g<<2)>>3;r=(r|0)<(l|0)?l:(r|0)>(n|0)?n:r;j=r+g|0;b[f>>1]=j>>>0<4096?j:(j^-2147483648)>>31&4095;r=i-r|0;b[k>>1]=r>>>0<4096?r:(r^-2147483648)>>31&4095}f=0;k=k+(o<<1)|0}}while(0);c=c+(o<<1)|0;m=m+1|0}return}function cn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=d[b+~e>>0]|0;o=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;h=d[b+-1>>0]|0;g=d[b+(e+-1)>>0]|0;i=e<<1;f=d[b+(i+-1)>>0]|0;c=e*3|0;n=o+1|0;p=(n+j|0)>>>1&255;a[b+(i|1)>>0]=p;a[b>>0]=p;n=(n+m|0)>>>1&255;a[b+(i+2)>>0]=n;a[b+1>>0]=n;n=(m+1+l|0)>>>1&255;a[b+(i+3)>>0]=n;a[b+2>>0]=n;a[b+3>>0]=(l+1+k|0)>>>1;n=o+2|0;p=(n+(j<<1)+h|0)>>>2&255;a[b+(c+1)>>0]=p;a[b+e>>0]=p;j=j+2|0;o=(j+(o<<1)+m|0)>>>2&255;a[b+(c+2)>>0]=o;a[b+(e+1)>>0]=o;n=(n+(m<<1)+l|0)>>>2&255;a[b+(c+3)>>0]=n;a[b+(e+2)>>0]=n;a[b+(e+3)>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+i>>0]=(j+(h<<1)+g|0)>>>2;a[b+c>>0]=(h+2+(g<<1)+f|0)>>>2;return}function dn(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f<<2;p=g<<2;o=d>>1;m=0;while(1){if((m|0)==4)break;l=a[h+m>>0]|0;f=l<<24>>24<<2;n=f+-3|0;a:do if(l<<24>>24>=1){l=3-f|0;f=1;k=c;while(1){if(!f)break a;f=k+-2|0;g=e[f>>1]|0;d=e[k+-4>>1]|0;i=e[k>>1]|0;j=e[k+2>>1]|0;r=g-i|0;if(((((r|0)>-1?r:0-r|0)|0)<(q|0)?(r=d-g|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0)?(r=j-i|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0){r=d+4-j+(i-g<<2)>>3;r=(r|0)<(l|0)?l:(r|0)>(n|0)?n:r;j=r+g|0;b[f>>1]=j>>>0<1024?j:(j^-2147483648)>>31&1023;r=i-r|0;b[k>>1]=r>>>0<1024?r:(r^-2147483648)>>31&1023}f=0;k=k+(o<<1)|0}}while(0);c=c+(o<<1)|0;m=m+1|0}return}function en(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=0-c|0;s=H(c,-2)|0;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+r|0;m=d[l>>0]|0;n=d[j+s>>0]|0;o=d[j>>0]|0;p=d[j+c>>0]|0;t=m-o|0;if(((((t|0)>-1?t:0-t|0)|0)<(e|0)?(t=n-m|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0)?(t=p-o|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0){t=n+4-p+(o-m<<2)>>3;t=(t|0)<(k|0)?k:(t|0)>(q|0)?q:t;p=t+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;t=o-t|0;a[j>>0]=t>>>0>255?(t^-2147483648)>>31:t}i=i+1|0;j=j+1|0}}while(0);b=b+2|0;h=h+1|0}return}function fn(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=1;while(1){if((j|0)==3)break;k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if(k>>>0>=m>>>0)break;if(!(a[i+(d[88688+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)Dx((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else qk((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}j=1;while(1){if((j|0)==3)break;k=j<<4;l=k|8;m=e+(j+-1<<2)|0;k=k|4;while(1){if(k>>>0>=l>>>0)break;n=k+4|0;if(!(a[i+(d[88688+n>>0]|0)>>0]|0)){o=g+(k<<4<<1)|0;if(b[o>>1]|0)Dx((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,o,h)}else qk((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function gn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=d[b+~e>>0]|0;p=d[b+(0-e)>>0]|0;n=d[b+(1-e)>>0]|0;m=d[b+(2-e)>>0]|0;j=d[b+-1>>0]|0;h=d[b+(e+-1)>>0]|0;i=e<<1;g=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;l=j+1|0;o=(l+k|0)>>>1&255;a[b+(e+2)>>0]=o;a[b>>0]=o;o=p+2|0;q=(o+(k<<1)+j|0)>>>2&255;a[b+(e+3)>>0]=q;a[b+1>>0]=q;k=k+2|0;a[b+2>>0]=(k+(p<<1)+n|0)>>>2;a[b+3>>0]=(o+(n<<1)+m|0)>>>2;l=(l+h|0)>>>1&255;a[b+(i+2)>>0]=l;a[b+e>>0]=l;k=(k+(j<<1)+h|0)>>>2&255;a[b+(i+3)>>0]=k;a[b+(e+1)>>0]=k;e=(h+1+g|0)>>>1&255;a[b+(c+2)>>0]=e;a[b+i>>0]=e;e=(j+2+(h<<1)+g|0)>>>2&255;a[b+(c+3)>>0]=e;a[b+(i|1)>>0]=e;a[b+c>>0]=(g+1+f|0)>>>1;a[b+(c+1)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function hn(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f<<1;p=g<<1;o=d>>1;m=0;while(1){if((m|0)==4)break;l=a[h+m>>0]|0;f=l<<24>>24<<1;n=f+-1|0;a:do if(l<<24>>24>=1){l=1-f|0;f=1;k=c;while(1){if(!f)break a;f=k+-2|0;g=e[f>>1]|0;d=e[k+-4>>1]|0;i=e[k>>1]|0;j=e[k+2>>1]|0;r=g-i|0;if(((((r|0)>-1?r:0-r|0)|0)<(q|0)?(r=d-g|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0)?(r=j-i|0,(((r|0)>-1?r:0-r|0)|0)<(p|0)):0){r=d+4-j+(i-g<<2)>>3;r=(r|0)<(l|0)?l:(r|0)>(n|0)?n:r;j=r+g|0;b[f>>1]=j>>>0<512?j:(j^-2147483648)>>31&511;r=i-r|0;b[k>>1]=r>>>0<512?r:(r^-2147483648)>>31&511}f=0;k=k+(o<<1)|0}}while(0);c=c+(o<<1)|0;m=m+1|0}return}function jn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=0;while(1){if((h|0)==5)break;g=0;while(1){if((g|0)==38)break;i=g+6|0;c[d+(h*352|0)+(i<<3)>>2]=c[e+(g<<8)+(h<<2)>>2];c[d+(h*352|0)+(i<<3)+4>>2]=c[e+9728+(g<<8)+(h<<2)>>2];g=g+1|0}h=h+1|0}if(!f){Nl(a,d,b);rq(d+352|0,b+1536|0,1);rq(d+704|0,b+2048|0,0);ic[c[a+12>>2]&255](b+1792|0,e,3,32)}else{eI(a,d,b,1099872,12);eI(a,d+352|0,b+3072|0,1100640,8);eI(a,d+704|0,b+5120|0,1101152,4);eI(a,d+1056|0,b+6144|0,1101152,4);eI(a,d+1408|0,b+7168|0,1101152,4);ic[c[a+12>>2]&255](b+6912|0,e,5,32)}g=0;while(1){if((g|0)==5)break;h=d+(g*352|0)|0;a=d+(g*352|0)+256|0;b=h+48|0;do{c[h>>2]=c[a>>2];h=h+4|0;a=a+4|0}while((h|0)<(b|0));g=g+1|0}return}function kn(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Pw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Tj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if(j>>>0>=k>>>0)break;m=j+4|0;if(!(a[h+(d[88688+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Pw((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Tj((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function ln(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Uw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Vj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if(j>>>0>=k>>>0)break;m=j+4|0;if(!(a[h+(d[88688+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Uw((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Vj((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function mn(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Vw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Wj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if(j>>>0>=k>>>0)break;m=j+4|0;if(!(a[h+(d[88688+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Vw((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Wj((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function nn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=Nb;Nb=Nb+16|0;j=k+8|0;f=k;h=k+12|0;i=SU(d)|0;c[b+12>>2]=e;c[b+8>>2]=1;do if((e|2|0)==2)if(!(hr(a,b,d)|0))g=8;else UK(b);else{if((e|0)!=1){l=c[a+4>>2]|0;c[f>>2]=e;mx(l,16,190033,f);UK(b);break}if(!(ah(a,b,d)|0))g=8;else UK(b)}while(0);if((g|0)==8?NL(d)|0:0){e=Yz(d,4)|0;c[h>>2]=e;if((e|0)==15){e=(Yz(d,8)|0)+15|0;c[h>>2]=e}e=e<<3;c[h>>2]=e;while(1){if((e|0)<=7)break;c[h>>2]=e+-2;ip(a,b,d,Yz(d,2)|0,h);e=c[h>>2]|0}if((e|0)>=0){if(e|0)yO(d,e)}else mx(c[a+4>>2]|0,16,190090,j)}l=(SU(d)|0)-i|0;Nb=k;return l|0}function on(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+32|0;j=k;i=k+8|0;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[i+16>>2]=c[d+16>>2];JK(d,(f<<3)+-4|0);h=b+16|0;c[h>>2]=0;if(!(c[b>>2]|0))c[b>>2]=c[a+6480>>2]<<1;d=a+6500|0;if(!(c[d>>2]|0))c[d>>2]=c[a+6480>>2]<<1;if(!e)d=1;else{yO(i,10);d=11}c[b+72>>2]=c[b+76>>2];c[b+80>>2]=c[b+84>>2];c[b+88>>2]=1;if(NL(i)|0)d=(kk(b,i)|0)+d|0;if(c[h>>2]|0)EI(a,b);if(c[b+4>>2]|0)d=(nn(a,b,i,g)|0)+d|0;d=(d+4+(4-d&7)|0)>>>3;if(d>>>0>f>>>0){a=c[a+4>>2]|0;c[j>>2]=f;c[j+4>>2]=d;mx(a,16,189984,j);UK(b)}Nb=k;return f|0}function pn(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Yw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Xj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if(j>>>0>=k>>>0)break;m=j+4|0;if(!(a[h+(d[88688+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Yw((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Xj((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function qn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=d>>1;n=e[a+(1-j<<1)>>1]|0;m=e[a+(2-j<<1)>>1]|0;h=e[a+(3-j<<1)>>1]|0;k=e[c>>1]|0;i=e[c+2>>1]|0;g=e[c+4>>1]|0;f=e[c+6>>1]|0;c=m+2|0;b[a>>1]=(c+(e[a+(0-j<<1)>>1]|0)+(n<<1)|0)>>>2;l=h+2|0;m=(l+n+(m<<1)|0)>>>2&65535;b[a+(j<<1)>>1]=m;b[a+2>>1]=m;c=(c+k+(h<<1)|0)>>>2&65535;h=d&-2;b[a+(h<<1)>>1]=c;b[a+(j+1<<1)>>1]=c;b[a+4>>1]=c;l=(l+i+(k<<1)|0)>>>2&65535;c=j*3|0;b[a+(c<<1)>>1]=l;b[a+((d|1)<<1)>>1]=l;b[a+(j+2<<1)>>1]=l;b[a+6>>1]=l;d=(k+2+g+(i<<1)|0)>>>2&65535;b[a+(c+1<<1)>>1]=d;b[a+(h+2<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;d=(i+2+f+(g<<1)|0)>>>2&65535;b[a+(c+2<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=(g+2+(f*3|0)|0)>>>2;return}function rn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=b+24|0;c[k>>2]=0;l=b+40|0;c[l>>2]=0;m=b+44|0;c[m>>2]=0;do if(c[b>>2]|0){f=rI(c[d>>2]|0)|0;if(!f)f=-12;else{c[b>>2]=f;c[k>>2]=c[f+4>>2];j=8}}else{f=b+28|0;g=c[f>>2]|0;if((g>>>0<=4294967263?(Wl(b,g+32|0)|0,h=c[b>>2]|0,h|0):0)?(i=c[h+4>>2]|0,i|0):0){Bk(i|0,c[d+24>>2]|0,c[f>>2]|0)|0;f=i+(c[f>>2]|0)|0;g=f+32|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));c[k>>2]=i;j=8;break}AP(b);f=-12}while(0);if((j|0)==8){g=d+44|0;f=c[g>>2]|0;h=(e|0)!=0;if(h&(f|0)!=0){c[l>>2]=c[d+40>>2];c[m>>2]=f;f=c[g>>2]|0}if(h|(f|0)==0)f=0;else f=ul(b,d)|0}return f|0}function sn(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=Nb;Nb=Nb+32|0;j=m+8|0;n=m;i=c[b+60>>2]|0;k=c[g+24>>2]|0;l=c[g+28>>2]|0;ev(g,1,m+4|0)|0;g=ev(g,71,n)|0;h=i+5672|0;c[h>>2]=0;if((g|0)!=0&(c[n>>2]|0)>0)c[h>>2]=(d[g>>0]|0)+1;g=c[i+5668>>2]|0;if((g|0)>-1)c[h>>2]=g;a:do if((l|0)<=268435454){g=NQ(j,k,l)|0;if((g|0)>=0){switch(c[i+6472>>2]|0){case 39:case 23:case 19:case 17:{g=uh(b,e,f,j)|0;break}default:g=vd(b,e,f,j)|0}if((g|0)>=0){g=(SU(j)|0)+7>>3;h=g;while(1){if((h|0)>=(l|0)){g=l;break a}if(!(a[k+h>>0]|0))h=h+1|0;else break}}}}else g=-1094995529;while(0);Nb=m;return g|0}function tn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=d[b+(0-e)>>0]|0;o=d[b+(1-e)>>0]|0;n=d[b+(2-e)>>0]|0;l=d[b+(3-e)>>0]|0;j=d[c>>0]|0;h=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;m=o+1|0;a[b>>0]=(m+k|0)>>>1;m=(m+n|0)>>>1&255;i=e<<1;a[b+i>>0]=m;a[b+1>>0]=m;m=(n+1+l|0)>>>1&255;a[b+(i|1)>>0]=m;a[b+2>>0]=m;m=(l+1+j|0)>>>1&255;a[b+(i+2)>>0]=m;a[b+3>>0]=m;m=n+2|0;a[b+e>>0]=(m+k+(o<<1)|0)>>>2;k=l+2|0;n=(k+o+(n<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=n;a[b+(e+1)>>0]=n;l=(m+(l<<1)+j|0)>>>2&255;a[b+(c+1)>>0]=l;a[b+(e+2)>>0]=l;k=(k+(j<<1)+h|0)>>>2&255;a[b+(c+2)>>0]=k;a[b+(e+3)>>0]=k;a[b+(i+3)>>0]=(j+2+(h<<1)+g|0)>>>2;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function un(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;l=Nb;Nb=Nb+48|0;k=l+8|0;j=l;i=l+24|0;c[i>>2]=162004;c[i+4>>2]=g;c[i+8>>2]=h;g=Kx(f,a,0)|0;m=(g|0)<1;f=uN(a|0,0,3)|0;h=M()|0;f=m?f:g;g=m?h:((g|0)<0)<<31>>31;if(!((a|0)<1|(b|0)<1|((g|0)>0|(g|0)==0&f>>>0>2147482622))?(m=kP(f|0,g|0,1024,0)|0,m=oK(m|0,M()|0,b+128|0,0)|0,h=M()|0,!(h>>>0>0|(h|0)==0&m>>>0>2147483646)):0)if(!((d|0)==-1&(e|0)==2147483647)?(m=oK(b|0,0,a|0,0)|0,j=M()|0,(j|0)>(e|0)|(j|0)==(e|0)&m>>>0>d>>>0):0){c[k>>2]=a;c[k+4>>2]=b;f=k+8|0;c[f>>2]=d;c[f+4>>2]=e;mx(i,16,203559,k);f=-22}else f=0;else{c[j>>2]=a;c[j+4>>2]=b;mx(i,16,203528,j);f=-22}Nb=l;return f|0}function vn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<2;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==4)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;l=m+8|0;j=m;a:do if(!(e&32768)){e=0;while(1){if(e>>>0>=4){k=9;break a}i=b+(e+12)|0;g=a[i>>0]|0;h=a[197073+g>>0]|0;if(249>>>g&1|0)break;if(253>>>g&1|0)a[i>>0]=h;e=e+1|0}c[j>>2]=h<<24>>24;mx(d,16,197085,j);e=-1094995529}else k=9;while(0);b:do if((k|0)==9)if((f&34952|0)==34952)e=0;else{e=0;while(1){if(e>>>0>=4){e=0;break b}if(!(c[76112+(e<<2)>>2]&f)){g=b+((e<<3)+12)|0;h=a[g>>0]|0;i=a[197136+h>>0]|0;if(370>>>h&1|0)break;if(886>>>h&1|0)a[g>>0]=i}e=e+1|0}c[l>>2]=i<<24>>24;mx(d,16,197148,l);e=-1094995529}while(0);Nb=m;return e|0}function xn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<16384?q:(q^-2147483648)>>31&16383;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(i<<1)>>1]=p>>>0<16384?p:(p^-2147483648)>>31&16383;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(g<<1)>>1]=o>>>0<16384?o:(o^-2147483648)>>31&16383;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(h<<1)>>1]=c>>>0<16384?c:(c^-2147483648)>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function yn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;l=m;f=BP()|0;c[l>>2]=f;k=f;do if(!f)e=-12;else{c[f+80>>2]=c[d+80>>2];i=d+240|0;e=c[i+4>>2]|0;j=f+240|0;c[j>>2]=c[i>>2];c[j+4>>2]=e;c[f+352>>2]=c[d+352>>2];j=f+76|0;c[j>>2]=c[a+428>>2];e=Qv(f,32)|0;if((e|0)>=0){e=RT(f,d)|0;if((e|0)>=0){g=f+64|0;h=d+76|0;i=a+420|0;f=a+424|0;e=Xp(c[g>>2]|0,c[d+64>>2]|0,0,0,c[h>>2]|0,c[i>>2]|0,c[f>>2]|0)|0;if((e|0)>=0){e=c[h>>2]|0;e=dw(c[g>>2]|0,e,(c[j>>2]|0)-e|0,c[i>>2]|0,c[f>>2]|0)|0;if((e|0)>=0){c[b>>2]=k;e=0;break}}}}iQ(l)}while(0);Nb=m;return e|0}function An(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<4096?q:(q^-2147483648)>>31&4095;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(i<<1)>>1]=p>>>0<4096?p:(p^-2147483648)>>31&4095;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(g<<1)>>1]=o>>>0<4096?o:(o^-2147483648)>>31&4095;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(h<<1)>>1]=c>>>0<4096?c:(c^-2147483648)>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function Bn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<1024?q:(q^-2147483648)>>31&1023;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(i<<1)>>1]=p>>>0<1024?p:(p^-2147483648)>>31&1023;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(g<<1)>>1]=o>>>0<1024?o:(o^-2147483648)>>31&1023;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(h<<1)>>1]=c>>>0<1024?c:(c^-2147483648)>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function Cn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=b+8|0;d=c[g+4>>2]|0;h=a+8|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+16|0;d=c[h+4>>2]|0;g=a+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+56|0;d=c[g+4>>2]|0;h=a+56|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+48|0;d=c[h+4>>2]|0;g=a+48|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+64|0;d=c[g+4>>2]|0;h=a+64|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;c[a+36>>2]=c[b+36>>2];c[a+32>>2]=c[b+32>>2];h=b+44|0;d=b+40|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}g=c[d>>2]|0;e=c[g+(b*12|0)+4>>2]|0;f=c[g+(b*12|0)>>2]|0;g=nD(a,c[g+(b*12|0)+8>>2]|0,e)|0;if(!g){i=4;break}Bk(g|0,f|0,e|0)|0;b=b+1|0}if((i|0)==4){oJ(a);b=-12}return b|0}function Dn(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=d>>1;g=d&-2;h=i*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(H(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<512?q:(q^-2147483648)>>31&511;p=p+16+l+((c+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;b[a+(i<<1)>>1]=p>>>0<512?p:(p^-2147483648)>>31&511;o=o+16+j+((k+c|0)*20|0)+(H(l+n|0,-5)|0)>>5;b[a+(g<<1)>>1]=o>>>0<512?o:(o^-2147483648)>>31&511;c=n+16+m+((l+k|0)*20|0)+(H(j+c|0,-5)|0)>>5;b[a+(h<<1)>>1]=c>>>0<512?c:(c^-2147483648)>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function En(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=g+(H(f,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;m=uN((d[b>>0]|0)+128|0,0,56)|0;j=M()|0;i=a;c[i>>2]=m;c[i+4>>2]=j;i=b+e|0;j=a+f|0;m=uN((d[i>>0]|0)+128|0,0,56)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;i=i+e|0;j=j+f|0;k=uN((d[i>>0]|0)+128|0,0,56)|0;l=M()|0;m=j;c[m>>2]=k;c[m+4>>2]=l;i=i+e|0;j=j+f|0;m=uN((d[i>>0]|0)+128|0,0,56)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;a=j+f|0;b=i+e|0}while(1){if(a>>>0>=g>>>0)break;k=uN((d[b>>0]|0)+128|0,0,56)|0;l=M()|0;m=a;c[m>>2]=k;c[m+4>>2]=l;a=a+f|0;b=b+e|0}return}function Fn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=Nb;Nb=Nb+16|0;i=j+8|0;g=c[a+23416+(e*40|0)+28>>2]|0;h=((g|0)<0)<<31>>31;k=iP(d|0,((d|0)<0)<<31>>31|0,g|0,h|0)|0;l=M()|0;d=(k+128|0)>>>0>255?k>>31^127:k;f=d<<24>>24;if(!((k|0)==(k|0)&(l|0)==(((k|0)<0)<<31>>31|0)))bN(c[(c[a>>2]|0)+4>>2]|0,196841,j);if((d&255)<<24>>24!=0?(c[(c[a+23416+(e*40|0)+36>>2]|0)+100>>2]|0)==0:0){d=iP(b|0,((b|0)<0)<<31>>31|0,g|0,h|0)|0;l=M()|0;if(!((d|0)==(d|0)&(l|0)==(((d|0)<0)<<31>>31|0)))mx(c[(c[a>>2]|0)+4>>2]|0,48,196859,i);l=(H(((((f|0)>-1?f:0-f|0)>>1)+16384|0)/(f|0)|0,((d+128|0)>>>0>255?d>>31^127:d)<<24>>24)|0)+32|0;d=l>>6;d=(d+1024|0)>>>0>2047?l>>31^1023:d}else d=256;Nb=j;return d|0}function Gn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=Nb;Nb=Nb+16|0;m=o+8|0;l=o;c[b+27768>>2]=0;c[b+27772>>2]=0;j=b+23412|0;k=b+4|0;f=0;a:while(1){if(f>>>0>=(c[j>>2]|0)>>>0){e=0;break}b:do if(NL(k)|0){g=b+23404+(f<<2)|0;h=b+27768+(f<<2)|0;e=0;while(1){i=ey(k)|0;if((i|0)==3)break b;if(e>>>0>=(c[g>>2]|0)>>>0){n=7;break a}if(i>>>0>2){n=9;break a}p=ZE(k)|0;c[b+27256+(f<<8)+(e<<3)+4>>2]=p;a[b+27256+(f<<8)+(e<<3)>>0]=i;c[h>>2]=(c[h>>2]|0)+1;e=e+1|0}}while(0);f=f+1|0}if((n|0)==7){mx(d,16,198078,l);e=-1094995529}else if((n|0)==9){c[m>>2]=i;mx(d,16,198104,m);e=-1094995529}Nb=o;return e|0}function Hn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[b+~e>>0]|0;i=d[b+(0-e)>>0]|0;g=d[b+(1-e)>>0]|0;f=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;l=d[b+-1>>0]|0;h=d[b+(e+-1)>>0]|0;j=e<<1;k=d[b+(j+-1)>>0]|0;m=e*3|0;a[b+m>>0]=(h+2+(d[b+(m+-1)>>0]|0)+(k<<1)|0)>>>2;k=(l+2+k+(h<<1)|0)>>>2&255;a[b+(m+1)>>0]=k;a[b+j>>0]=k;k=n+2|0;h=(k+h+(l<<1)|0)>>>2&255;a[b+(m+2)>>0]=h;a[b+(j|1)>>0]=h;a[b+e>>0]=h;h=i+2|0;l=(h+(n<<1)+l|0)>>>2&255;a[b+(m+3)>>0]=l;a[b+(j+2)>>0]=l;a[b+(e+1)>>0]=l;a[b>>0]=l;i=(k+(i<<1)+g|0)>>>2&255;a[b+(j+3)>>0]=i;a[b+(e+2)>>0]=i;a[b+1>>0]=i;h=(h+(g<<1)+f|0)>>>2&255;a[b+(e+3)>>0]=h;a[b+2>>0]=h;a[b+3>>0]=(g+2+(f<<1)+c|0)>>>2;return}function In(){c[218453]=869408;c[218455]=1098;Pc(873808,9,121,48560,1,1,48688,4,4,0,0,0,4)|0;c[218457]=873968;c[218459]=1092;Pc(873824,9,121,49184,1,1,49312,4,4,0,0,0,4)|0;c[218461]=878336;c[218463]=768;Pc(873840,9,49,49808,1,1,49872,4,4,0,0,0,4)|0;c[218465]=881408;c[218467]=1026;Pc(873856,9,49,50080,1,1,50144,4,4,0,0,0,4)|0;c[218469]=885520;c[218471]=1058;Pc(873872,9,63,50352,1,1,50416,4,4,0,0,0,4)|0;c[218473]=889760;c[218475]=1052;Pc(873888,9,63,50672,1,1,50736,4,4,0,0,0,4)|0;c[218477]=893968;c[218479]=544;Pc(873904,9,25,50992,1,1,51024,2,2,0,0,0,4)|0;c[218481]=896144;c[218483]=544;Pc(873920,9,25,51088,1,1,51120,2,2,0,0,0,4)|0;c[218485]=898320;c[218487]=592;Pc(873936,9,63,51184,1,1,51248,2,2,0,0,0,4)|0;c[218489]=900688;c[218491]=512;Pc(873952,9,25,51376,1,1,51408,1,1,0,0,0,4)|0;AD();Ln();return}function Jn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+48|0;j=l+32|0;f=l+16|0;e=l;i=c[a+272>>2]|0;if((i|0)!=(c[b+272>>2]|0)){c[e>>2]=211099;c[e+4>>2]=210702;c[e+8>>2]=426;mx(0,0,214689,e);ba()}k=a+264|0;g=c[k>>2]|0;if((g|0)!=(c[b+264>>2]|0)){c[f>>2]=211125;c[f+4>>2]=210702;c[f+8>>2]=427;mx(0,0,214689,f);ba()}h=a+260|0;e=c[h>>2]|0;if((e|0)!=(c[b+260>>2]|0)){c[j>>2]=211145;c[j+4>>2]=210702;c[j+8>>2]=428;mx(0,0,214689,j);ba()}a:do if(!i)Bk(c[a>>2]|0,c[b>>2]|0,H(H(g,d)|0,e)|0)|0;else{f=0;while(1){if((f|0)>=(e|0))break a;Bk(c[a+(f<<2)>>2]|0,c[b+(f<<2)>>2]|0,H(c[k>>2]|0,d)|0)|0;f=f+1|0;e=c[h>>2]|0}}while(0);Nb=l;return}function Kn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=Nb;Nb=Nb+32|0;f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{i=e&255;h=f+(i>>>5<<2)|0;c[h>>2]=c[h>>2]|1<<(i&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{i=e&255;if(!(c[f+(i>>>5<<2)>>2]&1<<(i&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);Nb=g;return d|0}function Ln(){c[270161]=1101920;c[270163]=1544;Pc(1080640,9,61,77424,1,1,77488,4,4,0,0,0,4)|0;c[270165]=1108096;c[270167]=832;Pc(1080656,9,61,77744,1,1,77808,2,2,0,0,0,4)|0;c[270169]=1111424;c[270171]=1024;Pc(1080672,9,29,77936,1,1,77968,4,4,0,0,0,4)|0;c[270173]=1115520;c[270175]=1036;Pc(1080688,9,29,78096,1,1,78128,4,4,0,0,0,4)|0;c[270177]=1119664;c[270179]=544;Pc(1080704,9,15,201315,1,1,78256,2,2,0,0,0,4)|0;c[270181]=1121840;c[270183]=544;Pc(1080720,9,15,201330,1,1,78288,2,2,0,0,0,4)|0;c[270185]=1124016;c[270187]=512;Pc(1080736,9,8,201345,1,1,201353,1,1,0,0,0,4)|0;c[270189]=1126064;c[270191]=512;Pc(1080752,9,8,201361,1,1,201369,1,1,0,0,0,4)|0;c[270193]=1128112;c[270195]=512;Pc(1080768,9,8,201377,1,1,201385,1,1,0,0,0,4)|0;c[270197]=1130160;c[270199]=512;Pc(1080784,9,8,201393,1,1,201401,1,1,0,0,0,4)|0;Te();return}function Mn(a){a=a|0;do switch(a|0){case 0:{a=196395;break}case 1:{a=196387;break}case 2:{a=196381;break}case 3:{a=196375;break}case 4:{a=196368;break}case 5:{a=196361;break}case 6:{a=196354;break}case 7:{a=196347;break}case 8:{a=196340;break}case 9:{a=196333;break}case 16:{a=196324;break}case 17:{a=196313;break}case 18:{a=196304;break}case 19:{a=196293;break}case 20:{a=196284;break}case 21:{a=196276;break}case 32:{a=196272;break}case 33:{a=196268;break}case 34:{a=196264;break}case 35:{a=196260;break}case 36:{a=196252;break}case 37:{a=196244;break}case 38:{a=196237;break}case 39:{a=196226;break}case 40:{a=196215;break}default:a=214472}while(0);return a|0}function Nn(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Nb;Nb=Nb+16|0;l=n+12|0;j=n+8|0;k=n+4|0;m=n;e=iv(k,d,l)|0;do if((e|0)>=0){i=d+8|0;h=c[k>>2]|0;while(1){e=c[i>>2]|0;if((a[e>>0]|0)!=94){f=11;break}c[i>>2]=e+1;e=iv(m,d,j)|0;if((e|0)<0){f=5;break}f=YK(18,h,c[m>>2]|0)|0;c[k>>2]=f;if(!f){f=7;break}e=c[f+24>>2]|0;if(e|0){h=e+8|0;g[h>>3]=+g[h>>3]*+(c[j>>2]|1|0)}h=f}if((f|0)==5){kI(h);break}else if((f|0)==7){kI(h);kI(c[m>>2]|0);e=-12;break}else if((f|0)==11){if(h|0){m=h+8|0;g[m>>3]=+g[m>>3]*+(c[l>>2]|1|0)}c[b>>2]=h;e=0;break}}while(0);Nb=n;return e|0}function On(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=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.0;q=b+8|0;r=d+16|0;s=b+12|0;t=d+24|0;u=b+16|0;v=d+32|0;h=b+24|0;i=d+48|0;j=b+4|0;k=d+72|0;l=b+20|0;m=d+104|0;n=b+28|0;o=d+120|0;p=a+4|0;f=0;while(1){if((f|0)>=(e|0))break;w=+g[(c[q>>2]|0)+(f<<3)>>3]*+g[r>>3]+ +g[(c[s>>2]|0)+(f<<3)>>3]*+g[t>>3];g[(c[a>>2]|0)+(f<<3)>>3]=w+ +g[(c[b>>2]|0)+(f<<3)>>3]*+g[d>>3]+ +g[(c[u>>2]|0)+(f<<3)>>3]*+g[v>>3]+ +g[(c[h>>2]|0)+(f<<3)>>3]*+g[i>>3];g[(c[p>>2]|0)+(f<<3)>>3]=w+ +g[(c[j>>2]|0)+(f<<3)>>3]*+g[k>>3]+ +g[(c[l>>2]|0)+(f<<3)>>3]*+g[m>>3]+ +g[(c[n>>2]|0)+(f<<3)>>3]*+g[o>>3];f=f+1|0}return}function Pn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=0;while(1){if((m|0)==4)break;p=a[g+m>>0]|0;o=p<<24>>24;a:do if(p<<24>>24>=1){p=0-o|0;h=1;n=b;while(1){if(!h)break a;h=n+-1|0;i=d[h>>0]|0;j=d[n+-2>>0]|0;k=d[n>>0]|0;l=d[n+1>>0]|0;q=i-k|0;if(((((q|0)>-1?q:0-q|0)|0)<(e|0)?(q=j-i|0,(((q|0)>-1?q:0-q|0)|0)<(f|0)):0)?(q=l-k|0,(((q|0)>-1?q:0-q|0)|0)<(f|0)):0){q=j+4-l+(k-i<<2)>>3;q=(q|0)<(p|0)?p:(q|0)>(o|0)?o:q;l=q+i|0;a[h>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=k-q|0;a[n>>0]=q>>>0>255?(q^-2147483648)>>31:q}h=0;n=n+c|0}}while(0);b=b+c|0;m=m+1|0}return}function Qn(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b+74496|0;l=b+288|0;i=0;while(1){if((i|0)==16)break;m=c[a+620+(i<<2)>>2]|0;a:do if(m|0?(c[m+148704>>2]|0)==(f|0):0){k=m+148708|0;b=0;j=0;while(1){if((j|0)>(c[k>>2]|0))break a;do if((c[m+148712+(j<<2)>>2]|0)==(d|0)?(c[m+148744+(j<<2)>>2]|0)==(e|0):0){h=m+148776+(j<<2)|0;if((c[h>>2]|0)!=1){ic[g&255](a,l,m,b);h=c[h>>2]|0;b=b+((h|0)!=0&1)|0;if((h|0)==2)break}ic[g&255](a,n,m,b);b=b+1|0}else o=12;while(0);if((o|0)==12){o=0;b=((c[m+148776+(j<<2)>>2]|0)==3?2:1)+b|0}j=j+1|0}}while(0);i=i+1|0}return}function Rn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;q=b+8|0;r=d+8|0;s=b+12|0;t=d+12|0;u=b+16|0;v=d+16|0;h=b+24|0;i=d+24|0;j=b+4|0;k=d+36|0;l=b+20|0;m=d+52|0;n=b+28|0;o=d+60|0;p=a+4|0;g=0;while(1){if((g|0)>=(e|0))break;w=+f[(c[q>>2]|0)+(g<<2)>>2]*+f[r>>2]+ +f[(c[s>>2]|0)+(g<<2)>>2]*+f[t>>2];f[(c[a>>2]|0)+(g<<2)>>2]=w+ +f[(c[b>>2]|0)+(g<<2)>>2]*+f[d>>2]+ +f[(c[u>>2]|0)+(g<<2)>>2]*+f[v>>2]+ +f[(c[h>>2]|0)+(g<<2)>>2]*+f[i>>2];f[(c[p>>2]|0)+(g<<2)>>2]=w+ +f[(c[j>>2]|0)+(g<<2)>>2]*+f[k>>2]+ +f[(c[l>>2]|0)+(g<<2)>>2]*+f[m>>2]+ +f[(c[n>>2]|0)+(g<<2)>>2]*+f[o>>2];g=g+1|0}return}function Sn(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=g+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;m=aN(+f[b>>2]*-9223372036854775808.0)|0;j=M()|0;i=a;c[i>>2]=m;c[i+4>>2]=j;i=b+d|0;j=a+e|0;m=aN(+f[i>>2]*-9223372036854775808.0)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;i=i+d|0;j=j+e|0;k=aN(+f[i>>2]*-9223372036854775808.0)|0;l=M()|0;m=j;c[m>>2]=k;c[m+4>>2]=l;i=i+d|0;j=j+e|0;m=aN(+f[i>>2]*-9223372036854775808.0)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=g>>>0)break;k=aN(+f[b>>2]*-9223372036854775808.0)|0;l=M()|0;m=a;c[m>>2]=k;c[m+4>>2]=l;a=a+e|0;b=b+d|0}return}function Tn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function Un(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=d+-1|0;h=c+-1|0;c=1;while(1){if((c|0)>=(i|0))break;g=H(c,e)|0;d=1;f=b[a+(g<<1)>>1]|0;while(1){if((d|0)>=(h|0))break;l=a+(d+g<<1)|0;j=b[l>>1]|0;k=d+1|0;m=(j<<3)-f-(b[a+(k+g<<1)>>1]|0)|0;m=(m|0)<163834?m:163834;b[l>>1]=((((m|0)>-196602?m:-196602)*10923|0)+32768|0)>>>16;d=k;f=j}c=c+1|0}c=1;while(1){if((c|0)>=(h|0))break;d=b[a+(c<<1)>>1]|0;f=1;while(1){if((f|0)>=(i|0))break;k=a+((H(f,e)|0)+c<<1)|0;l=b[k>>1]|0;m=f+1|0;j=a+((H(m,e)|0)+c<<1)|0;j=(l<<3)-d-(b[j>>1]|0)|0;j=(j|0)<163834?j:163834;b[k>>1]=((((j|0)>-196602?j:-196602)*10923|0)+32768|0)>>>16;d=l;f=m}c=c+1|0}return}function Vn(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=Nb;Nb=Nb+32|0;g=h;f=0;while(1){if((f|0)==4)break;j=f<<5;k=b[a+(j<<1)>>1]|0;j=b[a+((j|16)<<1)>>1]|0;i=f<<1;c[g+(i<<2)>>2]=j+k;c[g+((i|1)<<2)>>2]=k-j;f=f+1|0}f=0;while(1){if((f|0)==2)break;k=d[172144+f>>0]|0;j=c[g+(f<<2)>>2]|0;m=c[g+(f+4<<2)>>2]|0;i=m+j|0;m=j-m|0;j=c[g+(f+2<<2)>>2]|0;n=c[g+(f+6<<2)>>2]|0;l=j-n|0;j=n+j|0;n=((H(j+i|0,e)|0)+128|0)>>>8&65535;b[a+(k<<1)>>1]=n;n=((H(l+m|0,e)|0)+128|0)>>>8&65535;b[a+(k+32<<1)>>1]=n;l=((H(m-l|0,e)|0)+128|0)>>>8&65535;b[a+(k+64<<1)>>1]=l;j=((H(i-j|0,e)|0)+128|0)>>>8&65535;b[a+(k+96<<1)>>1]=j;f=f+1|0}Nb=h;return}function Wn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;m=fN(+g[b>>3]*-9223372036854775808.0)|0;j=M()|0;i=a;c[i>>2]=m;c[i+4>>2]=j;i=b+d|0;j=a+e|0;m=fN(+g[i>>3]*-9223372036854775808.0)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;i=i+d|0;j=j+e|0;k=fN(+g[i>>3]*-9223372036854775808.0)|0;l=M()|0;m=j;c[m>>2]=k;c[m+4>>2]=l;i=i+d|0;j=j+e|0;m=fN(+g[i>>3]*-9223372036854775808.0)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=f>>>0)break;k=fN(+g[b>>3]*-9223372036854775808.0)|0;l=M()|0;m=a;c[m>>2]=k;c[m+4>>2]=l;a=a+e|0;b=b+d|0}return}function Xn(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=c[f+368>>2]|0;q=f+304|0;r=f+288|0;o=b+5404|0;j=f+14048|0;b=0;l=0;m=f+88256|0;while(1){if((l|0)>=(c[q>>2]|0))break;n=f+308+l|0;k=0;while(1){if(k>>>0>=(d[r>>0]|0)>>>0)break;a:do if((a[f+13+b>>0]|0?(c[f+6160+(b<<2)>>2]|0)>>>0<13:0)?(c[f+80368+(b<<2)>>2]|0)>>>0<13:0){h=p+(k<<1)|0;i=p+(k+1<<1)|0;g=0;while(1){if(g>>>0>=(d[n>>0]|0)>>>0)break a;t=g<<7;s=e[h>>1]|0;hc[c[(c[o>>2]|0)+32>>2]&1023](j+(t<<2)+(s<<2)|0,m+(t<<2)+(s<<2)|0,(e[i>>1]|0)-s|0);g=g+1|0}}while(0);k=k+1|0;b=b+1|0}t=d[n>>0]<<7;j=j+(t<<2)|0;l=l+1|0;m=m+(t<<2)|0}return}function Yn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do if(!b)e=0;else{m=b+4|0;if(!e)e=0;else e=(e-(c[m>>2]|0)>>3)+1|0;k=c[b>>2]|0;l=(f&1|0)==0;j=(f&2|0)==0;while(1){if(e>>>0>=k>>>0){e=0;break a}i=c[m>>2]|0;h=c[i+(e<<3)>>2]|0;if(l){f=0;while(1){b=a[h+f>>0]|0;n=bU(b<<24>>24)|0;g=a[d+f>>0]|0;if(g<<24>>24==0|(n|0)!=(bU(g<<24>>24)|0))break;else f=f+1|0}}else{f=0;while(1){b=a[h+f>>0]|0;g=a[d+f>>0]|0;if(g<<24>>24==0?1:b<<24>>24!=g<<24>>24)break;else f=f+1|0}}if(!(g<<24>>24!=0|j&b<<24>>24!=0))break;e=e+1|0}e=i+(e<<3)|0}while(0);return e|0}function Zn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=Nb;Nb=Nb+16|0;h=j;e=rR(40)|0;c[h>>2]=e;a:do if(!e)d=-12;else{c[e>>2]=161704;c[e+4>>2]=a;k=SP()|0;f=e+16|0;c[f>>2]=k;k=SP()|0;c[e+20>>2]=k;do if((!((k|0)==0|(c[f>>2]|0)==0)?(k=rR(8)|0,d=e+8|0,c[d>>2]=k,k|0):0)?(g=jT()|0,c[c[d>>2]>>2]=g,g=c[h>>2]|0,i=g,c[c[g+8>>2]>>2]|0):0){sU(g);d=c[a+12>>2]|0;if(d|0){f=rR(d)|0;e=g+12|0;c[e>>2]=f;if(!f)break;d=c[a+8>>2]|0;if(d|0){c[f>>2]=d;sU(c[e>>2]|0)}}c[b>>2]=i;d=0;break a}while(0);fv(h);d=-12}while(0);Nb=j;return d|0}function _n(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=b;l=c[k>>2]|0;f=l&63;k=kP(l|0,c[k+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;l=M()|0;m=b;c[m>>2]=k;c[m+4>>2]=l;if(f){g=64-f|0;g=(g|0)<(e|0)?g:e;Bk(b+8+f|0,d|0,g|0)|0;if((g+f|0)>=64){Ol(b+72|0,b+8|0,1);d=d+g|0;e=e-g|0;h=4}}else h=4;if((h|0)==4){g=d;f=d+(e&-64)|0;if(!(g&3))Ol(b+72|0,d,(e|0)/64|0);else{l=b+8|0;m=b+72|0;h=(d>>>0>f>>>0?d:f)+(63-g)&-64;g=d;while(1){if(g>>>0>=f>>>0)break;i=l;j=g;k=i+64|0;do{a[i>>0]=a[j>>0]|0;i=i+1|0;j=j+1|0}while((i|0)<(k|0));Ol(m,l,1);g=g+64|0}f=d+h|0}d=e&63;if(d|0)Bk(b+8|0,f|0,d|0)|0}return}function $n(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=g+(H(f,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;m=uN(e[b>>1]|0|0,0,48)|0;j=M()|0;i=a;c[i>>2]=m;c[i+4>>2]=j;i=b+d|0;j=a+f|0;m=uN(e[i>>1]|0|0,0,48)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;i=i+d|0;j=j+f|0;k=uN(e[i>>1]|0|0,0,48)|0;l=M()|0;m=j;c[m>>2]=k;c[m+4>>2]=l;i=i+d|0;j=j+f|0;m=uN(e[i>>1]|0|0,0,48)|0;l=M()|0;k=j;c[k>>2]=m;c[k+4>>2]=l;a=j+f|0;b=i+d|0}while(1){if(a>>>0>=g>>>0)break;k=uN(e[b>>1]|0|0,0,48)|0;l=M()|0;m=a;c[m>>2]=k;c[m+4>>2]=l;a=a+f|0;b=b+d|0}return}function ao(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=d+8|0;n=e+8|0;o=d+12|0;p=e+12|0;q=d+16|0;r=e+16|0;h=d+4|0;i=e+28|0;j=d+20|0;k=e+44|0;l=a+4|0;g=0;while(1){if((g|0)>=(f|0))break;t=H(c[n>>2]|0,b[(c[m>>2]|0)+(g<<1)>>1]|0)|0;t=(H(c[p>>2]|0,b[(c[o>>2]|0)+(g<<1)>>1]|0)|0)+t|0;s=H(c[e>>2]|0,b[(c[d>>2]|0)+(g<<1)>>1]|0)|0;t=t+16384|0;s=(t+s+(H(c[r>>2]|0,b[(c[q>>2]|0)+(g<<1)>>1]|0)|0)|0)>>>15&65535;b[(c[a>>2]|0)+(g<<1)>>1]=s;s=H(c[i>>2]|0,b[(c[h>>2]|0)+(g<<1)>>1]|0)|0;s=(t+s+(H(c[k>>2]|0,b[(c[j>>2]|0)+(g<<1)>>1]|0)|0)|0)>>>15&65535;b[(c[l>>2]|0)+(g<<1)>>1]=s;g=g+1|0}return}function bo(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;k=m;c[b>>2]=c[e+20>>2];j=b+4|0;c[j>>2]=c[e+24>>2];do if((f|0)!=1){i=(g|0)==3?15:31;if(NL(d)|0){g=(qp(d)|0)+1|0;c[b>>2]=g;if((f|0)==3)e=(qp(d)|0)+1|0;else e=1;c[j>>2]=e}g=(c[b>>2]|0)+-1|0;e=(c[j>>2]|0)+-1|0;if(g>>>0>i>>>0|e>>>0>i>>>0){c[k>>2]=g;c[k+4>>2]=i;c[k+8>>2]=e;c[k+12>>2]=i;mx(h,16,197346,k);c[a>>2]=0;c[b>>2]=0;c[j>>2]=0;e=-1094995529;break}else{e=(f|0)==3?2:1;l=9;break}}else{c[j>>2]=0;c[b>>2]=0;e=0;l=9}while(0);if((l|0)==9){c[a>>2]=e;e=0}Nb=m;return e|0}function co(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;j=d[b+(3-e)>>0]|0;h=d[c>>0]|0;g=d[c+1>>0]|0;f=d[c+2>>0]|0;c=m+1|0;a[b>>0]=(c+i|0)>>>1;c=(c+l|0)>>>1&255;k=e<<1;a[b+k>>0]=c;a[b+1>>0]=c;c=(l+1+j|0)>>>1&255;a[b+(k|1)>>0]=c;a[b+2>>0]=c;c=(j+1+h|0)>>>1&255;a[b+(k+2)>>0]=c;a[b+3>>0]=c;a[b+(k+3)>>0]=(h+1+g|0)>>>1;k=l+2|0;a[b+e>>0]=(k+i+(m<<1)|0)>>>2;i=j+2|0;l=(i+m+(l<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=l;a[b+(e+1)>>0]=l;j=(k+(j<<1)+h|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(e+2)>>0]=j;i=(i+(h<<1)+g|0)>>>2&255;a[b+(c+2)>>0]=i;a[b+(e+3)>>0]=i;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function eo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;i=j;f=ey(b)|0;g=f>>>0>31;if(!g?(h=c[d+(f<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;a:do if(c[g+1152>>2]|0){e=g+1168|0;f=g+1172|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break a;i=hH(b,c[f>>2]|0)|0;c[a+4+(d<<2)>>2]=i;yO(b,c[f>>2]|0);d=d+1|0}}while(0);b:do if(c[g+1156>>2]|0){f=g+1168|0;e=g+1172|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break b;i=hH(b,c[e>>2]|0)|0;c[a+4+(d<<2)>>2]=i;yO(b,c[e>>2]|0);d=d+1|0}}while(0);c[a>>2]=1;d=0}else{c[i>>2]=f;mx(e,16,170669,i);d=g?-1094995529:-1397768184}Nb=j;return d|0}function fo(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)>=(g|0))break;i=0;while(1){if((i|0)==16)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(H(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==15)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=H(c[(c[a+596>>2]|0)+824>>2]|0,b)|0;return b+k|0}function go(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=Nb;Nb=Nb+16|0;d=k;j=a+13384|0;b=c[j>>2]|0;h=c[(c[a+13444>>2]|0)+8>>2]|0;h=(((b|0)>(h|0)?h:b)+1|0)/2|0;i=a+13380|0;b=Hj(a+12540|0,(c[i>>2]|0)+b+h|0)|0;if((b|0)>=0){if(!(c[a+12812>>2]|0)){c[d>>2]=214812;c[d+4>>2]=214748;c[d+8>>2]=554;mx(0,0,214689,d);ba()}e=a+12800|0;f=a+12804|0;b=0;while(1){if((b|0)>=(c[e>>2]|0))break;g=a+12540+(b<<2)|0;d=0;while(1){if((d|0)>=(h|0))break;n=c[g>>2]|0;m=(c[j>>2]|0)+(c[i>>2]|0)|0;l=c[f>>2]|0;Bk(n+(H(m+d|0,l)|0)|0,n+(H(m+~d|0,l)|0)|0,l|0)|0;d=d+1|0}b=b+1|0}c[j>>2]=(c[j>>2]|0)+h;b=0}Nb=k;return b|0}function ho(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)>=(g|0))break;i=0;while(1){if((i|0)==8)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(H(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==7)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=H(c[(c[a+596>>2]|0)+824>>2]|0,b)|0;return b+k|0}function io(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+32|0;k=m;h=m+4|0;i=a+25644|0;j=a+25640|0;g=a+4|0;a=0;f=0;b=0;a:while(1){if((f|0)>=(c[i>>2]|0))break;d=c[j>>2]|0;e=d+(f*72|0)+48|0;b:do switch(c[e>>2]|0){case 8:case 7:{a=f;break}case 1:case 5:case 2:{d=NQ(h,(c[d+(f*72|0)+12>>2]|0)+1|0,(c[d+(f*72|0)+8>>2]|0)+-1|0)|0;if((d|0)<0){mx(c[g>>2]|0,16,171750,k);if(!(c[(c[g>>2]|0)+688>>2]&8))break b;else{l=12;break a}}d=(b|0)!=0;if(!(d&(cH(h)|0)!=0?(b|0)==(c[e>>2]|0):0))a=f;if(!d)b=c[e>>2]|0;break}default:{}}while(0);f=f+1|0}if((l|0)==12)a=d;Nb=m;return a|0}function jo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;p=d[c+-4>>0]|0;o=d[c>>0]|0;n=d[c+4>>0]|0;i=d[c+8>>0]|0;k=d[c+12>>0]|0;l=d[c+16>>0]|0;j=d[c+20>>0]|0;m=d[c+24>>0]|0;q=(d[c+-8>>0]|0)+16+k+((n+o|0)*20|0)+(H(i+p|0,-5)|0)>>5;a[b>>0]=q>>>0>255?(q^-2147483648)>>31:q;p=p+16+l+((i+n|0)*20|0)+(H(k+o|0,-5)|0)>>5;a[b+e>>0]=p>>>0>255?(p^-2147483648)>>31:p;o=o+16+j+((k+i|0)*20|0)+(H(l+n|0,-5)|0)>>5;a[b+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;i=n+16+m+((l+k|0)*20|0)+(H(j+i|0,-5)|0)>>5;a[b+h>>0]=i>>>0>255?(i^-2147483648)>>31:i;f=f+1|0;b=b+1|0;c=c+1|0}return}function ko(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+16|0;j=l+4|0;i=l;k=d+4|0;e=c[k>>2]|0;do if((e|0)>=1){c[k>>2]=e+-1;e=zp(j,d)|0;if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;while(1){e=c[f>>2]|0;if((a[e>>0]|0)!=59){f=9;break}c[f>>2]=e+1;e=zp(i,d)|0;if((e|0)<0){f=6;break}g=c[i>>2]|0;e=YK(22,h,g)|0;if(!e){f=8;break}else h=e}if((f|0)==6){c[j>>2]=h;kI(h);break}else if((f|0)==8){c[j>>2]=0;kI(h);kI(g);e=-12;break}else if((f|0)==9){c[j>>2]=h;c[k>>2]=(c[k>>2]|0)+1;c[b>>2]=h;e=0;break}}}else e=-22;while(0);Nb=l;return e|0}
|
|
function lo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=RO(a)|0;h=150640+(((RO(b)|0)*12|0)+h<<2)|0;h=c[h>>2]|0;a:do if((h|0)!=0?(g=rR(32)|0,(g|0)!=0):0){if((d|0)==1){b=XO(b)|0;f=XO(a)|0}else f=a;c[g>>2]=d;c[g+12>>2]=h;c[g+20>>2]=e;switch(b|0){case 0:case 5:{d=g+24|0;c[d>>2]=-2139062144;c[d+4>>2]=-2139062144;break}default:{}}if(!((e|0)!=0|(f|0)!=(b|0)))switch(bQ(b)|0){case 1:{c[g+16>>2]=698;break a}case 2:{c[g+16>>2]=699;break a}case 4:{c[g+16>>2]=700;break a}case 8:{c[g+16>>2]=701;break a}default:break a}}else g=0;while(0);return g|0}function mo(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173812+(h<<2)|0;c[f>>2]=a+38620+(h*22528|0);b=a+164+(h<<6)|0;e=0;while(1){if(e>>>0>=h>>>0){b=5;break}if(!(Zx(a+164+(e<<6)|0,b,64)|0)){b=7;break}e=e+1|0}a:do if((b|0)==5){b=0;while(1){if((b|0)>=(i|0))break a;f=d[19392+b>>0]|0;g=d[19296+b>>0]|0;e=0;while(1){if((e|0)==64)break;j=(H(d[a+164+(h<<6)+e>>0]|0,d[(d[19232+(e>>>1&12|e&3)>>0]|0)+(19248+(g*6|0))>>0]|0)|0)<<f;c[a+38620+(h*22528|0)+(b<<8)+((e<<3&56|e>>>3)<<2)>>2]=j;e=e+1|0}b=b+1|0}}else if((b|0)==7)c[f>>2]=a+38620+(e*22528|0);while(0);h=h+1|0}return}function no(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function oo(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173788+(h<<2)|0;c[f>>2]=a+4828+(h*5632|0);b=a+68+(h<<4)|0;e=0;while(1){if(e>>>0>=h>>>0){b=5;break}if(!(Zx(a+68+(e<<4)|0,b,16)|0)){b=7;break}e=e+1|0}a:do if((b|0)==5){b=0;while(1){if((b|0)>=(i|0))break a;f=(d[19392+b>>0]|0)+2|0;g=d[19296+b>>0]|0;e=0;while(1){if((e|0)==16)break;j=e>>>2;k=(H(d[a+68+(h<<4)+e>>0]|0,d[(j&1)+(e&1)+(19200+(g*3|0))>>0]|0)|0)<<f;c[a+4828+(h*5632|0)+(b<<6)+((e<<2&12|j)<<2)>>2]=k;e=e+1|0}b=b+1|0}}else if((b|0)==7)c[f>>2]=a+4828+(e*5632|0);while(0);h=h+1|0}return}function po(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=0-f|0;if(!b){j=d[a+g>>0]|0;g=j}else{g=d[a+g>>0]|0;j=d[a+~f>>0]|0}h=d[a+(1-f)>>0]|0;i=h+2|0;k=d[a+(2-f)>>0]|0;l=k+2|0;m=d[a+(3-f)>>0]|0;n=d[a+(4-f)>>0]|0;o=d[a+(5-f)>>0]|0;p=d[a+(6-f)>>0]|0;q=d[a+(7-f)>>0]|0;if(!e)b=q;else b=d[a+(8-f)>>0]|0;g=H(((i+j+(g<<1)|0)>>>2)+4+((l+g+(h<<1)|0)>>>2)+((i+(k<<1)+m|0)>>>2)+((l+(m<<1)+n|0)>>>2)+((m+2+(n<<1)+o|0)>>>2)+((n+2+(o<<1)+p|0)>>>2)+((o+2+(p<<1)+q|0)>>>2)+((p+2+(q<<1)+b|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=g;c[a+4>>2]=g;b=b+1|0;a=a+f|0}return}function qo(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ro(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function so(a){a=a|0;var b=0,d=0,e=0;zM(a+25716|0);zM(a+26380|0);zM(a+26376|0);zM(a+26384|0);zM(a+26388|0);zM(a+26392|0);zM(a+25956|0);zM(a+28204|0);c[a+26356>>2]=0;zM(a+26372|0);zM(a+26344|0);zM(a+26348|0);gM(a+29904|0);gM(a+29908|0);gM(a+29912|0);gM(a+29916|0);d=a+25632|0;b=a+25628|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=c[b>>2]|0;zM(e+(a*34768|0)+27784|0);zM(e+(a*34768|0)+572|0);zM(e+(a*34768|0)+604|0);zM(e+(a*34768|0)+608|0);zM(e+(a*34768|0)+27788|0);zM(e+(a*34768|0)+27792|0);zM(e+(a*34768|0)+27796|0);zM(e+(a*34768|0)+27800|0);e=e+(a*34768|0)+27804|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a=a+1|0}return}function to(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=Nb;Nb=Nb+32|0;f=g;e=0;while(1){if((e|0)==4)break;i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}e=0;while(1){if((e|0)==2)break;j=d[172144+e>>0]|0;i=c[f+(e<<2)>>2]|0;l=c[f+(e+4<<2)>>2]|0;h=l+i|0;l=i-l|0;i=c[f+(e+2<<2)>>2]|0;m=c[f+(e+6<<2)>>2]|0;k=i-m|0;i=m+i|0;m=(H(i+h|0,b)|0)+128>>8;c[a+(j<<2)>>2]=m;m=(H(k+l|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=m;k=(H(l-k|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=k;i=(H(h-i|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=i;e=e+1|0}Nb=g;return}function uo(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function vo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;h=d[b+(3-e)>>0]|0;j=d[c>>0]|0;i=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;c=l+2|0;a[b>>0]=(c+(d[b+(0-e)>>0]|0)+(m<<1)|0)>>>2;k=h+2|0;l=(k+m+(l<<1)|0)>>>2&255;a[b+e>>0]=l;a[b+1>>0]=l;c=(c+j+(h<<1)|0)>>>2&255;h=e<<1;a[b+h>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;k=(k+i+(j<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(h|1)>>0]=k;a[b+(e+2)>>0]=k;a[b+3>>0]=k;j=(j+2+g+(i<<1)|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(h+2)>>0]=j;a[b+(e+3)>>0]=j;e=(i+2+f+(g<<1)|0)>>>2&255;a[b+(c+2)>>0]=e;a[b+(h+3)>>0]=e;a[b+(c+3)>>0]=(g+2+(f*3|0)|0)>>>2;return}function wo(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=g+(H(f,-3)|0)|0;while(1){if(b>>>0>=h>>>0)break;i=d;i=GN(c[i>>2]|0,c[i+4>>2]|0,56)|0;M()|0;a[b>>0]=i&255^-128;i=d+e|0;j=b+f|0;k=i;k=GN(c[k>>2]|0,c[k+4>>2]|0,56)|0;M()|0;a[j>>0]=k&255^-128;i=i+e|0;j=j+f|0;k=i;k=GN(c[k>>2]|0,c[k+4>>2]|0,56)|0;M()|0;a[j>>0]=k&255^-128;i=i+e|0;j=j+f|0;k=i;k=GN(c[k>>2]|0,c[k+4>>2]|0,56)|0;M()|0;a[j>>0]=k&255^-128;b=j+f|0;d=i+e|0}while(1){if(b>>>0>=g>>>0)break;k=d;k=GN(c[k>>2]|0,c[k+4>>2]|0,56)|0;M()|0;a[b>>0]=k&255^-128;b=b+f|0;d=d+e|0}return}function xo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Ty(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0<d>>>0){f=Zb[c[e+36>>2]&15](e,b,d)|0;break}b:do if((a[e+75>>0]|0)<0|(d|0)==0){h=0;g=b}else{i=d;while(1){g=i+-1|0;if((a[b+g>>0]|0)==10)break;if(!g){h=0;g=b;break b}else i=g}f=Zb[c[e+36>>2]&15](e,b,i)|0;if(f>>>0<i>>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}while(0);Bk(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function yo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==21)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;g=c+8|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=b+8|0;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;h=c+12|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+12|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function zo(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=d>>>5;switch(d|0){case 160:{c[b+80>>2]=1732584193;c[b+84>>2]=-271733879;c[b+88>>2]=-1732584194;c[b+92>>2]=271733878;c[b+96>>2]=-1009589776;d=196;e=5;break}case 224:{c[b+80>>2]=-1056596264;c[b+84>>2]=914150663;c[b+88>>2]=812702999;c[b+92>>2]=-150054599;c[b+96>>2]=-4191439;c[b+100>>2]=1750603025;c[b+104>>2]=1694076839;c[b+108>>2]=-1090891868;d=197;e=5;break}case 256:{c[b+80>>2]=1779033703;c[b+84>>2]=-1150833019;c[b+88>>2]=1013904242;c[b+92>>2]=-1521486534;c[b+96>>2]=1359893119;c[b+100>>2]=-1694144372;c[b+104>>2]=528734635;c[b+108>>2]=1541459225;d=197;e=5;break}default:d=-22}if((e|0)==5){c[b+112>>2]=d;d=b+8|0;c[d>>2]=0;c[d+4>>2]=0;d=0}return d|0}function Ao(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+16|0;i=k;j=k+4|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;a=gf(j,a,b,f,e,2,28,1)|0;a:do if((a|0)<0)a=0;else{h=j+4|0;g=0;while(1){if((g|0)>=(c[h>>2]|0))break a;b=c[j>>2]|0;e=c[b+(g*72|0)+48>>2]|0;switch(e|0){case 7:{a=Yc(b+(g*72|0)+28|0,f,d,0)|0;if((a|0)<0)break a;break}case 8:{a=Gd(b+(g*72|0)+28|0,f,d,c[b+(g*72|0)+16>>2]|0)|0;if((a|0)<0)break a;break}default:{c[i>>2]=e;mx(f,40,197472,i)}}g=g+1|0}}while(0);pI(j);Nb=k;return a|0}function Bo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+48|0;j=k+32|0;i=k+16|0;h=k;do if(a[e>>0]|0){f=c[40514]|0;if((f|0)<0){Ex();f=c[40514]|0}g=(b|0)==4?0:f;if((g|0)==1){j=c[40553]|0;b=c[91424+(b<<2)>>2]|0;c[h>>2]=b>>>4&15;c[h+4>>2]=b&15;c[h+8>>2]=e;yN(j,203939,h)|0;break}if((d|0)!=0&(f|0)==256){j=c[40553]|0;c[i>>2]=(c[91424+(b<<2)>>2]|0)>>>16&255;c[i+4>>2]=d;c[i+8>>2]=e;yN(j,203955,i)|0;break}f=c[40553]|0;if((g|0)==256){b=c[91424+(b<<2)>>2]|0;c[j>>2]=b>>>16&255;c[j+4>>2]=b>>>8&255;c[j+8>>2]=e;yN(f,203982,j)|0;break}else{wQ(e,f)|0;break}}while(0);Nb=k;return}function Co(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;e=h;c[e>>2]=0;f=KU(b)|0;do if(f){d=DN(f)|0;c[e>>2]=d;if(!d){_v(163829)|0;d=0;break}a:do if((b|0)>=65543)if((b|0)<86050)switch(b|0){case 65543:{g=6;break a}default:break a}else switch(b|0){case 86050:{g=6;break a}default:break a}else switch(b|0){case 65542:{g=6;break}default:{}}while(0);if((g|0)==6)c[d+420>>2]=1;c[d+836>>2]=c[a+8>>2];if((yc(d,f,0)|0)<0){HK(e);d=c[e>>2]|0}}else{_v(163813)|0;d=0}while(0);Nb=h;return d|0}function Do(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=Nb;Nb=Nb+16|0;e=i;h=c[(c[a+64>>2]|0)+20>>2]|0;if((c[a+808>>2]&1|0)!=0?(c[a+812>>2]|0)==0:0)d=(c[a+472>>2]|0)==9;else d=1;j=c[b>>2]|0;do if(j|0?c[j+248>>2]|0:0){if(c[a+680>>2]&32768|0){c[e>>2]=b;mx(a,48,185170,e)}nT(b+12|0);c[b+8>>2]=0;c[b+4>>2]=0;if(d){rv(c[b>>2]|0);break}a=(c[h>>2]|0)+8|0;JV(a)|0;d=h+308|0;e=(c[d>>2]|0)+1|0;if(e>>>0<=5368708?(f=h+304|0,g=EJ(c[f>>2]|0,h+312|0,e*400|0)|0,g|0):0){c[f>>2]=g;qN(g+((c[d>>2]|0)*400|0)|0,c[b>>2]|0);c[d>>2]=(c[d>>2]|0)+1}JV(a)|0}while(0);Nb=i;return}function Eo(a){a=+a;var b=0,d=0,e=0,f=0.0,i=0.0;g[h>>3]=a;d=c[h+4>>2]|0;b=d&2147483647;do if(b>>>0>2146435071)a=a+a;else{if(b>>>0<1048576){g[h>>3]=a*18014398509481984.0;d=c[h+4>>2]|0;b=d&2147483647;if(!b)break;else e=696219795}else e=715094163;c[h>>2]=0;c[h+4>>2]=((b>>>0)/3|0)+e|d&-2147483648;f=+g[h>>3];i=f*f*(f/a);g[h>>3]=(i*(i*i)*(i*.14599619288661245+-.758397934778766)+(i*(i*1.6214297201053545+-1.8849797954337717)+1.87595182427177))*f;d=kP(c[h>>2]|0,c[h+4>>2]|0,-2147483648,0)|0;e=M()|0;c[h>>2]=d&-1073741824;c[h+4>>2]=e;f=+g[h>>3];a=a/(f*f);a=(a-f)/(f+f+a)*f+f}while(0);return +a}function Fo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;n=e[a+-2>>1]|0;l=e[a+(h+-1<<1)>>1]|0;c=d&-2;k=e[a+(c+-1<<1)>>1]|0;g=h*3|0;f=b[a+(g+-1<<1)>>1]|0;i=f&65535;m=l+1|0;b[a>>1]=(m+n|0)>>>1;j=k+2|0;b[a+2>>1]=(j+n+(l<<1)|0)>>>2;m=(m+k|0)>>>1&65535;b[a+(h<<1)>>1]=m;b[a+4>>1]=m;l=(i+2+l+(k<<1)|0)>>>2&65535;b[a+(h+1<<1)>>1]=l;b[a+6>>1]=l;k=(k+1+i|0)>>>1&65535;b[a+(c<<1)>>1]=k;b[a+(h+2<<1)>>1]=k;i=(j+i+(i<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(g+3<<1)>>1]=f;b[a+(g+2<<1)>>1]=f;b[a+(c+2<<1)>>1]=f;b[a+(g<<1)>>1]=f;b[a+(g+1<<1)>>1]=f;b[a+(c+3<<1)>>1]=f;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+32|0;i=j+16|0;g=j;a:do if(!(c[a+8>>2]|0)){d=b+80|0;e=xt(c[d>>2]|0)|0;d=MT(c[d>>2]|0)|0;if(!d)f=0;else f=c[d+8>>2]|0;e=(e|0)!=1|(f&2|0)==0?e:2;d=0;while(1){if((d|0)>=(e|0))break;if(!(c[b+(d<<2)>>2]|0)){h=7;break}else d=d+1|0}if((h|0)==7){c[g>>2]=167960;c[g+4>>2]=166508;c[g+8>>2]=1606;mx(0,0,214689,g);ba()}d=(f&64|0)==0|(e|0)!=1?e:2;e=(d|0)>0;while(1){if(!(e&d>>>0<8))break a;f=b+(d<<2)|0;if(c[f>>2]|0)mx(a,16,167975,i);c[f>>2]=0;d=d+1|0}}while(0);Nb=j;return}function Ho(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=g+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;i=b;f[a>>2]=(+((c[i>>2]|0)>>>0)+4294967296.0*+(c[i+4>>2]|0))*-1.0842021724855044e-19;i=b+d|0;j=a+e|0;k=i;f[j>>2]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;i=i+d|0;j=j+e|0;k=i;f[j>>2]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;i=i+d|0;j=j+e|0;k=i;f[j>>2]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=g>>>0)break;k=b;f[a>>2]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;a=a+e|0;b=b+d|0}return}function Io(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0;h=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;i=b;g[a>>3]=(+((c[i>>2]|0)>>>0)+4294967296.0*+(c[i+4>>2]|0))*-1.0842021724855044e-19;i=b+d|0;j=a+e|0;k=i;g[j>>3]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;i=i+d|0;j=j+e|0;k=i;g[j>>3]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;i=i+d|0;j=j+e|0;k=i;g[j>>3]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=f>>>0)break;k=b;g[a>>3]=(+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0))*-1.0842021724855044e-19;a=a+e|0;b=b+d|0}return}function Jo(b,c,d,e,g){b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=g+(H(e,-3)|0)|0;while(1){if(b>>>0>=h>>>0)break;j=uV(+f[c>>2]*128.0)|0;i=j+128|0;a[b>>0]=i>>>0>255?j+-2147483520>>31:i;i=c+d|0;j=b+e|0;l=uV(+f[i>>2]*128.0)|0;k=l+128|0;a[j>>0]=k>>>0>255?l+-2147483520>>31:k;i=i+d|0;j=j+e|0;k=uV(+f[i>>2]*128.0)|0;l=k+128|0;a[j>>0]=l>>>0>255?k+-2147483520>>31:l;i=i+d|0;j=j+e|0;l=uV(+f[i>>2]*128.0)|0;k=l+128|0;a[j>>0]=k>>>0>255?l+-2147483520>>31:k;b=j+e|0;c=i+d|0}while(1){if(b>>>0>=g>>>0)break;k=uV(+f[c>>2]*128.0)|0;l=k+128|0;a[b>>0]=l>>>0>255?k+-2147483520>>31:l;b=b+e|0;c=c+d|0}return}function Ko(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+16|0;k=l+4|0;j=l;e=Nn(k,d)|0;do if((e|0)>=0){h=d+8|0;i=c[k>>2]|0;a:while(1){e=c[h>>2]|0;switch(a[e>>0]|0){case 47:case 42:break;default:{f=8;break a}}c[h>>2]=e+1;f=a[e>>0]|0;e=Nn(j,d)|0;if((e|0)<0){f=5;break}g=c[j>>2]|0;e=YK(f<<24>>24==42?19:20,i,g)|0;if(!e){f=7;break}else i=e}if((f|0)==5){c[k>>2]=i;kI(i);break}else if((f|0)==7){c[k>>2]=0;kI(i);kI(g);e=-12;break}else if((f|0)==8){c[k>>2]=i;c[b>>2]=i;e=0;break}}while(0);Nb=l;return e|0}function Lo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=c[a+26364>>2]|0;i=a+24312|0;k=c[i>>2]|0;j=c[((j|0)==3?k+84|0:k+76+(((j|0)==2&1)<<2)|0)>>2]|0;k=c[b+25364>>2]|0;a:do if(!(c[a+26360>>2]|0))d=b+23404|0;else{f=b+25372|0;d=b+23404|0;e=0;while(1){if((e|0)==2)break a;g=c[(c[i>>2]|0)+76+(e<<2)>>2]|0;h=c[(c[f>>2]|0)+76+(e<<2)>>2]|0;a=0;while(1){if(a>>>0>=c[d>>2]<<1>>>0)break;l=Fn(b,g,h,a+16|0)|0;c[b+21996+(e<<7)+((a^e)<<2)>>2]=l;a=a+1|0}e=e+1|0}}while(0);a=0;while(1){if(a>>>0>=(c[d>>2]|0)>>>0)break;l=Fn(b,j,k,a)|0;c[b+21868+(a<<2)>>2]=l;a=a+1|0}return}function Mo(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0;h=f+(H(e,-3)|0)|0;while(1){if(b>>>0>=h>>>0)break;j=QT(+g[c>>3]*128.0)|0;i=j+128|0;a[b>>0]=i>>>0>255?j+-2147483520>>31:i;i=c+d|0;j=b+e|0;l=QT(+g[i>>3]*128.0)|0;k=l+128|0;a[j>>0]=k>>>0>255?l+-2147483520>>31:k;i=i+d|0;j=j+e|0;k=QT(+g[i>>3]*128.0)|0;l=k+128|0;a[j>>0]=l>>>0>255?k+-2147483520>>31:l;i=i+d|0;j=j+e|0;l=QT(+g[i>>3]*128.0)|0;k=l+128|0;a[j>>0]=k>>>0>255?l+-2147483520>>31:k;b=j+e|0;c=i+d|0}while(1){if(b>>>0>=f>>>0)break;k=QT(+g[c>>3]*128.0)|0;l=k+128|0;a[b>>0]=l>>>0>255?k+-2147483520>>31:l;b=b+e|0;c=c+d|0}return}function No(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!(c[a+24>>2]|0)){e=c[a>>2]|0;if(!e)a=0;else{d=c[e+72>>2]|0;c[a>>2]=d;if(!d)c[a+4>>2]=0;g=a+8|0;c[g>>2]=(c[g>>2]|0)+-1;g=a+12|0;c[g>>2]=-80-(c[e+28>>2]|0)+(c[g>>2]|0);g=e+48|0;f=a+16|0;d=f;g=iP(c[d>>2]|0,c[d+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;d=M()|0;c[f>>2]=g;c[f+4>>2]=d;f=e+16|0;a=a+32|0;d=a;if((c[f>>2]|0)==(c[d>>2]|0)?(c[f+4>>2]|0)==(c[d+4>>2]|0):0){g=a;c[g>>2]=0;c[g+4>>2]=0}a=e;d=b+72|0;do{c[b>>2]=c[a>>2];b=b+4|0;a=a+4|0}while((b|0)<(d|0));FV(e);a=1}}else a=-1;return a|0}function Oo(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=g+(H(f,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;i=d;i=GN(c[i>>2]|0,c[i+4>>2]|0,48)|0;M()|0;b[a>>1]=i;i=d+e|0;j=a+f|0;k=i;k=GN(c[k>>2]|0,c[k+4>>2]|0,48)|0;M()|0;b[j>>1]=k;i=i+e|0;j=j+f|0;k=i;k=GN(c[k>>2]|0,c[k+4>>2]|0,48)|0;M()|0;b[j>>1]=k;i=i+e|0;j=j+f|0;k=i;k=GN(c[k>>2]|0,c[k+4>>2]|0,48)|0;M()|0;b[j>>1]=k;a=j+f|0;d=i+e|0}while(1){if(a>>>0>=g>>>0)break;k=d;k=GN(c[k>>2]|0,c[k+4>>2]|0,48)|0;M()|0;b[a>>1]=k;a=a+f|0;d=d+e|0}return}function Po(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!(NL(b)|0))d=1;else{d=Yz(b,4)|0;c[a>>2]=d;yO(b,4);d=2}if(NL(b)|0)d=(fy(a,b)|0)+d|0;if(!(NL(b)|0))f=1;else{e=Yz(b,4)|0;f=a+396|0;c[f>>2]=e;e=Yz(b,4)|0;c[a+400>>2]=e;f=c[f>>2]|0;e=0;while(1){d=d+1|0;if((e|0)>(f|0))break;g=Yz(b,8)|0;c[a+404+(e<<2)>>2]=g;e=e+1|0}f=f+1|0}if(NL(b)|0){g=Yz(b,7)|0;c[a+472>>2]=g;YU(b);d=d+1|0}e=0;while(1){if((e|0)>=(f|0))break;g=NL(b)|0;c[a+4+(e<<2)>>2]=g;g=Yz(b,7)|0;c[a+72+(e<<2)>>2]=g;e=e+1|0;d=d+1|0}return d|0}function Qo(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function Ro(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Nb;Nb=Nb+16|0;i=n+8|0;l=c[f+24>>2]|0;h=ev(f,70,0)|0;m=c[f+28>>2]|0;j=c[a+60>>2]|0;k=(m|0)/64|0;if((m|0)>=64){f=m&63;if(f|0){c[i>>2]=f;mx(a,24,172167,i)}if(((h|0)!=0&(m|0)>127?(g=a+416|0,((c[g>>2]|0)%11025|0|0)==0):0)?(1<<((d[h>>0]|0)>>>2&3)|0)==(k|0):0)c[g>>2]=(m>>>7)*11025;c[b+76>>2]=k<<8;f=YI(a,b,0)|0;if((f|0)>=0){a=c[b>>2]|0;g=0;f=l;while(1){if((g|0)>=(k|0))break;wh(j,f,a);a=a+1024|0;g=g+1|0;f=f+64|0}c[e>>2]=1;f=m}}else{mx(a,16,172146,n);f=-1094995529}Nb=n;return f|0}function So(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(!b){e=d[a+-1>>0]|0;b=e}else{b=d[a+-1>>0]|0;e=d[a+~f>>0]|0}o=d[a+(f+-1)>>0]|0;n=o+2|0;m=d[a+((f<<1)+-1)>>0]|0;l=m+2|0;k=d[a+((f*3|0)+-1)>>0]|0;j=d[a+((f<<2)+-1)>>0]|0;i=d[a+((f*5|0)+-1)>>0]|0;h=d[a+((f*6|0)+-1)>>0]|0;g=d[a+((f*7|0)+-1)>>0]|0;e=H(((n+e+(b<<1)|0)>>>2)+4+((l+b+(o<<1)|0)>>>2)+((n+(m<<1)+k|0)>>>2)+((l+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((h+2+(g*3|0)|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function To(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}e=(zV()|0)+188|0;if(!(c[c[e>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{b=PV()|0;c[b>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{b=PV()|0;c[b>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function Uo(a,b){a=a|0;b=b|0;c[a>>2]=27;c[a+484>>2]=4;c[a+488>>2]=5;c[a+492>>2]=6;c[a+496>>2]=7;c[a+500>>2]=8;c[a+504>>2]=9;c[a+508>>2]=10;c[a+512>>2]=11;c[a+52>>2]=12;c[a+56>>2]=13;c[a+68>>2]=14;c[a+72>>2]=15;c[a+76>>2]=16;c[a+80>>2]=17;c[a+292>>2]=18;c[a+296>>2]=19;c[a+4>>2]=4;c[a+8>>2]=8;c[a+28>>2]=20;c[a+32>>2]=21;c[a+36>>2]=22;c[a+100>>2]=23;c[a+104>>2]=24;c[a+148>>2]=25;c[a+152>>2]=26;c[a+124>>2]=27;c[a+128>>2]=28;c[a+172>>2]=29;c[a+176>>2]=30;c[a+188>>2]=31;c[a+192>>2]=32;c[a+196>>2]=33;c[a+200>>2]=34;c[a+212>>2]=35;c[a+216>>2]=36;c[a+220>>2]=37;c[a+224>>2]=38;c[a+516>>2]=39;c[a+520>>2]=40;return}function Vo(b){b=b|0;var d=0,e=0,f=0;d=DD(1,320)|0;ha(0,d|0)|0;e=XM(1,d)|0;c[d+76>>2]=e;e=fp(3,1,2048)|0;c[d+104>>2]=e;e=DP()|0;c[d+100>>2]=e;c[e+16>>2]=6;c[e+20>>2]=d;c[d+148>>2]=-1;c[d+152>>2]=-1;a[d+255>>0]=1;a[d+256>>0]=1;a[d+251>>0]=(b|0)!=0&1;c[d>>2]=0;c[d+4>>2]=2e3;c[d+8>>2]=-16;b=AO(Ga()|0)|0;c[d+16>>2]=b;a[d+259>>0]=(162546!=0|162682!=0|162809!=0)&1;if((LM(162496)|0)==4399)b=(LM(162768)|0)!=2548&1;else b=1;a[d+260>>0]=b;f=GC()|0;b=M()|0;e=d+296|0;c[e>>2]=f;c[e+4>>2]=b;GK(d,4194304);va(0,d|0,0,7,2)|0;wa(d|0,0,8,2)|0;return d|0}function Wo(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;o=(d[b>>0]|0)-(d[a>>0]|0)|0;n=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;m=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;l=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;k=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;j=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;i=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;c=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Xo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;i=c[f>>2]|0;a[b+12>>0]=a[b+12+i>>0]|0;a[b+87940>>0]=a[b+87932+i>>0]|0;e=b+14568|0;c[b+14564>>2]=((c[e>>2]|0)!=(i|0))<<31>>31;i=b+13|0;h=d+13|0;a[i>>0]=a[h>>0]|0;a[i+1>>0]=a[h+1>>0]|0;a[i+2>>0]=a[h+2>>0]|0;a[i+3>>0]=a[h+3>>0]|0;a[i+4>>0]=a[h+4>>0]|0;a[i+5>>0]=a[h+5>>0]|0;i=d+87932|0;h=c[i+4>>2]|0;g=b+87932|0;c[g>>2]=c[i>>2];c[g+4>>2]=h;g=b+87941|0;h=d+87941|0;a[g>>0]=a[h>>0]|0;a[g+1>>0]=a[h+1>>0]|0;a[g+2>>0]=a[h+2>>0]|0;c[f>>2]=c[d+8>>2];c[b+92>>2]=c[d+92>>2];c[b+20>>2]=c[d+20>>2];c[b>>2]=c[d>>2];c[e>>2]=c[d+14568>>2];return}function Yo(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=Nb;Nb=Nb+32|0;h=l;i=c[a+4>>2]|0;j=c[a+24316>>2]|0;b=(MT(c[i+144>>2]|0)|0)+6|0;b=d[b>>0]|0;g=c[a+26364>>2]|0;n=(g|0)!=3;p=n&1;o=f<<p;f=e<<p;e=(c[i+128>>2]|0)-f|0;e=(o|0)>(e|0)?e:o;if(!((n?(c[a+26368>>2]|0)!=0:0)?!(c[i+292>>2]&2|0):0))k=4;if((k|0)==4?(m=c[i+152>>2]|0,m|0):0){p=H(c[j+32>>2]|0,f)|0;c[h>>2]=p;b=H(c[j+36>>2]|0,f>>b)|0;c[h+8>>2]=b;c[h+4>>2]=b;b=3;while(1){if((b|0)==8)break;c[h+(b<<2)>>2]=0;b=b+1|0}lc[m&63](i,j,h,f,g,e)}Nb=l;return}function Zo(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=f>>1;k=f&-2;l=o*3|0;m=o<<2;n=o*5|0;h=o*6|0;i=o*7|0;j=o<<3;g=d;f=a+(0-o<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(o<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(k<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}jq(d|0,0,256)|0;return}function _o(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=g>>>0)break;l=b;i=c[l+4>>2]|0;h=a;c[h>>2]=c[l>>2];c[h+4>>2]=i;h=b+d|0;i=a+e|0;l=h;k=c[l+4>>2]|0;j=i;c[j>>2]=c[l>>2];c[j+4>>2]=k;h=h+d|0;i=i+e|0;j=h;k=c[j+4>>2]|0;l=i;c[l>>2]=c[j>>2];c[l+4>>2]=k;h=h+d|0;i=i+e|0;l=h;k=c[l+4>>2]|0;j=i;c[j>>2]=c[l>>2];c[j+4>>2]=k;a=i+e|0;b=h+d|0}while(1){if(a>>>0>=f>>>0)break;j=b;k=c[j+4>>2]|0;l=a;c[l>>2]=c[j>>2];c[l+4>>2]=k;a=a+e|0;b=b+d|0}return}function $o(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=0;while(1){if((j|0)>=(i|0))break;m=H(j,g)|0;p=b+m|0;l=H(j,h)|0;o=e+l|0;k=H(j,f)|0;n=a+k|0;q=c[n>>2]|0;o=IT(q,IT(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0)|0;c[n>>2]=o;m=b+(m+4)|0;l=e+(l+4)|0;k=a+(k+4)|0;n=c[k>>2]|0;l=IT(n,IT(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0)|0;c[k>>2]=l;j=j+1|0}return}function ap(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=Nb;Nb=Nb+32|0;l=m;f=b+392|0;g=c[f>>2]|0;h=b+396|0;i=c[h>>2]|0;j=b+384|0;k=c[j>>2]|0;d=b+388|0;e=c[d>>2]|0;if((g>>>0<(2147483647-i|0)>>>0&k>>>0<(2147483647-e|0)>>>0?(i+g|0)>>>0<(c[b+68>>2]|0)>>>0:0)?(e+k|0)>>>0<(c[b+72>>2]|0)>>>0:0)if(!(c[a+1008>>2]|0))a=0;else a=Zg(b,c[a+92>>2]&1)|0;else{n=c[b+68>>2]|0;b=c[b+72>>2]|0;c[l>>2]=g;c[l+4>>2]=i;c[l+8>>2]=k;c[l+12>>2]=e;c[l+16>>2]=n;c[l+20>>2]=b;mx(a,24,166968,l);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;c[d>>2]=0;a=0}Nb=m;return a|0}function bp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+24>>2]|0)==0?(d=Ax(80)|0,(d|0)!=0):0){e=d;f=b;g=e+72|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));c[d+72>>2]=0;e=a+4|0;g=c[e>>2]|0;c[((g|0)==0?a:g+72|0)>>2]=d;c[e>>2]=d;e=a+8|0;c[e>>2]=(c[e>>2]|0)+1;e=a+12|0;c[e>>2]=(c[d+28>>2]|0)+80+(c[e>>2]|0);e=d+48|0;g=a+16|0;f=g;e=kP(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;f=M()|0;c[g>>2]=e;c[g+4>>2]=f;if(!(c[b+36>>2]|0))a=0;else{f=b+16|0;g=c[f+4>>2]|0;a=a+32|0;c[a>>2]=c[f>>2];c[a+4>>2]=g;a=0}}else a=-1;return a|0}function cp(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;j=g*7|0;k=g<<3;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==8)break;q=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=q;q=q+(e[i+16>>1]|0)|0;a[c+l>>0]=q;q=q+(e[i+32>>1]|0)|0;a[c+m>>0]=q;q=q+(e[i+48>>1]|0)|0;a[c+n>>0]=q;q=q+(e[i+64>>1]|0)|0;a[c+o>>0]=q;q=q+(e[i+80>>1]|0)|0;a[c+p>>0]=q;q=q+(e[i+96>>1]|0)|0;a[c+j>>0]=q;a[c+k>>0]=q+(e[i+112>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function dp(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=g+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;i=uV(+f[c>>2]*32768.0)|0;b[a>>1]=(i+32768|0)>>>0>65535?i>>31^32767:i;i=c+d|0;j=a+e|0;k=uV(+f[i>>2]*32768.0)|0;b[j>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;i=i+d|0;j=j+e|0;k=uV(+f[i>>2]*32768.0)|0;b[j>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;i=i+d|0;j=j+e|0;k=uV(+f[i>>2]*32768.0)|0;b[j>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;a=j+e|0;c=i+d|0}while(1){if(a>>>0>=g>>>0)break;k=uV(+f[c>>2]*32768.0)|0;b[a>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;a=a+e|0;c=c+d|0}return}function ep(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0.0,w=0.0,x=0,y=0;l=+f[d>>2];m=+f[d+4>>2];n=+f[d+8>>2];k=+f[d+12>>2];h=+f[c>>2];i=+f[c+4>>2];j=+f[c+8>>2];g=+f[c+12>>2];d=0;while(1){if((d|0)>=(e|0))break;y=a+(d<<3)|0;w=+f[y>>2];x=a+(d<<3)+4|0;t=+f[x>>2];u=b+(d<<3)|0;v=+f[u>>2];c=b+(d<<3)+4|0;s=+f[c>>2];r=l+h;q=m+i;p=n+j;o=k+g;f[y>>2]=r*w+p*v;f[x>>2]=r*t+p*s;f[u>>2]=q*w+o*v;f[c>>2]=q*t+o*s;h=r;i=q;j=p;g=o;d=d+1|0}return}function fp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Nb;Nb=Nb+16|0;f=g;a:do if((up(f,b,d,a,1)|0)>=0?(e=rR(28)|0,(e|0)!=0):0){c[e+16>>2]=b;c[e+20>>2]=a;c[e+24>>2]=(c[f>>2]|0)/(d|0)|0;a=(aQ(a)|0)==0;a=a?1:b;b=e+4|0;c[b>>2]=a;a=qR(a)|0;c[e>>2]=a;b:do if(a|0){a=0;while(1){if((a|0)>=(c[b>>2]|0))break;h=eU(c[f>>2]|0)|0;c[(c[e>>2]|0)+(a<<2)>>2]=h;if(!(c[(c[e>>2]|0)+(a<<2)>>2]|0))break b;else a=a+1|0}c[e+12>>2]=d;break a}while(0);EH(e);e=0}else e=0;while(0);Nb=g;return e|0}function gp(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0;h=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;i=QT(+g[c>>3]*32768.0)|0;b[a>>1]=(i+32768|0)>>>0>65535?i>>31^32767:i;i=c+d|0;j=a+e|0;k=QT(+g[i>>3]*32768.0)|0;b[j>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;i=i+d|0;j=j+e|0;k=QT(+g[i>>3]*32768.0)|0;b[j>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;i=i+d|0;j=j+e|0;k=QT(+g[i>>3]*32768.0)|0;b[j>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;a=j+e|0;c=i+d|0}while(1){if(a>>>0>=f>>>0)break;k=QT(+g[c>>3]*32768.0)|0;b[a>>1]=(k+32768|0)>>>0>65535?k>>31^32767:k;a=a+e|0;c=c+d|0}return}function hp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;e=b;f=e+250|0;if(!(a[f>>0]|0)){c[e+20>>2]=0;c[e+36>>2]=0;c[e+48>>2]=0;c[e+68>>2]=0;c[e+148>>2]=-1;c[e+152>>2]=-1;c[e+144>>2]=0;a[e+248>>0]=1;a[e+249>>0]=0;a[e+253>>0]=0;a[e+254>>0]=0;a[e+257>>0]=1;a[e+258>>0]=1;g=e+264|0;h=e+288|0;c[h>>2]=0;c[h+4>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;g=e+280|0;c[g>>2]=5e6;c[g+4>>2]=0;d=AO(d)|0;c[e+12>>2]=d;d=b;b=ua(22,30.0,d|0)|0;c[e+116>>2]=b;d=ua(23,1.0e3,d|0)|0;c[e+120>>2]=d;a[f>>0]=1;qr(c[e+100>>2]|0)|0;e=0}else e=-1;return e|0}function ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;g=i+8|0;a:do switch(e|0){case 2:{e=a+4|0;g=c[e>>2]|0;if(!(c[a+6512>>2]|0)){mx(g,16,190116,i);JK(d,c[f>>2]|0);c[f>>2]=0;break a}else{d=nd(g,d,b+176032|0,c[f>>2]|0)|0;c[f>>2]=(c[f>>2]|0)-d;c[(c[e>>2]|0)+828>>2]=28;break a}}case 0:{e=c[f>>2]|0;if((e|0)<=16?(eJ(d,e)|0)==0:0)h=8;else h=7;break}default:h=7}while(0);if((h|0)==7){bN(c[a+4>>2]|0,190194,g);e=c[f>>2]|0;h=8}if((h|0)==8){JK(d,e);c[f>>2]=0}Nb=i;return}function jp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=c[a+24>>2]|0;j=1<<i;k=j<<(0-i&3);l=j+-1&-286331153;b=15<<i;f=_O(b,4)|0;g=a+16|0;c[g>>2]=f;a:do if((f|0)!=0?(h=_O(b,4)|0,c[a+20>>2]=h,(h|0)!=0):0){a=0;while(1){if((a|0)>=(j|0)){a=0;break a}d=H(a,l)|0;e=a*15|0;f=d*15|0;b=0;while(1){if((b|0)==15)break;n=b<<i;m=H(b,k)|0;o=((H(((n|0)/15|0)+a>>i,-15)|0)+b<<i)+e<<1;c[(c[g>>2]|0)+(b+e<<2)>>2]=o;c[h+(m+f-((((m|0)/15|0)+d>>i)*15<<i)<<2)>>2]=n+a;b=b+1|0}a=a+1|0}}else a=1;while(0);return a|0}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;k=m;c[k>>2]=-1;j=d+e|0;f=0;b=d;e=0;a:while(1){i=(e|0)!=0;b:while(1){h=(f|0)!=0;c:while(1){if(b>>>0>=j>>>0){b=0;break a}b=Ym(b,j,k)|0;g=c[k>>2]|0;if((g&-256|0)!=256){b=0;break a}e=g&31;switch(g&31){case 8:break b;case 7:break c;default:{}}if(h&((e|0)!=15&((e|4|0)!=13&(i|(e|0)!=6)))){l=10;break a}}f=1}e=1}if((l|0)==10){while(1){e=b+-4|0;if(e>>>0<=d>>>0)break;if(!(a[b+-5>>0]|0))b=b+-1|0;else break}b=e-d|0}Nb=m;return b|0}function lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[(c[a+64>>2]|0)+20>>2]|0;a:do if(f|0){g=a+800|0;mv(f,c[g>>2]|0);d=f+4|0;e=c[d>>2]|0;if(e|0?(b=c[f>>2]|0,(e|0)!=(b|0)):0)dg(c[b+212>>2]|0,c[e+212>>2]|0,0)|0;c[f+148>>2]=0;c[f+144>>2]=0;c[f+152>>2]=1;c[d>>2]=0;b=a+12|0;a=0;while(1){if((a|0)>=(c[g>>2]|0))break a;d=c[f>>2]|0;c[d+(a*352|0)+292>>2]=0;rv(c[d+(a*352|0)+288>>2]|0);c[d+(a*352|0)+296>>2]=0;yr(d+(a*352|0)|0);e=c[(c[b>>2]|0)+108>>2]|0;if(e|0)ec[e&31](c[d+(a*352|0)+212>>2]|0);a=a+1|0}}while(0);return}function mp(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;m=Nb;Nb=Nb+16|0;l=m;k=(f|0)==16?22672:22608;a:do if(NL(b)|0){i=0;h=8;j=8;while(1){if((i|0)>=(f|0)){h=0;break a}if(!h)h=0;else{h=pp(b)|0;if((h+128|0)>>>0>255){i=8;break}h=h+j&255}if(!(h|i)){i=10;break}n=(h|0)==0?j:h;a[e+(d[k+i>>0]|0)>>0]=n;i=i+1|0;j=n}if((i|0)==8){c[l>>2]=h;mx(0,16,170251,l);h=-1094995529;break}else if((i|0)==10){Bk(e|0,g|0,f|0)|0;h=0;break}}else{Bk(e|0,h|0,f|0)|0;h=0}while(0);Nb=m;return h|0}function np(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=e+5|0;k=e+6|0;m=e+8|0;n=e+4|0;o=b+384|0;p=b+392|0;f=0;a:while(1){if(!(c[b+(f<<2)>>2]|0))break;if((f+-1|0)>>>0<2){j=d[k>>0]|0;l=d[h>>0]|0}else{j=0;l=0}if((f|0)==1&((c[m>>2]&66|0)!=0|0!=0)){q=6;break}i=d[n>>0]|0;g=0;while(1){if(g>>>0>=i>>>0)break a;if((c[e+16+(g<<5)>>2]|0)==(f|0))break;g=g+1|0}j=H((c[o>>2]|0)>>>j,c[b+32+(f<<2)>>2]|0)|0;l=(H((c[p>>2]|0)>>>l,c[e+16+(g<<5)+4>>2]|0)|0)+j|0;c[a+(f<<2)>>2]=l;f=f+1|0}if((q|0)==6)c[a+4>>2]=0;return}function op(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=a+((H(b,i)|0)+-1<<1)|0;h=a+((H(b+4|0,i)|0)+-1<<1)|0;b=b+1|0;d=d+(e[g>>1]|0)|0;f=f+(e[h>>1]|0)|0}g=oK((d+2|0)>>>2|0,0,65537,65537)|0;h=M()|0;d=(f+2|0)>>>2;b=0;while(1){if((b|0)==4)break;f=a+((H(b,i)|0)<<1)|0;j=f;c[j>>2]=g;c[j+4>>2]=h;f=f+8|0;c[f>>2]=g;c[f+4>>2]=h;b=b+1|0}d=oK(d|0,0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;j=a+((H(b,i)|0)<<1)|0;h=j;c[h>>2]=d;c[h+4>>2]=f;j=j+8|0;c[j>>2]=d;c[j+4>>2]=f;b=b+1|0}return}function pp(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(IS(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[72704+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[73728+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[91680+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(IS(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function qp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=Nb;Nb=Nb+16|0;h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[91680+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){mx(0,16,200847,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[72704+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[73216+a>>0]|0}while(0);Nb=i;return a|0}function rp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=c[a+13444>>2]|0;j=(c[a+13384>>2]|0)-(((c[f+8>>2]|0)+-1|0)/2|0)|0;h=c[f+48>>2]|0;g=((h|0)<0)<<31>>31;j=oK(j|0,((j|0)<0)<<31>>31|0,h|0,g|0)|0;k=M()|0;e=c[f+32>>2]|0;e=iP(j|0,k|0,e|0,((e|0)<0)<<31>>31|0)|0;k=M()|0;j=c[f+40>>2]|0;i=((j|0)<0)<<31>>31;k=oK(e|0,k|0,j|0,i|0)|0;e=M()|0;f=c[f+36>>2]|0;f=iP(k|0,e|0,f|0,((f|0)<0)<<31>>31|0)|0;e=M()|0;a=c[a+40>>2]|0;g=oK(j|0,i|0,h|0,g|0)|0;a=oK(g|0,M()|0,a|0,((a|0)<0)<<31>>31|0)|0;d=HN(f,e,b,d,a,M()|0)|0;L(M()|0);return d|0}function sp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(wu(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=H(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function tp(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;g=i+8|0;e=i;d=i+12|0;c[d>>2]=0;h=Qq(35633,17584)|0;do if((h|0)!=0?(a=Qq(35632,17744)|0,(a|0)!=0):0){b=Ra()|0;if(!b){jJ(164636)|0;b=0;break}Ka(b|0,h|0);Ka(b|0,a|0);fb(b|0);bb(b|0,35714,d|0);if(!(c[d>>2]|0)){EN(164652,e)|0;c[e>>2]=0;bb(b|0,35716,e|0);d=c[e>>2]|0;if(d|0?(f=xc(d)|0,f|0):0){ab(b|0,d|0,0,f|0);c[g>>2]=f;EN(164675,g)|0;qd(f)}Ta(b|0);b=0}}else{b=0;a=0}while(0);Ua(h|0);Ua(a|0);Nb=i;return b|0}function up(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;h=bQ(e)|0;g=aQ(e)|0;do if(!((b|0)<1|((d|0)<1|(h|0)==0))){if(!f){if((d|0)>2147483616){e=-22;break}d=d+31&-32;e=1}else e=f;if((2147483647/(e|0)|0|0)>=(b|0)?(i=oK(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0,k=M()|0,f=(2147483647-(H(e,b)|0)|0)/(h|0)|0,j=((f|0)<0)<<31>>31,!((k|0)>(j|0)|(k|0)==(j|0)&i>>>0>f>>>0)):0){f=(g|0)!=0;k=H(d,h)|0;e=e+-1+(H(k,f?1:b)|0)&0-e;if(a|0)c[a>>2]=e;e=H(e,f?b:1)|0}else e=-22}else e=-22;while(0);return e|0}function vp(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;h=a;j=b;k=j;j=j+4|0;j=fJ(c[h>>2]|0,c[h+4>>2]|0,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;k=M()|0;h=a;c[h>>2]=j;c[h+4>>2]=k;h=a+8|0;k=h;j=b+8|0;i=j;j=j+4|0;j=fJ(c[k>>2]|0,c[k+4>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=M()|0;c[h>>2]=j;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function wp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=c[a+60>>2]|0;b=0;while(1){if((b|0)==4)break;d=0;while(1){if((d|0)==16)break;e=c[g+492+(b<<6)+(d<<2)>>2]|0;if(e|0){c[e+74464>>2]=e+24288;c[e+148672>>2]=e+98496}d=d+1|0}b=b+1|0}f=g+8|0;rv(c[f>>2]|0);d=a+420|0;a:do if(c[d>>2]|0){b=c[f>>2]|0;c[b+76>>2]=2048;b=YI(a,b,0)|0;if((b|0)>=0){d=c[d>>2]|0;b=0;while(1){if((b|0)>=(d|0)){b=0;break a}e=c[g+5412+(b<<2)>>2]|0;if(e|0)c[e+74176>>2]=c[(c[(c[f>>2]|0)+64>>2]|0)+(b<<2)>>2];b=b+1|0}}}else b=1;while(0);return b|0}function xp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;h=i;e=c[(c[a+12>>2]|0)+16>>2]|0;if((e&4096|0)!=0?(c[a+92>>2]&589824|0)==0:0)b=(c[a+96>>2]&32768|0)==0;else b=0;d=a+800|0;g=c[d>>2]|0;a:do if((g|0)!=1){if(b?(c[a+804>>2]&1|0)!=0:0){b=1;f=12}else f=8;do if((f|0)==8){if(e&8192|0?c[a+804>>2]&2|0:0){b=2;f=12;break}if(!(e&32768)){c[d>>2]=1;c[a+808>>2]=0;break a}}while(0);if((f|0)==12)c[a+808>>2]=b;if((g|0)>16){c[h>>2]=g;c[h+4>>2]=16;mx(a,24,200973,h)}}else c[a+808>>2]=0;while(0);Nb=i;return}function yp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;oo(a,b);f=a+173812|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;f=a+64|0;if(c[f>>2]|0)mo(a,b);a:do if(c[b+16>>2]|0){d=0;while(1){if((d|0)==6)break;e=a+173788+(d<<2)|0;b=0;while(1){if((b|0)==16)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}if(c[f>>2]|0){d=0;while(1){if((d|0)==6)break a;e=a+173812+(d<<2)|0;b=0;while(1){if((b|0)==64)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}}}while(0);return}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+16|0;j=k+4|0;i=k;e=Ko(j,d)|0;do if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;a:while(1){switch(a[c[f>>2]>>0]|0){case 43:case 45:break;default:{f=8;break a}}e=Ko(i,d)|0;if((e|0)<0){f=5;break}g=c[i>>2]|0;e=YK(21,h,g)|0;if(!e){f=7;break}else h=e}if((f|0)==5){c[j>>2]=h;kI(h);break}else if((f|0)==7){c[j>>2]=0;kI(h);kI(g);e=-12;break}else if((f|0)==8){c[j>>2]=h;c[b>>2]=h;e=0;break}}while(0);Nb=k;return e|0}function Ap(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=0;f=0;g=0;h=0;while(1){if((e|0)==4)break;i=a+((H(e,b)|0)+-1)|0;i=f+(d[i>>0]|0)+(d[a+(e-b)>>0]|0)|0;j=e+4|0;k=a+((H(j,b)|0)+-1)|0;e=e+1|0;f=i;g=g+(d[a+(j-b)>>0]|0)|0;h=h+(d[k>>0]|0)|0}i=H((f+4|0)>>>3,16843009)|0;j=H((g+2|0)>>>2,16843009)|0;k=(h+2|0)>>>2;f=(h+4+g|0)>>>3;e=0;while(1){if((e|0)==4)break;h=a+(H(e,b)|0)|0;c[h>>2]=i;c[h+4>>2]=j;e=e+1|0}g=H(k,16843009)|0;f=H(f,16843009)|0;e=4;while(1){if((e|0)==8)break;k=a+(H(e,b)|0)|0;c[k>>2]=g;c[k+4>>2]=f;e=e+1|0}return}function Bp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=oK((d+2|0)>>>2|0,0,65537,65537)|0;i=M()|0;d=oK((g+2|0)>>>2|0,0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==4)break;g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}b=4;while(1){if((b|0)==8)break;k=a+((H(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Cp(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=d[b+-1>>0]|0;k=d[b+(e+-1)>>0]|0;c=e<<1;j=d[b+(c+-1)>>0]|0;g=e*3|0;f=a[b+(g+-1)>>0]|0;h=f&255;l=k+1|0;a[b>>0]=(l+m|0)>>>1;i=j+2|0;a[b+1>>0]=(i+m+(k<<1)|0)>>>2;l=(l+j|0)>>>1&255;a[b+e>>0]=l;a[b+2>>0]=l;k=(h+2+k+(j<<1)|0)>>>2&255;a[b+(e+1)>>0]=k;a[b+3>>0]=k;j=(j+1+h|0)>>>1&255;a[b+c>>0]=j;a[b+(e+2)>>0]=j;h=(i+h+(h<<1)|0)>>>2&255;a[b+(c|1)>>0]=h;a[b+(e+3)>>0]=h;a[b+(g+3)>>0]=f;a[b+(g+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+g>>0]=f;a[b+(g+1)>>0]=f;a[b+(c+3)>>0]=f;return}function Dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0;k=b+48|0;l=b+52|0;g=0;while(1){if((g|0)>=(e|0))break;j=+f[c+(g<<6)+48>>2];h=0;i=j*+f[k>>2];j=j*+f[l>>2];while(1){if((h|0)==6)break;o=+f[b+(h<<3)>>2];q=+f[b+(h<<3)+4>>2];s=12-h|0;n=+f[b+(s<<3)>>2];p=+f[b+(s<<3)+4>>2];r=+f[c+(g<<6)+(h<<3)>>2];m=+f[c+(g<<6)+(h<<3)+4>>2];h=h+1|0;i=i+((o+n)*r-(q-p)*m);j=j+(r*(q+p)+(o-n)*m)}s=H(g,d)|0;f[a+(s<<3)>>2]=i;f[a+(s<<3)+4>>2]=j;g=g+1|0}return}function Ep(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;h=j;i=b+68|0;a:do if((c[a+68>>2]|0)>=(c[i>>2]|0)?(e=b+72|0,(c[a+72>>2]|0)>=(c[e>>2]|0)):0){f=a+80|0;g=xt(c[f>>2]|0)|0;d=0;while(1){if((d|0)>=(g|0))break;if(!(c[a+(d<<2)>>2]|0)){d=-22;break a}if(!(c[b+(d<<2)>>2]|0)){d=-22;break a}else d=d+1|0}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];bx(a,a+32|0,h,b+32|0,c[f>>2]|0,c[i>>2]|0,c[e>>2]|0);d=0}else d=-22;while(0);Nb=j;return d|0}function Fp(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=10}else f=10;while(0);if((f|0)==10){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function Gp(a){a=a|0;var b=0.0,d=0,e=0,h=0;b=+f[a+68>>2];if(!(b>0.0))if((RO(c[a+20>>2]|0)|0)<3)b=1.0;else{h=(RO(c[a+16>>2]|0)|0)<3;b=h?1.0:2147483647.0}h=a+13456|0;jq(h|0,0,32768)|0;d=a+24|0;e=a+32|0;h=Qc(c[d>>2]|0,c[d+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0,+f[a+56>>2],+f[a+52>>2],+f[a+60>>2],b,+f[a+64>>2],h,64,c[a+72>>2]|0,a)|0;a:do if((h|0)>-1?(c[a+16>>2]|0)==8:0){e=0;while(1){if((e|0)==64)break a;d=0;while(1){if((d|0)==64)break;f[a+46224+(e<<8)+(d<<2)>>2]=+g[a+13456+(e<<9)+(d<<3)>>3];d=d+1|0}e=e+1|0}}while(0);return h|0}function Hp(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(H(h,g)|0)|0;o=n;n=n+4|0;k=e+(h<<3)|0;m=k;k=k+4|0;i=a+(H(h,f)|0)|0;j=i;l=c[j>>2]|0;j=c[j+4>>2]|0;k=fJ(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;k=fJ(l,j,k,M()|0)|0;j=M()|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;jq(d|0,0,10240)|0;h=c[b+76>>2]|0;g=0;while(1){if((g|0)==(h|0))break;a=8;while(1){if((a|0)==40)break;i=a+-8|0;c[d+(g*320|0)+(a<<3)>>2]=c[e+(f<<13)+(i<<8)+(g<<3)>>2];c[d+(g*320|0)+(a<<3)+4>>2]=c[e+(f<<13)+(i<<8)+(g<<3)+4>>2];a=a+1|0}g=g+1|0}f=1-f|0;h=c[b+72>>2]|0;g=0;while(1){if((g|0)==(h|0))break;a=0;while(1){if((a|0)==8)break;i=a+24|0;c[d+(g*320|0)+(a<<3)>>2]=c[e+(f<<13)+(i<<8)+(g<<3)>>2];c[d+(g*320|0)+(a<<3)+4>>2]=c[e+(f<<13)+(i<<8)+(g<<3)+4>>2];a=a+1|0}g=g+1|0}return 0}function Jp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=Nb;Nb=Nb+16|0;k=l+8|0;h=l;i=l+12|0;if((f+-16|0)>>>0<=2147483614){g=f+16|0;j=Ax(f+17|0)|0;if(!j)f=-12;else{f=0;while(1){if((f|0)>=(g|0))break;m=(Yz(d,8)|0)&255;a[j+f>>0]=m;f=f+1|0}a[j+f>>0]=0;g=j+16|0;c[h>>2]=i;d=(CN(g,170760,h)|0)==1;f=c[i>>2]|0;if(d&(f|0)>0)c[b>>2]=f;if(d&(f|0)==1?(vv(g,170775,16)|0)==0:0)c[b>>2]=67;if(wu(g)|0){c[k>>2]=g;mx(e,48,170792,k)}FV(j);f=0}}else f=-1094995529;Nb=l;return f|0}function Kp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((Yz(b,12)|0)==4095){YU(b);yO(b,2);g=NL(b)|0;h=Yz(b,2)|0;i=Yz(b,4)|0;j=c[76400+(i<<2)>>2]|0;if(j){YU(b);f=Yz(b,3)|0;YU(b);YU(b);YU(b);YU(b);e=Yz(b,13)|0;if((e|0)<7)e=-67308554;else{yO(b,11);b=Yz(b,2)|0;a[d+13>>0]=h+1;a[d+15>>0]=f;a[d+12>>0]=g;h=b+1|0;a[d+16>>0]=h;a[d+14>>0]=i;c[d>>2]=j;i=h<<10;c[d+4>>2]=i;j=((H(j<<3,e)|0)>>>0)/(i>>>0)|0;c[d+8>>2]=j}}else e=-50531338}else e=-16976906;return e|0}function Lp(){var b=0,c=0,e=0,f=0,g=0,h=0,i=0;g=0;while(1){if((g|0)==7)break;i=-1<<g;h=0;while(1){if((h|0)==256)break;c=(h&32640|0)==0;c=(c?0:8)+(d[91680+(c?h<<1:h>>>7)>>0]|0)|0;e=8-c|0;f=e+1|0;b=f+g|0;do if((b|0)>=9)if(!c){a[1075008+(g<<9)+(h<<1)>>0]=108;b=8;break}else{a[1075008+(g<<9)+(h<<1)>>0]=e+100;b=f&255;break}else{f=(h&65280|0)==0;e=(e<<g)+i+(h>>>((f?0:8)-g+(d[91680+(f?h:h>>>8)>>0]|0)|0))|0;f=e&1;a[1075008+(g<<9)+(h<<1)>>0]=((e+2|0)>>>1^0-f)+f;b=b&255}while(0);a[1075008+(g<<9)+(h<<1)+1>>0]=b;h=h+1|0}g=g+1|0}return}function Mp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;g=h;e=c[a+4>>2]|0;c[a+26988>>2]=0;f=(d|0)!=0;if(!f?(c[e+808>>2]&1|0)!=0:0)b=0;else{if(!(c[a+25672>>2]|0)){b=cd(a)|0;c[a+28232>>2]=c[a+28212>>2];c[a+28236>>2]=c[a+28208>>2]}else b=0;c[a+28244>>2]=c[a+28240>>2];c[a+28248>>2]=c[a+28228>>2]}d=c[e+704>>2]|0;if(d){b=Wb[c[d+36>>2]&31](e)|0;if((b|0)<0)mx(e,16,197681,g)}if(!f?(c[a+25672>>2]|0)==0:0)qt((c[a+24312>>2]|0)+4|0,2147483647,(c[a+26364>>2]|0)==2&1);c[a+29544>>2]=0;Nb=h;return b|0}function Np(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+c|0;e=a[b+5>>0]&31;b=b+6|0;while(1){if(!e){f=6;break}c=((yU(d[b>>0]|d[b+1>>0]<<8|0)|0)&65535)+2|0;if((c|0)>(g-b|0)){c=0;break}if((a[b+2>>0]&-97)<<24>>24!=7){c=0;break}e=e+-1|0;b=b+c|0}a:do if((f|0)==6){c=a[b>>0]|0;if(!(c<<24>>24))c=0;else{e=c&255;c=b+1|0;while(1){if(!e){c=1;break a}b=((yU(d[c>>0]|d[c+1>>0]<<8|0)|0)&65535)+2|0;if((b|0)>(g-c|0)){c=0;break a}if((a[c+2>>0]&-97)<<24>>24!=8){c=0;break a}e=e+-1|0;c=c+b|0}}}while(0);return c|0}function Op(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=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.0;m=b+8|0;n=d+16|0;o=b+12|0;p=d+24|0;q=b+16|0;r=d+32|0;h=b+4|0;i=d+56|0;j=b+20|0;k=d+88|0;l=a+4|0;f=0;while(1){if((f|0)>=(e|0))break;s=+g[(c[m>>2]|0)+(f<<3)>>3]*+g[n>>3]+ +g[(c[o>>2]|0)+(f<<3)>>3]*+g[p>>3];g[(c[a>>2]|0)+(f<<3)>>3]=s+ +g[(c[b>>2]|0)+(f<<3)>>3]*+g[d>>3]+ +g[(c[q>>2]|0)+(f<<3)>>3]*+g[r>>3];g[(c[l>>2]|0)+(f<<3)>>3]=s+ +g[(c[h>>2]|0)+(f<<3)>>3]*+g[i>>3]+ +g[(c[j>>2]|0)+(f<<3)>>3]*+g[k>>3];f=f+1|0}return}function Pp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;m=b+8|0;n=d+8|0;o=b+12|0;p=d+12|0;q=b+16|0;r=d+16|0;h=b+4|0;i=d+28|0;j=b+20|0;k=d+44|0;l=a+4|0;g=0;while(1){if((g|0)>=(e|0))break;s=+f[(c[m>>2]|0)+(g<<2)>>2]*+f[n>>2]+ +f[(c[o>>2]|0)+(g<<2)>>2]*+f[p>>2];f[(c[a>>2]|0)+(g<<2)>>2]=s+ +f[(c[b>>2]|0)+(g<<2)>>2]*+f[d>>2]+ +f[(c[q>>2]|0)+(g<<2)>>2]*+f[r>>2];f[(c[l>>2]|0)+(g<<2)>>2]=s+ +f[(c[h>>2]|0)+(g<<2)>>2]*+f[i>>2]+ +f[(c[j>>2]|0)+(g<<2)>>2]*+f[k>>2];g=g+1|0}return}function Qp(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=21328+(0-(d[b+~c>>0]|0))|0;n=b+(0-c)|0;f=n+1|0;g=n+2|0;h=n+3|0;i=n+4|0;j=n+5|0;k=n+6|0;l=n+7|0;e=0;while(1){if((e|0)==8)break;o=m+(d[b+-1>>0]|0)|0;a[b>>0]=a[o+(d[n>>0]|0)>>0]|0;a[b+1>>0]=a[o+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[o+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[o+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[o+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[o+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[o+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[o+(d[l>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function Rp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0;m=Nb;Nb=Nb+16|0;k=m;j=m+4|0;do if(!d)f=0;else{if(hz(d,205084)|0)if(!(jt(d,205089)|0))if(!(jt(d,205118)|0)){c[j>>2]=0;h=BQ(d,j,10)|0;n=d+(wu(d)|0)|0;if((n|0)==(c[j>>2]|0)){f=h;l=6}}else{f=0;l=6}else{f=1;l=6}else{f=-1;l=6}if(((l|0)==6?(i=+(f|0),!(+g[b+24>>3]>i)):0)?!(+g[b+32>>3]<i):0){c[e>>2]=f;f=0;break}c[k>>2]=d;mx(a,16,205150,k);f=-22}while(0);Nb=m;return f|0}function Sp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+80|0;h=aQ(c[f>>2]|0)|0;g=c[a+352>>2]|0;h=(h|0)==0?1:g;e=c[a+76>>2]|0;a:do if(((e|0)==(c[b+76>>2]|0)?(g|0)==(c[b+352>>2]|0):0)?(i=a+240|0,d=b+240|0,(c[i>>2]|0)==(c[d>>2]|0)?(c[i+4>>2]|0)==(c[d+4>>2]|0):0):0){d=c[a+64>>2]|0;b=b+64|0;a=0;while(1){if((a|0)>=(h|0))break;if(!(c[d+(a<<2)>>2]|0)){a=-22;break a}if(!(c[(c[b>>2]|0)+(a<<2)>>2]|0)){a=-22;break a}else a=a+1|0}Xp(d,c[b>>2]|0,0,0,e,g,c[f>>2]|0)|0;a=0}else a=-22;while(0);return a|0}function Tp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;i=j;g=j+8|0;c[g>>2]=0;do if(b){f=0;while(1){f=Yn(c[b>>2]|0,1137073,f,2)|0;if(!f){d=8;break}h=f+4|0;e=zd(a,c[f>>2]|0,c[h>>2]|0,d)|0;if((e|0)==-1414549496)e=Jf(g,c[f>>2]|0,c[h>>2]|0,0)|0;if((e|0)<0){d=7;break}}if((d|0)==7){h=c[h>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=h;mx(a,16,205247,i);HC(g);break}else if((d|0)==8){HC(b);c[b>>2]=c[g>>2];e=0;break}}else e=0;while(0);Nb=j;return e|0}function Up(b){b=b|0;var d=0;d=b+250|0;if(a[d>>0]|0){a[b+249>>0]=0;a[d>>0]=0;ma(c[b+116>>2]|0);ma(c[b+120>>2]|0);Ca(c[b+96>>2]|0)|0;d=c[b+92>>2]|0;if(d|0)TS(d);OJ(c[b+100>>2]|0)|0;OK(c[b+104>>2]|0);d=b+112|0;if(c[d>>2]|0)iQ(d);d=b+108|0;if(c[d>>2]|0)RM(d);d=b+240|0;if(c[d>>2]|0){Gx(b+160|0);nj(c[d>>2]|0)|0;c[d>>2]=0}d=b+244|0;if(!(c[d>>2]|0))b=0;else{Gx(b+200|0);nj(c[d>>2]|0)|0;c[d>>2]=0;b=0}}else b=-1;return b|0}function Vp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;h=j;g=0;while(1){if(g>>>0>=53){i=6;break}if(!(hz(c[92272+(g*12|0)>>2]|0,e)|0)){i=4;break}g=g+1|0}if((i|0)==4){f=c[92272+(g*12|0)+8>>2]|0;e=c[92272+(g*12|0)+4>>2]|0;i=10}else if((i|0)==6)if((g|0)==53){e=BQ(e,h,10)|0;f=c[h>>2]|0;if(a[f>>0]|0){f=f+1|0;c[h>>2]=f}f=BQ(f,h,10)|0;if(!(a[c[h>>2]>>0]|0))i=10;else e=-22}else e=-22;if((i|0)==10)if((e|0)<1|(f|0)<1)e=-22;else{c[b>>2]=e;c[d>>2]=f;e=0}Nb=j;return e|0}function Wp(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);j=c+4|0;a[j>>0]=(d[j>>0]|0)+(e[i+8>>1]|0);j=c+5|0;a[j>>0]=(d[j>>0]|0)+(e[i+10>>1]|0);j=c+6|0;a[j>>0]=(d[j>>0]|0)+(e[i+12>>1]|0);j=c+7|0;a[j>>0]=(d[j>>0]|0)+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Xp(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=(aQ(h)|0)!=0;j=k?g:1;i=bQ(h)|0;g=H(k?1:g,i)|0;i=H(g,f)|0;h=H(g,d)|0;g=H(g,e)|0;k=c[a>>2]|0;f=c[b>>2]|0;e=f;d=k;a:do if(((k>>>0<f>>>0?e-d|0:d-e|0)|0)<(i|0)){f=0;while(1){if((f|0)>=(j|0))break a;eF((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}else{f=0;while(1){if((f|0)>=(j|0))break a;Bk((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}while(0);return 0}function Yp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;g=i+8|0;f=i;h=TJ(c[a+48>>2]|0,b)|0;do if(h){if(c[h+16>>2]&512|0?(c[a+672>>2]|0)>-2:0){c[g>>2]=c[h>>2];mx(a,24,167550,g);e=-1163346256;break}b=c[h+56>>2]|0;if(b|0?(g=rR(b)|0,c[(c[a+64>>2]|0)+60>>2]=g,(g|0)==0):0){e=-12;break}d=a+704|0;c[d>>2]=h;b=c[h+48>>2]|0;if((b|0)!=0?(e=Wb[b&31](a)|0,(e|0)<0):0){zM((c[a+64>>2]|0)+60|0);c[d>>2]=0}else e=0}else{c[f>>2]=d;mx(a,16,167497,f);e=-2}while(0);Nb=i;return e|0}function Zp(a,b,d){a=a|0;b=+b;d=d|0;var e=0,h=0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0.0;m=Nb;Nb=Nb+8208|0;e=m+8192|0;l=m;k=b*3.141592653589793/+(d|0);k=k*k;if((d|0)>=1025){c[e>>2]=200906;c[e+4>>2]=200916;c[e+8>>2]=33;mx(0,0,214689,e);ba()}e=0;i=0.0;while(1){if((e|0)>=(d|0))break;j=k*+(H(d-e|0,e)|0);h=50;b=1.0;while(1){if(!h)break;n=j*b/+(H(h,h)|0)+1.0;h=h+-1|0;b=n}n=i+b;g[l+(e<<3)>>3]=n;e=e+1|0;i=n}b=i+1.0;e=0;while(1){if((e|0)>=(d|0))break;n=+v(+(+g[l+(e<<3)>>3]/b));f[a+(e<<2)>>2]=n;e=e+1|0}Nb=m;return}function _p(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=d+4|0;zM(d);c[j>>2]=0;do if((b|0)!=0?(e=wu(b)|0,(e|0)!=0):0)if(!(e&1)){h=(e|0)/2|0;i=Ax(h)|0;if(i){g=i;while(1){e=a[b>>0]|0;if(!(e<<24>>24)){b=10;break}e=HM(e)|0;f=HM(a[b+1>>0]|0)|0;if((f|e|0)<0){b=8;break}a[g>>0]=f|e<<4;b=b+2|0;g=g+1|0}if((b|0)==8){FV(i);e=-22;break}else if((b|0)==10){c[d>>2]=i;c[j>>2]=h;e=0;break}}else e=-12}else e=-22;else e=0;while(0);return e|0}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+44|0;j=c[i>>2]|0;h=a+40|0;a=0;while(1){if((a|0)>=(j|0)){g=6;break}f=c[h>>2]|0;if((c[f+(a*12|0)+8>>2]|0)==(b|0)){g=4;break}a=a+1|0}if((g|0)==4){j=f+(a*12|0)|0;FV(c[j>>2]|0);c[j>>2]=d;c[f+(a*12|0)+4>>2]=e;a=0}else if((g|0)==6){a=j+1|0;if(a>>>0<=83){a=eP(c[h>>2]|0,a*12|0)|0;if(!a)a=-12;else{c[h>>2]=a;c[a+(j*12|0)>>2]=d;c[a+(j*12|0)+4>>2]=e;c[a+(j*12|0)+8>>2]=b;c[i>>2]=(c[i>>2]|0)+1;a=0}}else a=-34}return a|0}function aq(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0.0,l=0,m=0.0,n=0,o=0;h=0;while(1){if((h|0)>=(g|0))break;n=h+g|0;i=g-h+-1|0;j=c[e+(n<<2)>>2]|0;l=c[e+(i<<2)>>2]|0;k=+f[b+(l<<3)+4>>2];m=+f[d+(i<<3)+4>>2];l=b+(l<<3)|0;o=d+(i<<3)|0;f[a+(i<<3)>>2]=k*m-+f[l>>2]*+f[o>>2];f[a+(n<<3)+4>>2]=k*+f[o>>2]+m*+f[l>>2];m=+f[b+(j<<3)+4>>2];k=+f[d+(n<<3)+4>>2];j=b+(j<<3)|0;l=d+(n<<3)|0;f[a+(n<<3)>>2]=m*k-+f[j>>2]*+f[l>>2];f[a+(i<<3)+4>>2]=m*+f[l>>2]+k*+f[j>>2];h=h+1|0}return}function bq(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[1079616+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[1079616+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function cq(a,b){a=a|0;b=b|0;var d=0;a:do switch(b|0){case 0:break;case 1:{if(!(c[a>>2]|0)){b=Ax(28)|0;if(!b){b=-12;break a}d=RU(b,0)|0;if(d|0){FV(b);b=0-d|0;break a}if(lP(a,0,b)|0){JV(b)|0;FV(b)}}a=JV(c[a>>2]|0)|0;return ((a|0)==0?0:0-a|0)|0}case 2:{b=JV(c[a>>2]|0)|0;b=(b|0)==0?0:0-b|0;break}case 3:{if(c[a>>2]|0)JV(c[a>>2]|0)|0;FV(c[a>>2]|0);lP(a,c[a>>2]|0,0)|0;b=0;break}default:b=1}while(0);return b|0}function dq(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=1<<c[a>>2];h=a+8|0;e=a+4|0;f=g+-1|0;d=0;while(1){if((d|0)>=(g|0))break;a:do if(!(tF(d,g)|0)){a=0;while(1){if((a|0)==16)break a;j=a+d|0;i=c[h>>2]|0;i=i+((f&0-(Mx(j,g,c[e>>2]|0)|0))<<1)|0;b[i>>1]=j>>>1&3|j&65528|j<<2&4;a=a+1|0}}else{a=0;while(1){if((a|0)==16)break a;i=(c[80368+(a<<2)>>2]|0)+d&65535;j=c[h>>2]|0;j=j+((f&0-(Mx(a+d|0,g,c[e>>2]|0)|0))<<1)|0;b[j>>1]=i;a=a+1|0}}while(0);d=d+16|0}return}function eq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<16384?l:(l^-2147483648)>>31&16383;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function fq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);i=f+8|0;b[i>>1]=(c[g+16>>2]|0)+(e[i>>1]|0);i=f+10|0;b[i>>1]=(c[g+20>>2]|0)+(e[i>>1]|0);i=f+12|0;b[i>>1]=(c[g+24>>2]|0)+(e[i>>1]|0);i=f+14|0;b[i>>1]=(c[g+28>>2]|0)+(e[i>>1]|0);g=g+32|0;f=f+(h<<1)|0;a=a+1|0}jq(d|0,0,256)|0;return}function gq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0;g=(Yz(b,2)|0)+1|0;c[a>>2]=g;g=Yz(b,6)|0;a:do if((g|0)<(f|0)?(h=a+8|0,c[h>>2]=e[d+(g<<1)>>1],g=Yz(b,5)|0,g=(c[h>>2]|0)+g|0,c[h>>2]=g,h=d+(f<<1)|0,(g|0)<(e[h>>1]|0|0)):0){d=Yz(b,4)|0;c[a+24>>2]=d;d=1;while(1){if((d|0)>=(c[a>>2]|0)){d=0;break a}g=Yz(b,5)|0;g=(c[a+8+(d+-1<<2)>>2]|0)+g|0;c[a+8+(d<<2)>>2]=g;if((g|0)>=(e[h>>1]|0|0)){d=-1;break a}g=Yz(b,4)|0;c[a+24+(d<<2)>>2]=g;d=d+1|0}}else d=-1;while(0);return d|0}function hq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<4096?l:(l^-2147483648)>>31&4095;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function iq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<1024?l:(l^-2147483648)>>31&1023;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function jq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;i=d|d<<8|d<<16|d<<24;g=f-64|0;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function kq(a,b){a=a|0;b=b|0;var d=0,e=0;d=Cn(a,b)|0;do if((d|0)>=0){d=c[b>>2]|0;if(!d){e=b+28|0;d=eE(a,c[e>>2]|0)|0;if((d|0)<0)e=10;else{d=c[e>>2]|0;if(d|0)Bk(c[(c[a>>2]|0)+4>>2]|0,c[b+24>>2]|0,d|0)|0;c[a+24>>2]=c[(c[a>>2]|0)+4>>2];d=e;e=9}}else{e=rI(d)|0;c[a>>2]=e;if(!e){d=-12;e=10}else{c[a+24>>2]=c[b+24>>2];d=b+28|0;e=9}}if((e|0)==9){c[a+28>>2]=c[d>>2];d=0;break}else if((e|0)==10){oJ(a);break}}while(0);return d|0}function lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=c[a+28588>>2]|0;c[a+24312>>2]=0;c[a+26368>>2]=0;h=0;f=1;while(1){g=c[a+28588+(f<<2)>>2]|0;if(!g)break;if(c[(c[g>>2]|0)+84>>2]|0)break;if(c[g+92>>2]|0)break;k=(c[g+84>>2]|0)<(c[i+84>>2]|0);i=k?g:i;h=k?f:h;f=f+1|0}g=h;f=c[a+28588+(h<<2)>>2]|0;while(1){if(!f)break;k=g+1|0;f=c[a+28588+(k<<2)>>2]|0;c[a+28588+(g<<2)>>2]=f;g=k}if((i|0)!=0?(j=i+640|0,c[j>>2]=c[j>>2]&-5,j=Xm(a,b,i,d)|0,(j|0)<0):0)e=j;return e|0}function mq(c,d){c=c|0;d=d|0;var e=0;e=(Yz(d,8)|0)&255;a[c>>0]=e;switch(e<<24>>24){case 0:{e=(Yz(d,8)|0)&255;a[c+1>>0]=e;switch(e<<24>>24){case 2:{e=(Yz(d,16)|0)&65535;b[c+2>>1]=e;break}case 3:{e=(Yz(d,16)|0)&65535;b[c+4>>1]=e;break}default:{}}e=(Yz(d,8)|0)&255;a[c+6>>0]=e;e=(Yz(d,8)|0)&255;a[c+7>>0]=e;e=(Yz(d,8)|0)&255;a[c+8>>0]=e;e=(Yz(d,8)|0)&255;a[c+9>>0]=e;break}case 1:{e=(Yz(d,8)|0)&255;a[c+10>>0]=e;e=(Yz(d,16)|0)&65535;b[c+12>>1]=e;break}default:{}}return}function nq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<512?l:(l^-2147483648)>>31&511;a=H((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function oq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=g>>>0)break;i=c[b>>2]|0;h=a;c[h>>2]=0;c[h+4>>2]=i;h=b+d|0;i=a+e|0;k=c[h>>2]|0;j=i;c[j>>2]=0;c[j+4>>2]=k;h=h+d|0;i=i+e|0;j=c[h>>2]|0;k=i;c[k>>2]=0;c[k+4>>2]=j;h=h+d|0;i=i+e|0;k=c[h>>2]|0;j=i;c[j>>2]=0;c[j+4>>2]=k;a=i+e|0;b=h+d|0}while(1){if(a>>>0>=f>>>0)break;j=c[b>>2]|0;k=a;c[k>>2]=0;c[k+4>>2]=j;a=a+e|0;b=b+d|0}return}function pq(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d<<24>>24;a:while(1){if(!b){b=0;break}if(!(a[b>>0]|0)){b=0;break}h=c;while(1){if(!h)break;e=a[h>>0]|0;if(!(e<<24>>24))break;g=0;while(1){f=a[b+g>>0]|0;j=f<<24>>24;k=e<<24>>24;if(f<<24>>24!=e<<24>>24?!((H(k,j)|0)==0&(k+j|0)==(i|0)):0)break;if(g|0?(f<<24>>24==0?1:f<<24>>24==d<<24>>24):0){b=1;break a}e=g+1|0;g=e;e=a[h+e>>0]|0}k=vQ(h,i)|0;h=k+((k|0)!=0&1)|0}k=vQ(b,i)|0;b=k+((k|0)!=0&1)|0}return b|0}function qq(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;j=0;while(1){if((j|0)>=(i|0))break;m=H(j,g)|0;k=b+m|0;l=H(j,h)|0;n=e+l|0;n=IT(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24)|0;k=H(j,f)|0;c[a+k>>2]=n;m=b+(m+4)|0;l=e+(l+4)|0;l=IT(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;c[a+(k+4)>>2]=l;j=j+1|0}return}function rq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,n=0.0;k=(c|0)==0&1;g=0;while(1){if((g|0)==32)break;i=+f[a+48>>2];j=+f[a+52>>2];d=0.0;e=0.0;h=0;while(1){if(h>>>0>=6)break;m=h|1;n=+f[77392+(m<<2)>>2];l=12-h+-1|0;d=d+n*(+f[a+(m<<3)+4>>2]+ +f[a+(l<<3)+4>>2]);e=e+n*(+f[a+(m<<3)>>2]+ +f[a+(l<<3)>>2]);h=h+2|0}i=i*.5;n=j*.5;f[b+(c<<8)+(g<<3)>>2]=i+e;f[b+(c<<8)+(g<<3)+4>>2]=n+d;f[b+(k<<8)+(g<<3)>>2]=i-e;f[b+(k<<8)+(g<<3)+4>>2]=n-d;a=a+8|0;g=g+1|0}return}function sq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=Nb;Nb=Nb+16|0;g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(IS(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[91680+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){mx(0,16,200847,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[72704+a>>0]|0);a=d[73216+a>>0]|0}while(0);Nb=h;return a|0}function tq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(d=c[a>>2]|0,d|0):0){e=(c[d+4>>2]|0)+(((c[d+116>>2]|0)==0)<<31>>31)|0;c[d+104>>2]=1;b=0;while(1){if((b|0)>=(e|0))break;g=c[d>>2]|0;f=g+(b*88|0)+4|0;JV(f)|0;c[g+(b*88|0)+84>>2]=0;yb(g+(b*88|0)+32|0)|0;JV(f)|0;b=b+1|0}b=0;while(1){if((b|0)>=(e|0))break;g=c[d>>2]|0;Bb(c[g+(b*88|0)+80>>2]|0,0)|0;wb(g+(b*88|0)+32|0)|0;JV(g+(b*88|0)+4|0)|0;b=b+1|0}wb(d+52|0)|0;JV(d+24|0)|0;zM(d);zM(a)}return}function uq(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+272|0;i=k;h=k+256|0;j=i+128|0;c[a+4312>>2]=0;ic[c[a+2964>>2]&255](i,d,e,f);g=j;d=i;e=g+128|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(e|0));g=a+1920|0;d=$b[c[a+6248>>2]&63](a,i,0,c[g>>2]|0,h)|0;c[a+16>>2]=d;ic[c[a+6240>>2]&255](a,i,0,c[g>>2]|0);sJ(i);g=0;d=0;while(1){if((d|0)==64)break;a=(b[i+(d<<1)>>1]|0)-(b[j+(d<<1)>>1]|0)|0;g=(H(a,a)|0)+g|0;d=d+1|0}Nb=k;return g|0}function vq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;d=a+27e3|0;g=c[d>>2]|0;f=c[a+26992>>2]|0;e=(H(f+1|0,g)|0)+1|0;h=H(f<<4,c[a+26996>>2]<<2|1)|0;i=DJ(e+g|0,22)|0;b=a+29904|0;c[b>>2]=i;e=DJ((c[d>>2]|0)+e<<2,22)|0;d=a+29908|0;c[d>>2]=e;h=DJ(h+16|0,22)|0;e=a+29912|0;c[e>>2]=h;f=DJ(H(g<<2,f)|0,22)|0;a=a+29916|0;c[a>>2]=f;if(((c[b>>2]|0)!=0?(c[d>>2]|0)!=0:0)?!((f|0)==0|(c[e>>2]|0)==0):0)a=0;else{gM(b);gM(d);gM(e);gM(a);a=-12}return a|0}function wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=Nb;Nb=Nb+288|0;l=m+264|0;k=m+256|0;h=m;i=m+276|0;j=m+272|0;if((e|0)>=69){Yz(d,13)|0;g=0;e=e+-13|0;while(1){f=g+1|0;if(!((e|0)>7&f>>>0<256))break;n=(Yz(d,8)|0)&255;a[h+g>>0]=n;g=f;e=e+-8|0}a[h+g>>0]=0;f=b+4|0;g=c[f>>2]|0;if(c[g+680>>2]&1|0){c[k>>2]=h;mx(g,48,187976,k)}c[l>>2]=i;c[l+4>>2]=j;if((CN(h,187985,l)|0)==2)c[(c[(c[f>>2]|0)+64>>2]|0)+56>>2]=1024}JK(d,e);Nb=m;return}function xq(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function yq(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function zq(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function Aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if((c|0)<7)c=-1094995529;else{if((Yz(b,8)|0)==255){yO(b,8);c=c+-8|0}else c=c+-7|0;yO(b,8);yO(b,8);d=hH(b,32)|0;b:do if((d|0)<1195456820){switch(d|0){case 1146373937:break;default:break b}c=Hx(a+20|0,b,c)|0;break a}else{switch(d|0){case 1195456820:break;default:break b}c=Ik(a+28|0,b,c)|0;break a}while(0);yO(b,c<<3);c=0}while(0);return c|0}function Bq(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function Cq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+32|0;g=h+16|0;f=h+8|0;e=h;do if((c[b+112>>2]&1|0)==0?(c[b+76>>2]|0)!=0:0){if(8?cq(1136352,1)|0:0){d=-1;break}if((RR(1)|0)==1)if(!(c[284085]|0)){c[284085]=1;d=0;break}else{c[g>>2]=185472;c[g+4>>2]=185289;c[g+8>>2]=2016;mx(0,0,214689,g);ba()}else{c[e>>2]=c[284089];mx(a,16,185308,e);if(!8)mx(a,16,185414,f);c[284085]=1;Ev(b)|0;d=-22;break}}else d=0;while(0);Nb=h;return d|0}function Dq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=(a[f+12>>0]|0)!=0;g=(a[f+13>>0]|0)!=0;h=f+4|0;if((c[h>>2]|0)==3){jq(e|0,0,1792)|0;f=b+5404|0;j=e+1792|0;ic[c[c[f>>2]>>2]&255](j,j,g?290080:215360,128)}else{f=b+5404|0;ic[c[c[f>>2]>>2]&255](e,e,g?285984:218944,1024)}f=c[(c[f>>2]|0)+28>>2]|0;g=e+4096|0;if((c[h>>2]|0)==1){j=e+5888|0;ic[f&255](j,j,i?290080:215360,128);jq(e+6400|0,0,1792)|0}else ic[f&255](g,g,i?285984:218944,1024);hc[c[b+5372>>2]&1023](b+5324|0,d,e);return}function Eq(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;j=c[e+(f<<2)>>2]|0;i=((j|0)<0)<<31>>31;e=c[e+(g<<2)>>2]|0;g=((e|0)<0)<<31>>31;f=0;while(1){if((f|0)>=(h|0))break;n=c[b+(f<<2)>>2]|0;n=oK(n|0,((n|0)<0)<<31>>31|0,j|0,i|0)|0;m=M()|0;l=c[d+(f<<2)>>2]|0;l=oK(l|0,((l|0)<0)<<31>>31|0,e|0,g|0)|0;k=M()|0;m=kP(n|0,m|0,16384,0)|0;k=kP(m|0,M()|0,l|0,k|0)|0;k=GN(k|0,M()|0,15)|0;M()|0;c[a+(f<<2)>>2]=k;f=f+1|0}return}function Fq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;d=c[a+8>>2]|0;f=c[a+64>>2]|0;h=1<<c[a>>2];g=a+12|0;a:do if(!d){a=0;while(1){if((a|0)>=(h|0))break a;j=b+(a<<3)|0;i=c[j+4>>2]|0;d=(c[g>>2]|0)+(c[f+(a<<2)>>2]<<3)|0;c[d>>2]=c[j>>2];c[d+4>>2]=i;a=a+1|0}}else{a=0;while(1){if((a|0)>=(h|0))break a;f=b+(a<<3)|0;i=c[f+4>>2]|0;j=(c[g>>2]|0)+((e[d+(a<<1)>>1]|0)<<3)|0;c[j>>2]=c[f>>2];c[j+4>>2]=i;a=a+1|0}}while(0);Bk(b|0,c[g>>2]|0,h<<3|0)|0;return}function Gq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+16|0;i=k;h=c[a+64>>2]|0;g=h+36|0;h=h+32|0;e=(c[g>>2]|0)+-1|0;while(1){if((e|0)<=-1){d=-11;break}d=sQ(c[(c[h>>2]|0)+(e<<2)>>2]|0,b)|0;if((d|0)!=-11){f=(d|0)<0;if(f&(d|0)!=-541478725)break;if((e|0)==((c[g>>2]|0)+-1|0))break;e=e+1|0;d=nt(c[(c[h>>2]|0)+(e<<2)>>2]|0,f?0:b)|0;if((d|0)<0){j=9;break}else d=e}else d=e+-1|0;e=d}if((j|0)==9){mx(a,16,166446,i);AP(b)}Nb=k;return d|0}function Hq(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(IS(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[72704+b>>0]|0);b=a[73728+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[91680+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(IS(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function Iq(a){a=a|0;var b=0,d=0;b=a+64|0;if((c[b>>2]|0)!=(a|0))zM(b);jq(a|0,0,400)|0;d=a+120|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+104|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+112|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+320|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+336|0;c[d>>2]=0;c[d+4>>2]=0;d=a+328|0;c[d>>2]=-1;c[d+4>>2]=-1;c[a+356>>2]=-1;c[a+84>>2]=1;c[a+92>>2]=0;c[a+96>>2]=1;c[a+80>>2]=-1;c[b>>2]=a;c[a+304>>2]=2;c[a+308>>2]=2;c[a+312>>2]=2;c[a+300>>2]=0;c[a+316>>2]=0;c[a+296>>2]=0;return}function Jq(a){a=a|0;var b=0,d=0;b=a+64|0;d=c[b>>2]|0;c[d+64>>2]=0;c[d+80>>2]=0;c[d+112>>2]=0;rv(c[d+76>>2]|0);rv(c[(c[b>>2]|0)+100>>2]|0);AP(c[(c[b>>2]|0)+68>>2]|0);d=c[b>>2]|0;c[d+72>>2]=0;AP(c[d+24>>2]|0);if(!(c[a+808>>2]&1)){d=c[(c[a+12>>2]|0)+108>>2]|0;if(d|0)ec[d&31](a)}else lp(a);d=a+928|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+920|0;c[d>>2]=0;c[d+4>>2]=-2147483648;BI(a);if(!(c[a+476>>2]|0))rv(c[(c[b>>2]|0)+12>>2]|0);return}function Kq(a){a=a|0;a:do switch(c[a+8>>2]|0){case 0:switch(c[a+12>>2]|0){case 0:{a=(c[a+20>>2]|0)==2?170885:170901;break a}case 1:{a=(c[a+20>>2]|0)==2?170917:170936;break a}case 2:{a=(c[a+20>>2]|0)==2?170955:170974;break a}case 3:{a=(c[a+20>>2]|0)==2?170993:171004;break a}case 4:{a=(c[a+20>>2]|0)==2?171015:171026;break a}case 5:{a=(c[a+20>>2]|0)==2?171037:171046;break a}default:{a=202e3;break a}}case 1:{a=202e3;break}default:a=0}while(0);return a|0}function Lq(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=vQ(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=Mv(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=Pv(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=lv(b,c)|0;break}else{b=pe(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+32904+b|0;if(!d){b=a+32856|0;if(!(Vu(b,f)|0))b=0;else{e=b;g=4}}else{b=(c[a+21740>>2]&6|0)!=0;e=a+32856|0;if(!(Vu(e,f+((c[a+21732>>2]&6|0)==0?b&1:b?2:1)|0)|0))b=0;else{f=f+2|0;g=4}}if((g|0)==4)if(!(xI(e)|0)){b=(Vu(e,f+1|0)|0)*12|1;if(Vu(e,f+2|0)|0)b=b+4+((Vu(e,f+(d+2)|0)|0)<<2)|0;b=((Vu(e,f+(d+3)|0)|0)<<1)+b|0;b=b+(Vu(e,f+((d<<1)+3)|0)|0)|0}else b=25;return b|0}function Nq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;f=e<<1;j=d[b+(f+-1)>>0]|0;g=e*3|0;h=d[b+(g+-1)>>0]|0;a[b>>0]=((d[b+(e+-1)>>0]|0)+(d[b+(1-e)>>0]|0)|0)>>>1;i=(j+i|0)>>>1&255;a[b+e>>0]=i;a[b+1>>0]=i;c=(h+c|0)>>>1&255;a[b+(g+3)>>0]=c;a[b+(g+2)>>0]=c;a[b+(f+3)>>0]=c;a[b+(g+1)>>0]=c;a[b+(f+2)>>0]=c;a[b+(e+3)>>0]=c;a[b+g>>0]=c;a[b+(f|1)>>0]=c;a[b+(e+2)>>0]=c;a[b+3>>0]=c;a[b+f>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;return}function Oq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((H(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Pq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;g=h;f=c[(c[a+64>>2]|0)+20>>2]|0;if(c[a+808>>2]&1|0){e=a+704|0;b=c[e>>2]|0;do if(b|0){d=f+336|0;if(!(c[d>>2]|0)){JV((c[f>>2]|0)+36|0)|0;c[d>>2]=1;b=c[e>>2]|0;if(!b)break}if(!(c[b+60>>2]&1)){c[f+340>>2]=1;IJ(c[f>>2]|0)}}while(0);b=f+184|0;JV(b)|0;d=f+300|0;if((c[d>>2]|0)==4)mx(a,24,184831,g);c[d>>2]=4;JV(f+60|0)|0;JV(b)|0}Nb=h;return}function Qq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+32|0;h=i;d=i+12|0;e=i+16|0;f=i+8|0;c[d>>2]=b;b=Sa(a|0)|0;if(!b){jJ(164117)|0;b=0}else{hb(b|0,1,d|0,0);c[e>>2]=0;Qa(b|0);db(b|0,35713,e|0);if(!(c[e>>2]|0)){c[f>>2]=0;db(b|0,35716,f|0);d=c[f>>2]|0;if((d|0)>0?(g=xc(d)|0,g|0):0){cb(b|0,d|0,0,g|0);c[h>>2]=(a|0)==35633?164132:164139;c[h+4>>2]=g;EN(164148,h)|0;qd(g)}Ua(b|0);b=0}}Nb=i;return b|0}function Rq(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=0;while(1){if((g|0)==2)break;j=c+1|0;i=c+-1|0;k=c+2|0;l=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;h=c+3|0;l=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+l+(d[h>>0]|0)>>5;a[b>>0]=l>>>0>255?(l^-2147483648)>>31:l;h=H((d[h>>0]|0)+(d[c>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+4>>0]|0)>>5;a[b+1>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function Sq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;d=h;f=c[(c[a+64>>2]|0)+20>>2]|0;do if(((c[a+808>>2]&1|0)!=0?(c[a+812>>2]|0)==0:0)?(c[a+156>>2]|0)!=7:0){e=f+300|0;if((c[e>>2]|0)!=1){mx(a,16,185018,d);a=-1;break}d=f+184|0;JV(d)|0;c[f+324>>2]=b;c[e>>2]=3;a=f+60|0;JV(a|0)|0;while(1){if((c[e>>2]|0)==1)break;zb(a|0,d|0)|0}a=c[f+328>>2]|0;JV(d)|0}else g=4;while(0);if((g|0)==4)a=Oh(a,b)|0;Nb=h;return a|0}function Tq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;e=h;f=ey(a)|0;g=f+1|0;if(g>>>0>32){c[e>>2]=g;mx(b,16,170229,e);b=-1094995529}else{Yz(a,4)|0;Yz(a,4)|0;b=0;while(1){if((b|0)>(f|0))break;aG(a);aG(a);NL(a)|0;b=b+1|0}b=(Yz(a,5)|0)+1|0;c[d+1172>>2]=b;b=(Yz(a,5)|0)+1|0;c[d+1176>>2]=b;b=(Yz(a,5)|0)+1|0;c[d+1180>>2]=b;b=Yz(a,5)|0;c[d+1164>>2]=b;c[d+1168>>2]=g;b=0}Nb=h;return b|0}function Uq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<6;j=f<<6;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function Vq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<4;j=f<<4;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function Wq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<2;j=f<<2;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function Xq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<1;j=f<<1;k=0-n|0;l=H(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function Yq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=a+26364|0;f=(c[g>>2]|0)!=3&1;k=c[b+21792>>2]>>f<<4;f=c[a+26992>>2]<<4>>f;i=c[a+26360>>2]|0;h=16<<i;i=20<<i;j=(c[b+868>>2]|0)==0;h=(j|(k+h|0)<(f|0)?0:i)+h|0;i=k-(j?0:i)|0;if((!((f|0)<=(i|0)|(h+i|0)<0)?(e=f-i|0,d=(i|0)<0,e=((h|0)>(e|0)?e:h)+(d?i:0)|0,d=d?0:i,Yo(a,b,d,e),(c[a+25672>>2]|0)==0):0)?(c[(c[(c[b>>2]|0)+25628>>2]|0)+600>>2]|0)==0:0)qt((c[a+24312>>2]|0)+4|0,d+-1+e|0,(c[g>>2]|0)==2&1);return}function Zq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=0;a:while(1){if(g>>>0>=256){d=0;break}switch(b|0){case 22:{d=(g&3)*85|0;e=(g>>>2&7)*36|0;f=(g>>>5)*36|0;break}case 19:{d=(g>>>6)*85|0;e=(g>>>3&7)*36|0;f=(g&7)*36|0;break}case 24:{d=0-(g&1)&255;e=(g>>>1&3)*85|0;f=(g>>>3)*255|0;break}case 21:{d=(g>>>3)*255|0;e=(g>>>1&3)*85|0;f=0-(g&1)&255;break}case 8:{d=g;e=g;f=g;break}default:{d=-22;break a}}c[a+(g<<2)>>2]=(f<<16)+-16777216+(e<<8)+d;g=g+1|0}return d|0}function _q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a>>2]|0;g=c[b+4>>2]|0;h=oK(g|0,((g|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;d=M()|0;e=c[b>>2]|0;b=c[a+4>>2]|0;a=oK(b|0,((b|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;a=iP(h|0,d|0,a|0,M()|0)|0;d=M()|0;if((a|0)==0&(d|0)==0)if((g|0)==0|(b|0)==0)if(!f)b=-2147483648;else return ((e|0)==0?-2147483648:(f>>31)-(e>>31)|0)|0;else b=0;else{b=b^g;b=YM(a^b|0,d^((b|0)<0)<<31>>31|0,63)|0;M()|0;b=b|1}return b|0}function $q(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+32|0;j=k+8|0;i=k;h=a+4|0;c[j>>2]=a;c[j+4>>2]=h;c[j+8>>2]=k+20;do if((CN(b,205285,j)|0)!=2){b=Vs(j,b,0,0,0,0,0,0,0,e,f)|0;if((b|0)<0)break;else{Pl(i,+g[j>>3],d);j=c[i+4>>2]|0;b=a;c[b>>2]=c[i>>2];c[b+4>>2]=j;b=0;break}}else{j=c[a>>2]|0;b=c[h>>2]|0;Mf(a,h,j,((j|0)<0)<<31>>31,b,((b|0)<0)<<31>>31,d,((d|0)<0)<<31>>31)|0;b=0}while(0);Nb=k;return b|0}function ar(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;j=j+(e[i+6>>1]|0)|0;a[c+3>>0]=j;j=j+(e[i+8>>1]|0)|0;a[c+4>>0]=j;j=j+(e[i+10>>1]|0)|0;a[c+5>>0]=j;j=j+(e[i+12>>1]|0)|0;a[c+6>>0]=j;a[c+7>>0]=j+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function br(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;g=a+((H(d,h)|0)+-1<<1)|0;b=b+(e[g>>1]|0)|0;d=d+1|0}d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=oK((b+16|0)>>>5|0,0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function cr(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;h=h|0;var i=0.0,j=0.0,k=0.0,l=0,m=0;k=+f[d>>2]*e*e;i=+f[d+4>>2]*e*e;j=+f[c>>2]*e;e=+f[c+4>>2]*e;while(1){if((g|0)>=(h|0))break;m=g+-2|0;l=b+(m<<3)|0;m=b+(m<<3)+4|0;d=g+-1|0;c=b+(d<<3)|0;d=b+(d<<3)+4|0;f[a+(g<<3)>>2]=+f[b+(g<<3)>>2]+(k*+f[l>>2]-i*+f[m>>2]+j*+f[c>>2]-e*+f[d>>2]);f[a+(g<<3)+4>>2]=+f[b+(g<<3)+4>>2]+(k*+f[m>>2]+i*+f[l>>2]+j*+f[d>>2]+e*+f[c>>2]);g=g+1|0}return}function dr(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;i=b+(H(h,g)|0)|0;l=i;i=i+4|0;k=e+(h<<3)|0;j=k;k=k+4|0;k=fJ(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;j=M()|0;i=a+(H(h,f)|0)|0;c[i>>2]=k;c[i+4>>2]=j;h=h+1|0}return}function er(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=Nb;Nb=Nb+16|0;f=h;g=b+8|0;k=g;k=uN(c[k>>2]|0,c[k+4>>2]|0,3)|0;k=gQ(k,M()|0)|0;j=M()|0;i=f;c[i>>2]=k;c[i+4>>2]=j;Ju(b,209561,1);while(1){if(0==0?(c[g>>2]&63|0)==56:0)break;Ju(b,1137073,1)}Ju(b,f,8);f=0;while(1){if(f>>>0>=(d[b>>0]|0)>>>0)break;j=IS(c[b+80+(f<<2)>>2]|0)|0;k=e+(f<<2)|0;a[k>>0]=j;a[k+1>>0]=j>>8;a[k+2>>0]=j>>16;a[k+3>>0]=j>>24;f=f+1|0}Nb=h;return}function fr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=Nb;Nb=Nb+16|0;e=f;b=c[a+48>>2]|0;if(!b)b=Wb[c[a+44>>2]&31](c[a+36>>2]|0)|0;else b=Yb[b&15](c[a+40>>2]|0,c[a+36>>2]|0)|0;c[e>>2]=b;do if(b){d=rR(20)|0;if(!d){nT(e);b=0;break}else{e=c[b>>2]|0;c[d>>2]=c[e>>2];g=e+16|0;c[d+4>>2]=c[g>>2];e=e+12|0;c[d+8>>2]=c[e>>2];c[d+12>>2]=a;c[g>>2]=d;c[e>>2]=195;break}}else b=0;while(0);Nb=f;return b|0}function gr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+160|0;g=j+144|0;i=j;Bk(i|0,160416,144)|0;if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;h=4}else{d=PV()|0;c[d>>2]=75;d=-1}else h=4;if((h|0)==4){h=-2-b|0;h=d>>>0>h>>>0?h:d;c[i+48>>2]=h;g=i+20|0;c[g>>2]=b;c[i+44>>2]=b;d=b+h|0;b=i+16|0;c[b>>2]=d;c[i+28>>2]=d;d=eT(i,e,f)|0;if(h){i=c[g>>2]|0;a[i+(((i|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}Nb=j;return d|0}function hr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(NL(e)|0)yO(e,4);g=d+96|0;a:do if(!(yd(b,d,e,g)|0)){ty(e,g);hw(d,e,g);f=fd(b,d,e,g,0)|0;if((f|0)>=0){f=ze(b,d,e,g,0)|0;if((f|0)>=0){g=NL(e)|0;c[d+100>>2]=g;if(!g)f=0;else{b=c[d+310116>>2]|0;f=0;while(1){if((f|0)>=(b|0)){f=0;break a}g=(NL(e)|0)&255;a[d+137+f>>0]=g;f=f+1|0}}}}}else f=-1;while(0);return f|0}function ir(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+8|0;d=c[f>>2]|0;e=c[a+12>>2]|0;if((d|0)!=(e|0))if(GS(a)|0){g=a+4|0;i=c[g>>2]|0;h=-2-i|0;b=i+1+(h>>>0>b>>>0?b:h)|0;d=d>>>0>e>>>1>>>0?e:d<<1;e=d>>>0<b>>>0?(e>>>0>b>>>0?b:e):d;d=c[a>>2]|0;d=(d|0)==(a+16|0)?0:d;b=eP(d,e)|0;if(!b)b=-12;else{if(!d)Bk(b|0,c[a>>2]|0,(c[g>>2]|0)+1|0)|0;c[a>>2]=b;c[f>>2]=e;b=0}}else b=-1094995529;else b=-5;return b|0}function jr(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function kr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((yT(a)|0)<(d|0)){e=SU(a)|0;if((1073741823-e|0)>=(d|0)){e=xu(a,e+d<<1)|0;if((e|0)>-1)f=4}else e=-22}else f=4;a:do if((f|0)==4){f=H(c[a+24>>2]|0,d)|0;g=a+4|0;e=0;while(1){if((e|0)>=(c[g>>2]|0))break;if((xr(c[(c[a>>2]|0)+(e<<2)>>2]|0,c[b+(e<<2)>>2]|0,f,0)|0)==(f|0))e=e+1|0;else{e=-558323010;break a}}e=a+8|0;c[e>>2]=(c[e>>2]|0)+d;e=d}while(0);return e|0}function lr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;i=j;h=d&255;a:while(1){g=f+-1|0;if(!f){f=8;break}switch(d|0){case 2:case 3:case 1:{f=NL(e)|0;break}case 5:{YU(e);f=2;break}case 4:{f=3;break}default:{f=6;break a}}a[b>>0]=f;f=(Yz(e,4)|0)&255;a[b+1>>0]=f;a[b+2>>0]=h;f=g;b=b+3|0}if((f|0)==6){c[i>>2]=214810;c[i+4>>2]=188212;c[i+8>>2]=713;mx(0,0,214689,i);ba()}else if((f|0)==8){Nb=j;return}}function mr(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=Nb;Nb=Nb+32|0;i=j+16|0;h=j;a:do if((a|0)!=0&(d|0)!=0){if((((e|0)>-1?e:0-e|0)|0)<(f|0)){c[h>>2]=203677;c[h+4>>2]=203708;c[h+8>>2]=313;mx(0,0,214689,h);ba()}if((((b|0)>-1?b:0-b|0)|0)<(f|0)){c[i>>2]=203729;c[i+4>>2]=203708;c[i+8>>2]=314;mx(0,0,214689,i);ba()}while(1){if((g|0)<=0)break a;Bk(a|0,d|0,f|0)|0;g=g+-1|0;a=a+b|0;d=d+e|0}}while(0);Nb=j;return}function nr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[a>>2]|0;d=((b|0)>-1?b:0-b|0)+63&-32;f=a+27788|0;g=a+27804|0;kT(f,g,d*96|0);b=a+27792|0;kT(b,a+27808|0,d*42|0);d=a+27796|0;h=h+26996|0;gT(d,a+27812|0,(c[h>>2]|0)*96|0);e=a+27800|0;gT(e,a+27816|0,(c[h>>2]|0)*96|0);if((((c[f>>2]|0)!=0?(c[b>>2]|0)!=0:0)?(c[d>>2]|0)!=0:0)?(c[e>>2]|0)!=0:0)b=0;else{zM(f);zM(b);zM(d);zM(e);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;b=-12}return b|0}function or(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Nb;Nb=Nb+32|0;h=i+16|0;g=i+8|0;do if(e>>>0<=3){if(!(c&32768)){c=a[197240+e>>0]|0;if((e|1|0)==3){mx(b,16,197244,g);c=-1094995529;break}}else c=e;e=d&32896;if((e|0)!=32896)if((c|2|0)==3){mx(b,16,197292,h);c=-1094995529;break}else{Nb=i;return ((e|0)==0|(f|0)==0?a[197341+c>>0]|0:8-(d>>>15&1)+(((c|0)==4&1)<<1)|0)|0}}else{mx(b,16,197203,i);c=-1094995529}while(0);Nb=i;return c|0}function pr(a){a=a|0;var b=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0;b=c[a+20>>2]|0;if(!b){a=a+128|0;b=17520;d=a+64|0;do{c[a>>2]=c[b>>2];a=a+4|0;b=b+4|0}while((a|0)<(d|0))}else{h=+(c[a+12>>2]|0);j=+(c[a+16>>2]|0);e=+(c[a+4>>2]|0);k=e/j;g=+(c[a>>2]|0);i=g/h;i=(b|0)==1?(k<i?k:i):k>i?k:i;e=i*j/e;g=i*h/g;h=-g;f[a+128>>2]=h;i=-e;f[a+132>>2]=i;f[a+144>>2]=g;f[a+148>>2]=i;f[a+160>>2]=h;f[a+164>>2]=e;f[a+176>>2]=g;f[a+180>>2]=e}return}function qr(a){a=a|0;var b=0,d=0,e=0,f=0;e=Nb;Nb=Nb+16|0;d=e;do if(c[a+16>>2]|0){b=ha(10,a|0)|0;if((b|0)<0){_v(165490)|0;break}else{b=ha(11,a|0)|0;c[a>>2]=b;ja(12,1,4096,24,a|0)|0;b=BP()|0;c[a+24>>2]=b;c[b+80>>2]=3;f=b+240|0;c[f>>2]=4;c[f+4>>2]=0;c[b+76>>2]=4096;Qv(b,0)|0;c[a+12>>2]=1;c[d>>2]=c[a>>2];c[d+4>>2]=4096;EN(165902,d)|0;b=0;break}}else b=-1;while(0);Nb=e;return b|0}function rr(a){a=a|0;var b=0,d=0;a:do switch(c[a+8>>2]|0){case 4:case 3:case 2:case 0:{b=a+72|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break}case 1:{b=SI(c[a+48>>2]|0)|0;if(!b){b=a+72|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break a}else{d=c[a+416>>2]|0;a=c[a+420>>2]|0;b=oK(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;b=oK(b|0,M()|0,a|0,((a|0)<0)<<31>>31|0)|0;a=M()|0;break a}}default:{a=0;b=0}}while(0);L(a|0);return b|0}function sr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+16|0;g=k;c[g>>2]=d;do if(!d)e=0;else{h=a+292|0;i=c[h>>2]|0;if((i>>>0<=536870910?(j=a+288|0,f=eP(c[j>>2]|0,(i<<2)+4|0)|0,f|0):0)?(c[j>>2]=f,e=rR(20)|0,e|0):0){c[e+16>>2]=d;c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e>>2]=b;i=c[j>>2]|0;j=c[h>>2]|0;c[h>>2]=j+1;c[i+(j<<2)>>2]=e;break}nT(g);e=0}while(0);Nb=k;return e|0}function tr(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)>=(f|0))break;c=0;while(1){if(c>>>0>=16)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function ur(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function vr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}jq(d|0,0,256)|0;return}function wr(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)>=(f|0))break;c=0;while(1){if(c>>>0>=8)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function xr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+20|0;n=a+8|0;k=a+12|0;l=(e|0)==0;f=c[n>>2]|0;g=c[m>>2]|0;j=b;b=d;i=c[k>>2]|0;do{i=i-f|0;i=(i|0)>(b|0)?b:i;if(!l){h=Zb[e&15](j,f,i)|0;if((h|0)<1)break}else{Bk(f|0,j|0,i|0)|0;h=i;j=j+i|0}f=f+h|0;i=c[k>>2]|0;if(f>>>0>=i>>>0)f=c[a>>2]|0;g=h+g|0;b=b-h|0}while((b|0)>0);c[m>>2]=g;c[n>>2]=f;return d-b|0}function yr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=Nb;Nb=Nb+16|0;f=g;b=a+308|0;d=(c[a>>2]|0)+8|0;e=a+212|0;a=a+304|0;while(1){if((c[b>>2]|0)<=0){a=6;break}JV(d)|0;if((c[(c[e>>2]|0)+8>>2]|0)>>>0>=2){a=4;break}j=c[a>>2]|0;i=(c[b>>2]|0)+-1|0;c[b>>2]=i;h=j+(i*400|0)|0;c[j+(i*400|0)+64>>2]=h;rv(h);JV(d)|0}if((a|0)==4){c[f>>2]=184636;c[f+4>>2]=184725;c[f+8>>2]=376;mx(0,0,214689,f);ba()}else if((a|0)==6){Nb=g;return}}function zr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=d&-2;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=oK(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Ar(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=g+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;f[a>>2]=+(c[b>>2]|0)*4.656612873077393e-10;i=b+d|0;j=a+e|0;f[j>>2]=+(c[i>>2]|0)*4.656612873077393e-10;i=i+d|0;j=j+e|0;f[j>>2]=+(c[i>>2]|0)*4.656612873077393e-10;i=i+d|0;j=j+e|0;f[j>>2]=+(c[i>>2]|0)*4.656612873077393e-10;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=g>>>0)break;f[a>>2]=+(c[b>>2]|0)*4.656612873077393e-10;a=a+e|0;b=b+d|0}return}function Br(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;h=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;g[a>>3]=+(c[b>>2]|0)*4.656612873077393e-10;i=b+d|0;j=a+e|0;g[j>>3]=+(c[i>>2]|0)*4.656612873077393e-10;i=i+d|0;j=j+e|0;g[j>>3]=+(c[i>>2]|0)*4.656612873077393e-10;i=i+d|0;j=j+e|0;g[j>>3]=+(c[i>>2]|0)*4.656612873077393e-10;a=j+e|0;b=i+d|0}while(1){if(a>>>0>=f>>>0)break;g[a>>3]=+(c[b>>2]|0)*4.656612873077393e-10;a=a+e|0;b=b+d|0}return}function Cr(a,b,c,e,g){a=a|0;b=b|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=g+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;f[a>>2]=+((d[b>>0]|0)+-128|0)*.0078125;i=b+c|0;j=a+e|0;f[j>>2]=+((d[i>>0]|0)+-128|0)*.0078125;i=i+c|0;j=j+e|0;f[j>>2]=+((d[i>>0]|0)+-128|0)*.0078125;i=i+c|0;j=j+e|0;f[j>>2]=+((d[i>>0]|0)+-128|0)*.0078125;a=j+e|0;b=i+c|0}while(1){if(a>>>0>=g>>>0)break;f[a>>2]=+((d[b>>0]|0)+-128|0)*.0078125;a=a+e|0;b=b+c|0}return}function Dr(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var h=0,i=0,j=0;h=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;g[a>>3]=+((d[b>>0]|0)+-128|0)*.0078125;i=b+c|0;j=a+e|0;g[j>>3]=+((d[i>>0]|0)+-128|0)*.0078125;i=i+c|0;j=j+e|0;g[j>>3]=+((d[i>>0]|0)+-128|0)*.0078125;i=i+c|0;j=j+e|0;g[j>>3]=+((d[i>>0]|0)+-128|0)*.0078125;a=j+e|0;b=i+c|0}while(1){if(a>>>0>=f>>>0)break;g[a>>3]=+((d[b>>0]|0)+-128|0)*.0078125;a=a+e|0;b=b+c|0}return}function Er(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;k=f+g|0;l=b+30|0;a:do if(!(a[l>>0]|0)){g=f;m=5}else{g=f;j=0;while(1){h=j&255;i=b+32+(h<<3)+2|0;if((g+(e[i>>1]|0)+4|0)>>>0>k>>>0){g=-1;break a}a[g>>0]=0;a[g+1>>0]=0;a[g+2>>0]=0;a[g+3>>0]=1;Bk(g+4|0,c[b+32+(h<<3)+4>>2]|0,e[i>>1]|0)|0;g=g+((e[i>>1]|0)+4)|0;j=j+1<<24>>24;if((j&255)>=(d[l>>0]|0)){m=5;break}}}while(0);if((m|0)==5)g=g-f|0;return g|0}function Fr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<16384?c:(c^-2147483648)>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function Gr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<4096?c:(c^-2147483648)>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function Hr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<1024?c:(c^-2147483648)>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function Ir(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=Nb;Nb=Nb+16|0;h=i;if((c[e>>2]|0)>>>0>=f>>>0){if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=204427;c[h+4>>2]=204444;c[h+8>>2]=33;mx(0,0,214689,h);ba()}}else{h=f+32+(f>>>4)|0;h=h>>>0>f>>>0?h:f;zM(b);if(!g)f=Ax(h)|0;else f=rR(h)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;c[e>>2]=(f|0)==0?0:h}Nb=i;return}function Jr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(H(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;c=l+16+k+((j+i|0)*20|0)+(H(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<512?c:(c^-2147483648)>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function Kr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0;f=d>>1;g=oK(e[a+-2>>1]|0|0,0,65537,65537)|0;b=M()|0;h=a;c[h>>2]=g;c[h+4>>2]=b;h=oK(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;g=a+(f<<1)|0;c[g>>2]=h;c[g+4>>2]=b;d=d&-2;g=oK(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;d=a+(d<<1)|0;c[d>>2]=g;c[d+4>>2]=b;d=f*3|0;f=oK(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=M()|0;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Lr(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)>=(f|0))break;c=0;while(1){if(c>>>0>=16)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=H(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=H(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=H(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(H(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function Mr(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=0-c|0;n=H(c,-2)|0;l=0;while(1){if((l|0)==8)break;j=b+m|0;k=d[j>>0]|0;g=d[b+n>>0]|0;h=d[b>>0]|0;i=d[b+c>>0]|0;o=k-h|0;if(((((o|0)>-1?o:0-o|0)|0)<(e|0)?(o=g-k|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0)?(o=i-h|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0){a[j>>0]=(k+2+(g<<1)+i|0)>>>2;a[b>>0]=(g+2+h+(i<<1)|0)>>>2}l=l+1|0;b=b+1|0}return}function Nr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=Nb;Nb=Nb+16|0;j=l;h=a+29540|0;i=a+4|0;g=0;while(1){if((g|0)>=(c[h>>2]|0)){e=0;break}e=c[a+28332+(g<<2)>>2]|0;f=c[i>>2]|0;if(!(c[f+680>>2]&2048))f=e+88|0;else{m=e+88|0;n=c[m>>2]|0;c[j>>2]=g;c[j+4>>2]=n;c[j+8>>2]=e;mx(f,48,198693,j);f=m}if((c[f>>2]|0)==(b|0)){k=7;break}g=g+1|0}if((k|0)==7)c[d>>2]=g;Nb=l;return e|0}function Or(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)>=(f|0))break;c=0;while(1){if(c>>>0>=8)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=H(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=H(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=H(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(H(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function Pr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Qr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Rr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Sr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Tr(a){a=a|0;var b=0,c=0.0,d=0.0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0.0,m=0.0,n=0.0;l=+f[a>>2];g=a+8|0;d=+f[g>>2];i=l-d;d=l+d;j=a+24|0;l=+f[j>>2];b=a+16|0;n=+f[b>>2];m=l-n;n=l+n;f[b>>2]=d-n;f[a>>2]=d+n;b=a+4|0;n=+f[b>>2];k=a+12|0;d=+f[k>>2];l=n-d;d=n+d;e=a+20|0;n=+f[e>>2];a=a+28|0;c=+f[a>>2];h=n-c;c=n+c;f[a>>2]=l-m;f[k>>2]=m+l;f[j>>2]=i-h;f[g>>2]=i+h;f[e>>2]=d-c;f[b>>2]=d+c;return}function Ur(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+64|0;g=c[e>>2]|0;f=g+64|0;do if(!(c[f>>2]|0)){d=Gq(a,b)|0;if((d|0)==-541478725){c[f>>2]=1;d=-541478725;break}if((d|0)>=0){d=OH(c[e>>2]|0,b)|0;if((d|0)>=0){d=Sf(a,b)|0;if((d|0)>=0){if(!(c[(c[a+12>>2]|0)+104>>2]|0)){d=0;break}d=g+92|0;c[d>>2]=(c[d>>2]|0)+(c[b+28>>2]|0);d=0;break}}AP(b)}}else d=-541478725;while(0);return d|0}function Vr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Wr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Xr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Yr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function Zr(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d[88688+f>>0]|0;g=i+-1|0;i=i+-8|0;h=a[b+28272+(e*40|0)+i>>0]|0;f=(a[b+28272+(e*40|0)+g>>0]|0)>0;if((c[b+840>>2]|0)==3){if(f)f=((d[b+28512+g>>0]|0)>>>7^1)&255;else f=0;if(h<<24>>24>0)e=(a[b+28512+i>>0]|0)<0?f:f|2;else e=f}else{e=f&1;e=h<<24>>24>0?e|2:e}g=b+32856|0;f=0;while(1){if(!(Vu(g,e+54+(b+32904)|0)|0))break;if(f>>>0>30){f=-1;break}f=f+1|0;e=(e>>2)+4|0}return f|0}function _r(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=g+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;f[a>>2]=+(b[c>>1]|0)*.000030517578125;i=c+d|0;j=a+e|0;f[j>>2]=+(b[i>>1]|0)*.000030517578125;i=i+d|0;j=j+e|0;f[j>>2]=+(b[i>>1]|0)*.000030517578125;i=i+d|0;j=j+e|0;f[j>>2]=+(b[i>>1]|0)*.000030517578125;a=j+e|0;c=i+d|0}while(1){if(a>>>0>=g>>>0)break;f[a>>2]=+(b[c>>1]|0)*.000030517578125;a=a+e|0;c=c+d|0}return}function $r(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;h=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;g[a>>3]=+(b[c>>1]|0)*.000030517578125;i=c+d|0;j=a+e|0;g[j>>3]=+(b[i>>1]|0)*.000030517578125;i=i+d|0;j=j+e|0;g[j>>3]=+(b[i>>1]|0)*.000030517578125;i=i+d|0;j=j+e|0;g[j>>3]=+(b[i>>1]|0)*.000030517578125;a=j+e|0;c=i+d|0}while(1){if(a>>>0>=f>>>0)break;g[a>>3]=+(b[c>>1]|0)*.000030517578125;a=a+e|0;c=c+d|0}return}function as(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;g=0;while(1){if((e|0)==4)break;i=a+((H(e,b)|0)+-1)|0;h=a+((H(e+4|0,b)|0)+-1)|0;e=e+1|0;f=f+(d[i>>0]|0)|0;g=g+(d[h>>0]|0)|0}h=H((f+2|0)>>>2,16843009)|0;f=(g+2|0)>>>2;e=0;while(1){if((e|0)==4)break;i=a+(H(e,b)|0)|0;c[i>>2]=h;c[i+4>>2]=h;e=e+1|0}f=H(f,16843009)|0;e=4;while(1){if((e|0)==8)break;i=a+(H(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}return}function bs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function cs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function ds(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function es(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function fs(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;while(1){if((f|0)==4)break;i=a+((H(f,b)|0)+-1)|0;h=f+4|0;g=a+((H(h,b)|0)+-1)|0;e=e+(d[i>>0]|0)+(d[a+(f-b)>>0]|0)+(d[a+(h-b)>>0]|0)+(d[g>>0]|0)|0;f=f+1|0}f=H((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==4)break;i=a+(H(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}e=4;while(1){if((e|0)==8)break;i=a+(H(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}return}function gs(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=g+(H(f,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;c[a>>2]=(d[b>>0]|0)<<24^-2147483648;i=b+e|0;j=a+f|0;c[j>>2]=(d[i>>0]|0)<<24^-2147483648;i=i+e|0;j=j+f|0;c[j>>2]=(d[i>>0]|0)<<24^-2147483648;i=i+e|0;j=j+f|0;c[j>>2]=(d[i>>0]|0)<<24^-2147483648;a=j+f|0;b=i+e|0}while(1){if(a>>>0>=g>>>0)break;c[a>>2]=(d[b>>0]|0)<<24^-2147483648;a=a+f|0;b=b+e|0}return}function hs(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function is(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=Nb;Nb=Nb+32|0;f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+680>>2]&2048|0){mx(b,48,198060,g);d=a+29540|0;b=0;while(1){if(b>>>0>=(c[d>>2]|0)>>>0)break a;i=c[a+28332+(b<<2)>>2]|0;h=c[e>>2]|0;k=c[i+88>>2]|0;j=c[i+84>>2]|0;i=c[c[i>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=k;c[f+8>>2]=j;c[f+12>>2]=i;mx(h,48,198040,f);b=b+1|0}}while(0);Nb=g;return}function js(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;h=j;e=c[a+12>>2]|0;if((e|0?(g=c[e+4>>2]|0,g|0):0)?(i=g+(d<<2)|0,(c[i>>2]|0)<(b|0)):0){a=c[a+4+(d<<2)>>2]|0;f=c[(c[a+64>>2]|0)+20>>2]|0;if(c[f+344>>2]|0){c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=g;mx(a,48,184794,h)}e=f+184|0;JV(e)|0;a=f+60|0;while(1){if((c[i>>2]|0)>=(b|0))break;zb(a|0,e|0)|0}JV(e)|0}Nb=j;return}function ks(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+32|0;g=i+16|0;h=i;f=MT(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if((f|0)!=0?(0==0?(c[f+8>>2]&8|0)==0:0):0){lu(g,h,f);e=0;while(1){if(e>>>0>=4){b=0;break a}b=ex(d,c[g+(e<<2)>>2]|0,c[h+(e<<2)>>2]|0,f)|0;if((b|0)<0)break a;c[a+(e<<2)>>2]=b;e=e+1|0}}else b=-22;while(0);Nb=i;return b|0}function ls(a,b){a=a|0;b=b|0;var d=0,e=0;if(((c[a+12>>2]|0)-(c[a>>2]|0)|0)>>>0<b>>>0){d=PT(a)|0;b=eU(b)|0;if(!b)b=-12;else{Qw(a,c[b>>2]|0,d,0)|0;e=b+8|0;c[e>>2]=(c[e>>2]|0)+d;e=b+20|0;c[e>>2]=(c[e>>2]|0)+d;FV(c[a>>2]|0);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];FV(b);b=0}}else b=0;return b|0}function ms(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ns(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function os(a){a=a|0;var b=0,d=0,e=0;b=c[a+29540>>2]|0;do if((b|0)!=0?((c[a+29536>>2]|0)+b|0)>=(c[(c[a+28200>>2]|0)+48>>2]|0):0){e=(c[a+26364>>2]|0)==3;if((!e?(c[a+26368>>2]|0)==0:0)?c[(c[a+24312>>2]|0)+640>>2]|0:0){b=0;break}c[a+28732>>2]=1;d=c[(c[a+28332+(b+-1<<2)>>2]|0)+88>>2]|0;b=a+28736|0;c[b>>2]=d;d=d<<1;if(e)b=1;else{c[b>>2]=d;c[a+28744>>2]=1;c[a+28748>>2]=d|1;b=2}}else b=0;while(0);c[a+29524>>2]=b;return}function ps(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=c[a+64>>2]|0;rv(b);do if((wU(a)|0)!=0?(wO(c[a+12>>2]|0)|0)!=0:0){d=Zh(a)|0;if((d|0)>=0){d=c[e+76>>2]|0;if(!(c[d+248>>2]|0)){d=qv(a,b)|0;if((d|0)<0)break}else qN(b,d);if((c[a+8>>2]|0)==0?(f=ap(a,b)|0,(f|0)<0):0){rv(b);d=f;break}d=a+432|0;c[d>>2]=(c[d>>2]|0)+1;d=0}}else d=-22;while(0);return d|0}function qs(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function rs(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;Bk(f|0,f+4096|0,1152)|0;Bk(f+1152|0,e|0,4096)|0;j=a+28|0;k=d+12|0;l=b+44|0;m=g+256|0;n=d+16|0;e=0;a=f;while(1){if((e|0)==32)break;ic[c[j>>2]&255](g,284704,a,320);ec[c[d>>2]&31](g);ec[c[k>>2]&31](g);hc[c[l>>2]&1023](b,g,m);fc[c[n>>2]&255](h+(i<<13)+(e<<8)|0,g);e=e+1|0;a=a+128|0}return}function ss(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;var i=0;i=c[g>>2]|0;f[a>>2]=+f[b+((d&3)<<2)>>2]*(c[h>>2]=i^e&-2147483648,+f[h>>2]);g=e<<(d>>>12&1);f[a+4>>2]=+f[b+((d>>>2&3)<<2)>>2]*(c[h>>2]=i^g&-2147483648,+f[h>>2]);g=g<<(d>>>13&1);f[a+8>>2]=+f[b+((d>>>4&3)<<2)>>2]*(c[h>>2]=i^g&-2147483648,+f[h>>2]);f[a+12>>2]=+f[b+((d>>>6&3)<<2)>>2]*(c[h>>2]=i^g<<(d>>>14&1)&-2147483648,+f[h>>2]);return a+16|0}function ts(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=oK((d+2|0)>>>2|0,0,65537,65537)|0;i=M()|0;d=oK((g+2|0)>>>2|0,0,65537,65537)|0;f=M()|0;b=0;while(1){if((b|0)==16)break;g=a+((H(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function us(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;h=i;if((c[e>>2]|0)>>>0>=f>>>0)if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=204427;c[h+4>>2]=185210;c[h+8>>2]=33;mx(0,0,214689,h);ba()}else g=0;else{g=f+32+(f>>>4)|0;g=g>>>0>f>>>0?g:f;zM(b);h=rR(g)|0;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;c[e>>2]=(h|0)==0?0:g;g=1}Nb=i;return g|0}function vs(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;h=j;g=rR(24)|0;c[h>>2]=g;i=g;do if(g){c[g>>2]=a;c[g+4>>2]=b;c[g+12>>2]=(d|0)==0?194:d;c[g+16>>2]=e;c[g+8>>2]=1;if(f&1|0){g=g+20|0;c[g>>2]=c[g>>2]|1}d=rR(12)|0;if(!d){zM(h);d=0;break}else{c[d>>2]=i;c[d+4>>2]=a;c[d+8>>2]=b;break}}else d=0;while(0);Nb=j;return d|0}function ws(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+16|0;j=l;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(Ty(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0<h>>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Zb[c[b+36>>2]&15](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);Nb=l;return f|0}function xs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=Nb;Nb=Nb+16|0;f=h;if((NL(e)|0)!=0?(i=Yz(e,5)|0,c[d+108>>2]=i,(i|0)==0|(i|0)>30):0){mx(c[b+4>>2]|0,16,188581,f);b=-1094995529}else g=4;a:do if((g|0)==4){f=b+6476|0;b=0;while(1){i=a[d>>0]|0;g=a[191448+(c[f>>2]|0)>>0]|0;if(b>>>0>=(((i&255)>(g&255)?g:i)&255)>>>0){b=0;break a}i=(NL(e)|0)&255;a[d+236+b>>0]=i;b=b+1|0}}while(0);Nb=h;return b|0}function ys(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=g+(H(f,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;b[a>>1]=((d[c>>0]|0)<<8)+32768;i=c+e|0;j=a+f|0;b[j>>1]=((d[i>>0]|0)<<8)+32768;i=i+e|0;j=j+f|0;b[j>>1]=((d[i>>0]|0)<<8)+32768;i=i+e|0;j=j+f|0;b[j>>1]=((d[i>>0]|0)<<8)+32768;a=j+f|0;c=i+e|0}while(1){if(a>>>0>=g>>>0)break;b[a>>1]=((d[c>>0]|0)<<8)+32768;a=a+f|0;c=c+e|0}return}function zs(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;a[b+8192>>0]=d;f=0;e=1;while(1){if((f|0)==127)break;h=f^d;i=h&255;g=Wb[c&31](i)|0;f=f+1|0;g=g+4+(Wb[c&31]((f^d)&255)|0)>>3;h=(h^128)&255;while(1){if((e|0)>=(g|0))break;a[b+(8192-e)>>0]=h;a[b+(e+8192)>>0]=i;e=e+1|0}}g=(d^255)&255;f=(d^127)&255;while(1){if((e|0)>=8192)break;a[b+(8192-e)>>0]=g;a[b+(e+8192)>>0]=f;e=e+1|0}a[b>>0]=a[b+1>>0]|0;return}function As(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=Nb;Nb=Nb+32|0;f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+680>>2]&2048|0){mx(b,48,198023,g);b=0;while(1){if((b|0)==16)break a;d=c[a+28460+(b<<2)>>2]|0;if(d|0){h=c[e>>2]|0;j=c[d+88>>2]|0;i=c[d+84>>2]|0;d=c[c[d>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=j;c[f+8>>2]=i;c[f+12>>2]=d;mx(h,48,198040,f)}b=b+1|0}}while(0);Nb=g;return}function Bs(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=g+(H(f,-3)|0)|0;while(1){if(b>>>0>=h>>>0)break;a[b>>0]=((c[d>>2]|0)>>>24)+128;i=d+e|0;j=b+f|0;a[j>>0]=((c[i>>2]|0)>>>24)+128;i=i+e|0;j=j+f|0;a[j>>0]=((c[i>>2]|0)>>>24)+128;i=i+e|0;j=j+f|0;a[j>>0]=((c[i>>2]|0)>>>24)+128;b=j+f|0;d=i+e|0}while(1){if(b>>>0>=g>>>0)break;a[b>>0]=((c[d>>2]|0)>>>24)+128;b=b+f|0;d=d+e|0}return}function Cs(b,c,d,f,g){b=b|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=g+(H(f,-3)|0)|0;while(1){if(b>>>0>=h>>>0)break;a[b>>0]=((e[c>>1]|0)>>>8)+128;i=c+d|0;j=b+f|0;a[j>>0]=((e[i>>1]|0)>>>8)+128;i=i+d|0;j=j+f|0;a[j>>0]=((e[i>>1]|0)>>>8)+128;i=i+d|0;j=j+f|0;a[j>>0]=((e[i>>1]|0)>>>8)+128;b=j+f|0;c=i+d|0}while(1){if(b>>>0>=g>>>0)break;a[b>>0]=((e[c>>1]|0)>>>8)+128;b=b+f|0;c=c+d|0}return}function Ds(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=0;while(1){if((f|0)==2)break;l=d[c+-2>>0]|0;g=d[c>>0]|0;i=d[c+2>>0]|0;j=d[c+4>>0]|0;h=d[c+6>>0]|0;k=d[c+8>>0]|0;m=(d[c+-4>>0]|0)+16+h+((i+g|0)*20|0)+(H(j+l|0,-5)|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;g=l+16+k+((j+i|0)*20|0)+(H(h+g|0,-5)|0)>>5;a[b+e>>0]=g>>>0>255?(g^-2147483648)>>31:g;f=f+1|0;b=b+1|0;c=c+1|0}return}function Es(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=(e|0)!=0;g=b+12|0;h=c[b+8>>2]|0;while(1){if(!(f&(h|0)>0)){b=4;break}b=h+-1|0;e=a[(c[g>>2]|0)+b>>0]|0;if(!(e<<24>>24))h=b;else{f=e;b=6;break}}if((b|0)==4)if(!h)e=0;else{f=a[(c[g>>2]|0)+(h+-1)>>0]|0;b=6}if((b|0)==6){b=f&255;if((h|0)<=268435455){e=h<<3;if(f<<24>>24){h=91392+((H(0-b&b,125613361)|0)>>>27)|0;e=e+-1-(d[h>>0]|0)|0}}else e=-34}return e|0}function Fs(a){a=a|0;var b=0,d=0;d=c[a+60>>2]|0;kt(d);so(d);a=0;while(1){if((a|0)==36)break;b=d+696+(a*656|0)|0;Tw(d,b);iQ(b);a=a+1|0}a=d+28588|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[d+24312>>2]=0;zM(d+25628|0);c[d+25632>>2]=0;ZI(d+29660|0);_B(d+27036|0);pI(d+25640|0);b=d+24316|0;Tw(d,b);iQ(b);b=d+24972|0;Tw(d,b);iQ(b);return 0}function Gs(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=H((f+2|0)>>>2,16843009)|0;f=H((h+2|0)>>>2,16843009)|0;e=0;while(1){if((e|0)==4)break;j=a+(H(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}e=4;while(1){if((e|0)==8)break;j=a+(H(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function Hs(a){a=a|0;var b=0,d=0,e=0;c[a+428>>2]=0;b=a+12|0;switch(c[(c[b>>2]|0)+12>>2]|0){case 65543:{QU();break}case 65542:{PU();break}default:{}}b=SI(c[(c[b>>2]|0)+12>>2]|0)|0;c[a+784>>2]=b;b=(H(c[a+420>>2]|0,b)|0)/8|0;c[a+436>>2]=b;b=uN(b|0,((b|0)<0)<<31>>31|0,3)|0;d=M()|0;e=c[a+416>>2]|0;e=oK(b|0,d|0,e|0,((e|0)<0)<<31>>31|0)|0;d=M()|0;b=a+72|0;c[b>>2]=e;c[b+4>>2]=d;return 0}function Is(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;l=(f|0)!=1;k=c[g>>2]|0;i=0;j=0;h=0;while(1){if((k|0)>=(e|0)){m=9;break}if((d[b+(k*3|0)+2>>0]|0)!=(f|0)){m=9;break}if((a[b+(k*3|0)>>0]|0)==1){if((i|0)!=0&(l|(j|0)!=0)){h=-1;break}j=1;h=h+2|0;i=0}else{h=h+1|0;i=i^1}k=k+1|0}do if((m|0)==9){if(i|0?(f|0)==2|(f|0)==1&(j|0)!=0:0){h=-1;break}c[g>>2]=k}while(0);return h|0}function Js(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=Nb;Nb=Nb+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=iP(h^a|0,g^b|0,h|0,g|0)|0;b=M()|0;Le(a,b,iP(k^d|0,j^e|0,k|0,j|0)|0,M()|0,i)|0;e=iP(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=M()|0;Nb=f;return (L(d|0),e)|0}function Ks(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=Nb;Nb=Nb+80|0;b=e;d=a+200|0;i=(c[d>>2]|0)+16|0;g=a+264|0;g=iP(c[i>>2]|0,c[i+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;i=M()|0;j=GC()|0;j=Eu(j|0,M()|0,1e3,0)|0;h=M()|0;f=a+272|0;f=iP(j|0,h|0,c[f>>2]|0,c[f+4>>2]|0)|0;h=M()|0;if(!((i|0)>(h|0)|(i|0)==(h|0)&g>>>0>f>>>0)?(No(d,b)|0)==1:0){de(a,b);AP(b)}Nb=e;return}function Ls(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=Nb;Nb=Nb+16|0;e=f;i=b;i=uN(c[i>>2]|0,c[i+4>>2]|0,3)|0;h=M()|0;g=e;c[g>>2]=i;c[g+4>>2]=h;_n(b,209561,1);while(1){if(0==0?(c[b>>2]&63|0)==56:0)break;_n(b,1137073,1)}_n(b,e,8);e=0;while(1){if((e|0)==4)break;h=c[b+72+(3-e<<2)>>2]|0;i=d+(e<<2)|0;a[i>>0]=h;a[i+1>>0]=h>>8;a[i+2>>0]=h>>16;a[i+3>>0]=h>>24;e=e+1|0}Nb=f;return}function Ms(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==4)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function Ns(a){a=a|0;var b=0,d=0,e=0,f=0;c[a+28728>>2]=-2147483648;c[a+29548>>2]=1;AI(a);c[a+28248>>2]=-1;f=a+24312|0;b=c[f>>2]|0;if(b|0){c[b+640>>2]=0;b=0;e=0;while(1){d=c[a+28588+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[f>>2]|0)){c[a+28588+(b<<2)>>2]=d;b=b+1|0}e=e+1|0}c[a+28588+(b<<2)>>2]=0}Tw(a,a+24972|0);c[a+26368>>2]=0;c[a+29556>>2]=-1;c[a+29560>>2]=0;c[a+29544>>2]=0;c[a+29528>>2]=1;return}function Os(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==16)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function Ps(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;f=h;g=a+4|0;c[g>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];d=Kf(c[a>>2]|0,c[b>>2]|0)|0;if((d|0)>=0){e=a+12|0;if(c[e>>2]|0){c[f>>2]=187287;c[f+4>>2]=185289;c[f+8>>2]=2074;mx(0,0,214689,f);ba()}d=c[b+12>>2]|0;if((d|0)!=0?(f=rI(d)|0,c[e>>2]=f,(f|0)==0):0){Do(c[g>>2]|0,a);d=-12}else d=0}Nb=h;return d|0}function Qs(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function Rs(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function Ss(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;g=a+((H(d,h)|0)+-1<<1)|0;b=b+(e[g>>1]|0)|0;d=d+1|0}f=oK((b+8|0)>>>4|0,0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Ts(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;a:do if((d|0)>=0){h=a+8|0;g=c[h>>2]|0;d=(g|0)<(d|0)?g:d;if(!d)d=0;else{f=H(c[a+24>>2]|0,d)|0;g=a+4|0;e=0;while(1){if((e|0)>=(c[g>>2]|0))break;if((Qw(c[(c[a>>2]|0)+(e<<2)>>2]|0,c[b+(e<<2)>>2]|0,f,0)|0)<0){d=-558323010;break a}else e=e+1|0}c[h>>2]=(c[h>>2]|0)-d}}else d=-22;while(0);return d|0}function Us(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){do{e=b;b=uS(b|0,c|0,10,0)|0;f=c;c=M()|0;g=oK(b|0,c|0,10,0)|0;g=iP(e|0,f|0,g|0,M()|0)|0;M()|0;d=d+-1|0;a[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=b}else c=b;if(c)do{g=c;c=(c>>>0)/10|0;d=d+-1|0;a[d>>0]=g-(c*10|0)|48}while(g>>>0>=10);return d|0}function Vs(a,b,d,e,f,h,i,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0.0;o=Nb;Nb=Nb+16|0;n=o;c[n>>2]=0;b=uk(n,b,d,f,h,i,j,l,m)|0;if((b|0)<0)g[a>>3]=r;else{b=c[n>>2]|0;p=+JB(b,e,k);g[a>>3]=p;kI(b);b=mP(+g[a>>3])|0;k=(M()|0)&2147483647;b=k>>>0>2146435072|(k|0)==2146435072&b>>>0>0?-22:0}Nb=o;return b|0}function Ws(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=f>>1;h=f&-2;i=k*3|0;j=k<<2;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(h<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(i<<1)>>1]=l;b[f+(j<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Xs(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=g+(H(f,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;b[a>>1]=(c[d>>2]|0)>>>16;i=d+e|0;j=a+f|0;b[j>>1]=(c[i>>2]|0)>>>16;i=i+e|0;j=j+f|0;b[j>>1]=(c[i>>2]|0)>>>16;i=i+e|0;j=j+f|0;b[j>>1]=(c[i>>2]|0)>>>16;a=j+f|0;d=i+e|0}while(1){if(a>>>0>=g>>>0)break;b[a>>1]=(c[d>>2]|0)>>>16;a=a+f|0;d=d+e|0}return}function Ys(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=g+(H(f,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;c[a>>2]=(e[b>>1]|0)<<16;i=b+d|0;j=a+f|0;c[j>>2]=(e[i>>1]|0)<<16;i=i+d|0;j=j+f|0;c[j>>2]=(e[i>>1]|0)<<16;i=i+d|0;j=j+f|0;c[j>>2]=(e[i>>1]|0)<<16;a=j+f|0;b=i+d|0}while(1){if(a>>>0>=g>>>0)break;c[a>>2]=(e[b>>1]|0)<<16;a=a+f|0;b=b+d|0}return}function Zs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=SU(a)|0;if(!d){g=NL(a)|0;c[b+48>>2]=g;a:do if(g|0){f=b+44|0;g=b+416|0;e=b+586|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break a;i=NL(a)|0;tf(a,b,g,(i|0)==0?6:7,d,i);i=NL(a)|0;tf(a,b,e,(i|0)==0?8:9,d,i);d=d+1|0}}while(0);YU(a);d=(SU(a)|0)-h|0}else d=0;return d|0}function _s(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function $s(a){a=+a;var b=0,d=0,e=0,g=0.0,i=0.0,j=0.0;b=(f[h>>2]=a,c[h>>2]|0);d=b&2147483647;do if(d>>>0>2139095039)a=a+a;else{if(d>>>0<8388608){if(!d)break;b=(f[h>>2]=a*16777216.0,c[h>>2]|0);e=642849266;d=b&2147483647}else e=709958130;g=(c[h>>2]=b&-2147483648|((d>>>0)/3|0)+e,+f[h>>2]);j=g*g*g;i=a+a;j=(i+j)*g/(j+(j+a));g=j*(j*j);a=j*(i+g)/(g+(g+a))}while(0);return +a}function at(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==8)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function bt(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;j=1;while(1){if((j|0)==3)break;k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if(k>>>0>=m>>>0)break;if(!(a[i+(d[88688+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)Dx((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else qk((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function ct(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Pw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Tj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function dt(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Uw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Vj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function et(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Vw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Wj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function ft(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=Nb;Nb=Nb+80|0;j=i+60|0;h=i+40|0;k=i;l=gQ(a,b)|0;b=M()|0;a=k;c[a>>2]=l;c[a+4>>2]=b;JM(j,k+1|0);a=Kp(j,h)|0;if((a|0)<0)a=0;else{c[f>>2]=0;c[g>>2]=1;c[e+56>>2]=c[h>>2];c[e+52>>2]=d[200936+(d[h+15>>0]|0)>>0];c[e+64>>2]=c[h+4>>2];c[e+60>>2]=c[h+8>>2]}Nb=i;return a|0}function gt(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;f=b+c|0;a:do if((c|0)!=0&((b|0)!=0&(d|0)!=0))if(!(a[f+-1>>0]|0)){e=b;b=0;while(1){if(e>>>0>=f>>>0)break a;c=e+(wu(e)|0)+1|0;if(c>>>0>=f>>>0){b=-1094995529;break a}if(!(a[e>>0]|0)){b=-1094995529;break a}b=Jf(d,e,c,0)|0;if((b|0)<0)break a;e=c+(wu(c)|0)+1|0}}else b=-1094995529;else b=0;while(0);return b|0}function ht(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if(j>>>0>=k>>>0)break;if(!(a[h+(d[88688+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)Yw((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else Xj((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function it(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;if(d>>>0>1024)b=-1;else{f=d+1|0;a[b>>0]=8;a[b+1>>0]=f>>>16;a[b+2>>0]=f>>>8;a[b+3>>0]=f;a[b+4>>0]=c>>>16;a[b+5>>0]=c>>>8;a[b+6>>0]=c;a[b+7>>0]=c>>>24;a[b+8>>0]=0;a[b+9>>0]=0;a[b+10>>0]=0;a[b+11>>0]=114;Bk(b+12|0,e|0,d|0)|0;e=d+12|0;a[b+e>>0]=e>>>24;a[b+(d+13)>>0]=e>>>16;a[b+(d+14)>>0]=e>>>8;a[b+(d+15)>>0]=e;b=d+16|0}return b|0}function jt(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:do if((b|0)!=0&(c|0)!=0){g=wu(b)|0;while(1){d=a[c>>0]|0;if(!(d<<24>>24)){c=0;break a}f=d<<24>>24==45;d=vQ(c,44)|0;if(!d)d=c+(wu(c)|0)|0;c=c+(f&1)|0;e=d-c|0;if(!(tx(b,c,(e|0)>(g|0)?e:g)|0))break;if(!(vv(201550,c,(e|0)>3?e:3)|0))break;c=d+((a[d>>0]|0)==44&1)|0}c=(f^1)&1}else c=0;while(0);return c|0}function kt(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==16)break;fI(a,b,0);b=b+1|0}d=a+29540|0;if(c[d>>2]|0?(e=a+24972|0,(c[c[e>>2]>>2]|0)==0):0){Tw(a,e);gg(a,e,c[a+28332>>2]|0)|0}b=0;while(1){if((b|0)>=(c[d>>2]|0))break;e=a+28332+(b<<2)|0;vx(a,c[e>>2]|0,0)|0;c[e>>2]=0;b=b+1|0}c[d>>2]=0;b=a+28252|0;d=b+80|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return}function lt(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=d[a+-1>>0]|0;k=d[a+(e+-1)>>0]|0;h=e<<1;i=d[a+(h+-1)>>0]|0;b=e*3|0;f=d[a+(b+-1)>>0]|0;j=k+2|0;g=H((j+(d[a+~e>>0]|0)+(l<<1)|0)>>>2,16843009)|0;c[a>>2]=g;g=i+2|0;k=H((g+l+(k<<1)|0)>>>2,16843009)|0;c[a+e>>2]=k;e=H((j+(i<<1)+f|0)>>>2,16843009)|0;c[a+h>>2]=e;e=H((g+f+(f<<1)|0)>>>2,16843009)|0;c[a+b>>2]=e;return}function mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[a+260>>2]|0;a:do if(!(c[b+272>>2]|0)){d=H(f,d)|0;g=a+264|0;while(1){e=f+-1|0;if((f|0)<=0)break a;f=(c[b>>2]|0)+(H(c[g>>2]|0,e+d|0)|0)|0;c[a+(e<<2)>>2]=f;f=e}}else{g=a+264|0;e=0;while(1){if((e|0)>=(f|0))break a;h=(c[b+(e<<2)>>2]|0)+(H(c[g>>2]|0,d)|0)|0;c[a+(e<<2)>>2]=h;e=e+1|0}}while(0);return}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;e=g;do if(b){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0){f=4;break}d=c[a+8>>2]|0;if(c[d+4>>2]|0){mx(a,16,191736,e);a=-22;break}a=c[d>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){tJ(a,b);a=0}else a=-11}else f=4;while(0);if((f|0)==4){c[(c[a+8>>2]|0)+4>>2]=1;a=0}Nb=g;return a|0}function ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=(c[a+4>>2]|0)+1|0;g=a+8|0;e=c[g>>2]|0;f=f>>>0>e>>>0?e:f;e=c[a>>2]|0;d=(e|0)!=(a+16|0);if(!b)if(d){zM(a);d=0}else d=0;else{if(!d){e=Ax(f)|0;if(!e){d=-12;e=0}else{Bk(e|0,c[a>>2]|0,f|0)|0;d=0}}else{e=eP(e,f)|0;if(!e)e=c[a>>2]|0;c[a>>2]=0;d=0}c[b>>2]=e}c[g>>2]=f;return d|0}function pt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(d|0)!=0;if(!((b|0)!=0&f?(e=oh(a)|0,(e|0)<0):0)){c[a+44>>2]=d;e=c[a+16>>2]|0;if(f){f=oK(e|0,((e|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;f=Eu(f|0,M()|0,d|0,((d|0)<0)<<31>>31|0)|0;M()|0;e=e-f|0}c[a+20>>2]=e;f=c[a+40>>2]|0;d=(e|0)/(f|0)|0;c[a+24>>2]=d;e=e-(H(d,f)|0)|0;c[a+28>>2]=e;e=0}return e|0}function qt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;h=i;e=c[a+12>>2]|0;if((e|0?(f=c[e+4>>2]|0,f|0):0)?(g=f+(d<<2)|0,(c[g>>2]|0)<(b|0)):0){a=c[a+4+(d<<2)>>2]|0;e=c[(c[a+64>>2]|0)+20>>2]|0;if(c[e+344>>2]|0){c[h>>2]=f;c[h+4>>2]=b;c[h+8>>2]=d;mx(a,48,184769,h)}h=e+184|0;JV(h)|0;c[g>>2]=b;JV(e+60|0)|0;JV(h)|0}Nb=i;return}function rt(a){a=a|0;var b=0,d=0,e=0,f=0;JV(a)|0;d=a+28|0;e=c[d>>2]|0;do if(!e){b=fr(a)|0;JV(a)|0;if(!b)b=0;else f=6}else{b=vs(c[e>>2]|0,c[a+36>>2]|0,195,e,0)|0;if(!b){JV(a)|0;b=0;break}else{f=e+16|0;c[d>>2]=c[f>>2];c[f>>2]=0;JV(a)|0;f=6;break}}while(0);if((f|0)==6){f=a+32|0;c[f>>2]=(c[f>>2]|0)+1}return b|0}function st(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=oK((b+8|0)>>>4|0,0,65537,65537)|0;g=M()|0;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function tt(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0,l=0;l=0;h=+(1-(e<<1&2)|0);while(1){h=-h;if((l|0)>=(g|0))break;e=a+(l<<3)|0;k=a+(l<<3)+4|0;d=d+1&511;i=+f[b+(l<<2)>>2];if(i!=0.0){j=i*0.0;i=i*h}else{i=+f[c+(l<<2)>>2];j=i*+f[44400+(d<<3)>>2];i=i*+f[44400+(d<<3)+4>>2]}i=+f[k>>2]+i;f[e>>2]=+f[e>>2]+j;f[k>>2]=i;l=l+1|0}return}function ut(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0,l=0;l=0;j=+(1-(e<<1&2)|0);while(1){if((l|0)>=(g|0))break;e=a+(l<<3)|0;k=a+(l<<3)+4|0;d=d+1&511;h=+f[b+(l<<2)>>2];if(h!=0.0){i=h*0.0;h=j*h}else{h=+f[c+(l<<2)>>2];i=h*+f[44400+(d<<3)>>2];h=h*+f[44400+(d<<3)+4>>2]}h=+f[k>>2]+h;f[e>>2]=+f[e>>2]+i;f[k>>2]=h;l=l+1|0;j=-j}return}function vt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+8|0;e=c[g>>2]|0;h=e+b|0;c[g>>2]=h;f=a+12|0;b=c[f>>2]|0;do if((h|0)>(b|0)){if(d|0)ba();b=(1<<c[a>>2])+b|0;c[f>>2]=b;h=a+4|0;b=FI(c[h>>2]|0,b,4)|0;c[h>>2]=b;if(!b){c[f>>2]=0;c[g>>2]=0;e=-12;break}else{h=c[a>>2]|0;jq(b+(c[f>>2]<<2)+(-1<<h<<2)|0,0,4<<h|0)|0;break}}while(0);return e|0}function wt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=Nb;Nb=Nb+16|0;d=f+8|0;e=f;h=c[a+124>>2]|0;g=c[a+128>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];d=Lv(h,g,d)|0;if((d|0)<0){h=c[b+4>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=h;mx(a,24,185237,e);c[a+228>>2]=0;c[a+232>>2]=1}else{g=b;h=c[g+4>>2]|0;d=a+228|0;c[d>>2]=c[g>>2];c[d+4>>2]=h;d=0}Nb=f;return d|0}function xt(a){a=a|0;var b=0,e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;f=g;b=MT(a)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;a:do if(!b)a=-22;else{e=d[b+4>>0]|0;a=0;while(1){if((a|0)==(e|0))break;c[f+(c[b+16+(a<<5)>>2]<<2)>>2]=1;a=a+1|0}a=0;b=0;while(1){if((b|0)==4)break a;a=(c[f+(b<<2)>>2]|0)+a|0;b=b+1|0}}while(0);Nb=g;return a|0}function yt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=a+64|0;e=c[(c[d>>2]|0)+52>>2]|0;f=e+36|0;JV(f)|0;c[e+3524>>2]=1;g=e+64|0;JV(g|0)|0;JV(f)|0;b=a+800|0;a=0;while(1){if((a|0)>=(c[b>>2]|0))break;Bb(c[e+3268+(a<<2)>>2]|0,0)|0;a=a+1|0}JV(f)|0;JV(e+3184|0)|0;JV(e+4|0)|0;wb(g|0)|0;wb(e+3212|0)|0;XS(e+32|0);zM((c[d>>2]|0)+52|0);return}function zt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=ZE(b)|0;c[a+4>>2]=d;d=NL(b)|0;c[a+8>>2]=d;d=(d|0)==0;c[a>>2]=d&1;if(d){f=Yz(b,7)|0;d=a+12|0;c[d>>2]=f;f=NL(b)|0;e=a+24|0;c[e>>2]=f;f=Yz(b,6)|0;c[a+20>>2]=f;yO(b,6);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)yO(b,16);yO(b,8);f=ZE(b)|0;c[a+16>>2]=f}YU(b);return}function At(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=Nb;Nb=Nb+48|0;g=h+32|0;f=h+16|0;e=h;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=S(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Q(221,g|0)|0}i=NP(e)|0;Nb=h;return i|0}function Bt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+16|0;f=k;g=a+8|0;h=a+4|0;while(1){i=c[g>>2]|0;e=c[h>>2]|0;i=i-(e>>>0>i>>>0?i:e)|0;if(!i)e=0;else e=(c[a>>2]|0)+e|0;c[f>>2]=c[d>>2];e=gr(e,i,b,f)|0;if((e|0)<1)break;if(e>>>0<i>>>0){j=7;break}if(ir(a,e)|0){j=7;break}}if((j|0)==7)uG(a,e);Nb=k;return}function Ct(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=g>>>0)break;c[a>>2]=c[b+4>>2];h=b+d|0;i=a+e|0;c[i>>2]=c[h+4>>2];h=h+d|0;i=i+e|0;c[i>>2]=c[h+4>>2];h=h+d|0;i=i+e|0;c[i>>2]=c[h+4>>2];a=i+e|0;b=h+d|0}while(1){if(a>>>0>=f>>>0)break;c[a>>2]=c[b+4>>2];a=a+e|0;b=b+d|0}return}function Dt(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=g>>>0)break;b[a>>1]=b[c>>1]|0;h=c+d|0;i=a+e|0;b[i>>1]=b[h>>1]|0;h=h+d|0;i=i+e|0;b[i>>1]=b[h>>1]|0;h=h+d|0;i=i+e|0;b[i>>1]=b[h>>1]|0;a=i+e|0;c=h+d|0}while(1){if(a>>>0>=f>>>0)break;b[a>>1]=b[c>>1]|0;a=a+e|0;c=c+d|0}return}function Et(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;f=j;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;g=f+4|0;h=f+8|0;i=f+12|0;e=8;while(1){if(e>>>0>=64)break;c[f>>2]=d;a[g>>0]=e;hN(f,f,16);c[b+(e<<2)>>2]=c[f>>2];c[b+((e|1)<<2)>>2]=c[g>>2];c[b+((e|2)<<2)>>2]=c[h>>2];c[b+((e|3)<<2)>>2]=c[i>>2];e=e+4|0}c[b+256>>2]=0;Nb=j;return}function Ft(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=(f|0)==0?2147483647:-2147483648;j=0;while(1){l=a+(j<<2)|0;g=m;k=0;while(1){if((k|0)>=(d|0))break;h=c[b+(k<<2)>>2]|0;i=c[h+84>>2]|0;if(((i|0)>(e|0)|0)!=(f|0)?((i|0)<(g|0)|0)!=(f|0):0){c[l>>2]=h;g=i}k=k+1|0}if((g|0)==(m|0))break;e=(c[(c[l>>2]|0)+84>>2]|0)-f|0;j=j+1|0}return j|0}function Gt(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if(k>>>0>=16)break;switch(a[i+(d[88688+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else Cx(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;cf(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+4|0}return}function Ht(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;while(1){e=b+1|0;if(!(hU(a[b>>0]|0)|0))break;else b=e}d=a[b>>0]|0;switch(d|0){case 45:{b=1;f=5;break}case 43:{b=0;f=5;break}default:{g=0;c=b;b=d}}if((f|0)==5){g=b;c=e;b=a[e>>0]|0}if(!(UU(b)|0))b=0;else{b=0;do{b=(b*10|0)+48-(a[c>>0]|0)|0;c=c+1|0}while((UU(a[c>>0]|0)|0)!=0)}return ((g|0)==0?0-b|0:b)|0}function It(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)==16)break;switch(a[i+(d[88688+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else Dx(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;qk(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+1|0}return}function Jt(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=g<<1;k=g*3|0;l=g<<2;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==4)break;m=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=m;m=m+(e[i+8>>1]|0)|0;a[c+j>>0]=m;m=m+(e[i+16>>1]|0)|0;a[c+k>>0]=m;a[c+l>>0]=m+(e[i+24>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var h=0,i=0,j=0;h=e+(H(d,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;g[a>>3]=+f[b>>2];i=b+c|0;j=a+d|0;g[j>>3]=+f[i>>2];i=i+c|0;j=j+d|0;g[j>>3]=+f[i>>2];i=i+c|0;j=j+d|0;g[j>>3]=+f[i>>2];a=j+d|0;b=i+c|0}while(1){if(a>>>0>=e>>>0)break;g[a>>3]=+f[b>>2];a=a+d|0;b=b+c|0}return}function Lt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var h=0,i=0,j=0;h=e+(H(d,-3)|0)|0;while(1){if(a>>>0>=h>>>0)break;f[a>>2]=+g[b>>3];i=b+c|0;j=a+d|0;f[j>>2]=+g[i>>3];i=i+c|0;j=j+d|0;f[j>>2]=+g[i>>3];i=i+c|0;j=j+d|0;f[j>>2]=+g[i>>3];a=j+d|0;b=i+c|0}while(1){if(a>>>0>=e>>>0)break;f[a>>2]=+g[b>>3];a=a+d|0;b=b+c|0}return}function Mt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0;f=e+(H(d,-3)|0)|0;while(1){if(a>>>0>=f>>>0)break;g[a>>3]=+g[b>>3];h=b+c|0;i=a+d|0;g[i>>3]=+g[h>>3];h=h+c|0;i=i+d|0;g[i>>3]=+g[h>>3];h=h+c|0;i=i+d|0;g[i>>3]=+g[h>>3];a=i+d|0;b=h+c|0}while(1){if(a>>>0>=e>>>0)break;g[a>>3]=+g[b>>3];a=a+d|0;b=b+c|0}return}function Nt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=b+87376|0;i=b+110672|0;j=c[b+756>>2]|0;g=f+-64+(c[161928+(j<<2)>>2]|0)|0;jq(b+2528+(g*368|0)|0,0,(64-f|0)*368|0)|0;a=c[161936+(j<<2)>>2]|0;if((a|0)>(g|0))jq(b+36016+(g*888|0)|0,0,(a-g|0)*888|0)|0;f=b+134036|0;jn(f,h,b+768|0,d,j);$e(b,i,h,j);ld(b,h,i,j);zf(f,d,h,j);zf(f,e,i,j);return 0}function Ot(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+16|0;f=k;g=a+8|0;h=a+4|0;while(1){i=c[g>>2]|0;e=c[h>>2]|0;i=i-(e>>>0>i>>>0?i:e)|0;if(!i)e=0;else e=(c[a>>2]|0)+e|0;c[f>>2]=d;e=gr(e,i,b,f)|0;if((e|0)<1)break;if(e>>>0<i>>>0){j=7;break}if(ir(a,e)|0){j=7;break}}if((j|0)==7)uG(a,e);Nb=k;return}function Pt(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=f+(H(e,-3)|0)|0;while(1){if(b>>>0>=g>>>0)break;a[b>>0]=a[c>>0]|0;h=c+d|0;i=b+e|0;a[i>>0]=a[h>>0]|0;h=h+d|0;i=i+e|0;a[i>>0]=a[h>>0]|0;h=h+d|0;i=i+e|0;a[i>>0]=a[h>>0]|0;b=i+e|0;c=h+d|0}while(1){if(b>>>0>=f>>>0)break;a[b>>0]=a[c>>0]|0;b=b+e|0;c=c+d|0}return}function Qt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=c[a>>2]|0;h=a+4|0;JV(h)|0;i=a+32|0;yb(i|0)|0;j=g+104|0;b=a+84|0;d=g+24|0;e=g+100|0;f=g+52|0;while(1){c[b>>2]=1;a=1;while(1){if(!a)break;zb(i|0,h|0)|0;a=c[b>>2]|0}if(c[j>>2]|0)break;if(fx(g)|0){JV(d)|0;c[e>>2]=1;yb(f|0)|0;JV(d)|0}}JV(h)|0;return 0}function Rt(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0,l=0;l=0;j=0.0;while(1){if((l|0)>=(g|0))break;e=a+(l<<3)|0;k=a+(l<<3)+4|0;d=d+1&511;h=+f[b+(l<<2)>>2];if(h!=0.0){i=-h;h=j*h}else{h=+f[c+(l<<2)>>2];i=h*+f[44400+(d<<3)>>2];h=h*+f[44400+(d<<3)+4>>2]}h=+f[k>>2]+h;f[e>>2]=+f[e>>2]+i;f[k>>2]=h;l=l+1|0;j=-j}return}function St(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Tt(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0,l=0;l=0;j=0.0;while(1){if((l|0)>=(g|0))break;e=a+(l<<3)|0;k=a+(l<<3)+4|0;d=d+1&511;h=+f[b+(l<<2)>>2];if(h!=0.0){i=h;h=j*h}else{h=+f[c+(l<<2)>>2];i=h*+f[44400+(d<<3)>>2];h=h*+f[44400+(d<<3)+4>>2]}h=+f[k>>2]+h;f[e>>2]=+f[e>>2]+i;f[k>>2]=h;l=l+1|0;j=-j}return}function Ut(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if(i>>>0>=16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else tw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;Ye(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function Vt(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if(i>>>0>=16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else Cw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;Ze(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function Wt(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if(i>>>0>=16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else Dw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;_e(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function Xt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==13)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+8|0;c=c+e|0}return}function Yt(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;l=Nb;Nb=Nb+16|0;k=l;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;m=i+1|0;c[f>>2]=m;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=m}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;mx(g,16,196403,k);h=-1094995529}}else h=-11;Nb=l;return h|0}function Zt(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else Pw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;Tj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function _t(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else Uw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;Vj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function $t(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else Vw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;Wj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function au(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if(i>>>0>=16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else Fw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;af(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;a:do if(b){f=c[a+260>>2]|0;if(!(c[a+272>>2]|0)){e=a+264|0;d=0;while(1){if((d|0)>=(f|0))break a;g=(c[b>>2]|0)+(H(c[e>>2]|0,d)|0)|0;c[a+(d<<2)>>2]=g;d=d+1|0}}else{d=0;while(1){if((d|0)>=(f|0))break a;c[a+(d<<2)>>2]=c[b+(d<<2)>>2];d=d+1|0}}}else jq(a|0,0,256)|0;while(0);return}function cu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=f+(H(e,-3)|0)|0;while(1){if(a>>>0>=g>>>0)break;c[a>>2]=c[b>>2];h=b+d|0;i=a+e|0;c[i>>2]=c[h>>2];h=h+d|0;i=i+e|0;c[i>>2]=c[h>>2];h=h+d|0;i=i+e|0;c[i>>2]=c[h>>2];a=i+e|0;b=h+d|0}while(1){if(a>>>0>=f>>>0)break;c[a>>2]=c[b>>2];a=a+e|0;b=b+d|0}return}function du(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[88688+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else Yw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;Xj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function eu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,h=0,i=0;g=Nb;Nb=Nb+144|0;e=g;jq(e|0,0,144)|0;i=e+4|0;c[i>>2]=a;h=e+8|0;c[h>>2]=-1;c[e+44>>2]=a;c[e+76>>2]=-1;sw(e,0,0);f=+Ud(e,d,1);e=e+120|0;d=(c[i>>2]|0)-(c[h>>2]|0)|0;d=kP(c[e>>2]|0,c[e+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;e=M()|0;if(b|0)c[b>>2]=(d|0)==0&(e|0)==0?a:a+d|0;Nb=g;return +f}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;d=g;e=c[a>>2]|0;f=c[e>>2]|0;c[d>>2]=f;if(!b)zM(a);else{a=c[b>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];zM(b)}e=f+8|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)==1){f=c[d>>2]|0;fc[c[f+12>>2]&255](c[f+16>>2]|0,c[f>>2]|0);zM(d)}Nb=g;return}function gu(a,b){a=+a;b=b|0;var d=0,e=0,f=0;g[h>>3]=a;d=c[h>>2]|0;e=c[h+4>>2]|0;f=GN(d|0,e|0,52)|0;M()|0;switch(f&2047){case 0:{if(a!=0.0){a=+gu(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[h>>2]=d;c[h+4>>2]=e&-2146435073|1071644672;a=+g[h>>3]}}return +a}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;h=i;d=a+28|0;if((NL(d)|0)==0?(f=Yz(d,6)|0,e=a+48|0,c[e>>2]=f,f=Yz(d,6)|0,g=(Yz(d,3)|0)+-1|0,c[a+52>>2]=g,(g|0)>=0):0){e=c[e>>2]|0;a=Mn(e)|0;c[h>>2]=e;c[h+4>>2]=a;c[h+8>>2]=f;c[h+12>>2]=g;mx(b,48,196157,h);a=(f|0)==0&1}else a=-1094995529;Nb=i;return a|0}function iu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;b=(c[d+848>>2]|0)+48+(H(c[(c[b+28200>>2]|0)+1184>>2]|0,-6)|0)|0;b=(b|0)<51?b:51;b=(b|0)>0?b:0;if((c[d+840>>2]|0)==1)f=86640;else f=80496+(c[d+33928>>2]<<11)|0;e=0;while(1){if((e|0)==1024)break;g=(H(b,a[f+(e<<1)>>0]|0)|0)>>4;g=(g+(a[f+(e<<1)+1>>0]|0)<<1)+-127|0;g=g>>31^g;a[d+32904+e>>0]=(g|0)>124?g&1|124:g;e=e+1|0}return}function ju(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;h=i+8|0;g=i;if((f|0)>=1?!((f|0)>12|(f+-8|0)>>>0<3):0){g=a[43792+f>>0]|0;c[e>>2]=g;Bk(d|0,43808+((f+-1|0)*15|0)|0,g*3|0)|0;if((f|0)==7?(c[b+672>>2]|0)<1:0){c[h>>2]=1;mx(b,32,189413,h);a[d+8>>0]=2;b=0}else b=0}else{c[g>>2]=f;mx(b,16,189369,g);b=-1094995529}Nb=i;return b|0}function ku(a){a=a|0;if((a|0)<=92016)if((a|0)<=75131)if((a|0)<=55425)if((a|0)<=46008)if((a|0)<=37565)if((a|0)<=27712)if((a|0)<=23003)if((a|0)<=18782)if((a|0)>13855)a=8;else return ((a|0)>11501?9:(a|0)>9390?10:11)|0;else a=7;else a=6;else a=5;else a=4;else a=3;else a=2;else a=1;else a=0;return a|0}function lu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)!=0;if(f){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0}e=0;while(1){if((e|0)==4)break;g=c[d+16+(e<<5)+4>>2]|0;h=d+16+(e<<5)|0;i=a+(c[h>>2]<<2)|0;if((g|0)>(c[i>>2]|0)?(c[i>>2]=g,f):0)c[b+(c[h>>2]<<2)>>2]=e;e=e+1|0}return}function mu(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=uN(b+1023|0,0,52)|0;e=M()|0;c[h>>2]=d;c[h+4>>2]=e;return +(a*+g[h>>3])}function nu(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;f=c[a+27e3>>2]|0;g=(H(f,c[b+21792>>2]|0)|0)+(c[b+21788>>2]|0)|0;h=c[a+26356>>2]|0;d=g+-1|0;i=c[b+832>>2]|0;if((i|0)!=(e[h+(d<<1)>>1]|0|0)){d=g-f|0;if((i|0)==(e[h+(d<<1)>>1]|0|0))j=3;else d=0}else j=3;if((j|0)==3)d=(c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&1;c[b+21828>>2]=d;c[b+21832>>2]=d;return}function ou(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b[a>>1]|0;j=a+32|0;e=b[j>>1]|0;g=a+64|0;h=b[g>>1]|0;d=a+96|0;k=b[d>>1]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;k=(H(h+i|0,c)|0)>>>7&65535;b[a>>1]=k;a=(H(e+f|0,c)|0)>>>7&65535;b[j>>1]=a;a=(H(i-h|0,c)|0)>>>7&65535;b[g>>1]=a;c=(H(f-e|0,c)|0)>>>7&65535;b[d>>1]=c;return}function pu(a){a=a|0;var b=0,d=0,e=0;c[a+256>>2]=c[a>>2];b=1;d=a+4|0;e=65;while(1){c[a+(e<<2)>>2]=c[d>>2];if(b>>>0>=31)break;e=b<<1;c[a+(e+64<<2)>>2]=c[a+(64-b<<2)>>2]^-2147483648;c[a+(e+65<<2)>>2]=c[a+(b+1<<2)>>2];c[a+(e+66<<2)>>2]=c[a+(63-b<<2)>>2]^-2147483648;d=b+2|0;b=d;d=a+(d<<2)|0;e=e+67|0}c[a+504>>2]=c[a+132>>2]^-2147483648;c[a+508>>2]=c[a+128>>2];return}function qu(a){a=+a;var b=0,d=0;g[h>>3]=a;d=c[h+4>>2]|0;b=d&2147483647;c[h>>2]=c[h>>2];c[h+4>>2]=b;a=+g[h>>3];do if(b>>>0>1071748074)if(b>>>0>1077149696){a=1.0-0.0/a;break}else{a=1.0-2.0/(+qg(a*2.0)+2.0);break}else{if(b>>>0>1070618798){a=+qg(a*2.0);a=a/(a+2.0);break}if(b>>>0>1048575){a=+qg(a*-2.0);a=-a/(a+2.0)}}while(0);return +((d|0)<0?-a:a)}function ru(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;if(b|0){c[a>>2]=c[b>>2];c[a+4>>2]=b+4;d=0;while(1){if((d|0)==2)break;c[a+8+(d<<2)>>2]=c[b+36+(d<<2)>>2];c[a+16+(d<<2)>>2]=c[b+68+(d<<2)>>2];d=d+1|0}c[a+24>>2]=c[b+48>>2];c[a+28>>2]=c[b+636>>2]}return}function su(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0.0,m=0.0,n=0;d=0;j=1;while(1){g=j>>>1;if((d|0)>=(b|0))break;h=-+f[a+(d<<2)>>2];f[c+(d<<2)>>2]=h;i=d+-1|0;e=0;while(1){if((e|0)==(g|0))break;n=c+(e<<2)|0;l=+f[n>>2];k=c+(i-e<<2)|0;m=+f[k>>2];f[n>>2]=l+m*h;f[k>>2]=m+l*h;e=e+1|0}d=d+1|0;j=j+1|0}return}function tu(a){a=a|0;var b=0,d=0,e=0,f=0;d=c[a+60>>2]|0;b=0;while(1){if((b|0)==16)break;a=0;while(1){if((a|0)==4)break;e=d+492+(a<<6)+(b<<2)|0;f=c[e>>2]|0;if(f|0)tT(f+156512|0);zM(e);a=a+1|0}b=b+1|0}rU(d+5120|0);rU(d+5188|0);rU(d+5256|0);rU(d+5324|0);OM(d+5392|0);OM(d+5396|0);OM(d+5400|0);zM(d+5404|0);return 0}function uu(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if(d>>>0>=8){e=6;break}if(!(hz(c[92912+(d*12|0)>>2]|0,b)|0)){e=4;break}d=d+1|0}if((e|0)==4){b=92912+(d*12|0)+4|0;e=c[b+4>>2]|0;d=a;c[d>>2]=c[b>>2];c[d+4>>2]=e;d=0}else if((e|0)==6){d=$q(a,b,1001e3,64,0)|0;if((d|0)>=0)if((c[a>>2]|0)<1)d=-22;else return ((c[a+4>>2]|0)<1?-22:0)|0}return d|0}function vu(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=d&-2;d=h*3|0;f=oK(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function wu(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=5;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=5;break}}}while(0);if((e|0)==5){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;g=h;d=up(g,c[a+16>>2]|0,b,c[a+20>>2]|0,1)|0;a:do if((d|0)>=0){f=a+4|0;e=0;while(1){if((e|0)>=(c[f>>2]|0))break;d=ls(c[(c[a>>2]|0)+(e<<2)>>2]|0,c[g>>2]|0)|0;if((d|0)<0)break a;else e=e+1|0}c[a+12>>2]=b;d=0}while(0);Nb=h;return d|0}function yu(a){a=a|0;var b=0,c=0,d=0;d=a+32856|0;if(!(Vu(d,a+32940|0)|0))a=0;else{do if(!(Vu(d,a+32941|0)|0)){b=Vu(d,a+32943|0)|0;a=1}else{c=a+32943|0;if(Vu(d,a+32942|0)|0)if(!(Vu(d,c)|0))a=7;else{b=Vu(d,c)|0;a=11;break}else a=3;b=((Vu(d,c)|0)<<1)+a|0;a=Vu(d,c)|0}while(0);a=b+a|0}return a|0}function zu(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=21328+(0-(d[b+~e>>0]|0))|0;f=b+(0-e)|0;g=f+1|0;h=f+2|0;i=f+3|0;c=b;b=0;while(1){if((b|0)==4)break;k=j+(d[c+-1>>0]|0)|0;a[c>>0]=a[k+(d[f>>0]|0)>>0]|0;a[c+1>>0]=a[k+(d[g>>0]|0)>>0]|0;a[c+2>>0]=a[k+(d[h>>0]|0)>>0]|0;a[c+3>>0]=a[k+(d[i>>0]|0)>>0]|0;c=c+e|0;b=b+1|0}return}function Au(a,b){a=a|0;b=b|0;gb(3317,1);Ja(33984);Ma(3553,c[a+28>>2]|0);ib(3553,0,6409,c[b+8>>2]|0,c[b+20>>2]|0,0,6409,5121,c[b+32>>2]|0);Ja(33985);Ma(3553,c[a+32>>2]|0);ib(3553,0,6409,c[b+12>>2]|0,c[b+24>>2]|0,0,6409,5121,c[b+36>>2]|0);Ja(33986);Ma(3553,c[a+36>>2]|0);ib(3553,0,6409,c[b+16>>2]|0,c[b+28>>2]|0,0,6409,5121,c[b+40>>2]|0);return}function Bu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[a>>2]|0;a:do switch(d|0){case 11:case 20:{a=0;while(1){if((a|0)>=(e|0))break a;_j(g+(a*34|0)|0,b+(a*34|0)|0,f);a=a+1|0}}case 5:case 10:{a=0;while(1){if((a|0)>=(e|0))break a;Zk(g+(a*34|0)|0,b+(a*34|0)|0,f);a=a+1|0}}default:c[a>>2]=b}while(0);return}function Cu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[a>>2]|0;a:do switch(d|0){case 17:case 34:{a=0;while(1){if((a|0)>=(e|0))break a;bl(g+(a*34|0)|0,b+(a*34|0)|0,f);a=a+1|0}}case 5:case 10:{a=0;while(1){if((a|0)>=(e|0))break a;rG(g+(a*34|0)|0,b+(a*34|0)|0,f);a=a+1|0}}default:c[a>>2]=b}while(0);return}function Du(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Eu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=iP(j^a|0,i^b|0,j|0,i|0)|0;g=M()|0;a=f^j;b=e^i;return iP((Le(h,g,iP(f^c|0,e^d|0,f|0,e|0)|0,M()|0,0)|0)^a|0,(M()|0)^b|0,a|0,b|0)|0}function Fu(a,b,d){a=a|0;b=b|0;d=d|0;d=c[a+976>>2]|0;a:do if(!d){d=Be(a,b)|0;if((d|0)>=0)switch(c[a+8>>2]|0){case 0:{d=yj(a,b)|0;break a}case 1:{d=Hi(a,b)|0;break a}default:{d=-1;break a}}}else{d=zm(d,b,0)|0;c[b+68>>2]=c[a+132>>2];c[b+72>>2]=c[a+136>>2]}while(0);return d|0}function Gu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a:do if((px(a,b)|0)>(c|0)){f=0;e=c;while(1){if(f>>>0>=64){d=0;c=0;break a}c=uN(1,0,f|0)|0;d=M()|0;if(!((c&a|0)==0&(d&b|0)==0))if(!e)break a;else c=e+-1|0;else c=e;f=f+1|0;e=c}}else{d=0;c=0}while(0);L(d|0);return c|0}function Hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=Nb;Nb=Nb+16|0;e=f;do if((NS(a)|0)>=112?(ER(a)|0)==1095521024:0){d=ER(a)|0;c[b+8>>2]=d;if((d|0)<1){c[e>>2]=d;mx(0,16,200944,e);a=-1094995529;break}else{JK(a,32);c[b+12>>2]=0;a=(Yz(a,16)|0)+1|0;c[b+36>>2]=a;a=0;break}}else a=-1094995529;while(0);Nb=f;return a|0}function Iu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[d+74176>>2]|0;e=d+17856|0;g=b+1024|0;hc[c[b+5164>>2]&1023](b+5256|0,g,d+13760|0);if(!(a[d+13>>0]|0))kc[c[(c[b+5404>>2]|0)+20>>2]&127](f,e,g,216896,256);else{Bk(f|0,e|0,768)|0;kc[c[(c[b+5404>>2]|0)+20>>2]&127](f+768|0,d+18624|0,g,215360,64);Bk(f+1280|0,b+1280|0,768)|0}Bk(e|0,b+2048|0,1024)|0;return}function Ju(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=b+8|0;k=i;f=c[k>>2]|0;k=kP(f|0,c[k+4>>2]|0,e|0,0)|0;j=M()|0;c[i>>2]=k;c[i+4>>2]=j;i=b+112|0;j=b+80|0;k=b+16|0;f=f&63;h=0;while(1){if((h|0)==(e|0))break;g=f+1|0;a[b+16+f>>0]=a[d+h>>0]|0;if((g|0)==64){fc[c[i>>2]&255](j,k);f=0}else f=g;h=h+1|0}return}function Ku(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=b+(wu(b)|0)|0;g=0;c=0;while(1){if(b>>>0>=h>>>0){b=g;break}d=b;a:while(1){if(d>>>0>=h>>>0)break;switch(a[d>>0]|0){case 124:case 43:break a;default:{}}d=d+1|0}e=_k(b,d-b|0)|0;f=M()|0;if((e|0)==0&(f|0)==0){c=0;b=0;break}b=d+1|0;g=e|g;c=f|c}L(c|0);return b|0}function Lu(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function Mu(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0;g=d>>1;f=oK(((e[a+(0-g<<1)>>1]|0)+2+(e[a+(1-g<<1)>>1]|0)+(e[a+(2-g<<1)>>1]|0)+(e[a+(3-g<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=M()|0;h=a;c[h>>2]=f;c[h+4>>2]=b;h=a+(g<<1)|0;c[h>>2]=f;c[h+4>>2]=b;d=a+((d&-2)<<1)|0;c[d>>2]=f;c[d+4>>2]=b;d=a+(g*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Nu(b,d){b=b|0;d=d|0;var e=0;if(!(c[d+21740>>2]|0))e=0;else e=(a[(c[b+26380>>2]|0)+(c[d+21720>>2]|0)>>0]|0)!=0&1;if(c[d+21732>>2]|0)e=e+((a[(c[b+26380>>2]|0)+(c[d+21712>>2]|0)>>0]|0)!=0&1)|0;b=d+32856|0;if(Vu(b,e+64+(d+32904)|0)|0){e=d+32971|0;if(!(Vu(b,e)|0))e=1;else{e=(Vu(b,e)|0)==0;e=e?2:3}}else e=0;return e|0}function Ou(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;k=(H(h+i|0,b)|0)>>7;c[a>>2]=k;a=(H(e+f|0,b)|0)>>7;c[j>>2]=a;a=(H(i-h|0,b)|0)>>7;c[g>>2]=a;b=(H(f-e|0,b)|0)>>7;c[d>>2]=b;return}function Pu(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Qu(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function Ru(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function Su(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[1079616+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[1079616+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[1079616+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Tu(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;c[b>>2]=a;c[b+1408>>2]=b+384;c[b+1412>>2]=b+896;Et(b+4|0,0);Mm(b+292|0,8,1,1.0)|0;d=ED(c[a+92>>2]&8388608)|0;c[b+288>>2]=d;if(!d)a=-12;else{f[b+284>>2]=3.814697265625e-06;c[a+424>>2]=3;if(!(+f[53967]!=0.0))YS(7);c[a+420>>2]=1;a=a+448|0;c[a>>2]=4;c[a+4>>2]=0;a=0}return a|0}function Uu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==16)break;g=a+((H(f,b)|0)+-1)|0;e=e+(d[g>>0]|0)|0;f=f+1|0}f=0;while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=H((e+16|0)>>>5,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Vu(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[79312+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[79952+f>>0]|0;h=c[g>>2]|0;e=d[78800+h>>0]|0;c[g>>2]=h<<e;e=c[b>>2]<<e;c[b>>2]=e;if(!(e&65535))TI(b);return f&1|0}function Wu(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function Xu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Nb;Nb=Nb+16|0;f=h;e=0;while(1){if(e>>>0>=28){g=6;break}if((c[91056+(e*12|0)>>2]|0)==(a|0)){g=5;break}e=e+1|0}if((g|0)==5){CD(b,c[91056+(e*12|0)+8>>2]|0,d)|0;e=0}else if((g|0)==6){g=rE(0-a|0,b,d)|0;e=0-g|0;if((g|0)>0){c[f>>2]=a;MM(b,d,202261,f)|0}}Nb=h;return e|0}function Yu(a){a=a|0;c[a+13380>>2]=0;c[a+13384>>2]=0;c[a+13388>>2]=0;jq(a+11140|0,0,256)|0;jq(a+12260|0,0,256)|0;DT(a+11420|0);DT(a+11700|0);DT(a+11980|0);DT(a+12540|0);DT(a+12820|0);DT(a+13100|0);DT(a+10480|0);DT(a+10760|0);OU(a+13432|0);OU(a+13436|0);OU(a+13440|0);WP(a);g[a+13424>>3]=0.0;c[a+13392>>2]=0;return}function Zu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;f=g;e=g+4|0;c[f>>2]=a;while(1){b=a+28|0;d=c[b>>2]|0;if(!d)break;c[e>>2]=d;c[b>>2]=c[d+16>>2];fc[c[d+8>>2]&255](c[d+4>>2]|0,c[d>>2]|0);zM(e);a=c[f>>2]|0}JV(a)|0;b=c[a+52>>2]|0;if(b|0)ec[b&31](c[a+40>>2]|0);zM(f);Nb=g;return}function _u(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=oK(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function $u(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=d[a+(0-e)>>0]|0;k=d[a+(1-e)>>0]|0;h=d[a+(2-e)>>0]|0;f=d[a+(3-e)>>0]|0;g=h+2|0;i=k+2|0;b=(g+j+(k<<1)|0)>>>2<<8|(i+(d[a+~e>>0]|0)+(j<<1)|0)>>>2|(i+(h<<1)+f|0)>>>2<<16|(g+(f<<1)+(d[b>>0]|0)|0)>>>2<<24;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function av(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+144|0;h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;sw(h,0,0);d=id(h,d,1,e,f)|0;e=M()|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+120>>2]|0)-(c[g>>2]|0));L(e|0);Nb=j;return d|0}function bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0.0,j=0,k=0.0;g=+(c|0);d=0;while(1){if((d|0)>=(c|0))break;h=(+(d|0)+.5)*6.283185307179586;e=0;while(1){if((e|0)==7)break;i=h*+(e+-6|0)/g;j=b+(e<<2)|0;k=+x(+i)*+f[j>>2];f[a+(d<<6)+(e<<3)>>2]=k;i=-(+y(+i)*+f[j>>2]);f[a+(d<<6)+(e<<3)+4>>2]=i;e=e+1|0}d=d+1|0}return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=b+4|0;g=c[b>>2]|0;f=c[d>>2]|0;g=oK(f|0,((f|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;f=M()|0;e=c[h>>2]|0;d=c[d+4>>2]|0;e=oK(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;Mf(b,h,g,f,e,M()|0,2147483647,0)|0;e=b;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function dv(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(H(h,g)|0)|0;j=e+(h<<2)|0;i=a+(H(h,f)|0)|0;l=c[i>>2]|0;j=IT(l,IT(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0)|0;c[i>>2]=j;h=h+1|0}return}function ev(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a+44>>2]|0;a=a+40|0;e=0;while(1){if((e|0)>=(f|0)){b=8;break}g=c[a>>2]|0;if((c[g+(e*12|0)+8>>2]|0)==(b|0)){b=4;break}e=e+1|0}if((b|0)==4){if(d|0)c[d>>2]=c[g+(e*12|0)+4>>2];a=c[g+(e*12|0)>>2]|0}else if((b|0)==8)if(!d)a=0;else{c[d>>2]=0;a=0}return a|0}function fv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(g=c[a>>2]|0,g|0):0){b=g+4|0;d=c[b>>2]|0;e=c[d+24>>2]|0;if(e){ec[e&31](g);d=c[b>>2]|0}b=g+12|0;if(c[d+8>>2]|0?(f=c[b>>2]|0,f|0):0)CE(f);CE(g);f=g+8|0;fQ(c[f>>2]|0);zM(f);zM(b);ZP(g+16|0);ZP(g+20|0);zM(a)}return}function gv(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;g=a;i=b;h=i;i=i+4|0;i=fJ(c[g>>2]|0,c[g+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=M()|0;g=a;c[g>>2]=i;c[g+4>>2]=h;f=f+1|0;a=a+e|0;b=b+e|0}return}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=xc(b)|0;return b|0}if(b>>>0>4294967231){b=PV()|0;c[b>>2]=12;b=0;return b|0}d=We(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=xc(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Bk(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;qd(a);b=d;return b|0}function iv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;f=j;g=d+8|0;h=c[g>>2]|0;do if((a[h>>0]|0)==45){+vU(h,f);h=c[f>>2]|0;if(((h|0)!=(c[g>>2]|0)?(a[h>>0]|0)==100:0)?(a[h+1>>0]|0)==66:0){c[e>>2]=0;b=kd(b,d)|0;break}i=7}else i=7;while(0);if((i|0)==7)b=NI(b,d,e)|0;Nb=j;return b|0}function jv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0;h=a+(e<<2)|0;g=d+(e<<2)|0;b=b+(e<<2)|0;d=0-e|0;a=e;while(1){a=a+-1|0;if((d|0)>=0)break;l=+f[b+(d<<2)>>2];j=+f[c+(a<<2)>>2];k=+f[g+(d<<2)>>2];i=+f[g+(a<<2)>>2];f[h+(d<<2)>>2]=l*i-j*k;f[h+(a<<2)>>2]=l*k+j*i;d=d+1|0}return}function kv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=c[(c[a+64>>2]|0)+20>>2]|0;if((c[a+808>>2]&2|0)!=0?(c[a+800>>2]|0)>=2:0)if((f|0)<1)a=0;else{c[h+24>>2]=g;c[h+16>>2]=d;c[h+4>>2]=b;c[h+20>>2]=e;_m(c[h>>2]|0,f,(c[h+12>>2]|0)!=0&1);a=0}else a=fD(a,b,d,e,f,g)|0;return a|0}function lv(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);e=b+3|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=b<<8|c&255;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-3|0)|0}function mv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;iy(a);d=0;while(1){if((d|0)>=(b|0))break;e=c[a>>2]|0;f=e+(d*352|0)+300|0;if(c[f>>2]|0){g=e+(d*352|0)+184|0;JV(g)|0;h=e+(d*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;zb(h|0,g|0)|0}JV(g)|0}c[e+(d*352|0)+292>>2]=0;d=d+1|0}IJ(a);return}function nv(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Zb[c[b+36>>2]&15](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function ov(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=H((f+2|0)>>>2,16843009)|0;f=H((h+2|0)>>>2,16843009)|0;e=0;while(1){if((e|0)==16)break;j=a+(H(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function pv(b,e){b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((d[158224+f>>0]|0)==(b|0)){g=4;break}f=f+1|0;if((f|0)==87){b=87;g=5;break}}if((g|0)==4)if(!f)f=158320;else{b=f;g=5}if((g|0)==5){f=158320;do{do{g=f;f=f+1|0}while((a[g>>0]|0)!=0);b=b+-1|0}while((b|0)!=0)}return qU(f,c[e+20>>2]|0)|0}function qv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=Nb;Nb=Nb+16|0;d=f;e=c[a+64>>2]|0;if(c[b+248>>2]|0){c[d>>2]=166493;c[d+4>>2]=166508;c[d+8>>2]=633;mx(0,0,214689,d);ba()}d=c[(c[a+12>>2]|0)+104>>2]|0;if(!d)d=cM(a,b)|0;else d=Yb[d&15](a,b)|0;if((d|0)==-541478725)c[e+80>>2]=1;Nb=f;return d|0}function rv(a){a=a|0;var b=0,d=0,e=0;if(a|0){wJ(a);b=0;while(1){if((b|0)==8)break;nT(a+248+(b<<2)|0);b=b+1|0}d=a+284|0;e=a+280|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;nT((c[e>>2]|0)+(b<<2)|0);b=b+1|0}zM(e);HC(a+344|0);nT(a+372|0);nT(a+376|0);nT(a+380|0);Iq(a)}return}function sv(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;a[c+3>>0]=j+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function tv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=LV(a)|0;d=(b|0)==0;a=0;b=1136344;while(1){b=c[b>>2]|0;if(!b)break;if(d){if(wO(b)|0)f=6}else if(UM(b)|0)f=6;if((f|0)==6){f=0;if((c[b+12>>2]|0)==(e|0))if(a|0?1:(c[b+16>>2]&512|0)==0){a=b;break}else a=b}b=b+56|0}return a|0}function uv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=Nb;Nb=Nb+48|0;h=i+32|0;g=i+24|0;f=i+16|0;e=i;c[e>>2]=d;if(!(b&64))e=0;else{j=(c[e>>2]|0)+(4-1)&~(4-1);d=c[j>>2]|0;c[e>>2]=j+4;e=d}c[f>>2]=e;e=At(a,b|524288,f)|0;if((e|0)!=-1?(c[g>>2]=1,(xg(e,2,g)|0)==-1):0)mx(0,48,210063,h);Nb=i;return e|0}function vv(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function wv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;f=g;do if((c[(c[a>>2]|0)+48>>2]|0)==28)if(!(c[a+788>>2]|0)){c[f>>2]=195808;c[f+4>>2]=195778;c[f+8>>2]=48;mx(0,0,214689,f);ba()}else{c[b>>2]=4;e=c[a+556>>2]<<2;break}else{c[b>>2]=2;e=c[a+568>>2]|0}while(0);c[d>>2]=e;Nb=g;return}function xv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){if((g|0)>=(f|0))break;h=IT(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;c[a>>2]=h;h=a+4|0;i=b+4|0;i=IT(c[h>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=Nb;Nb=Nb+32|0;h=g+8|0;f=g;c[h>>2]=c[a+60>>2];c[h+4>>2]=d;c[h+8>>2]=b;c[h+12>>2]=f;c[h+16>>2]=e;if((NP(P(140,h|0)|0)|0)<0){a=f;c[a>>2]=-1;c[a+4>>2]=-1;a=-1;b=-1}else{b=f;a=c[b+4>>2]|0;b=c[b>>2]|0}L(a|0);Nb=g;return b|0}function zv(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;g=a+16|0;c[a+12>>2]=b;c[a+20>>2]=b+e;h=b+1|0;c[g>>2]=h;f=(d[b>>0]|0)<<18;c[a>>2]=f;e=b+2|0;c[g>>2]=e;f=(d[h>>0]|0)<<10|f;c[a>>2]=f;if(!(e&1))e=512;else{c[g>>2]=b+3;e=(d[e>>0]|0)<<2|2}h=e|f;c[a>>2]=h;c[a+4>>2]=510;return ((h|0)>66846720?-1094995529:0)|0}function Av(a){a=+a;var b=0.0,d=0,e=0.0;g[h>>3]=a;d=c[h+4>>2]|0;e=(d|0)<0?-.5:.5;d=d&2147483647;c[h>>2]=c[h>>2];c[h+4>>2]=d;b=+g[h>>3];do if(d>>>0<1082535490){b=+qg(b);if(d>>>0>=1072693248){a=e*(b+b/(b+1.0));break}if(d>>>0>=1045430272)a=e*(b*2.0-b*b/(b+1.0))}else a=e*2.0*+xS(b);while(0);return +a}function Bv(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function Cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=Nb;Nb=Nb+16|0;e=f;c[e>>2]=1-(((b|0)!=0&1)<<1);c[e+4>>2]=1-(((d|0)!=0&1)<<1);c[e+8>>2]=1;a:do if(d|b|0){b=0;while(1){if((b|0)==9)break a;d=a+(b<<2)|0;g=H(c[d>>2]|0,c[e+(((b>>>0)%3|0)<<2)>>2]|0)|0;c[d>>2]=g;b=b+1|0}}while(0);Nb=f;return}function Dv(a){a=a|0;var b=0,d=0,e=0,f=0;f=Nb;Nb=Nb+48|0;e=f+32|0;d=f;if(!(hz(a,209172)|0))b=207491;else{b=(hz(a,209178)|0)==0;b=b?207481:a}a=jE(b)|0;if((a|0)==-1){c[e>>2]=b;c[e+4>>2]=209189;MM(d,32,209184,e)|0;a=jE(d)|0;if((a|0)==-1){e=(hz(b,209192)|0)==0;Nb=f;return (e?53:-1)|0}}Nb=f;return a|0}function Ev(a){a=a|0;var b=0,d=0;d=Nb;Nb=Nb+16|0;b=d;do if((c[a+112>>2]&1|0)==0?(c[a+76>>2]|0)!=0:0){if(!(c[284085]|0)){c[b>>2]=187269;c[b+4>>2]=185289;c[b+8>>2]=2026;mx(0,0,214689,b);ba()}c[284085]=0;RR(-1)|0;if(8?cq(1136352,2)|0:0){a=-1;break}a=0}else a=0;while(0);Nb=d;return a|0}function Fv(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:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(H(g,d)|0)|0;f=Yb[e&15](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function Gv(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;i=b+(H(h,g)|0)|0;j=e+(h<<2)|0;j=fJ(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0)|0;M()|0;i=a+(H(h,f)|0)|0;c[i>>2]=j;h=h+1|0}return}function Hv(a){a=+a;var b=0;g[h>>3]=a;b=c[h+4>>2]&2147483647;c[h>>2]=c[h>>2];c[h+4>>2]=b;a=+g[h>>3];do if(b>>>0<1072049730)if(b>>>0<1045430272)a=1.0;else{a=+qg(a);a=a*a/((a+1.0)*2.0)+1.0}else if(b>>>0<1082535490){a=+E(+a);a=(a+1.0/a)*.5;break}else{a=+xS(a);break}while(0);return +a}function Iv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e|0){a=22;return a|0}if((-64-b|0)>>>0<d>>>0){a=12;return a|0}else{b=ml(b>>>0>16?b:16,d)|0;break}}else b=xc(d)|0;while(0);if(!b){a=12;return a|0}c[a>>2]=b;a=0;return a|0}function Jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;ew(a);Bk(a|0,b|0,136)|0;f=a+12|0;c[f>>2]=0;d=a+16|0;c[d>>2]=0;e=b+12|0;if(c[e>>2]|0){b=b+16|0;a=rR((c[b>>2]|0)+32|0)|0;c[f>>2]=a;if(!a)a=-12;else{f=c[b>>2]|0;Bk(a|0,c[e>>2]|0,f|0)|0;c[d>>2]=f;a=0}}else a=0;return a|0}function Kv(a,b){a=a|0;b=b|0;var e=0.0,g=0,h=0,i=0,j=0.0;h=c[a+310120>>2]|0;g=0;while(1){if((g|0)==(h|0))break;a=d[b+31+g>>0]|0;if(((d[b+36+g>>0]|0)+a|0)==1)e=.6000000238418579;else e=+f[51584+(a<<2)>>2];a=b+14572+(g<<2)|0;j=+f[a>>2];i=e<j;e=e*(i?.75:.90625)+j*(i?.25:.09375);f[a>>2]=e<.015625?0.0:e;g=g+1|0}return}function Lv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[d+4>>2]|0;if((e|0)>=1?(f=c[d>>2]|0,(f|0)>=0):0)if((f|0)==0|(f|0)==(e|0))a=0;else{g=(f|0)<(e|0);d=g?f:e;f=g?e:f;a=Re(g?a:b,0,d,((d|0)<0)<<31>>31,f,((f|0)<0)<<31>>31,0)|0;f=M()|0;a=(f|0)>0|(f|0)==0&a>>>0>0?0:-22}else a=-22;return a|0}function Mv(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c>>0]|0)<<8|(d[c+1>>0]|0);c=b+1|0;e=a[c>>0]|0;a:do if(!(e<<24>>24))c=0;else{e=(d[b>>0]|0)<<8|e&255;while(1){b=e&65535;if((b|0)==(f|0))break;c=c+1|0;e=a[c>>0]|0;if(!(e<<24>>24)){c=0;break a}else e=b<<8|e&255}c=c+-1|0}while(0);return c|0}function Nv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[d>>2]|0;g=c[e+4>>2]|0;h=oK(g|0,((g|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;g=M()|0;e=c[e>>2]|0;d=c[d+4>>2]|0;e=oK(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;f=Re(a,b,h,g,e,M()|0,f)|0;L(M()|0);return f|0}function Ov(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+64|0;d=c[(c[b>>2]|0)+20>>2]|0;tq(d);e=d+36|0;f=d+44|0;g=d+40|0;a=0;while(1){if((a|0)>=(c[e>>2]|0))break;JV((c[f>>2]|0)+(a*28|0)|0)|0;wb((c[g>>2]|0)+(a*48|0)|0)|0;a=a+1|0}zM(d+28|0);zM(f);zM(g);zM((c[b>>2]|0)+20|0);return}function Pv(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-2|0)|0}function Qv(a,b){a=a|0;b=b|0;var d=0;do if((c[a+80>>2]|0)>=0){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=oi(a,b)|0;break}if((c[a+76>>2]|0)>0){d=a+240|0;if((c[d>>2]|0)==0&(c[d+4>>2]|0)==0?(c[a+352>>2]|0)<=0:0){a=-22;break}a=Ri(a,b)|0}else a=-22}else a=-22;while(0);return a|0}function Rv(b){b=b|0;var c=0,d=0,f=0;c=a[b+4>>0]|0;if(!(c<<24>>24))c=0;else{f=c&255;d=0;c=0;do{c=c+4+(e[b+8+(d<<3)>>1]|0)|0;d=d+1|0}while(d>>>0<f>>>0)}d=a[b+5>>0]|0;if(d<<24>>24){f=d&255;d=0;do{c=c+4+(e[b+264+(d<<3)>>1]|0)|0;d=d+1|0}while(d>>>0<f>>>0)}return c|0}function Sv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];d=a+12|0;e=(c[b>>2]|0)+32|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[a+24>>2]=c[b+640>>2];c[a+28>>2]=c[b+84>>2];c[a+32>>2]=c[b+96>>2];c[a+36>>2]=b;return}function Tv(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==4)break;i=b+(H(h,g)|0)|0;j=e+(h<<2)|0;j=IT(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(H(h,f)|0)|0;c[i>>2]=j;h=h+1|0}return}function Uv(a){a=a|0;var b=0,d=0;d=c[a+60>>2]|0;a=d+28588|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));Ns(d);ZI(d+29660|0);a=0;while(1){if((a|0)==36)break;Tw(d,d+696+(a*656|0)|0);a=a+1|0}c[d+24312>>2]=0;Tw(d,d+24316|0);c[d+26988>>2]=0;so(d);c[d+25680>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Wv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;e=c[d+(e<<2)>>2]|0;g=((e|0)<0)<<31>>31;d=0;while(1){if((d|0)>=(f|0))break;h=c[b+(d<<2)>>2]|0;h=oK(h|0,((h|0)<0)<<31>>31|0,e|0,g|0)|0;h=kP(h|0,M()|0,16384,0)|0;h=GN(h|0,M()|0,15)|0;M()|0;c[a+(d<<2)>>2]=h;d=d+1|0}return}function Xv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((H(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Yv(a,d,e,f,g,h,i){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=c[f+(g<<2)>>2]|0;f=c[f+(h<<2)>>2]|0;g=0;while(1){if((g|0)>=(i|0))break;k=H(j,b[d+(g<<1)>>1]|0)|0;k=k+16384+(H(f,b[e+(g<<1)>>1]|0)|0)|0;h=k>>15;b[a+(g<<1)>>1]=(h+32768|0)>>>0>65535?k>>31^32767:h;g=g+1|0}return}function Zv(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function _v(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[40554]|0;if((c[f+76>>2]|0)>-1)g=NV(f)|0;else g=0;do if((wQ(b,f)|0)<0)b=-1;else{if((a[f+75>>0]|0)!=10?(d=f+20|0,e=c[d>>2]|0,e>>>0<(c[f+16>>2]|0)>>>0):0){c[d>>2]=e+1;a[e>>0]=10;b=0;break}b=(ws(f,10)|0)>>31}while(0);if(g|0)MV(f);return b|0}function $v(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)>=(f|0))break;g=0;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function aw(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;c=c+7|0;if(c>>>0>4095|f>>>0<7)c=-1;else{a[e>>0]=-1;a[e+1>>0]=-15;f=b+2|0;a[e+2>>0]=((d[b>>0]|0)<<6)+192|a[b+1>>0]<<2&60|(d[f>>0]|0)>>>2&1;a[e+3>>0]=c>>>11&3|a[f>>0]<<6&255;a[e+4>>0]=c>>>3;a[e+5>>0]=c<<5|31;a[e+6>>0]=c>>>10|252;c=7}return c|0}function bw(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)>=(f|0))break;g=0;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function cw(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[a+60>>2]|0;a=3;while(1){if((a|0)<=-1)break;d=0;while(1){if((d|0)==16)break;f=c[e+492+(a<<6)+(d<<2)>>2]|0;a:do if(f|0){b=0;while(1){if((b|0)==2)break a;jq(f+288+(b*74208|0)+17856|0,0,6144)|0;b=b+1|0}}while(0);d=d+1|0}a=a+-1|0}return}function dw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=(aQ(f)|0)!=0;h=i?e:1;g=bQ(f)|0;e=H(i?1:e,g)|0;g=H(e,d)|0;b=H(e,b)|0;e=(f|0)==0|(f|0)==5?-128:0;d=0;while(1){if((d|0)>=(h|0))break;jq((c[a+(d<<2)>>2]|0)+b|0,e|0,g|0)|0;d=d+1|0}return 0}function ew(a){a=a|0;var b=0,d=0;zM(a+12|0);b=a+8|0;d=b+128|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a>>2]=-1;c[a+4>>2]=0;c[a+20>>2]=-1;c[a+64>>2]=0;c[a+68>>2]=0;c[a+72>>2]=2;c[a+76>>2]=2;c[a+80>>2]=2;c[a+84>>2]=0;c[a+56>>2]=0;c[a+60>>2]=1;c[a+40>>2]=-99;c[a+44>>2]=-99;return}function fw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[(c[a+64>>2]|0)+20>>2]|0;e=c[g+4>>2]|0;if(!e)f=_b[c[g+8>>2]&7](a,c[g+16>>2]|0,b,d)|0;else{f=(c[g+16>>2]|0)+(H(c[g+24>>2]|0,b)|0)|0;f=Yb[e&15](a,f)|0}e=c[g+20>>2]|0;if(e|0)c[e+(b<<2)>>2]=f;return}function gw(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+6472|0;d=a+6728|0;if((c[d>>2]|0)!=4?c[a+6464>>2]|0:0){Bk(b|0,a+6208|0,264)|0;b=c[a+4>>2]|0;c[b+420>>2]=c[a+6716>>2];f=a+6720|0;e=c[f+4>>2]|0;b=b+448|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;eh(a,a+6520|0,c[a+6712>>2]|0,c[d>>2]|0,0)|0}return}function hw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=e+36|0;g=e+31|0;a[f>>0]=a[g>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0;a[f+4>>0]=a[g+4>>0]|0;f=b+310120|0;b=0;while(1){if(b>>>0>=(c[f>>2]|0)>>>0)break;g=(Yz(d,2)|0)&255;a[e+31+b>>0]=g;b=b+1|0}return}function iw(a){a=a|0;var b=0,d=0,e=0,f=0;b=0;while(1){if(b>>>0>=12){b=-1;break}d=c[94128+(b<<2)>>2]|0;if(!(tx(c[a>>2]|0,d,3)|0)){e=4;break}b=b+1|0}if((e|0)==4){e=d+3|0;f=wu(e)|0;d=(c[a>>2]|0)+3|0;c[a>>2]=d;if((f|0)>0?(tx(d,e,f)|0)==0:0)c[a>>2]=(c[a>>2]|0)+f}return b|0}function jw(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=0;while(1){if((j|0)==16)break;if(!(a[i+(d[88688+j>>0]|0)>>0]|0)){k=g+(j<<4<<1)|0;if(b[k>>1]|0)Dx(e+(c[f+(j<<2)>>2]|0)|0,k,h)}else qk(e+(c[f+(j<<2)>>2]|0)|0,g+(j<<4<<1)|0,h);j=j+1|0}return}function kw(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[88688+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)Pw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else Tj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function lw(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[88688+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)Uw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else Vj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function mw(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[88688+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)Vw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else Wj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function nw(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)>=(f|0))break;g=0;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(H(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function ow(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=Nb;Nb=Nb+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;jq(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{HQ(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}HQ(a,f,e)}Nb=g;return}function pw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+92|0;if(!(c[e>>2]|0))a=-1;else{g=a+84|0;c[g>>2]=b;f=a+88|0;c[f>>2]=d;a=a+80|0;sa(c[a>>2]|0,b|0,d|0)|0;ta(c[a>>2]|0,+(+(b>>>0)),+(+(d>>>0)))|0;JO(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;a=0}return a|0}function qw(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)>=(f|0))break;g=0;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(H(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function rw(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[88688+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)Yw(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else Xj(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function sw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=a+112|0;c[f>>2]=b;c[f+4>>2]=d;f=c[a+8>>2]|0;e=c[a+4>>2]|0;g=f-e|0;h=((g|0)<0)<<31>>31;i=a+120|0;c[i>>2]=g;c[i+4>>2]=h;if(((b|0)!=0|(d|0)!=0)&((h|0)>(d|0)|(h|0)==(d|0)&g>>>0>b>>>0))c[a+104>>2]=e+b;else c[a+104>>2]=f;return}function tw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:(j^-2147483648)>>31&16383;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function uw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=Nb;Nb=Nb+16|0;f=h;g=h+8|0;e=c[a+4>>2]|0;if(c[e+680>>2]&2048|0){i=c[a+29540>>2]|0;c[f>>2]=b;c[f+4>>2]=i;mx(e,48,198667,f)}b=Nr(a,b,g)|0;if(b|0?vx(a,b,d)|0:0)II(a,c[g>>2]|0);Nb=h;return b|0}function vw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+16|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+24|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+(d<<1)|0;a=a+1|0}return}function ww(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+16|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+24|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+(d<<1)|0;a=a+1|0}return}function xw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+16|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+24|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+(d<<1)|0;a=a+1|0}return}function yw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+16|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+24|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+(d<<1)|0;a=a+1|0}return}function zw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+16|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+24|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+(d<<1)|0;a=a+1|0}return}function Aw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+16|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+24|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+(d<<1)|0;a=a+1|0}return}function Bw(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=H((d[a+(0-e)>>0]|0)+4+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)+(d[a+-1>>0]|0)+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)>>3,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Cw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:(j^-2147483648)>>31&4095;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function Dw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:(j^-2147483648)>>31&1023;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function Ew(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+80|0;e=i;f=a+104|0;g=a+160|0;while(1){if((SU(c[f>>2]|0)|0)>=(d|0)){h=5;break}if((No(g,e)|0)!=1){a=0;break}de(a,e);AP(e)}if((h|0)==5)a=Ts(c[f>>2]|0,b,d)|0;Nb=i;return a|0}function Fw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:(j^-2147483648)>>31&511;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function Gw(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[d>>2]|0;do if(!(c[a+4>>2]|0)){a=c[a>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){a=-11;break}a=jT()|0;if(!a)a=-12;else{c[b>>2]=c[c[d>>2]>>2];c[c[d>>2]>>2]=a;a=0}}else a=-541478725;while(0);return a|0}function Hw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=Nb;Nb=Nb+16|0;j=i;h=ok(a,b,0,0,h,j)|0;b=c[j>>2]|0;if((h|0)!=0&(b|0)!=0)if(!(c[h+40>>2]&128))b=Pd(a,h,b+(c[h+8>>2]|0)|0,d,e,f,g)|0;else b=-22;else b=-1414549496;Nb=i;return b|0}function Iw(a){a=a|0;var b=0,d=0.0,e=0,g=0,h=0.0;b=1<<a;d=6.283185307179586/+(b|0);e=c[80144+(a<<2)>>2]|0;g=(b|0)/4|0;a=0;while(1){if((a|0)>(g|0))break;h=+x(+(d*+(a|0)));f[e+(a<<2)>>2]=h;a=a+1|0}b=(b|0)/2|0;a=1;while(1){if((a|0)>=(g|0))break;c[e+(b-a<<2)>>2]=c[e+(a<<2)>>2];a=a+1|0}return}function Jw(a){a=a|0;var b=0,d=0,e=0,f=0;switch(c[a+80>>2]|0){case 6:{b=42;d=43;e=6;f=5;break}case 7:{b=44;d=45;e=7;f=5;break}case 8:{b=46;d=47;e=8;f=5;break}case 9:{b=48;d=49;e=9;f=5;break}default:{}}if((f|0)==5){c[a+96>>2]=e;c[a+100>>2]=b;c[a+104>>2]=d}return}function Kw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+16|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+24|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+(d<<1)|0;a=a+1|0}return}function Lw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+16|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+24|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+(d<<1)|0;a=a+1|0}return}function Mw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+16|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+24|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+(d<<1)|0;a=a+1|0}return}function Nw(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+16|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+24|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+(d<<1)|0;a=a+1|0}return}function Ow(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+16|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+24|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+(d<<1)|0;a=a+1|0}return}function Pw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:(j^-2147483648)>>31&16383;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function Qw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=a+12|0;i=a+4|0;j=(e|0)==0;do{f=c[i>>2]|0;g=(c[h>>2]|0)-f|0;g=(g|0)>(d|0)?d:g;if(j){Bk(b|0,f|0,g|0)|0;b=b+g|0}else hc[e&1023](b,f,g);$H(a,g);d=d-g|0}while((d|0)>0);return 0}function Rw(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=Nb;Nb=Nb+128|0;h=i;ic[c[a+2964>>2]&255](h,d,e,f);ec[c[a+2032>>2]&31](h);g=0;a=0;while(1){if((g|0)==64)break;f=b[h+(g<<1)>>1]|0;f=(f|0)>-1?f:0-f|0;g=g+1|0;a=(a|0)>(f|0)?a:f}Nb=i;return a|0}function Sw(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function Tw(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(d|0?c[d+248>>2]|0:0){Do(c[a+4>>2]|0,b+4|0);nT(b+52|0);d=b+20|0;nT(d);nT(b+44|0);a=0;while(1){if((a|0)==2)break;nT(b+28+(a<<2)|0);nT(b+60+(a<<2)|0);a=a+1|0}jq(d|0,0,636)|0}return}function Uw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:(j^-2147483648)>>31&4095;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function Vw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:(j^-2147483648)>>31&1023;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function Ww(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=Nb;Nb=Nb+16|0;e=f;d=a+28|0;if(!(NL(d)|0)){h=Yz(d,2)|0;g=a+68|0;c[g>>2]=h;d=Yz(d,5)|0;c[a+48>>2]=d;a=c[g>>2]|0;c[e>>2]=d;c[e+4>>2]=a;mx(b,48,196121,e);a=1}else a=-1094995529;Nb=f;return a|0}function Xw(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+8|0;e=c[b>>2]|0;g=(c[a>>2]|0)+(e>>>3)|0;g=(IS(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7);a=g>>>0>65535;g=a?g>>>16:g;a=a?16:0;f=(g&65280|0)==0;a=32-(d[91680+(f?g:g>>>8)>>0]|0)-(f?a:a|8)|0;c[b>>2]=a+e;return a+-1|0}function Yw(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:(j^-2147483648)>>31&511;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function Zw(a){a=a|0;var b=0;b=a+8|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+16|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+56|0;c[b>>2]=-1;c[b+4>>2]=-1;b=a+64|0;c[b>>2]=0;c[b+4>>2]=0;b=a+32|0;c[a>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;return}function _w(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+21864>>2]|0;f=c[a+21860>>2]|0;d=a+32856|0;e=Vu(d,76-(f>>>1&2|b>>>1&1)+(a+32904)|0)|0;e=((Vu(d,76-(f>>>2&2|e&1)+(a+32904)|0)|0)<<1)+e|0;b=e+((Vu(d,76-(e<<1&2|b>>>3&1)+(a+32904)|0)|0)<<2)|0;return b+((Vu(d,76-(b>>>2&1|b&2)+(a+32904)|0)|0)<<3)|0}function $w(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=c[b>>2]|0;h=j;g=0;i=0;while(1){if((i|0)>=(f|0))break;k=a[h>>0]|0;if(!(UU(k)|0))break;h=h+1|0;g=(g*10|0)+-48+k|0;i=i+1|0}if((h|0)!=(j|0)?!((g|0)<(d|0)|(g|0)>(e|0)):0)c[b>>2]=h;else g=-1;return g|0}function ax(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==16)break;g=a+((H(f,b)|0)+-1)|0;e=e+(d[g>>0]|0)|0;f=f+1|0}f=H((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function bx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+32|0;j=l+16|0;k=l;i=0;while(1){if((i|0)==4)break;c[j+(i<<2)>>2]=c[b+(i<<2)>>2];c[k+(i<<2)>>2]=c[e+(i<<2)>>2];i=i+1|0}mm(a,j,d,k,f,g,h,41);Nb=l;return}function cx(a,b){a=a|0;b=+b;var d=0,e=0.0;b=b*-3.141592653589793/180.0;e=+x(+b);b=+y(+b);d=a+8|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;d=~~(e*65536.0);c[a>>2]=d;c[a+4>>2]=~~(b*-65536.0);c[a+12>>2]=~~(b*65536.0);c[a+16>>2]=d;c[a+32>>2]=1073741824;return}function dx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=f+696|0;h=f+24312|0;i=j;g=0;while(1){if((g|0)>=(d|0))break;f=c[b+(g<<2)>>2]|0;if((f|0)!=0?f>>>0>=j>>>0&f>>>0<h>>>0:0)f=e+696+(((f-i|0)/656|0)*656|0)|0;else f=0;c[a+(g<<2)>>2]=f;g=g+1|0}return}function ex(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;do if((a|0)<0|(f|0)==0)e=-22;else{if((e+-1|0)>>>0<2)e=d[f+5>>0]|0;else e=0;e=a+-1+(1<<e)>>e;if(e|0?(2147483647/(e|0)|0|0)<(b|0):0){e=-22;break}e=H(e,b)|0;e=(0==0?(c[f+8>>2]&4|0)==0:0)?e:e+7>>3}while(0);return e|0}function fx(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=c[a+12>>2]|0;e=c[a+8>>2]|0;g=a+16|0;f=c[g>>2]|0;c[g>>2]=f+1;g=a+112|0;h=a+108|0;b=a+20|0;a=f;do{kc[c[g>>2]&127](c[h>>2]|0,a,f,d,e);a=c[b>>2]|0;c[b>>2]=a+1}while(a>>>0<d>>>0);return (a|0)==(d+-1+e|0)|0}function gx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;g=H(c[b+304>>2]|0,d[b+288>>0]|0)|0;a:do switch(f|0){case 1:{f=0;while(1){if((f|0)>=(g|0))break a;h=(NL(e)|0)&255;a[b+13+f>>0]=h;f=f+1|0}}case 2:{jq(b+13|0,1,g|0)|0;break}default:{}}while(0);return}function hx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=Nb;Nb=Nb+16|0;e=NL(b)|0;d=Yz(b,8)|0;if((d|0)==255)d=(Yz(b,8)|0)+255|0;if(e|0)VQ(b);d=d<<3;if((NS(b)|0)<(d|0)){mx(c[a+4>>2]|0,16,188241,f);d=-1094995529}else{JK(b,d);d=0}Nb=f;return d|0}function ix(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[b+390904>>2]|0)){c[b+72>>2]=c[b+76>>2];c[b+12>>2]=d;UK(b);c[b+14656>>2]=1152;c[b+102624>>2]=1152;Mm(b+390884|0,7,1,4.76837158203125e-07)|0;Mm(b+390816|0,7,1,-65536.0)|0;CU(b+176032|0);DC(b+390952|0);jQ(b+391008|0)}return}function jx(){var a=0,b=0,c=0,d=0.0,e=0.0,g=0.0,h=0.0,i=0,j=0;a=8;b=0;c=0;d=8.881784197001252e-16;e=3.637978807091713e-12;while(1){if((c|0)==428)break;i=c<<2&12;j=(c*3|0)+8&15;h=i>>>0<b>>>0?d*2.0:d;g=j>>>0<a>>>0?e*2.0:e;f[902736+(c<<2)>>2]=h*+f[44048+(i<<2)>>2];a=j;b=i;c=c+1|0;d=h;e=g}return}function kx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[d>>2]|0;if((c[e+80>>2]|0)==334?(c[(c[e+248>>2]|0)+8>>2]|0)==1:0)e=-542398533;else{e=Kf(b,e)|0;if((e|0)>=0){Jf(b+344|0,171197,Kq(a+29836|0)|0,0)|0;if(!(c[d+652>>2]|0)){c[b+84>>2]=1;e=0}else e=0}}return e|0}function lx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=(b|0)==2;f=a+24|0;d=0;while(1){if((d|0)==3)break;g=a+(d<<2)|0;h=a+12+(d<<2)|0;if(e)c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[f>>2]=b;c[h>>2]=c[h>>2]<<1;d=d+1|0}c[a+28>>2]=c[(c[a+36>>2]|0)+76+((e&1)<<2)>>2];return}function mx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;f=i;if(a){h=c[a>>2]|0;c[f>>2]=e;if(((h|0)!=0?(c[h+12>>2]|0)>3280641:0)?(g=c[h+16>>2]|0,(b|0)>7&(g|0)!=0):0)b=(c[a+g>>2]|0)+b|0}else c[f>>2]=e;qQ(a,b,d,f);Nb=i;return}function nx(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=Nb;Nb=Nb+32|0;g=h+4|0;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){d=YH(g,d,e)|0;if((d|0)>=0)d=el(a,b,c,g,0,1)|0}else{mx(b,16,189649,h);d=-1094995529}Nb=h;return d|0}function ox(b,c){b=b|0;c=c|0;do if(c){c=eP(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c)|0;if(!c){zM(b);c=-12;break}else{a[b>>0]=c;a[b+1>>0]=c>>8;a[b+2>>0]=c>>16;a[b+3>>0]=c>>24;c=0;break}}else{zM(b);c=0}while(0);return c|0}function px(a,b){a=a|0;b=b|0;var c=0;c=a-(a>>>1&1431655765)|0;c=(c>>>2&858993459)+(c&858993459)|0;c=(c>>>4)+c&252645135;c=(c>>>8)+c|0;a=GN(a|0,b|0,33)|0;M()|0;b=b-(a&1431655765)|0;b=(b>>>2&858993459)+(b&858993459)|0;b=(b>>>4)+b&252645135;b=(b>>>8)+b|0;return ((c>>>16)+c&63)+((b>>>16)+b&63)|0}function qx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=d>>1;b=a+(0-f<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;g=a;c[g>>2]=e;c[g+4>>2]=b;g=a+(f<<1)|0;c[g>>2]=e;c[g+4>>2]=b;d=a+((d&-2)<<1)|0;c[d>>2]=e;c[d+4>>2]=b;d=a+(f*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function rx(a,d,e,f,g,h,i){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;j=c[f+(g<<2)>>2]|0;f=c[f+(h<<2)>>2]|0;g=0;while(1){if((g|0)>=(i|0))break;h=H(j,b[d+(g<<1)>>1]|0)|0;h=(h+16384+(H(f,b[e+(g<<1)>>1]|0)|0)|0)>>>15&65535;b[a+(g<<1)>>1]=h;g=g+1|0}return}function sx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(b|0)==0;e=a+24312|0;b=0;while(1){if((b|0)==36)break;f=a+696+(b*656|0)|0;do if(c[(c[f>>2]|0)+248>>2]|0?(c[a+696+(b*656|0)+640>>2]|0)==0:0){if(d?(f|0)==(c[e>>2]|0):0)break;Tw(a,f)}while(0);b=b+1|0}return}function tx(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=b+d|0;e=b;while(1){d=kU(a[e>>0]|0)|0;e=e+1|0;b=kU(a[c>>0]|0)|0;if(e>>>0>=f>>>0){g=3;break}d=d&255;b=b&255;if(!((d|0)!=0&(d|0)==(b|0)))break;else c=c+1|0}if((g|0)==3){b=b&255;d=d&255}return d-b|0}function ux(a,b){a=a|0;b=b|0;var d=0;d=c[a+80>>2]|0;do if(!((d|0)<0?1:(d|0)!=(c[b+80>>2]|0))){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Ep(a,b)|0;break}if((c[a+76>>2]|0)>0?(c[a+352>>2]|0)>0:0)a=Sp(a,b)|0;else a=-22}else a=-22;while(0);return a|0}function vx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b+640|0;e=c[f>>2]&d;c[f>>2]=e;a:do if(!e){d=0;while(1){e=c[a+28588+(d<<2)>>2]|0;if(!e){d=1;break a}if((e|0)==(b|0))break;else d=d+1|0}c[f>>2]=4;d=1}else d=0;while(0);return d|0}function wx(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=H(b,d)|0;h=oK(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function xx(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;h=b+4|0;c[a+4>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+1|0;a=a+e|0;b=b+e|0}return}function yx(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=Xf(a,b,c,d,8)|0;f=(Xf(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Xf(a,g,b,d,8)|0)+f|0;f=f+(Xf(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function zx(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=H(b,d)|0;h=oK(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Ax(a){a=a|0;var b=0,d=0;d=Nb;Nb=Nb+16|0;b=d;c[b>>2]=0;do if((2147483647+-32|0)>>>0>=a>>>0){if(!a){a=Ax(1)|0;c[b>>2]=a;break}if(!(Iv(b,16,a)|0)){a=c[b>>2]|0;break}else{c[b>>2]=0;a=0;break}}else a=0;while(0);Nb=d;return a|0}function Bx(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=Cf(a,b,c,d,8)|0;f=(Cf(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Cf(a,g,b,d,8)|0)+f|0;f=f+(Cf(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Cx(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==8)break;e=0;while(1){if((e|0)==8)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function Dx(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==4)break;e=0;while(1){if((e|0)==4)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function Ex(){var a=0,b=0,d=0;a=Ha(204009)|0;do if((Ha(204014)|0)==0?(Ha(204023)|0)==0:0){if(a|0?jK(2)|0:0){b=1;break}b=(Ha(204044)|0)!=0&1}else b=0;while(0);c[40514]=b;if(!(Ha(204063)|0)){if(a|0?Lq(a,204085)|0:0)d=9}else d=9;if((d|0)==9)c[40514]=b<<8;return}function Fx(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;i=c+(H(h,g)|0)|0;j=e+(h<<1)|0;j=(IT((d[i>>0]|d[i+1>>0]<<8)&65535,(d[j>>0]|d[j+1>>0]<<8)&65535)|0)&65535;i=a+(H(h,f)|0)|0;b[i>>1]=j;h=h+1|0}return}function Gx(a){a=a|0;var b=0,d=0,e=0,f=0;f=Nb;Nb=Nb+16|0;b=f;e=c[a>>2]|0;while(1){c[b>>2]=e;d=e;if(!e)break;e=c[d+72>>2]|0;AP(d);zM(b)}c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;Nb=f;return}function Hx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=1){yO(d,1);f=Yz(d,1)|0;yO(d,6);if(f)if((e|0)<2)b=-1094995529;else{yO(d,4);f=(Yz(d,4)|0)&255;a[b+4>>0]=f;c[b>>2]=1;b=0}else b=0}else b=-1094995529;return b|0}function Ix(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;g=a+((H(f,b)|0)+-1)|0;e=e+(d[g>>0]|0)|0;f=f+1|0}f=H((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(H(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function Jx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+(0-b)|0;f=c[e>>2]|0;g=c[e+4>>2]|0;h=c[e+8>>2]|0;e=c[e+12>>2]|0;d=0;while(1){if((d|0)==16)break;i=a+(H(d,b)|0)|0;c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=h;c[i+12>>2]=e;d=d+1|0}return}function Kx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Nb;Nb=Nb+32|0;e=g+16|0;f=g;a=MT(a)|0;if((a|0)!=0?(0==0?(c[a+8>>2]&8|0)==0:0):0){lu(e,f,a);a=ex(b,c[e+(d<<2)>>2]|0,c[f+(d<<2)>>2]|0,a)|0}else a=-22;Nb=g;return a|0}function Lx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var g=0,h=0.0;h=+f[d+148808+(e*480|0)>>2];g=c[d+74464>>2]|0;b=c[b+74176>>2]|0;d=1024<<((c[a+6488>>2]|0)==1&1);e=0;while(1){if((e|0)>=(d|0))break;a=b+(e<<2)|0;f[a>>2]=+f[a>>2]+h*+f[g+(e<<2)>>2];e=e+1|0}return}function Mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;do if((b|0)>=3){d=b>>>1;if(!(d&a))return (Mx(a,d,c)|0)<<1|0;d=b>>>2;b=(Mx(a,d,c)|0)<<2;if(((d&a|0)==0|0)==(c|0)){b=b|1;break}else{b=b+-1|0;break}}else b=a&1;while(0);return b|0}function Nx(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0;c=0;d=0.0;e=0.0;while(1){if((c|0)>=(b|0))break;h=+f[a+(c<<3)>>2];j=+f[a+(c<<3)+4>>2];k=c|1;g=+f[a+(k<<3)>>2];i=+f[a+(k<<3)+4>>2];c=c+2|0;d=d+j*j+i*i;e=e+h*h+g*g}return +(e+d)}function Ox(a){a=a|0;var b=0,d=0,e=0;b=c[a+16>>2]|0;d=(b|0)<2;e=(d?1899:1900)+(c[a+20>>2]|0)|0;return ((c[a+8>>2]|0)*3600|0)+-2032579456+((c[a+4>>2]|0)*60|0)+(c[a>>2]|0)+(((e*365|0)+(c[a+12>>2]|0)+((e|0)/4|0)+((e|0)/-100|0)+((e|0)/400|0)+(((((d?13:1)+b|0)*153|0)+-457|0)/5|0)|0)*86400|0)|0}function Px(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Pu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}f=4;while(1){if((f|0)==8)break;Pu(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Qx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;sv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}f=4;while(1){if((f|0)==8)break;sv(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Rx(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;do if(((b|0)!=0?(e=c[b+12>>2]|0,!((e|0)<3357440|(e&252)>>>0<100)):0)?(d=c[b+32>>2]|0,d>>>0<=45):0){b=c[b+36>>2]|0;if(!b){b=d+16|0;break}else{b=(Wb[b&31](a)|0)+16|0;break}}else b=16;while(0);return b|0}function Sx(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if(d>>>0>=32)break;e=d<<1;c[a+(e<<2)>>2]=c[b+(63-d<<2)>>2]^-2147483648;c[a+((e|1)<<2)>>2]=c[b+(d<<2)>>2];c[a+((e|2)<<2)>>2]=c[b+(62-d<<2)>>2]^-2147483648;c[a+((e|3)<<2)>>2]=c[b+((d|1)<<2)>>2];d=d+2|0}return}function Tx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,g=0,h=0,i=0;i=1<<c[a+20>>2];g=i>>1;h=i>>2;wl(a,b+(h<<2)|0,d);e=g+-1|0;d=i+-1|0;a=0;while(1){if((a|0)>=(h|0))break;f[b+(a<<2)>>2]=-+f[b+(e-a<<2)>>2];c[b+(d-a<<2)>>2]=c[b+(a+g<<2)>>2];a=a+1|0}return}function Ux(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=H((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Vx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Ws(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}f=4;while(1){if((f|0)==8)break;Ws(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Jt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}f=4;while(1){if((f|0)==8)break;Jt(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Xx(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;b=H(d[a+-1>>0]|0,16843009)|0;c[a>>2]=b;b=H(d[a+(e+-1)>>0]|0,16843009)|0;c[a+e>>2]=b;b=e<<1;f=H(d[a+(b+-1)>>0]|0,16843009)|0;c[a+b>>2]=f;e=e*3|0;b=H(d[a+(e+-1)>>0]|0,16843009)|0;c[a+e>>2]=b;return}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Nb;Nb=Nb+144|0;f=g+128|0;e=g;if(!((b|4|0)==4&(d|0)==0)?(h=kP(b|0,d|0,-1,-1)|0,(h&b|0)==0&((M()|0)&d|0)==0):0){iJ(e,128,-1,b,d);c[f>>2]=e;mx(a,40,214488,f);b=4}Nb=g;return b|0}function Zx(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function _x(a,b){a=a|0;b=b|0;var d=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;c[b>>2]=16843009;c[b+4>>2]=16843009;c[b+8>>2]=16843009;c[b+12>>2]=16843009;c[b+16>>2]=16843009;c[b+20>>2]=16843009;c[b+24>>2]=16843009;c[b+28>>2]=16843009;b=b+(d<<1)|0;a=a+1|0}return}function $x(a,b){a=a|0;b=b|0;var c=0,d=0;a:do if((px(a,b)|0)==1){c=0;while(1){if(c>>>0>=64){c=0;break a}d=uN(1,0,c|0)|0;if(!((d&a|0)==0&((M()|0)&b|0)==0))break;c=c+1|0}c=WQ(c)|0}else c=0;while(0);return c|0}function ay(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=0;while(1){e=a[c+d>>0]|0;f=a[b+d>>0]|0;if(!(e<<24>>24)){g=4;break}if(e<<24>>24==f<<24>>24)d=d+1|0;else{d=0;break}}if((g|0)==4){d=f<<24>>24;d=f<<24>>24!=95&((d+-48|0)>>>0>9&((d&-33)+-65|0)>>>0>25)&1}return d|0}function by(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=uq(a,b,c,d,8)|0;f=(uq(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(uq(a,g,b,d,8)|0)+f|0;f=f+(uq(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function cy(a){a=a|0;a=a+8|0;switch(a>>>3|a<<29|0){case 0:{a=203861;break}case 7:{a=203855;break}case 6:{a=203847;break}case 5:{a=203842;break}case 4:{a=203834;break}case 3:{a=203828;break}case 2:{a=203822;break}case 1:{a=203816;break}default:a=1137073}return a|0}function dy(a){a=a|0;var b=0,d=0,e=0,f=0;e=(c[a+21864>>2]|0)>>>4&3;d=(c[a+21860>>2]|0)>>>4&3;f=(e|0)!=0&1;b=a+32856|0;f=(Vu(b,((d|0)==0?f:f|2)+77+(a+32904)|0)|0)==0;e=(e|0)==2?5:4;if(f)a=0;else a=(Vu(b,((d|0)==2?e|2:e)+77+(a+32904)|0)|0)+1|0;return a|0}function ey(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[72704+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[73216+a>>0]|0|0}function fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=0;f=7;while(1){e=d;while(1){if((e|0)==(f|0))break;g=NL(b)|0;c[a+140+(e<<2)>>2]=g;e=e+1|0}d=d+7|0;if((d|0)>=57)break;if(!(NL(b)|0))break;else f=f+7|0}return (d|0)/7|0|0}function gy(b){b=b|0;var d=0,e=0;b=AQ(b,2,8)|0;if(!b)b=0;else{b=b+4|0;d=c[b>>2]|0;e=d;a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;a[e+3>>0]=0;d=d+4|0;a[d>>0]=0;a[d+1>>0]=0;a[d+2>>0]=0;a[d+3>>0]=0;b=c[b>>2]|0}return b|0}function hy(a){a=a|0;var b=0;if((c[a+808>>2]&1|0)!=0?(c[(c[(c[a+64>>2]|0)+20>>2]|0)+300>>2]|0)!=1:0)if(!(c[(c[a+12>>2]|0)+64>>2]|0))if((c[a+812>>2]|0)==0?(c[a+472>>2]|0)!=9:0)a=0;else b=6;else a=0;else b=6;if((b|0)==6)a=1;return a|0}function iy(a){a=a|0;var b=0,d=0,e=0,f=0;f=Nb;Nb=Nb+16|0;e=f;b=a+64|0;JV(b)|0;d=a+140|0;if(!(c[d>>2]|0)){c[e>>2]=184752;c[e+4>>2]=184725;c[e+8>>2]=155;mx(0,0,214689,e);ba()}else{c[d>>2]=0;JV(a+92|0)|0;JV(b)|0;Nb=f;return}}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+992|0;e=un(b,d,c[e>>2]|0,c[e+4>>2]|0,-1,0,a)|0;g=(e|0)<0;f=g?0:d;b=g?0:b;c[a+132>>2]=b;c[a+136>>2]=f;d=c[a+792>>2]|0;c[a+124>>2]=0-(0-b>>d);c[a+128>>2]=0-(0-f>>d);return e|0}function ky(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;Ge(a,b,c,d,32,e);f=b+32|0;Ge(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;Ge(a,b,c,d,32,e);Ge(a+16|0,f,c+16|0,d,32,e);return}function ly(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;He(a,b,c,d,32,e);f=b+32|0;He(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;He(a,b,c,d,32,e);He(a+16|0,f,c+16|0,d,32,e);return}function my(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;_d(a,b,c,d,32,e);f=b+16|0;_d(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;_d(a,b,c,d,32,e);_d(a+16|0,f,c+16|0,d,32,e);return}function ny(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;while(1){if((d|0)>=64)break;f=0;while(1){if((f|0)>=(e|0))break;c[a+(f<<8)+(d<<2)>>2]=c[b+(d<<8)+(f<<3)>>2];c[a+9728+(f<<8)+(d<<2)>>2]=c[b+(d<<8)+(f<<3)+4>>2];f=f+1|0}d=d+1|0}return}function oy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;while(1){if((d|0)>=64)break;f=0;while(1){if((f|0)>=(e|0))break;c[a+(d<<8)+(f<<3)>>2]=c[b+(f<<8)+(d<<2)>>2];c[a+(d<<8)+(f<<3)+4>>2]=c[b+9728+(f<<8)+(d<<2)>>2];f=f+1|0}d=d+1|0}return}function py(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;ue(a,b,c,d,32,e);f=b+32|0;ue(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;ue(a,b,c,d,32,e);ue(a+16|0,f,c+16|0,d,32,e);return}function qy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;ve(a,b,c,d,32,e);f=b+32|0;ve(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;ve(a,b,c,d,32,e);ve(a+16|0,f,c+16|0,d,32,e);return}function ry(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;Ld(a,b,c,d,32,e);f=b+16|0;Ld(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;Ld(a,b,c,d,32,e);Ld(a+16|0,f,c+16|0,d,32,e);return}function sy(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0,h=0,i=0.0,j=0.0;f=+(c|0);i=+w(+(+(d|0)/f),+(1.0/+(e|0)));h=e+-1|0;g=0;e=c;while(1){if((g|0)>=(h|0))break;j=i*f;c=uV(j)|0;b[a+(g<<1)>>1]=c-e;f=j;g=g+1|0;e=c}b[a+(h<<1)>>1]=d-e;return}function ty(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[d+8>>2]|0;e=0;while(1){if((e|0)>=(f|0))break;g=(NL(b)|0)&255;a[d+24+e>>0]=g;e=e+1|0}f=c[d+20>>2]|0;e=0;while(1){if((e|0)>=(f|0))break;g=(NL(b)|0)&255;a[d+29+e>>0]=g;e=e+1|0}return}function uy(a){a=a|0;var b=0,d=0;d=(a|0)==0;b=0;do{if(d){b=0;break}b=ST(b)|0;if(!b){b=0;break}}while((c[b+44>>2]|0)!=(a|0));a=b;do{a=ST(a)|0;if(!a){b=0;break}b=c[a+44>>2]|0}while(!(b|0));return b|0}function vy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=NH(a+160|0)|0;f=NH(a+200|0)|0;e=a+304|0;d=a+312|0;b=a+308|0;la(2,a|0,((g|0)>(f|0)?g:f)|0,c[e>>2]|0,c[d>>2]<<3|0,c[b>>2]<<3|0)|0;c[e>>2]=0;c[d>>2]=0;c[b>>2]=0;return}function wy(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=mE(a,b,c,d,8)|0;f=(mE(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(mE(a,g,b,d,8)|0)+f|0;f=f+(mE(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function xy(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=Rw(a,b,c,d,8)|0;f=(Rw(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Rw(a,g,b,d,8)|0)+f|0;f=f+(Rw(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function yy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;le(a,b,c,d,32,e);f=b+16|0;le(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;le(a,b,c,d,32,e);le(a+16|0,f,c+16|0,d,32,e);return}function zy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;Rd(a,b,c,d,32,e);f=b+16|0;Rd(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;Rd(a,b,c,d,32,e);Rd(a+16|0,f,c+16|0,d,32,e);return}function Ay(a){a=+a;var b=0.0,c=0.0;do if(!(a==0.0)){b=+u(+a);if(!(b<=15.0)){a=1.0/b+-.06666666666666667;c=+AJ(157104,7,a);a=+E(+b)/+v(+b)*(c/+AJ(157168,8,a));break}else{a=a*a;c=+AJ(156928,15,a);a=c/+AJ(157056,6,a);break}}else a=1.0;while(0);return +a}function By(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=536944641;c[e+4>>2]=536944641;e=a+(b<<1)|0;c[e>>2]=536944641;c[e+4>>2]=536944641;d=a+((d&-2)<<1)|0;c[d>>2]=536944641;c[d+4>>2]=536944641;d=a+(b*3<<1)|0;c[d>>2]=536944641;c[d+4>>2]=536944641;return}function Cy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=134285313;c[e+4>>2]=134285313;e=a+(b<<1)|0;c[e>>2]=134285313;c[e+4>>2]=134285313;d=a+((d&-2)<<1)|0;c[d>>2]=134285313;c[d+4>>2]=134285313;d=a+(b*3<<1)|0;c[d>>2]=134285313;c[d+4>>2]=134285313;return}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=536879104;c[e+4>>2]=536879104;e=a+(b<<1)|0;c[e>>2]=536879104;c[e+4>>2]=536879104;d=a+((d&-2)<<1)|0;c[d>>2]=536879104;c[d+4>>2]=536879104;d=a+(b*3<<1)|0;c[d>>2]=536879104;c[d+4>>2]=536879104;return}function Ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=134219776;c[e+4>>2]=134219776;e=a+(b<<1)|0;c[e>>2]=134219776;c[e+4>>2]=134219776;d=a+((d&-2)<<1)|0;c[d>>2]=134219776;c[d+4>>2]=134219776;d=a+(b*3<<1)|0;c[d>>2]=134219776;c[d+4>>2]=134219776;return}function Fy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=536813567;c[e+4>>2]=536813567;e=a+(b<<1)|0;c[e>>2]=536813567;c[e+4>>2]=536813567;d=a+((d&-2)<<1)|0;c[d>>2]=536813567;c[d+4>>2]=536813567;d=a+(b*3<<1)|0;c[d>>2]=536813567;c[d+4>>2]=536813567;return}function Gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=134154239;c[e+4>>2]=134154239;e=a+(b<<1)|0;c[e>>2]=134154239;c[e+4>>2]=134154239;d=a+((d&-2)<<1)|0;c[d>>2]=134154239;c[d+4>>2]=134154239;d=a+(b*3<<1)|0;c[d>>2]=134154239;c[d+4>>2]=134154239;return}function Hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);wg(f,g+32|0,16,16);Ge(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);zg(f,g+32|0,16,16);He(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function Jy(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0;g=(Yz(e,11)|0)&65535;b[d+2>>1]=g;g=43600+((Yz(e,3)|0)<<2)|0;c[d+8>>2]=c[g>>2];g=f&255;g=g>>>0<40?g:40;f=0;while(1){if(f>>>0>=g>>>0)break;h=(NL(e)|0)&255;a[d+12+f>>0]=h;f=f+1|0}return}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);wg(f,g+32|0,16,16);Ge(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function Ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);zg(f,g+32|0,16,16);He(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function My(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;se(a,b,c,d,16,e);f=b+16|0;se(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;se(a,b,c,d,16,e);se(a+8|0,f,c+8|0,d,16,e);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;Zd(a,b,c,d,16,e);f=b+16|0;Zd(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;Zd(a,b,c,d,16,e);Zd(a+8|0,f,c+8|0,d,16,e);return}function Oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);Ag(f,g+32|0,16,16);_d(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);Ag(f,g+32|0,16,16);_d(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function Qy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=Nb;Nb=Nb+80|0;b=g;if((c[a>>2]|0)==0?(c[a+24>>2]|0)!=0:0){d=b;e=a;f=d+72|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));a=rn(a,b,1)|0}else a=0;Nb=g;return a|0}function Ry(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=H((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(H(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function Sy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Nb;Nb=Nb+16|0;g=f+8|0;h=f;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];e=Nv(a,b,h,g,5)|0;L(M()|0);Nb=f;return e|0}function Ty(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function Uy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=0;while(1){if((g|0)>=(d|0))break;h=c+(g<<2)|0;f[a+(g<<3)>>2]=+f[b+(g*320|0)+(e<<3)>>2]*+f[h>>2];f[a+(g<<3)+4>>2]=+f[b+(g*320|0)+(e<<3)+4>>2]*+f[h>>2];g=g+1|0}return}function Vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);wg(f,g+32|0,16,16);Ge(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function Wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);zg(f,g+32|0,16,16);He(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function Xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);wg(f,g+32|0,16,16);Ge(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function Yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1296|0;g=d+1088|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);zg(f,g+32|0,16,16);He(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function Zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);Cg(f,g+32|0,16,16);le(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function _y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))+2|0,c);Cg(f,g+32|0,16,16);le(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function $y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);Ag(f,g+32|0,16,16);_d(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);Ag(f,g+32|0,16,16);_d(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function bz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=33620481;c[e+4>>2]=33620481;e=a+(b<<1)|0;c[e>>2]=33620481;c[e+4>>2]=33620481;d=a+((d&-2)<<1)|0;c[d>>2]=33620481;c[d+4>>2]=33620481;d=a+(b*3<<1)|0;c[d>>2]=33620481;c[d+4>>2]=33620481;return}function cz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=33554944;c[e+4>>2]=33554944;e=a+(b<<1)|0;c[e>>2]=33554944;c[e+4>>2]=33554944;d=a+((d&-2)<<1)|0;c[d>>2]=33554944;c[d+4>>2]=33554944;d=a+(b*3<<1)|0;c[d>>2]=33554944;c[d+4>>2]=33554944;return}function dz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=33489407;c[e+4>>2]=33489407;e=a+(b<<1)|0;c[e>>2]=33489407;c[e+4>>2]=33489407;d=a+((d&-2)<<1)|0;c[d>>2]=33489407;c[d+4>>2]=33489407;d=a+(b*3<<1)|0;c[d>>2]=33489407;c[d+4>>2]=33489407;return}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=16843009;c[e+4>>2]=16843009;e=a+(b<<1)|0;c[e>>2]=16843009;c[e+4>>2]=16843009;d=a+((d&-2)<<1)|0;c[d>>2]=16843009;c[d+4>>2]=16843009;d=a+(b*3<<1)|0;c[d>>2]=16843009;c[d+4>>2]=16843009;return}function fz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=16777472;c[e+4>>2]=16777472;e=a+(b<<1)|0;c[e>>2]=16777472;c[e+4>>2]=16777472;d=a+((d&-2)<<1)|0;c[d>>2]=16777472;c[d+4>>2]=16777472;d=a+(b*3<<1)|0;c[d>>2]=16777472;c[d+4>>2]=16777472;return}function gz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=d>>1;e=a;c[e>>2]=16711935;c[e+4>>2]=16711935;e=a+(b<<1)|0;c[e>>2]=16711935;c[e+4>>2]=16711935;d=a+((d&-2)<<1)|0;c[d>>2]=16711935;c[d+4>>2]=16711935;d=a+(b*3<<1)|0;c[d>>2]=16711935;c[d+4>>2]=16711935;return}function hz(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);Cg(f,g+32|0,16,16);le(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);QH(f,g+64|0,32);ky(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);RH(f,g+64|0,32);ly(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);SH(f,g+64|0,32);my(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function mz(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+-8|0;h=f*6|0;g=h+51|0;h=h+52|0;e=0;while(1){if((e|0)>=(h|0))break;i=e+d|0;a[b+548+(c*88|0)+e>>0]=a[((i|0)<0?0:(i|0)>(g|0)?g:i)+(19488+(f*88|0))>>0]|0;e=e+1|0}return}function nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+880|0;g=d+672|0;f=d+128|0;e=d;Tn(g,b+(0-(c<<1))|0,c);Cg(f,g+32|0,16,16);le(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);QH(f,g+64|0,32);ky(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);RH(f,g+64|0,32);ly(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);SH(f,g+64|0,32);my(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function rz(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(c[b+676>>2]|0){d=a+544|0;if(!(c[d>>2]|0)){Uo(a+4|0,b);c[d>>2]=1}jq(c[a+580>>2]|0,127,H(c[a+560>>2]|0,c[a+564>>2]|0)|0)|0;c[a+572>>2]=(c[a+552>>2]|0)*3;c[a+576>>2]=0}return}function sz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=b;while(1){d=kU(a[e>>0]|0)|0;b=kU(a[c>>0]|0)|0;d=d&255;if(!d){f=3;break}b=b&255;if((d|0)==(b|0)){e=e+1|0;c=c+1|0}else{c=d;break}}if((f|0)==3){c=0;b=b&255}return c-b|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Nb;Nb=Nb+16|0;e=f;if((b|0)!=0?(hz(b,214025)|0)!=0:0){d=Vp(d,d+4|0,b)|0;if((d|0)<0){c[e>>2]=b;mx(a,16,204937,e)}}else{c[d+4>>2]=0;c[d>>2]=0;d=0}Nb=f;return d|0}function uz(a){a=a|0;var b=0,d=0,e=0;uT();d=c[40363]|0;e=a+56|0;c[e>>2]=0;while(1){b=c[d>>2]|0;if(!b){if(!(lP(d,0,a)|0))break;b=c[d>>2]|0}d=b+56|0}c[40363]=e;b=c[a+72>>2]|0;if(b|0)ec[b&31](a);return}function vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);wg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);zg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Ag(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+448|0;g=d+336|0;f=d+64|0;e=d;Xt(g,b+(0-(c<<1))+1|0,c);jh(f,g+16|0,8,8);se(e,d+128|0,b,8,8,c);qq(a,f,e,c,8,8,8);Nb=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=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);gI(f,g+64|0,32);yy(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function Az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);wg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);zg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Ag(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function Dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+448|0;g=d+336|0;f=d+64|0;e=d;Xt(g,b+(0-(c<<1))+1|0,c);jh(f,g+16|0,8,8);se(e,d+128|0,b,8,8,c);$o(a,f,e,c,8,8,8);Nb=d;return}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))+2|0,c);gI(f,g+64|0,32);yy(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function Fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1520|0;g=d+1184|0;f=d+256|0;e=d;yo(g,b+(0-(c<<1))+1|0,c);mI(f,g+32|0,16);My(e,d+512|0,b,16,c);jN(a,f,e,c,16);Nb=d;return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);QH(f,g+64|0,32);ky(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);RH(f,g+64|0,32);ly(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function Iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);SH(f,g+64|0,32);my(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1520|0;g=d+1184|0;f=d+256|0;e=d;yo(g,b+(0-(c<<1))+1|0,c);mI(f,g+32|0,16);My(e,d+512|0,b,16,c);lN(a,f,e,c,16);Nb=d;return}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);QH(f,g+64|0,32);ky(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function Lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+4384|0;g=d+3712|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);RH(f,g+64|0,32);ly(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function Mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);SH(f,g+64|0,32);my(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=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;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Cg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Cg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function Pz(a){a=a|0;var b=0,d=0,e=0;e=pa()|0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){Gb(b|0)|0;O(12);return -1}if((b|0)>(e|0))if(!(ra(b|0)|0)){O(12);return -1}c[i>>2]=b;return d|0}function Qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);wg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function Rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);zg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function Sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);Ag(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function Tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+448|0;g=d+336|0;f=d+64|0;e=d;Xt(g,b+(0-(c<<1))|0,c);jh(f,g+16|0,8,8);se(e,d+128|0,b,8,8,c);qq(a,f,e,c,8,8,8);Nb=d;return}function Uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);QH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);RH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function Wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);SH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function Xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);gI(f,g+64|0,32);yy(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function Yz(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;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;f=Kl(a,b,c,d,8)|0;f=(Kl(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Kl(a,g,b,d,8)|0)+f|0;f=f+(Kl(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function _z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);wg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function $z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);zg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function aA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);Ag(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function bA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+448|0;g=d+336|0;f=d+64|0;e=d;Xt(g,b+(0-(c<<1))|0,c);jh(f,g+16|0,8,8);se(e,d+128|0,b,8,8,c);$o(a,f,e,c,8,8,8);Nb=d;return}function cA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);QH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function dA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);RH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function eA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);SH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+3040|0;g=d+2368|0;f=d+512|0;e=d;Vh(g,b+(0-(c<<1))|0,c);gI(f,g+64|0,32);yy(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function gA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1520|0;g=d+1184|0;f=d+256|0;e=d;yo(g,b+(0-(c<<1))|0,c);mI(f,g+32|0,16);My(e,d+512|0,b,16,c);jN(a,f,e,c,16);Nb=d;return}function hA(a,b){a=a|0;b=b|0;var d=0;d=(c[b+21796>>2]|0)-(c[a+27e3>>2]<<1)|0;return Vu(b+32856|0,b+32974+(((c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&(c[b+832>>2]|0)==(e[(c[a+26356>>2]|0)+(d<<1)>>1]|0|0))+(c[b+21828>>2]&(c[b+21788>>2]|0)!=0))|0)|0}function iA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1520|0;g=d+1184|0;f=d+256|0;e=d;yo(g,b+(0-(c<<1))|0,c);mI(f,g+32|0,16);My(e,d+512|0,b,16,c);lN(a,f,e,c,16);Nb=d;return}function jA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);Cg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function kA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);gI(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function lA(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==9)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function mA(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+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;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b+c|0,16,c);Tn(g,b+(0-(c<<1))|0,c);Cg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function oA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))+2|0,c);gI(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function pA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);QH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function qA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);RH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function rA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);SH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function sA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);QH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function tA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);RH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function uA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);SH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function vA(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=xi(a,b,c,d,8)|0;f=(xi(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(xi(a,g,b,d,8)|0)+f|0;f=f+(xi(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function wA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b+c|0,8,c);Xt(g,b+(0-(c<<1))+1|0,c);jh(e,g+16|0,8,8);qq(a,f,e,c,8,8,8);Nb=d;return}function xA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);wg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);zg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=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;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Ag(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+152|0;e=d+144|0;mA(g,b+(0-(c<<1))+2|0,c);Fr(f,g+8|0,4);hm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+152|0;e=d+144|0;mA(g,b+(0-(c<<1))+2|0,c);Gr(f,g+8|0,4);lm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function CA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b+c|0,16,c);yo(g,b+(0-(c<<1))+1|0,c);mI(e,g+32|0,16);jN(a,f,e,c,16);Nb=d;return}function DA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=H(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(NV(e)|0)==0;a=xo(a,f,e)|0;if(!g)MV(e)}else a=xo(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function EA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b+c|0,8,c);Xt(g,b+(0-(c<<1))+1|0,c);jh(e,g+16|0,8,8);$o(a,f,e,c,8,8,8);Nb=d;return}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);wg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function GA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);zg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function HA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Ag(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function IA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b+c|0,16,c);yo(g,b+(0-(c<<1))+1|0,c);mI(e,g+32|0,16);lN(a,f,e,c,16);Nb=d;return}function JA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);xn(f,g+16|0,8);vi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function KA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);An(f,g+16|0,8);yi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function LA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);Bn(f,g+16|0,8);Ug(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function MA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);xn(f,g+16|0,8);vi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);An(f,g+16|0,8);yi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function OA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);Bn(f,g+16|0,8);Ug(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+64|0;f=d+104|0;e=d+96|0;mA(g,b+(0-(c<<1))+2|0,c);Hr(f,g+8|0,4);fl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);gI(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b+c|0,32,c);Vh(g,b+(0-(c<<1))|0,c);gI(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function SA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Cg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b,16,c);Tn(g,b+(0-(c<<1))+2|0,c);Cg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b+c|0,8,c);Xt(g,b+(0-(c<<1))|0,c);jh(e,g+16|0,8,8);qq(a,f,e,c,8,8,8);Nb=d;return}function VA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);wg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);zg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function XA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);Ag(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function YA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);Dn(f,g+16|0,8);nh(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=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;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+152|0;e=d+144|0;mA(g,b+(0-(c<<1))|0,c);Fr(f,g+8|0,4);hm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function _A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+152|0;e=d+144|0;mA(g,b+(0-(c<<1))|0,c);Gr(f,g+8|0,4);lm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function $A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);QH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function aB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);RH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);SH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b+c|0,16,c);yo(g,b+(0-(c<<1))|0,c);mI(e,g+32|0,16);jN(a,f,e,c,16);Nb=d;return}function dB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b+c|0,8,c);Xt(g,b+(0-(c<<1))|0,c);jh(e,g+16|0,8,8);$o(a,f,e,c,8,8,8);Nb=d;return}function eB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;og(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);wg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function fB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;rg(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);zg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function gB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;sg(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);Ag(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function hB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))+2|0,c);Dn(f,g+16|0,8);nh(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function iB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);QH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);RH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function kB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);SH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function lB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b+c|0,16,c);yo(g,b+(0-(c<<1))|0,c);mI(e,g+32|0,16);lN(a,f,e,c,16);Nb=d;return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+16|0;e=d;lA(g,b+(0-(c<<1))+1|0,c);jo(f,g+8|0,4);Ih(e,d+32|0,b,4,c);Tv(a,f,e,c,4);Nb=d;return}function nB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);xn(f,g+16|0,8);vi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function oB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);An(f,g+16|0,8);yi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function pB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);Bn(f,g+16|0,8);Ug(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+64|0;f=d+104|0;e=d+96|0;mA(g,b+(0-(c<<1))+2|0,c);Jr(f,g+8|0,4);Cl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function rB(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;f=c[e+(f<<2)>>2]|0;e=0;while(1){if((e|0)>=(g|0))break;i=(H(f,b[d+(e<<1)>>1]|0)|0)+16384|0;h=i>>15;b[a+(e<<1)>>1]=(h+32768|0)>>>0>65535?i>>31^32767:h;e=e+1|0}return}function sB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+16|0;e=d;lA(g,b+(0-(c<<1))+1|0,c);jo(f,g+8|0,4);Ih(e,d+32|0,b,4,c);dv(a,f,e,c,4);Nb=d;return}function tB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);xn(f,g+16|0,8);vi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function uB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+432|0;g=d+352|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);An(f,g+16|0,8);yi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);Bn(f,g+16|0,8);Ug(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function wB(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0;j=+g[d+(e<<3)>>3];i=+g[d+(f<<3)>>3];e=0;while(1){if((e|0)>=(h|0))break;g[a+(e<<3)>>3]=j*+g[b+(e<<3)>>3]+i*+g[c+(e<<3)>>3];e=e+1|0}return}function xB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+64|0;f=d+104|0;e=d+96|0;mA(g,b+(0-(c<<1))|0,c);Hr(f,g+8|0,4);fl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function yB(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0.0,j=0.0;j=+f[d+(e<<2)>>2];i=+f[d+(g<<2)>>2];e=0;while(1){if((e|0)>=(h|0))break;f[a+(e<<2)>>2]=j*+f[b+(e<<2)>>2]+i*+f[c+(e<<2)>>2];e=e+1|0}return}function zB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);Cg(e,g+32|0,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function AB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);xn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);An(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function CB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);Bn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function DB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+64|0;g=d+36|0;f=d+32|0;e=d+28|0;OI(g,b+(0-(c<<1))+1|0,c);Ds(f,g+4|0,2);em(e,d,b,2,c);Fx(a,f,e,c,2);Nb=d;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);gI(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function FB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+464|0;g=d+256|0;f=d+128|0;e=d;tg(f,b,16,c);Tn(g,b+(0-(c<<1))|0,c);Cg(e,g+32|0,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function GB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);xn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}
|
|
function mf(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function nf(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;R=Nb;Nb=Nb+16|0;P=R+4|0;L=R;wv(e,P,L);Q=c[P>>2]>>j;c[P>>2]=Q;P=H(c[L>>2]|0,Q)|0;c[L>>2]=P;L=h+-1|0;M=e+580|0;N=e+564|0;O=e+696|0;x=e+680|0;y=i*7|0;z=i*6|0;A=i<<3;B=i*9|0;C=i*5|0;D=i<<2;E=i*10|0;F=i*11|0;h=0;while(1){if((h|0)>=(L|0))break;G=h>>>j;I=h+1|0;J=I>>>j;K=H(h,i)|0;s=H(h,P)|0;t=H(I,P)|0;r=0;while(1){if((r|0)>=(g|0))break;S=c[M>>2]|0;e=r>>>j;k=c[N>>2]|0;h=(H(k,G)|0)+e|0;q=a[S+h>>0]|0;e=(H(k,J)|0)+e|0;S=a[S+e>>0]|0;k=c[O>>2]|0;u=r+K<<3;l=c[x>>2]|0;o=H(r,Q)|0;m=o+s|0;n=l+(m<<2)|0;o=o+t|0;p=l+(o<<2)|0;v=(q&14)!=0;w=(S&14)!=0;a:do if((S|q)&14){if(((c[k+(h<<2)>>2]|c[k+(e<<2)>>2])&7|0)==0?(S=(b[n>>1]|0)-(b[p>>1]|0)|0,q=(b[l+(o<<2)+2>>1]|0)+(b[l+(m<<2)+2>>1]|0)|0,(((q|0)>-1?q:0-q|0)+((S|0)>-1?S:0-S|0)|0)<2):0)break;q=v&w;e=0;while(1){if((e|0)==8)break a;l=e+u|0;m=f+(l+y)|0;n=d[m>>0]|0;o=f+(l+z)|0;T=n-(d[o>>0]|0)|0;p=f+(l+A)|0;h=d[p>>0]|0;S=h-n|0;k=f+(l+B)|0;h=(d[k>>0]|0)-h|0;h=((S|0)>-1?S:0-S|0)-(((T|0)>-1?T:0-T|0)+1+((h|0)>-1?h:0-h|0)>>1)|0;h=(h|0)>0?h:0;h=(S|0)<0?0-h|0:h;if(h|0){h=q?h:(h<<4|0)/9|0;if(v){a[m>>0]=a[21328+((h*7>>4)+n)>>0]|0;a[o>>0]=a[21328+((h*5>>4)+(d[o>>0]|0))>>0]|0;T=f+(l+C)|0;a[T>>0]=a[21328+((h*3>>4)+(d[T>>0]|0))>>0]|0;T=f+(l+D)|0;a[T>>0]=a[21328+((h>>4)+(d[T>>0]|0))>>0]|0}if(w){a[p>>0]=a[21328+((d[p>>0]|0)-(h*7>>4))>>0]|0;a[k>>0]=a[21328+((d[k>>0]|0)-(h*5>>4))>>0]|0;T=f+(l+E)|0;a[T>>0]=a[21328+((d[T>>0]|0)-(h*3>>4))>>0]|0;T=f+(l+F)|0;a[T>>0]=a[21328+((d[T>>0]|0)-(h>>4))>>0]|0}}e=e+1|0}}while(0);r=r+1|0}h=I}Nb=R;return}function of(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+16|0;b=u;h=c[a+4>>2]|0;t=a+25636|0;r=c[t>>2]|0;s=a+25628|0;j=c[s>>2]|0;d=j+21812|0;c[d>>2]=2147483647;if(!((r|0)<1|(c[h+704>>2]|0)!=0)?(c[(c[h+12>>2]|0)+16>>2]&128|0)==0:0){k=r+-1|0;q=a+26992|0;i=c[q>>2]|0;if((c[j+(k*34768|0)+21792>>2]|0)>=(i|0)){c[b>>2]=200101;c[b+4>>2]=199033;c[b+8>>2]=2754;mx(0,0,214689,b);ba()}p=a+26996|0;a:do if((r|0)!=1){b=0;while(1){if((b|0)==(r|0))break;f=c[p>>2]|0;e=H(f,i)|0;c[j+(b*34768|0)+596>>2]=0;g=H(c[j+(b*34768|0)+21792>>2]|0,f)|0;g=g+(c[j+(b*34768|0)+21788>>2]|0)|0;d=0;while(1){if((d|0)==(r|0))break;o=H(c[j+(d*34768|0)+21792>>2]|0,f)|0;o=o+(c[j+(d*34768|0)+21788>>2]|0)|0;o=(b|0)==(d|0)|(o|0)<(g|0)?e:(e|0)>(o|0)?o:e;d=d+1|0;e=o}c[j+(b*34768|0)+21812>>2]=e;b=b+1|0}ac[c[h+816>>2]&7](h,9,j,0,r,34768)|0;e=c[s>>2]|0;c[a+26988>>2]=c[e+(k*34768|0)+21792>>2];d=e+596|0;b=1;while(1){if((b|0)==(r|0))break;c[d>>2]=(c[d>>2]|0)+(c[e+(b*34768|0)+596>>2]|0);b=b+1|0}b=a+25692|0;if(!(c[b>>2]|0))b=0;else{c[b>>2]=0;g=a+26360|0;h=a+26364|0;f=0;while(1){if((f|0)==(r|0)){b=0;break a}o=c[s>>2]|0;i=o+(f*34768|0)|0;j=o+(f*34768|0)+21792|0;m=c[j>>2]|0;k=c[q>>2]|0;l=(m|0)<(k|0);k=l?m+1|0:k;l=c[(l?o+(f*34768|0)+21788|0:p)>>2]|0;m=o+(f*34768|0)+21804|0;n=k+-1|0;o=o+(f*34768|0)+21800|0;e=c[m>>2]|0;while(1){if((e|0)>=(k|0))break;c[j>>2]=e;if((e|0)>(c[m>>2]|0))b=0;else b=c[o>>2]|0;if((e|0)==(n|0))d=l;else d=c[p>>2]|0;Kc(a,i,b,d);if((c[g>>2]|0)==0?(c[h>>2]|0)==3:0)b=1;else b=2;e=b+e|0}f=f+1|0}}}else{b=H(c[p>>2]|0,i)|0;c[d>>2]=b;c[a+25692>>2]=0;b=dd(h,j)|0;c[a+26988>>2]=c[(c[s>>2]|0)+21792>>2]}while(0);c[t>>2]=0}else b=0;Nb=u;return b|0}function pf(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;if(!c){e=d[b+-1>>0]|0;c=e}else{c=d[b+-1>>0]|0;e=d[b+~f>>0]|0}s=d[b+(f+-1)>>0]|0;h=s+2|0;t=(h+e+(c<<1)|0)>>>2;l=f<<1;r=d[b+(l+-1)>>0]|0;p=r+2|0;s=(p+c+(s<<1)|0)>>>2;j=f*3|0;n=d[b+(j+-1)>>0]|0;r=(h+(r<<1)+n|0)>>>2;h=f<<2;m=d[b+(h+-1)>>0]|0;p=(p+(n<<1)+m|0)>>>2;g=f*5|0;k=d[b+(g+-1)>>0]|0;n=(n+2+(m<<1)+k|0)>>>2;c=f*6|0;o=d[b+(c+-1)>>0]|0;m=(m+2+(k<<1)+o|0)>>>2;e=f*7|0;i=d[b+(e+-1)>>0]|0;k=(k+2+(o<<1)+i|0)>>>2;i=(o+2+(i*3|0)|0)>>>2;o=s+1|0;a[b>>0]=(o+t|0)>>>1;q=r+2|0;a[b+1>>0]=(q+t+(s<<1)|0)>>>2;o=(o+r|0)>>>1&255;a[b+2>>0]=o;a[b+f>>0]=o;o=p+2|0;s=(o+s+(r<<1)|0)>>>2&255;a[b+3>>0]=s;a[b+(f+1)>>0]=s;r=(r+1+p|0)>>>1&255;a[b+4>>0]=r;a[b+(f+2)>>0]=r;a[b+l>>0]=r;q=(q+(p<<1)+n|0)>>>2&255;a[b+5>>0]=q;a[b+(f+3)>>0]=q;a[b+(l|1)>>0]=q;p=(p+1+n|0)>>>1&255;a[b+6>>0]=p;a[b+(f+4)>>0]=p;a[b+(l+2)>>0]=p;a[b+j>>0]=p;o=(o+(n<<1)+m|0)>>>2&255;a[b+7>>0]=o;a[b+(f+5)>>0]=o;a[b+(l+3)>>0]=o;a[b+(j+1)>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(f+6)>>0]=o;a[b+(l+4)>>0]=o;a[b+(j+2)>>0]=o;a[b+h>>0]=o;n=(n+2+(m<<1)+k|0)>>>2&255;a[b+(f+7)>>0]=n;a[b+(l+5)>>0]=n;a[b+(j+3)>>0]=n;a[b+(h|1)>>0]=n;f=(m+1+k|0)>>>1&255;a[b+(l+6)>>0]=f;a[b+(j+4)>>0]=f;a[b+(h|2)>>0]=f;a[b+g>>0]=f;f=(m+2+i+(k<<1)|0)>>>2&255;a[b+(l+7)>>0]=f;a[b+(j+5)>>0]=f;a[b+(h|3)>>0]=f;a[b+(g+1)>>0]=f;f=(k+1+i|0)>>>1&255;a[b+(j+6)>>0]=f;a[b+(h+4)>>0]=f;a[b+(g+2)>>0]=f;a[b+c>>0]=f;f=(k+2+(i*3|0)|0)>>>2&255;a[b+(j+7)>>0]=f;a[b+(h+5)>>0]=f;a[b+(g+3)>>0]=f;a[b+(c|1)>>0]=f;f=i&255;a[b+(e+7)>>0]=f;a[b+(c+7)>>0]=f;a[b+(g+7)>>0]=f;a[b+(h+7)>>0]=f;a[b+(e+6)>>0]=f;a[b+(c+6)>>0]=f;a[b+(g+6)>>0]=f;a[b+(h+6)>>0]=f;a[b+(e+5)>>0]=f;a[b+(c+5)>>0]=f;a[b+(g+5)>>0]=f;a[b+(e+4)>>0]=f;a[b+(c+4)>>0]=f;a[b+(g+4)>>0]=f;a[b+(e+3)>>0]=f;a[b+(c+3)>>0]=f;a[b+(e+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+(e+1)>>0]=f;a[b+e>>0]=f;return}function qf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Nb;Nb=Nb+32|0;p=q+16|0;k=q;o=a+24312|0;j=c[o>>2]|0;m=a+26364|0;e=c[m>>2]&1^1;n=b+25360|0;g=c[n>>2]&1;l=b+23412|0;d=0;while(1){if(d>>>0>=(c[l>>2]|0)>>>0)break;h=b+23404+(d<<2)|0;c[j+616+(e<<3)+(d<<2)>>2]=c[h>>2];f=0;while(1){if(f>>>0>=(c[h>>2]|0)>>>0)break;c[j+104+(e<<8)+(d<<7)+(f<<2)>>2]=c[b+23416+(d*1920|0)+(f*40|0)+24>>2]&3|c[(c[b+23416+(d*1920|0)+(f*40|0)+36>>2]|0)+88>>2]<<2;f=f+1|0}d=d+1|0}i=g^1;if((c[m>>2]|0)==3){f=j+616|0;g=c[f+4>>2]|0;h=j+624|0;c[h>>2]=c[f>>2];c[h+4>>2]=g;Bk(j+360|0,j+104|0,256)|0}if(c[a+29544>>2]|0){if((c[j+632>>2]|0)!=(c[a+26360>>2]|0)){c[k>>2]=196878;c[k+4>>2]=196910;c[k+8>>2]=144;mx(0,0,214689,k);ba()}}else c[j+632>>2]=c[a+26360>>2];g=b+21852|0;c[g>>2]=0;a:do if((c[l>>2]|0)==2?c[b+23408>>2]|0:0){f=c[m>>2]|0;do if((f|0)==3){e=c[b+25372>>2]|0;d=c[e+76>>2]|0;e=c[e+80>>2]|0;if((d|0)==2147483647&(e|0)==2147483647){mx(c[a+4>>2]|0,16,196935,p);c[b+21848>>2]=1;i=1;e=1;break}else{j=c[(c[o>>2]|0)+84>>2]|0;i=((j|0)<0)<<31>>31;n=iP(d|0,((d|0)<0)<<31>>31|0,j|0,i|0)|0;p=M()|0;m=(p|0)>-1|(p|0)==-1&n>>>0>4294967295;o=iP(0,0,n|0,p|0)|0;k=M()|0;k=m?p:k;i=iP(e|0,((e|0)<0)<<31>>31|0,j|0,i|0)|0;j=M()|0;p=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;e=iP(0,0,i|0,j|0)|0;l=M()|0;l=p?j:l;e=((k|0)>(l|0)|((k|0)==(l|0)?(m?n:o)>>>0>=(p?i:e)>>>0:0))&1;c[b+21848>>2]=e;i=e;break}}else{d=c[n>>2]|0;if((d&f|0)==0?(c[(c[b+25372>>2]|0)+632>>2]|0)==0:0)c[g>>2]=(d<<1)+-3}while(0);if((c[b+840>>2]|0)==3?(c[b+21844>>2]|0)==0:0){g=b+22252|0;h=a+26360|0;f=0;while(1){if((f|0)==2)break a;Jl(a,b,g,f,e,i,0);b:do if(c[h>>2]|0){d=0;while(1){if((d|0)==2)break b;Jl(a,b,b+22636+(d*384|0)|0,f,d,d,1);d=d+1|0}}while(0);f=f+1|0}}}while(0);Nb=q;return}function rf(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=8-g|0;l=8-h|0;o=H(l,m)|0;l=H(l,g)|0;m=H(m,h)|0;k=H(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;m=((H(o,e[c>>1]|0)|0)+32|0)>>>6&65535;b[a>>1]=m;m=((H(o,e[c+2>>1]|0)|0)+32|0)>>>6&65535;b[a+2>>1]=m;m=((H(o,e[c+4>>1]|0)|0)+32|0)>>>6&65535;b[a+4>>1]=m;m=((H(o,e[c+6>>1]|0)|0)+32|0)>>>6&65535;b[a+6>>1]=m;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=(m|0)==0?1:n;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=H(o,e[c>>1]|0)|0;m=(m+32+(H(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6&65535;b[a>>1]=m;m=H(o,e[c+2>>1]|0)|0;m=(m+32+(H(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6&65535;b[a+2>>1]=m;m=H(o,e[c+4>>1]|0)|0;m=(m+32+(H(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6&65535;b[a+4>>1]=m;m=H(o,e[c+6>>1]|0)|0;m=(m+32+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6&65535;b[a+6>>1]=m;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(o,e[c>>1]|0)|0;q=c+2|0;t=H(l,e[q>>1]|0)|0;p=c+(n<<1)|0;u=H(m,e[p>>1]|0)|0;s=c+(h<<1)|0;u=(r+32+t+u+(H(k,e[s>>1]|0)|0)|0)>>>6&65535;b[a>>1]=u;q=H(o,e[q>>1]|0)|0;u=c+4|0;t=H(l,e[u>>1]|0)|0;s=H(m,e[s>>1]|0)|0;r=c+(d<<1)|0;s=(q+32+t+s+(H(k,e[r>>1]|0)|0)|0)>>>6&65535;b[a+2>>1]=s;u=H(o,e[u>>1]|0)|0;s=c+6|0;t=H(l,e[s>>1]|0)|0;r=H(m,e[r>>1]|0)|0;q=c+(i<<1)|0;r=(u+32+t+r+(H(k,e[q>>1]|0)|0)|0)>>>6&65535;b[a+4>>1]=r;s=H(o,e[s>>1]|0)|0;r=H(l,e[c+8>>1]|0)|0;q=H(m,e[q>>1]|0)|0;q=(s+32+r+q+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6&65535;b[a+6>>1]=q;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function sf(b,g,h){b=b|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0.0;u=g+8|0;w=h+4|0;x=b+310124|0;y=b+76|0;z=b+36|0;t=0;while(1){if(t>>>0>=(c[u>>2]|0)>>>0)break;if((t|0)==(c[w>>2]|0))i=1;else i=(t|0)==(c[h>>2]|0);q=i^1;r=t+1|0;s=+(q&1);i=0;while(1){if(i>>>0>=(c[x>>2]|0)>>>0)break;o=c[y>>2]|0;j=(e[b+310386+(i<<1)>>1]|0)-o|0;i=i+1|0;n=b+310386+(i<<1)|0;k=j;while(1){p=(e[n>>1]|0)-o|0;if(k>>>0>=p>>>0)break;A=+f[b+381120+(t*192|0)+(k<<2)>>2];l=+f[b+382464+(t*192|0)+(k<<2)>>2];m=l+1.0;B=A/m;C=+v(+(l*B));f[b+385488+(t*192|0)+(k<<2)>>2]=C;B=+v(+(B*+(d[g+86032+(r*48|0)+k>>0]|0)));f[b+386832+(t*192|0)+(k<<2)>>2]=B;p=(a[b+383808+(t*48|0)+k>>0]|0)==0;m=+v(+((p?A:A*l)/((p?l*s+1.0:m)*(+f[b+384144+(t*192|0)+(k<<2)>>2]+1.0))))+1.1754943508222875e-38;f[b+388176+(t*192|0)+(k<<2)>>2]=m;k=k+1|0}k=j;l=0.0;m=0.0;while(1){if(k>>>0>=p>>>0)break;B=l+ +f[b+381120+(t*192|0)+(k<<2)>>2];C=m+ +f[b+384144+(t*192|0)+(k<<2)>>2];k=k+1|0;l=B;m=C}l=+v(+((l+1.1920928955078125e-07)/(m+1.1920928955078125e-07)))*+f[51568+(c[z>>2]<<2)>>2];l=l<1.0e5?l:1.0e5;k=j;while(1){if(k>>>0>=p>>>0)break;n=b+385488+(t*192|0)+(k<<2)|0;B=+f[n>>2];o=b+388176+(t*192|0)+(k<<2)|0;C=+f[o>>2];A=l*B/C;f[n>>2]=B>A?A:B;f[o>>2]=C>l?l:C;k=k+1|0}k=j;l=0.0;m=0.0;while(1){if(k>>>0>=p>>>0)break;B=l+ +f[b+381120+(t*192|0)+(k<<2)>>2];D=+f[b+388176+(t*192|0)+(k<<2)>>2];C=+f[b+386832+(t*192|0)+(k<<2)>>2];A=+f[b+385488+(t*192|0)+(k<<2)>>2];C=m+(D*(+f[b+384144+(t*192|0)+(k<<2)>>2]*D)+C*C+A*(A*+(C==0.0&q&1)));k=k+1|0;l=B;m=C}l=+v(+((l+1.1920928955078125e-07)/(m+1.1920928955078125e-07)));l=l<1.5848932266235352?l:1.5848932266235352;while(1){if(j>>>0>=p>>>0)break;o=b+388176+(t*192|0)+(j<<2)|0;f[o>>2]=l*+f[o>>2];o=b+385488+(t*192|0)+(j<<2)|0;f[o>>2]=l*+f[o>>2];o=b+386832+(t*192|0)+(j<<2)|0;f[o>>2]=l*+f[o>>2];j=j+1|0}}t=r}return}function tf(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=c[f+16>>2]|0;s=c[1080640+(h<<4)+4>>2]|0;a:do if(!j){o=e+8|0;p=e+16|0;m=0;n=0;while(1){if((n|0)>=(t|0))break a;h=c[o>>2]|0;q=c[p>>2]|0;l=c[e>>2]|0;r=l+(h>>>3)|0;r=(IS(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(h&7)>>>23;f=b[s+(r<<2)>>1]|0;r=b[s+(r<<2)+2>>1]|0;k=r<<16>>16;if(r<<16>>16<0){h=h+9|0;h=q>>>0>h>>>0?h:q;r=l+(h>>>3)|0;r=((IS(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(h&7)>>>(k+32|0))+f|0;f=b[s+(r<<2)>>1]|0;r=b[s+(r<<2)+2>>1]|0;j=r<<16>>16;if(r<<16>>16<0){h=h-k|0;h=q>>>0>h>>>0?h:q;r=l+(h>>>3)|0;f=((IS(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(h&7)>>>(j+32|0))+f|0;j=b[s+(f<<2)+2>>1]|0;f=b[s+(f<<2)>>1]|0}}else j=k;r=j+h|0;c[o>>2]=q>>>0>r>>>0?r:q;r=f+m&7;a[g+(i*34|0)+n>>0]=r;m=r;n=n+1|0}}else{if(!i)h=c[f+40>>2]|0;else h=i;n=h+-1|0;n=(n|0)>0?n:0;o=e+8|0;p=e+16|0;m=0;while(1){if((m|0)>=(t|0))break a;q=d[g+(n*34|0)+m>>0]|0;h=c[o>>2]|0;r=c[p>>2]|0;k=c[e>>2]|0;j=k+(h>>>3)|0;j=(IS(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24|0)|0)<<(h&7)>>>23;f=b[s+(j<<2)>>1]|0;j=b[s+(j<<2)+2>>1]|0;l=j<<16>>16;if(j<<16>>16<0){h=h+9|0;h=r>>>0>h>>>0?h:r;u=k+(h>>>3)|0;u=((IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(h&7)>>>(l+32|0))+f|0;f=b[s+(u<<2)>>1]|0;u=b[s+(u<<2)+2>>1]|0;j=u<<16>>16;if(u<<16>>16<0){h=h-l|0;h=r>>>0>h>>>0?h:r;u=k+(h>>>3)|0;f=((IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(h&7)>>>(j+32|0))+f|0;j=b[s+(f<<2)+2>>1]|0;f=b[s+(f<<2)>>1]|0}}else j=l;u=j+h|0;c[o>>2]=r>>>0>u>>>0?u:r;a[g+(i*34|0)+m>>0]=f+q&7;m=m+1|0}}while(0);return}function uf(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;M=Nb;Nb=Nb+16|0;K=M+4|0;F=M;wv(e,K,F);L=c[K>>2]>>j;c[K>>2]=L;K=H(c[F>>2]|0,L)|0;c[F>>2]=K;F=g+-1|0;G=e+580|0;I=e+564|0;J=e+696|0;z=e+680|0;y=0;while(1){if((y|0)>=(h|0))break;A=y>>>j;B=H(y,i)|0;C=H(y,K)|0;g=0;while(1){if((g|0)>=(F|0))break;u=c[G>>2]|0;n=H(c[I>>2]|0,A)|0;m=n+(g>>>j)|0;v=a[u+m>>0]|0;D=g+1|0;n=n+(D>>>j)|0;u=a[u+n>>0]|0;o=c[J>>2]|0;E=g+B<<3;p=c[z>>2]|0;g=(H(g,L)|0)+C|0;e=p+(g<<2)|0;k=(H(D,L)|0)+C|0;l=p+(k<<2)|0;w=(v&14)!=0;x=(u&14)!=0;a:do if((u|v)&14){if(((c[o+(m<<2)>>2]|c[o+(n<<2)>>2])&7|0)==0?(v=(b[e>>1]|0)-(b[l>>1]|0)|0,u=(b[p+(k<<2)+2>>1]|0)+(b[p+(g<<2)+2>>1]|0)|0,(((u|0)>-1?u:0-u|0)+((v|0)>-1?v:0-v|0)|0)<2):0)break;k=E|7;l=E|6;v=w&x;m=E|5;n=E|4;e=0;while(1){if((e|0)==8)break a;o=H(e,i)|0;p=f+(o+k)|0;q=d[p>>0]|0;r=f+(o+l)|0;O=q-(d[r>>0]|0)|0;s=o+E|0;t=f+(s+8)|0;g=d[t>>0]|0;N=g-q|0;u=f+(s+9)|0;g=(d[u>>0]|0)-g|0;g=((N|0)>-1?N:0-N|0)-(((O|0)>-1?O:0-O|0)+1+((g|0)>-1?g:0-g|0)>>1)|0;g=(g|0)>0?g:0;g=(N|0)<0?0-g|0:g;if(g|0){g=v?g:(g<<4|0)/9|0;if(w){a[p>>0]=a[21328+((g*7>>4)+q)>>0]|0;a[r>>0]=a[21328+((g*5>>4)+(d[r>>0]|0))>>0]|0;O=f+(o+m)|0;a[O>>0]=a[21328+((g*3>>4)+(d[O>>0]|0))>>0]|0;O=f+(o+n)|0;a[O>>0]=a[21328+((g>>4)+(d[O>>0]|0))>>0]|0}if(x){a[t>>0]=a[21328+((d[t>>0]|0)-(g*7>>4))>>0]|0;a[u>>0]=a[21328+((d[u>>0]|0)-(g*5>>4))>>0]|0;O=f+(s+10)|0;a[O>>0]=a[21328+((d[O>>0]|0)-(g*3>>4))>>0]|0;O=f+(s+11)|0;a[O>>0]=a[21328+((d[O>>0]|0)-(g>>4))>>0]|0}}e=e+1|0}}while(0);g=D}y=y+1|0}Nb=M;return}function vf(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<<g;k=g+1|0;j=b;g=0;while(1){if((g|0)>=(f|0))break;m=H(d[c>>0]|0,i)|0;m=m+l+(H(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+8>>0]|0,i)|0;m=j+8|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+9>>0]|0,i)|0;b=j+9|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+10>>0]|0,i)|0;m=j+10|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+11>>0]|0,i)|0;b=j+11|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+12>>0]|0,i)|0;m=j+12|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+13>>0]|0,i)|0;b=j+13|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=H(d[c+14>>0]|0,i)|0;m=j+14|0;b=b+l+(H(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=H(d[c+15>>0]|0,i)|0;b=j+15|0;m=m+l+(H(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function wf(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a:do if(f>>>0>=23?(u=a[e>>0]|0,a[g>>0]=u,u<<24>>24==1):0){u=e+1|0;a[g+1>>0]=(d[u>>0]|0)>>>6;a[g+2>>0]=(d[u>>0]|0)>>>5&1;a[g+3>>0]=a[u>>0]&31;c[g+4>>2]=(d[e+3>>0]|0)<<16|(d[e+2>>0]|0)<<24|(d[e+4>>0]|0)<<8|(d[e+5>>0]|0);u=(d[e+7>>0]|0)<<16|(d[e+6>>0]|0)<<24|(d[e+8>>0]|0)<<8|(d[e+9>>0]|0);s=g+8|0;h=s;c[h>>2]=u;c[h+4>>2]=0;u=uN(u|0,0,16)|0;h=M()|0;r=uN(d[e+10>>0]|0|0,0,8)|0;t=M()|0;c[s>>2]=r|(d[e+11>>0]|0)|u;c[s+4>>2]=t|h;a[g+16>>0]=a[e+12>>0]|0;b[g+18>>1]=(a[e+13>>0]&15)<<8|(d[e+14>>0]|0);a[g+20>>0]=a[e+15>>0]&3;a[g+21>>0]=a[e+16>>0]&3;a[g+22>>0]=a[e+17>>0]&7;a[g+23>>0]=a[e+18>>0]&7;b[g+24>>1]=(d[e+19>>0]|0)<<8|(d[e+20>>0]|0);s=e+21|0;a[g+26>>0]=(d[s>>0]|0)>>>6;a[g+27>>0]=(d[s>>0]|0)>>>3&7;a[g+28>>0]=(d[s>>0]|0)>>>2&1;a[g+29>>0]=a[s>>0]&3;s=a[e+22>>0]|0;h=e+23|0;t=g+30|0;a[t>>0]=0;u=s&255;if(s<<24>>24){r=e+f|0;s=g+4641|0;q=0;k=g+545|0;f=0;while(1){j=h+3|0;if(j>>>0>r>>>0){h=-1;break a}i=a[h>>0]|0;o=(d[h+1>>0]|0)<<8|(d[h+2>>0]|0);if(!o){i=k;h=j}else{p=(i&255)>>>7;n=i&63;m=0;h=j;while(1){j=f&255;if((f&255)>63){h=-1;break a}f=h+2|0;if(f>>>0>r>>>0){h=-1;break a}l=(d[h>>0]|0)<<8|(d[h+1>>0]|0);if((f+l|0)>>>0>r>>>0){h=-1;break a}i=k+l|0;if(i>>>0>s>>>0){h=-1;break a}a[g+32+(j<<3)>>0]=p;a[g+32+(j<<3)+1>>0]=n;b[g+32+(j<<3)+2>>1]=l;c[g+32+(j<<3)+4>>2]=k;Bk(k|0,f|0,l|0)|0;f=(a[t>>0]|0)+1<<24>>24;a[t>>0]=f;h=h+(l+2)|0;m=m+1<<16>>16;if(o>>>0<=(m&65535)>>>0)break;else k=i}}q=q+1<<16>>16;if((q&65535)>>>0>=u>>>0)break;else k=i}}h=h-e|0}else h=-1;while(0);return h|0}function xf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+48|0;o=s+32|0;h=s+24|0;g=s+16|0;f=s;n=c[a+64>>2]|0;q=n+92|0;if(c[q>>2]|0){c[f>>2]=167084;c[f+4>>2]=166508;c[f+8>>2]=754;mx(0,0,214689,f);ba()}if((e|0)!=0&(c[n+80>>2]|0)!=0?c[e+28>>2]|0:0){mx(a,24,167118,g);Jq(a)}c[d>>2]=0;c[n+84>>2]=1;r=n+96|0;f=c[r>>2]|0;a:do if(!f){f=al(a,e)|0;if((f|0)<-11)switch(f|0){case -541478725:{p=11;break a}default:{}}else switch(f|0){case -11:{f=-558323010;p=25;break a}default:{}}if((f|0)<0)p=25;else p=11}else if((f|0)==(c[e+28>>2]|0))p=11;else{mx(a,16,167151,h);f=-22;p=25}while(0);b:do if((p|0)==11){i=n+100|0;j=n+88|0;k=n+64|0;l=a+476|0;m=a+12|0;e=e+28|0;g=b;while(1){f=ps(a,g)|0;if((f|0)<0){p=13;break}h=c[i>>2]|0;if((g|0)==(h|0)){if(!(c[j>>2]|0)){mx(a,24,167202,o);h=j;p=20}}else if(!(c[l>>2]|0)){f=rj(n,g)|0;if((f|0)<0){p=25;break b}g=c[i>>2]|0;h=d;p=20}else{g=h;h=d;p=20}if((p|0)==20){p=0;c[h>>2]=1}if(c[k>>2]|0){p=26;break}if((c[(c[m>>2]|0)+116>>2]|0)==0?(c[q>>2]|0)>>>0<(c[e>>2]|0)>>>0:0){p=26;break}}c:do if((p|0)==13)if((f|0)<-11)switch(f|0){case -541478725:{p=28;break c}default:{p=25;break b}}else switch(f|0){case -11:{p=28;break c}default:{p=25;break b}}else if((p|0)==26)if(!f)p=28;else{c[q>>2]=0;h=f;g=c[e>>2]|0}while(0);if((p|0)==28){if(!(c[(c[m>>2]|0)+116>>2]|0)){f=c[q>>2]|0;g=c[e>>2]|0;f=f>>>0>g>>>0?g:f}else{g=c[e>>2]|0;f=g}c[q>>2]=0;if((f|0)>-1)h=f;else{g=0;break}}f=h;g=g-h|0}while(0);if((p|0)==25){c[q>>2]=0;g=0}c[r>>2]=g;Nb=s;return f|0}function yf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=Nb;Nb=Nb+48|0;s=x+8|0;h=x;r=x+16|0;v=b+1632|0;u=(c[v>>2]|0)!=0;i=u?0:f;w=b+16|0;j=c[w>>2]|0;j=j>>>0>13?7:j;q=b+1636|0;if(u?(c[q>>2]|0)==0:0)mx(g,16,169367,h);m=b+1340|0;u=b+20|0;n=b+1660|0;o=b+1656|0;p=b+1648|0;h=0;a:while(1){if((h|0)>=(f|0)){t=33;break}b:do if((i|0)>(h|0)){if((j|0)==7){j=(Yb[c[m>>2]&15](e+h|0,i-h|0)|0)+h|0;l=i;h=j;j=(j|0)<(i|0)?2:7;break}if(j>>>0<3)switch(a[e+h>>0]|0){case 1:{l=i;j=j^5;break b}case 0:{l=i;j=j>>>1;break b}default:{l=i;j=7;break b}}if(j>>>0<6){k=j;t=20}else{k=c[n>>2]|0;y=a[e+h>>0]|0;l=c[o>>2]|0;c[o>>2]=l+1;a[b+1648+l>>0]=y;YH(r,p,c[o>>2]<<3)|0;l=cH(r)|0;if(!((NS(r)|0)<=0?(c[o>>2]|0)<=5:0)){c[n>>2]=l;if(c[u>>2]|0){if(l>>>0<=k>>>0){t=31;break a}}else c[u>>2]=1;c[o>>2]=0;j=7}l=i}}else{j=c[q>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;h=h+1|0;k=k<<8|d[e+i>>0];i=i+1|0}h=f-i|0;if((k|0)<1|(k|0)>(h|0)){t=12;break a}h=i;i=i+k|0;k=5;t=20}while(0);c:do if((t|0)==20){t=0;j=a[e+h>>0]|0;if(((j&31)+-6&255)<4){y=(c[u>>2]|0)==0;h=h+((y^1)&1)|0;if(y){l=i;j=7;break}else{f=k;t=34;break a}}switch(j&31){case 1:case 2:case 5:break;default:{l=i;j=7;break c}}l=i;j=k+8|0}while(0);h=h+1|0;i=l}if((t|0)==12){c[s>>2]=k;c[s+4>>2]=h;mx(g,16,169404,s);t=35}else if((t|0)==31){h=h+1-(c[o>>2]|0)|0;c[o>>2]=0;f=j;t=34}else if((t|0)==33){c[w>>2]=j;f=(c[v>>2]|0)==0?-100:i;t=35}if((t|0)==34){c[w>>2]=7;c[u>>2]=0;Nb=x;return ((c[v>>2]|0)==0?h-(f&5)|0:i)|0}else if((t|0)==35){Nb=x;return f|0}return 0}function zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;if(!e){e=0;while(1){if((e|0)==32)break;f[b+(e<<8)>>2]=+f[d+(e<<3)>>2]+ +f[d+256+(e<<3)>>2]+ +f[d+512+(e<<3)>>2]+ +f[d+768+(e<<3)>>2]+ +f[d+1024+(e<<3)>>2]+ +f[d+1280+(e<<3)>>2];f[b+9728+(e<<8)>>2]=+f[d+(e<<3)+4>>2]+ +f[d+256+(e<<3)+4>>2]+ +f[d+512+(e<<3)+4>>2]+ +f[d+768+(e<<3)+4>>2]+ +f[d+1024+(e<<3)+4>>2]+ +f[d+1280+(e<<3)+4>>2];f[b+(e<<8)+4>>2]=+f[d+1536+(e<<3)>>2]+ +f[d+1792+(e<<3)>>2];f[b+9728+(e<<8)+4>>2]=+f[d+1536+(e<<3)+4>>2]+ +f[d+1792+(e<<3)+4>>2];f[b+(e<<8)+8>>2]=+f[d+2048+(e<<3)>>2]+ +f[d+2304+(e<<3)>>2];f[b+9728+(e<<8)+8>>2]=+f[d+2048+(e<<3)+4>>2]+ +f[d+2304+(e<<3)+4>>2];e=e+1|0}ic[c[a+16>>2]&255](b,d+1792|0,3,32)}else{o=0;while(1){if((o|0)==32)break;g=b+(o<<8)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;h=b+9728+(o<<8)|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;e=0;i=0.0;j=0.0;while(1){if((e|0)==12)break;q=+f[d+(e<<8)+(o<<3)>>2]+i;f[g>>2]=q;p=+f[d+(e<<8)+(o<<3)+4>>2]+j;f[h>>2]=p;e=e+1|0;i=q;j=p}g=b+(o<<8)+4|0;h=b+9728+(o<<8)+4|0;e=0;while(1){if((e|0)==8)break;n=e+12|0;f[g>>2]=+f[d+(n<<8)+(o<<3)>>2]+ +f[g>>2];f[h>>2]=+f[d+(n<<8)+(o<<3)+4>>2]+ +f[h>>2];e=e+1|0}g=b+(o<<8)+8|0;h=b+9728+(o<<8)+8|0;k=b+(o<<8)+12|0;l=b+9728+(o<<8)+12|0;m=b+(o<<8)+16|0;n=b+9728+(o<<8)+16|0;e=0;while(1){if((e|0)==4)break;r=e+20|0;f[g>>2]=+f[d+(r<<8)+(o<<3)>>2]+ +f[g>>2];f[h>>2]=+f[d+(r<<8)+(o<<3)+4>>2]+ +f[h>>2];r=e+24|0;f[k>>2]=+f[d+(r<<8)+(o<<3)>>2]+ +f[k>>2];f[l>>2]=+f[d+(r<<8)+(o<<3)+4>>2]+ +f[l>>2];r=e+28|0;f[m>>2]=+f[d+(r<<8)+(o<<3)>>2]+ +f[m>>2];f[n>>2]=+f[d+(r<<8)+(o<<3)+4>>2]+ +f[n>>2];e=e+1|0}o=o+1|0}ic[c[a+16>>2]&255](b,d+6912|0,5,32)}return}function Af(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=Nb;Nb=Nb+16|0;E=F;jq(h+86080|0,0,336)|0;y=h+8|0;z=g+310276|0;A=g+310226|0;B=g+76|0;D=h+20|0;u=h+87942|0;v=g+310120|0;w=g+310116|0;x=h+4|0;t=i+4|0;s=0;while(1){i=c[y>>2]|0;if(s>>>0>=i>>>0){j=35;break}p=s+1|0;r=a[h+12+p>>0]|0;q=c[g+310112+((r&255)<<2)>>2]|0;r=r<<24>>24==0?A:z;o=c[B>>2]|0;i=b[r>>1]|0;if((o|0)!=(i&65535|0)){j=6;break}j=0;while(1){if((j|0)==(q|0))break;k=j+1|0;l=b[r+(k<<1)>>1]|0;m=l&65535;j=h+86704+(p*192|0)+(j<<2)|0;i=i&65535;while(1){if(i>>>0>=m>>>0)break;c[g+381120+(s*192|0)+(i-o<<2)>>2]=c[j>>2];i=i+1|0}j=k;i=l}if((c[D>>2]|0)>>>0>1)n=(d[h+87932+s>>0]|0)<(d[u>>0]|0)?1:2;else n=1;j=c[v>>2]|0;i=0;while(1){if((i|0)==(j|0))break;k=i+1|0;l=e[g+310374+(k<<1)>>1]|0;m=h+87872+(n*20|0)+(i<<2)|0;i=e[g+310374+(i<<1)>>1]|0;while(1){if(i>>>0>=l>>>0)break;c[g+382464+(s*192|0)+(i-o<<2)>>2]=c[m>>2];i=i+1|0}i=k}i=0;while(1){if(i>>>0>=(c[w>>2]|0)>>>0)break;if(!(c[x>>2]|0))i=i+1|0;else{k=i+1|0;j=((e[g+310276+(k<<1)>>1]|0)+(e[g+310276+(i<<1)>>1]|0)|0)>>>1;i=a[h+41+i>>0]|0;if((s|0)<(c[t>>2]|0)?(C=j-(c[B>>2]|0)|0,(a[h+86032+C>>0]|0)!=1):0){j=C;i=0}else j=j-(c[B>>2]|0)|0;a[h+86032+(p*48|0)+j>>0]=i;i=k}}i=0;while(1){if((i|0)==(q|0))break;m=e[r+(i<<1)>>1]|0;i=i+1|0;k=e[r+(i<<1)>>1]|0;l=c[B>>2]|0;j=m;while(1){if(j>>>0>=k>>>0){j=0;break}if(!(a[j-l+(h+86032+(p*48|0))>>0]|0))j=j+1|0;else{j=1;break}}jq(m-l+(g+383808+(s*48|0))|0,j|0,k-m|0)|0}s=p}if((j|0)==6){mx(c[f+4>>2]|0,16,191188,E);UK(g);i=-558323010}else if((j|0)==35){k=h+86032|0;i=h+86032+(i*48|0)|0;j=k+48|0;do{c[k>>2]=c[i>>2];k=k+4|0;i=i+4|0}while((k|0)<(j|0));i=0}Nb=F;return i|0}function Bf(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=Nb;Nb=Nb+208|0;s=u;t=u+192|0;f=c[(c[a+24364>>2]|0)+(c[d+21796>>2]<<2)>>2]|0;r=t;c[r>>2]=0;c[r+4>>2]=0;jq(s|0,-1,192)|0;a:do if(!(f&8)){if(f&16|0){El(a,d,s,0,8,0,f&4096,f&16384,t);El(a,d,s,8,8,8,f&8192,f&32768,t);break}if(f&32|0){El(a,d,s,0,16,0,f&4096,f&16384,t);El(a,d,s,4,16,0,f&8192,f&32768,t);break}g=0;while(1){if((g|0)==4)break a;f=e[d+28552+(g<<1)>>1]|0;h=g<<2;i=h&8;b:do if(!(f&8)){if(f&16|0){q=f&4096;r=f&16384;El(a,d,s,h,4,i,q,r,t);El(a,d,s,h|2,4,i|4,q,r,t);break}j=f&4096;k=f&16384;if(f&32|0){El(a,d,s,h,8,i,j,k,t);El(a,d,s,h|1,8,i,j,k,t);break}f=0;while(1){if((f|0)==4)break b;El(a,d,s,f+h|0,4,f<<1&4|i,j,k,t);f=f+1|0}}else El(a,d,s,h,8,i,f&4096,f&16384,t);while(0);g=g+1|0}}else El(a,d,s,0,16,0,f&4096,f&16384,t);while(0);q=a+26992|0;r=d+21832|0;p=a+26364|0;f=c[d+23412>>2]|0;while(1){f=f+-1|0;if((f|0)<=-1)break;n=t+(f<<2)|0;m=0;while(1){if(m>>>0>=48)break;h=c[n>>2]|0;if(!h)break;g=b[s+(f*96|0)+(m<<1)>>1]|0;do if(g<<16>>16>-1){o=(c[d+23416+(f*1920|0)+(m*40|0)+24>>2]|0)+-1|0;i=d+23416+(f*1920|0)+(m*40|0)+36|0;j=c[i>>2]|0;v=c[j+636>>2]|0;l=c[q>>2]<<4>>v;k=g<<16>>16<<c[r>>2];c[n>>2]=h+-1;a=(c[p>>2]|0)==3;g=(v|0)!=0;if(g&a){v=k>>1;a=v-(k&1^1)|0;o=l+-1|0;js(j+4|0,(a|0)<(l|0)?a:o,1);js((c[i>>2]|0)+4|0,(v|0)>(o|0)?o:v,0);break}h=j+4|0;if(!(g|a)){v=(k<<1)+o|0;js(h,(v|0)<(l|0)?v:l+-1|0,0);break}g=l+-1|0;g=(k|0)>(g|0)?g:k;if(a){js(h,g,0);break}else{js(h,g,o);break}}while(0);m=m+1|0}}Nb=u;return}function Cf(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;i=Nb;Nb=Nb+256|0;h=i;a=0;while(1){if((a|0)==8)break;s=H(a,f)|0;p=(d[e+s>>0]|0)-(d[b+s>>0]|0)|0;q=s+1|0;k=d[e+q>>0]|0;q=d[b+q>>0]|0;o=k-q+p|0;g=a<<3;p=q-k+p|0;k=s+2|0;k=(d[e+k>>0]|0)-(d[b+k>>0]|0)|0;q=s+3|0;r=d[e+q>>0]|0;q=d[b+q>>0]|0;m=r-q+k|0;k=q-r+k|0;r=s+4|0;r=(d[e+r>>0]|0)-(d[b+r>>0]|0)|0;q=s+5|0;j=d[e+q>>0]|0;q=d[b+q>>0]|0;n=j-q+r|0;r=q-j+r|0;j=s+6|0;j=(d[e+j>>0]|0)-(d[b+j>>0]|0)|0;s=s+7|0;q=d[e+s>>0]|0;s=d[b+s>>0]|0;l=q-s+j|0;j=s-q+j|0;q=m+o|0;m=o-m|0;o=k+p|0;k=p-k|0;p=l+n|0;l=n-l|0;n=j+r|0;j=r-j|0;c[h+(g<<2)>>2]=p+q;c[h+((g|4)<<2)>>2]=q-p;c[h+((g|1)<<2)>>2]=n+o;c[h+((g|5)<<2)>>2]=o-n;c[h+((g|2)<<2)>>2]=l+m;c[h+((g|6)<<2)>>2]=m-l;c[h+((g|3)<<2)>>2]=j+k;c[h+((g|7)<<2)>>2]=k-j;a=a+1|0}a=0;g=0;while(1){if((g|0)==8)break;w=h+(g<<2)|0;o=c[w>>2]|0;u=h+(g+8<<2)|0;t=c[u>>2]|0;v=t+o|0;t=o-t|0;o=h+(g+16<<2)|0;b=c[o>>2]|0;p=h+(g+24<<2)|0;k=c[p>>2]|0;m=k+b|0;k=b-k|0;b=h+(g+32<<2)|0;r=c[b>>2]|0;f=h+(g+40<<2)|0;j=c[f>>2]|0;e=j+r|0;j=r-j|0;r=h+(g+48<<2)|0;s=c[r>>2]|0;q=h+(g+56<<2)|0;l=c[q>>2]|0;n=l+s|0;l=s-l|0;s=m+v|0;c[w>>2]=s;m=v-m|0;c[o>>2]=m;o=k+t|0;c[u>>2]=o;k=t-k|0;c[p>>2]=k;p=n+e|0;c[b>>2]=p;n=e-n|0;c[r>>2]=n;r=l+j|0;c[f>>2]=r;l=j-l|0;c[q>>2]=l;q=p+s|0;p=s-p|0;s=r+o|0;r=o-r|0;o=n+m|0;n=m-n|0;m=l+k|0;l=k-l|0;a=((l|0)>-1?l:0-l|0)+a+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)|0;g=g+1|0}Nb=i;return a|0}function Df(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=8-g|0;m=8-h|0;o=H(m,n)|0;m=H(m,g)|0;n=H(n,h)|0;h=H(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;n=((H(o,d[c>>0]|0)|0)+32|0)>>>6&255;a[b>>0]=n;n=((H(o,d[c+1>>0]|0)|0)+32|0)>>>6&255;a[b+1>>0]=n;n=((H(o,d[c+2>>0]|0)|0)+32|0)>>>6&255;a[b+2>>0]=n;n=((H(o,d[c+3>>0]|0)|0)+32|0)>>>6&255;a[b+3>>0]=n;b=b+e|0;g=g+1|0;c=c+e|0}}else{h=(n|0)==0?1:e;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=H(o,d[c>>0]|0)|0;n=(n+32+(H(l,d[c+h>>0]|0)|0)|0)>>>6&255;a[b>>0]=n;n=H(o,d[c+1>>0]|0)|0;n=(n+32+(H(l,d[c+i>>0]|0)|0)|0)>>>6&255;a[b+1>>0]=n;n=H(o,d[c+2>>0]|0)|0;n=(n+32+(H(l,d[c+j>>0]|0)|0)|0)>>>6&255;a[b+2>>0]=n;n=H(o,d[c+3>>0]|0)|0;n=(n+32+(H(l,d[c+k>>0]|0)|0)|0)>>>6&255;a[b+3>>0]=n;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(o,d[c>>0]|0)|0;q=c+1|0;t=H(m,d[q>>0]|0)|0;p=c+e|0;u=H(n,d[p>>0]|0)|0;s=c+i|0;u=(r+32+t+u+(H(h,d[s>>0]|0)|0)|0)>>>6&255;a[b>>0]=u;q=H(o,d[q>>0]|0)|0;u=c+2|0;t=H(m,d[u>>0]|0)|0;s=H(n,d[s>>0]|0)|0;r=c+j|0;s=(q+32+t+s+(H(h,d[r>>0]|0)|0)|0)>>>6&255;a[b+1>>0]=s;u=H(o,d[u>>0]|0)|0;s=c+3|0;t=H(m,d[s>>0]|0)|0;r=H(n,d[r>>0]|0)|0;q=c+k|0;r=(u+32+t+r+(H(h,d[q>>0]|0)|0)|0)>>>6&255;a[b+2>>0]=r;s=H(o,d[s>>0]|0)|0;r=H(m,d[c+4>>0]|0)|0;q=H(n,d[q>>0]|0)|0;q=(s+32+r+q+(H(h,d[c+l>>0]|0)|0)|0)>>>6&255;a[b+3>>0]=q;b=b+e|0;g=g+1|0;c=p}}while(0);return}function Ef(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=Nb;Nb=Nb+848|0;o=t+568|0;p=t+288|0;q=t+8|0;r=t;Bk(p|0,b|0,280)|0;Bk(q|0,b|0,280)|0;Bk(o|0,e|0,280)|0;n=a+13448|0;j=a+13444|0;k=a+12540|0;l=a+13380|0;m=a+13384|0;b=ac[c[(c[n>>2]|0)+24>>2]&7](c[j>>2]|0,k,o,f,l,m)|0;do if((b|0)!=2147483647){if((b|0)>=0){s=a+13388|0;if(!b)e=c[s>>2]|0;else{mt(o,o,b);c[s>>2]=0;f=f-b|0;e=0}i=a+13392|0;h=a+12808|0;a=b;b=0;while(1){if((e|0)==0?(c[m>>2]|0)!=0:0){mt(q,k,c[l>>2]|0);g=ac[c[(c[n>>2]|0)+8>>2]&7](c[j>>2]|0,p,d,q,c[m>>2]|0,r)|0;d=d-g|0;b=g+b|0;mt(p,p,g);g=c[r>>2]|0;e=(c[m>>2]|0)-g|0;c[m>>2]=e;c[l>>2]=(c[l>>2]|0)+g;if(!f){e=21;break}if((e|0)>(a|0))g=a;else{mt(o,o,0-e|0);f=(c[m>>2]|0)+f|0;c[m>>2]=0;c[l>>2]=0;g=0}}else g=a;e=(f|0)>0;if(e|(c[i>>2]|0)!=0?(c[m>>2]|0)==0:0){c[l>>2]=0;e=ac[c[(c[n>>2]|0)+8>>2]&7](c[j>>2]|0,p,d,o,e?f:0,r)|0;mt(p,p,e);a=c[r>>2]|0;mt(o,o,a);b=e+b|0;d=d-e|0;f=f-a|0}e=c[l>>2]|0;u=(c[m>>2]|0)+f|0;a=u+e|0;if((u|0)>(e|0)?1:(a|0)<=(c[h>>2]|0)){a=Hj(k,a)|0;if((a|0)<0){e=18;break}}else{mt(q,k,e);Jn(k,q,c[m>>2]|0);c[l>>2]=0}if(!f){e=21;break}u=c[m>>2]|0;e=u+2|0;e=(u|0)==0?f:(d|0)!=0&(e|0)<(f|0)?e:f;mt(q,k,(c[l>>2]|0)+u|0);Jn(q,o,e);c[m>>2]=e+(c[m>>2]|0);f=f-e|0;mt(o,o,e);c[s>>2]=0;if((f|0)==0?(c[m>>2]|0)==(e|0):0){e=21;break}a=e+g|0;e=0}if((e|0)==18){b=a;break}else if((e|0)==21){c[s>>2]=(d|0)!=0&1;break}}}else b=0;while(0);Nb=t;return b|0}function Ff(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:(a^-2147483648)>>31&16383)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:(n^-2147483648)>>31&16383)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:(i^-2147483648)>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function Gf(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;w=d[c+1>>0]|0;y=(d[a+1>>0]|0)+2|0;x=(d[b>>0]|0)-((y+(d[a>>0]|0)+(d[c>>0]|0)+w|0)>>>2)|0;z=d[a+2>>0]|0;v=d[c+2>>0]|0;w=(d[b+1>>0]|0)-((y+w+z+v|0)>>>2)|0;y=d[a+3>>0]|0;u=d[c+3>>0]|0;v=(d[b+2>>0]|0)-((z+2+v+y+u|0)>>>2)|0;z=d[a+4>>0]|0;t=d[c+4>>0]|0;u=(d[b+3>>0]|0)-((y+2+u+z+t|0)>>>2)|0;y=d[a+5>>0]|0;s=d[c+5>>0]|0;t=(d[b+4>>0]|0)-((z+2+t+y+s|0)>>>2)|0;z=d[a+6>>0]|0;r=d[c+6>>0]|0;s=(d[b+5>>0]|0)-((y+2+s+z+r|0)>>>2)|0;y=d[a+7>>0]|0;q=d[c+7>>0]|0;r=(d[b+6>>0]|0)-((z+2+r+y+q|0)>>>2)|0;z=d[a+8>>0]|0;p=d[c+8>>0]|0;q=(d[b+7>>0]|0)-((y+2+q+z+p|0)>>>2)|0;y=d[a+9>>0]|0;o=d[c+9>>0]|0;p=(d[b+8>>0]|0)-((z+2+p+y+o|0)>>>2)|0;z=d[a+10>>0]|0;n=d[c+10>>0]|0;o=(d[b+9>>0]|0)-((y+2+o+z+n|0)>>>2)|0;y=d[a+11>>0]|0;m=d[c+11>>0]|0;n=(d[b+10>>0]|0)-((z+2+n+y+m|0)>>>2)|0;z=d[a+12>>0]|0;l=d[c+12>>0]|0;m=(d[b+11>>0]|0)-((y+2+m+z+l|0)>>>2)|0;y=d[a+13>>0]|0;k=d[c+13>>0]|0;l=(d[b+12>>0]|0)-((z+2+l+y+k|0)>>>2)|0;z=d[a+14>>0]|0;j=d[c+14>>0]|0;k=(d[b+13>>0]|0)-((y+2+k+z+j|0)>>>2)|0;y=d[a+15>>0]|0;i=d[c+15>>0]|0;j=(d[b+14>>0]|0)-((z+2+j+y+i|0)>>>2)|0;i=(d[b+15>>0]|0)-((y+2+i+(d[a+16>>0]|0)+(d[c+16>>0]|0)|0)>>>2)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Hf(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:(a^-2147483648)>>31&4095)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:(n^-2147483648)>>31&4095)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:(i^-2147483648)>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function If(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:(a^-2147483648)>>31&1023)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:(i^-2147483648)>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function Jf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=Nb;Nb=Nb+16|0;l=p+8|0;o=p+4|0;m=p;g=c[a>>2]|0;c[l>>2]=0;c[o>>2]=0;c[m>>2]=0;if(!(e&64))i=Yn(g,b,0,e)|0;else i=0;if(!(e&4))h=sN(b)|0;else h=b;c[o>>2]=h;j=h;if(!(e&8))if(!h)f=0;else{f=sN(d)|0;c[m>>2]=f}else{c[m>>2]=d;f=d}if(!g){g=rR(8)|0;c[a>>2]=g;if(!g)k=32;else{n=g;k=11}}else{n=g;k=11}a:do if((k|0)==11){do if((b|0)==0|(h|0)!=0){g=(f|0)!=0;if((d|0)==0|g){if(!i)if(g){g=n+4|0;b=eP(c[g>>2]|0,(c[n>>2]<<3)+8|0)|0;if(!b)break;c[g>>2]=b;k=23}else k=27;else{if(e&16|0){FV(h);FV(f);f=0;break a}g=c[i+4>>2]|0;if(!(e&32))FV(g);else c[l>>2]=g;FV(c[i>>2]|0);d=c[n+4>>2]|0;h=(c[n>>2]|0)+-1|0;c[n>>2]=h;h=d+(h<<3)|0;d=c[h+4>>2]|0;k=i;c[k>>2]=c[h>>2];c[k+4>>2]=d;if(!f)k=27;else k=23}if((k|0)==23){d=n+4|0;h=c[d>>2]|0;g=c[n>>2]|0;c[h+(g<<3)>>2]=j;f=c[m>>2]|0;c[h+(g<<3)+4>>2]=f;h=c[l>>2]|0;if((e&32|0)==0|(h|0)==0)f=g;else{g=wu(h)|0;g=g+1+(wu(f)|0)|0;b=rR(g)|0;if(!b)break;QM(b,h,g)|0;zM(l);QM(b,f,g)|0;c[(c[d>>2]|0)+(c[n>>2]<<3)+4>>2]=b;zM(m);f=c[n>>2]|0}f=f+1|0;c[n>>2]=f}else if((k|0)==27){zM(o);f=c[n>>2]|0}if(f|0){f=0;break a}zM(n+4|0);zM(a);f=0;break a}else f=0}while(0);if(!(c[n>>2]|0)){zM(n+4|0);zM(a);k=32}else k=32}while(0);if((k|0)==32){FV(c[o>>2]|0);FV(f);f=-12}Nb=p;return f|0}function Kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a+80>>2]=c[b+80>>2];c[a+68>>2]=c[b+68>>2];c[a+72>>2]=c[b+72>>2];h=b+352|0;c[a+352>>2]=c[h>>2];e=b+240|0;g=c[e+4>>2]|0;d=a+240|0;c[d>>2]=c[e>>2];c[d+4>>2]=g;c[a+76>>2]=c[b+76>>2];d=Fe(a,b,0)|0;a:do if((d|0)>=0){if(!(c[b+248>>2]|0)){d=Qv(a,32)|0;if((d|0)<0)break;d=ux(a,b)|0;if((d|0)>=0)break;rv(a);break}d=0;while(1){if(d>>>0>=8){f=11;break}e=c[b+248+(d<<2)>>2]|0;if(e|0?(g=rI(e)|0,c[a+248+(d<<2)>>2]=g,(g|0)==0):0){d=-12;break}d=d+1|0}b:do if((f|0)==11){e=b+280|0;c:do if(c[e>>2]|0){f=b+284|0;d=BO(4,c[f>>2]|0)|0;g=a+280|0;c[g>>2]=d;if(!d){d=-12;break b}c[a+284>>2]=c[f>>2];d=0;while(1){if((d|0)>=(c[f>>2]|0))break c;i=rI(c[(c[e>>2]|0)+(d<<2)>>2]|0)|0;c[(c[g>>2]|0)+(d<<2)>>2]=i;if(!(c[(c[g>>2]|0)+(d<<2)>>2]|0)){d=-12;break b}else d=d+1|0}}while(0);d=c[b+376>>2]|0;if(d|0?(i=rI(d)|0,c[a+376>>2]=i,(i|0)==0):0){d=-12;break}f=b+64|0;if((c[f>>2]|0)==(b|0))c[a+64>>2]=a;else{d=c[h>>2]|0;if(!d){d=-22;break}e=pQ(d)|0;c[a+64>>2]=e;if(!e){d=-12;break}Bk(e|0,c[f>>2]|0,d<<2|0)|0}c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];d=a+32|0;i=b+32|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[d+16>>2]=c[i+16>>2];c[d+20>>2]=c[i+20>>2];c[d+24>>2]=c[i+24>>2];c[d+28>>2]=c[i+28>>2];d=0;break a}while(0);rv(a)}while(0);return d|0}function Lf(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;i=a+144|0;g=MT(c[i>>2]|0)|0;if(!g){h=1;g=1}else{h=1<<(d[g+6>>0]|0);g=1<<(d[g+5>>0]|0)}switch(c[i>>2]|0){case 124:case 125:case 337:case 338:case 87:case 88:case 313:case 314:case 311:case 312:case 85:case 86:case 83:case 84:case 107:case 108:case 101:case 102:case 95:case 96:case 59:case 58:case 309:case 310:case 307:case 308:case 77:case 78:case 75:case 76:case 331:case 330:case 329:case 328:case 105:case 106:case 99:case 100:case 93:case 94:case 57:case 56:case 305:case 306:case 303:case 304:case 73:case 74:case 79:case 80:case 103:case 104:case 97:case 98:case 91:case 92:case 55:case 54:case 301:case 302:case 299:case 300:case 71:case 72:case 69:case 70:case 90:case 89:case 35:case 14:case 34:case 13:case 12:case 32:case 31:case 8:case 123:case 82:case 5:case 33:case 4:case 17:case 119:case 1:case 0:{h=32;g=16;l=14;break}case 18:case 315:case 7:{h=32;g=32;l=14;break}case 6:{i=c[a+48>>2]|0;if((i|0)==23){h=64;g=64;l=14}else l=15;break}case 46:{i=c[a+48>>2]|0;j=(i|0)==43;if((i|0)==40){g=8;i=40;l=13}else{h=j?4:h;g=j?4:g;l=15}break}case 22:case 19:case 11:{i=c[a+48>>2]|0;switch(i|0){case 44:case 50:{h=4;g=4;break}default:{}}switch(i|0){case 40:case 149:{g=8;l=13;break}default:l=15}break}case 3:{i=c[a+48>>2]|0;if((i&-2|0)==54){g=4;l=13}else l=15;break}case 2:{i=c[a+48>>2]|0;if((i|0)==44){g=4;i=44;l=13}else l=15;break}default:{i=c[a+48>>2]|0;l=15}}if((l|0)==13){k=g;h=g;j=(i|0)==137;g=8}else if((l|0)==14){i=c[a+48>>2]|0;j=(i|0)==137;l=16}else if((l|0)==15){j=(i|0)==137;if((g|0)>8)l=16;else{k=g;g=8}}if((l|0)==16)k=g;g=j?g:k;c[b>>2]=g+-1+(c[b>>2]|0)&0-g;g=h+-1+(c[e>>2]|0)&0-h;c[e>>2]=g;if((i|0)!=28?(c[a+792>>2]|0)==0:0)switch(i|0){case 91:case 92:case 93:case 107:{l=20;break}default:{}}else l=20;if((l|0)==20){c[e>>2]=g+2;e=c[b>>2]|0;c[b>>2]=(e|0)>32?e:32}g=0;while(1){if((g|0)==4)break;c[f+(g<<2)>>2]=8;g=g+1|0}return}function Mf(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=g^e;n=(e|0)>-1|(e|0)==-1&d>>>0>4294967295;j=iP(0,0,d|0,e|0)|0;k=M()|0;j=n?d:j;k=n?e:k;n=(g|0)>-1|(g|0)==-1&f>>>0>4294967295;l=iP(0,0,f|0,g|0)|0;m=M()|0;l=n?f:l;m=n?g:m;n=Ii(j,k,l,m)|0;o=M()|0;if((n|0)==0&(o|0)==0)m=g;else{d=Eu(j|0,k|0,n|0,o|0)|0;e=M()|0;f=Eu(l|0,m|0,n|0,o|0)|0;m=M()|0}s=(m|0)>(i|0)|(m|0)==(i|0)&f>>>0>h>>>0|((e|0)>(i|0)|(e|0)==(i|0)&d>>>0>h>>>0);l=s?1:d;t=0;k=s?0:f;u=1;j=s?f:0;f=s?m:0;while(1){if((j|0)==0&(f|0)==0){j=0;f=0;break}n=Eu(d|0,e|0,j|0,f|0)|0;m=M()|0;o=((l|0)<0)<<31>>31;p=oK(n|0,m|0,l|0,o|0)|0;g=((t|0)<0)<<31>>31;p=kP(p|0,M()|0,t|0,g|0)|0;y=M()|0;r=((k|0)<0)<<31>>31;q=oK(n|0,m|0,k|0,r|0)|0;s=((u|0)<0)<<31>>31;q=kP(q|0,M()|0,u|0,s|0)|0;x=M()|0;if((y|0)>(i|0)|(y|0)==(i|0)&p>>>0>h>>>0|((x|0)>(i|0)|(x|0)==(i|0)&q>>>0>h>>>0)){v=6;break}s=oK(n|0,m|0,j|0,f|0)|0;s=iP(d|0,e|0,s|0,M()|0)|0;x=f;y=j;u=k;t=l;l=p;k=q;j=s;f=M()|0;e=x;d=y}if((v|0)==6){if(l){n=iP(h|0,i|0,t|0,g|0)|0;n=Eu(n|0,M()|0,l|0,o|0)|0;m=M()|0}if(k){v=iP(h|0,i|0,u|0,s|0)|0;v=Eu(v|0,M()|0,k|0,r|0)|0;y=M()|0;x=m>>>0>y>>>0|(m|0)==(y|0)&n>>>0>v>>>0;n=x?v:n;m=x?y:m}x=uN(k|0,r|0,1)|0;x=oK(x|0,M()|0,n|0,m|0)|0;x=kP(x|0,M()|0,u|0,s|0)|0;x=oK(x|0,M()|0,j|0,f|0)|0;i=M()|0;y=oK(d|0,e|0,k|0,r|0)|0;v=M()|0;if(i>>>0>v>>>0|(i|0)==(v|0)&x>>>0>y>>>0){l=(H(l,n)|0)+t|0;k=(H(k,n)|0)+u|0}}c[a>>2]=(w|0)<0?0-l|0:l;c[b>>2]=k;return (j|0)==0&(f|0)==0&1|0}function Nf(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:(a^-2147483648)>>31&511)|0)>>>1;a=d+2|0;n=H((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+4|0;n=H((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+6|0;n=H((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+8|0;n=H((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+10|0;n=H((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+12|0;n=H((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=d+14|0;i=H((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:(i^-2147483648)>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function Of(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;E=e[f+(z<<1)>>1]|0;N=e[f>>1]|0;M=e[f+(x<<1)>>1]|0;L=e[f+(u<<1)>>1]|0;K=e[f+(v<<1)>>1]|0;I=e[f+(n<<1)>>1]|0;F=e[f+(o<<1)>>1]|0;a=e[f+(p<<1)>>1]|0;B=e[f+(q<<1)>>1]|0;C=e[f+(r<<1)>>1]|0;A=e[f+(s<<1)>>1]|0;D=e[f+(t<<1)>>1]|0;J=K+16|0;c=J+(e[f+(y<<1)>>1]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(c>>>0<16384?c:(c^-2147483648)>>31&16383)|0)>>>1;c=d+(w<<1)|0;G=I+16|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>5;b[c>>1]=((E>>>0<16384?E:(E^-2147483648)>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=d+(h<<1)|0;E=F+16|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>5;b[c>>1]=((N>>>0<16384?N:(N^-2147483648)>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=d+(i<<1)|0;M=M+16+a+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>5;b[c>>1]=((M>>>0<16384?M:(M^-2147483648)>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=d+(j<<1)|0;K=L+16+B+((F+I|0)*20|0)+(H(a+K|0,-5)|0)>>5;b[c>>1]=((K>>>0<16384?K:(K^-2147483648)>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=d+(k<<1)|0;I=J+C+((a+F|0)*20|0)+(H(B+I|0,-5)|0)>>5;b[c>>1]=((I>>>0<16384?I:(I^-2147483648)>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=d+(l<<1)|0;F=G+A+((B+a|0)*20|0)+(H(C+F|0,-5)|0)>>5;b[c>>1]=((F>>>0<16384?F:(F^-2147483648)>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=d+(m<<1)|0;a=E+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<16384?a:(a^-2147483648)>>31&16383)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;d=d+2|0;f=f+2|0}return}function Pf(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=Nb;Nb=Nb+16|0;v=A;x=A+4|0;y=1<<f;a:do if((f|0)<=30){z=vt(e,y,i&4)|0;if((z|0)<0)j=z;else{s=e+4|0;c[x>>2]=(c[s>>2]|0)+(z<<2);t=32-f|0;u=(i&2|0)==0;j=0;b:while(1){if((j|0)>=(g|0))break;r=h+(j<<3)|0;l=a[r>>0]|0;p=l&255;k=h+(j<<3)+4|0;m=c[k>>2]|0;q=b[h+(j<<3)+2>>1]|0;if((p|0)>(f|0)){q=p-f|0;l=m>>>t;a[r>>0]=q;c[k>>2]=m<<f;k=j;while(1){k=k+1|0;if((k|0)>=(g|0))break;m=h+(k<<3)|0;n=(d[m>>0]|0)-f|0;if((n|0)<1)break;o=h+(k<<3)+4|0;p=c[o>>2]|0;if((p>>>t|0)!=(l|0))break;a[m>>0]=n;c[o>>2]=p<<f;q=(q|0)>(n|0)?q:n}m=(q|0)>(f|0)?f:q;if(!u)l=(d[148528+(l>>>8&255)>>0]<<16|d[148528+(l&255)>>0]<<24|d[148528+(l>>>16&255)>>0]<<8|d[148528+(l>>>24)>>0])>>>t;b[(c[x>>2]|0)+(l<<2)+2>>1]=0-m;j=Pf(e,m,k-j|0,r,i)|0;if((j|0)<0)break a;c[x>>2]=(c[s>>2]|0)+(z<<2);b[(c[x>>2]|0)+(l<<2)>>1]=j;j=k}else{o=1<<f-p;if(u){n=1;k=m>>>t}else{n=1<<p;k=d[148528+(m>>>8&255)>>0]<<16|d[148528+(m&255)>>0]<<24|d[148528+(m>>>16&255)>>0]<<8|d[148528+(m>>>24)>>0]}m=l&255;l=0;while(1){if((l|0)>=(o|0))break;r=b[(c[x>>2]|0)+(k<<2)+2>>1]|0;if(!(r<<16>>16==0|(r<<16>>16|0)==(p|0))){w=12;break b}b[(c[x>>2]|0)+(k<<2)+2>>1]=m;b[(c[x>>2]|0)+(k<<2)>>1]=q;l=l+1|0;k=k+n|0}j=j+1|0}}if((w|0)==12){mx(0,16,191719,v);j=-1094995529;break}j=0;while(1){if((j|0)>=(y|0)){j=z;break a}if(!(b[(c[x>>2]|0)+(j<<2)+2>>1]|0))b[(c[x>>2]|0)+(j<<2)>>1]=-1;j=j+1|0}}}else j=-1;while(0);Nb=A;return j|0}function Qf(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;E=e[f+(z<<1)>>1]|0;N=e[f>>1]|0;M=e[f+(x<<1)>>1]|0;L=e[f+(u<<1)>>1]|0;K=e[f+(v<<1)>>1]|0;I=e[f+(n<<1)>>1]|0;F=e[f+(o<<1)>>1]|0;a=e[f+(p<<1)>>1]|0;B=e[f+(q<<1)>>1]|0;C=e[f+(r<<1)>>1]|0;A=e[f+(s<<1)>>1]|0;D=e[f+(t<<1)>>1]|0;J=K+16|0;c=J+(e[f+(y<<1)>>1]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(c>>>0<4096?c:(c^-2147483648)>>31&4095)|0)>>>1;c=d+(w<<1)|0;G=I+16|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>5;b[c>>1]=((E>>>0<4096?E:(E^-2147483648)>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=d+(h<<1)|0;E=F+16|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>5;b[c>>1]=((N>>>0<4096?N:(N^-2147483648)>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=d+(i<<1)|0;M=M+16+a+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>5;b[c>>1]=((M>>>0<4096?M:(M^-2147483648)>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=d+(j<<1)|0;K=L+16+B+((F+I|0)*20|0)+(H(a+K|0,-5)|0)>>5;b[c>>1]=((K>>>0<4096?K:(K^-2147483648)>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=d+(k<<1)|0;I=J+C+((a+F|0)*20|0)+(H(B+I|0,-5)|0)>>5;b[c>>1]=((I>>>0<4096?I:(I^-2147483648)>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=d+(l<<1)|0;F=G+A+((B+a|0)*20|0)+(H(C+F|0,-5)|0)>>5;b[c>>1]=((F>>>0<4096?F:(F^-2147483648)>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=d+(m<<1)|0;a=E+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<4096?a:(a^-2147483648)>>31&4095)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;d=d+2|0;f=f+2|0}return}function Rf(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;E=e[f+(z<<1)>>1]|0;N=e[f>>1]|0;M=e[f+(x<<1)>>1]|0;L=e[f+(u<<1)>>1]|0;K=e[f+(v<<1)>>1]|0;I=e[f+(n<<1)>>1]|0;F=e[f+(o<<1)>>1]|0;a=e[f+(p<<1)>>1]|0;B=e[f+(q<<1)>>1]|0;C=e[f+(r<<1)>>1]|0;A=e[f+(s<<1)>>1]|0;D=e[f+(t<<1)>>1]|0;J=K+16|0;c=J+(e[f+(y<<1)>>1]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(c>>>0<1024?c:(c^-2147483648)>>31&1023)|0)>>>1;c=d+(w<<1)|0;G=I+16|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>5;b[c>>1]=((E>>>0<1024?E:(E^-2147483648)>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=d+(h<<1)|0;E=F+16|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>5;b[c>>1]=((N>>>0<1024?N:(N^-2147483648)>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=d+(i<<1)|0;M=M+16+a+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>5;b[c>>1]=((M>>>0<1024?M:(M^-2147483648)>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=d+(j<<1)|0;K=L+16+B+((F+I|0)*20|0)+(H(a+K|0,-5)|0)>>5;b[c>>1]=((K>>>0<1024?K:(K^-2147483648)>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=d+(k<<1)|0;I=J+C+((a+F|0)*20|0)+(H(B+I|0,-5)|0)>>5;b[c>>1]=((I>>>0<1024?I:(I^-2147483648)>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=d+(l<<1)|0;F=G+A+((B+a|0)*20|0)+(H(C+F|0,-5)|0)>>5;b[c>>1]=((F>>>0<1024?F:(F^-2147483648)>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=d+(m<<1)|0;a=E+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<1024?a:(a^-2147483648)>>31&1023)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;d=d+2|0;f=f+2|0}return}function Sf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Nb;Nb=Nb+48|0;m=n+32|0;l=n+24|0;j=n+16|0;h=n+8|0;e=n;k=n+36|0;c[k>>2]=0;g=ev(b,2,k)|0;a:do if(!g)b=0;else{b:do if(!(c[(c[a+12>>2]|0)+16>>2]&16384)){mx(a,16,166241,e);b=-22;e=a}else{f=c[k>>2]|0;c:do if((f|0)>=4){e=g+4|0;i=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;b=f+-4|0;c[k>>2]=b;do if(i&1){if((f|0)<8)break c;b=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((b|0)<1){mx(a,16,166334,h);b=-1094995529;e=a;break b}else{c[a+420>>2]=b;b=f+-8|0;c[k>>2]=b;e=g+8|0;break}}while(0);if(i&2){if((b|0)<8)break;g=e;f=g;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=a+448|0;c[h>>2]=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;c[h+4>>2]=g;b=b+-8|0;c[k>>2]=b;e=e+8|0}do if(i&4){if((b|0)<4)break c;f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((f|0)<1){mx(a,16,166356,j);b=-1094995529;e=a;break b}else{c[a+416>>2]=f;b=b+-4|0;c[k>>2]=b;e=e+4|0;break}}while(0);if(!(i&8)){b=0;break a}if((b|0)>=8){l=e+4|0;j=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;c[a+124>>2]=j;l=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;c[a+128>>2]=l;c[k>>2]=b+-8;b=jy(a,j,l)|0;if((b|0)>=0){b=0;break a}e=a;break b}}while(0);mx(a,16,166376,l);b=-1094995529;e=a}while(0);mx(e,16,166411,m);b=(c[a+688>>2]&8|0)==0?0:b}while(0);Nb=n;return b|0}function Tf(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;E=e[f+(z<<1)>>1]|0;N=e[f>>1]|0;M=e[f+(x<<1)>>1]|0;L=e[f+(u<<1)>>1]|0;K=e[f+(v<<1)>>1]|0;I=e[f+(n<<1)>>1]|0;F=e[f+(o<<1)>>1]|0;a=e[f+(p<<1)>>1]|0;B=e[f+(q<<1)>>1]|0;C=e[f+(r<<1)>>1]|0;A=e[f+(s<<1)>>1]|0;D=e[f+(t<<1)>>1]|0;J=K+16|0;c=J+(e[f+(y<<1)>>1]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(c>>>0<512?c:(c^-2147483648)>>31&511)|0)>>>1;c=d+(w<<1)|0;G=I+16|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>5;b[c>>1]=((E>>>0<512?E:(E^-2147483648)>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=d+(h<<1)|0;E=F+16|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>5;b[c>>1]=((N>>>0<512?N:(N^-2147483648)>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=d+(i<<1)|0;M=M+16+a+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>5;b[c>>1]=((M>>>0<512?M:(M^-2147483648)>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=d+(j<<1)|0;K=L+16+B+((F+I|0)*20|0)+(H(a+K|0,-5)|0)>>5;b[c>>1]=((K>>>0<512?K:(K^-2147483648)>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=d+(k<<1)|0;I=J+C+((a+F|0)*20|0)+(H(B+I|0,-5)|0)>>5;b[c>>1]=((I>>>0<512?I:(I^-2147483648)>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=d+(l<<1)|0;F=G+A+((B+a|0)*20|0)+(H(C+F|0,-5)|0)>>5;b[c>>1]=((F>>>0<512?F:(F^-2147483648)>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=d+(m<<1)|0;a=E+D+((C+B|0)*20|0)+(H(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<512?a:(a^-2147483648)>>31&511)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;d=d+2|0;f=f+2|0}return}function Uf(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;while(1){if((g|0)==8)break;k=c+1|0;j=c+-1|0;l=c+2|0;h=H((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+3|0;h=(((d[k>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[m>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=H((d[m>>0]|0)+(d[c>>0]|0)|0,-5)|0;o=c+4|0;n=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+n+(d[o>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=H((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;j=c+5|0;n=(((d[m>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[j>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;n=H((d[j>>0]|0)+(d[l>>0]|0)|0,-5)|0;i=c+6|0;n=(((d[o>>0]|0)+(d[m>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+n+(d[i>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+4|0;n=H((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+7|0;n=(((d[j>>0]|0)+(d[o>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+n+(d[k>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+5|0;n=H((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;l=c+8|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+6|0;n=H((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+9|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[o>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+7|0;i=H((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+10>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function Vf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;p=b+8|0;q=d+8|0;r=b+12|0;s=d+12|0;t=b+16|0;u=d+16|0;g=b+24|0;h=d+24|0;i=b+4|0;j=d+36|0;k=b+20|0;l=d+52|0;m=b+28|0;n=d+60|0;o=a+4|0;f=0;while(1){if((f|0)>=(e|0))break;C=c[(c[p>>2]|0)+(f<<2)>>2]|0;B=c[q>>2]|0;C=oK(B|0,((B|0)<0)<<31>>31|0,C|0,((C|0)<0)<<31>>31|0)|0;B=M()|0;v=c[(c[r>>2]|0)+(f<<2)>>2]|0;w=c[s>>2]|0;v=oK(w|0,((w|0)<0)<<31>>31|0,v|0,((v|0)<0)<<31>>31|0)|0;B=kP(v|0,M()|0,C|0,B|0)|0;C=M()|0;v=c[(c[b>>2]|0)+(f<<2)>>2]|0;w=c[d>>2]|0;v=oK(w|0,((w|0)<0)<<31>>31|0,v|0,((v|0)<0)<<31>>31|0)|0;w=M()|0;x=c[(c[t>>2]|0)+(f<<2)>>2]|0;y=c[u>>2]|0;x=oK(y|0,((y|0)<0)<<31>>31|0,x|0,((x|0)<0)<<31>>31|0)|0;y=M()|0;z=c[(c[g>>2]|0)+(f<<2)>>2]|0;A=c[h>>2]|0;z=oK(A|0,((A|0)<0)<<31>>31|0,z|0,((z|0)<0)<<31>>31|0)|0;A=M()|0;C=kP(B|0,C|0,16384,0)|0;B=M()|0;w=kP(C|0,B|0,v|0,w|0)|0;y=kP(w|0,M()|0,x|0,y|0)|0;A=kP(y|0,M()|0,z|0,A|0)|0;A=GN(A|0,M()|0,15)|0;M()|0;c[(c[a>>2]|0)+(f<<2)>>2]=A;A=c[(c[i>>2]|0)+(f<<2)>>2]|0;z=c[j>>2]|0;A=oK(z|0,((z|0)<0)<<31>>31|0,A|0,((A|0)<0)<<31>>31|0)|0;z=M()|0;y=c[(c[k>>2]|0)+(f<<2)>>2]|0;x=c[l>>2]|0;y=oK(x|0,((x|0)<0)<<31>>31|0,y|0,((y|0)<0)<<31>>31|0)|0;x=M()|0;w=c[(c[m>>2]|0)+(f<<2)>>2]|0;v=c[n>>2]|0;w=oK(v|0,((v|0)<0)<<31>>31|0,w|0,((w|0)<0)<<31>>31|0)|0;v=M()|0;z=kP(C|0,B|0,A|0,z|0)|0;x=kP(z|0,M()|0,y|0,x|0)|0;v=kP(x|0,M()|0,w|0,v|0)|0;v=GN(v|0,M()|0,15)|0;M()|0;c[(c[o>>2]|0)+(f<<2)>>2]=v;f=f+1|0}return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=Nb;Nb=Nb+32|0;t=v+24|0;n=v+16|0;m=v+8|0;g=v;f=e+24|0;k=d+26992|0;p=c[k>>2]|0;r=d+27e3|0;u=c[r>>2]|0;l=H(u,p)|0;s=d+26996|0;o=H(c[s>>2]<<1|1,p<<1|1)|0;p=H(u,p+1|0)|0;u=o+(p<<1)|0;a[e+28344>>0]=-2;a[e+28336>>0]=-2;a[e+28328>>0]=-2;a[e+28304>>0]=-2;a[e+28296>>0]=-2;a[e+28288>>0]=-2;a:do if((c[d+25628>>2]|0)==(e|0)){q=d+4|0;c[f>>2]=c[q>>2];c[e+824>>2]=1;c[e+828>>2]=d;c[e+812>>2]=1;i=d+27004|0;j=c[i>>2]|0;c[e+576>>2]=j;h=c[s>>2]|0;c[e+580>>2]=h;c[e+584>>2]=c[k>>2];c[e+588>>2]=c[r>>2];c[e+592>>2]=h<<1|1;j=rR((j<<2)+4|0)|0;c[e+572>>2]=j;if((j|0)==0?(c[i>>2]&1073741823|0)!=1073741823:0){mx(c[q>>2]|0,16,172029,g);d=-12;break}g=c[k>>2]|0;d=0;while(1){if((d|0)>=(g|0))break;h=c[s>>2]|0;i=H(h,d)|0;f=0;while(1){if((f|0)>=(h|0))break;w=(H(c[r>>2]|0,d)|0)+f|0;c[j+(i+f<<2)>>2]=w;f=f+1|0}d=d+1|0}h=H(c[r>>2]|0,g+-1|0)|0;i=c[s>>2]|0;w=j+((H(i,g)|0)<<2)|0;c[w>>2]=h+i;w=rR(l)|0;c[e+604>>2]=w;if(!((l|0)==0|(w|0)!=0)){mx(c[q>>2]|0,16,172029,m);d=-12;break}w=Ax(H((c[k>>2]|0)*17|0,c[r>>2]|0)|0)|0;c[e+608>>2]=w;if((w|0)==0?H((c[k>>2]|0)*17|0,c[r>>2]|0)|0:0){mx(c[q>>2]|0,16,172029,n);d=-12;break}f=rR(u<<1)|0;c[e+27784>>2]=f;if(!f){mx(c[q>>2]|0,16,172029,t);d=-12;break}c[e+612>>2]=f+(c[s>>2]<<1<<1)+4;d=f+(o<<1)+(c[r>>2]<<1)+2|0;c[e+616>>2]=d;c[e+620>>2]=d+(p<<1);d=0;while(1){if((d|0)>=(u|0)){d=0;break a}b[f+(d<<1)>>1]=1024;d=d+1|0}}else{jq(f|0,0,808)|0;d=0}while(0);Nb=v;return d|0}function Xf(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=Nb;Nb=Nb+256|0;g=h;a=0;while(1){if((a|0)==8)break;i=H(a,f)|0;p=d[b+i>>0]|0;o=d[b+(i+1)>>0]|0;n=o+p|0;e=a<<3;o=p-o|0;p=d[b+(i+2)>>0]|0;j=d[b+(i+3)>>0]|0;l=j+p|0;j=p-j|0;p=d[b+(i+4)>>0]|0;q=d[b+(i+5)>>0]|0;m=q+p|0;q=p-q|0;p=d[b+(i+6)>>0]|0;i=d[b+(i+7)>>0]|0;k=i+p|0;i=p-i|0;p=l+n|0;l=n-l|0;n=j+o|0;j=o-j|0;o=k+m|0;k=m-k|0;m=i+q|0;i=q-i|0;c[g+(e<<2)>>2]=o+p;c[g+((e|4)<<2)>>2]=p-o;c[g+((e|1)<<2)>>2]=m+n;c[g+((e|5)<<2)>>2]=n-m;c[g+((e|2)<<2)>>2]=k+l;c[g+((e|6)<<2)>>2]=l-k;c[g+((e|3)<<2)>>2]=i+j;c[g+((e|7)<<2)>>2]=j-i;a=a+1|0}a=0;e=0;while(1){if((e|0)==8)break;w=g+(e<<2)|0;m=c[w>>2]|0;u=g+(e+8<<2)|0;t=c[u>>2]|0;v=t+m|0;t=m-t|0;m=g+(e+16<<2)|0;s=c[m>>2]|0;n=g+(e+24<<2)|0;i=c[n>>2]|0;k=i+s|0;i=s-i|0;s=g+(e+32<<2)|0;p=c[s>>2]|0;b=g+(e+40<<2)|0;f=c[b>>2]|0;r=f+p|0;f=p-f|0;p=g+(e+48<<2)|0;q=c[p>>2]|0;o=g+(e+56<<2)|0;j=c[o>>2]|0;l=j+q|0;j=q-j|0;q=k+v|0;c[w>>2]=q;k=v-k|0;c[m>>2]=k;m=i+t|0;c[u>>2]=m;i=t-i|0;c[n>>2]=i;n=l+r|0;c[s>>2]=n;l=r-l|0;c[p>>2]=l;p=j+f|0;c[b>>2]=p;j=f-j|0;c[o>>2]=j;o=n+q|0;n=q-n|0;q=p+m|0;p=m-p|0;m=l+k|0;l=k-l|0;k=j+i|0;j=i-j|0;a=((j|0)>-1?j:0-j|0)+a+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)|0;e=e+1|0}w=(c[g+128>>2]|0)+(c[g>>2]|0)|0;Nb=h;return a-((w|0)>-1?w:0-w|0)|0}function Yf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+20816|0;r=s+16|0;k=s+8|0;j=s;o=s+40|0;i=s+32|0;p=s+24|0;q=c[a+32>>2]&3;n=c[a>>2]|0;g=n+1200|0;if(c[(c[g>>2]|0)+60>>2]|0)sq(b)|0;l=(q|0)==3;if(l)RN(b)|0;m=n+1644|0;a:do if((bo(i,p,b,c[g>>2]|0,q,c[m>>2]|0,d)|0)>=0){if((q|0)!=1){f=0;while(1){if((f|0)>=(c[i>>2]|0))break;b:do if(RN(b)|0){h=p+(f<<2)|0;e=0;c:while(1){a=cE(b)|0;if(a>>>0<3){cH(b)|0;if((e|0)<(c[h>>2]|0))a=0;else{c[k>>2]=e;mx(d,16,169338,k);a=1}}else if((a|0)==3)a=5;else{c[j>>2]=a;mx(d,16,169299,j);a=1}switch(a&7){case 5:break b;case 0:break;default:break c}e=e+1|0}if(a|0){a=-1094995529;break a}}while(0);f=f+1|0}a=c[g>>2]|0;if((q|0)==2&(c[a+28>>2]|0)!=0)e=23;else e=22}else{a=c[g>>2]|0;e=22}if((e|0)==22?l&(c[a+32>>2]|0)==1:0)e=23;if((e|0)==23)Ee(b,c[n+1204>>2]|0,p,q,o,c[m>>2]|0,d)|0;if(RN(b)|0){e=0;d:while(1){if(e>>>0>=66){a=0;e=35;break}a=cE(b)|0;if(a>>>0>6){e=28;break}switch(a|0){case 5:{a=1;break a}case 0:{e=35;break d}default:{}}if((a|2|0)==3)cH(b)|0;switch(a|0){case 2:case 3:case 4:case 6:{cE(b)|0;break}default:{}}e=e+1|0}if((e|0)==28){c[r>>2]=a;mx(d,16,198763,r);a=-1094995529;break}else if((e|0)==35)break}else a=0}else a=-1094995529;while(0);Nb=s;return a|0}function Zf(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=Nb;Nb=Nb+16|0;q=u+4|0;r=u;o=u+8|0;c[q>>2]=g;c[r>>2]=h;s=c[a>>2]|0;p=s+84|0;j=s+88|0;k=s+48|0;l=s+96|0;m=s+44|0;n=s+4|0;i=0;g=c[p>>2]|0;a:while(1){if((g|0)>(h|0)){g=-100;break}if(g|0?(c[l>>2]|0)==0:0){t=6;break}while(1){if((g|0)>=(h|0)){g=-100;break a}v=j;v=uN(c[v>>2]|0,c[v+4>>2]|0,8)|0;h=M()|0;v=v|(d[(c[q>>2]|0)+g>>0]|0);w=j;c[w>>2]=v;c[w+4>>2]=h;h=$b[c[k>>2]&63](v,h,s,l,o)|0;if(h|0)break;g=g+1|0;h=c[r>>2]|0}if((h|0)<1){g=-100;break}w=j;c[w>>2]=0;c[w+4>>2]=0;g=g+1-(c[m>>2]|0)|0;c[p>>2]=h;if(c[o>>2]|0?((c[n>>2]|0)+g|0)>=1:0){i=1;break}g=g+h|0;c[p>>2]=g;i=1;h=c[r>>2]|0}if((t|0)==6)c[p>>2]=0;if((Wg(s,g,q,r)|0)>=0){c[e>>2]=c[q>>2];c[f>>2]=c[r>>2];h=c[s+100>>2]|0;if(h|0)c[b+48>>2]=h;if(i){if((c[b+48>>2]|0)!=86018){c[b+416>>2]=c[s+56>>2];h=c[s+52>>2]|0;do if((h|0)>1){j=b+456|0;i=c[j>>2]|0;j=c[j+4>>2]|0;if((i|0)==4&(j|0)==0){c[b+420>>2]=1;h=4;i=0;break}if((h|0)>2&((i|0)==3&(j|0)==0)){c[b+420>>2]=2;h=3;i=0}else t=25}else t=25;while(0);if((t|0)==25){c[b+420>>2]=h;i=s+72|0;h=c[i>>2]|0;i=c[i+4>>2]|0}w=b+448|0;c[w>>2]=h;c[w+4>>2]=i;c[a+304>>2]=c[s+64>>2];c[b+464>>2]=c[s+80>>2]}v=c[s+60>>2]|0;w=b+72|0;c[w>>2]=v;c[w+4>>2]=((v|0)<0)<<31>>31}}else{w=c[p>>2]|0;g=c[r>>2]|0;c[p>>2]=w-((w|0)>(g|0)?g:w);c[e>>2]=0;c[f>>2]=0}Nb=u;return g|0}function _f(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=Nb;Nb=Nb+16|0;l=n;c[l>>2]=b;g=e+8|0;h=e+4|0;i=e+20|0;j=e+16|0;k=e+12|0;b=d;a:while(1){f=b+1|0;d=a[b>>0]|0;b:do switch(d<<24>>24){case 0:{m=29;break a}case 37:{b=b+2|0;d=a[f>>0]|0;switch(d<<24>>24|0){case 74:case 72:{d=$w(l,0,d<<24>>24==72?23:2147483647,2)|0;if((d|0)==-1){b=0;break a}c[g>>2]=d;break b}case 77:{d=$w(l,0,59,2)|0;if((d|0)==-1){b=0;break a}c[h>>2]=d;break b}case 83:{d=$w(l,0,59,2)|0;if((d|0)==-1){b=0;break a}c[e>>2]=d;break b}case 89:{d=$w(l,0,9999,4)|0;if((d|0)==-1){b=0;break a}c[i>>2]=d+-1900;break b}case 109:{d=$w(l,1,12,2)|0;if((d|0)==-1){b=0;break a}c[j>>2]=d+-1;break b}case 100:{d=$w(l,1,31,2)|0;if((d|0)==-1){b=0;break a}c[k>>2]=d;break b}case 84:{f=_f(c[l>>2]|0,207119,e)|0;c[l>>2]=f;if(!f){b=0;break a}else break b}case 104:case 66:case 98:{d=iw(l)|0;if((d|0)==-1){b=0;break a}c[j>>2]=d;break b}case 37:{f=c[l>>2]|0;c[l>>2]=f+1;if((a[f>>0]|0)==37)break b;else{b=0;break a}}default:{b=0;break a}}}default:{o=(dP(d<<24>>24)|0)==0;b=c[l>>2]|0;if(o){if((a[b>>0]|0)!=d<<24>>24){b=0;break a}c[l>>2]=b+1;b=f;break b}while(1){d=a[b>>0]|0;if(!(d<<24>>24))break;if(!(dP(d<<24>>24)|0))break;b=b+1|0}c[l>>2]=b;b=f}}while(0)}if((m|0)==29)b=c[l>>2]|0;Nb=n;return b|0}function $f(b,g){b=b|0;g=g|0;var i=0,j=0.0,k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0.0,v=0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;i=g+104|0;if(!(c[i>>2]|0)){nE(g+52672|0);c[i>>2]=1}if((c[g+4>>2]|0)!=2){D=g+80|0;E=g+100|0;z=d[191448+(c[b+6476>>2]|0)>>0]|0;i=0;while(1){if(i>>>0>=z>>>0)break;k=c[D>>2]|0;A=i+1|0;B=g+236+i|0;C=e[k+(A<<1)>>1]|0;k=e[k+(i<<1)>>1]|0;while(1){if(k>>>0>=C>>>0)break;l=g+52672+(k<<5)|0;b=g+13760+(k<<2)|0;if(!(c[E>>2]|0))i=0;else i=(a[B>>0]|0)!=0;m=g+52672+(k<<5)+16|0;n=+f[m>>2];o=g+52672+(k<<5)+20|0;p=+f[o>>2];q=+f[l>>2];r=g+52672+(k<<5)+4|0;s=+f[r>>2];t=g+52672+(k<<5)+8|0;u=+f[t>>2];v=g+52672+(k<<5)+12|0;w=+f[v>>2];if(u>1.0){F=(f[h>>2]=.953125/u,c[h>>2]|0);y=q*(c[h>>2]=F+32767+(F&1)&-65536,+f[h>>2])}else y=0.0;if(w>1.0){F=(f[h>>2]=.953125/w,c[h>>2]|0);j=s*(c[h>>2]=F+32767+(F&1)&-65536,+f[h>>2])}else j=0.0;x=n*y;if(i){j=+f[b>>2]+(c[h>>2]=(f[h>>2]=x+p*j,c[h>>2]|0)+32768&-65536,+f[h>>2]);f[b>>2]=j}else j=+f[b>>2];x=j-x;c[r>>2]=(f[h>>2]=s*.90625+p*x,c[h>>2]|0)&-65536;c[v>>2]=(f[h>>2]=w*.90625+(p*p+x*x)*.5,c[h>>2]|0)&-65536;c[l>>2]=(f[h>>2]=q*.90625+n*j,c[h>>2]|0)&-65536;c[t>>2]=(f[h>>2]=u*.90625+(n*n+j*j)*.5,c[h>>2]|0)&-65536;c[o>>2]=(f[h>>2]=(n-y*j)*.953125,c[h>>2]|0)&-65536;c[m>>2]=(f[h>>2]=j*.953125,c[h>>2]|0)&-65536;k=k+1|0}i=A}i=c[g+108>>2]|0;if(i|0)KD(g+52672|0,i)}else nE(g+52672|0);return}function ag(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0;s=H(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;E=d[c+t>>0]|0;N=d[c>>0]|0;M=d[c+f>>0]|0;L=d[c+u>>0]|0;K=d[c+v>>0]|0;I=d[c+w>>0]|0;F=d[c+x>>0]|0;z=d[c+h>>0]|0;B=d[c+i>>0]|0;C=d[c+j>>0]|0;A=d[c+k>>0]|0;D=d[c+l>>0]|0;J=K+16|0;y=J+(d[c+s>>0]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((y>>>0>255?(y^-2147483648)>>31:y)&255)|0)>>>1;y=b+e|0;G=I+16|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>5;a[y>>0]=(((E>>>0>255?(E^-2147483648)>>31:E)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+m|0;E=F+16|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>5;a[y>>0]=(((N>>>0>255?(N^-2147483648)>>31:N)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+n|0;M=M+16+z+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>5;a[y>>0]=(((M>>>0>255?(M^-2147483648)>>31:M)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+o|0;K=L+16+B+((F+I|0)*20|0)+(H(z+K|0,-5)|0)>>5;a[y>>0]=(((K>>>0>255?(K^-2147483648)>>31:K)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+p|0;I=J+C+((z+F|0)*20|0)+(H(B+I|0,-5)|0)>>5;a[y>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+q|0;F=G+A+((B+z|0)*20|0)+(H(C+F|0,-5)|0)>>5;a[y>>0]=(((F>>>0>255?(F^-2147483648)>>31:F)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+r|0;z=E+D+((C+B|0)*20|0)+(H(A+z|0,-5)|0)>>5;a[y>>0]=(((z>>>0>255?(z^-2147483648)>>31:z)&255)+1+(d[y>>0]|0)|0)>>>1;g=g+1|0;b=b+1|0;c=c+1|0}return}function bg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=(d[e>>0]|0)>>>4;l=b+4|0;a[l>>0]=h;k=a[e>>0]|0;i=k&15;a[b+5>>0]=i;a:do switch(k&15){case 7:{i=(d[e+3>>0]<<8|d[e+2>>0]<<16|d[e+4>>0])+-8388608^-8388608;switch(a[e+1>>0]|0){case 2:{h=0;break a}case 0:{l=e+5|0;h=f+-5|0;Xi(l,h,b+16|0)|0;h=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,512,l,h,g,g,0)|0;break a}case 1:{if(!(f>>>0>5&(a[b+19>>0]|0)!=0)){h=-22;break a}if(UF(b,f+4096|0)|0){h=-12;break a}j=b+6440|0;k=b+6444|0;h=Uj(b+16|0,e+5|0,f+-5|0,c[j>>2]|0,c[k>>2]|0)|0;if(!h){h=-12;break a}if(h>>>0>(c[k>>2]|0)>>>0){h=-12;break a}h=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,7,c[j>>2]|0,h,i+g|0,g,(a[l>>0]|0)==1&1)|0;break a}default:{h=-22;break a}}}case 12:{i=(d[e+3>>0]<<8|d[e+2>>0]<<16|d[e+4>>0])+-8388608^-8388608;switch(a[e+1>>0]|0){case 2:{h=0;break a}case 0:{l=e+5|0;h=f+-5|0;wf(l,h,b+16|0)|0;h=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,513,l,h,g,g,0)|0;break a}case 1:{if(!(f>>>0>5&(a[b+46>>0]|0)!=0)){h=-22;break a}if(UF(b,f+4096|0)|0){h=-12;break a}j=b+6440|0;k=b+6444|0;h=Wm(b+16|0,e+5|0,f+-5|0,c[j>>2]|0,c[k>>2]|0)|0;if(!h){h=-12;break a}if(h>>>0>(c[k>>2]|0)>>>0){h=-12;break a}h=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,12,c[j>>2]|0,h,i+g|0,g,(a[l>>0]|0)==1&1)|0;break a}default:{h=-22;break a}}}default:h=cc[c[b+6432>>2]&1](c[b+6436>>2]|0,i&255,e+1|0,f+-1|0,g,g,h<<24>>24==1&1)|0}while(0);return h|0}function cg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+48|0;t=u+24|0;o=u+16|0;n=u;l=u+36|0;m=c[g+24>>2]|0;h=c[g+28>>2]|0;q=c[b+60>>2]|0;c[q+25684>>2]=c[b+92>>2];c[q+29572>>2]=0;c[q+25636>>2]=0;r=q+24972|0;Tw(q,r);a:do if(h){i=q+27020|0;if((c[i>>2]|0?ev(g,1,0)|0:0)?(j=ev(g,1,l)|0,k=c[l>>2]|0,Np(j,k)|0):0)Di(j,k,q+27036|0,i,q+27024|0,c[b+688>>2]|0,b)|0;if(((((((h|0)>8&(c[i>>2]|0)!=0?(a[m>>0]|0)==1:0)?(a[m+2>>0]|0)==0:0)?(d[m+4>>0]|0)>251:0)?a[m+5>>0]&31:0)?(a[m+8>>0]|0)==103:0)?Np(m,h)|0:0){h=Di(m,h,q+27036|0,i,q+27024|0,c[b+688>>2]|0,b)|0;break}j=ed(q,m,h)|0;if((j|0)<0)h=-1094995529;else{i=(c[q+24312>>2]|0)==0;if(i?(c[q+27012>>2]|0)==10:0)if((j|0)>(h|0)){c[n>>2]=171072;c[n+4>>2]=171094;c[n+8>>2]=1011;mx(0,0,214689,n);ba()}else{h=lq(q,e,f,j)|0;break}do if(c[b+96>>2]&32768){o=c[q+26992>>2]|0;if(!((o|0)==0?1:(c[q+26988>>2]|0)<(o|0)))p=30}else{if(!i?c[q+27016>>2]|0:0){p=30;break}if((c[b+844>>2]|0)>7)break a;if((h|0)>3?(Zx(171115,m,4)|0)==0:0)break a;mx(b,16,171120,o);h=-1094995529;break a}while(0);if((p|0)==30){i=Mp(q,c[q+25628>>2]|0,0)|0;if((i|0)<0){h=i;break}i=c[q+28724>>2]|0;if(i|0?(s=Xm(q,e,i,f)|0,(s|0)<0):0){h=s;break}}if((c[e+248>>2]|0)==0?c[f>>2]|0:0){c[t>>2]=171131;c[t+4>>2]=171094;c[t+8>>2]=1036;mx(0,0,214689,t);ba()}Tw(q,r);h=DR(j,h)|0}}else h=lq(q,e,f,0)|0;while(0);Nb=u;return h|0}function dg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;do if((a|0)==(b|0))k=10;else{if((d|0)==0?(i=(oU(b)|0)+16|0,c[i>>2]&1|0):0){k=12;break}e=b+108|0;f=c[e+4>>2]|0;g=a+108|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+880|0;f=c[g+4>>2]|0;e=a+880|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+124>>2]=c[b+124>>2];c[a+128>>2]=c[b+128>>2];c[a+144>>2]=c[b+144>>2];c[a+888>>2]=c[b+888>>2];c[a+132>>2]=c[b+132>>2];c[a+136>>2]=c[b+136>>2];c[a+180>>2]=c[b+180>>2];c[a+780>>2]=c[b+780>>2];c[a+784>>2]=c[b+784>>2];e=b+228|0;f=c[e+4>>2]|0;g=a+228|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+276>>2]=c[b+276>>2];c[a+828>>2]=c[b+828>>2];c[a+832>>2]=c[b+832>>2];c[a+788>>2]=c[b+788>>2];c[a+116>>2]=c[b+116>>2];c[a+388>>2]=c[b+388>>2];c[a+392>>2]=c[b+392>>2];c[a+396>>2]=c[b+396>>2];c[a+400>>2]=c[b+400>>2];c[a+404>>2]=c[b+404>>2];c[a+704>>2]=c[b+704>>2];c[a+708>>2]=c[b+708>>2];c[a+420>>2]=c[b+420>>2];c[a+416>>2]=c[b+416>>2];c[a+424>>2]=c[b+424>>2];g=b+448|0;f=c[g+4>>2]|0;e=a+448|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[(c[a+64>>2]|0)+60>>2]=c[(c[b+64>>2]|0)+60>>2];e=a+976|0;f=c[e>>2]|0;g=(f|0)!=0;h=b+976|0;i=c[h>>2]|0;if(!(g^(i|0)!=0)){if(g?(c[f+4>>2]|0)!=(c[i+4>>2]|0):0)k=7}else k=7;if(((k|0)==7?(nT(e),j=c[h>>2]|0,j|0):0)?(j=rI(j)|0,c[e>>2]=j,(j|0)==0):0){e=-12;break}c[a+1004>>2]=c[b+1004>>2];k=10}while(0);if((k|0)==10)if(!d)k=12;else{c[a+120>>2]=(c[b+800>>2]|0)+-1;c[a+796>>2]=c[b+796>>2];e=0}if((k|0)==12){e=c[(c[a+12>>2]|0)+64>>2]|0;if(!e)e=0;else e=Yb[e&15](a,b)|0}return e|0}function eg(a,b,d,e,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;Q=(k|0)!=0;s=Q?284704:32;t=128>>>k;v=1152>>>k;u=2304-v|0;v=v<<2;w=i+(u<<2)|0;x=64>>>k;y=d+24|0;z=192>>>k;A=s+(x<<2)|0;B=256>>>k;C=s+(t<<2)|0;D=448>>>k;E=s+(z<<2)|0;F=512>>>k;G=s+(B<<2)|0;H=704>>>k;I=s+(320>>>k<<2)|0;J=768>>>k;K=s+(384>>>k<<2)|0;L=960>>>k;M=s+(D<<2)|0;N=1024>>>k;O=s+(F<<2)|0;P=1216>>>k;n=s+(576>>>k<<2)|0;o=b+8|0;p=a+44|0;q=h+256|0;r=b+24|0;m=b+20|0;l=0;while(1){if((l|0)==32)break;k=c[j>>2]|0;if((k|0)<(t|0)){Bk(w|0,i|0,v|0)|0;k=u}b=k-t|0;c[j>>2]=b;b=i+(b<<2)|0;if(Q){k=0;while(1){if((k|0)==32)break;R=g+(l<<8)+(k<<2)|0;f[R>>2]=-+f[R>>2];c[g+(l<<8)+(k+32<<2)>>2]=c[g+9728+(l<<8)+(31-k<<2)>>2];k=k+1|0}hc[c[p>>2]&1023](a,h,g+(l<<8)|0);fc[c[m>>2]&255](b,h)}else{R=g+9728+(l<<8)|0;ec[c[o>>2]&31](R);hc[c[p>>2]&1023](a,h,g+(l<<8)|0);hc[c[p>>2]&1023](a,q,R);hc[c[r>>2]&1023](b,q,h)}ic[c[d>>2]&255](e,b,s,x);kc[c[y>>2]&127](e,b+(z<<2)|0,A,e,x);kc[c[y>>2]&127](e,b+(B<<2)|0,C,e,x);kc[c[y>>2]&127](e,b+(D<<2)|0,E,e,x);kc[c[y>>2]&127](e,b+(F<<2)|0,G,e,x);kc[c[y>>2]&127](e,b+(H<<2)|0,I,e,x);kc[c[y>>2]&127](e,b+(J<<2)|0,K,e,x);kc[c[y>>2]&127](e,b+(L<<2)|0,M,e,x);kc[c[y>>2]&127](e,b+(N<<2)|0,O,e,x);kc[c[y>>2]&127](e,b+(P<<2)|0,n,e,x);e=e+(x<<2)|0;l=l+1|0}return}function fg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+16|0;f=u;n=b+272|0;k=c[n>>2]|0;l=(k|0)==0;o=b+260|0;m=c[o>>2]|0;s=H(c[b+264>>2]|0,l?m:1)|0;if((c[a>>2]|0)!=(m|0)){c[f>>2]=211323;c[f+4>>2]=211354;c[f+8>>2]=198;mx(0,0,214689,f);ba()}h=c[a+4>>2]|0;if(!h)f=0;else{if(!(c[d+272>>2]|0))i=1;else i=c[d+260>>2]|0;f=0;g=0;while(1){if((f|0)>=(i|0))break;r=c[d+(f<<2)>>2]|g;f=f+1|0;g=r}f=g&h}i=c[a+8>>2]|0;if(i){j=l?1:m;g=0;h=0;while(1){if((h|0)>=(j|0))break;g=c[b+(h<<2)>>2]|g;h=h+1|0}f=g&i|f}j=a+16|0;g=c[j>>2]|0;r=a+20|0;if((g|0)!=0?!((f|0)!=0|(c[r>>2]|0)!=0):0){i=e&-16;a:do if((i|0)>0){if((k|0)!=(c[d+272>>2]|0)){hc[g&1023](b,d,i);break}h=l?1:m;f=0;while(1){if((f|0)>=(h|0))break a;if(!(c[n>>2]|0))g=c[o>>2]|0;else g=1;q=H(g,i)|0;hc[c[j>>2]&1023](b+(f<<2)|0,d+(f<<2)|0,q);f=f+1|0}}while(0);if((i|0)!=(e|0))t=26}else{i=0;t=26}b:do if((t|0)==26){m=d+272|0;n=d+260|0;o=d+264|0;p=H(i,s)|0;q=a+12|0;k=H(s,e)|0;l=a+24|0;j=0;while(1){if((j|0)>=(c[a>>2]|0))break b;f=c[r>>2]|0;if(f){f=c[f+(j<<2)>>2]|0;if((f|0)<0){h=0;g=l}else t=30}else{f=j;t=30}if((t|0)==30){t=0;if(!(c[m>>2]|0))g=c[n>>2]|0;else g=1;h=H(c[o>>2]|0,g)|0;g=c[d+(f<<2)>>2]|0}f=c[b+(j<<2)>>2]|0;if(f|0){e=g+(H(h,i)|0)|0;kc[c[q>>2]&127](f+p|0,e,h,s,f+k|0)}j=j+1|0}}while(0);Nb=u;return 0}function gg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+48|0;i=k+32|0;g=k+16|0;e=k;h=c[b>>2]|0;if(c[h+248>>2]|0){c[e>>2]=197604;c[e+4>>2]=197620;c[e+8>>2]=71;mx(0,0,214689,e);ba()}f=c[d>>2]|0;if(!(c[f+248>>2]|0)){c[g>>2]=197646;c[g+4>>2]=197620;c[g+8>>2]=72;mx(0,0,214689,g);ba()}e=d+4|0;if((c[e>>2]|0)!=(f|0)){c[i>>2]=197661;c[i+4>>2]=197620;c[i+8>>2]=73;mx(0,0,214689,i);ba()}i=b+4|0;c[i>>2]=h;e=Ps(i,e)|0;a:do if((e|0)>=0?(h=rI(c[d+20>>2]|0)|0,i=b+20|0,c[i>>2]=h,h=rI(c[d+44>>2]|0)|0,c[b+44>>2]=h,!((h|0)==0|(c[i>>2]|0)==0)):0){c[b+24>>2]=c[d+24>>2];c[b+48>>2]=c[d+48>>2];f=0;while(1){if(f>>>0>=2)break;h=rI(c[d+28+(f<<2)>>2]|0)|0;i=b+28+(f<<2)|0;c[i>>2]=h;h=rI(c[d+60+(f<<2)>>2]|0)|0;c[b+60+(f<<2)>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){j=20;break a}c[b+36+(f<<2)>>2]=c[d+36+(f<<2)>>2];c[b+68+(f<<2)>>2]=c[d+68+(f<<2)>>2];f=f+1|0}if(c[d+56>>2]|0){f=rI(c[d+52>>2]|0)|0;c[b+52>>2]=f;if(!f){j=20;break}c[b+56>>2]=c[f+4>>2]}e=0;while(1){if((e|0)==2)break;c[b+76+(e<<2)>>2]=c[d+76+(e<<2)>>2];e=e+1|0}Bk(b+104|0,d+104|0,512)|0;e=b+616|0;a=d+616|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[b+84>>2]=c[d+84>>2];c[b+88>>2]=c[d+88>>2];c[b+92>>2]=c[d+92>>2];c[b+100>>2]=c[d+100>>2];c[b+632>>2]=c[d+632>>2];c[b+636>>2]=c[d+636>>2];c[b+640>>2]=c[d+640>>2];c[b+644>>2]=c[d+644>>2];c[b+648>>2]=c[d+648>>2];c[b+652>>2]=c[d+652>>2];e=0}else j=20;while(0);if((j|0)==20)Tw(a,b);Nb=k;return e|0}function hg(a,b,d,g){a=a|0;b=b|0;d=d|0;g=g|0;var h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;E=Nb;Nb=Nb+128|0;x=E;y=c[a+8>>2]|0;z=y*3|0;A=a+24|0;B=c[A>>2]|0;j=1<<B;o=a+16|0;C=a+96|0;p=y+-1|0;q=z+-1|0;r=(y*5|0)+-1|0;s=a+640|0;D=a+92|0;t=a+32|0;u=a+128|0;h=0;while(1){if((h|0)>=(j|0))break;v=h*15|0;i=0;while(1){if((i|0)==15)break;w=c[(c[o>>2]|0)+(i+v<<2)>>2]|0;G=c[C>>2]|0;F=w>>1;m=+f[G+(F<<3)>>2];n=+f[G+(F<<3)+4>>2];k=+f[d+(w+y<<2)>>2];if((w|0)<(y|0)){l=-+f[d+(w+z<<2)>>2];k=+f[d+(p-w<<2)>>2]-k}else{l=+f[d+(w-y<<2)>>2];k=-k-+f[d+(r-w<<2)>>2]}l=l-+f[d+(q-w<<2)>>2];f[x+(i<<3)+4>>2]=m*k-n*l;f[x+(i<<3)>>2]=n*k+m*l;i=i+1|0}ic[c[s>>2]&255]((c[D>>2]|0)+((e[(c[t>>2]|0)+(h<<1)>>1]|0)<<3)|0,x,u,j);h=h+1|0}j=y>>1;i=a+60|0;h=0;while(1){if((h|0)==15)break;fc[c[i>>2]&255](A,(c[D>>2]|0)+(h<<B<<3)|0);h=h+1|0}i=a+20|0;h=0;while(1){if((j|0)<=(h|0))break;z=h+j|0;A=j-h+-1|0;B=c[i>>2]|0;F=c[B+(z<<2)>>2]|0;B=c[B+(A<<2)>>2]|0;x=c[D>>2]|0;v=x+(F<<3)|0;y=c[C>>2]|0;a=y+(z<<3)+4|0;F=x+(F<<3)+4|0;w=y+(z<<3)|0;G=H(A<<1,g)|0;f[b+(G+g<<2)>>2]=+f[v>>2]*+f[a>>2]-+f[F>>2]*+f[w>>2];z=H(z<<1,g)|0;f[b+(z<<2)>>2]=+f[v>>2]*+f[w>>2]+ +f[F>>2]*+f[a>>2];a=x+(B<<3)|0;F=y+(A<<3)+4|0;B=x+(B<<3)+4|0;A=y+(A<<3)|0;f[b+(z+g<<2)>>2]=+f[a>>2]*+f[F>>2]-+f[B>>2]*+f[A>>2];f[b+(G<<2)>>2]=+f[a>>2]*+f[A>>2]+ +f[B>>2]*+f[F>>2];h=h+1|0}Nb=E;return}function ig(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=(d[c>>0]|0)-(d[e>>0]|0)|0;u=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;w=u-v|0;t=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;u=t-u|0;s=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;t=s-t|0;r=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;s=r-s|0;q=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;r=q-r|0;p=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;q=p-q|0;o=(d[c+7>>0]|0)-(d[e+7>>0]|0)|0;p=o-p|0;n=(d[c+8>>0]|0)-(d[e+8>>0]|0)|0;o=n-o|0;h=(d[c+9>>0]|0)-(d[e+9>>0]|0)|0;n=h-n|0;i=(d[c+10>>0]|0)-(d[e+10>>0]|0)|0;h=i-h|0;j=(d[c+11>>0]|0)-(d[e+11>>0]|0)|0;i=j-i|0;k=(d[c+12>>0]|0)-(d[e+12>>0]|0)|0;j=k-j|0;l=(d[c+13>>0]|0)-(d[e+13>>0]|0)|0;k=l-k|0;b=(d[c+14>>0]|0)-(d[e+14>>0]|0)|0;l=b-l|0;b=(d[c+15>>0]|0)-(d[e+15>>0]|0)-b|0;m=1;b=((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((h|0)>-1?h:0-h|0)+((i|0)>-1?i:0-i|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((b|0)>-1?b:0-b|0)|0;while(1){k=c+f|0;l=e+f|0;if((m|0)>=(g|0))break;h=a[k>>0]|0;i=a[l>>0]|0;w=(d[e>>0]|0)-(d[c>>0]|0)+((h&255)-(i&255))|0;j=1;b=((w|0)>-1?w:0-w|0)+b|0;while(1){if((j|0)==16)break;v=a[k+j>>0]|0;w=a[l+j>>0]|0;t=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;s=(h&255)-(i&255)|0;u=j-f+-1|0;u=(v&255)-(w&255)-(GM(t,s,s+t-(d[k+u>>0]|0)+(d[l+u>>0]|0)|0)|0)|0;j=j+1|0;b=((u|0)>-1?u:0-u|0)+b|0;h=v;i=w}m=m+1|0;e=l;c=k}return b|0}function jg(b){b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;g=d[22672+e>>0]|0;a[b+26412+e>>0]=g<<2&12|g>>>2;g=d[76128+e>>0]|0;a[b+26556+e>>0]=g<<2&12|g>>>2;e=e+1|0}e=0;while(1){if((e|0)==64)break;g=d[22608+e>>0]|0;a[b+26428+e>>0]=g<<3&56|g>>>3;g=d[76160+e>>0]|0;a[b+26492+e>>0]=g<<3&56|g>>>3;g=d[76240+e>>0]|0;a[b+26572+e>>0]=g<<3&56|g>>>3;g=d[76320+e>>0]|0;a[b+26636+e>>0]=g<<3&56|g>>>3;e=e+1|0}e=b+26700|0;if(!(c[(c[b+28200>>2]|0)+16>>2]|0)){f=b+26412|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26716|0;f=b+26428|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26780|0;f=b+26492|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26844|0;f=b+26556|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26860|0;f=b+26572|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26924|0;f=b+26636|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0))}else{c[e>>2]=c[5668];c[e+4>>2]=c[5669];c[e+8>>2]=c[5670];c[e+12>>2]=c[5671];e=b+26716|0;f=22608;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26780|0;f=76160;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26844|0;c[e>>2]=c[19032];c[e+4>>2]=c[19033];c[e+8>>2]=c[19034];c[e+12>>2]=c[19035];e=b+26860|0;f=76240;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26924|0;f=76320;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0))}return}function kg(a,d){a=a|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0;p=Nb;Nb=Nb+272|0;o=p;g=p+260|0;j=p+256|0;c[g>>2]=0;e=0;h=0;while(1){if((e|0)==124)break;r=+(h|0);q=+f[a+(e<<2)>>2];e=e+1|0;h=~~(q<r?r:q)}c[g>>2]=h;g=iD(g)|0;c[j>>2]=0;h=(g<<16)+-1048576>>16;e=0;i=0;while(1){if((e|0)==124)break;n=(((FT(~~+f[a+(e<<2)>>2],h)|0)<<16>>16)*3|0)>>>2;b[o+(e<<1)>>1]=n;e=e+1|0;i=(n<<16>>16)+i|0}n=g+65531|0;m=n&65535;n=n<<16>>16;c[j>>2]=i-(198<<n);h=iD(j)|0;h=FT((c[j>>2]>>16)*4228>>15,786432-(h<<16)>>16)|0;i=lE(o,m,h&65535)|0;if((i|0)==198)i=198;else{e=i+-198|0;g=0;while(1){if((((e|0)>-1?e:0-e|0)|0)>=16384)break;e=e<<1;g=g+1<<16>>16}j=FT(e*4228>>15,n+65532-(g&65535)<<16>>16)|0;g=0;a=0;l=1;while(1){if(l>>>0>=20){e=h;h=g;g=i;break}e=h+j|0;g=lE(o,m,e&65535)|0;if((H(g+-198|0,i+-198|0)|0)<1){a=i;break}a=i;k=h;h=e;i=g;l=l+1|0;g=k}s=(g|0)>198;k=s?e:h;j=s?g:a;a=s?a:g;i=l;e=s?h:e;while(1){if(!(i>>>0<20&(g|0)!=198))break;s=e+k>>1;g=lE(o,m,s&65535)|0;l=(g|0)>198;k=l?s:k;j=l?g:j;a=l?a:g;i=i+1|0;e=l?e:s}h=(((j|0)>197?j+-198|0:198-j|0)|0)<(((a|0)>197?a+-198|0:198-a|0)|0);i=h?j:a;h=h?k:e}g=n+-1|0;e=0;while(1){if((e|0)==124)break;s=((b[o+(e<<1)>>1]|0)-h>>g)+1>>1;s=(s|0)<6?s:6;c[d+(e<<2)>>2]=(s|0)>0?s:0;e=e+1|0}a:do if((i|0)>198){g=0;e=0;while(1){if((g|0)>=198)break;g=(c[d+(e<<2)>>2]|0)+g|0;e=e+1|0}s=d+(e+-1<<2)|0;c[s>>2]=198-g+(c[s>>2]|0);while(1){if(e>>>0>=124)break a;c[d+(e<<2)>>2]=0;e=e+1|0}}while(0);Nb=p;return}function lg(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;d=d+(0-(g&-2)<<1)|0;while(1){if((i|0)==9)break;k=d+2|0;n=d+-2|0;g=d+4|0;o=H((e[g>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=d+6|0;b[h>>1]=(((e[k>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[d+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[d>>1]|0)|0,-5)|0;m=d+8|0;b[h+2>>1]=(((e[g>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=d+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[d>>1]|0)+o+(e[n>>1]|0);g=H((e[n>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+g+(e[d+12>>1]|0);h=h+16|0;i=i+1|0;d=d+(j<<1)|0}j=f>>1;h=f&-2;i=j*3|0;d=c+32|0;g=0;while(1){if((g|0)==4)break;s=b[d+-16>>1]|0;q=b[d>>1]|0;r=q+10230|0;f=b[d+16>>1]|0;p=f+10230|0;n=(b[d+32>>1]|0)+10230|0;l=(b[d+48>>1]|0)+10230|0;k=(b[d+64>>1]|0)+10230|0;m=(b[d+80>>1]|0)+10230|0;c=b[d+96>>1]|0;o=(b[d+-32>>1]|0)+10742+l+((p+r|0)*20|0)+(H(n+(s+10230)|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<1024?o:(o^-2147483648)>>31&1023)|0)>>>1;o=a+(j<<1)|0;r=s+10742+k+((n+p|0)*20|0)+(H(l+r|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(r>>>0<1024?r:(r^-2147483648)>>31&1023)|0)>>>1;o=a+(h<<1)|0;p=q+10742+m+((l+n|0)*20|0)+(H(k+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<1024?p:(p^-2147483648)>>31&1023)|0)>>>1;o=a+(i<<1)|0;n=f+20972+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<1024?n:(n^-2147483648)>>31&1023)|0)>>>1;a=a+2|0;d=d+2|0;g=g+1|0}return}function mg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=Nb;Nb=Nb+16|0;h=o;k=c[a>>2]|0;l=k+4|0;g=c[l>>2]|0;m=a+212|0;if((c[d+28>>2]|0)==0?(c[(c[(c[m>>2]|0)+12>>2]|0)+16>>2]&32|0)==0:0)b=0;else n=3;do if((n|0)==3){i=a+156|0;JV(i)|0;b=ym(c[m>>2]|0,b)|0;if(b|0){JV(i)|0;break}c[a+344>>2]=(c[(c[m>>2]|0)+680>>2]|0)>>>16&1;yr(a);if(g|0){b=g+300|0;if((c[b>>2]|0)==1){e=g+184|0;JV(e)|0;f=g+60|0;while(1){if((c[b>>2]|0)!=1)break;zb(f|0,e|0)|0}JV(e)|0}b=dg(c[m>>2]|0,c[g+212>>2]|0,0)|0;if(b|0){JV(i)|0;break}}b=a+216|0;AP(b);b=kq(b,d)|0;if((b|0)<0){JV(i)|0;mx(c[m>>2]|0,16,184593,h);break}j=a+300|0;c[j>>2]=1;yb(a+12|0)|0;JV(i)|0;b=c[m>>2]|0;a:do if(!(c[b+812>>2]|0)){if((c[b+156>>2]|0)==7?(c[b+472>>2]|0)==9:0)break;b=a+184|0;e=a+60|0;f=a+316|0;g=a+320|0;d=a+296|0;h=a+324|0;i=a+328|0;while(1){if((c[j>>2]|0)==4)break a;if(!(c[j>>2]|0))break a;JV(b)|0;while(1){if((c[j>>2]|0)!=1)break;zb(e|0,b|0)|0}switch(c[j>>2]|0){case 2:{n=YI(c[m>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[d>>2]=n;n=27;break}case 3:{n=Oh(c[m>>2]|0,c[h>>2]|0)|0;c[i>>2]=n;n=27;break}default:{}}if((n|0)==27){n=0;c[j>>2]=1;yb(e|0)|0}JV(b)|0}}while(0);c[l>>2]=a;b=k+144|0;c[b>>2]=(c[b>>2]|0)+1;b=0}while(0);Nb=o;return b|0}function ng(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=f+4|0;a:do if(!(a[q>>0]|0)){i=0;s=11}else{i=0;o=0;while(1){j=o&255;n=f+8+(j<<3)|0;m=b[n>>1]|0;k=m&65535;l=i+4|0;if((l+k|0)>>>0>h>>>0){i=-1;break a}j=f+8+(j<<3)+4|0;b:do if(((m&65535)>=4?(p=c[j>>2]|0,(a[p>>0]|0)==0):0)?(a[p+1>>0]|0)==0:0){switch(a[p+2>>0]|0){case 1:{j=p;break b}case 0:break;default:{s=9;break b}}if((a[p+3>>0]|0)==1)j=p;else s=9}else s=9;while(0);if((s|0)==9){s=0;a[g+i>>0]=0;a[g+(i+1)>>0]=0;a[g+(i+2)>>0]=0;a[g+(i+3)>>0]=1;i=l;k=e[n>>1]|0;j=c[j>>2]|0}Bk(g+i|0,j|0,k|0)|0;i=i+(e[n>>1]|0)|0;o=o+1<<24>>24;if((o&255)>=(d[q>>0]|0)){s=11;break}}}while(0);c:do if((s|0)==11){p=f+5|0;if(a[p>>0]|0){o=0;do{j=o&255;n=f+264+(j<<3)|0;l=b[n>>1]|0;k=l&65535;m=i+2|0;if((m+k|0)>>>0>h>>>0){i=-1;break c}j=f+264+(j<<3)+4|0;d:do if(((l&65535)>=4?(r=c[j>>2]|0,(a[r>>0]|0)==0):0)?(a[r+1>>0]|0)==0:0){switch(a[r+2>>0]|0){case 1:{j=r;break d}case 0:break;default:{s=19;break d}}if((a[r+3>>0]|0)==1)j=r;else s=19}else s=19;while(0);if((s|0)==19){s=0;a[g+i>>0]=0;a[g+(i+1)>>0]=0;a[g+m>>0]=0;a[g+(i+3)>>0]=1;i=i+4|0;k=e[n>>1]|0;j=c[j>>2]|0}Bk(g+i|0,j|0,k|0)|0;i=i+(e[n>>1]|0)|0;o=o+1<<24>>24}while((o&255)<(d[p>>0]|0))}}while(0);return i|0}function og(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function pg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Nb;Nb=Nb+16|0;f=j;h=j+8|0;d=c[a+28200>>2]|0;e=c[d+1184>>2]|0;a:do switch(e|0){case 9:{e=c[d+12>>2]|0;if((e|0)==3){d=h+4|0;e=(c[(c[a+4>>2]|0)+396>>2]|0)==0?84:76;g=23;break a}else{d=h+4|0;e=(e|0)==2?80:70;g=23;break a}}case 10:{e=c[d+12>>2]|0;if((e|0)==3){d=h+4|0;e=(c[(c[a+4>>2]|0)+396>>2]|0)==0?86:78;g=23;break a}else{d=h+4|0;e=(e|0)==2?74:72;g=23;break a}}case 12:{e=c[d+12>>2]|0;if((e|0)==3){d=h+4|0;e=(c[(c[a+4>>2]|0)+396>>2]|0)==0?312:308;g=23;break a}else{d=h+4|0;e=(e|0)==2?304:300;g=23;break a}}case 14:{e=c[d+12>>2]|0;if((e|0)==3){d=h+4|0;e=(c[(c[a+4>>2]|0)+396>>2]|0)==0?314:310;g=23;break a}else{d=h+4|0;e=(e|0)==2?306:302;g=23;break a}}case 8:{d=c[d+12>>2]|0;if((d|0)==3){e=c[a+4>>2]|0;if(!(c[e+396>>2]|0)){d=h+4|0;e=82;g=23;break a}else{d=h+4|0;e=(c[e+400>>2]|0)==2?14:5;g=23;break a}}e=c[a+4>>2]|0;if((d|0)==2){d=h+4|0;e=(c[e+400>>2]|0)==2?13:4;g=23;break a}d=c[(c[e+12>>2]|0)+24>>2]|0;if(!d){d=h+4|0;e=(c[e+400>>2]|0)==2?12:0;g=23}else{i=d;d=h;g=24}break}default:{d=c[a+4>>2]|0;c[f>>2]=e;mx(d,16,198921,f);d=-1094995529}}while(0);if((g|0)==23){c[h>>2]=e;i=h;g=24}b:do if((g|0)==24){c[d>>2]=-1;g=c[a+4>>2]|0;h=g+144|0;f=(b|0)!=0;e=0;while(1){d=c[i+(e<<2)>>2]|0;if((d|0)==-1)break;if(f|(d|0)!=(c[h>>2]|0))e=e+1|0;else break b}d=Sq(g,i)|0}while(0);Nb=j;return d|0}function qg(a){a=+a;var b=0,d=0,e=0.0,f=0.0,i=0.0,j=0,k=0,l=0.0;g[h>>3]=a;d=c[h+4>>2]|0;b=d&2147483647;d=GN(c[h>>2]|0,d|0,63)|0;M()|0;do if(b>>>0>1078159481){j=mP(a)|0;b=(M()|0)&2147483647;if(!(b>>>0>2146435072|(b|0)==2146435072&j>>>0>0))if(!d)if(a>709.782712893384)a=a*8988465674311579538646525.0e283;else k=11;else a=-1.0}else{if(b>>>0<=1071001154)if(b>>>0<1016070144)break;else{i=0.0;j=0;k=14;break}if(b>>>0<1072734898)if(!d){b=1;e=a+-.6931471803691238;f=1.9082149292705877e-10;k=12;break}else{b=-1;e=a+.6931471803691238;f=-1.9082149292705877e-10;k=12;break}else k=11}while(0);if((k|0)==11){b=~~(a*1.4426950408889634+((d|0)==0?.5:-.5));f=+(b|0);e=a-f*.6931471803691238;f=f*1.9082149292705877e-10;k=12}if((k|0)==12){i=e-f;a=i;i=e-i-f;j=b;k=14}a:do if((k|0)==14){f=a*.5;e=a*f;l=e*(e*(e*(e*(4.008217827329362e-06-e*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;f=3.0-f*l;f=e*((l-f)/(6.0-a*f));if(!j){a=a-(a*f-e);break}f=a*(f-i)-i-e;switch(j|0){case -1:{a=(a-f)*.5+-.5;break a}case 1:if(a<-.25){a=(f-(a+.5))*-2.0;break a}else{a=(a-f)*2.0+1.0;break a}default:{d=uN(j+1023|0,0,52)|0;k=M()|0;c[h>>2]=d;c[h+4>>2]=k;i=+g[h>>3];if(j>>>0>56){a=a-f+1.0;a=((j|0)==1024?a*2.0*8988465674311579538646525.0e283:a*i)+-1.0;break a}b=uN(1023-j|0,0,52)|0;d=M()|0;if((j|0)<20){c[h>>2]=b;c[h+4>>2]=d;e=1.0-+g[h>>3];a=a-f}else{c[h>>2]=b;c[h+4>>2]=d;e=a-(f+ +g[h>>3]);a=1.0}a=(e+a)*i;break a}}}while(0);return +a}function rg(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function sg(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function tg(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;m=H((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<512?m:(m^-2147483648)>>31&511;a=H((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function ug(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=c[d+74176>>2]|0;o=d+17856|0;n=(a[d+12>>0]|0)==0?280384:294432;i=(a[d+13>>0]|0)!=0;f=i?290592:280864;i=i?294432:280384;j=b+1024|0;k=b+5696|0;l=d+4|0;a:do if((c[l>>2]|0)==2){g=b+5392|0;e=0;while(1){if((e|0)==8)break a;p=c[g>>2]|0;ic[c[p+652>>2]&255](p,b+1024+(e*120<<2)|0,d+13760+(e<<7<<2)|0,1);e=e+1|0}}else{p=c[b+5400>>2]|0;ic[c[p+652>>2]&255](p,j,d+13760|0,1)}while(0);switch(c[d+8>>2]|0){case 3:case 0:{if((c[l>>2]|0)>>>0<2)kc[c[(c[b+5404>>2]|0)+20>>2]&127](m,o,j,f,480);else h=9;break}default:h=9}do if((h|0)==9){Bk(m|0,o|0,1680)|0;p=(c[l>>2]|0)==2;e=b+5404|0;kc[c[(c[e>>2]|0)+20>>2]&127](m+1680|0,d+19536|0,j,i,60);if(p){kc[c[(c[e>>2]|0)+20>>2]&127](m+2160|0,b+1264|0,b+1504|0,n,60);kc[c[(c[e>>2]|0)+20>>2]&127](m+2640|0,b+1744|0,b+1984|0,n,60);kc[c[(c[e>>2]|0)+20>>2]&127](m+3120|0,b+2224|0,b+2464|0,n,60);kc[c[(c[e>>2]|0)+20>>2]&127](k,b+2704|0,b+2944|0,n,60);Bk(m+3600|0,k|0,240)|0;break}else{Bk(m+2160|0,b+1264|0,1680)|0;break}}while(0);f=c[l>>2]|0;do if((f|0)!=2){e=b+2944|0;if((f|0)==1){Bk(o|0,e|0,1680)|0;Bk(d+19536|0,b+4624|0,240)|0;break}else{Bk(o|0,e|0,1920)|0;break}}else{Bk(o|0,b+5936|0,240)|0;p=b+5404|0;kc[c[(c[p>>2]|0)+20>>2]&127](d+18096|0,b+3184|0,b+3424|0,n,60);kc[c[(c[p>>2]|0)+20>>2]&127](d+18576|0,b+3664|0,b+3904|0,n,60);kc[c[(c[p>>2]|0)+20>>2]&127](d+19056|0,b+4144|0,b+4384|0,n,60);Bk(d+19536|0,b+4624|0,240)|0}while(0);return}function vg(a,b){a=a|0;b=b|0;var d=0,e=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.0,u=0,v=0;p=c[b+74176>>2]|0;q=b+17856|0;g=(c[a+6516>>2]|0)!=0;r=g?480:512;s=r>>>1;o=r>>>2;n=r+-1|0;e=r+-2|0;d=0;while(1){if(d>>>0>=s>>>0)break;k=b+13760+(d<<2)|0;m=c[k>>2]|0;l=b+13760+(n-d<<2)|0;f[k>>2]=-+f[l>>2];c[l>>2]=m;l=b+13760+((d|1)<<2)|0;t=-+f[l>>2];m=b+13760+(e-d<<2)|0;c[l>>2]=c[m>>2];f[m>>2]=t;d=d+2|0}d=b+13760|0;l=a+1024|0;m=g?10272:2592;if(g){k=c[a+5396>>2]|0;ic[c[k+652>>2]&255](k,l,d,1)}else hc[c[a+5164>>2]&1023](a+5256|0,l,d);d=0;while(1){if(d>>>0>=r>>>0)break;k=a+1024+(d<<2)|0;f[k>>2]=-+f[k>>2];d=d+2|0}j=s+-1|0;i=r-o|0;e=n+s|0;g=r<<1;h=r*3|0;k=h-o|0;d=o;while(1){if(d>>>0>=s>>>0)break;u=d-o|0;v=d+s|0;f[p+(u<<2)>>2]=+f[a+1024+(j-d<<2)>>2]*+f[m+(u<<2)>>2]+ +f[b+17856+(v<<2)>>2]*+f[m+(i+d<<2)>>2]-+f[b+17856+(e-d<<2)>>2]*+f[m+(d+g-o<<2)>>2]-+f[b+17856+(v+g<<2)>>2]*+f[m+(k+d<<2)>>2];d=d+1|0}g=g-o|0;e=h+-1|0;d=0;while(1){if((d|0)==(s|0))break;v=d+s|0;f[p+(d+o<<2)>>2]=+f[a+1024+(d<<2)>>2]*+f[m+(v-o<<2)>>2]-+f[b+17856+(n-d<<2)>>2]*+f[m+(i+v<<2)>>2]-+f[b+17856+(d+r<<2)>>2]*+f[m+(g+v<<2)>>2]+ +f[b+17856+(e-d<<2)>>2]*+f[m+(k+v<<2)>>2];d=d+1|0}d=0;while(1){if((d|0)==(o|0))break;v=d+s|0;f[p+(v+o<<2)>>2]=+f[a+1024+(v<<2)>>2]*+f[m+(d+r-o<<2)>>2]-+f[b+17856+(j-d<<2)>>2]*+f[m+(g+d<<2)>>2]-+f[b+17856+(v+r<<2)>>2]*+f[m+(k+d<<2)>>2];d=d+1|0}eF(b+17856+(r<<2)|0,q|0,r<<3|0)|0;Bk(q|0,l|0,r<<2|0)|0;return}function wg(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;D=e[f+(z<<1)>>1]|0;M=e[f>>1]|0;L=e[f+(x<<1)>>1]|0;K=e[f+(u<<1)>>1]|0;J=e[f+(v<<1)>>1]|0;G=e[f+(n<<1)>>1]|0;E=e[f+(o<<1)>>1]|0;c=e[f+(p<<1)>>1]|0;A=e[f+(q<<1)>>1]|0;B=e[f+(r<<1)>>1]|0;a=e[f+(s<<1)>>1]|0;C=e[f+(t<<1)>>1]|0;I=J+16|0;F=I+(e[f+(y<<1)>>1]|0)+((L+M|0)*20|0)+(H(K+D|0,-5)|0)>>5;b[d>>1]=F>>>0<16384?F:(F^-2147483648)>>31&16383;F=G+16|0;D=F+D+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>5;b[d+(w<<1)>>1]=D>>>0<16384?D:(D^-2147483648)>>31&16383;D=E+16|0;M=D+M+((J+K|0)*20|0)+(H(G+L|0,-5)|0)>>5;b[d+(h<<1)>>1]=M>>>0<16384?M:(M^-2147483648)>>31&16383;L=L+16+c+((G+J|0)*20|0)+(H(E+K|0,-5)|0)>>5;b[d+(i<<1)>>1]=L>>>0<16384?L:(L^-2147483648)>>31&16383;J=K+16+A+((E+G|0)*20|0)+(H(c+J|0,-5)|0)>>5;b[d+(j<<1)>>1]=J>>>0<16384?J:(J^-2147483648)>>31&16383;G=I+B+((c+E|0)*20|0)+(H(A+G|0,-5)|0)>>5;b[d+(k<<1)>>1]=G>>>0<16384?G:(G^-2147483648)>>31&16383;E=F+a+((A+c|0)*20|0)+(H(B+E|0,-5)|0)>>5;b[d+(l<<1)>>1]=E>>>0<16384?E:(E^-2147483648)>>31&16383;c=D+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[d+(m<<1)>>1]=c>>>0<16384?c:(c^-2147483648)>>31&16383;g=g+1|0;d=d+2|0;f=f+2|0}return}function xg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=Nb;Nb=Nb+192|0;i=r+168|0;h=r+152|0;q=r+136|0;p=r+120|0;o=r+112|0;l=r+96|0;k=r+80|0;f=r+64|0;m=r+48|0;g=r+32|0;e=r+16|0;s=r;j=r+184|0;c[s>>2]=d;d=(c[s>>2]|0)+(4-1)&~(4-1);n=c[d>>2]|0;c[s>>2]=d+4;n=(b|0)==4?n|32768:n;a:do switch(b|0){case 14:{c[e>>2]=a;c[e+4>>2]=14;c[e+8>>2]=n;d=NP(Q(221,e|0)|0)|0;break}case 9:{c[g>>2]=a;c[g+4>>2]=16;c[g+8>>2]=j;d=Q(221,g|0)|0;switch(d|0){case -22:{c[m>>2]=a;c[m+4>>2]=9;c[m+8>>2]=n;d=Q(221,m|0)|0;break}case 0:{d=c[j+4>>2]|0;d=(c[j>>2]|0)==2?0-d|0:d;break}default:d=NP(d)|0}break}case 1030:{c[f>>2]=a;c[f+4>>2]=1030;c[f+8>>2]=n;d=Q(221,f|0)|0;if((d|0)!=-22){if((d|0)>-1){c[k>>2]=d;c[k+4>>2]=2;c[k+8>>2]=1;Q(221,k|0)|0}d=NP(d)|0;break a}c[l>>2]=a;c[l+4>>2]=1030;c[l+8>>2]=0;d=Q(221,l|0)|0;if((d|0)==-22){c[p>>2]=a;c[p+4>>2]=0;c[p+8>>2]=n;d=Q(221,p|0)|0;if((d|0)>-1){c[q>>2]=d;c[q+4>>2]=2;c[q+8>>2]=1;Q(221,q|0)|0}d=NP(d)|0;break a}else{if((d|0)>-1){c[o>>2]=d;U(6,o|0)|0}d=NP(-22)|0;break a}}case 15:case 16:case 12:case 13:{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=n;d=NP(Q(221,h|0)|0)|0;break}default:{c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=n;d=NP(Q(221,i|0)|0)|0}}while(0);Nb=r;return d|0}function yg(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=f>>1;if(!b){b=e[a+-2>>1]|0;d=b}else{d=e[a+-2>>1]|0;b=e[a+(~g<<1)>>1]|0}u=e[a+(g+-1<<1)>>1]|0;t=u+2|0;r=f&-2;s=e[a+(r+-1<<1)>>1]|0;q=s+2|0;p=g*3|0;o=e[a+(p+-1<<1)>>1]|0;n=g<<2;m=e[a+(n+-1<<1)>>1]|0;l=g*5|0;k=e[a+(l+-1<<1)>>1]|0;j=g*6|0;i=e[a+(j+-1<<1)>>1]|0;f=g*7|0;h=e[a+(f+-1<<1)>>1]|0;w=oK((t+b+(d<<1)|0)>>>2|0,0,65537,65537)|0;v=M()|0;b=a;c[b>>2]=w;c[b+4>>2]=v;b=a+8|0;c[b>>2]=w;c[b+4>>2]=v;u=oK((q+d+(u<<1)|0)>>>2|0,0,65537,65537)|0;b=M()|0;d=a+(g<<1)|0;g=d;c[g>>2]=u;c[g+4>>2]=b;d=d+8|0;c[d>>2]=u;c[d+4>>2]=b;d=oK((t+(s<<1)+o|0)>>>2|0,0,65537,65537)|0;g=M()|0;b=a+(r<<1)|0;r=b;c[r>>2]=d;c[r+4>>2]=g;b=b+8|0;c[b>>2]=d;c[b+4>>2]=g;b=oK((q+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;g=M()|0;d=a+(p<<1)|0;p=d;c[p>>2]=b;c[p+4>>2]=g;d=d+8|0;c[d>>2]=b;c[d+4>>2]=g;d=oK((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;g=M()|0;b=a+(n<<1)|0;n=b;c[n>>2]=d;c[n+4>>2]=g;b=b+8|0;c[b>>2]=d;c[b+4>>2]=g;b=oK((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;g=M()|0;d=a+(l<<1)|0;l=d;c[l>>2]=b;c[l+4>>2]=g;d=d+8|0;c[d>>2]=b;c[d+4>>2]=g;d=oK((k+2+(i<<1)+h|0)>>>2|0,0,65537,65537)|0;g=M()|0;b=a+(j<<1)|0;j=b;c[j>>2]=d;c[j+4>>2]=g;b=b+8|0;c[b>>2]=d;c[b+4>>2]=g;b=oK((i+2+(h*3|0)|0)>>>2|0,0,65537,65537)|0;g=M()|0;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=g;f=f+8|0;c[f>>2]=b;c[f+4>>2]=g;return}function zg(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;D=e[f+(z<<1)>>1]|0;M=e[f>>1]|0;L=e[f+(x<<1)>>1]|0;K=e[f+(u<<1)>>1]|0;J=e[f+(v<<1)>>1]|0;G=e[f+(n<<1)>>1]|0;E=e[f+(o<<1)>>1]|0;c=e[f+(p<<1)>>1]|0;A=e[f+(q<<1)>>1]|0;B=e[f+(r<<1)>>1]|0;a=e[f+(s<<1)>>1]|0;C=e[f+(t<<1)>>1]|0;I=J+16|0;F=I+(e[f+(y<<1)>>1]|0)+((L+M|0)*20|0)+(H(K+D|0,-5)|0)>>5;b[d>>1]=F>>>0<4096?F:(F^-2147483648)>>31&4095;F=G+16|0;D=F+D+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>5;b[d+(w<<1)>>1]=D>>>0<4096?D:(D^-2147483648)>>31&4095;D=E+16|0;M=D+M+((J+K|0)*20|0)+(H(G+L|0,-5)|0)>>5;b[d+(h<<1)>>1]=M>>>0<4096?M:(M^-2147483648)>>31&4095;L=L+16+c+((G+J|0)*20|0)+(H(E+K|0,-5)|0)>>5;b[d+(i<<1)>>1]=L>>>0<4096?L:(L^-2147483648)>>31&4095;J=K+16+A+((E+G|0)*20|0)+(H(c+J|0,-5)|0)>>5;b[d+(j<<1)>>1]=J>>>0<4096?J:(J^-2147483648)>>31&4095;G=I+B+((c+E|0)*20|0)+(H(A+G|0,-5)|0)>>5;b[d+(k<<1)>>1]=G>>>0<4096?G:(G^-2147483648)>>31&4095;E=F+a+((A+c|0)*20|0)+(H(B+E|0,-5)|0)>>5;b[d+(l<<1)>>1]=E>>>0<4096?E:(E^-2147483648)>>31&4095;c=D+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[d+(m<<1)>>1]=c>>>0<4096?c:(c^-2147483648)>>31&4095;g=g+1|0;d=d+2|0;f=f+2|0}return}function Ag(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;D=e[f+(z<<1)>>1]|0;M=e[f>>1]|0;L=e[f+(x<<1)>>1]|0;K=e[f+(u<<1)>>1]|0;J=e[f+(v<<1)>>1]|0;G=e[f+(n<<1)>>1]|0;E=e[f+(o<<1)>>1]|0;c=e[f+(p<<1)>>1]|0;A=e[f+(q<<1)>>1]|0;B=e[f+(r<<1)>>1]|0;a=e[f+(s<<1)>>1]|0;C=e[f+(t<<1)>>1]|0;I=J+16|0;F=I+(e[f+(y<<1)>>1]|0)+((L+M|0)*20|0)+(H(K+D|0,-5)|0)>>5;b[d>>1]=F>>>0<1024?F:(F^-2147483648)>>31&1023;F=G+16|0;D=F+D+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>5;b[d+(w<<1)>>1]=D>>>0<1024?D:(D^-2147483648)>>31&1023;D=E+16|0;M=D+M+((J+K|0)*20|0)+(H(G+L|0,-5)|0)>>5;b[d+(h<<1)>>1]=M>>>0<1024?M:(M^-2147483648)>>31&1023;L=L+16+c+((G+J|0)*20|0)+(H(E+K|0,-5)|0)>>5;b[d+(i<<1)>>1]=L>>>0<1024?L:(L^-2147483648)>>31&1023;J=K+16+A+((E+G|0)*20|0)+(H(c+J|0,-5)|0)>>5;b[d+(j<<1)>>1]=J>>>0<1024?J:(J^-2147483648)>>31&1023;G=I+B+((c+E|0)*20|0)+(H(A+G|0,-5)|0)>>5;b[d+(k<<1)>>1]=G>>>0<1024?G:(G^-2147483648)>>31&1023;E=F+a+((A+c|0)*20|0)+(H(B+E|0,-5)|0)>>5;b[d+(l<<1)>>1]=E>>>0<1024?E:(E^-2147483648)>>31&1023;c=D+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[d+(m<<1)>>1]=c>>>0<1024?c:(c^-2147483648)>>31&1023;g=g+1|0;d=d+2|0;f=f+2|0}return}function Bg(a,b,g,i){a=a|0;b=b|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;E=Nb;Nb=Nb+176|0;A=E+96|0;D=E;w=c[g+96>>2]|0;x=d[g>>0]|0;w=(w|0)>(x|0)?x:w;x=g+92|0;y=g+88|0;v=g+80|0;q=(i|0)==0;o=0;while(1){if((o|0)>=(c[x>>2]|0))break;r=b+4+(o<<2)|0;s=o<<7;p=0;g=c[y>>2]|0;while(1){if((p|0)>=(c[r>>2]|0))break;u=g-(c[b+36+(o<<4)+(p<<2)>>2]|0)|0;u=(u|0)>0?u:0;t=c[b+292+(o<<4)+(p<<2)>>2]|0;a:do if(t|0?(su(b+2980+(o*320|0)+(p*80|0)|0,t,A),B=c[v>>2]|0,z=e[B+(((u|0)>(w|0)?w:u)<<1)>>1]|0,B=e[B+(((g|0)>(w|0)?w:g)<<1)>>1]|0,C=B-z|0,(C|0)>=1):0){g=(c[b+164+(o<<4)+(p<<2)>>2]|0)==0;n=g?1:-1;g=(g?z:B+-1|0)+s|0;if(!q){l=0;while(1){if((l|0)==(C|0))break a;j=(l|0)>(t|0)?t:l;k=a+(g<<2)|0;i=1;while(1){if((i|0)>(j|0))break;F=a+(g-(H(i,n)|0)<<2)|0;f[k>>2]=+f[k>>2]-+f[F>>2]*+f[A+(i+-1<<2)>>2];i=i+1|0}l=l+1|0;g=g+n|0}}l=0;k=g;while(1){if((l|0)==(C|0))break a;i=a+(k<<2)|0;F=c[i>>2]|0;c[D>>2]=F;j=(l|0)>(t|0)?t:l;g=1;m=(c[h>>2]=F,+f[h>>2]);while(1){if((g|0)>(j|0))break;G=m+ +f[D+(g<<2)>>2]*+f[A+(g+-1<<2)>>2];f[i>>2]=G;g=g+1|0;m=G}g=t;while(1){if((g|0)<=0)break;F=g+-1|0;c[D+(g<<2)>>2]=c[D+(F<<2)>>2];g=F}l=l+1|0;k=k+n|0}}while(0);p=p+1|0;g=u}o=o+1|0}Nb=E;return}function Cg(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0;w=d>>1;x=f>>1;y=H(x,-2)|0;z=0-x|0;u=f&-2;v=x*3|0;n=x<<2;o=x*5|0;p=x*6|0;q=x*7|0;r=x<<3;s=x*9|0;t=x*10|0;h=d&-2;i=w*3|0;j=w<<2;k=w*5|0;l=w*6|0;m=w*7|0;g=0;d=a;f=c;while(1){if((g|0)==8)break;D=e[f+(z<<1)>>1]|0;M=e[f>>1]|0;L=e[f+(x<<1)>>1]|0;K=e[f+(u<<1)>>1]|0;J=e[f+(v<<1)>>1]|0;G=e[f+(n<<1)>>1]|0;E=e[f+(o<<1)>>1]|0;c=e[f+(p<<1)>>1]|0;A=e[f+(q<<1)>>1]|0;B=e[f+(r<<1)>>1]|0;a=e[f+(s<<1)>>1]|0;C=e[f+(t<<1)>>1]|0;I=J+16|0;F=I+(e[f+(y<<1)>>1]|0)+((L+M|0)*20|0)+(H(K+D|0,-5)|0)>>5;b[d>>1]=F>>>0<512?F:(F^-2147483648)>>31&511;F=G+16|0;D=F+D+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>5;b[d+(w<<1)>>1]=D>>>0<512?D:(D^-2147483648)>>31&511;D=E+16|0;M=D+M+((J+K|0)*20|0)+(H(G+L|0,-5)|0)>>5;b[d+(h<<1)>>1]=M>>>0<512?M:(M^-2147483648)>>31&511;L=L+16+c+((G+J|0)*20|0)+(H(E+K|0,-5)|0)>>5;b[d+(i<<1)>>1]=L>>>0<512?L:(L^-2147483648)>>31&511;J=K+16+A+((E+G|0)*20|0)+(H(c+J|0,-5)|0)>>5;b[d+(j<<1)>>1]=J>>>0<512?J:(J^-2147483648)>>31&511;G=I+B+((c+E|0)*20|0)+(H(A+G|0,-5)|0)>>5;b[d+(k<<1)>>1]=G>>>0<512?G:(G^-2147483648)>>31&511;E=F+a+((A+c|0)*20|0)+(H(B+E|0,-5)|0)>>5;b[d+(l<<1)>>1]=E>>>0<512?E:(E^-2147483648)>>31&511;c=D+C+((B+A|0)*20|0)+(H(a+c|0,-5)|0)>>5;b[d+(m<<1)>>1]=c>>>0<512?c:(c^-2147483648)>>31&511;g=g+1|0;d=d+2|0;f=f+2|0}return}function Dg(a,b,d,e,h){a=a|0;b=b|0;d=d|0;e=e|0;h=h|0;var i=0,j=0;i=c[a+12>>2]|0;a:do if((i|0)>=9){if((i|0)<1128811585){if((i|0)<128)switch(i|0){case 9:{j=6;break a}default:{a=-22;break a}}if((i|0)>=1112493900)switch(i|0){case 1112493900:{j=5;break a}default:{a=-22;break a}}switch(i|0){case 128:break;default:{a=-22;break a}}g[d>>3]=+g[a+16>>3];a=0;break}if((i|0)<1346784596)if((i|0)<1146442272)switch(i|0){case 1128811585:{j=6;break a}default:{a=-22;break a}}else switch(i|0){case 1146442272:{j=6;break a}default:{a=-22;break a}}if((i|0)<1397116244){switch(i|0){case 1346784596:break;default:{a=-22;break a}}i=c[b>>2]|0;a=h;c[a>>2]=i;c[a+4>>2]=((i|0)<0)<<31>>31;a=0;break}else{switch(i|0){case 1397116244:break;default:{a=-22;break a}}i=c[b>>2]|0;a=h;c[a>>2]=i;c[a+4>>2]=((i|0)<0)<<31>>31;a=0;break}}else switch(i|0){case 1:{j=5;break a}case 2:{j=6;break a}case 0:{a=h;c[a>>2]=c[b>>2];c[a+4>>2]=0;a=0;break a}case 4:{g[d>>3]=+f[b>>2];a=0;break a}case 3:{g[d>>3]=+g[b>>3];a=0;break a}case 6:{i=c[b>>2]|0;a=h;c[a>>2]=i;c[a+4>>2]=((i|0)<0)<<31>>31;c[e>>2]=c[b+4>>2];a=0;break a}default:{a=-22;break a}}while(0);if((j|0)==5){j=c[b>>2]|0;a=h;c[a>>2]=j;c[a+4>>2]=((j|0)<0)<<31>>31;a=0}else if((j|0)==6){i=b;j=c[i+4>>2]|0;a=h;c[a>>2]=c[i>>2];c[a+4>>2]=j;a=0}return a|0}function Eg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=c[d+74176>>2]|0;p=d+17856|0;o=(a[d+12>>0]|0)==0?215360:290080;j=(a[d+13>>0]|0)!=0;f=j?285984:218944;j=j?290080:215360;k=b+1024|0;l=b+5696|0;m=d+4|0;a:do if((c[m>>2]|0)==2){g=b+5188|0;h=b+5232|0;e=0;while(1){if(e>>>0>=1024)break a;hc[c[h>>2]&1023](g,b+1024+(e<<2)|0,d+13760+(e<<2)|0);e=e+128|0}}else hc[c[b+5164>>2]&1023](b+5120|0,k,d+13760|0);while(0);switch(c[d+8>>2]|0){case 3:case 0:{if((c[m>>2]|0)>>>0<2)kc[c[(c[b+5404>>2]|0)+20>>2]&127](n,p,k,f,512);else i=9;break}default:i=9}do if((i|0)==9){Bk(n|0,p|0,1792)|0;i=(c[m>>2]|0)==2;e=b+5404|0;kc[c[(c[e>>2]|0)+20>>2]&127](n+1792|0,d+19648|0,k,j,64);if(i){kc[c[(c[e>>2]|0)+20>>2]&127](n+2304|0,b+1280|0,b+1536|0,o,64);kc[c[(c[e>>2]|0)+20>>2]&127](n+2816|0,b+1792|0,b+2048|0,o,64);kc[c[(c[e>>2]|0)+20>>2]&127](n+3328|0,b+2304|0,b+2560|0,o,64);kc[c[(c[e>>2]|0)+20>>2]&127](l,b+2816|0,b+3072|0,o,64);Bk(n+3840|0,l|0,256)|0;break}else{Bk(n+2304|0,b+1280|0,1792)|0;break}}while(0);f=c[m>>2]|0;do if((f|0)!=2){e=b+3072|0;if((f|0)==1){Bk(p|0,e|0,1792)|0;Bk(d+19648|0,b+4864|0,256)|0;break}else{Bk(p|0,e|0,2048)|0;break}}else{Bk(p|0,b+5952|0,256)|0;p=b+5404|0;kc[c[(c[p>>2]|0)+20>>2]&127](d+18112|0,b+3328|0,b+3584|0,o,64);kc[c[(c[p>>2]|0)+20>>2]&127](d+18624|0,b+3840|0,b+4096|0,o,64);kc[c[(c[p>>2]|0)+20>>2]&127](d+19136|0,b+4352|0,b+4608|0,o,64);Bk(d+19648|0,b+4864|0,256)|0}while(0);return}function Fg(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;y=a+32|0;z=a+36|0;h=c[z>>2]|0;A=a+48|0;g=c[A>>2]|0;i=0;j=c[y>>2]|0;while(1){if((j|0)<(g|0))break;i=i+1|0;j=j-g|0}t=a+4|0;u=a+12|0;v=a+8|0;w=a+28|0;x=a+24|0;s=a+40|0;r=0;while(1){if((r|0)>=(e|0))break;l=(c[t>>2]|0)+((H(c[u>>2]|0,j)|0)<<2)|0;m=c[v>>2]|0;n=((m|0)>1?m:1)&2147483646;k=0;a=536870912;g=0;p=0;q=0;while(1){o=k|1;if((o|0)>=(m|0))break;D=k+i|0;C=c[d+(D<<2)>>2]|0;B=c[l+(k<<2)>>2]|0;C=oK(B|0,((B|0)<0)<<31>>31|0,C|0,((C|0)<0)<<31>>31|0)|0;C=kP(C|0,M()|0,a|0,g|0)|0;B=M()|0;D=c[d+(D+1<<2)>>2]|0;o=c[l+(o<<2)>>2]|0;o=oK(o|0,((o|0)<0)<<31>>31|0,D|0,((D|0)<0)<<31>>31|0)|0;o=kP(o|0,M()|0,p|0,q|0)|0;k=k+2|0;a=C;g=B;p=o;q=M()|0}if((n|0)<(m|0)){D=c[d+(n+i<<2)>>2]|0;C=c[l+(n<<2)>>2]|0;D=oK(C|0,((C|0)<0)<<31>>31|0,D|0,((D|0)<0)<<31>>31|0)|0;a=kP(D|0,M()|0,a|0,g|0)|0;g=M()|0}B=kP(a|0,g|0,p|0,q|0)|0;D=M()|0;a=YM(B|0,D|0,30)|0;g=kP(a|0,M()|0,-2147483648,0)|0;C=M()|0;D=YM(B|0,D|0,63)|0;M()|0;c[b+(r<<2)>>2]=C>>>0>0|(C|0)==0&g>>>0>4294967295?D^2147483647:a;a=(c[w>>2]|0)+h|0;h=c[s>>2]|0;D=(a|0)<(h|0);h=D?0:h;g=c[A>>2]|0;j=(c[x>>2]|0)+j+((D^1)&1)|0;while(1){if((j|0)<(g|0))break;i=i+1|0;j=j-g|0}r=r+1|0;h=a-h|0}if(f|0){c[z>>2]=h;c[y>>2]=j}return i|0}function Gg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0;o=Nb;Nb=Nb+16|0;l=o;k=a+128|0;do if(((c[k>>2]|0)+-4|0)>>>0<61)b=-22;else{n=RO(b)|0;h=RO(d)|0;if((h+-3|0)>>>0>=2){d=(h|0)==2;b=(n|0)==2;if(b&d){e=(c[a+11040>>2]&31|0)==0?0.0:1.0;b=1;d=1}else e=0.0}else{b=(n|0)==2;e=(n|0)==0?.0078125:(n|0)==1?.000030517578125:b?4.656612873077393e-10:0.0;d=0}j=(n|0)==0;e=(j&(h|0)==1?256.0:j&d?16777216.0:(n|0)==1&d?65536.0:e)*+f[a+136>>2];if(b){j=c[a+11040>>2]|0;e=(j|0)==0?e:e*+(1<<32-j|0)}if(e==0.0){c[k>>2]=0;b=0;break}c[a+156>>2]=0;p=e;f[a+140>>2]=p;f[a+148>>2]=p;j=a+152|0;f[j>>2]=1.0/e;jq(a+240|0,0,10240)|0;b=a+44|0;i=0;while(1){if((i|0)==15){m=19;break}h=c[151216+(i*24|0)>>2]|0;t=(c[b>>2]|0)-h|0;r=((t|0)<0)<<31>>31;q=(r|0)>-1|(r|0)==-1&t>>>0>4294967295;s=iP(0,0,t|0,r|0)|0;d=M()|0;d=oK((q?t:s)|0,(q?r:d)|0,20,0)|0;r=M()|0;q=((h|0)<0)<<31>>31;if(!((r|0)>(q|0)|(r|0)==(q|0)&d>>>0>h>>>0)?(c[151216+(i*24|0)+20>>2]|0)==(c[k>>2]|0):0)break;i=i+1|0}if((m|0)==19){if((c[k>>2]|0)<=64){b=0;break}mx(a,24,211439,l);c[k>>2]=3;b=0;break}d=151216+(i*24|0)+16|0;h=c[151216+(i*24|0)+8>>2]|0;c[a+144>>2]=h;b=0;while(1){if((b|0)==(h|0))break;f[a+160+(b<<2)>>2]=+g[(c[d>>2]|0)+(b<<3)>>3];b=b+1|0}p=+E(+(+(c[151216+(i*24|0)+12>>2]|0)*2.302585092994046*.005))*2.0;p=1.0-p/+(1<<((bQ(n)|0)<<3)|0);f[j>>2]=p*+f[j>>2];b=0}while(0);Nb=o;return b|0}function Hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=Nb;Nb=Nb+16|0;h=p;k=a+64|0;l=c[(c[k>>2]|0)+20>>2]|0;n=a+12|0;e=c[n>>2]|0;mv(l,b);f=l+4|0;g=c[f>>2]|0;if((g|0?(d=c[l>>2]|0,(g|0)!=(d|0)):0)?(dg(c[d+212>>2]|0,c[g+212>>2]|0,0)|0)<0:0){mx(a,16,184872,h);h=c[(c[(c[l>>2]|0)+212>>2]|0)+64>>2]|0;c[c[(c[(c[f>>2]|0)+212>>2]|0)+64>>2]>>2]=c[h>>2];c[h>>2]=1}f=e+92|0;e=0;while(1){if((e|0)>=(b|0))break;g=c[l>>2]|0;h=g+(e*352|0)|0;d=g+(e*352|0)+156|0;JV(d)|0;c[g+(e*352|0)+332>>2]=1;yb(g+(e*352|0)+12|0)|0;JV(d)|0;d=g+(e*352|0)+8|0;if(c[d>>2]|0)Bb(c[g+(e*352|0)+4>>2]|0,0)|0;c[d>>2]=0;d=c[f>>2]|0;if(d|0?(i=c[g+(e*352|0)+212>>2]|0,i|0):0)Wb[d&31](i)|0;yr(h);iQ(g+(e*352|0)+288|0);e=e+1|0}d=0;while(1){if((d|0)>=(b|0))break;e=c[l>>2]|0;JV(e+(d*352|0)+156|0)|0;JV(e+(d*352|0)+184|0)|0;wb(e+(d*352|0)+12|0)|0;wb(e+(d*352|0)+60|0)|0;wb(e+(d*352|0)+108|0)|0;AP(e+(d*352|0)+216|0);zM(e+(d*352|0)+304|0);e=e+(d*352|0)+212|0;if(d){f=c[e>>2]|0;if(f|0){zM(f+60|0);zM((c[e>>2]|0)+224|0);m=18}}else m=18;if((m|0)==18?(m=0,j=c[e>>2]|0,j|0):0){zM(j+64|0);nT((c[e>>2]|0)+976|0)}zM(e);d=d+1|0}zM(l);JV(l+8|0)|0;JV(l+36|0)|0;JV(l+64|0)|0;wb(l+92|0)|0;zM((c[k>>2]|0)+20|0);d=c[a+60>>2]|0;if((d|0?(o=c[n>>2]|0,o|0):0)?c[o+44>>2]|0:0)CE(d);c[n>>2]=0;Nb=p;return}function Ig(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;r=a+76|0;s=a+20|0;t=a+36|0;u=a+24|0;v=a+56|0;w=a+48|0;h=a+40|0;i=a+68|0;j=a+52|0;k=a+28|0;l=a+29|0;m=a+30|0;n=a+31|0;o=a+60|0;p=a+64|0;q=a+72|0;g=0;a:while(1){if(!e){f=0;break}switch(c[s>>2]|0){case 0:{y=c[t>>2]|0;z=9-y|0;z=z>>>0>e>>>0?e:z;Bk(a+24+y|0,b+g|0,z|0)|0;y=z+(c[t>>2]|0)|0;c[t>>2]=y;e=e-z|0;g=z+g|0;if((y|0)==9){c[s>>2]=3;c[t>>2]=0}break}case 1:{z=c[t>>2]|0;y=11-z|0;y=y>>>0>e>>>0?e:y;Bk(a+24+z|0,b+g|0,y|0)|0;z=y+(c[t>>2]|0)|0;c[t>>2]=z;e=e-y|0;g=y+g|0;if((z|0)==11){c[s>>2]=2;c[t>>2]=0;c[j>>2]=d[u>>0];z=GP(u,1)|0;c[v>>2]=z;c[o>>2]=(d[l>>0]|0)<<8|(d[k>>0]|0)<<16|(d[m>>0]|0)|(d[n>>0]|0)<<24}break}case 2:{GK(a,c[v>>2]|0);z=c[w>>2]|0;y=(c[v>>2]|0)-z|0;y=y>>>0>e>>>0?e:y;Bk((c[h>>2]|0)+z|0,b+g|0,y|0)|0;z=(c[w>>2]|0)+y|0;c[w>>2]=z;e=e-y|0;g=y+g|0;if((z|0)==(c[v>>2]|0)){c[s>>2]=3;c[w>>2]=0}break}case 3:{z=c[i>>2]|0;y=4-z|0;y=y>>>0>e>>>0?e:y;Bk(a+64+z|0,b+g|0,y|0)|0;z=y+(c[i>>2]|0)|0;c[i>>2]=z;e=e-y|0;g=y+g|0;if(((z|0)==4?(c[s>>2]=1,c[i>>2]=0,z=xO(p,0)|0,c[q>>2]=z,x=c[v>>2]|0,(x|0)==(z+-11|0)):0)?(f=LG(c[r>>2]|0,c[j>>2]|0,c[h>>2]|0,x,c[o>>2]|0)|0,(f|0)>0):0)break a;break}default:{}}}return f|0}function Jg(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+6)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:(k^-2147483648)>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function Kg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=Nb;Nb=Nb+16|0;v=w;i=b+6472|0;switch(c[i>>2]|0){case 23:{g=11;break}case 39:{g=12;break}default:if(!(c[b+6516>>2]|0))g=c[b+6744>>2]|0;else g=13}t=b+4|0;u=b+6752|0;j=b+6748|0;k=b+6760|0;l=b+6488|0;h=3;while(1){if((h|0)<=-1)break;m=(h|0)<2;n=(h|0)==1;o=(h|0)==2;p=(h|0)<3;f=0;while(1){if((f|0)==16)break;q=c[b+492+(h<<6)+(f<<2)>>2]|0;do if(q|0){if(!(c[q>>2]|0)){s=c[t>>2]|0;c[v>>2]=h;c[v+4>>2]=f;mx(s,40,187653,v);break}if(m)Qn(b,q,h,f,0,41);if((c[i>>2]|0)==4?(r=q+288|0,c[q+388>>2]|0):0){if(a[q+316>>0]|0)fc[c[j>>2]&255](b,r);if(n&(a[q+74524>>0]|0)!=0)fc[c[j>>2]&255](b,q+74496|0)}s=q+288|0;d=q+580|0;if(c[d>>2]|0)ic[c[u>>2]&255](q+14048|0,d,s,1);e=q+74496|0;d=q+74788|0;if(c[d>>2]|0)ic[c[u>>2]&255](q+88256|0,d,e,1);if(!m)if(o?(c[q+148704>>2]|0)!=3:0)d=35;else d=27;else{Qn(b,q,h,f,1,41);d=27}if((d|0)==27){d=0;fc[g&255](b,s);if((c[i>>2]|0)==4)fc[c[k>>2]&255](b,s);if(n?(fc[g&255](b,e),(c[i>>2]|0)==4):0)fc[c[k>>2]&255](b,e);if((c[l>>2]|0)>0)df(b,q+156512|0,h,c[q+74464>>2]|0,c[q+148672>>2]|0);if(p)d=35}if((d|0)==35)Qn(b,q,h,f,3,42);c[q>>2]=0}while(0);f=f+1|0}h=h+-1|0}Nb=w;return}function Lg(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;x=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;w=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;v=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;u=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;t=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;s=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;r=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;q=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;p=(d[b+8>>0]|0)-(((d[a+8>>0]|0)+1+(d[c+8>>0]|0)|0)>>>1)|0;o=(d[b+9>>0]|0)-(((d[a+9>>0]|0)+1+(d[c+9>>0]|0)|0)>>>1)|0;n=(d[b+10>>0]|0)-(((d[a+10>>0]|0)+1+(d[c+10>>0]|0)|0)>>>1)|0;m=(d[b+11>>0]|0)-(((d[a+11>>0]|0)+1+(d[c+11>>0]|0)|0)>>>1)|0;l=(d[b+12>>0]|0)-(((d[a+12>>0]|0)+1+(d[c+12>>0]|0)|0)>>>1)|0;k=(d[b+13>>0]|0)-(((d[a+13>>0]|0)+1+(d[c+13>>0]|0)|0)>>>1)|0;j=(d[b+14>>0]|0)-(((d[a+14>>0]|0)+1+(d[c+14>>0]|0)|0)>>>1)|0;i=(d[b+15>>0]|0)-(((d[a+15>>0]|0)+1+(d[c+15>>0]|0)|0)>>>1)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Mg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=0;while(1){if((e|0)==2)break;c[b+896+(e<<2)>>2]=0;c[b+904+(e<<2)>>2]=0;e=e+1|0}n=(d|0)<0;if(n){g=c[a+26364>>2]|0;e=c[a+24312>>2]|0;g=c[((g|0)==3?e+84|0:e+76+(g+-1<<2)|0)>>2]|0;e=c[b+23404>>2]|0;f=c[b+23408>>2]|0;if((e|0)==1)if((f|0)==1)if((c[a+26360>>2]|0)==0?(k=c[b+23444>>2]|0,m=c[b+25364>>2]|0,k=kP(m|0,((m|0)<0)<<31>>31|0,k|0,((k|0)<0)<<31>>31|0)|0,m=M()|0,l=uN(g|0,((g|0)<0)<<31>>31|0,1)|0,(k|0)==(l|0)&(m|0)==(M()|0)):0){c[b+880>>2]=0;c[b+884>>2]=0}else{m=0;e=1;f=1;h=11}else{m=0;e=1;h=11}else{m=0;h=11}}else{m=16;e=(c[b+23404>>2]<<1)+16|0;f=(c[b+23408>>2]<<1)+16|0;g=c[(c[a+24312>>2]|0)+76+(d<<2)>>2]|0;h=11}a:do if((h|0)==11){c[b+880>>2]=2;c[b+884>>2]=2;c[b+888>>2]=5;c[b+892>>2]=5;a=m;while(1){if((a|0)>=(e|0))break a;j=c[b+23416+(a*40|0)+28>>2]|0;k=b+23416+(a*40|0)+36|0;l=g-j|0;l=((l+128|0)>>>0>255?l>>31^127:l)<<24>>24;h=m;while(1){if((h|0)>=(f|0))break;if(((c[(c[k>>2]|0)+100>>2]|0)==0?(c[(c[b+25336+(h*40|0)+36>>2]|0)+100>>2]|0)==0:0)?(i=(c[b+25336+(h*40|0)+28>>2]|0)-j|0,i=(i+128|0)>>>0>255?i>>31^127:i,o=i<<24>>24,(i&255)<<24>>24!=0):0){i=H(((((o|0)>-1?o:0-o|0)>>1)+16384|0)/(o|0)|0,l)|0;i=(i+16416|0)>>>0<49408?64-(i+32>>8)|0:32}else i=32;if(n){c[b+3216+(a*384|0)+(h<<3)+4>>2]=i;c[b+3216+(a*384|0)+(h<<3)>>2]=i}else c[b+3216+(a*384|0)+(h<<3)+(d<<2)>>2]=i;h=h+1|0}a=a+1|0}}while(0);return}function Ng(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;d=d+(0-(g&-2)<<1)|0;while(1){if((i|0)==9)break;k=d+2|0;n=d+-2|0;g=d+4|0;o=H((e[g>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=d+6|0;b[h>>1]=(((e[k>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[d+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[d>>1]|0)|0,-5)|0;m=d+8|0;b[h+2>>1]=(((e[g>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=d+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[d>>1]|0)+o+(e[n>>1]|0);g=H((e[n>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+g+(e[d+12>>1]|0);h=h+16|0;i=i+1|0;d=d+(j<<1)|0}j=f>>1;h=f&-2;i=j*3|0;d=c+32|0;g=0;while(1){if((g|0)==4)break;q=b[d+-16>>1]|0;p=b[d>>1]|0;f=b[d+16>>1]|0;n=b[d+32>>1]|0;l=b[d+48>>1]|0;k=b[d+64>>1]|0;m=b[d+80>>1]|0;c=b[d+96>>1]|0;o=(b[d+-32>>1]|0)+512+l+((f+p|0)*20|0)+(H(n+q|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<512?o:(o^-2147483648)>>31&511)|0)>>>1;o=a+(j<<1)|0;q=q+512+k+((n+f|0)*20|0)+(H(l+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(q>>>0<512?q:(q^-2147483648)>>31&511)|0)>>>1;o=a+(h<<1)|0;p=p+512+m+((l+n|0)*20|0)+(H(k+f|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<512?p:(p^-2147483648)>>31&511)|0)>>>1;o=a+(i<<1)|0;n=f+512+c+((k+l|0)*20|0)+(H(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<512?n:(n^-2147483648)>>31&511)|0)>>>1;a=a+2|0;d=d+2|0;g=g+1|0}return}function Og(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=Nb;Nb=Nb+16|0;n=o;l=b+44|0;a:do if(((c[l>>2]|0)==0?(m=b+28|0,f=c[m>>2]|0,(f|0)>12):0)?(j=b+24|0,i=c[j>>2]|0,e=i+f+-8|0,h=e,g=h,h=h+4|0,h=gQ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0,i,(h|0)==-1910117890&(M()|0)==-1941070576):0){e=e+-5|0;f=1;while(1){g=IS(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0;if(g>>>0>2147483642){k=0;break a}h=e-i|0;if(h>>>0<g>>>0){k=0;break a}if((a[e+4>>0]|0)<0)break;if(h>>>0<(g+5|0)>>>0){k=0;break a}e=e+(-5-g)|0;f=f+1|0}if(f>>>0<=83){i=aR(f)|0;h=b+40|0;c[h>>2]=i;if(i){g=(c[j>>2]|0)+(c[m>>2]|0)+-8+-5|0;i=0;while(1){e=IS(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0;if(e>>>0>=2147483643){e=15;break}if((g-(c[j>>2]|0)|0)>>>0<e>>>0){e=15;break}f=rR(e+32|0)|0;p=c[h>>2]|0;c[p+(i*12|0)>>2]=f;c[p+(i*12|0)+4>>2]=e;b=g+4|0;c[p+(i*12|0)+8>>2]=a[b>>0]&127;if(!f){k=-12;break a}Bk(f|0,g+(0-e)|0,e|0)|0;e=-5-e|0;f=e+(c[m>>2]|0)|0;c[m>>2]=f;if((a[b>>0]|0)<0){e=19;break}g=g+e|0;i=i+1|0}if((e|0)==15){c[n>>2]=166180;c[n+4>>2]=166158;c[n+8>>2]=462;mx(0,0,214689,n);ba()}else if((e|0)==19){c[m>>2]=f+-8;c[l>>2]=i+1;k=1;break}}else k=-12}else k=-34}else k=0;while(0);Nb=o;return k|0}function Pg(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+4)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:(k^-2147483648)>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function Qg(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+2)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:(k^-2147483648)>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function Rg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;e=c[i>>2]|0;j=a+104|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;f=d[e>>0]|0}else f=ol(a)|0;switch(f|0){case 43:case 45:{g=(f|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=ol(a)|0;f=e+-48|0;if((b|0)!=0&f>>>0>9)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;k=14}else k=12;break}default:{g=0;e=f;f=f+-48|0;k=12}}if((k|0)==12)if(f>>>0>9)k=14;else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=ol(a)|0;b=e+-48|0}while(b>>>0<10&(f|0)<214748364);h=((f|0)<0)<<31>>31;if(b>>>0<10){do{l=oK(f|0,h|0,10,0)|0;b=M()|0;e=kP(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=kP(e|0,M()|0,l|0,b|0)|0;h=M()|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=ol(a)|0;b=e+-48|0}while(b>>>0<10&((h|0)<21474836|(h|0)==21474836&f>>>0<2061584302));if(b>>>0<10){do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=ol(a)|0}while((e+-48|0)>>>0<10);e=h}else e=h}else e=h;if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;j=(g|0)==0;i=iP(0,0,f|0,e|0)|0;l=M()|0;f=j?f:i;e=j?e:l}if((k|0)==14)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;f=0;e=-2147483648}L(e|0);return f|0}function Sg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=Nb;Nb=Nb+80|0;l=m+8|0;j=m;k=m+16|0;c[j>>2]=e;c[j+4>>2]=f;EN(163784,j)|0;j=b;c[j>>2]=d;c[j+4>>2]=e;c[j+8>>2]=f;g=j+12|0;c[g>>2]=8e3;h=j+16|0;c[h>>2]=1;b=ID(193374)|0;do if(b){d=DN(b)|0;i=j+24|0;c[i>>2]=d;if(!d){_v(163829)|0;b=-2;break}c[d+424>>2]=1;c[d+416>>2]=c[g>>2];o=xD(1)|0;n=M()|0;g=c[i>>2]|0;d=g+448|0;c[d>>2]=o;c[d+4>>2]=n;c[g+420>>2]=c[h>>2];g=yc(g,b,0)|0;if((g|0)<0){HK(i);b=k;d=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));b=ET(k,g)|0;c[l>>2]=b;EN(163862,l)|0;b=-3;break}o=c[i>>2]|0;l=o+448|0;k=c[l>>2]|0;l=c[l+4>>2]|0;n=c[o+424>>2]|0;o=c[o+416>>2]|0;b=xD(f)|0;b=Fl(0,k,l,n,o,b,M()|0,3,e,0,0)|0;c[j+28>>2]=b;if(!b){_v(163887)|0;b=-4;break}else{Oc(b)|0;b=BP()|0;n=j+32|0;c[n>>2]=b;c[b+80>>2]=3;c[b+76>>2]=1024;b=xD(f)|0;l=M()|0;n=(c[n>>2]|0)+240|0;c[n>>2]=b;c[n+4>>2]=l;n=BP()|0;c[j+36>>2]=n;l=c[i>>2]|0;c[n+80>>2]=c[l+424>>2];c[n+76>>2]=1024;l=l+448|0;b=c[l+4>>2]|0;o=n+240|0;c[o>>2]=c[l>>2];c[o+4>>2]=b;Qv(n,0)|0;n=GC()|0;o=M()|0;b=j+40|0;c[b>>2]=n;c[b+4>>2]=o;bS(j,163658,13);b=0;break}}else{_v(163813)|0;b=-1}while(0);Nb=m;return b|0}function Tg(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<<f+1)+((f|0)==0?0:1<<f+-1)|0;c=a;h=0;while(1){if((h|0)>=(d|0))break;a=(H(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=c+2|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+4|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+6|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+8|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+10|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+12|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+14|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+16|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+18|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+20|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+22|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+24|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+26|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+28|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;a=c+30|0;k=(H(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:(k^-2147483648)>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function Ug(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;d=d+(0-(g&-2)<<1)|0;while(1){if((i|0)==9)break;k=d+2|0;n=d+-2|0;g=d+4|0;o=H((e[g>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=d+6|0;b[h>>1]=(((e[k>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[d+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[d>>1]|0)|0,-5)|0;m=d+8|0;b[h+2>>1]=(((e[g>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=d+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[d>>1]|0)+o+(e[n>>1]|0);g=H((e[n>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+g+(e[d+12>>1]|0);h=h+16|0;i=i+1|0;d=d+(j<<1)|0}j=f>>1;h=f&-2;i=j*3|0;d=c+32|0;g=0;while(1){if((g|0)==4)break;r=b[d+-16>>1]|0;p=b[d>>1]|0;q=p+10230|0;c=b[d+16>>1]|0;f=c+10230|0;o=(b[d+32>>1]|0)+10230|0;m=(b[d+48>>1]|0)+10230|0;l=(b[d+64>>1]|0)+10230|0;n=(b[d+80>>1]|0)+10230|0;k=b[d+96>>1]|0;s=(b[d+-32>>1]|0)+10742+m+((f+q|0)*20|0)+(H(o+(r+10230)|0,-5)|0)>>10;b[a>>1]=s>>>0<1024?s:(s^-2147483648)>>31&1023;q=r+10742+l+((o+f|0)*20|0)+(H(m+q|0,-5)|0)>>10;b[a+(j<<1)>>1]=q>>>0<1024?q:(q^-2147483648)>>31&1023;f=p+10742+n+((m+o|0)*20|0)+(H(l+f|0,-5)|0)>>10;b[a+(h<<1)>>1]=f>>>0<1024?f:(f^-2147483648)>>31&1023;o=c+20972+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;b[a+(i<<1)>>1]=o>>>0<1024?o:(o^-2147483648)>>31&1023;a=a+2|0;d=d+2|0;g=g+1|0}return}function Vg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.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;s=Nb;Nb=Nb+160|0;r=s+144|0;n=s+136|0;m=s+128|0;q=s+156|0;o=s;l=s+152|0;if((a[d>>0]|0)==35)i=1;else{i=(vv(d,205590,2)|0)==0;i=i?2:0}if((e|0)<0)e=wu(d)|0;e=e-i+1|0;CD(o,d+i|0,e>>>0<128?e:128)|0;e=vQ(o,64)|0;c[q>>2]=e;if(!e)k=0;else{k=e+1|0;c[q>>2]=k;a[e>>0]=0}h=wu(o)|0;j=b+3|0;a[j>>0]=-1;a:do if((sz(o,209946)|0)!=0?(sz(o,205593)|0)!=0:0){if((i|0)==0?(Kn(o,205602)|0)!=(h|0):0){e=Fv(o,93008,140,8,10)|0;if(!e){c[n>>2]=o;mx(f,16,205666,n);e=-22;break}else{p=e+4|0;a[b>>0]=a[p>>0]|0;a[b+1>>0]=a[p+1>>0]|0;a[b+2>>0]=a[p+2>>0]|0;p=20;break}}e=nR(o,l,16)|0;b:do if(!(a[c[l>>2]>>0]|0)){switch(h|0){case 8:{a[j>>0]=e;e=e>>>8;break}case 6:break;default:break b}a[b>>0]=e>>>16;a[b+1>>0]=e>>>8;a[b+2>>0]=e;p=20;break a}while(0);c[m>>2]=o;mx(f,16,205625,m);e=-22}else p=9;while(0);if((p|0)==9){o=pE()|0;a[b>>0]=o>>>24;a[b+1>>0]=o>>>16;a[b+2>>0]=o>>>8;a[j>>0]=o;p=20}do if((p|0)==20)if(!k)e=0;else{if(!(vv(k,205590,2)|0))g=+((nR(k,q,16)|0)>>>0);else{g=+vU(k,q);g=g<0.0|g>1.0?256.0:g*255.0}q=c[q>>2]|0;if((q|0)!=(k|0)?!(g<0.0|(g>255.0|(a[q>>0]|0)!=0)):0){a[j>>0]=~~g;e=0;break}c[r>>2]=k;c[r+4>>2]=d;mx(f,16,205690,r);e=-22}while(0);Nb=s;return e|0}function Wg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=Nb;Nb=Nb+32|0;l=p+24|0;i=p+8|0;j=p;n=b+24|0;k=b+28|0;o=b+4|0;h=c[n>>2]|0;while(1){if((h|0)<=0)break;m=c[b>>2]|0;q=c[k>>2]|0;c[k>>2]=q+1;q=a[m+q>>0]|0;h=c[o>>2]|0;c[o>>2]=h+1;a[m+h>>0]=q;h=(c[n>>2]|0)+-1|0;c[n>>2]=h}e=(e|0)==-100&(c[g>>2]|0)==0?0:e;h=c[o>>2]|0;m=b+8|0;c[m>>2]=h;a:do if((e|0)==-100){e=EJ(c[b>>2]|0,b+12|0,h+32+(c[g>>2]|0)|0)|0;if(!e){c[j>>2]=(c[g>>2]|0)+32+(c[o>>2]|0);mx(0,16,184353,j);e=-12;h=0}else{c[b>>2]=e;Bk(e+(c[o>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;e=-1;h=(c[o>>2]|0)+(c[g>>2]|0)|0}c[o>>2]=h}else{if((e|0)<=-1?(c[b>>2]|0)==0:0){c[i>>2]=184395;c[i+4>>2]=184333;c[i+8>>2]=288;mx(0,0,214689,i);ba()}h=e+h|0;c[k>>2]=h;c[g>>2]=h;h=c[o>>2]|0;if(h|0){i=e+32|0;h=EJ(c[b>>2]|0,b+12|0,i+h|0)|0;if(!h){c[l>>2]=i+(c[o>>2]|0);mx(0,16,184353,l);c[o>>2]=0;c[k>>2]=0;e=-12;break}c[b>>2]=h;if((e|0)>-32){Bk(h+(c[o>>2]|0)|0,c[f>>2]|0,i|0)|0;h=c[b>>2]|0}c[o>>2]=0;c[f>>2]=h}h=b+16|0;i=b+32|0;while(1){if((e|0)>=0){e=0;break a}f=(c[b>>2]|0)+((c[m>>2]|0)+e)|0;c[h>>2]=c[h>>2]<<8|(d[f>>0]|0);l=i;l=uN(c[l>>2]|0,c[l+4>>2]|0,8)|0;o=M()|0;q=i;c[q>>2]=l|(d[f>>0]|0);c[q+4>>2]=o;c[n>>2]=(c[n>>2]|0)+1;e=e+1|0}}while(0);Nb=p;return e|0}function Xg(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==8)break;j=c+1|0;i=c+-1|0;k=c+2|0;m=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+3|0;m=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[l>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[l>>0]|0)+(d[c>>0]|0)|0,-5)|0;n=c+4|0;m=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+m+(d[n>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[n>>0]|0)+(d[j>>0]|0)|0,-5)|0;i=c+5|0;m=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[i>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[i>>0]|0)+(d[k>>0]|0)|0,-5)|0;h=c+6|0;m=(((d[n>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+m+(d[h>>0]|0)>>5;a[b+3>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+7|0;m=(((d[i>>0]|0)+(d[n>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+m+(d[j>>0]|0)>>5;a[b+4>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[j>>0]|0)+(d[n>>0]|0)|0,-5)|0;k=c+8|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+5>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=H((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+9|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[n>>0]|0)+m+(d[l>>0]|0)>>5;a[b+6>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=H((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+10>>0]|0)>>5;a[b+7>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function Yg(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+16|0;j=s;q=b+556|0;n=c[q>>2]|0;o=(H(n,f)|0)+e|0;p=b+552|0;l=c[p>>2]|0;m=l+-1|0;o=(o|0)<0?0:(o|0)>(m|0)?m:o;h=(H(n,h)|0)+g|0;h=(h|0)<0?0:(h|0)>(l|0)?l:h;l=b+548|0;n=c[l>>2]|0;m=c[n+(o<<2)>>2]|0;n=c[n+(h<<2)>>2]|0;e=c[b>>2]|0;g=c[e+704>>2]|0;if(!((g|0)!=0?(c[g+32>>2]|0)!=0:0))k=3;do if((k|0)==3){if((n|0)<(m|0)|(o|0)>(h|0)){mx(e,16,195491,j);break}if(c[e+676>>2]|0){if(!(i&18))e=-2;else{BS(b+572|0,o+~h|0);e=-20}if(i&36){BS(b+572|0,o+~h|0);e=e&-38}if(i&72){BS(b+572|0,o+~h|0);e=e&-73}if(i&14|0){c[b+576>>2]=1;BU(b+572|0)}g=b+580|0;a:do if((e|0)==-128)jq((c[g>>2]|0)+m|0,0,n-m|0)|0;else{f=m;while(1){if((f|0)>=(n|0))break a;k=(c[g>>2]|0)+f|0;a[k>>0]=e&(d[k>>0]|0);f=f+1|0}}while(0);if((h|0)==(c[p>>2]|0))BU(b+572|0);else{p=(c[g>>2]|0)+n|0;a[p>>0]=e&(d[p>>0]|0);p=(c[g>>2]|0)+n|0;a[p>>0]=d[p>>0]|0|i}i=(c[g>>2]|0)+m|0;a[i>>0]=a[i>>0]|1;if(((((m|0)>0?(r=c[b>>2]|0,(c[r+808>>2]&2|0)==0):0)?RE(b)|0:0)?(H(c[q>>2]|0,c[r+332>>2]|0)|0)<(o|0):0)?(a[(c[g>>2]|0)+(c[(c[l>>2]|0)+(o+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0){c[b+576>>2]=1;BU(b+572|0)}}}while(0);Nb=s;return}function Zg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=Nb;Nb=Nb+16|0;m=q;n=a+68|0;g=c[n>>2]|0;do if((g|0)>0?(o=a+72|0,h=c[o>>2]|0,(h|0)>0):0){p=a+392|0;e=c[p>>2]|0;j=a+396|0;f=c[j>>2]|0;if(e>>>0<(2147483647-f|0)>>>0?(k=a+384|0,r=c[k>>2]|0,l=a+388|0,i=c[l>>2]|0,(i+r|0)>>>0<h>>>0&((f+e|0)>>>0<g>>>0&r>>>0<(2147483647-i|0)>>>0)):0){i=MT(c[a+80>>2]|0)|0;if(!i)e=-558323010;else{if(!(0==0?(c[i+8>>2]&12|0)==0:0)){c[n>>2]=(c[n>>2]|0)-(c[j>>2]|0);c[o>>2]=(c[o>>2]|0)-(c[l>>2]|0);c[j>>2]=0;c[l>>2]=0;e=0;break}np(m,a,i);if(!(b&1)){h=c[p>>2]|0;if(!h)b=2147483647;else{b=91392+((H(h&0-h,125613361)|0)>>>27)|0;b=d[b>>0]|0}f=2147483647;g=0;while(1){if(!(c[a+(g<<2)>>2]|0))break;e=c[m+(g<<2)>>2]|0;if(!e)e=2147483647;else{e=91392+((H(e&0-e,125613361)|0)>>>27)|0;e=d[e>>0]|0}f=(e|0)>(f|0)?f:e;g=g+1|0}if((b|0)<(f|0)){e=-558323010;break}if((f|0)<5){c[p>>2]=-1<<b+5-f&h;np(m,a,i)}}e=0;while(1){f=a+(e<<2)|0;g=c[f>>2]|0;if(!g)break;c[f>>2]=g+(c[m+(e<<2)>>2]|0);e=e+1|0}c[n>>2]=(c[n>>2]|0)-((c[j>>2]|0)+(c[p>>2]|0));c[o>>2]=(c[o>>2]|0)-((c[l>>2]|0)+(c[k>>2]|0));c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;e=0}}else e=-34}else e=-22;while(0);Nb=q;return e|0}function _g(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=SU(b)|0;f=MP(b)|0;c[a>>2]=f;f=TM(b,a+4|0)|0;l=a+8|0;c[l>>2]=f;f=Yz(b,4)|0;c[a+12>>2]=f;if(f>>>0<8)c[a+36>>2]=d[200936+f>>0];h=a+16|0;c[h>>2]=-1;i=a+40|0;c[i>>2]=-1;f=c[a>>2]|0;a:do switch(f|0){case 5:{j=7;break}case 29:{if((eJ(b,3)|0)&3|0?((eJ(b,9)|0)&63|0)==0:0){j=9;break a}c[i>>2]=1;j=7;break}default:j=9}while(0);if((j|0)==7){c[a+20>>2]=5;c[h>>2]=1;f=TM(b,a+24|0)|0;c[a+28>>2]=f;f=MP(b)|0;c[a>>2]=f;if((f|0)==22){f=Yz(b,4)|0;c[a+32>>2]=f;f=c[a>>2]|0}}else if((j|0)==9){c[a+20>>2]=0;c[a+28>>2]=0}g=SU(b)|0;if((f|0)==36){yO(b,5);if((GU(b)|0)!=4279379)JK(b,24);g=SU(b)|0;f=Hu(b,a)|0;if((f|0)>=0)j=14}else j=14;if((j|0)==14){f=a+20|0;b:do if((e|0)!=0&(c[f>>2]|0)!=5){while(1){if((NS(b)|0)<=15)break b;if((eJ(b,11)|0)==695)break;NL(b)|0}Yz(b,11)|0;e=MP(b)|0;c[f>>2]=e;if(((e|0)==5?(e=NL(b)|0,c[h>>2]=e,(e|0)==1):0)?(e=TM(b,a+24|0)|0,c[a+28>>2]=e,(e|0)==(c[l>>2]|0)):0)c[h>>2]=-1;if((NS(b)|0)>11?(Yz(b,11)|0)==1352:0){l=NL(b)|0;c[i>>2]=l}}while(0);if(c[h>>2]|0)if((c[i>>2]|0)==-1?(c[a>>2]|0)!=2:0)j=31;else j=30;else{c[i>>2]=0;j=30}if((j|0)==30?(c[a+36>>2]|0)>>>0>1:0)j=31;if((j|0)==31)c[i>>2]=0;f=g-k|0}return f|0}function $g(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=H((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=H((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=H((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=H((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;r=b[f+-8>>1]|0;q=b[f>>1]|0;e=b[f+8>>1]|0;o=b[f+16>>1]|0;m=b[f+24>>1]|0;l=b[f+32>>1]|0;n=b[f+40>>1]|0;k=b[f+48>>1]|0;p=(b[f+-16>>1]|0)+512+m+((e+q|0)*20|0)+(H(o+r|0,-5)|0)>>10;a[c>>0]=((d[c>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;p=c+g|0;r=r+512+l+((o+e|0)*20|0)+(H(m+q|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((r>>>0>255?(r^-2147483648)>>31:r)&255)|0)>>>1;p=c+j|0;q=q+512+n+((m+o|0)*20|0)+(H(l+e|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;p=c+h|0;o=e+512+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((o>>>0>255?(o^-2147483648)>>31:o)&255)|0)>>>1;c=c+1|0;f=f+2|0;i=i+1|0}return}function ah(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if(NL(e)|0)yO(e,8);j=NL(e)|0;c[d+48>>2]=j;h=d+96|0;f=(yd(b,d,e,h)|0)!=0;if(!j)if(!f?(g=d+88064|0,(yd(b,d,e,g)|0)==0):0){ty(e,h);ty(e,g);hw(d,e,h);hw(d,e,g);f=fd(b,d,e,h,0)|0;if((f|0)>=0){f=fd(b,d,e,g,1)|0;if((f|0)>=0){f=ze(b,d,e,h,0)|0;if((f|0)>=0){f=ze(b,d,e,g,1)|0;if((f|0)>=0)i=15}}}}else f=-1;else if(!f){g=d+88064|0;Xo(g,h);ty(e,h);ty(e,g);hw(d,e,h);j=d+88100|0;f=d+88095|0;a[j>>0]=a[f>>0]|0;a[j+1>>0]=a[f+1>>0]|0;a[j+2>>0]=a[f+2>>0]|0;a[j+3>>0]=a[f+3>>0]|0;a[j+4>>0]=a[f+4>>0]|0;j=d+127|0;a[f>>0]=a[j>>0]|0;a[f+1>>0]=a[j+1>>0]|0;a[f+2>>0]=a[j+2>>0]|0;a[f+3>>0]=a[j+3>>0]|0;a[f+4>>0]=a[j+4>>0]|0;f=fd(b,d,e,h,0)|0;if((f|0)>=0){f=ze(b,d,e,h,0)|0;if((f|0)>=0){f=fd(b,d,e,g,1)|0;if((f|0)>=0){f=ze(b,d,e,g,1)|0;if((f|0)>=0)i=15}}}}else f=-1;a:do if((i|0)==15){j=NL(e)|0;c[d+100>>2]=j;b:do if(j|0){g=c[d+310116>>2]|0;f=0;while(1){if((f|0)>=(g|0))break b;j=(NL(e)|0)&255;a[d+137+f>>0]=j;f=f+1|0}}while(0);j=NL(e)|0;c[d+88068>>2]=j;if(!j)f=0;else{g=c[d+310116>>2]|0;f=0;while(1){if((f|0)>=(g|0)){f=0;break a}j=(NL(e)|0)&255;a[d+88105+f>>0]=j;f=f+1|0}}}while(0);return f|0}function bh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;x=a+32|0;y=a+36|0;h=c[y>>2]|0;z=a+48|0;g=c[z>>2]|0;i=0;j=c[x>>2]|0;while(1){if((j|0)<(g|0))break;i=i+1|0;j=j-g|0}s=a+4|0;t=a+12|0;u=a+8|0;v=a+40|0;w=a+28|0;r=a+24|0;q=0;while(1){if((q|0)>=(e|0))break;a=c[t>>2]|0;k=(c[s>>2]|0)+((H(a,j)|0)<<2)|0;l=c[u>>2]|0;g=0;m=536870912;n=0;o=536870912;p=0;while(1){if((g|0)>=(l|0))break;D=c[d+(g+i<<2)>>2]|0;A=((D|0)<0)<<31>>31;C=c[k+(g<<2)>>2]|0;C=oK(C|0,((C|0)<0)<<31>>31|0,D|0,A|0)|0;C=kP(C|0,M()|0,m|0,n|0)|0;B=M()|0;E=c[k+(g+a<<2)>>2]|0;A=oK(E|0,((E|0)<0)<<31>>31|0,D|0,A|0)|0;A=kP(A|0,M()|0,o|0,p|0)|0;g=g+1|0;m=C;n=B;o=A;p=M()|0}g=iP(o|0,p|0,m|0,n|0)|0;a=M()|0;C=c[v>>2]|0;C=Eu(g|0,a|0,C|0,((C|0)<0)<<31>>31|0)|0;C=oK(C|0,M()|0,h|0,((h|0)<0)<<31>>31|0)|0;C=kP(C|0,M()|0,m|0,n|0)|0;a=M()|0;g=YM(C|0,a|0,30)|0;E=kP(g|0,M()|0,-2147483648,0)|0;D=M()|0;a=YM(C|0,a|0,63)|0;M()|0;c[b+(q<<2)>>2]=D>>>0>0|(D|0)==0&E>>>0>4294967295?a^2147483647:g;g=(c[w>>2]|0)+h|0;a=c[v>>2]|0;E=(g|0)<(a|0);a=E?0:a;h=c[z>>2]|0;j=(c[r>>2]|0)+j+((E^1)&1)|0;while(1){if((j|0)<(h|0))break;i=i+1|0;j=j-h|0}q=q+1|0;h=g-a|0}if(f|0){c[y>>2]=h;c[x>>2]=j}return i|0}function ch(a,b){a=a|0;b=b|0;var d=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;s=b>>1;b=0;d=0;f=0;g=0;h=0;i=0;while(1){if((b|0)==4)break;n=a+((H(b,s)|0)+-1<<1)|0;n=d+(e[n>>1]|0)+(e[a+(b-s<<1)>>1]|0)|0;o=b+4|0;p=a+((H(o,s)|0)+-1<<1)|0;q=a+((H(b+8|0,s)|0)+-1<<1)|0;r=a+((H(b+12|0,s)|0)+-1<<1)|0;b=b+1|0;d=n;f=f+(e[a+(o-s<<1)>>1]|0)|0;g=g+(e[p>>1]|0)|0;h=h+(e[q>>1]|0)|0;i=i+(e[r>>1]|0)|0}d=oK((d+4|0)>>>3|0,0,65537,65537)|0;j=M()|0;k=oK((f+2|0)>>>2|0,0,65537,65537)|0;l=M()|0;m=(g+2|0)>>>2;r=f+4|0;f=(r+g|0)>>>3;g=(h+2|0)>>>2;h=(r+h|0)>>>3;q=(i+2|0)>>>2;r=(r+i|0)>>>3;b=0;while(1){if((b|0)==4)break;p=a+((H(b,s)|0)<<1)|0;o=p;c[o>>2]=d;c[o+4>>2]=j;p=p+8|0;c[p>>2]=k;c[p+4>>2]=l;b=b+1|0}o=oK(m|0,0,65537,65537)|0;p=M()|0;k=oK(f|0,0,65537,65537)|0;l=M()|0;m=oK(g|0,0,65537,65537)|0;n=M()|0;g=oK(h|0,0,65537,65537)|0;h=M()|0;i=oK(q|0,0,65537,65537)|0;j=M()|0;d=oK(r|0,0,65537,65537)|0;f=M()|0;b=4;while(1){if((b|0)==8)break;r=a+((H(b,s)|0)<<1)|0;q=r;c[q>>2]=o;c[q+4>>2]=p;r=r+8|0;c[r>>2]=k;c[r+4>>2]=l;b=b+1|0}b=8;while(1){if((b|0)==12)break;r=a+((H(b,s)|0)<<1)|0;q=r;c[q>>2]=m;c[q+4>>2]=n;r=r+8|0;c[r>>2]=g;c[r+4>>2]=h;b=b+1|0}b=12;while(1){if((b|0)==16)break;r=a+((H(b,s)|0)<<1)|0;q=r;c[q>>2]=i;c[q+4>>2]=j;r=r+8|0;c[r>>2]=d;c[r+4>>2]=f;b=b+1|0}return}function dh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var g=0,h=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0;p=Nb;Nb=Nb+16|0;i=p;g=15<<d;k=g<<1;do if((d+-2|0)>>>0<=11){n=rR(672)|0;c[i>>2]=n;o=n;if(!n)d=-12;else{q=d+-1|0;c[n>>2]=q;d=n+8|0;c[d>>2]=(g|0)/2|0;c[n+4>>2]=g;m=n+12|0;c[m>>2]=b;c[n+640>>2]=135;c[n+648>>2]=136;c[n+652>>2]=137;c[n+644>>2]=114;if((((gk(n+24|0,q,b)|0)>=0?(jp(n)|0)==0:0)?(q=_O(k,16)|0,c[n+92>>2]=q,q|0):0)?(l=_O(c[d>>2]|0,8)|0,c[n+96>>2]=l,l|0):0){g=c[d>>2]|0;if(e<0.0)j=+(g|0)+.125;else j=.125;h=+v(+(+u(+e)));e=+(k|0);d=0;while(1){if((d|0)>=(g|0))break;r=(j+ +(d|0))*6.283185307179586/e;s=h*+x(+r);f[l+(d<<3)>>2]=s;r=h*+y(+r);f[l+(d<<3)+4>>2]=r;d=d+1|0}d=0;while(1){if((d|0)==19)break;if(d>>>0<15){s=+(d|0)*6.283185307179586/15.0;s=(c[m>>2]|0)==0?-s:s;r=+x(+s);f[n+128+(d<<3)>>2]=r;s=+y(+s);f[n+128+(d<<3)+4>>2]=s}else{k=n+128+(d+-15<<3)|0;l=c[k+4>>2]|0;q=n+128+(d<<3)|0;c[q>>2]=c[k>>2];c[q+4>>2]=l}d=d+1|0}f[n+280>>2]=.30901697278022766;g=n+284|0;f[g>>2]=.9510565400123596;f[n+288>>2]=.80901700258255;d=n+292|0;f[d>>2]=.5877852439880371;if(c[m>>2]|0){f[g>>2]=-.9510565400123596;f[d>>2]=-.5877852439880371}c[a>>2]=o;d=0;break}OM(i);d=-12}}else d=-22;while(0);Nb=p;return d|0}function eh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+128|0;l=u+112|0;p=u+116|0;q=u;k=u+120|0;r=b+4|0;s=c[r>>2]|0;c[p>>2]=0;i=q;j=i+112|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));a[k>>0]=0;a[k+1>>0]=0;a[k+2>>0]=0;a[k+3>>0]=0;a[k+4>>0]=0;a[k+5>>0]=0;a[k+6>>0]=0;i=b+6520|0;if((i|0)!=(e|0)){Bk(i|0,e|0,f*3|0)|0;c[b+6712>>2]=f}i=0;while(1){if((i|0)>=(f|0)){j=7;break}m=d[e+(i*3|0)>>0]|0;n=d[e+(i*3|0)+1>>0]|0;j=k+m|0;o=a[j>>0]|0;a[j>>0]=o+1<<24>>24;a[q+(m<<4)+n>>0]=o;if((o&255)>15){j=6;break}else i=i+1|0}a:do if((j|0)==6){bN(s,187999,l);i=-1163346256}else if((j|0)==7){o=s+456|0;if((c[o>>2]|0)==0?(c[o+4>>2]|0)==-2147483648:0){n=0;o=0}else{n=Cd(e,f)|0;o=M()|0}j=0;while(1){if((j|0)>=(f|0))break;k=d[e+(j*3|0)>>0]|0;l=d[e+(j*3|0)+1>>0]|0;m=d[q+(k<<4)+l>>0]|0;i=bm(b,d[e+(j*3|0)+2>>0]|0,k,m,p)|0;if((i|0)<0)break a;c[b+748+(k<<6)+(l<<2)>>2]=c[b+492+(k<<6)+(m<<2)>>2];j=j+1|0}k=c[p>>2]|0;q=(k|0)==2?(c[b+6512>>2]|0)==1:0;i=(n|0)==4&(o|0)==0;j=q?(i?3:0):n;i=q?(i?0:0):o;if(!((j|0)==0&(i|0)==0)){q=s+448|0;c[q>>2]=j;c[q+4>>2]=i}q=b+6720|0;c[q>>2]=j;c[q+4>>2]=i;c[b+6716>>2]=k;c[s+420>>2]=k;c[b+6728>>2]=g;if(h|0?(t=wp(c[r>>2]|0)|0,(t|0)<0):0){i=t;break}i=0}while(0);Nb=u;return i|0}function fh(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=c[e+20>>2]|0;i=c[f+36>>2]|0;j=f+32|0;c[j>>2]=i;l=c[f+20>>2]|0;if((l|0)<(c[f+40>>2]|0)){i=i+(1<<k)|0;c[j>>2]=i}switch(c[e+24>>2]|0){case 0:{i=1<<c[e+28>>2];k=c[f>>2]|0;j=c[f+28>>2]|0;if((j|0)>(k|0)?(j-k|0)>=((i|0)/2|0|0):0)i=(c[f+24>>2]|0)+i|0;else m=7;do if((m|0)==7){if((j|0)<(k|0)?(j-k|0)<((i|0)/-2|0|0):0){i=(c[f+24>>2]|0)-i|0;break}i=c[f+24>>2]|0}while(0);c[f+4>>2]=i;j=i+k|0;if((g|0)==3){i=j;k=f+8|0;m=25}else{k=j;i=j;m=26}break}case 1:{m=c[e+44>>2]|0;k=(m|0)==0?0:i+l|0;h=(h|0)==0;j=(h&(k|0)>0)<<31>>31;i=0;l=0;while(1){if((i|0)>=(m|0))break;n=l+(b[e+148+(i<<1)>>1]|0)|0;i=i+1|0;l=n}i=k+j|0;a:do if((i|0)>0){k=i+-1|0;i=(k|0)/(m|0)|0;k=k-(H(i,m)|0)|0;i=H(i,l)|0;j=0;while(1){if((j|0)>(k|0))break a;i=i+(b[e+148+(j<<1)>>1]|0)|0;j=j+1|0}}else i=0;while(0);if(h)i=(c[e+36>>2]|0)+i|0;j=(c[f+12>>2]|0)+i|0;i=j+(c[e+40>>2]|0)|0;if((g|0)==3){k=f+16|0;m=25}else{k=j;m=26}break}default:{i=(i+l<<1)+(((h|0)==0)<<31>>31)|0;k=i;m=26}}if((m|0)==25){i=(c[k>>2]|0)+i|0;c[a>>2]=j;m=29}else if((m|0)==26)if((g|0)!=2?(c[a>>2]=k,(g|0)==1):0){j=a+4|0;i=k}else m=29;if((m|0)==29){j=a+4|0;c[j>>2]=i;i=c[a>>2]|0}n=c[j>>2]|0;c[d>>2]=(i|0)>(n|0)?n:i;return 0}function gh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+32|0;s=u+16|0;r=u;l=a+36|0;m=a+40|0;n=a+44|0;o=a+176|0;p=a+204|0;q=a+220|0;k=a+236|0;i=0;a:while(1){if((NS(b)|0)<=16){f=i;break}if(!(eJ(b,16)|0)){f=i;break}h=0;do{if((NS(b)|0)<8){f=-1094995529;break a}h=(eJ(b,8)|0)+h|0}while((Yz(b,8)|0)==255);g=0;do{if((NS(b)|0)<8){f=-1094995529;break a}g=(eJ(b,8)|0)+g|0}while((Yz(b,8)|0)==255);f=NS(b)|0;if(g>>>0>((f|0)/8|0)>>>0){t=11;break}j=(SU(b)|0)+(g<<3)|0;do switch(h|0){case 1:{f=Gi(a,b,d,e)|0;t=23;break}case 4:{f=Aq(a,b,g)|0;t=23;break}case 5:{f=Jp(l,b,e,g)|0;t=23;break}case 6:{f=ND(m,b,e)|0;t=23;break}case 0:{f=eo(n,b,d,e)|0;t=23;break}case 45:{zt(o,b);f=i;break}case 47:{WD(p,b);f=i;break}case 56:{mq(q,b);f=i;break}case 147:{hQ(k,b);f=i;break}default:{c[s>>2]=h;mx(e,48,170648,s);f=i}}while(0);if((t|0)==23){t=0;g=(f|0)<0;if(g&(f|0)!=-1397768184)break;else f=g?f:i}JK(b,j-(SU(b)|0)|0);VQ(b);i=f}if((t|0)==11){c[r>>2]=h;c[r+4>>2]=g<<3;c[r+8>>2]=f;mx(e,16,170611,r);f=-1094995529}Nb=u;return f|0}function hh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=Nb;Nb=Nb+32|0;z=B+16|0;y=B;n=c[a+212>>2]|0;j=c[n+12>>2]|0;t=a+156|0;JV(t)|0;u=a+332|0;v=a+300|0;w=a+12|0;x=j+64|0;d=n+812|0;e=a+336|0;f=n+472|0;g=n+704|0;h=a+288|0;i=a+292|0;j=j+88|0;k=a+216|0;l=a+296|0;m=n+64|0;o=a+340|0;p=a+184|0;q=a+60|0;r=a+108|0;while(1){b=(c[u>>2]|0)==0;if(!(c[v>>2]|0)){if(!b){A=28;break}zb(w|0,t|0)|0}else{if(!b){A=28;break}do if(!(c[x>>2]|0)){if((c[d>>2]|0)==0?(c[f>>2]|0)!=9:0)break;Pq(n)}while(0);if(c[e>>2]|0){A=12;break}if(c[g>>2]|0){JV((c[a>>2]|0)+36|0)|0;c[e>>2]=1}rv(c[h>>2]|0);c[i>>2]=0;b=_b[c[j>>2]&7](n,c[h>>2]|0,i,k)|0;c[l>>2]=b;if(!((b|0)>=0?(c[i>>2]|0)!=0:0))A=17;if((A|0)==17?(A=0,s=c[h>>2]|0,c[s+248>>2]|0):0){if(!(c[(c[m>>2]|0)+4>>2]|0))b=s;else{mx(n,16,184924,z);b=c[h>>2]|0}rv(b)}if((c[v>>2]|0)==1)Pq(n);if(c[e>>2]|0){c[e>>2]=0;JV((c[a>>2]|0)+36|0)|0}if(c[o>>2]|0){c[o>>2]=0;iy(c[a>>2]|0)}JV(p)|0;c[v>>2]=0;JV(q|0)|0;yb(r|0)|0;JV(p)|0}}if((A|0)==12){c[y>>2]=184900;c[y+4>>2]=184725;c[y+8>>2]=190;mx(0,0,214689,y);ba()}else if((A|0)==28){JV(t)|0;Nb=B;return 0}return 0}function ih(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;v=(d[a+1>>0]|0)+1|0;w=(d[b>>0]|0)-((v+(d[a>>0]|0)|0)>>>1)|0;u=d[a+2>>0]|0;v=(d[b+1>>0]|0)-((v+u|0)>>>1)|0;t=d[a+3>>0]|0;u=(d[b+2>>0]|0)-((u+1+t|0)>>>1)|0;s=d[a+4>>0]|0;t=(d[b+3>>0]|0)-((t+1+s|0)>>>1)|0;r=d[a+5>>0]|0;s=(d[b+4>>0]|0)-((s+1+r|0)>>>1)|0;q=d[a+6>>0]|0;r=(d[b+5>>0]|0)-((r+1+q|0)>>>1)|0;p=d[a+7>>0]|0;q=(d[b+6>>0]|0)-((q+1+p|0)>>>1)|0;o=d[a+8>>0]|0;p=(d[b+7>>0]|0)-((p+1+o|0)>>>1)|0;n=d[a+9>>0]|0;o=(d[b+8>>0]|0)-((o+1+n|0)>>>1)|0;m=d[a+10>>0]|0;n=(d[b+9>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+11>>0]|0;m=(d[b+10>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+12>>0]|0;l=(d[b+11>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+13>>0]|0;k=(d[b+12>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+14>>0]|0;j=(d[b+13>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+15>>0]|0;i=(d[b+14>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+15>>0]|0)-((c+1+(d[a+16>>0]|0)|0)>>>1)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function jh(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0;s=H(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;D=d[c+t>>0]|0;M=d[c>>0]|0;L=d[c+f>>0]|0;K=d[c+u>>0]|0;J=d[c+v>>0]|0;G=d[c+w>>0]|0;E=d[c+x>>0]|0;y=d[c+h>>0]|0;A=d[c+i>>0]|0;B=d[c+j>>0]|0;z=d[c+k>>0]|0;C=d[c+l>>0]|0;I=J+16|0;F=I+(d[c+s>>0]|0)+((L+M|0)*20|0)+(H(K+D|0,-5)|0)>>5;a[b>>0]=F>>>0>255?(F^-2147483648)>>31:F;F=G+16|0;D=F+D+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>5;a[b+e>>0]=D>>>0>255?(D^-2147483648)>>31:D;D=E+16|0;M=D+M+((J+K|0)*20|0)+(H(G+L|0,-5)|0)>>5;a[b+m>>0]=M>>>0>255?(M^-2147483648)>>31:M;L=L+16+y+((G+J|0)*20|0)+(H(E+K|0,-5)|0)>>5;a[b+n>>0]=L>>>0>255?(L^-2147483648)>>31:L;J=K+16+A+((E+G|0)*20|0)+(H(y+J|0,-5)|0)>>5;a[b+o>>0]=J>>>0>255?(J^-2147483648)>>31:J;G=I+B+((y+E|0)*20|0)+(H(A+G|0,-5)|0)>>5;a[b+p>>0]=G>>>0>255?(G^-2147483648)>>31:G;E=F+z+((A+y|0)*20|0)+(H(B+E|0,-5)|0)>>5;a[b+q>>0]=E>>>0>255?(E^-2147483648)>>31:E;y=D+C+((B+A|0)*20|0)+(H(z+y|0,-5)|0)>>5;a[b+r>>0]=y>>>0>255?(y^-2147483648)>>31:y;g=g+1|0;b=b+1|0;c=c+1|0}return}function kh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=b+704|0;v=c[u>>2]|0;if((v|0)!=0?(c[v>>2]|0)!=0:0)if(!(c[(c[b>>2]|0)+676>>2]&256)){f=c[b+552>>2]|0;g=b+548|0;v=b+580|0;d=0;e=0;while(1){if((d|0)>=(f|0))break;t=e+((a[(c[v>>2]|0)+(c[(c[g>>2]|0)+(d<<2)>>2]|0)>>0]&12)!=12&1)|0;d=d+1|0;e=t}if(e>>>0>=5){l=e>>>0>99?(e>>>0)/50|0:1;m=b+560|0;n=b+556|0;o=b+564|0;p=b+672|0;q=b+696|0;r=b+8|0;s=b+708|0;d=0;e=0;k=0;while(1){if((k|0)>=((c[m>>2]|0)+-1|0))break;t=k<<4;j=0;while(1){if((j|0)>=(c[n>>2]|0))break;f=(H(c[o>>2]|0,k)|0)+j|0;do if((a[(c[v>>2]|0)+f>>0]&12)!=12){e=e+1|0;if(!((e|0)%(l|0)|0)){g=c[p>>2]|0;if((c[g+88>>2]|0)!=1)if(!(c[(c[q>>2]|0)+(f<<2)>>2]&7)){d=d+-1|0;break}else{d=d+1|0;break}else{h=g+32|0;w=j<<4;f=c[h>>2]|0;i=H(f,t)|0;g=(c[g>>2]|0)+w+i|0;i=(c[c[u>>2]>>2]|0)+w+i|0;if((c[(c[b>>2]|0)+48>>2]|0)!=28){js(c[s>>2]|0,k,0);f=c[h>>2]|0}w=($b[c[r>>2]&63](0,i,g,f,16)|0)+d|0;d=c[h>>2]|0;d=w-($b[c[r>>2]&63](0,i,i+(d<<4)|0,d,16)|0)|0;break}}}while(0);j=j+1|0}k=k+1|0}d=(d|0)>0&1}else d=0}else d=0;else d=1;return d|0}function lh(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;k=((e[a>>1]|0)+1+(((H(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[a>>1]=k;k=a+2|0;j=((e[k>>1]|0)+1+(((H(m,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[k>>1]=j;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=(k|0)==0?1:l;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;k=((e[a>>1]|0)+1+((k+32+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=k;k=a+2|0;j=H(m,e[c+2>>1]|0)|0;j=((e[k>>1]|0)+1+((j+32+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[k>>1]=j;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,e[c>>1]|0)|0;r=c+2|0;q=H(j,e[r>>1]|0)|0;n=c+(l<<1)|0;o=H(k,e[n>>1]|0)|0;p=c+(h<<1)|0;o=((e[a>>1]|0)+1+((s+32+q+o+(H(i,e[p>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=o;o=a+2|0;r=H(m,e[r>>1]|0)|0;q=H(j,e[c+4>>1]|0)|0;p=H(k,e[p>>1]|0)|0;p=((e[o>>1]|0)+1+((r+32+q+p+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[o>>1]=p;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function mh(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<<f)+((f|0)==0?0:1<<f+-1)|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;j=(H(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+8|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+9|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+10|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+11|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+12|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+13|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+14|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+15|0;k=(H(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function nh(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;d=d+(0-(g&-2)<<1)|0;while(1){if((i|0)==9)break;k=d+2|0;n=d+-2|0;g=d+4|0;o=H((e[g>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=d+6|0;b[h>>1]=(((e[k>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[d+-4>>1]|0)+o+(e[l>>1]|0);o=H((e[l>>1]|0)+(e[d>>1]|0)|0,-5)|0;m=d+8|0;b[h+2>>1]=(((e[g>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=H((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=d+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[d>>1]|0)+o+(e[n>>1]|0);g=H((e[n>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+g+(e[d+12>>1]|0);h=h+16|0;i=i+1|0;d=d+(j<<1)|0}j=f>>1;h=f&-2;i=j*3|0;d=c+32|0;g=0;while(1){if((g|0)==4)break;p=b[d+-16>>1]|0;f=b[d>>1]|0;c=b[d+16>>1]|0;o=b[d+32>>1]|0;m=b[d+48>>1]|0;l=b[d+64>>1]|0;n=b[d+80>>1]|0;k=b[d+96>>1]|0;q=(b[d+-32>>1]|0)+512+m+((c+f|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[a>>1]=q>>>0<512?q:(q^-2147483648)>>31&511;p=p+512+l+((o+c|0)*20|0)+(H(m+f|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<512?p:(p^-2147483648)>>31&511;f=f+512+n+((m+o|0)*20|0)+(H(l+c|0,-5)|0)>>10;b[a+(h<<1)>>1]=f>>>0<512?f:(f^-2147483648)>>31&511;o=c+512+k+((l+m|0)*20|0)+(H(n+o|0,-5)|0)>>10;b[a+(i<<1)>>1]=o>>>0<512?o:(o^-2147483648)>>31&511;a=a+2|0;d=d+2|0;g=g+1|0}return}function oh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=Nb;Nb=Nb+32|0;d=n;j=n+20|0;h=n+16|0;i=n+12|0;l=c[a+92>>2]|0;m=a+48|0;do if((l|0)==(c[m>>2]|0))b=0;else{if((c[a+36>>2]|0)==0?(k=a+28|0,(c[k>>2]|0)==0):0){d=a+12|0;e=a+84|0;f=BO(c[d>>2]|0,H(c[e>>2]|0,l+1|0)|0)|0;c[j>>2]=f;if(!f){b=-12;break}b=Jd(a,f,+g[a+72>>3],c[a+8>>2]|0,c[d>>2]|0,l,1<<c[a+88>>2],c[a+56>>2]|0,+g[a+64>>3])|0;if((b|0)<0){zM(j);break}b=c[d>>2]|0;d=H(b,l)|0;e=c[e>>2]|0;b=H(b+-1|0,e)|0;Bk(f+(H(d+1|0,e)|0)|0,f|0,b|0)|0;Bk(f+(H(d,e)|0)|0,f+b|0,e|0)|0;e=a+40|0;b=c[e>>2]|0;f=a+20|0;d=c[f>>2]|0;o=(l|0)/(c[m>>2]|0)|0;d=oK(o|0,((o|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;if(!(Mf(h,i,b,((b|0)<0)<<31>>31,d,M()|0,1073741823,0)|0)){zM(j);b=-22;break}d=c[h>>2]|0;c[e>>2]=d;b=c[i>>2]|0;c[f>>2]=b;while(1){if(!((b|0)<1048576&(d|0)<1048576))break;i=b<<1;c[f>>2]=i;o=d<<1;c[e>>2]=o;b=i;d=o}c[a+16>>2]=b;o=(b|0)/(d|0)|0;c[a+24>>2]=o;b=b-(H(o,d)|0)|0;c[k>>2]=b;b=a+32|0;o=H(c[b>>2]|0,(l|0)/(c[m>>2]|0)|0)|0;c[b>>2]=o;c[m>>2]=l;b=a+4|0;zM(b);c[b>>2]=c[j>>2];b=0;break}c[d>>2]=214719;c[d+4>>2]=214748;c[d+8>>2]=393;mx(0,0,214689,d);ba()}while(0);Nb=n;return b|0}function ph(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;p=c[a+27e3>>2]|0;h=i-(p<<c[b+21828>>2])|0;k=h+-1|0;g=h+1|0;f=i+-1|0;n=b+21748|0;c[n>>2]=89200;q=c[a+24364>>2]|0;do if(c[a+26360>>2]|0){l=c[q+(f<<2)>>2]&128;m=d&128;if(c[b+21792>>2]&1|0){if((l|0)==(m|0)){o=k;n=f;break}d=i-p+-1|0;if(!m){c[j>>2]=0;c[n>>2]=89232;o=k+p|0;n=d;f=d;break}else{c[n>>2]=89296;o=k;n=d;break}}i=(m|0)!=0;if(i){d=(((c[q+(k<<2)>>2]|0)>>>7&1)+-1&p)+k|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&p)+g|0;h=(((c[q+(h<<2)>>2]|0)>>>7&1)+-1&p)+h|0}else d=k;if((l|0)!=(m|0))if(i){c[n>>2]=89296;o=d;n=f;f=p+f|0;break}else{c[n>>2]=89264;o=d;n=f;break}else{o=d;n=f}}else{o=k;n=f}while(0);c[b+21708>>2]=o;c[b+21712>>2]=h;c[b+21716>>2]=g;c[b+21720>>2]=n;c[b+21724>>2]=f;i=b+21728|0;c[i>>2]=c[q+(o<<2)>>2];j=b+21732|0;c[j>>2]=c[q+(h<<2)>>2];k=b+21736|0;c[k>>2]=c[q+(g<<2)>>2];l=b+21740|0;c[l>>2]=c[q+(n<<2)>>2];m=b+21744|0;c[m>>2]=c[q+(f<<2)>>2];d=c[a+26356>>2]|0;f=c[b+832>>2]|0;if((f|0)!=(e[d+(o<<1)>>1]|0|0)){c[i>>2]=0;if((f|0)!=(e[d+(h<<1)>>1]|0|0))c[j>>2]=0;if((f|0)!=(e[d+(n<<1)>>1]|0|0)){c[m>>2]=0;c[l>>2]=0}}if((f|0)!=(e[d+(g<<1)>>1]|0|0))c[k>>2]=0;return}function qh(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;p=c[a+27e3>>2]|0;h=i-(p<<c[b+21828>>2])|0;k=h+-1|0;g=h+1|0;f=i+-1|0;n=b+21748|0;c[n>>2]=75968;q=c[a+24364>>2]|0;do if(c[a+26360>>2]|0){l=c[q+(f<<2)>>2]&128;m=d&128;if(c[b+21792>>2]&1|0){if((l|0)==(m|0)){o=k;n=f;break}d=i-p+-1|0;if(!m){c[j>>2]=0;c[n>>2]=76e3;o=k+p|0;n=d;f=d;break}else{c[n>>2]=76064;o=k;n=d;break}}i=(m|0)!=0;if(i){d=(((c[q+(k<<2)>>2]|0)>>>7&1)+-1&p)+k|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&p)+g|0;h=(((c[q+(h<<2)>>2]|0)>>>7&1)+-1&p)+h|0}else d=k;if((l|0)!=(m|0))if(i){c[n>>2]=76064;o=d;n=f;f=p+f|0;break}else{c[n>>2]=76032;o=d;n=f;break}else{o=d;n=f}}else{o=k;n=f}while(0);c[b+21708>>2]=o;c[b+21712>>2]=h;c[b+21716>>2]=g;c[b+21720>>2]=n;c[b+21724>>2]=f;i=b+21728|0;c[i>>2]=c[q+(o<<2)>>2];j=b+21732|0;c[j>>2]=c[q+(h<<2)>>2];k=b+21736|0;c[k>>2]=c[q+(g<<2)>>2];l=b+21740|0;c[l>>2]=c[q+(n<<2)>>2];m=b+21744|0;c[m>>2]=c[q+(f<<2)>>2];d=c[a+26356>>2]|0;f=c[b+832>>2]|0;if((f|0)!=(e[d+(o<<1)>>1]|0|0)){c[i>>2]=0;if((f|0)!=(e[d+(h<<1)>>1]|0|0))c[j>>2]=0;if((f|0)!=(e[d+(n<<1)>>1]|0|0)){c[m>>2]=0;c[l>>2]=0}}if((f|0)!=(e[d+(g<<1)>>1]|0|0))c[k>>2]=0;return}function rh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Nb;Nb=Nb+64|0;t=x+16|0;l=x+8|0;k=x;p=x+24|0;w=b+292|0;r=b+13760|0;u=a+6472|0;v=c[u>>2]|0;s=(v|0)==39;switch(v|0){case 23:case 19:case 17:{n=1;break}default:n=s}c[p>>2]=0;h=Yz(d,8)|0;m=(e|0)!=0;if(!m?(f=De(a,b,d)|0,(f|0)<0):0)v=23;else v=5;do if((v|0)==5){i=b+5872|0;e=b+6896|0;f=hl(a,i,e,d,b)|0;if((f|0)>=0){g=b+7376|0;f=td(a,g,d,h,b,i,e)|0;if((f|0)>=0){if(!s?(j=NL(d)|0,(j|0)!=0):0){if((c[b+4>>2]|0)==2){mx(c[a+4>>2]|0,16,188613,k);f=-1094995529;v=23;break}if(!(gq(p,d,c[b+80>>2]|0,c[b+88>>2]|0)|0))f=j;else{mx(c[a+4>>2]|0,16,188662,l);f=-1094995529;v=23;break}}else f=0;l=NL(d)|0;c[w>>2]=l;if(!(n|(l|0)==0)?(o=zj(a,w,d,b)|0,(o|0)<0):0){f=o;v=23;break}if(!s?NL(d)|0:0){bN(c[a+4>>2]|0,188694,t);f=-1163346256;v=23;break}if(n&(c[w>>2]|0)!=0?(q=zj(a,w,d,b)|0,(q|0)<0):0){f=q;v=23;break}f=Rc(a,r,d,g,f,p,b,i)|0;if((f|0)>=0)if(m|(c[u>>2]|0)!=1)f=0;else{$f(a,b);f=0}else v=23}else v=23}else v=23}while(0);if((v|0)==23)c[w>>2]=0;Nb=x;return f|0}function sh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{b=(c[d>>2]|0)+(4-1)&~(4-1);e=c[b>>2]|0;c[d>>2]=b+4;c[a>>2]=e;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);h=+g[f>>3];c[d>>2]=f+8;g[a>>3]=h;break a}case 18:{fc[e&255](a,d);break a}default:break a}while(0);while(0);return}function th(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+32|0;k=m;h=m+24|0;l=c[(c[a+64>>2]|0)+52>>2]|0;j=(d|0)!=0;a:do if(j){f=BP()|0;c[h>>2]=f;g=f;do if(f){f=Kf(f,d)|0;if((f|0)<0){iQ(h);break}else{f=l+3260|0;c[k+16>>2]=c[f>>2];c[k>>2]=g;i=l+36|0;JV(i)|0;xr(c[l+32>>2]|0,k,24,0)|0;yb(l+64|0)|0;JV(i)|0;c[f>>2]=(c[f>>2]|0)+1&127;i=8;break a}}else f=-12;while(0)}else{f=l+3260|0;i=8}while(0);b:do if((i|0)==8){i=l+3184|0;JV(i)|0;d=c[f>>2]|0;h=l+3264|0;f=c[h>>2]|0;do if((d|0)!=(f|0)){if((j?(c[l+112+(f*24|0)+4>>2]|0)==0:0)?(d-f&127)>>>0<=(c[a+800>>2]|0)>>>0:0)break;d=l+3212|0;while(1){if(c[l+112+(f*24|0)+4>>2]|0)break;zb(d|0,i|0)|0;f=c[h>>2]|0}f=l+112+(f*24|0)|0;c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];c[k+16>>2]=c[f+16>>2];c[k+20>>2]=c[f+20>>2];f=b;d=c[k+4>>2]|0;g=f+72|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(g|0));if(c[b+24>>2]|0)c[e>>2]=1;zM(l+112+((c[h>>2]|0)*24|0)+4|0);c[h>>2]=(c[h>>2]|0)+1&127;JV(i)|0;f=c[k+8>>2]|0;break b}while(0);JV(i)|0;f=0}while(0);Nb=m;return f|0}function uh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=Nb;Nb=Nb+32|0;u=v+16|0;s=v+8|0;h=v;r=c[b+60>>2]|0;g=(c[r+6516>>2]|0)==0?1024:960;i=c[r+6484>>2]|0;j=c[r+6472>>2]|0;switch(j|0){case 23:case 39:{q=g>>>1;break}default:q=g}p=r+8|0;c[p>>2]=d;g=wp(b)|0;a:do if((g|0)>=0){o=r+4|0;c[(c[o>>2]|0)+828>>2]=j+-1;c[r+1004>>2]=0;if((i|0)>=0?!((i|0)>12|(i+-8|0)>>>0<3):0){n=a[43792+i>>0]|0;m=i+-1|0;l=(j|0)==39;k=0;while(1){if((k|0)>=(n|0))break;d=a[43808+(m*15|0)+(k*3|0)>>0]|0;h=d&255;i=a[43808+(m*15|0)+(k*3|0)+1>>0]|0;j=Xd(r,h,i&255)|0;if(!j){t=10;break}c[j>>2]=1;if(!l)yO(f,4);switch(d<<24>>24){case 0:{g=rh(r,j+288|0,f,0)|0;break}case 1:{g=zk(r,f,j)|0;break}case 3:{g=rh(r,j+288|0,f,0)|0;break}default:{}}if((g|0)<0)break a;else k=k+1|0}if((t|0)==10){g=c[o>>2]|0;c[s>>2]=h;c[s+4>>2]=i&255;mx(g,16,187397,s);g=-1094995529;break}Kg(r);g=c[p>>2]|0;if(!(c[g>>2]|0)){mx(b,16,187632,u);g=-1094995529;break}else{c[g+76>>2]=q;c[g+232>>2]=c[b+416>>2];c[e>>2]=1;JK(f,NS(f)|0);g=0;break}}c[h>>2]=i;bN(b,189613,h);g=-1094995529}while(0);Nb=v;return g|0}function vh(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+208|0;i=k+192|0;g=k;h=k+196|0;j=c[a+60>>2]|0;a:do if(!(qP(1136380,17)|0)){e=j+4|0;c[e>>2]=a;f=a+416|0;c[j+6480>>2]=c[f>>2];gP(j);c[a+424>>2]=8;b=c[a+104>>2]|0;if((b|0)>0){g=c[e>>2]|0;h=c[a+100>>2]|0;b=uN(b|0,((b|0)<0)<<31>>31|0,3)|0;b=nx(j,g,j+6472|0,h,b,M()|0)|0;if((b|0)<0)break;b=a+420|0}else{b=ku(c[f>>2]|0)|0;c[j+6476>>2]=b;b=a+420|0;f=c[b>>2]|0;c[j+6508>>2]=f;c[j+6488>>2]=-1;c[j+6512>>2]=-1;e=0;while(1){if(e>>>0>=8)break;if((f|0)==(d[200936+e>>0]|0|0))break;e=e+1|0}e=(e|0)==8?0:e;c[j+6484>>2]=e;do if(e|0){if(!(ju(a,g,h,e)|0)){eh(j,g,c[h>>2]|0,3,0)|0;break}if(c[a+688>>2]&8|0){b=-1094995529;break a}}while(0)}if((c[b>>2]|0)>64){mx(a,16,188021,i);b=-1094995529;break}i=ED(c[a+92>>2]&8388608)|0;c[j+5404>>2]=i;if(i){c[j+5408>>2]=523124044;Mm(j+5120|0,11,1,2.9802322387695312e-08)|0;Mm(j+5256|0,10,1,5.9604644775390625e-08)|0;Mm(j+5188|0,8,1,2.384185791015625e-07)|0;Mm(j+5324|0,11,0,-65536.0)|0;b=dh(j+5392|0,1,3,2.5431316430513107e-07)|0;if((b|0)>=0){b=dh(j+5396|0,1,5,6.357829107628277e-08)|0;if((b|0)>=0){b=dh(j+5400|0,1,6,3.1789145538141383e-08)|0;b=(b|0)<0?b:0}}}else b=-12}else b=-1313558101;while(0);Nb=k;return b|0}function wh(a,g,h){a=a|0;g=g|0;h=h|0;var i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=Nb;Nb=Nb+1504|0;q=y+1008|0;v=y+512|0;w=y;x=a+264|0;IM(x,g);j=77008+((JC(x,6)|0)<<1)|0;o=a+284|0;n=q;i=+(e[j>>1]|0);j=v;s=0;a:while(1){switch(s&2147483647|0){case 23:break a;case 0:break;default:{u=77136+((JC(x,5)|0)<<1)|0;i=i+ +(b[u>>1]|0)}}p=+qb(+(i*.00048828125));p=-(p*+f[o>>2]);m=d[76976+s>>0]|0;r=j+(m<<2)|0;k=0;l=n;while(1){if((k|0)==(m|0))break;f[l>>2]=i;f[j>>2]=p;k=k+1|0;l=l+4|0;j=j+4|0}n=n+(m<<2)|0;j=r;s=s+1|0}kg(q,w);q=a+4|0;r=a+292|0;s=a+336|0;t=a+1408|0;u=a+288|0;n=a+1412|0;l=0;while(1){if((l|0)==2)break;o=h+(l<<7<<2)|0;IM(x,g);JK(x,(l*198|0)+116|0);m=0;while(1){if((m|0)==124)break;j=w+(m<<2)|0;k=c[j>>2]|0;if((k|0)<1){j=o+(m<<2)|0;f[j>>2]=+f[v+(m<<2)>>2]*.7071067811865476;if((GI(q)|0)&1|0)f[j>>2]=-+f[j>>2]}else{a=JC(x,k)|0;f[o+(m<<2)>>2]=+f[76464+((a&255)+-1+(1<<c[j>>2])<<2)>>2]*+f[v+(m<<2)>>2]}m=m+1|0}a=o+496|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;hc[c[s>>2]&1023](r,c[t>>2]|0,o);kc[c[(c[u>>2]|0)+20>>2]&127](o,(c[n>>2]|0)+256|0,c[t>>2]|0,215360,64);a=c[n>>2]|0;c[n>>2]=c[t>>2];c[t>>2]=a;l=l+1|0}Nb=y;return}function xh(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Nb;Nb=Nb+64|0;o=q+56|0;n=q+40|0;l=q+24|0;j=q+8|0;i=q;m=b+28|0;h=c[m>>2]|0;do if((h|0)>=0){if(e>>>0>0|(e|0)==0&d>>>0>2147483615){h=j;c[h>>2]=d;c[h+4>>2]=e;c[j+8>>2]=2147483615;mx(a,16,168082,j);h=-22;break}j=uN(f|0,g|0,1)|0;i=M()|0;k=b+24|0;f=c[k>>2]|0;a:do if((a|0)!=0&((i|0)<(e|0)|(i|0)==(e|0)&j>>>0<d>>>0)){g=a+64|0;i=c[g>>2]|0;j=i+44|0;do if(f|0)if((f|0)!=(c[j>>2]|0)){l=((h|0)<0)<<31>>31;if((l|0)<(e|0)|(l|0)==(e|0)&h>>>0<d>>>0)break;else break a}else{c[l>>2]=168145;c[l+4>>2]=168205;c[l+8>>2]=45;mx(0,0,214689,l);ba()}while(0);_E(j,i+48|0,d);h=c[g>>2]|0;f=c[h+44>>2]|0;c[k>>2]=f;h=c[h+48>>2]|0;c[m>>2]=h;p=11}else p=11;while(0);if((p|0)==11)if(!f){h=GD(b,d)|0;if((h|0)>=0)break;p=o;c[p>>2]=d;c[p+4>>2]=e;mx(a,16,168263,o);break}p=((h|0)<0)<<31>>31;if((p|0)<(e|0)|(p|0)==(e|0)&h>>>0<d>>>0){c[n>>2]=h;h=n+8|0;c[h>>2]=d;c[h+4>>2]=e;mx(a,16,168225,n);h=-22;break}else{h=c[b>>2]|0;Zw(b);c[b>>2]=h;c[m>>2]=d;h=0;break}}else{c[i>>2]=h;mx(a,16,168044,i);h=-22}while(0);Nb=q;return h|0}function yh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=b+8|0;m=d+8|0;n=b+12|0;o=d+12|0;p=b+16|0;q=d+16|0;g=b+4|0;h=d+28|0;i=b+20|0;j=d+44|0;k=a+4|0;f=0;while(1){if((f|0)>=(e|0))break;w=c[(c[l>>2]|0)+(f<<2)>>2]|0;v=c[m>>2]|0;w=oK(v|0,((v|0)<0)<<31>>31|0,w|0,((w|0)<0)<<31>>31|0)|0;v=M()|0;r=c[(c[n>>2]|0)+(f<<2)>>2]|0;s=c[o>>2]|0;r=oK(s|0,((s|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;v=kP(r|0,M()|0,w|0,v|0)|0;w=M()|0;r=c[(c[b>>2]|0)+(f<<2)>>2]|0;s=c[d>>2]|0;r=oK(s|0,((s|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;s=M()|0;t=c[(c[p>>2]|0)+(f<<2)>>2]|0;u=c[q>>2]|0;t=oK(u|0,((u|0)<0)<<31>>31|0,t|0,((t|0)<0)<<31>>31|0)|0;u=M()|0;w=kP(v|0,w|0,16384,0)|0;v=M()|0;s=kP(w|0,v|0,r|0,s|0)|0;u=kP(s|0,M()|0,t|0,u|0)|0;u=GN(u|0,M()|0,15)|0;M()|0;c[(c[a>>2]|0)+(f<<2)>>2]=u;u=c[(c[g>>2]|0)+(f<<2)>>2]|0;t=c[h>>2]|0;u=oK(t|0,((t|0)<0)<<31>>31|0,u|0,((u|0)<0)<<31>>31|0)|0;t=M()|0;s=c[(c[i>>2]|0)+(f<<2)>>2]|0;r=c[j>>2]|0;s=oK(r|0,((r|0)<0)<<31>>31|0,s|0,((s|0)<0)<<31>>31|0)|0;r=M()|0;t=kP(w|0,v|0,u|0,t|0)|0;r=kP(t|0,M()|0,s|0,r|0)|0;r=GN(r|0,M()|0,15)|0;M()|0;c[(c[k>>2]|0)+(f<<2)>>2]=r;f=f+1|0}return}function zh(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;f=f+(0-(h&-2)<<1)|0;while(1){if((j|0)==9)break;q=e[f>>1]|0;l=e[f+2>>1]|0;o=e[f+-2>>1]|0;h=e[f+4>>1]|0;p=H(h+o|0,-5)|0;m=e[f+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[f+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[f+8>>1]|0;c[i+4>>2]=((h+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[f+10>>1]|0;c[i+8>>2]=((m+h|0)*20|0)+q+p+o;h=H(o+h|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+h+(e[f+12>>1]|0);i=i+32|0;j=j+1|0;f=f+(k<<1)|0}k=g>>1;i=g&-2;j=k*3|0;f=d+64|0;h=0;while(1){if((h|0)==4)break;r=c[f+-32>>2]|0;g=c[f>>2]|0;d=c[f+32>>2]|0;p=c[f+64>>2]|0;n=c[f+96>>2]|0;m=c[f+128>>2]|0;o=c[f+160>>2]|0;l=c[f+192>>2]|0;q=(c[f+-64>>2]|0)+512+n+((d+g|0)*20|0)+(H(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<16384?q:(q^-2147483648)>>31&16383)|0)>>>1;q=a+(k<<1)|0;r=r+512+m+((p+d|0)*20|0)+(H(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<16384?r:(r^-2147483648)>>31&16383)|0)>>>1;q=a+(i<<1)|0;g=g+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<16384?g:(g^-2147483648)>>31&16383)|0)>>>1;q=a+(j<<1)|0;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<16384?p:(p^-2147483648)>>31&16383)|0)>>>1;a=a+2|0;f=f+4|0;h=h+1|0}return}function Ah(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;f=f+(0-(h&-2)<<1)|0;while(1){if((j|0)==9)break;q=e[f>>1]|0;l=e[f+2>>1]|0;o=e[f+-2>>1]|0;h=e[f+4>>1]|0;p=H(h+o|0,-5)|0;m=e[f+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[f+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[f+8>>1]|0;c[i+4>>2]=((h+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[f+10>>1]|0;c[i+8>>2]=((m+h|0)*20|0)+q+p+o;h=H(o+h|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+h+(e[f+12>>1]|0);i=i+32|0;j=j+1|0;f=f+(k<<1)|0}k=g>>1;i=g&-2;j=k*3|0;f=d+64|0;h=0;while(1){if((h|0)==4)break;r=c[f+-32>>2]|0;g=c[f>>2]|0;d=c[f+32>>2]|0;p=c[f+64>>2]|0;n=c[f+96>>2]|0;m=c[f+128>>2]|0;o=c[f+160>>2]|0;l=c[f+192>>2]|0;q=(c[f+-64>>2]|0)+512+n+((d+g|0)*20|0)+(H(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<4096?q:(q^-2147483648)>>31&4095)|0)>>>1;q=a+(k<<1)|0;r=r+512+m+((p+d|0)*20|0)+(H(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<4096?r:(r^-2147483648)>>31&4095)|0)>>>1;q=a+(i<<1)|0;g=g+512+o+((n+p|0)*20|0)+(H(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<4096?g:(g^-2147483648)>>31&4095)|0)>>>1;q=a+(j<<1)|0;p=d+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<4096?p:(p^-2147483648)>>31&4095)|0)>>>1;a=a+2|0;f=f+4|0;h=h+1|0}return}function Bh(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=H(k,l)|0;k=H(k,g)|0;l=H(l,h)|0;h=H(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;l=((d[b>>0]|0)+1+(((H(m,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[b>>0]=l;l=b+1|0;k=((d[l>>0]|0)+1+(((H(m,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[l>>0]=k;b=b+e|0;g=g+1|0;c=c+e|0}}else{h=(l|0)==0?1:e;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=H(m,d[c>>0]|0)|0;l=((d[b>>0]|0)+1+((l+32+(H(j,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=l;l=b+1|0;k=H(m,d[c+1>>0]|0)|0;k=((d[l>>0]|0)+1+((k+32+(H(j,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[l>>0]=k;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,d[c>>0]|0)|0;r=c+1|0;q=H(k,d[r>>0]|0)|0;n=c+e|0;o=H(l,d[n>>0]|0)|0;p=c+i|0;o=((d[b>>0]|0)+1+((s+32+q+o+(H(h,d[p>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=o;o=b+1|0;r=H(m,d[r>>0]|0)|0;q=H(k,d[c+2>>0]|0)|0;p=H(l,d[p>>0]|0)|0;p=((d[o>>0]|0)+1+((r+32+q+p+(H(h,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[o>>0]=p;b=b+e|0;g=g+1|0;c=n}}while(0);return}function Ch(a){a=a|0;var b=0;a:do if((a|0)>=65563){if((a|0)<69655)switch(a|0){case 69646:case 69636:case 69644:{a=4;break a}case 65563:{b=2;break a}case 65566:{b=3;break a}case 65564:{b=4;break a}case 67586:case 67587:case 65565:{b=5;break a}case 67584:case 67585:{b=6;break a}default:{b=7;break a}}if((a|0)>=86071)switch(a|0){case 86072:case 86071:{a=4;break a}case 88072:case 88071:case 88070:case 88069:{b=2;break a}default:{b=7;break a}}if((a|0)<71681)switch(a|0){case 69660:case 69655:case 69661:{a=4;break a}default:{b=7;break a}}if((a|0)<71687)switch(a|0){case 71681:{a=4;break a}default:{b=7;break a}}if((a|0)<83968)switch(a|0){case 71687:{a=4;break a}default:{b=7;break a}}else switch(a|0){case 83968:{b=2;break a}default:{b=7;break a}}}else switch(a|0){case 65553:case 65541:case 65540:case 65542:case 65543:{b=2;break}case 65538:case 65539:case 65554:case 65536:case 65537:{b=3;break}case 65550:case 65551:case 65548:case 65549:case 65552:{b=4;break}case 65557:case 65556:case 65546:case 65547:case 65544:case 65545:{b=5;break}case 65559:case 65558:{b=6;break}default:b=7}while(0);if((b|0)==2)a=8;else if((b|0)==3)a=16;else if((b|0)==4)a=24;else if((b|0)==5)a=32;else if((b|0)==6)a=64;else if((b|0)==7)a=0;return a|0}function Dh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Nb;Nb=Nb+48|0;l=q+24|0;j=q+8|0;p=q+36|0;do if((g&8|0)==0&(Ao(b,e,f,1,h)|0)<0){mx(h,24,197507,q);if((e|0)<=21821){i=e*3|0;k=((i|0)/2|0)+32|0;g=rR(k)|0;c[p>>2]=g;if(!g)g=-12;else{if((e|0)<=-1){c[j>>2]=197566;c[j+4>>2]=197580;c[j+8>>2]=137;mx(0,0,214689,j);ba()}n=b+e|0;if((i|0)<=-66){c[l>>2]=197566;c[l+4>>2]=197580;c[l+8>>2]=147;mx(0,0,214689,l);ba()}m=g;l=g+k|0;g=m;e=0;a:while(1){k=(l-g|0)>0;while(1){i=n-b|0;if(!i)break a;j=b;if(i>>>0>2){if((i|0)<3){j=15;break}i=j+1|0;if(((d[i>>0]|0)<<8|(d[j>>0]|0)<<16|(d[j+2>>0]|0))>>>0<4){j=15;break}}else i=j+1|0;if(!((e|0)==0^1|k^1)){j=22;break}b=i;e=1}if((j|0)==15){if((e|0)==0?(o=g,(l-g|0)>2):0){a[o+2>>0]=3;a[o+1>>0]=0;a[o>>0]=0;g=o+3|0;e=0}else e=1;b=b+2|0}else if((j|0)==22){a[g>>0]=a[b>>0]|0;g=g+1|0;b=i;e=0}}g=g-m|0;n=yU(g+65534&65535|0)|0;o=c[p>>2]|0;a[o>>0]=n;a[o+1>>0]=n>>8;Ao(c[p>>2]|0,g,f,1,h)|0;zM(p);g=0;break}}else g=-34}else g=0;while(0);Nb=q;return g|0}function Eh(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=f>>1;g=(b|0)!=0;if(g){x=e[a+-2>>1]|0;A=e[a+(~B<<1)>>1]|0}else{A=e[a+-2>>1]|0;x=A}y=e[a+(B+-1<<1)>>1]|0;z=y+2|0;q=e[a+((f&-2)+-1<<1)>>1]|0;r=q+2|0;s=e[a+((B*3|0)+-1<<1)>>1]|0;t=e[a+((B<<2)+-1<<1)>>1]|0;u=e[a+((B*5|0)+-1<<1)>>1]|0;v=e[a+((B*6|0)+-1<<1)>>1]|0;w=e[a+((B*7|0)+-1<<1)>>1]|0;b=0-B|0;if(g){f=e[a+(b<<1)>>1]|0;g=e[a+(~B<<1)>>1]|0}else{g=e[a+(b<<1)>>1]|0;f=g}o=e[a+(1-B<<1)>>1]|0;p=o+2|0;h=e[a+(2-B<<1)>>1]|0;i=h+2|0;j=e[a+(3-B<<1)>>1]|0;k=e[a+(4-B<<1)>>1]|0;l=e[a+(5-B<<1)>>1]|0;m=e[a+(6-B<<1)>>1]|0;n=e[a+(7-B<<1)>>1]|0;if(!d)b=n;else b=e[a+(8-B<<1)>>1]|0;f=((z+A+(x<<1)|0)>>>2)+8+((r+x+(y<<1)|0)>>>2)+((z+(q<<1)+s|0)>>>2)+((r+(s<<1)+t|0)>>>2)+((s+2+(t<<1)+u|0)>>>2)+((t+2+(u<<1)+v|0)>>>2)+((v+2+(w*3|0)|0)>>>2)+((u+2+(v<<1)+w|0)>>>2)+((p+g+(f<<1)|0)>>>2)+((i+f+(o<<1)|0)>>>2)+((p+(h<<1)+j|0)>>>2)+((i+(j<<1)+k|0)>>>2)+((j+2+(k<<1)+l|0)>>>2)+((k+2+(l<<1)+m|0)>>>2)+((l+2+(m<<1)+n|0)>>>2)+((m+2+(n<<1)+b|0)>>>2)>>4;f=oK(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=M()|0;b=0;while(1){if((b|0)==8)break;A=a;c[A>>2]=f;c[A+4>>2]=g;A=a+8|0;c[A>>2]=f;c[A+4>>2]=g;b=b+1|0;a=a+(B<<1)|0}return}function Fh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Nb;Nb=Nb+32|0;g=k+16|0;e=k;d=c[b>>2]|0;if(c[d>>2]|0){c[e>>2]=199819;c[e+4>>2]=199033;c[e+8>>2]=192;mx(0,0,214689,e);ba()}i=b+4|0;c[i>>2]=d;e=a+4|0;d=TL(c[e>>2]|0,i,(c[b+640>>2]|0)!=0&1)|0;a:do if((d|0)>=0){e=c[(c[e>>2]|0)+704>>2]|0;if(e|0){f=b+56|0;if(c[f>>2]|0){c[g>>2]=199836;c[g+4>>2]=199033;c[g+8>>2]=202;mx(0,0,214689,g);ba()}e=c[e+40>>2]|0;if(e|0){e=cP(e)|0;c[b+52>>2]=e;if(!e){d=-12;break}c[f>>2]=c[e+4>>2]}}f=a+29904|0;e=c[f>>2]|0;if(!e){d=vq(a)|0;if((d|0)<0){j=18;break}e=c[f>>2]|0}e=rt(e)|0;f=b+20|0;c[f>>2]=e;e=rt(c[a+29908>>2]|0)|0;c[b+44>>2]=e;f=c[f>>2]|0;if((e|0)==0|(f|0)==0)j=18;else{g=c[a+27e3>>2]<<1;c[b+48>>2]=(c[e+4>>2]|0)+(g<<2)+4;c[b+24>>2]=(c[f+4>>2]|0)+g+1;f=a+29912|0;g=a+29916|0;e=0;while(1){if(e>>>0>=2){d=0;break a}h=rt(c[f>>2]|0)|0;i=b+28+(e<<2)|0;c[i>>2]=h;h=rt(c[g>>2]|0)|0;c[b+60+(e<<2)>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){j=18;break a}c[b+36+(e<<2)>>2]=(c[i+4>>2]|0)+16;c[b+68+(e<<2)>>2]=c[h+4>>2];e=e+1|0}}}else j=18;while(0);if((j|0)==18){Tw(a,b);d=(d|0)<0?d:-12}Nb=k;return d|0}function Gh(g,h,i,j){g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0;C=c[i+76>>2]|0;D=j+8|0;a:do if(!(c[i+40>>2]|0)){t=i+310276|0;u=i+310226|0;v=i+390956|0;s=0;while(1){if(s>>>0>=(c[D>>2]|0)>>>0)break a;w=s+1|0;l=d[j+87932+w>>0]|0;B=d[j+87932+s>>0]|0;x=l-B<<1;B=B<<1;y=B+2|0;z=j+12+w|0;k=a[z>>0]|0;A=k<<24>>24==0?u:t;B=(l<<1)+2+(-2-B)|0;l=0;while(1){if(l>>>0>=(c[i+310112+((k&255)<<2)>>2]|0)>>>0)break;r=l+1|0;n=A+(r<<1)|0;k=b[n>>1]|0;p=A+(l<<1)|0;l=e[p>>1]|0;m=(k&65535)-l|0;o=0.0;while(1){q=k&65535;if(l>>>0>=q>>>0)break;E=o+ +Ub[c[v>>2]&1](h+(l*320|0)+(y<<3)|0,B);o=E;l=l+1|0;k=b[n>>1]|0}o=o/+(H(x,m)|0);k=e[p>>1]|0;while(1){if(k>>>0>=q>>>0)break;f[g+(s*192|0)+(k-C<<2)>>2]=o;k=k+1|0}l=r;k=a[z>>0]|0}s=w}}else{r=i+84|0;m=i+390956|0;k=0;while(1){if(k>>>0>=(c[D>>2]|0)>>>0)break a;n=k+1|0;l=d[j+87932+n>>0]|0;q=d[j+87932+k>>0]|0;o=.5/+(l-q|0);q=q<<1;p=q+2|0;q=(l<<1)+2+(-2-q)|0;l=0;while(1){if(l>>>0>=(c[r>>2]|0)>>>0)break;E=o*+Ub[c[m>>2]&1](h+((l+C|0)*320|0)+(p<<3)|0,q);f[g+(k*192|0)+(l<<2)>>2]=E;l=l+1|0}k=n}}while(0);return}function Hh(a,d,e,h,i){a=a|0;d=d|0;e=e|0;h=h|0;i=i|0;var j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+48|0;t=u+32|0;s=u+16|0;m=u;q=+f[a+140>>2];l=e+2|0;r=XQ(l)|0;do if(r){o=a+128|0;k=0;a=h;while(1){if((k|0)>=(l|0))break;a=(H(a,1664525)|0)+1013904223|0;h=c[o>>2]|0;if((h|0)==1)j=+(a>>>0)/4294967295.0+-.5;else{if((h|0)>=72){n=7;break}h=(H(a,1664525)|0)+1013904223|0;j=+(a>>>0)/4294967295.0-+(h>>>0)/4294967295.0;a=h}g[r+(k<<3)>>3]=j;k=k+1|0}if((n|0)==7){c[m>>2]=211383;c[m+4>>2]=211416;c[m+8>>2]=42;mx(0,0,214689,m);ba()}h=0;a:while(1){if((h|0)>=(e|0)){n=24;break}a=c[o>>2]|0;if((a|0)==3)j=(+g[r+(h+1<<3)>>3]*2.0-+g[r+(h<<3)>>3]-+g[r+(h+2<<3)>>3])/2.449489742783178;else{if((a|0)>=72){n=14;break}j=+g[r+(h<<3)>>3]}j=j*q;switch(i|0){case 6:{b[d+(h<<1)>>1]=~~j;break}case 7:{c[d+(h<<2)>>2]=~~j;break}case 8:{f[d+(h<<2)>>2]=j;break}case 9:{g[d+(h<<3)>>3]=j;break}default:{n=22;break a}}h=h+1|0}if((n|0)==14){c[s>>2]=211383;c[s+4>>2]=211416;c[s+8>>2]=56;mx(0,0,214689,s);ba()}else if((n|0)==22){c[t>>2]=214810;c[t+4>>2]=211416;c[t+8>>2]=71;mx(0,0,214689,t);ba()}else if((n|0)==24){FV(r);p=0;break}}else p=-12;while(0);Nb=u;return p|0}function Ih(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=H((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=H((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=H((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=H((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;q=b[f+-8>>1]|0;e=b[f>>1]|0;k=b[f+8>>1]|0;p=b[f+16>>1]|0;n=b[f+24>>1]|0;m=b[f+32>>1]|0;o=b[f+40>>1]|0;l=b[f+48>>1]|0;r=(b[f+-16>>1]|0)+512+n+((k+e|0)*20|0)+(H(p+q|0,-5)|0)>>10;a[c>>0]=r>>>0>255?(r^-2147483648)>>31:r;q=q+512+m+((p+k|0)*20|0)+(H(n+e|0,-5)|0)>>10;a[c+g>>0]=q>>>0>255?(q^-2147483648)>>31:q;e=e+512+o+((n+p|0)*20|0)+(H(m+k|0,-5)|0)>>10;a[c+j>>0]=e>>>0>255?(e^-2147483648)>>31:e;p=k+512+l+((m+n|0)*20|0)+(H(o+p|0,-5)|0)>>10;a[c+h>>0]=p>>>0>255?(p^-2147483648)>>31:p;c=c+1|0;f=f+2|0;i=i+1|0}return}function Jh(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<6;y=g<<6;z=0-C|0;A=H(C,-2)|0;x=H(C,-3)|0;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<6;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;f=l+(A<<1)|0;r=e[f>>1]|0;g=e[l+(x<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(w<<1)>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(B|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(y|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:(r^-2147483648)>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:(t^-2147483648)>>31&16383}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function Kh(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<4;y=g<<4;z=0-C|0;A=H(C,-2)|0;x=H(C,-3)|0;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<4;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;f=l+(A<<1)|0;r=e[f>>1]|0;g=e[l+(x<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(w<<1)>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(B|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(y|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:(r^-2147483648)>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:(t^-2147483648)>>31&4095}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function Lh(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<2;y=g<<2;z=0-C|0;A=H(C,-2)|0;x=H(C,-3)|0;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<2;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;f=l+(A<<1)|0;r=e[f>>1]|0;g=e[l+(x<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(w<<1)>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(B|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(y|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:(r^-2147483648)>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:(t^-2147483648)>>31&1023}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function Mh(a,c,d,e,f,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){p=(0-g|0)<(i|0);q=1-g|0;o=c+(0-(H(i,e)|0))+(H(q,e)|0)|0;c=p?c:o;i=p?i:q}else{q=k+-1|0;c=c+(0-(H(i,e)|0))+(H(q,e)|0)|0;i=q}if((h|0)<(j|0)){p=(0-f|0)<(h|0);q=1-f|0;l=p?h:q;h=p?c:c+(q-h<<1)|0}else{q=j+-1|0;l=q;h=c+(q-h<<1)|0}c=0-i|0;c=(c|0)>0?c:0;q=0-l|0;q=(q|0)>0?q:0;m=k-i|0;n=(m|0)<(g|0);p=j-l|0;p=(p|0)<(f|0)?p:f;o=q<<1;i=h+(o+(H(c,e)|0))|0;j=p-q<<1;k=(H(c,d)|0)+o|0;h=a+o|0;l=0;while(1){if(l>>>0>=c>>>0)break;Bk(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=a+k|0;while(1){if((c|0)>=(l|0))break;Bk(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;Bk(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=p+-1|0;c=g;h=h+(0-((H(g,d)|0)+o))|0;while(1){l=c+-1|0;if(!c)break a;i=h+(q<<1)|0;c=0;while(1){if(c>>>0>=q>>>0)break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}i=h+(k<<1)|0;c=p;while(1){if((c|0)>=(f|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Nh(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<1;y=g<<1;z=0-C|0;A=H(C,-2)|0;x=H(C,-3)|0;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<1;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;f=l+(A<<1)|0;r=e[f>>1]|0;g=e[l+(x<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(w<<1)>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(B|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(y|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(y|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<512?r:(r^-2147483648)>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:(t^-2147483648)>>31&511}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function Oh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+48|0;p=r+24|0;o=r+16|0;f=r;m=r+36|0;e=0;while(1){g=e+1|0;if((c[b+(e<<2)>>2]|0)==-1)break;else e=g}if(!e){c[f>>2]=167369;c[f+4>>2]=166508;c[f+8>>2]=1194;mx(0,0,214689,f);ba()}c[a+888>>2]=c[b+(e+-1<<2)>>2];e=$Q(g)|0;c[m>>2]=e;if(!e)d=-1;else{Bk(e|0,b|0,g<<2|0)|0;h=a+704|0;i=a+64|0;j=a+976|0;k=a+156|0;l=a+12|0;g=e;a:while(1){e=c[h>>2]|0;if(e|0?(n=c[e+52>>2]|0,n|0):0)Wb[n&31](a)|0;zM((c[i>>2]|0)+60|0);c[h>>2]=0;nT(j);b=Yb[c[k>>2]&15](a,g)|0;e=MT(b)|0;if(!e){d=-1;break}if(0==0?(c[e+8>>2]&8|0)==0:0){d=b;break}if(c[(c[l>>2]|0)+16>>2]&128|0){d=b;break}f=c[j>>2]|0;if(f|0?(c[(c[f+4>>2]|0)+36>>2]|0)!=(b|0):0){q=16;break}if(!(Yp(a,b,c[e>>2]|0)|0)){d=b;break}f=0;while(1){e=c[g+(f<<2)>>2]|0;if((e|0)==(b|0))break;if((e|0)==-1){q=22;break a}f=f+1|0}e=g;do{g=f;f=f+1|0;c[e+(g<<2)>>2]=c[e+(f<<2)>>2];e=c[m>>2]|0}while((c[e+(g<<2)>>2]|0)!=-1);g=e}if((q|0)==16){mx(a,16,167376,o);d=-1}else if((q|0)==22){c[p>>2]=167467;c[p+4>>2]=166508;c[p+8>>2]=1242;mx(0,0,214689,p);ba()}zM(m)}Nb=r;return d|0}function Ph(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;k=a+((q*22|0)+-2)|0;i=a+((q*10|0)+-2-(c>>>1<<2))|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;j=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+j|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;j=n;f=o;g=p}c=5;p=k;while(1){if(c>>>0>=9)break;o=p+(q<<1)|0;n=i+(l<<1)|0;d=(H((e[o>>1]|0)-(e[n>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=n;p=o}o=(j*17|0)+16>>5;g=(d*5|0)+32>>6;h=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+o>>5;b[c+2>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+j>>5;b[c+4>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+h>>5;b[c+6>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+k>>5;b[c+8>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+l>>5;b[c+10>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+m>>5;b[c+12>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;a=d+n>>5;b[c+14>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Qh(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=Nb;Nb=Nb+16|0;w=x+8|0;v=x;r=f+52|0;j=c[r>>2]|0;s=f+76|0;i=c[s>>2]|0;h=c[f>>2]|0;h=((h>>1)+2048e3|0)/(h|0)|0;t=f+310448|0;c[t>>2]=0;q=f+84|0;if(h>>>0<((c[q>>2]|0)+i|0)>>>0){g=0;while(1)if((h|0)>(e[f+310128+(g<<1)>>1]|0))g=g+1|0;else break;p=f+92|0}else{p=f+92|0;g=c[p>>2]|0}o=0;h=-1;k=-1;n=0;while(1){if((g|0)==(k|0)&(j|0)==(h|0)){h=8;break}l=c[r>>2]|0;m=j+-1|0;h=0;k=g;while(1){if((k|0)!=(g|0)?o>>>0<=(m-h+l|0)>>>0:0)break;o=e[f+310128+(k<<1)>>1]|0;h=l+o&1;k=k+-1|0}if(n>>>0>5){h=14;break}m=o-i|0;a[f+310452+n>>0]=(m|0)>0?m:0;n=c[t>>2]|0;a[f+310458+n>>0]=(c[r>>2]|0)-h-(d[f+310452+n>>0]|0);h=c[t>>2]|0;if(!(a[f+310452+h>>0]|0)){k=c[s>>2]|0;l=h}else{l=h+1|0;c[t>>2]=l;i=o;k=o}if(((e[f+310128+(g<<1)>>1]|0)-o|0)<3)h=c[p>>2]|0;else h=g;if((o|0)==((c[q>>2]|0)+(c[s>>2]|0)|0)){h=21;break}else{y=g;m=j;j=k;g=h;n=l;k=y;h=m}}if((h|0)==8){mx(c[b+4>>2]|0,16,190772,v);g=-1094995529}else if((h|0)==14){g=c[b+4>>2]|0;c[w>>2]=n;mx(g,16,190799,w);g=-1}else if((h|0)==21)if(l>>>0>1?(u=l+-1|0,(d[f+310452+u>>0]|0)<3):0){c[t>>2]=u;g=0}else g=0;Nb=x;return g|0}function Rh(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;k=a+((q*22|0)+-2)|0;i=a+((q*10|0)+-2-(c>>>1<<2))|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;j=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+j|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;j=n;f=o;g=p}c=5;p=k;while(1){if(c>>>0>=9)break;o=p+(q<<1)|0;n=i+(l<<1)|0;d=(H((e[o>>1]|0)-(e[n>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=n;p=o}o=(j*17|0)+16>>5;g=(d*5|0)+32>>6;h=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+o>>5;b[c+2>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+j>>5;b[c+4>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+h>>5;b[c+6>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+k>>5;b[c+8>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+l>>5;b[c+10>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+m>>5;b[c+12>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;a=d+n>>5;b[c+14>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Sh(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;k=a+((q*22|0)+-2)|0;i=a+((q*10|0)+-2-(c>>>1<<2))|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;j=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+j|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;j=n;f=o;g=p}c=5;p=k;while(1){if(c>>>0>=9)break;o=p+(q<<1)|0;n=i+(l<<1)|0;d=(H((e[o>>1]|0)-(e[n>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=n;p=o}o=(j*17|0)+16>>5;g=(d*5|0)+32>>6;h=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+o>>5;b[c+2>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+j>>5;b[c+4>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+h>>5;b[c+6>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+k>>5;b[c+8>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+l>>5;b[c+10>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+m>>5;b[c+12>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;a=d+n>>5;b[c+14>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Th(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=Nb;Nb=Nb+224|0;p=q+208|0;n=q+200|0;j=q+192|0;i=q;k=q+212|0;c[k>>2]=0;r=NL(d)|0;c[f+44>>2]=r;if(r|0?(h=f+16|0,(c[h>>2]|0)==1):0){PM(b,187815,j);if(a|0)c[a+6740>>2]=1;c[h>>2]=0;c[f+40>>2]=0}if(NL(d)|0)yO(d,14);j=NL(d)|0;switch(c[f>>2]|0){case 20:case 6:{yO(d,3);break}default:{}}if(!g){yO(d,4);h=Bl(b,f,i,d,e)|0;c[k>>2]=h;if((h|0)>=0)o=14}else{h=ju(b,i,k,g)|0;if(!h){h=c[k>>2]|0;o=14}}a:do if((o|0)==14){if((BG(i,h)|0)<=1){if((c[f+16>>2]|0)==1?(l=f+40|0,(c[l>>2]|0)==-1):0)c[l>>2]=1}else c[f+40>>2]=0;if(a|0?(m=eh(a,i,h,3,0)|0,m|0):0){h=m;break}if(j|0){switch(c[f>>2]|0){case 22:{yO(d,5);yO(d,11);break}case 23:case 20:case 19:case 17:{h=Yz(d,3)|0;if(h|0){c[n>>2]=h;PM(b,189758,n);h=-1163346256;break a}break}default:{}}YU(d)}switch(c[f>>2]|0){case 23:case 20:case 19:case 17:break;default:{h=0;break a}}h=Yz(d,2)|0;if(!h)h=0;else{c[p>>2]=h;PM(b,189803,p);h=-1163346256}}while(0);Nb=q;return h|0}function Uh(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(c&-2)<<1)|0;k=a+((q*22|0)+-2)|0;i=a+((q*10|0)+-2-(c>>>1<<2))|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;j=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(H((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+j|0;m=(H((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;j=n;f=o;g=p}c=5;p=k;while(1){if(c>>>0>=9)break;o=p+(q<<1)|0;n=i+(l<<1)|0;d=(H((e[o>>1]|0)-(e[n>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=n;p=o}o=(j*17|0)+16>>5;g=(d*5|0)+32>>6;h=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;f=16;d=16-h+(H(g,-7)|0)+((e[i+16>>1]|0)+(e[p>>1]|0)<<4)|0;c=a;while(1){if(!f)break;a=d>>5;b[c>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+o>>5;b[c+2>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+j>>5;b[c+4>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+h>>5;b[c+6>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+k>>5;b[c+8>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+l>>5;b[c+10>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+m>>5;b[c+12>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;a=d+n>>5;b[c+14>>1]=a>>>0<512?a:(a^-2147483648)>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Vh(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function Wh(b,c,d,e,f,g,h,i,j,k){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){o=(0-g|0)<(i|0);p=1-g|0;n=c+(0-(H(i,e)|0))+(H(p,e)|0)|0;c=o?c:n;i=o?i:p}else{p=k+-1|0;c=c+(0-(H(i,e)|0))+(H(p,e)|0)|0;i=p}if((h|0)<(j|0)){o=(0-f|0)<(h|0);p=1-f|0;l=o?h:p;h=o?c:c+(p-h)|0}else{p=j+-1|0;l=p;h=c+(p-h)|0}c=0-i|0;c=(c|0)>0?c:0;p=0-l|0;p=(p|0)>0?p:0;m=k-i|0;n=(m|0)<(g|0);o=j-l|0;o=(o|0)<(f|0)?o:f;j=o-p|0;i=h+(p+(H(c,e)|0))|0;k=p+(H(c,d)|0)|0;h=b+p|0;l=0;while(1){if(l>>>0>=c>>>0)break;Bk(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=b+k|0;while(1){if((c|0)>=(l|0))break;Bk(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;Bk(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=o+-1|0;c=g;h=h+(0-((H(g,d)|0)+p))|0;while(1){l=c+-1|0;if(!c)break a;i=h+p|0;c=0;while(1){if(c>>>0>=p>>>0)break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}i=h+k|0;c=o;while(1){if((c|0)>=(f|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Xh(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=Nb;Nb=Nb+16|0;t=v;u=h>>1;i=0-u|0;if(!f){l=e[a+(i<<1)>>1]|0;i=l}else{i=e[a+(i<<1)>>1]|0;l=e[a+(~u<<1)>>1]|0}j=e[a+(1-u<<1)>>1]|0;k=j+2|0;m=e[a+(2-u<<1)>>1]|0;n=m+2|0;o=e[a+(3-u<<1)>>1]|0;p=e[a+(4-u<<1)>>1]|0;q=e[a+(5-u<<1)>>1]|0;r=e[a+(6-u<<1)>>1]|0;s=e[a+(7-u<<1)>>1]|0;if(!g)f=s;else f=e[a+(8-u<<1)>>1]|0;b[t>>1]=(k+l+(i<<1)|0)>>>2;b[t+2>>1]=(n+i+(j<<1)|0)>>>2;b[t+4>>1]=(k+(m<<1)+o|0)>>>2;b[t+6>>1]=(n+(o<<1)+p|0)>>>2;b[t+8>>1]=(o+2+(p<<1)+q|0)>>>2;b[t+10>>1]=(p+2+(q<<1)+r|0)>>>2;b[t+12>>1]=(q+2+(r<<1)+s|0)>>>2;b[t+14>>1]=(r+2+(s<<1)+f|0)>>>2;k=h&-2;l=u*3|0;m=u<<2;n=u*5|0;o=u*6|0;p=u*7|0;j=0;f=a;i=d;while(1){if((j|0)==8)break;a=(c[i>>2]|0)+(e[t+(j<<1)>>1]|0)|0;b[f>>1]=a;a=(c[i+32>>2]|0)+a|0;b[f+(u<<1)>>1]=a;a=(c[i+64>>2]|0)+a|0;b[f+(k<<1)>>1]=a;a=(c[i+96>>2]|0)+a|0;b[f+(l<<1)>>1]=a;a=(c[i+128>>2]|0)+a|0;b[f+(m<<1)>>1]=a;a=(c[i+160>>2]|0)+a|0;b[f+(n<<1)>>1]=a;a=(c[i+192>>2]|0)+a|0;b[f+(o<<1)>>1]=a;b[f+(p<<1)>>1]=(c[i+224>>2]|0)+a;j=j+1|0;f=f+2|0;i=i+4|0}jq(d|0,0,256)|0;Nb=v;return}function Yh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c[(c[a+64>>2]|0)+20>>2]|0;o=p+148|0;h=c[o>>2]|0;iy(p);n=p+144|0;f=mg((c[p>>2]|0)+((c[n>>2]|0)*352|0)|0,a,e)|0;do if(!f){m=a+800|0;f=p+152|0;if((c[n>>2]|0)<=((c[m>>2]|0)+-1+(((c[a+48>>2]|0)==34)<<31>>31)|0))if(c[f>>2]|0){c[d>>2]=0;e=e+28|0;f=c[e>>2]|0;if(f)break}else g=5;else{c[f>>2]=0;g=5}if((g|0)==5)e=e+28|0;l=b+120|0;j=h;while(1){k=c[p>>2]|0;i=j+1|0;f=k+(j*352|0)+300|0;if(c[f>>2]|0){g=k+(j*352|0)+184|0;JV(g)|0;h=k+(j*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;zb(h|0,g|0)|0}JV(g)|0}qN(b,c[k+(j*352|0)+288>>2]|0);h=k+(j*352|0)+292|0;c[d>>2]=c[h>>2];q=k+(j*352|0)+232|0;f=c[q+4>>2]|0;g=l;c[g>>2]=c[q>>2];c[g+4>>2]=f;g=k+(j*352|0)+296|0;f=c[g>>2]|0;c[h>>2]=0;c[g>>2]=0;g=(i|0)<(c[m>>2]|0)?i:0;if(c[e>>2]|0)break;if(!((f|0)>-1&(c[d>>2]|0)==0))break;if((g|0)==(c[o>>2]|0))break;else j=g}dg(a,c[k+(j*352|0)+212>>2]|0,1)|0;if((c[n>>2]|0)>=(c[m>>2]|0))c[n>>2]=0;c[o>>2]=g;if((f|0)>-1)f=c[e>>2]|0}while(0);IJ(p);return f|0}function Zh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;k=m;h=m+8|0;i=m+4|0;d=c[b+64>>2]|0;j=d+36|0;a:do if(!(c[j>>2]|0)){f=c[(c[b+12>>2]|0)+116>>2]|0;f=(f|0)==0?200968:f;c[h>>2]=f;g=d+32|0;d=f;while(1){if(!d){d=0;break a}if(!(a[d>>0]|0)){d=0;break a}d=Um(h,166873)|0;c[i>>2]=d;if(!d){d=-12;break}d=nF(d)|0;if(!d){l=7;break}zM(i);e=mN(c[g>>2]|0,(c[j>>2]|0)+1|0,4)|0;if(!e){d=-12;break}c[g>>2]=e;f=c[j>>2]|0;c[j>>2]=f+1;d=Zn(d,e+(f<<2)|0)|0;if((d|0)<0)break;d=c[j>>2]|0;e=c[g>>2]|0;f=c[e+(d+-1<<2)>>2]|0;if((d|0)==1){c[f+24>>2]=1;c[f+28>>2]=9e4;d=qi(c[(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)+16>>2]|0,b)|0}else{e=(c[e+(d+-2<<2)>>2]|0)+32|0;d=c[e+4>>2]|0;f=f+24|0;c[f>>2]=c[e>>2];c[f+4>>2]=d;f=c[g>>2]|0;d=c[j>>2]|0;d=Jv(c[(c[f+(d+-1<<2)>>2]|0)+16>>2]|0,c[(c[f+(d+-2<<2)>>2]|0)+20>>2]|0)|0}if((d|0)<0)break;d=wj(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)|0;if((d|0)<0)break;d=c[h>>2]|0}if((l|0)==7){c[k>>2]=c[i>>2];mx(b,16,166875,k);zM(i);d=-558323010}BI(b)}else d=0;while(0);Nb=m;return d|0}function _h(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=0-c|0;z=H(c,-2)|0;A=H(c,-3)|0;B=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+y|0;s=d[r>>0]|0;h=n+z|0;t=d[h>>0]|0;i=d[n+A>>0]|0;u=d[n>>0]|0;k=n+c|0;v=d[k>>0]|0;l=d[n+B>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+1|0}}while(0);b=b+4|0;w=w+1|0}return}function $h(a){a=a|0;var b=0;a:do if((a|0)<9)switch(a|0){case 5:case 4:case 0:case 1:{a=4;break a}case 2:{b=2;break a}case 6:{b=4;break a}case 3:{a=8;break a}case 7:{a=8;break a}default:{b=7;break a}}else{if((a|0)<1146442272)if((a|0)<1128811585)if((a|0)<1112493900)switch(a|0){case 9:{b=2;break a}default:{b=7;break a}}else switch(a|0){case 1112493900:{a=4;break a}default:{b=7;break a}}else if((a|0)<1129270354)switch(a|0){case 1128811585:{b=2;break a}default:{b=7;break a}}else switch(a|0){case 1129270354:{a=4;break a}default:{b=7;break a}}if((a|0)<1397116244)if((a|0)<1346784596)switch(a|0){case 1146442272:{b=2;break a}default:{b=7;break a}}else switch(a|0){case 1346784596:{a=4;break a}default:{b=7;break a}}if((a|0)<1397316165)switch(a|0){case 1397116244:{a=4;break a}default:{b=7;break a}}if((a|0)>=1448231252)switch(a|0){case 1448231252:{b=4;break a}default:{b=7;break a}}switch(a|0){case 1397316165:break;default:{b=7;break a}}a=8}while(0);if((b|0)==2)a=8;else if((b|0)==4)a=8;else if((b|0)==7)a=-22;return a|0}function ai(a,b,d){a=a|0;b=b|0;d=d|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0.0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;o=c[a+8>>2]|0;q=c[a+24>>2]|0;r=c[a+28>>2]|0;n=1<<c[a+20>>2];h=n>>1;i=n>>2;p=n>>3;j=i*3|0;k=j+-1|0;l=i+-1|0;m=h+-1|0;n=n+-1|0;g=0;while(1){if((g|0)>=(p|0))break;v=g<<1;u=-+f[d+(k-v<<2)>>2]-+f[d+(v+j<<2)>>2];w=+f[d+(l-v<<2)>>2]-+f[d+(v+i<<2)>>2];s=e[o+(g<<1)>>1]|0;t=q+(g<<2)|0;x=r+(g<<2)|0;f[b+(s<<3)>>2]=-(u*+f[t>>2])-w*+f[x>>2];f[b+(s<<3)+4>>2]=u*+f[x>>2]-w*+f[t>>2];w=+f[d+(v<<2)>>2]-+f[d+(m-v<<2)>>2];u=-+f[d+(n-v<<2)>>2]-+f[d+(v+h<<2)>>2];v=g+p|0;s=e[o+(v<<1)>>1]|0;t=q+(v<<2)|0;v=r+(v<<2)|0;f[b+(s<<3)>>2]=-(w*+f[t>>2])-u*+f[v>>2];f[b+(s<<3)+4>>2]=w*+f[v>>2]-u*+f[t>>2];g=g+1|0}fc[c[a+36>>2]&255](a,b);g=0;while(1){if((p|0)<=(g|0))break;o=p-g+-1|0;s=b+(o<<3)|0;z=+f[s>>2];y=-+f[r+(o<<2)>>2];t=b+(o<<3)+4|0;u=+f[t>>2];w=-+f[q+(o<<2)>>2];o=g+p|0;v=b+(o<<3)|0;B=+f[v>>2];C=-+f[r+(o<<2)>>2];x=b+(o<<3)+4|0;D=+f[x>>2];A=-+f[q+(o<<2)>>2];f[s>>2]=u*y+z*w;f[t>>2]=B*C-D*A;f[v>>2]=D*C+B*A;f[x>>2]=z*y-u*w;g=g+1|0}return}function bi(){c[212985]=852112;c[212987]=304;Pc(851936,8,e[28152]|0,c[13724]|0,1,1,c[13060]|0,2,2,0,0,0,4)|0;c[212989]=853328;c[212991]=270;Pc(851952,8,e[28153]|0,c[13725]|0,1,1,c[13061]|0,2,2,0,0,0,4)|0;c[212993]=854416;c[212995]=550;Pc(851968,8,e[28154]|0,c[13726]|0,1,1,c[13062]|0,2,2,0,0,0,4)|0;c[212997]=856624;c[212999]=300;Pc(851984,8,e[28155]|0,c[13727]|0,1,1,c[13063]|0,2,2,0,0,0,4)|0;c[213001]=857824;c[213003]=328;Pc(852e3,8,e[28156]|0,c[13728]|0,1,1,c[13064]|0,2,2,0,0,0,4)|0;c[213005]=859136;c[213007]=294;Pc(852016,8,e[28157]|0,c[13729]|0,1,1,c[13065]|0,2,2,0,0,0,4)|0;c[213009]=860320;c[213011]=306;Pc(852032,8,e[28158]|0,c[13730]|0,1,1,c[13066]|0,2,2,0,0,0,4)|0;c[213013]=861552;c[213015]=268;Pc(852048,8,e[28159]|0,c[13731]|0,1,1,c[13067]|0,2,2,0,0,0,4)|0;c[213017]=862624;c[213019]=510;Pc(852064,8,e[28160]|0,c[13732]|0,1,1,c[13068]|0,2,2,0,0,0,4)|0;c[213021]=864672;c[213023]=366;Pc(852080,8,e[28161]|0,c[13733]|0,1,1,c[13069]|0,2,2,0,0,0,4)|0;c[213025]=866144;c[213027]=462;Pc(852096,8,e[28162]|0,c[13734]|0,1,1,c[13070]|0,2,2,0,0,0,4)|0;In();jx();c[284092]=868e3;c[284094]=352;Pc(1136364,7,121,52112,1,1,51616,4,4,0,0,0,4)|0;Zp(285984,4.0,1024);Zp(290080,6.0,128);Zp(290592,4.0,960);Zp(294432,6.0,120);bJ(280864,960);bJ(280384,120);YS(10);YS(9);YS(7);Im();return}function ci(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<2;v=f<<2;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=c&-2;s=(z>>2)+2|0;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;d=a+(w<<1)|0;f=e[d>>1]|0;c=a+(x<<1)|0;k=e[c>>1]|0;h=a+(y<<1)|0;l=e[h>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[h>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=f-l|0;if((((i|0)>-1?i:0-i|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;g=m+l|0;b[h>>1]=(o+4+f+(g+k<<1)|0)>>>3;b[c>>1]=(l+2+f+k+m|0)>>>2;i=k+4+(f*3|0)|0;f=3;c=B<<1}else{i=l+2|0;d=h;f=2;c=o;g=k<<1}b[d>>1]=(i+g+c|0)>>>f;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function di(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<1;v=f<<1;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=c&-2;s=(z>>2)+2|0;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;d=a+(w<<1)|0;f=e[d>>1]|0;c=a+(x<<1)|0;k=e[c>>1]|0;h=a+(y<<1)|0;l=e[h>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[h>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=f-l|0;if((((i|0)>-1?i:0-i|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;g=m+l|0;b[h>>1]=(o+4+f+(g+k<<1)|0)>>>3;b[c>>1]=(l+2+f+k+m|0)>>>2;i=k+4+(f*3|0)|0;f=3;c=B<<1}else{i=l+2|0;d=h;f=2;c=o;g=k<<1}b[d>>1]=(i+g+c|0)>>>f;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function ei(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;x=g<<6;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<6;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;f=l+-4|0;r=e[f>>1]|0;g=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(y|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(x|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(x|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:(r^-2147483648)>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:(t^-2147483648)>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(w<<1)|0;u=u+1|0}return}function fi(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<6;v=f<<6;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=c&-2;s=z>>2|2;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;d=a+(w<<1)|0;f=e[d>>1]|0;c=a+(x<<1)|0;k=e[c>>1]|0;h=a+(y<<1)|0;l=e[h>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[h>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=f-l|0;if((((i|0)>-1?i:0-i|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;g=m+l|0;b[h>>1]=(o+4+f+(g+k<<1)|0)>>>3;b[c>>1]=(l+2+f+k+m|0)>>>2;i=k+4+(f*3|0)|0;f=3;c=B<<1}else{i=l+2|0;d=h;f=2;c=o;g=k<<1}b[d>>1]=(i+g+c|0)>>>f;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function gi(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<4;v=f<<4;w=H(A,-3)|0;x=H(A,-2)|0;y=0-A|0;r=c&-2;s=z>>2|2;t=H(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;d=a+(w<<1)|0;f=e[d>>1]|0;c=a+(x<<1)|0;k=e[c>>1]|0;h=a+(y<<1)|0;l=e[h>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(i=k-l|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0)?(i=o-m|0,(((i|0)>-1?i:0-i|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[h>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}i=f-l|0;if((((i|0)>-1?i:0-i|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;g=m+l|0;b[h>>1]=(o+4+f+(g+k<<1)|0)>>>3;b[c>>1]=(l+2+f+k+m|0)>>>2;i=k+4+(f*3|0)|0;f=3;c=B<<1}else{i=l+2|0;d=h;f=2;c=o;g=k<<1}b[d>>1]=(i+g+c|0)>>>f;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;i=m+l+o|0;b[a>>1]=(k+4+q+(i<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(i+4+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(m+2+k+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function hi(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;x=g<<4;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<4;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;f=l+-4|0;r=e[f>>1]|0;g=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(y|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(x|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(x|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:(r^-2147483648)>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:(t^-2147483648)>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(w<<1)|0;u=u+1|0}return}function ii(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;x=g<<2;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<2;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;f=l+-4|0;r=e[f>>1]|0;g=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(y|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(x|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(x|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:(r^-2147483648)>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:(t^-2147483648)>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(w<<1)|0;u=u+1|0}return}function ji(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:(r^-2147483648)>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:(t^-2147483648)>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function ki(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;x=g<<1;w=d&-2;u=0;while(1){if((u|0)==4)break;f=a[h+u>>0]|0;v=f<<24>>24<<1;a:do if(f<<24>>24>=0){m=f<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;f=l+-4|0;r=e[f>>1]|0;g=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;d=q-s|0;if(((((d|0)>-1?d:0-d|0)|0)<(y|0)?(d=r-q|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0)?(d=t-s|0,(((d|0)>-1?d:0-d|0)|0)<(x|0)):0){d=g-q|0;d=(((d|0)>-1?d:0-d|0)|0)>=(x|0);if(m|d)f=d?v:n;else{d=((((q+1+s|0)>>>1)+g|0)>>>1)-r|0;b[f>>1]=((d|0)<(o|0)?o:(d|0)>(v|0)?v:d)+r;f=n}d=j-s|0;if((((d|0)>-1?d:0-d|0)|0)<(x|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}f=f+1|0}t=r+4-t+(s-q<<2)>>3;r=0-f|0;t=(t|0)<(r|0)?r:(t|0)>(f|0)?f:t;r=t+q|0;b[p>>1]=r>>>0<512?r:(r^-2147483648)>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:(t^-2147483648)>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(w<<1)|0;u=u+1|0}return}function li(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:(r^-2147483648)>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:(t^-2147483648)>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function mi(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:(r^-2147483648)>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:(t^-2147483648)>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function ni(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:(r^-2147483648)>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:(t^-2147483648)>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function oi(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=a+80|0;k=MT(c[h>>2]|0)|0;a:do if(k){i=a+68|0;l=a+72|0;e=OP(c[i>>2]|0,c[l>>2]|0,0,0)|0;if((e|0)>=0){g=a+32|0;b:do if(!(c[g>>2]|0)){f=(b|0)<1?32:b;j=f+-1|0;b=1;while(1){if((b|0)>(f|0))break;e=ks(g,c[h>>2]|0,b+-1+(c[i>>2]|0)&0-b)|0;if((e|0)<0)break a;if(!(c[g>>2]&j))break;else b=b<<1}b=0-f|0;e=0;while(1){if(e>>>0>=4)break b;f=a+32+(e<<2)|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=j+g&b;e=e+1|0}}while(0);g=k+6|0;f=0;while(1){if(f>>>0>=4){m=19;break}b=c[a+32+(f<<2)>>2]|0;if(!b){m=19;break}e=(c[l>>2]|0)+31&-32;if((f+-1|0)>>>0<2)e=0-(0-e>>(d[g>>0]|0))|0;e=cI((H(e,b)|0)+31|0)|0;c[a+248+(f<<2)>>2]=e;if(!e)break;c[a+(f<<2)>>2]=c[e+4>>2];f=f+1|0}do if((m|0)==19){if(!(0==0?(c[k+8>>2]&66|0)==0:0)){m=a+252|0;nT(m);e=cI(1024)|0;c[m>>2]=e;if(!e)break;c[a+4>>2]=c[e+4>>2]}c[a+64>>2]=a;e=0;break a}while(0);rv(a);e=-12}}else e=-22;while(0);return e|0}function pi(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=H(j,k)|0;j=H(j,g)|0;k=H(k,h)|0;i=H(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;k=((H(m,e[c>>1]|0)|0)+32|0)>>>6&65535;b[a>>1]=k;k=((H(m,e[c+2>>1]|0)|0)+32|0)>>>6&65535;b[a+2>>1]=k;a=a+(l<<1)|0;c=c+(l<<1)|0;g=g+1|0}}else{h=(k|0)==0?1:l;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=H(m,e[c>>1]|0)|0;k=(k+32+(H(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6&65535;b[a>>1]=k;k=H(m,e[c+2>>1]|0)|0;k=(k+32+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6&65535;b[a+2>>1]=k;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=H(m,e[c>>1]|0)|0;q=c+2|0;r=H(j,e[q>>1]|0)|0;n=c+(l<<1)|0;p=H(k,e[n>>1]|0)|0;o=c+(h<<1)|0;p=(s+32+r+p+(H(i,e[o>>1]|0)|0)|0)>>>6&65535;b[a>>1]=p;q=H(m,e[q>>1]|0)|0;p=H(j,e[c+4>>1]|0)|0;o=H(k,e[o>>1]|0)|0;o=(q+32+p+o+(H(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6&65535;b[a+2>>1]=o;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;ew(a);e=c[b+8>>2]|0;c[a>>2]=e;c[a+4>>2]=c[b+48>>2];c[a+8>>2]=c[b+52>>2];g=b+72|0;f=c[g+4>>2]|0;d=a+24|0;c[d>>2]=c[g>>2];c[d+4>>2]=f;c[a+32>>2]=c[b+784>>2];c[a+36>>2]=c[b+788>>2];c[a+40>>2]=c[b+828>>2];c[a+44>>2]=c[b+832>>2];switch(e|0){case 0:{c[a+20>>2]=c[b+144>>2];c[a+48>>2]=c[b+124>>2];c[a+52>>2]=c[b+128>>2];c[a+64>>2]=c[b+412>>2];c[a+68>>2]=c[b+400>>2];c[a+72>>2]=c[b+388>>2];c[a+76>>2]=c[b+392>>2];c[a+80>>2]=c[b+396>>2];c[a+84>>2]=c[b+404>>2];e=b+228|0;f=c[e+4>>2]|0;g=a+56|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+88>>2]=c[b+180>>2];break}case 1:{c[a+20>>2]=c[b+424>>2];e=b+448|0;f=c[e+4>>2]|0;g=a+96|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+104>>2]=c[b+420>>2];c[a+108>>2]=c[b+416>>2];c[a+112>>2]=c[b+436>>2];c[a+116>>2]=c[b+428>>2];c[a+120>>2]=c[b+876>>2];c[a+124>>2]=c[b+984>>2];c[a+128>>2]=c[b+948>>2];break}case 3:{c[a+48>>2]=c[b+124>>2];c[a+52>>2]=c[b+128>>2];break}default:{}}e=b+100|0;if(c[e>>2]|0){b=b+104|0;d=rR((c[b>>2]|0)+32|0)|0;c[a+12>>2]=d;if(!d)b=-12;else{b=c[b>>2]|0;Bk(d|0,c[e>>2]|0,b|0)|0;c[a+16>>2]=b;b=0}}else b=0;return b|0}function ri(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=(c[g>>2]|0)+e|0;m=a+8|0;e=c[m>>2]|0;l=e+1|0;k=(k|0)>(l|0)?l:k;l=a+32|0;do if((c[l>>2]|0)<=-1){e=Hj(b,e<<1|1)|0;if((e|0)>=0){i=d+260|0;j=a+84|0;h=c[g>>2]|0;while(1){if((h|0)>=(k|0))break;e=0;while(1){if((e|0)>=(c[i>>2]|0))break;n=c[j>>2]|0;o=(c[b+(e<<2)>>2]|0)+(H((c[m>>2]|0)+h|0,n)|0)|0;Bk(o|0,(c[d+(e<<2)>>2]|0)+(H(h-(c[g>>2]|0)|0,n)|0)|0,n|0)|0;e=e+1|0}h=h+1|0}e=c[m>>2]|0;if((k|0)<=(e|0)){c[g>>2]=k;c[f>>2]=c[m>>2];e=2147483647;break}h=1;while(1){if((h|0)>(e|0))break;e=0;while(1){if((e|0)>=(c[i>>2]|0))break;d=c[b+(e<<2)>>2]|0;n=c[m>>2]|0;o=c[j>>2]|0;Bk(d+(H(n-h|0,o)|0)|0,d+(H(n+h|0,o)|0)|0,o|0)|0;e=e+1|0}h=h+1|0;e=c[m>>2]|0}d=c[g>>2]|0;c[f>>2]=e;e=a+48|0;h=c[l>>2]|0;while(1){if((h|0)>=0)break;c[f>>2]=(c[f>>2]|0)+-1;h=(c[l>>2]|0)+(c[e>>2]|0)|0;c[l>>2]=h}e=k-d|0;o=c[m>>2]|0;n=o+(c[g>>2]|0)|0;o=o<<1|1;c[g>>2]=((n|0)>(o|0)?n:o)-(c[f>>2]|0);e=(e|0)>0?e:0}}else e=0;while(0);return e|0}function si(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=Nb;Nb=Nb+32|0;r=w+24|0;t=w+16|0;s=w+8|0;q=w;if(!b)l=0;else l=c[b>>2]|0;LE(g,0,1);p=g+1024|0;LE(p,0,1);j=g+2048|0;LE(j,0,1);v=g+3072|0;LE(v,0,65536);k=(i|0)!=0;if(k){c[i+4>>2]=16;c[i>>2]=16}if((l|0)!=0&(c[h>>2]|0)!=0){m=c[l+20>>2]|0;do if(((m|0)!=0?(n=c[b+m>>2]|0,(n|0)!=0):0)?(o=c[n>>2]|0,(o|0)!=0):0){o=Wb[c[o+4>>2]&31](n)|0;c[q>>2]=o;c[q+4>>2]=n;Ot(g,203799,q);if(k){u=Rx(n)|0;c[i>>2]=u;u=11;break}else{q=Wb[c[l+4>>2]&31](b)|0;c[t>>2]=q;c[t+4>>2]=b;Ot(p,203799,t);break}}else u=11;while(0);if((u|0)==11?(u=Wb[c[l+4>>2]&31](b)|0,c[s>>2]=u,c[s+4>>2]=b,Ot(p,203799,s),k):0){u=Rx(b)|0;c[i+4>>2]=u}if(0){u=cy(d)|0;c[r>>2]=u;Ot(j,203810,r)}}Bt(v,e,f);if(!((((a[c[g>>2]>>0]|0)==0?(a[c[p>>2]>>0]|0)==0:0)?(a[c[j>>2]>>0]|0)==0:0)?!(a[c[v>>2]>>0]|0):0)){b=c[g+3076>>2]|0;if((b|0)!=0?b>>>0<=(c[g+3080>>2]|0)>>>0:0)b=a[(c[v>>2]|0)+(b+-1)>>0]|0;else b=0;c[h>>2]=(b<<24>>24==10|b<<24>>24==13)&1}Nb=w;return}function ti(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+48|0;m=r+32|0;l=r+24|0;k=r+16|0;j=r+8|0;i=r;g=Yz(b,4)|0;q=a+4|0;h=c[q>>2]|0;if(c[h+680>>2]&256|0){c[i>>2]=g;c[i+4>>2]=d;mx(h,48,187739,i)}switch(g|0){case 14:{i=1;p=5;break}case 13:{i=0;p=5;break}case 11:{d=Po(a+16|0,b)|0;break}case 0:{wq(a,b,(d<<3)+-4|0);break}default:JK(b,(d<<3)+-4|0)}a:do if((p|0)==5){if(!e){mx(c[q>>2]|0,16,187766,j);break}if(c[a+6516>>2]|0){g=a+6740|0;if(!(c[g>>2]|0))PM(c[q>>2]|0,187815,k);c[g>>2]=1;JK(b,(d<<3)+-4|0);break}h=a+6488|0;switch(c[h>>2]|0){case 0:{mx(c[q>>2]|0,16,187841,l);JK(b,(d<<3)+-4|0);break a}case -1:{p=13;break}default:{}}if((p|0)==13?(c[a+6728>>2]|0)==4:0){mx(c[q>>2]|0,16,187905,m);JK(b,(d<<3)+-4|0);break}g=a+6512|0;if(((c[g>>2]|0)==-1?(n=c[a+6728>>2]|0,n>>>0<4):0)?(o=c[q>>2]|0,(c[o+420>>2]|0)==1):0){c[h>>2]=1;c[g>>2]=1;c[o+828>>2]=28;eh(a,a+6520|0,c[a+6712>>2]|0,n,1)|0}else{c[h>>2]=1;c[(c[q>>2]|0)+828>>2]=4}d=on(a,e+156512|0,b,i,d,f)|0}while(0);Nb=r;return d|0}function ui(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=Nb;Nb=Nb+16|0;u=v;j=0-i|0;if(!g){m=d[c+j>>0]|0;j=m}else{j=d[c+j>>0]|0;m=d[c+~i>>0]|0}k=d[c+(1-i)>>0]|0;l=k+2|0;n=d[c+(2-i)>>0]|0;o=n+2|0;p=d[c+(3-i)>>0]|0;q=d[c+(4-i)>>0]|0;r=d[c+(5-i)>>0]|0;s=d[c+(6-i)>>0]|0;t=d[c+(7-i)>>0]|0;if(!h)g=t;else g=d[c+(8-i)>>0]|0;a[u>>0]=(l+m+(j<<1)|0)>>>2;a[u+1>>0]=(o+j+(k<<1)|0)>>>2;a[u+2>>0]=(l+(n<<1)+p|0)>>>2;a[u+3>>0]=(o+(p<<1)+q|0)>>>2;a[u+4>>0]=(p+2+(q<<1)+r|0)>>>2;a[u+5>>0]=(q+2+(r<<1)+s|0)>>>2;a[u+6>>0]=(r+2+(s<<1)+t|0)>>>2;a[u+7>>0]=(s+2+(t<<1)+g|0)>>>2;l=i<<1;m=i*3|0;n=i<<2;o=i*5|0;p=i*6|0;q=i*7|0;k=0;g=c;j=f;while(1){if((k|0)==8)break;c=(e[j>>1]|0)+(d[u+k>>0]|0)|0;a[g>>0]=c;c=c+(e[j+16>>1]|0)|0;a[g+i>>0]=c;c=c+(e[j+32>>1]|0)|0;a[g+l>>0]=c;c=c+(e[j+48>>1]|0)|0;a[g+m>>0]=c;c=c+(e[j+64>>1]|0)|0;a[g+n>>0]=c;c=c+(e[j+80>>1]|0)|0;a[g+o>>0]=c;c=c+(e[j+96>>1]|0)|0;a[g+p>>0]=c;a[g+q>>0]=c+(e[j+112>>1]|0);k=k+1|0;g=g+1|0;j=j+2|0}g=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(g|0));Nb=v;return}function vi(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;f=f+(0-(h&-2)<<1)|0;while(1){if((j|0)==9)break;q=e[f>>1]|0;l=e[f+2>>1]|0;o=e[f+-2>>1]|0;h=e[f+4>>1]|0;p=H(h+o|0,-5)|0;m=e[f+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[f+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[f+8>>1]|0;c[i+4>>2]=((h+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[f+10>>1]|0;c[i+8>>2]=((m+h|0)*20|0)+q+p+o;h=H(o+h|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+h+(e[f+12>>1]|0);i=i+32|0;j=j+1|0;f=f+(k<<1)|0}k=g>>1;i=g&-2;j=k*3|0;f=d+64|0;h=0;while(1){if((h|0)==4)break;g=c[f+-32>>2]|0;d=c[f>>2]|0;l=c[f+32>>2]|0;q=c[f+64>>2]|0;o=c[f+96>>2]|0;n=c[f+128>>2]|0;p=c[f+160>>2]|0;m=c[f+192>>2]|0;r=(c[f+-64>>2]|0)+512+o+((l+d|0)*20|0)+(H(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<16384?r:(r^-2147483648)>>31&16383;g=g+512+n+((q+l|0)*20|0)+(H(o+d|0,-5)|0)>>10;b[a+(k<<1)>>1]=g>>>0<16384?g:(g^-2147483648)>>31&16383;d=d+512+p+((o+q|0)*20|0)+(H(n+l|0,-5)|0)>>10;b[a+(i<<1)>>1]=d>>>0<16384?d:(d^-2147483648)>>31&16383;q=l+512+m+((n+o|0)*20|0)+(H(p+q|0,-5)|0)>>10;b[a+(j<<1)>>1]=q>>>0<16384?q:(q^-2147483648)>>31&16383;a=a+2|0;f=f+4|0;h=h+1|0}return}function wi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Nb;Nb=Nb+16|0;l=n+8|0;m=n;a:do if((c[d+48>>2]|0)!=5){k=NL(b)|0;c[a+34728>>2]=k;if(k){f=a+34752|0;g=a+34756|0;h=a+21824|0;d=0;b:while(1){if(d>>>0>=66){d=66;f=21;break a}k=ey(b)|0;c[a+33932+(d*12|0)>>2]=k;if((k|2|0)==3){j=c[f>>2]|0;j=j+-1-(ZE(b)|0)|0;c[a+33932+(d*12|0)+4>>2]=(c[g>>2]|0)+-1&j}i=(k|0)==2;switch(k|0){case 2:case 3:case 4:case 6:{j=ey(b)|0;if(j>>>0>31){d=k;f=16;break b}if(!(j>>>0<16|(k|0)==4&(j|0)==16)){if(!i){d=k;f=16;break b}if((c[h>>2]|0)==3){d=2;f=16;break b}}c[a+33932+(d*12|0)+8>>2]=j;break}default:{if(k>>>0>6){f=18;break b}if(!k){f=21;break a}}}d=d+1|0}if((f|0)==16){c[m>>2]=d;mx(e,16,198703,m);d=-1;break}else if((f|0)==18){c[l>>2]=k;mx(e,16,198763,l);d=-1;break}}else{d=0;f=21}}else{TU(b);if(!(NL(b)|0))d=0;else{c[a+33932>>2]=6;c[a+33940>>2]=0;d=1}c[a+34728>>2]=1;f=21}while(0);if((f|0)==21){c[a+34724>>2]=d;d=0}Nb=n;return d|0}function xi(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+272|0;p=s+128|0;q=s+64|0;r=s;n=s+256|0;o=c[a+4916>>2]|0;at(q,e,g);at(r,f,g);ic[c[a+2960>>2]&255](p,q,r,8);k=a+1920|0;l=$b[c[a+6248>>2]&63](a,p,0,c[k>>2]|0,n)|0;c[a+16>>2]=l;m=(c[a+4312>>2]|0)==0;if(m){g=0;e=a+4940|0;f=a+4936|0;h=0}else{g=1;e=a+4924|0;f=a+4920|0;h=d[(c[a+4944>>2]|0)+((b[p>>1]|0)+256)>>0]|0}j=c[e>>2]|0;i=c[f>>2]|0;do if((l|0)>=(g|0)){f=0;while(1){c[n>>2]=g;if((g|0)==(l|0))break;e=b[p+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=o;f=0;h=e+h|0}g=g+1|0}e=d[a+204+l>>0]|0;c[n>>2]=e;e=(b[p+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+o|0;break}}while(0);do if((l|0)>-1)if(m){ic[c[a+6240>>2]&255](a,p,0,c[k>>2]|0);break}else{ic[c[a+6236>>2]&255](a,p,0,c[k>>2]|0);break}while(0);hc[c[a+2300>>2]&1023](r,8,p);a=$b[c[a+2404>>2]&63](0,r,q,8,8)|0;r=c[k>>2]|0;a=((H(H(h*109|0,r)|0,r)|0)+64>>7)+a|0;Nb=s;return a|0}function yi(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;f=f+(0-(h&-2)<<1)|0;while(1){if((j|0)==9)break;q=e[f>>1]|0;l=e[f+2>>1]|0;o=e[f+-2>>1]|0;h=e[f+4>>1]|0;p=H(h+o|0,-5)|0;m=e[f+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[f+-4>>1]|0)+p+m;p=H(m+q|0,-5)|0;n=e[f+8>>1]|0;c[i+4>>2]=((h+l|0)*20|0)+o+p+n;p=H(n+l|0,-5)|0;o=e[f+10>>1]|0;c[i+8>>2]=((m+h|0)*20|0)+q+p+o;h=H(o+h|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+h+(e[f+12>>1]|0);i=i+32|0;j=j+1|0;f=f+(k<<1)|0}k=g>>1;i=g&-2;j=k*3|0;f=d+64|0;h=0;while(1){if((h|0)==4)break;g=c[f+-32>>2]|0;d=c[f>>2]|0;l=c[f+32>>2]|0;q=c[f+64>>2]|0;o=c[f+96>>2]|0;n=c[f+128>>2]|0;p=c[f+160>>2]|0;m=c[f+192>>2]|0;r=(c[f+-64>>2]|0)+512+o+((l+d|0)*20|0)+(H(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<4096?r:(r^-2147483648)>>31&4095;g=g+512+n+((q+l|0)*20|0)+(H(o+d|0,-5)|0)>>10;b[a+(k<<1)>>1]=g>>>0<4096?g:(g^-2147483648)>>31&4095;d=d+512+p+((o+q|0)*20|0)+(H(n+l|0,-5)|0)>>10;b[a+(i<<1)>>1]=d>>>0<4096?d:(d^-2147483648)>>31&4095;q=l+512+m+((n+o|0)*20|0)+(H(p+q|0,-5)|0)>>10;b[a+(j<<1)>>1]=q>>>0<4096?q:(q^-2147483648)>>31&4095;a=a+2|0;f=f+4|0;h=h+1|0}return}function zi(){var a=0,b=0,d=0;if(!(c[284096]|0)){c[284096]=1;c[284098]=1002752;c[284100]=256;Pc(1136388,8,20,74240,1,1,74272,1,1,0,0,0,4)|0;c[284102]=1003776;c[284104]=8192;Pc(1136404,13,36,74304,1,1,74352,1,1,0,0,0,4)|0;a=0;b=0;while(1){if((b|0)==4)break;c[1042096+(b<<4)+4>>2]=1036544+(a<<2);d=c[74400+(b<<2)>>2]|0;c[1042096+(b<<4)+12>>2]=d;Pc(1042096+(b<<4)|0,8,68,74416+(b*68|0)|0,1,1,74688+(b*68|0)|0,1,1,0,0,0,4)|0;a=d+a|0;b=b+1|0}a=0;while(1){if((a|0)==3)break;d=a+1|0;c[1042256+(d<<4)+4>>2]=1042160+(a<<5);c[1042256+(d<<4)+12>>2]=8;Pc(1042256+(d<<4)|0,3,4,196437+(a<<2)|0,1,1,196449+(a<<2)|0,1,1,0,0,0,4)|0;a=d}a=0;while(1){if((a|0)==7)break;d=a+1|0;c[1043216+(d<<4)+4>>2]=1042320+(a<<7);c[1043216+(d<<4)+12>>2]=32;Pc(1043216+(d<<4)|0,5,8,74960+(a<<3)|0,1,1,75024+(a<<3)|0,1,1,0,0,0,4)|0;a=d}a=0;while(1){if((a|0)==15)break;d=a+1|0;c[1074064+(d<<4)+4>>2]=1043344+(a<<11);c[1074064+(d<<4)+12>>2]=512;Pc(1074064+(d<<4)|0,9,16,75088+(a<<4)|0,1,1,75344+(a<<4)|0,1,1,0,0,0,4)|0;a=d}a=0;while(1){if((a|0)==6)break;d=a+1|0;c[1074512+(d<<4)+4>>2]=1074320+(a<<5);c[1074512+(d<<4)+12>>2]=8;Pc(1074512+(d<<4)|0,3,7,75600+(a<<4)|0,1,1,75712+(a<<4)|0,1,1,0,0,0,4)|0;a=d}c[284106]=1074624;c[284108]=96;Pc(1136420,6,16,75696,1,1,75808,1,1,0,0,0,4)|0;Lp()}return}function Ai(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==2)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function Bi(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=0-c|0;i=b+3+m|0;h=b+(c<<3)+-1|0;g=h+(0-(c<<1))|0;k=(c*11|0)+-1|0;j=(c*3|0)+-1|0;e=2;f=(d[h>>0]|0)-(d[g>>0]|0)|0;l=(d[i+1>>0]|0)-(d[i+-1>>0]|0)|0;while(1){if((e|0)==5)break;q=h+c|0;p=g+m|0;o=(H((d[i+e>>0]|0)-(d[i+(0-e)>>0]|0)|0,e)|0)+l|0;n=(H((d[q>>0]|0)-(d[p>>0]|0)|0,e)|0)+f|0;e=e+1|0;f=n;l=o;g=p;h=q}e=5;q=b+j|0;p=b+k|0;while(1){if(e>>>0>=9)break;o=p+c|0;n=q+m|0;f=(H((d[o>>0]|0)-(d[n>>0]|0)|0,e)|0)+f|0;e=e+1|0;q=n;p=o}o=(l*17|0)+16>>5;h=(f*5|0)+32>>6;i=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=16;f=16-i+(H(h,-7)|0)+((d[q+8>>0]|0)+(d[p>>0]|0)<<4)|0;e=b;while(1){if(!g)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function Ci(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<2;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function Di(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+32|0;r=s+16|0;o=s+8|0;k=s;a:do if((b|0)==0|(e|0)<1)e=-1;else do if((a[b>>0]|0)==1){c[g>>2]=1;if((e|0)<7){c[k>>2]=e;mx(j,16,197385,k);e=-1094995529;break a}k=a[b+5>>0]&31;q=b+e|0;n=b+6|0;g=0;while(1){if(g>>>0>=k>>>0)break;l=((yU(d[n>>0]|d[n+1>>0]<<8|0)|0)&65535)+2|0;if((l|0)>(q-n|0)){e=-1094995529;break a}m=Dh(n,l,f,i,j)|0;if((m|0)<0){p=9;break}n=n+l|0;g=g+1|0}if((p|0)==9){c[o>>2]=g;mx(j,16,197404,o);e=m;break a}m=d[n>>0]|0;g=n+1|0;l=0;while(1){if(l>>>0>=m>>>0){p=17;break}k=((yU(d[g>>0]|d[g+1>>0]<<8|0)|0)&65535)+2|0;if((k|0)>(q-g|0)){e=-1094995529;break a}n=Dh(g,k,f,i,j)|0;if((n|0)<0){p=15;break}g=g+k|0;l=l+1|0}if((p|0)==15){c[r>>2]=l;mx(j,16,197438,r);e=n;break a}else if((p|0)==17){c[h>>2]=(a[b+4>>0]&3)+1&255;break}}else{c[g>>2]=0;g=Ao(b,e,f,0,j)|0;if((g|0)<0){e=g;break a}}while(0);while(0);Nb=s;return e|0}function Ei(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;w=H(c,-3)|0;x=H(c,-2)|0;y=0-c|0;z=c<<1;A=(e>>2)+2|0;u=H(c,-4)|0;v=c*3|0;m=0;while(1){if((m|0)==16)break;g=b+w|0;h=d[g>>0]|0;i=b+x|0;n=d[i>>0]|0;k=b+y|0;o=d[k>>0]|0;p=d[b>>0]|0;q=b+c|0;r=d[q>>0]|0;s=b+z|0;t=d[s>>0]|0;j=o-p|0;j=(j|0)>-1?j:0-j|0;do if(((j|0)<(e|0)?(l=n-o|0,(((l|0)>-1?l:0-l|0)|0)<(f|0)):0)?(l=r-p|0,(((l|0)>-1?l:0-l|0)|0)<(f|0)):0){if((j|0)>=(A|0)){a[k>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(p+2+n+(r<<1)|0)>>>2;break}l=h-o|0;if((((l|0)>-1?l:0-l|0)|0)<(f|0)){B=d[b+u>>0]|0;j=p+o|0;a[k>>0]=(r+4+h+(j+n<<1)|0)>>>3;a[i>>0]=(o+2+h+n+p|0)>>>2;l=n+4+(h*3|0)|0;h=3;i=B<<1}else{l=o+2|0;g=k;h=2;i=r;j=n<<1}a[g>>0]=(l+j+i|0)>>>h;B=t-p|0;if((((B|0)>-1?B:0-B|0)|0)<(f|0)){B=d[b+v>>0]|0;l=p+o+r|0;a[b>>0]=(n+4+t+(l<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(l+4+(t*3|0)+(B<<1)|0)>>>3;break}else{a[b>>0]=(p+2+n+(r<<1)|0)>>>2;break}}while(0);b=b+1|0;m=m+1|0}return}
|
|
function td(a,e,g,h,i,j,k){a=a|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=Nb;Nb=Nb+32|0;E=G+16|0;D=G+8|0;C=G;A=i+16|0;B=g+8|0;z=g+16|0;y=a+4|0;o=1;l=0;x=0;a=h;m=0;n=h+-90|0;a:while(1){if((x|0)>=(c[A>>2]|0)){a=0;break}h=0;b:while(1){v=o;c:while(1){d:while(1){e:while(1){if((h|0)>=(d[i>>0]|0))break b;w=c[k+(l<<2)>>2]|0;switch(c[j+(l<<2)>>2]|0){case 14:case 15:break c;case 13:break d;case 0:break;default:break e}while(1){if((h|0)>=(w|0))break;f[e+(l<<2)>>2]=0.0;h=h+1|0;l=l+1|0}}while(1){if((h|0)>=(w|0))break;t=c[284092]|0;o=c[B>>2]|0;u=c[z>>2]|0;r=c[g>>2]|0;q=r+(o>>>3)|0;q=(IS(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(o&7)>>>25;p=b[t+(q<<2)>>1]|0;q=b[t+(q<<2)+2>>1]|0;s=q<<16>>16;if(q<<16>>16<0){o=o+7|0;o=u>>>0>o>>>0?o:u;H=r+(o>>>3)|0;H=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(o&7)>>>(s+32|0))+p|0;p=b[t+(H<<2)>>1]|0;H=b[t+(H<<2)+2>>1]|0;q=H<<16>>16;if(H<<16>>16<0){o=o-s|0;o=u>>>0>o>>>0?o:u;H=r+(o>>>3)|0;p=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(o&7)>>>(q+32|0))+p|0;q=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}}else q=s;H=q+o|0;c[B>>2]=u>>>0>H>>>0?H:u;a=a+-60+p|0;if(a>>>0>255){F=42;break a}f[e+(l<<2)>>2]=-+f[902736+(a+100<<2)>>2];h=h+1|0;l=l+1|0}}o=v;v=h;while(1){if((v|0)>=(w|0))break;u=o+-1|0;if((o|0)>0)h=(Yz(g,9)|0)+-256|0;else{s=c[284092]|0;h=c[B>>2]|0;t=c[z>>2]|0;q=c[g>>2]|0;H=q+(h>>>3)|0;H=(IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>25;o=b[s+(H<<2)>>1]|0;H=b[s+(H<<2)+2>>1]|0;r=H<<16>>16;if(H<<16>>16<0){h=h+7|0;h=t>>>0>h>>>0?h:t;H=q+(h>>>3)|0;H=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>(r+32|0))+o|0;o=b[s+(H<<2)>>1]|0;H=b[s+(H<<2)+2>>1]|0;p=H<<16>>16;if(H<<16>>16<0){h=h-r|0;h=t>>>0>h>>>0?h:t;H=q+(h>>>3)|0;o=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>(p+32|0))+o|0;p=b[s+(o<<2)+2>>1]|0;o=b[s+(o<<2)>>1]|0}}else p=r;h=p+h|0;c[B>>2]=t>>>0>h>>>0?h:t;h=o+-60|0}n=h+n|0;h=(n|0)<155?n:155;h=(h|0)>-100?h:-100;if((n|0)!=(h|0)){H=c[y>>2]|0;c[D>>2]=n;c[D+4>>2]=h;bN(H,188899,D)}f[e+(l<<2)>>2]=-+f[902736+(h+200<<2)>>2];o=u;v=v+1|0;l=l+1|0}h=v;v=o}u=h;while(1){if((u|0)>=(w|0))break;s=c[284092]|0;h=c[B>>2]|0;t=c[z>>2]|0;q=c[g>>2]|0;H=q+(h>>>3)|0;H=(IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>25;o=b[s+(H<<2)>>1]|0;H=b[s+(H<<2)+2>>1]|0;r=H<<16>>16;if(H<<16>>16<0){h=h+7|0;h=t>>>0>h>>>0?h:t;H=q+(h>>>3)|0;H=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>(r+32|0))+o|0;o=b[s+(H<<2)>>1]|0;H=b[s+(H<<2)+2>>1]|0;p=H<<16>>16;if(H<<16>>16<0){h=h-r|0;h=t>>>0>h>>>0?h:t;H=q+(h>>>3)|0;o=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>(p+32|0))+o|0;p=b[s+(o<<2)+2>>1]|0;o=b[s+(o<<2)>>1]|0}}else p=r;h=p+h|0;c[B>>2]=t>>>0>h>>>0?h:t;m=m+-60+o|0;h=(m|0)<100?m:100;h=(h|0)>-155?h:-155;if((m|0)!=(h|0)){H=c[y>>2]|0;c[C>>2]=m;c[C+4>>2]=h;bN(H,188785,C)}c[e+(l<<2)>>2]=c[902736+(200-h<<2)>>2];u=u+1|0;l=l+1|0}h=u;o=v}o=v;x=x+1|0}if((F|0)==42){H=c[y>>2]|0;c[E>>2]=a;mx(H,16,188998,E);a=-1094995529}Nb=G;return a|0}function ud(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[284149]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[284146]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[284144]=c[284144]&~(1<<e);break}else{c[a+12>>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=1136880+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[284145]=c[284145]&~(1<<d);break}}else{f=g+16|0;c[((c[f>>2]|0)==(h|0)?f:g+20|0)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[284150]|0)==(i|0)){i=(c[284147]|0)+b|0;c[284147]=i;c[284150]=h;c[h+4>>2]=i|1;if((h|0)!=(c[284149]|0))return;c[284149]=0;c[284146]=0;return}if((c[284149]|0)==(i|0)){i=(c[284146]|0)+b|0;c[284146]=i;c[284149]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[284144]=c[284144]&~(1<<d);break}else{c[a+12>>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;d=a+4|0;b=c[d>>2]|0;if(!b){b=c[a>>2]|0;if(!b){d=0;break}}else a=d;while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=1136880+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[284145]=c[284145]&~(1<<b);break}}else{e=g+16|0;c[((c[e>>2]|0)==(i|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[284149]|0)){c[284146]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=1136616+(b<<1<<2)|0;a=c[284144]|0;b=1<<b;if(!(a&b)){c[284144]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{g=(b+1048320|0)>>>16&8;i=b<<g;d=(i+520192|0)>>>16&4;i=i<<d;e=(i+245760|0)>>>16&2;e=14-(d|g|e)+(i<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=1136880+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[h+16>>2]=0;a=c[284145]|0;d=1<<e;if(!(a&d)){c[284145]=a|d;c[b>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}b=c[b>>2]|0;a:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break a}else{e=e<<1;b=a}}c[d>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}while(0);g=b+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=b;c[h+24>>2]=0;return}function vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=Nb;Nb=Nb+256|0;G=I+248|0;C=I+240|0;B=I+232|0;A=I+224|0;E=I+216|0;D=I+208|0;h=I+200|0;g=I+192|0;z=I;H=c[a+60>>2]|0;F=H+8|0;c[F>>2]=b;do if((aL(e)|0)==4095){f=Zj(H,e)|0;if((f|0)<0){mx(a,16,187311,g);y=59;break}f=c[H+6476>>2]|0;if((f|0)>12){y=c[H+4>>2]|0;c[h>>2]=f;mx(y,16,187345,h);f=-1094995529;y=59}else y=6}else y=6;while(0);a:do if((y|0)==6){f=wp(a)|0;if((f|0)>=0){r=H+6472|0;s=H+4|0;c[(c[s>>2]|0)+828>>2]=(c[r>>2]|0)+-1;t=SU(e)|0;c[H+1004>>2]=0;u=a+680|0;v=a+420|0;w=H+6516|0;x=H+6484|0;g=0;p=0;k=0;q=7;l=0;j=0;h=0;b:while(1){m=Yz(e,3)|0;if((m|0)==7){y=41;break}i=Yz(e,4)|0;if(c[u>>2]&256|0){c[D>>2]=m;c[D+4>>2]=i;mx(a,48,187377,D)}if((m|0)!=5&(c[v>>2]|0)==0){f=-1094995529;y=59;break a}o=m>>>0<4;if(o){g=Xd(H,m,i)|0;if(!g){y=14;break}n=(c[w>>2]|0)==0?1024:960;c[g>>2]=1}else n=h;switch(m|0){case 0:{i=k+1|0;j=1;h=l;f=rh(H,g+288|0,e,0)|0;y=38;break}case 1:{i=k;j=1;h=l;f=zk(H,e,g)|0;y=38;break}case 2:{i=k;h=l;f=Md(H,e,g)|0;y=38;break}case 3:{i=k;j=1;h=l;f=rh(H,g+288|0,e,0)|0;y=38;break}case 4:{i=k;h=l;f=hx(H,e)|0;y=38;break}case 5:{h=(l|0)==0;if(!(h|(GJ(H)|0)!=0)){y=29;break b}i=Bl(a,r,z,e,t)|0;do if((i|0)>=0){if(!h){mx(a,16,187437,A);gw(H);h=l;break}f=eh(H,z,i,1,1)|0;if(!f){c[x>>2]=0;h=1;f=0}else h=1}else{h=l;f=i}while(0);i=k;y=38;break}case 6:{if((i|0)==15)f=(Yz(e,8)|0)+14|0;else f=i;if((NS(e)|0)<(f<<3|0)){y=34;break b}while(1){if((f|0)<=0)break;f=f-(ti(H,e,f,p,q)|0)|0}i=l;h=o?g:p;f=o?6:q;break}default:{f=-558323010;y=59;break a}}if((y|0)==38){y=0;if(!f){k=i;i=h;h=o?g:p;f=o?m:q}else{y=59;break a}}if((NS(e)|0)<3){y=40;break}else{p=h;q=f;l=i;f=0;h=n}}if((y|0)==14){f=c[s>>2]|0;c[E>>2]=m;c[E+4>>2]=i;mx(f,16,187397,E);f=-1094995529;y=59;break}else if((y|0)==29){f=-1094995529;y=59;break}else if((y|0)==34){mx(a,16,187524,B);f=-1094995529;y=59;break}else if((y|0)==40){mx(a,16,187583,C);f=-1094995529;y=59;break}else if((y|0)==41){if(!(c[v>>2]|0)){c[d>>2]=0;f=0;break}if((c[H+6488>>2]|0)==1)g=(c[H+6500>>2]|0)>(c[H+6480>>2]|0)&1;else g=0;h=h<<g;Kg(H);f=H+6728|0;if((j|0)!=0&(c[f>>2]|0)!=0){c[a+416>>2]=c[H+6480>>2]<<g;c[a+428>>2]=h;c[f>>2]=4}if(g|0)c[(c[a+64>>2]|0)+108>>2]=2;f=c[F>>2]|0;g=(h|0)!=0;if(g&(c[f>>2]|0)==0){mx(a,16,187632,G);f=-1094995529;y=59;break}if(g){c[f+76>>2]=h;c[f+232>>2]=c[a+416>>2]}else rv(f);c[d>>2]=g&1;f=c[H+5672>>2]|0;if(!((k|0)==2&(f|0)!=0)){f=0;break}H=H+6720|0;if(!((c[H>>2]|0)==3&(c[H+4>>2]|0)==0)){f=0;break}switch(f|0){case 1:{c[b+4>>2]=c[b>>2];f=0;break a}case 2:{c[b>>2]=c[b+4>>2];f=0;break a}default:{f=0;break a}}}}else y=59}while(0);if((y|0)==59)gw(H);Nb=I;return f|0}function wd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Nb;Nb=Nb+144|0;m=q+132|0;n=q+88|0;o=q+44|0;p=q;g=n;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));i=b;c[i>>2]=0;c[i+4>>2]=-2147483648;i=(e|0)!=0;a:do if(i){h=(a[d>>0]|0)==45;g=h?d+1|0:d;h=h&1;f=_f(g,207218,n)|0;if(!f){f=_f(g,207227,n)|0;e=n+8|0;c[e>>2]=0;if(!f){f=BQ(g,p,10)|0;c[n>>2]=f;f=c[p>>2]|0;if((f|0)==(g|0)){e=-22;break}else{c[n+4>>2]=0;c[e>>2]=0;e=h;g=0;k=20;break}}else{l=h;d=0;k=21}}else{l=h;d=0;k=21}}else{e=GC()|0;f=M()|0;l=Eu(e|0,f|0,1e6,0)|0;M()|0;c[m>>2]=l;if(!(sz(d,207214)|0)){c[b>>2]=e;c[b+4>>2]=f;e=0;break}f=0;while(1){if(f>>>0>=2){e=0;break}e=_f(d,c[162060+(f<<2)>>2]|0,n)|0;if(!e)f=f+1|0;else break}l=(e|0)==0;h=l?d:e;d=l&1;e=a[h>>0]|0;b:do switch(e<<24>>24){case 116:case 84:{g=h+1|0;break}default:{g=h;while(1){f=g+1|0;if(!(dP(e<<24>>24)|0))break b;g=f;e=a[f>>0]|0}}}while(0);e=0;f=h;while(1){if(e>>>0>=2){e=0;g=d;k=20;break a}f=_f(g,c[162068+(e<<2)>>2]|0,n)|0;if(!f){e=e+1|0;f=0}else{l=0;k=21;break}}}while(0);if((k|0)==20)if(!f)e=-22;else{l=e;d=g;k=21}c:do if((k|0)==21){g=a[f>>0]|0;if(g<<24>>24==46){g=1e5;h=0;while(1){f=f+1|0;if(!g)break;e=a[f>>0]|0;if(!(UU(e)|0))break;j=(H(e+-48|0,g)|0)+h|0;g=(g>>>0)/10|0;h=j}while(1){g=a[f>>0]|0;if(!(UU(g<<24>>24)|0)){j=h;break}else f=f+1|0}}else j=0;if(i){f=((c[n+4>>2]|0)*60|0)+((c[n+8>>2]|0)*3600|0)+(c[n>>2]|0)|0;e=f;f=((f|0)<0)<<31>>31}else{h=(g|32)<<24>>24==122;e=h&1;f=f+e|0;i=(d|0)!=0;d:do if(i|h){d=e;g=0;h=0}else{switch(a[f>>0]|0){case 45:case 43:break;default:{d=e;g=0;h=0;break d}}g=p;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));h=(a[f>>0]|0)==43;g=f+1|0;e=g;f=0;while(1){if(f>>>0>=3){k=35;break}e=_f(g,c[162076+(f<<2)>>2]|0,p)|0;if(!e){e=0;f=f+1|0}else break}if((k|0)==35)if(!e){e=-22;break c}h=H(h?-60:60,((c[p+8>>2]|0)*60|0)+(c[p+4>>2]|0)|0)|0;d=1;f=e;g=h;h=((h|0)<0)<<31>>31}while(0);if(i){if(!d){o=(tb(m|0,o|0)|0)+12|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];c[p+16>>2]=c[o+16>>2];c[p+20>>2]=c[o+20>>2];c[p+24>>2]=c[o+24>>2];c[p+28>>2]=c[o+28>>2]}else{o=(ob(m|0,o|0)|0)+12|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];c[p+16>>2]=c[o+16>>2];c[p+20>>2]=c[o+20>>2];c[p+24>>2]=c[o+24>>2];c[p+28>>2]=c[o+28>>2]}o=n+12|0;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];c[o+16>>2]=c[p+16>>2];c[o+20>>2]=c[p+20>>2];c[o+24>>2]=c[p+24>>2];c[o+28>>2]=c[p+28>>2]}p=(d|0)!=0;c[n+32>>2]=(p^1)<<31>>31;if(p)e=Ox(n)|0;else e=vb(n|0)|0;e=kP(g|0,h|0,e|0,((e|0)<0)<<31>>31|0)|0;p=M()|0;g=a[f>>0]|0;f=p}e=oK(e|0,f|0,1e6,0)|0;e=kP(e|0,M()|0,j|0,((j|0)<0)<<31>>31|0)|0;f=M()|0;if(!(g<<24>>24)){o=(l|0)==0;n=iP(0,0,e|0,f|0)|0;p=M()|0;c[b>>2]=o?e:n;c[b+4>>2]=o?f:p;e=0}else e=-22}while(0);Nb=q;return e|0}function xd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=Nb;Nb=Nb+34832|0;u=w+34824|0;t=w+34816|0;s=w+34808|0;r=w+34800|0;n=w+34784|0;l=w+34776|0;i=w+34768|0;j=w;m=a+25628|0;g=c[m>>2]|0;v=a+25636|0;h=c[v>>2]|0;e=g+(h*34768|0)|0;if(!h)p=(c[a+29544>>2]|0)==0;else p=0;q=p&1;d=g+(h*34768|0)+4|0;x=b+28|0;c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];c[d+16>>2]=c[x+16>>2];d=pd(a,e,b)|0;a:do if((d|0)>=0){if((c[g+(h*34768|0)+21836>>2]|0)>0){c[g+(h*34768|0)+23408>>2]=0;c[g+(h*34768|0)+23404>>2]=0;d=0;break}d=(c[g+(h*34768|0)+21808>>2]|0)==0;if(!d?(f=c[a+29544>>2]|0,(f|0)!=0):0){g=e;e=0}else k=8;do if((k|0)==8){if(c[a+29572>>2]|0){mx(c[a+4>>2]|0,16,198971,i);d=-1094995529;break a}h=a+29544|0;if(d){do if(c[h>>2]|0){if(c[v>>2]|0){d=of(a)|0;if((d|0)<0?c[(c[a+4>>2]|0)+688>>2]&8|0:0)break a;x=c[m>>2]|0;Bk(j|0,x|0,34768)|0;Bk(x|0,e|0,34768)|0;Bk(e|0,j|0,34768)|0;e=c[m>>2]|0}f=a+24312|0;if(!(c[f>>2]|0)){d=-1094995529;break a}g=a+26368|0;d=(c[g>>2]|0)==0;if((c[a+26364>>2]|0)!=3){if(d){d=-1094995529;break a}d=Mp(a,c[m>>2]|0,1)|0;if((d|0)<0)break a;else{d=g;break}}if(!d){d=-1094995529;break a}if((c[a+27012>>2]|0)!=5){d=-1094995529;break a}mx(a,24,198988,l);d=Mp(a,c[m>>2]|0,1)|0;qt((c[f>>2]|0)+4|0,2147483647,0);qt((c[f>>2]|0)+4|0,2147483647,1);c[f>>2]=0;if((d|0)<0)break a;else d=g}else d=a+26368|0;while(0);if(!(c[d>>2]|0)){d=a+24312|0;f=c[d>>2]|0;if(f|0?(c[a+25672>>2]|0)==0:0)qt(f+4|0,2147483647,(c[a+26364>>2]|0)==2&1);c[d>>2]=0}}d=c[h>>2]|0;if(!d){if((e|0)!=(c[m>>2]|0)){c[n>>2]=199014;c[n+4>>2]=199033;c[n+8>>2]=2094;mx(0,0,214689,n);ba()}if((c[a+26368>>2]|0)==0?(o=c[(c[a+4>>2]|0)+844>>2]|0,(o|0)>7):0){if(!(c[a+27008>>2]|0)){d=0;break a}if((o|0)>15){d=c[e+840>>2]|0;if((d|0)==3){d=0;break a}if((o|0)>23){if((d|0)!=1){d=0;break a}if((o|0)>31)if((c[a+27012>>2]|0)==5)if((o|0)>47){d=0;break a}else{g=e;f=0;e=1;break}else if((o|0)>47|(c[a+29700>>2]|0)<0){d=0;break a}else{g=e;f=0;e=1;break}else{g=e;f=0;e=1}}else{g=e;f=0;e=1}}else{g=e;f=0;e=1}}else{g=e;f=0;e=1}}else{g=e;f=d;e=0}}while(0);do if(!p){x=c[(c[a+27164+(c[g+27776>>2]<<2)>>2]|0)+4>>2]|0;p=c[a+28196>>2]|0;d=c[p>>2]|0;if((d|0)==(c[x>>2]|0)?(c[p+64>>2]|0)==(c[x+64>>2]|0):0){if((c[a+28200>>2]|0)==(c[(c[a+27036+(d<<2)>>2]|0)+4>>2]|0))break;mx(c[a+4>>2]|0,16,199085,s);d=-1094995529;break a}mx(c[a+4>>2]|0,16,199057,r);d=-1094995529;break a}while(0);do if(e){d=bd(a,g,b,q)|0;if((d|0)<0)break a}else{d=c[a+26364>>2]|0;e=c[g+21824>>2]|0;if((d|0)==(e|0)?(c[a+25672>>2]|0)==((c[b+68>>2]|0)==0|0):0){if(c[a+24312>>2]|0)break;d=c[a+4>>2]|0;c[u>>2]=f+1;mx(d,16,199187,u);d=-1094995529;break a}x=c[a+4>>2]|0;c[t>>2]=d;c[t+4>>2]=e;mx(x,16,199125,t);d=-1094995529;break a}while(0);d=hd(a,g,b)|0;if((d|0)>=0){c[v>>2]=(c[v>>2]|0)+1;d=0}}while(0);Nb=w;return d|0}function yd(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+48|0;r=u+40|0;o=u+32|0;n=u+16|0;k=u+8|0;i=u;p=g+8|0;t=c[p>>2]|0;a[g+12>>0]=a[g+12+t>>0]|0;j=g+92|0;c[j>>2]=c[e+28>>2];q=g+87932|0;a[g+87940>>0]=a[g+87932+t>>0]|0;s=Yz(f,2)|0;a:do switch(s|0){case 0:{e=Yz(f,2)|0;h=1<<e;if((h|0)>4){e=c[b+4>>2]|0;c[i>>2]=h;mx(e,16,190272,i);e=-1;break a}c[p>>2]=h;i=h+-1|0;if(!e)c[j>>2]=0;a[q>>0]=0;a[g+87932+h>>0]=16;h=c[p>>2]|0;h=(((h>>>1)+16|0)>>>0)/(h>>>0)|0;e=0;while(1){if((e|0)>=(i|0))break;o=e+1|0;a[g+87932+o>>0]=h+(d[g+87932+e>>0]|0);e=o}h=(NL(f)|0)&255;i=g+13|0;a[i>>0]=h;h=c[p>>2]|0;e=1;while(1){if(e>>>0>=h>>>0){m=36;break a}p=e+1|0;a[g+12+p>>0]=a[i>>0]|0;e=p}}case 1:{m=(Yz(f,2)|0)+16|0;h=Yz(f,2)|0;e=h+1|0;c[p>>2]=e;a[q>>0]=0;a[g+87932+e>>0]=m;e=0;while(1){i=c[p>>2]|0;if((e|0)>=(h|0))break;m=d[i-e+(g+87932)>>0]|0;m=m+254-((Yz(f,2)|0)<<1)&255;a[(c[p>>2]|0)+~e+(g+87932)>>0]=m;e=e+1|0}e=Yz(f,a[190344+i>>0]|0)|0;h=0;while(1){if(h>>>0>=(c[p>>2]|0)>>>0){m=37;break a}m=(NL(f)|0)&255;a[(c[p>>2]|0)-h+(g+12)>>0]=m;h=h+1|0}}case 2:{j=(Yz(f,2)|0)&255;a[q>>0]=j;j=Yz(f,2)|0;i=j+1|0;c[p>>2]=i;e=0;h=16;while(1){a[g+87932+i>>0]=h;if((e|0)>=(j|0))break;h=d[g+87932+e>>0]|0;i=e+1|0;e=i;h=h+2+((Yz(f,2)|0)<<1)&255}e=Yz(f,a[190344+(c[p>>2]|0)>>0]|0)|0;i=g+13|0;j=c[p>>2]|0;h=0;while(1){if((h|0)>=(j|0)){m=37;break a}m=(NL(f)|0)&255;a[i+h>>0]=m;h=h+1|0}}case 3:{h=(Yz(f,2)|0)&255;a[q>>0]=h;h=Yz(f,2)|0;j=Yz(f,2)|0;l=Yz(f,2)|0;i=l+j|0;e=i+1|0;if((i|0)>4){t=c[b+4>>2]|0;c[k>>2]=e;mx(t,16,190350,k);e=-1;break a}c[p>>2]=e;i=0;h=h+16|0;while(1){a[g+87932+e>>0]=h;if((i|0)>=(j|0))break;h=d[g+87932+i>>0]|0;e=i+1|0;i=e;h=h+2+((Yz(f,2)|0)<<1)|0}e=0;while(1){h=c[p>>2]|0;if((e|0)>=(l|0))break;m=d[h-e+(g+87932)>>0]|0;m=m+254-((Yz(f,2)|0)<<1)&255;a[(c[p>>2]|0)+~e+(g+87932)>>0]=m;e=e+1|0}e=Yz(f,a[190344+h>>0]|0)|0;i=g+13|0;j=c[p>>2]|0;h=0;while(1){if((h|0)>=(j|0)){m=37;break a}m=(NL(f)|0)&255;a[i+h>>0]=m;h=h+1|0}}default:{h=c[p>>2]|0;m=36}}while(0);if((m|0)==36){c[g>>2]=s;i=0;m=41}else if((m|0)==37){c[g>>2]=s;if((e|0)<=-1){c[n>>2]=190422;c[n+4>>2]=190438;c[n+8>>2]=719;mx(0,0,214689,n);ba()}h=c[p>>2]|0;if(e>>>0>(h+1|0)>>>0){t=c[b+4>>2]|0;c[o>>2]=e;mx(t,16,190467,o);e=-1}else{i=e;m=41}}do if((m|0)==41){e=1;while(1){if(e>>>0>h>>>0)break;if((d[e+-1+(g+87932)>>0]|0)<(d[g+87932+e>>0]|0))e=e+1|0;else{m=44;break}}if((m|0)==44){mx(c[b+4>>2]|0,16,190565,r);e=-1;break}r=h>>>0>1;b=r?2:1;c[g+20>>2]=b;a[g+87941>>0]=a[q>>0]|0;a[g+87941+b>>0]=a[g+87932+h>>0]|0;if(r){b:do if(!s)e=h>>>1;else{if(s&1|0){e=i+-1|0;e=h-((e|0)>1?e:1)|0;break}switch(i|0){case 0:{e=1;break b}case 1:{e=h+-1|0;break b}default:{e=i+-1|0;break b}}}while(0);a[g+87942>>0]=a[g+87932+e>>0]|0}e=g+14568|0;c[g+14564>>2]=((c[e>>2]|0)!=(t|0))<<31>>31;c[e>>2]=-1;if((i|0)!=0&(s&1|0)!=0){c[e>>2]=1-i+h;e=0;break}if((i|0)>1&(s|0)==2){c[e>>2]=i+-1;e=0}else e=0}while(0);Nb=u;return e|0}function zd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+48|0;j=m+16|0;l=m+8|0;i=m;f=m+32|0;h=m+24|0;g=ok(a,b,0,0,e,f)|0;f=c[f>>2]|0;a:do if((g|0)!=0&(f|0)!=0){e=(d|0)!=0;b:do if(!e){b=c[g+12>>2]|0;if((b|0)<1146442272)if((b|0)<1128811585)if((b|0)<1112493900)switch(b|0){case 5:break b;default:{b=-22;break a}}else switch(b|0){case 1112493900:break b;default:{b=-22;break a}}else if((b|0)<1129270354)switch(b|0){case 1128811585:break b;default:{b=-22;break a}}else switch(b|0){case 1129270354:break b;default:{b=-22;break a}}if((b|0)<1397116244)if((b|0)<1346784596)switch(b|0){case 1146442272:break b;default:{b=-22;break a}}else switch(b|0){case 1346784596:break b;default:{b=-22;break a}}if((b|0)<1397316165)switch(b|0){case 1397116244:break b;default:{b=-22;break a}}if((b|0)<1448231252)switch(b|0){case 1397316165:break b;default:{b=-22;break a}}else switch(b|0){case 1448231252:break b;default:{b=-22;break a}}}while(0);if(!(c[g+40>>2]&128)){k=f+(c[g+8>>2]|0)|0;b=c[g+12>>2]|0;c:do if((b|0)<9)switch(b|0){case 6:case 3:case 4:case 2:case 1:case 0:{e=9;break c}case 5:{b=nQ(d,k)|0;break a}case 7:{b=_p(d,k)|0;break a}default:{e=27;break c}}else{if((b|0)<1146442272){if((b|0)<1128811585){if((b|0)<1112493900)switch(b|0){case 9:{e=9;break c}default:{e=27;break c}}switch(b|0){case 1112493900:break;default:{e=27;break c}}b=Rp(a,g,d,k)|0;break a}if((b|0)>=1129270354){switch(b|0){case 1129270354:break;default:{e=27;break c}}b=PH(a,d,k)|0;break a}switch(b|0){case 1128811585:break;default:{e=27;break c}}if(e?hz(d,214025)|0:0){e=Ku(d)|0;f=M()|0;if((e|0)==0&(f|0)==0){c[l>>2]=d;mx(a,16,204516,l);b=-22}else b=0;a=k;c[a>>2]=e;c[a+4>>2]=f;break a}e=k;c[e>>2]=0;c[e+4>>2]=0;e=27;break}if((b|0)<1397116244){if((b|0)>=1346784596){switch(b|0){case 1346784596:break;default:{e=27;break c}}b=dQ(a,g,d,k)|0;break a}switch(b|0){case 1146442272:break;default:{e=27;break c}}if(!e){b=k;c[b>>2]=0;c[b+4>>2]=0;b=0;break a}b=wd(k,d,1)|0;if((b|0)>=0)break a;c[i>>2]=d;mx(a,16,204469,i);break a}if((b|0)<1397316165){switch(b|0){case 1397116244:break;default:{e=27;break c}}b=cQ(a,g,d,k)|0;break a}if((b|0)<1448231252){switch(b|0){case 1397316165:break;default:{e=27;break c}}b=tz(a,d,k)|0;break a}switch(b|0){case 1448231252:break;default:{e=27;break c}}b=HD(a,d,h)|0;if((b|0)>=0){b=c[h>>2]|0;b=Pd(a,g,k,1.0,c[h+4>>2]|0,b,((b|0)<0)<<31>>31)|0}break a}while(0);if((e|0)==9){b=Nd(a,f,g,d,k)|0;break}else if((e|0)==27){mx(a,16,204569,j);b=-22;break}}else b=-22}else b=-1414549496;while(0);Nb=m;return b|0}function Ad(e,h,i,j,k){e=e|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0;J=Nb;Nb=Nb+32|0;o=J+16|0;n=J;l=c[e+83184>>2]|0;a:do if(!l){I=e+83180|0;if((c[I>>2]|0)==0?(c[e+83172>>2]|0)==0:0){F=0;G=0}else{G=j&-16;F=H(c[h+264>>2]|0,G)|0}m=e+32|0;l=c[m>>2]|0;m=c[m+4>>2]|0;if(!((l|0)==0&(m|0)==0)?(E=c[h+260>>2]|0,(E|0)!=(px(l,m)|0)):0){c[n>>2]=214509;c[n+4>>2]=214425;c[n+8>>2]=503;mx(0,0,214689,n);ba()}m=e+24|0;l=c[m>>2]|0;m=c[m+4>>2]|0;E=i+260|0;if(!((l|0)==0&(m|0)==0)?(D=c[E>>2]|0,(D|0)!=(px(l,m)|0)):0){c[o>>2]=214599;c[o+4>>2]=214425;c[o+8>>2]=504;mx(0,0,214689,o);ba()}C=h+260|0;D=e+16|0;s=(k|0)==0;t=(G|0)!=0;u=e+83172|0;v=e+62620|0;w=(G|0)==(j|0);x=e+83176|0;y=e+62608|0;z=h+264|0;A=j-G|0;B=e+83168|0;r=0;while(1){if((r|0)>=(c[C>>2]|0))break a;q=e+79008+(r*65|0)|0;b:do switch(a[q>>0]|0){case 0:{if(!s){q=c[h+(r<<2)>>2]|0;jq(q|0,0,H(bQ(c[D>>2]|0)|0,j)|0)|0}break}case 1:{l=d[e+79008+(r*65|0)+1>>0]|0;if(!(+g[e+13456+(r<<9)+(l<<3)>>3]!=1.0))if(s){c[h+(r<<2)>>2]=c[i+(l<<2)>>2];break b}else{Bk(c[h+(r<<2)>>2]|0,c[i+(l<<2)>>2]|0,H(c[z>>2]|0,j)|0)|0;break b}m=c[u>>2]|0;if(t&(m|0)!=0){q=(H(c[E>>2]|0,r)|0)+l|0;kc[m&127](c[h+(r<<2)>>2]|0,c[i+(l<<2)>>2]|0,c[v>>2]|0,q,G)}if(!w){q=(H(c[E>>2]|0,r)|0)+l|0;kc[c[B>>2]&127]((c[h+(r<<2)>>2]|0)+F|0,(c[i+(l<<2)>>2]|0)+F|0,c[y>>2]|0,q,A)}break}case 2:{l=d[e+79008+(r*65|0)+1>>0]|0;m=d[e+79008+(r*65|0)+2>>0]|0;n=c[I>>2]|0;if(t&(n|0)!=0){q=H(c[E>>2]|0,r)|0;nc[n&15](c[h+(r<<2)>>2]|0,c[i+(l<<2)>>2]|0,c[i+(m<<2)>>2]|0,c[v>>2]|0,q+l|0,q+m|0,G)}else{q=H(c[E>>2]|0,r)|0;nc[c[x>>2]&15](c[h+(r<<2)>>2]|0,c[i+(l<<2)>>2]|0,c[i+(m<<2)>>2]|0,c[y>>2]|0,q+l|0,q+m|0,G)}if(!w){q=H(c[E>>2]|0,r)|0;nc[c[x>>2]&15]((c[h+(r<<2)>>2]|0)+F|0,(c[i+(l<<2)>>2]|0)+F|0,(c[i+(m<<2)>>2]|0)+F|0,c[y>>2]|0,q+l|0,q+m|0,A)}break}default:switch(c[D>>2]|0){case 8:{n=h+(r<<2)|0;m=0;while(1){if((m|0)>=(j|0))break b;o=d[q>>0]|0;p=0.0;l=0;while(1){if((l|0)==(o|0))break;k=l+1|0;K=d[e+79008+(r*65|0)+k>>0]|0;p=p+ +f[(c[i+(K<<2)>>2]|0)+(m<<2)>>2]*+f[e+46224+(r<<8)+(K<<2)>>2];l=k}f[(c[n>>2]|0)+(m<<2)>>2]=p;m=m+1|0}}case 9:{n=h+(r<<2)|0;m=0;while(1){if((m|0)>=(j|0))break b;o=d[q>>0]|0;p=0.0;l=0;while(1){if((l|0)==(o|0))break;K=l+1|0;k=d[e+79008+(r*65|0)+K>>0]|0;p=p+ +g[(c[i+(k<<2)>>2]|0)+(m<<3)>>3]*+g[e+13456+(r<<9)+(k<<3)>>3];l=K}g[(c[n>>2]|0)+(m<<3)>>3]=p;m=m+1|0}}default:{o=h+(r<<2)|0;n=0;while(1){if((n|0)>=(j|0))break b;k=d[q>>0]|0;l=0;m=0;while(1){if((m|0)==(k|0))break;K=m+1|0;L=d[e+79008+(r*65|0)+K>>0]|0;l=(H(c[e+62624+(r<<8)+(L<<2)>>2]|0,b[(c[i+(L<<2)>>2]|0)+(n<<1)>>1]|0)|0)+l|0;m=K}b[(c[o>>2]|0)+(n<<1)>>1]=(l+16384|0)>>>15;n=n+1|0}}}}while(0);r=r+1|0}}else ic[l&255](h,i,c[e+62608>>2]|0,j);while(0);Nb=J;return 0}function Bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=Nb;Nb=Nb+160|0;h=B+64|0;q=B+152|0;v=B+56|0;n=B+40|0;m=B+32|0;k=B+24|0;j=B+16|0;i=B+8|0;r=B+144|0;A=B+136|0;c[A>>2]=0;w=c[b>>2]|0;z=b+24|0;x=c[z>>2]|0;y=b+28|0;u=c[y>>2]|0;s=(x|0)!=0;t=(s^1)&1;c[e>>2]=0;p=a+12|0;f=c[p>>2]|0;a:do if(!(c[f+84>>2]|0)){mx(a,16,168303,B);f=-38}else{g=(d|0)!=0;if(!(g|(c[f+16>>2]&32|0)!=0)){AP(b);Zw(b);f=0;break}do if(g){if(!(c[d+64>>2]|0)){if(aQ(c[a+424>>2]|0)|0?(c[a+420>>2]|0)>8:0){c[i>>2]=8;mx(a,16,168362,i);f=-22;break a}mx(a,24,168457,j);f=BP()|0;if(!f){f=-12;break a}Bk(f|0,d|0,400)|0;c[f+64>>2]=f;j=f;g=f}else{j=d;g=0}f=DE(j,10)|0;if(f|0?(c[f+8>>2]|0)>>>0>3:0)c[a+464>>2]=c[c[f+4>>2]>>2];f=c[p>>2]|0;i=c[f+16>>2]|0;if(i&64|0){if((c[j+76>>2]|0)<=(c[a+428>>2]|0)){d=j;o=26;break}mx(a,16,168484,k);f=-22;break}if(!(i&65536)){i=c[j+76>>2]|0;d=a+428|0;f=c[d>>2]|0;if((i|0)<(f|0)?(l=a+64|0,(c[(c[l>>2]|0)+8>>2]|0)==0):0){f=zn(a,A,j)|0;if((f|0)<0)break;i=c[A>>2]|0;c[(c[l>>2]|0)+8>>2]=1;j=i;i=c[i+76>>2]|0;f=c[d>>2]|0}if((i|0)==(f|0)){d=j;f=c[p>>2]|0;o=26;break}else{c[m>>2]=i;c[m+4>>2]=f;mx(a,16,168538,m);f=-22;break}}else{d=j;o=26}}else{g=0;d=0;o=26}while(0);b:do if((o|0)==26){f=c[f+84>>2]|0;if(!f){c[n>>2]=168598;c[n+4>>2]=168205;c[n+8>>2]=196;mx(0,0,214689,n);ba()}f=_b[f&7](a,b,d,e)|0;do if(!f){if(!(c[e>>2]|0)){c[y>>2]=0;break}j=b+8|0;if(!(c[(c[p>>2]|0)+16>>2]&32)){p=j;if((c[p>>2]|0)==0?(c[p+4>>2]|0)==-2147483648:0){n=d+104|0;o=c[n+4>>2]|0;p=j;c[p>>2]=c[n>>2];c[p+4>>2]=o}i=b+48|0;p=i;if((c[p>>2]|0)==0&(c[p+4>>2]|0)==0){p=c[d+76>>2]|0;c[r>>2]=1;c[r+4>>2]=c[a+416>>2];o=a+108|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[h>>2]=c[o>>2];c[h+4>>2]=c[o+4>>2];p=Sy(p,((p|0)<0)<<31>>31,q,h)|0;q=M()|0;r=i;c[r>>2]=p;c[r+4>>2]=q}}p=j;q=c[p+4>>2]|0;r=b+16|0;c[r>>2]=c[p>>2];c[r+4>>2]=q}while(0);i=c[z>>2]|0;do if((i|0)!=0?(i|0)==(c[(c[a+64>>2]|0)+44>>2]|0):0)if(!s){if(c[b>>2]|0){h=0;break}i=h;j=i+72|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));f=kq(h,b)|0;AP(b);if((f|0)<0)break b;else{i=b;j=i+72|0;do{c[i>>2]=c[h>>2];i=i+4|0;h=h+4|0}while((i|0)<(j|0));h=0;break}}else{h=c[y>>2]|0;if((u|0)<(h|0)){c[v>>2]=h;mx(a,16,168620,v);c[y>>2]=u;f=-1}else Bk(x|0,i|0,h|0)|0;c[b>>2]=w;c[z>>2]=x;h=0;break}else h=t;while(0);if(!f){if((h|0)!=0?(c[z>>2]|0)!=0:0){f=Wl(b,(c[y>>2]|0)+32|0)|0;if((f|0)>-1)c[z>>2]=c[(c[b>>2]|0)+4>>2]}else f=0;z=a+432|0;c[z>>2]=(c[z>>2]|0)+1}if((f|0)>=0?c[e>>2]|0:0){e=b+36|0;c[e>>2]=c[e>>2]|1;break}AP(b);Zw(b)}while(0);iQ(A);FV(g);c[a+120>>2]=c[a+876>>2]}while(0);Nb=B;return f|0}function Cd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+1072|0;p=r+1040|0;q=r;h=r+1059|0;l=r+1054|0;m=r+1049|0;n=r+1044|0;o=r+1024|0;jq(q|0,0,1024)|0;if(((d>>>0<=64?(c[p>>2]=0,f=Is(b,d,1,p)|0,(f|0)>=0):0)?(g=Is(b,d,2,p)|0,(g|0)>=0):0)?(e=Is(b,d,3,p)|0,(e|0)>=0):0){i=(g|0)==0&(e|0)>3;k=i?e+-2|0:e;i=i?2:g;c[p>>2]=0;if(!(f&1))e=0;else{e=a[b+1>>0]|0;g=q;c[g>>2]=4;c[g+4>>2]=0;a[q+8>>0]=0;a[q+9>>0]=e;a[q+10>>0]=1;e=q+11|0;a[e>>0]=a[h>>0]|0;a[e+1>>0]=a[h+1>>0]|0;a[e+2>>0]=a[h+2>>0]|0;a[e+3>>0]=a[h+3>>0]|0;a[e+4>>0]=a[h+4>>0]|0;c[p>>2]=1;f=f+-1|0;e=1}if((f|0)<=3)if((f|0)>1){g=q;j=10}else h=q;else{e=Rj(q,b,e,64,0,128,0,1)|0;e=(c[p>>2]|0)+e|0;c[p>>2]=e;f=f+-2|0;g=q;j=10}if((j|0)==10){e=Rj(g,b,e,1,0,2,0,1)|0;e=(c[p>>2]|0)+e|0;c[p>>2]=e;f=f+-2|0;h=g}while(1){if((f|0)<=1)break;j=Rj(h,b,e,-1,-1,-1,-1,1)|0;j=(c[p>>2]|0)+j|0;c[p>>2]=j;f=f+-2|0;e=j}if((i|0)>1){e=Rj(h,b,e,512,0,1024,0,1)|0;e=(c[p>>2]|0)+e|0;c[p>>2]=e;f=i+-2|0}else f=i;while(1){if((f|0)<=1)break;j=Rj(h,b,e,-1,-1,-1,-1,2)|0;j=(c[p>>2]|0)+j|0;c[p>>2]=j;f=f+-2|0;e=j}g=~k;g=k+((g|0)>-4?g:-4)+2&-2;f=k;while(1){if((f|0)<=3)break;j=Rj(h,b,e,-1,-1,-1,-1,3)|0;j=(c[p>>2]|0)+j|0;c[p>>2]=j;f=f+-2|0;e=j}f=k-g|0;if((f|0)>1){e=Rj(h,b,e,16,0,32,0,3)|0;e=(c[p>>2]|0)+e|0;c[p>>2]=e;f=f+-2|0}if(f){k=q+(e<<4)|0;j=a[b+(e*3|0)+1>>0]|0;i=k;c[i>>2]=256;c[i+4>>2]=0;a[q+(e<<4)+8>>0]=0;a[q+(e<<4)+9>>0]=j;a[q+(e<<4)+10>>0]=3;k=k+11|0;a[k>>0]=a[l>>0]|0;a[k+1>>0]=a[l+1>>0]|0;a[k+2>>0]=a[l+2>>0]|0;a[k+3>>0]=a[l+3>>0]|0;a[k+4>>0]=a[l+4>>0]|0;e=e+1|0;c[p>>2]=e}if((e|0)<(d|0)?(a[b+(e*3|0)+2>>0]|0)==4:0){l=q+(e<<4)|0;k=a[b+(e*3|0)+1>>0]|0;j=l;c[j>>2]=8;c[j+4>>2]=0;a[q+(e<<4)+8>>0]=3;a[q+(e<<4)+9>>0]=k;a[q+(e<<4)+10>>0]=4;l=l+11|0;a[l>>0]=a[m>>0]|0;a[l+1>>0]=a[m+1>>0]|0;a[l+2>>0]=a[m+2>>0]|0;a[l+3>>0]=a[m+3>>0]|0;a[l+4>>0]=a[m+4>>0]|0;e=e+1|0;c[p>>2]=e}i=e;while(1){if((i|0)>=(d|0))break;if((a[b+(i*3|0)+2>>0]|0)!=4)break;m=q+(i<<4)|0;l=a[b+(i*3|0)+1>>0]|0;k=m;c[k>>2]=-1;c[k+4>>2]=-1;a[q+(i<<4)+8>>0]=3;a[q+(i<<4)+9>>0]=l;a[q+(i<<4)+10>>0]=4;m=m+11|0;a[m>>0]=a[n>>0]|0;a[m+1>>0]=a[n+1>>0]|0;a[m+2>>0]=a[n+2>>0]|0;a[m+3>>0]=a[n+3>>0]|0;a[m+4>>0]=a[n+4>>0]|0;m=i+1|0;c[p>>2]=m;i=m}g=i;while(1){e=0;h=1;while(1){if((h|0)>=(g|0))break;f=h+-1|0;n=q+(f<<4)|0;l=c[n+4>>2]|0;d=q+(h<<4)|0;m=c[d+4>>2]|0;if(l>>>0>m>>>0|((l|0)==(m|0)?(c[n>>2]|0)>>>0>(c[d>>2]|0)>>>0:0)){d=q+(h<<4)|0;c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];e=q+(f<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];e=h}h=h+1|0}if((e|0)>0)g=e;else break}c[p>>2]=h;e=0;f=0;g=0;while(1){if((g|0)>=(i|0))break;a[b+(g*3|0)>>0]=a[q+(g<<4)+8>>0]|0;a[b+(g*3|0)+1>>0]=a[q+(g<<4)+9>>0]|0;a[b+(g*3|0)+2>>0]=a[q+(g<<4)+10>>0]|0;o=q+(g<<4)|0;n=c[o>>2]|0;o=c[o+4>>2]|0;d=(n|0)==-1&(o|0)==-1;e=(d?0:n)|e;f=(d?0:o)|f;g=g+1|0}c[p>>2]=g}else{f=0;e=0}L(f|0);Nb=r;return e|0}function Dd(b,e){b=b|0;e=e|0;var i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0;x=Nb;Nb=Nb+32|0;u=x+24|0;v=x+8|0;t=x;e=(e|0)==1;a:do if(e?(c[b+48>>2]|0)!=0:0){q=b+188|0;r=(c[q>>2]|0)==0?24:12;o=b+104|0;n=1;while(1){if(n>>>0>(c[o>>2]|0)>>>0)break;p=b+108+n|0;m=0;while(1){if(m>>>0>=(c[b+310112+((d[p>>0]|0)<<2)>>2]|0)>>>0)break;j=a[b+86512+(n*48|0)+m>>0]|0;e=j&255;do if(c[q>>2]|0){if((e+133|0)>>>0<255)i=(c[h>>2]=(e<<23)+1124073472,+f[h>>2]);else i=s;e=r-(d[b+174480+(n*48|0)+m>>0]|0)|0;if((e+126|0)>>>0<255){l=(c[h>>2]=(e<<23)+1065353216,+f[h>>2]);break}if((e|0)>128)l=s;else l=(e|0)>-150?(c[h>>2]=1<<e+149,+f[h>>2]):0.0}else{e=e>>>1;if((e+133|0)>>>0<255)i=(c[h>>2]=(e<<23)+1124073472,+f[h>>2]);else i=s;i=+g[51600+((j&1)<<3)>>3]*i;k=a[b+174480+(n*48|0)+m>>0]|0;e=r-(k&255)|0;j=e>>1;if((j+126|0)>>>0>=255)if((e|0)>257)l=s;else l=(e|0)>-299?(c[h>>2]=1<<j+149,+f[h>>2]):0.0;else l=(c[h>>2]=(j<<23)+1065353216,+f[h>>2]);l=+g[51600+((k&1)<<3)>>3]*l}while(0);if(i>1.0e20){mx(0,16,191307,t);i=1.0}i=i/(l+1.0);f[b+86800+(n*192|0)+(m<<2)>>2]=i;f[b+174768+(n*192|0)+(m<<2)>>2]=l*i;m=m+1|0}n=n+1|0}o=b+310120|0;m=c[b+116>>2]|0;k=1;b:while(1){if(k>>>0>m>>>0)break a;n=c[o>>2]|0;j=0;while(1){if(j>>>0>=n>>>0)break;e=6-(d[b+87952+(k*5|0)+j>>0]|0)|0;if((e+127|0)>>>0>=255)if((e|0)>127)l=s;else l=(e|0)>-151?(c[h>>2]=1<<e+150,+f[h>>2]):0.0;else l=(c[h>>2]=(e<<23)+1073741824,+f[h>>2]);e=12-(d[b+175920+(k*5|0)+j>>0]|0)|0;if((e+126|0)>>>0>=255)if((e|0)>128)i=s;else i=(e|0)>-150?(c[h>>2]=1<<e+149,+f[h>>2]):0.0;else i=(c[h>>2]=(e<<23)+1065353216,+f[h>>2]);if(!(l<=1.0e20))break b;l=l/(i+1.0);f[b+87968+(k*20|0)+(j<<2)>>2]=l;f[b+175936+(k*20|0)+(j<<2)>>2]=i*l;j=j+1|0}k=k+1|0}c[v>>2]=191349;c[v+4>>2]=191363;c[v+8>>2]=107;mx(0,0,214689,v);ba()}else w=41;while(0);c:do if((w|0)==41){r=e?2:1;t=b+310120|0;q=0;while(1){if((q|0)==(r|0))break c;n=b+96+(q*87968|0)+8|0;o=b+96+(q*87968|0)+92|0;m=1;while(1){if(m>>>0>(c[n>>2]|0)>>>0)break;p=b+96+(q*87968|0)+12+m|0;k=0;while(1){if(k>>>0>=(c[b+310112+((d[p>>0]|0)<<2)>>2]|0)>>>0)break;j=a[b+96+(q*87968|0)+86416+(m*48|0)+k>>0]|0;e=j&255;if(!(c[o>>2]|0)){e=e>>>1;if((e+132|0)>>>0<255)i=(c[h>>2]=(e<<23)+1115684864,+f[h>>2]);else i=s;i=+g[51600+((j&1)<<3)>>3]*i;e=b+96+(q*87968|0)+86704+(m*192|0)+(k<<2)|0;f[e>>2]=i}else{if((e+132|0)>>>0<255)i=(c[h>>2]=(e<<23)+1115684864,+f[h>>2]);else i=s;e=b+96+(q*87968|0)+86704+(m*192|0)+(k<<2)|0;f[e>>2]=i}if(i>1.0e20){mx(0,16,191307,u);f[e>>2]=1.0}k=k+1|0}m=m+1|0}m=(c[b+96+(q*87968|0)+20>>2]|0)+1|0;k=1;while(1){if((k|0)==(m|0))break;n=c[t>>2]|0;j=0;while(1){if((j|0)==(n|0))break;e=6-(d[b+96+(q*87968|0)+87856+(k*5|0)+j>>0]|0)|0;if((e+126|0)>>>0>=255)if((e|0)>128)i=s;else i=(e|0)>-150?(c[h>>2]=1<<e+149,+f[h>>2]):0.0;else i=(c[h>>2]=(e<<23)+1065353216,+f[h>>2]);f[b+96+(q*87968|0)+87872+(k*20|0)+(j<<2)>>2]=i;j=j+1|0}k=k+1|0}q=q+1|0}}while(0);Nb=x;return}function Ed(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;q=8-g|0;p=8-h|0;s=H(p,q)|0;p=H(p,g)|0;q=H(q,h)|0;o=H(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;q=((H(s,e[c>>1]|0)|0)+32|0)>>>6&65535;b[a>>1]=q;q=((H(s,e[c+2>>1]|0)|0)+32|0)>>>6&65535;b[a+2>>1]=q;q=((H(s,e[c+4>>1]|0)|0)+32|0)>>>6&65535;b[a+4>>1]=q;q=((H(s,e[c+6>>1]|0)|0)+32|0)>>>6&65535;b[a+6>>1]=q;q=((H(s,e[c+8>>1]|0)|0)+32|0)>>>6&65535;b[a+8>>1]=q;q=((H(s,e[c+10>>1]|0)|0)+32|0)>>>6&65535;b[a+10>>1]=q;q=((H(s,e[c+12>>1]|0)|0)+32|0)>>>6&65535;b[a+12>>1]=q;q=((H(s,e[c+14>>1]|0)|0)+32|0)>>>6&65535;b[a+14>>1]=q;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=(q|0)==0?1:r;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=H(s,e[c>>1]|0)|0;q=(q+32+(H(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6&65535;b[a>>1]=q;q=H(s,e[c+2>>1]|0)|0;q=(q+32+(H(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6&65535;b[a+2>>1]=q;q=H(s,e[c+4>>1]|0)|0;q=(q+32+(H(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6&65535;b[a+4>>1]=q;q=H(s,e[c+6>>1]|0)|0;q=(q+32+(H(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6&65535;b[a+6>>1]=q;q=H(s,e[c+8>>1]|0)|0;q=(q+32+(H(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6&65535;b[a+8>>1]=q;q=H(s,e[c+10>>1]|0)|0;q=(q+32+(H(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6&65535;b[a+10>>1]=q;q=H(s,e[c+12>>1]|0)|0;q=(q+32+(H(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6&65535;b[a+12>>1]=q;q=H(s,e[c+14>>1]|0)|0;q=(q+32+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6&65535;b[a+14>>1]=q;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=H(s,e[c>>1]|0)|0;u=c+2|0;x=H(p,e[u>>1]|0)|0;t=c+(r<<1)|0;y=H(q,e[t>>1]|0)|0;w=c+(h<<1)|0;y=(v+32+x+y+(H(o,e[w>>1]|0)|0)|0)>>>6&65535;b[a>>1]=y;u=H(s,e[u>>1]|0)|0;y=c+4|0;x=H(p,e[y>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(d<<1)|0;w=(u+32+x+w+(H(o,e[v>>1]|0)|0)|0)>>>6&65535;b[a+2>>1]=w;y=H(s,e[y>>1]|0)|0;w=c+6|0;x=H(p,e[w>>1]|0)|0;v=H(q,e[v>>1]|0)|0;u=c+(i<<1)|0;v=(y+32+x+v+(H(o,e[u>>1]|0)|0)|0)>>>6&65535;b[a+4>>1]=v;w=H(s,e[w>>1]|0)|0;v=c+8|0;x=H(p,e[v>>1]|0)|0;u=H(q,e[u>>1]|0)|0;y=c+(j<<1)|0;u=(w+32+x+u+(H(o,e[y>>1]|0)|0)|0)>>>6&65535;b[a+6>>1]=u;v=H(s,e[v>>1]|0)|0;u=c+10|0;x=H(p,e[u>>1]|0)|0;y=H(q,e[y>>1]|0)|0;w=c+(k<<1)|0;y=(v+32+x+y+(H(o,e[w>>1]|0)|0)|0)>>>6&65535;b[a+8>>1]=y;u=H(s,e[u>>1]|0)|0;y=c+12|0;x=H(p,e[y>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(l<<1)|0;w=(u+32+x+w+(H(o,e[v>>1]|0)|0)|0)>>>6&65535;b[a+10>>1]=w;y=H(s,e[y>>1]|0)|0;w=c+14|0;x=H(p,e[w>>1]|0)|0;v=H(q,e[v>>1]|0)|0;u=c+(m<<1)|0;v=(y+32+x+v+(H(o,e[u>>1]|0)|0)|0)>>>6&65535;b[a+12>>1]=v;w=H(s,e[w>>1]|0)|0;v=H(p,e[c+16>>1]|0)|0;u=H(q,e[u>>1]|0)|0;u=(w+32+v+u+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6&65535;b[a+14>>1]=u;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function Fd(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+104|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=ol(a)|0;j=0;a:while(1){switch(i|0){case 46:{w=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=ol(a)|0;j=1}if((w|0)==10){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=ol(a)|0;if((i|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=ol(a)|0;l=kP(l|0,j|0,-1,-1)|0;j=M()|0}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;h=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else w=24}else w=24;if((w|0)==24){w=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;h=h+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;h=i?h:h+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=kP(m|0,u|0,1,0)|0;q=i;r=1;p=M()|0}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=ol(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i?(c[y>>2]=(c[y>>2]|0)+-1,!((s|0)==0|i)):0)c[y>>2]=(c[y>>2]|0)+-1}else sw(a,0,0);h=+(f|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;do{j=j<<4;w=m;m=kP(m|0,l|0,1,0)|0;v=l;l=M()|0}while((v|0)<0|(v|0)==0&w>>>0<7);m=j}else m=v;if((i|32|0)==112){j=Rg(a,g)|0;i=M()|0;if((j|0)==0&(i|0)==-2147483648){if(!g){sw(a,0,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=uN(p|0,o|0,2)|0;l=kP(l|0,M()|0,-32,-1)|0;l=kP(l|0,M()|0,j|0,i|0)|0;i=M()|0;if(!m){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){b=PV()|0;c[b>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0<y>>>0){b=PV()|0;c[b>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=kP(l|0,i|0,-1,-1)|0;i=M()|0}while((j|0)>-1);n=h;m=j}else n=h;y=((b|0)<0)<<31>>31;e=iP(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=kP(e|0,M()|0,l|0,i|0)|0;e=M()|0;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0<b>>>0)if((i|0)>0)w=65;else{j=0;i=84;w=67}else{i=b;w=65}if((w|0)==65)if((i|0)<53){j=i;i=84-i|0;w=67}else{k=0.0;h=+(f|0)}if((w|0)==67){h=+(f|0);k=+LU(+mu(1.0,i),h);i=j}f=(m&1|0)==0&(n!=0.0&(i|0)<32);h=(f?0.0:n)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0)){f=PV()|0;c[f>>2]=34}h=+MU(h,l)}while(0);return +h}function Gd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=Nb;Nb=Nb+128|0;C=D+56|0;o=D+48|0;n=D+40|0;l=D+32|0;m=D+24|0;k=D+16|0;i=D+8|0;f=D;x=D+116|0;B=qp(a)|0;a:do if(B>>>0<=255){f=cP(173836)|0;c[x>>2]=f;A=f;if(!f)f=-12;else{z=c[f+4>>2]|0;g=c[a>>2]|0;f=(c[a+4>>2]|0)-g|0;h=z+4824|0;c[h>>2]=f;if(f>>>0>4096){c[i>>2]=f;c[i+4>>2]=4096;mx(b,24,170278,i);c[h>>2]=4096;g=c[a>>2]|0;f=4096}Bk(z+728|0,g|0,f|0)|0;f=ey(a)|0;c[z>>2]=f;b:do if(f>>>0<=31?(j=c[d+(f<<2)>>2]|0,(j|0)!=0):0){v=c[j+4>>2]|0;w=v+1184|0;f=c[w>>2]|0;if((f|0)>14){c[m>>2]=f;mx(b,16,170323,m);f=-1094995529;break}switch(f|0){case 13:case 11:{c[l>>2]=f;PM(b,170350,l);f=-1163346256;break b}default:{}}s=NL(a)|0;t=z+4|0;c[t>>2]=s;s=NL(a)|0;c[z+8>>2]=s;s=qp(a)|0;u=z+12|0;c[u>>2]=s+1;if((s|0)>0){s=qp(a)|0;c[z+16>>2]=s;mx(b,16,170382,n)}q=(qp(a)|0)+1|0;r=z+20|0;c[r>>2]=q;q=qp(a)|0;s=z+24|0;c[s>>2]=q+1;if(((c[r>>2]|0)+-1|q)>>>0>31){mx(b,16,170401,o);f=-1094995529;break}q=(c[w>>2]|0)*6|0;m=NL(a)|0;k=z+28|0;c[k>>2]=m;m=Yz(a,2)|0;c[z+32>>2]=m;q=q+-22|0;m=q+(pp(a)|0)|0;l=z+36|0;c[l>>2]=m;q=q+(pp(a)|0)|0;m=z+40|0;c[m>>2]=q;q=pp(a)|0;j=z+44|0;c[j>>2]=q;if((q+12|0)>>>0>24)f=-1094995529;else{q=NL(a)|0;n=z+52|0;c[n>>2]=q;q=NL(a)|0;o=z+56|0;c[o>>2]=q;q=NL(a)|0;p=z+60|0;c[p>>2]=q;q=z+64|0;c[q>>2]=0;i=z+68|0;f=i;g=v+672|0;h=f+96|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));f=z+164|0;Bk(f|0,v+768|0,384)|0;if((SU(a)|0)<(e|0)?(qE(v,b)|0)!=0:0){e=NL(a)|0;c[q>>2]=e;f=vm(a,v,z,0,i,f)|0;if((f|0)<0)break;a=pp(a)|0;h=z+48|0;c[h>>2]=a;if((a+12|0)>>>0>24){f=-1094995529;break}f=c[j>>2]|0}else{f=c[j>>2]|0;h=z+48|0;c[h>>2]=f}mz(z,0,f,c[w>>2]|0);mz(z,1,c[h>>2]|0,c[w>>2]|0);yp(z,v);g=c[j>>2]|0;f=c[h>>2]|0;if((g|0)!=(f|0))c[z+724>>2]=1;if(c[b+680>>2]&1|0){h=c[z>>2]|0;i=(c[t>>2]|0)==0?170427:170433;j=c[u>>2]|0;t=c[r>>2]|0;u=c[s>>2]|0;v=(c[k>>2]|0)==0?1137073:170439;w=c[l>>2]|0;e=c[m>>2]|0;a=(c[n>>2]|0)==0?1137073:170448;x=(c[o>>2]|0)==0?1137073:170453;y=(c[p>>2]|0)==0?1137073:170460;z=(c[q>>2]|0)==0?1137073:170465;c[C>>2]=B;c[C+4>>2]=h;c[C+8>>2]=i;c[C+12>>2]=j;c[C+16>>2]=t;c[C+20>>2]=u;c[C+24>>2]=v;c[C+28>>2]=w;c[C+32>>2]=e;c[C+36>>2]=g;c[C+40>>2]=f;c[C+44>>2]=a;c[C+48>>2]=x;c[C+52>>2]=y;c[C+56>>2]=z;mx(b,48,170472,C)}KT(d,B);c[d+128+(B<<2)>>2]=A;f=0;break a}}else y=8;while(0);if((y|0)==8){c[k>>2]=f;mx(b,16,169475,k);f=-1094995529}nT(x)}}else{c[f>>2]=B;mx(b,16,200521,f);f=-1094995529}while(0);Nb=D;return f|0}function Hd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,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=Nb;Nb=Nb+64|0;G=I+48|0;H=I+40|0;C=I+32|0;B=I+16|0;A=I+8|0;z=I;u=I+60|0;is(b);As(b);xe(b,d);D=d+23412|0;v=d+34752|0;x=d+34756|0;E=b+4|0;y=b+29540|0;F=b+26364|0;s=0;a:while(1){e=c[D>>2]|0;if(s>>>0>=e>>>0){q=3;break}n=d+27768+(s<<2)|0;r=d+23404+(s<<2)|0;m=0;e=c[v>>2]|0;while(1){if((m|0)>=(c[n>>2]|0))break;f=a[d+27256+(s<<8)+(m<<3)>>0]|0;i=c[d+27256+(s<<8)+(m<<3)+4>>2]|0;b:do switch(f<<24>>24){case 1:case 0:{g=i+1|0;h=c[x>>2]|0;if(g>>>0>h>>>0){q=13;break a}e=h+-1&(f<<24>>24==0?~i:g)+e;h=eK(b,e,u)|0;i=c[u>>2]|0;f=c[y>>2]|0;while(1){g=f+-1|0;if((f|0)<=0){q=21;break b}f=c[b+28332+(g<<2)>>2]|0;if((c[f+88>>2]|0)==(h|0)?i&c[f+640>>2]|0:0)break;f=g}c[f+96>>2]=e;l=f;j=f+96|0;k=i;q=22;break}case 2:{f=eK(b,i,u)|0;if(f>>>0>31){q=18;break a}f=c[b+28460+(f<<2)>>2]|0;if((f|0)!=0?(w=c[u>>2]|0,(w&c[f+640>>2]|0)!=0):0){j=f+96|0;c[j>>2]=i;l=f;k=w;q=22}else q=21;break}default:{q=19;break a}}while(0);if((q|0)==21){mx(c[E>>2]|0,16,197806,C);f=d+23416+(s*1920|0)+(m*40|0)|0;p=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(p|0))}else if((q|0)==22){g=c[r>>2]|0;h=l+100|0;f=m;while(1){i=f+1|0;if(i>>>0>=g>>>0)break;q=c[d+23416+(s*1920|0)+(f*40|0)+36>>2]|0;if((q|0?(c[h>>2]|0)==(c[q+100>>2]|0):0)?(c[j>>2]|0)==(c[d+23416+(s*1920|0)+(f*40|0)+32>>2]|0):0)break;f=i}while(1){if((f|0)<=(m|0))break;g=f+-1|0;f=d+23416+(s*1920|0)+(f*40|0)|0;o=d+23416+(s*1920|0)+(g*40|0)|0;p=f+40|0;do{c[f>>2]=c[o>>2];f=f+4|0;o=o+4|0}while((f|0)<(p|0));f=g}f=d+23416+(s*1920|0)+(m*40|0)|0;Sv(f,l);if((c[F>>2]|0)!=3)lx(f,k)}m=m+1|0}s=s+1|0}c:do if((q|0)==3){n=0;d:while(1){if(n>>>0>=e>>>0)break;i=d+23404+(n<<2)|0;j=b+28252+(n*40|0)|0;k=b+28252+(n*40|0)+28|0;l=b+28252+(n*40|0)+36|0;m=b+28252+(n*40|0)+24|0;h=0;while(1){if(h>>>0>=(c[i>>2]|0)>>>0)break;f=d+23416+(n*1920|0)+(h*40|0)|0;g=d+23416+(n*1920|0)+(h*40|0)+36|0;e=c[g>>2]|0;if(e){if((c[F>>2]|0)==3?(c[d+23416+(n*1920|0)+(h*40|0)+24>>2]&3|0)!=3:0)q=41}else q=41;if((q|0)==41){q=0;e=c[E>>2]|0;c[H>>2]=c[k>>2];mx(e,16,197848,H);e=0;while(1){if((e|0)==16)break;c[b+28660+(e<<2)>>2]=-2147483648;e=e+1|0}if(!(c[l>>2]|0)){t=-1;break c}if((c[F>>2]|0)==3?(c[m>>2]&3|0)!=3:0){t=-1;break c}o=j;p=f+40|0;do{c[f>>2]=c[o>>2];f=f+4|0;o=o+4|0}while((f|0)<(p|0));e=c[g>>2]|0}if(($T(c[(c[e>>2]|0)+248>>2]|0)|0)>0)h=h+1|0;else{q=49;break d}}n=n+1|0;e=c[D>>2]|0}if((q|0)==49){c[G>>2]=197890;c[G+4>>2]=197783;c[G+8>>2]=411;mx(0,0,214689,G);ba()}if(!(c[b+26360>>2]|0))t=0;else{dl(d);t=0}}else if((q|0)==13){mx(c[E>>2]|0,16,197728,z);t=-1094995529}else if((q|0)==18){mx(c[E>>2]|0,16,197755,A);t=-1094995529}else if((q|0)==19){c[B>>2]=214810;c[B+4>>2]=197783;c[B+8>>2]=373;mx(0,0,214689,B);ba()}while(0);Nb=I;return t|0}function Id(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;r=8-g|0;q=8-h|0;s=H(q,r)|0;q=H(q,g)|0;r=H(r,h)|0;h=H(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;r=((H(s,d[c>>0]|0)|0)+32|0)>>>6&255;a[b>>0]=r;r=((H(s,d[c+1>>0]|0)|0)+32|0)>>>6&255;a[b+1>>0]=r;r=((H(s,d[c+2>>0]|0)|0)+32|0)>>>6&255;a[b+2>>0]=r;r=((H(s,d[c+3>>0]|0)|0)+32|0)>>>6&255;a[b+3>>0]=r;r=((H(s,d[c+4>>0]|0)|0)+32|0)>>>6&255;a[b+4>>0]=r;r=((H(s,d[c+5>>0]|0)|0)+32|0)>>>6&255;a[b+5>>0]=r;r=((H(s,d[c+6>>0]|0)|0)+32|0)>>>6&255;a[b+6>>0]=r;r=((H(s,d[c+7>>0]|0)|0)+32|0)>>>6&255;a[b+7>>0]=r;b=b+e|0;g=g+1|0;c=c+e|0}}else{h=(r|0)==0?1:e;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(s,d[c>>0]|0)|0;r=(r+32+(H(p,d[c+h>>0]|0)|0)|0)>>>6&255;a[b>>0]=r;r=H(s,d[c+1>>0]|0)|0;r=(r+32+(H(p,d[c+i>>0]|0)|0)|0)>>>6&255;a[b+1>>0]=r;r=H(s,d[c+2>>0]|0)|0;r=(r+32+(H(p,d[c+j>>0]|0)|0)|0)>>>6&255;a[b+2>>0]=r;r=H(s,d[c+3>>0]|0)|0;r=(r+32+(H(p,d[c+k>>0]|0)|0)|0)>>>6&255;a[b+3>>0]=r;r=H(s,d[c+4>>0]|0)|0;r=(r+32+(H(p,d[c+l>>0]|0)|0)|0)>>>6&255;a[b+4>>0]=r;r=H(s,d[c+5>>0]|0)|0;r=(r+32+(H(p,d[c+m>>0]|0)|0)|0)>>>6&255;a[b+5>>0]=r;r=H(s,d[c+6>>0]|0)|0;r=(r+32+(H(p,d[c+n>>0]|0)|0)|0)>>>6&255;a[b+6>>0]=r;r=H(s,d[c+7>>0]|0)|0;r=(r+32+(H(p,d[c+o>>0]|0)|0)|0)>>>6&255;a[b+7>>0]=r;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=H(s,d[c>>0]|0)|0;u=c+1|0;x=H(q,d[u>>0]|0)|0;t=c+e|0;y=H(r,d[t>>0]|0)|0;w=c+i|0;y=(v+32+x+y+(H(h,d[w>>0]|0)|0)|0)>>>6&255;a[b>>0]=y;u=H(s,d[u>>0]|0)|0;y=c+2|0;x=H(q,d[y>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+j|0;w=(u+32+x+w+(H(h,d[v>>0]|0)|0)|0)>>>6&255;a[b+1>>0]=w;y=H(s,d[y>>0]|0)|0;w=c+3|0;x=H(q,d[w>>0]|0)|0;v=H(r,d[v>>0]|0)|0;u=c+k|0;v=(y+32+x+v+(H(h,d[u>>0]|0)|0)|0)>>>6&255;a[b+2>>0]=v;w=H(s,d[w>>0]|0)|0;v=c+4|0;x=H(q,d[v>>0]|0)|0;u=H(r,d[u>>0]|0)|0;y=c+l|0;u=(w+32+x+u+(H(h,d[y>>0]|0)|0)|0)>>>6&255;a[b+3>>0]=u;v=H(s,d[v>>0]|0)|0;u=c+5|0;x=H(q,d[u>>0]|0)|0;y=H(r,d[y>>0]|0)|0;w=c+m|0;y=(v+32+x+y+(H(h,d[w>>0]|0)|0)|0)>>>6&255;a[b+4>>0]=y;u=H(s,d[u>>0]|0)|0;y=c+6|0;x=H(q,d[y>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+n|0;w=(u+32+x+w+(H(h,d[v>>0]|0)|0)|0)>>>6&255;a[b+5>>0]=w;y=H(s,d[y>>0]|0)|0;w=c+7|0;x=H(q,d[w>>0]|0)|0;v=H(r,d[v>>0]|0)|0;u=c+o|0;v=(y+32+x+v+(H(h,d[u>>0]|0)|0)|0)>>>6&255;a[b+6>>0]=v;w=H(s,d[w>>0]|0)|0;v=H(q,d[c+8>>0]|0)|0;u=H(r,d[u>>0]|0)|0;u=(w+32+v+u+(H(h,d[c+p>>0]|0)|0)|0)>>>6&255;a[b+7>>0]=u;b=b+e|0;g=g+1|0;c=t}}while(0);return}function Jd(a,d,e,h,i,j,k,l,m){a=a|0;d=d|0;e=+e;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=+m;var n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,w=0.0,z=0,A=0.0,B=0.0,C=0.0,D=0,E=0.0,F=0,G=0,I=0,J=0,K=0,L=0,N=0,O=0,P=0,Q=0,R=0,S=0;P=Nb;Nb=Nb+32|0;O=P+16|0;n=P;G=(j&1|0)!=0;if(G)J=j;else J=((j|0)/2|0)+1|0;I=XQ(h+1|0)|0;K=XQ(J)|0;L=h+-1|0;N=(L|0)/2|0;a:do if((I|0)!=0&(K|0)!=0){if(!((h|0)==1|(h&1|0)==0)){c[n>>2]=214773;c[n+4>>2]=214748;c[n+8>>2]=158;mx(0,0,214689,n);ba()}C=e>1.0?1.0:e;D=C==1.0;E=+(j|0);b:do if(D){e=+((N<<1&2)+-1|0);n=0;while(1){if((n|0)>=(J|0))break b;B=+y(+(+(n|0)*3.141592653589793/E))*e;g[K+(n<<3)>>3]=B;n=n+1|0}}while(0);A=C*+(h|0);B=A*3.141592653589793;z=a+80|0;w=+(k|0);e=0.0;t=0;c:while(1){if((t|0)>=(J|0)){F=0;break a}s=+(t|0)/E;a=(t|0)==0;n=0;r=+g[K+(t<<3)>>3];while(1){if((n|0)>=(h|0))break;p=+(n-N|0)-s;q=C*(p*3.141592653589793);do if(!(q==0.0))if(D){o=r/q;break}else{o=+y(+q)/q;break}else o=1.0;while(0);d:do switch(l|0){case 0:{o=C*p;p=+u(+o);if(p<1.0){o=o*o;o=1.0-p*(p*3.0)+p*(p*(p*2.0))-(o*p-o)*.5;break d}else{o=(o*o*p+(p*8.0+-4.0-p*(p*5.0)))*-.5;break d}}case 1:{p=+x(+(q*2.0/A));q=-p;o=(p*.4891775+.3635819+(p*-2.0*q+-1.0)*.1365995-(p*3.0+p*-4.0*q*q)*.0106411)*o;break}case 2:{q=q*2.0/B;q=1.0-q*q;o=o*+Ay(+v(+(q>0.0?q:0.0))*m);break}default:break c}while(0);g[I+(n<<3)>>3]=o;n=n+1|0;r=-r;e=a?e+o:e}e:do switch(c[z>>2]|0){case 6:{k=H(t,i)|0;n=0;while(1){if((n|0)>=(h|0))break;a=uV(+g[I+(n<<3)>>3]*w/e)|0;b[d+(n+k<<1)>>1]=(a+32768|0)>>>0>65535?a>>31^32767:a;n=n+1|0}if(!G){a=L+(H(j-t|0,i)|0)|0;n=0;while(1){if((n|0)>=(h|0))break e;b[d+(a-n<<1)>>1]=b[d+(n+k<<1)>>1]|0;n=n+1|0}}break}case 7:{k=H(t,i)|0;n=0;while(1){if((n|0)>=(h|0))break;a=fN(+g[I+(n<<3)>>3]*w/e)|0;Q=M()|0;R=kP(a|0,Q|0,-2147483648,0)|0;S=M()|0;Q=YM(a|0,Q|0,63)|0;M()|0;c[d+(n+k<<2)>>2]=S>>>0>0|(S|0)==0&R>>>0>4294967295?Q^2147483647:a;n=n+1|0}if(!G){a=L+(H(j-t|0,i)|0)|0;n=0;while(1){if((n|0)>=(h|0))break e;c[d+(a-n<<2)>>2]=c[d+(n+k<<2)>>2];n=n+1|0}}break}case 8:{k=H(t,i)|0;n=0;while(1){if((n|0)>=(h|0))break;f[d+(n+k<<2)>>2]=+g[I+(n<<3)>>3]*w/e;n=n+1|0}if(!G){a=L+(H(j-t|0,i)|0)|0;n=0;while(1){if((n|0)>=(h|0))break e;c[d+(a-n<<2)>>2]=c[d+(n+k<<2)>>2];n=n+1|0}}break}case 9:{k=H(t,i)|0;n=0;while(1){if((n|0)>=(h|0))break;g[d+(n+k<<3)>>3]=+g[I+(n<<3)>>3]*w/e;n=n+1|0}if(!G){a=L+(H(j-t|0,i)|0)|0;n=0;while(1){if((n|0)>=(h|0))break e;g[d+(a-n<<3)>>3]=+g[d+(n+k<<3)>>3];n=n+1|0}}break}default:{}}while(0);t=t+1|0}c[O>>2]=214810;c[O+4>>2]=214748;c[O+8>>2]=194;mx(0,0,214689,O);ba()}else F=-12;while(0);FV(I);FV(K);Nb=P;return F|0}function Kd(e,f,g,h,i,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=Nb;Nb=Nb+304|0;t=A;u=A+256|0;w=f+32860|0;s=u+4|0;c[s>>2]=c[w>>2];x=f+32856|0;c[u>>2]=c[x>>2];y=f+32872|0;z=u+16|0;c[z>>2]=c[y>>2];n=c[f+21828>>2]|0;o=(c[88752+(n*56|0)+(h<<2)>>2]|0)+(f+32904)|0;p=(c[88864+(n*56|0)+(h<<2)>>2]|0)+(f+32904)|0;r=(c[89008+(h<<2)>>2]|0)+(f+32904)|0;q=(l|0)==64;a:do if(q){m=0;l=0;while(1){if(m>>>0>=63)break;if(Vu(u,o+(d[89072+(n*63|0)+m>>0]|0)|0)|0){B=p+(d[80080+m>>0]|0)|0;h=l+1|0;c[t+(l<<2)>>2]=m;if(!(Vu(u,B)|0))l=h;else{l=h;break a}}m=m+1|0}if((m|0)==63){c[t+(l<<2)>>2]=63;l=l+1|0}}else{n=l+-1|0;m=0;l=0;while(1){if((m|0)>=(n|0))break;if(Vu(u,o+m|0)|0){h=l+1|0;c[t+(l<<2)>>2]=m;if(!(Vu(u,p+m|0)|0))l=h;else{l=h;break a}}m=m+1|0}if((m|0)==(n|0)){c[t+(l<<2)>>2]=n;l=l+1|0}}while(0);if(q){B=(d[88688+i>>0]|0)+(f+27824)|0;i=l*257&65535;b[B>>1]=i;b[B+8>>1]=i}else a[(d[88688+i>>0]|0)+(f+27824)>>0]=l;if(!(c[e+25652>>2]|0)){o=l;h=0;while(1){o=o+-1|0;p=d[j+(c[t+(o<<2)>>2]|0)>>0]|0;if(!(Vu(u,r+(d[201504+h>>0]|0)|0)|0)){l=d[88976+h>>0]|0;m=0-(c[k+(p<<2)>>2]|0)|0;B=c[u>>2]|0;h=B<<1;c[u>>2]=h;if(!(B&32767)){VM(u);h=c[u>>2]|0}B=c[s>>2]|0;n=B<<17;f=h-n|0;i=f>>31;h=(i&n)+f|0;c[u>>2]=h;n=l;m=(f>>>31|32)+(i^m)|0;l=B}else{l=r+(d[88992+h>>0]|0)|0;n=d[88984+h>>0]|0;h=2;while(1){if(h>>>0>=15){v=46;break}if(!(Vu(u,l)|0))break;h=h+1|0}if((v|0)==46){v=0;h=0;while(1)if(h>>>0<23&(uI(u)|0)!=0)h=h+1|0;else break;l=1;while(1){if(!h)break;h=h+-1|0;l=(uI(u)|0)+(l<<1)|0}h=l+14|0}B=c[u>>2]|0;l=B<<1;c[u>>2]=l;if(!(B&32767)){VM(u);l=c[u>>2]|0}B=c[s>>2]|0;i=B<<17;l=l-i|0;m=l>>31;l=(m&i)+l|0;c[u>>2]=l;m=(H((m^0-h)-m|0,c[k+(p<<2)>>2]|0)|0)+32|0;h=l;l=B}b[g+(p<<1)>>1]=m>>>6;if(!o)break;else h=n}}else{h=0;o=l;while(1){o=o+-1|0;p=d[j+(c[t+(o<<2)>>2]|0)>>0]|0;if(!(Vu(u,r+(d[201504+h>>0]|0)|0)|0)){l=d[88976+h>>0]|0;m=0-(c[k+(p<<2)>>2]|0)|0;B=c[u>>2]|0;h=B<<1;c[u>>2]=h;if(!(B&32767)){VM(u);h=c[u>>2]|0}B=c[s>>2]|0;n=B<<17;f=h-n|0;i=f>>31;h=(i&n)+f|0;c[u>>2]=h;n=l;m=(f>>>31|32)+(i^m)|0;l=B}else{l=r+(d[88992+h>>0]|0)|0;n=d[88984+h>>0]|0;h=2;while(1){if(h>>>0>=15){v=28;break}if(!(Vu(u,l)|0))break;h=h+1|0}if((v|0)==28){v=0;h=0;while(1)if(h>>>0<23&(uI(u)|0)!=0)h=h+1|0;else break;l=1;while(1){if(!h)break;h=h+-1|0;l=(uI(u)|0)+(l<<1)|0}h=l+14|0}B=c[u>>2]|0;l=B<<1;c[u>>2]=l;if(!(B&32767)){VM(u);l=c[u>>2]|0}B=c[s>>2]|0;i=B<<17;l=l-i|0;m=l>>31;l=(m&i)+l|0;c[u>>2]=l;m=(H((m^0-h)-m|0,c[k+(p<<2)>>2]|0)|0)+32|0;h=l;l=B}c[g+(p<<2)>>2]=m>>6;if(!o)break;else h=n}}c[w>>2]=l;c[x>>2]=h;c[y>>2]=c[z>>2];Nb=A;return}function Ld(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;k=h>>1;A=g*13|0;i=c;j=0;d=d+(0-(h&-2)<<1)|0;while(1){if((j|0)==13)break;x=d+2|0;y=d+-2|0;w=d+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+6|0;b[i>>1]=(((e[x>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[d+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[d>>1]|0)|0,-5)|0;t=d+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=d+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[d>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=d+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=d+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=d+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[d+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;d=d+(k<<1)|0}o=f>>1;p=H(g,-2)|0;q=0-g|0;r=g<<1;s=g*3|0;t=g<<2;u=g*5|0;v=g*6|0;w=g*7|0;x=g<<3;y=g*9|0;z=g*10|0;j=f&-2;k=o*3|0;f=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;i=a;d=c+(A<<1)+((H(g,-11)|0)<<1)|0;h=0;while(1){if((h|0)==8)break;Q=(b[d+(q<<1)>>1]|0)+10230|0;P=(b[d>>1]|0)+10230|0;N=b[d+(g<<1)>>1]|0;O=N+10230|0;L=b[d+(r<<1)>>1]|0;M=L+10230|0;J=b[d+(s<<1)>>1]|0;K=J+10230|0;G=b[d+(t<<1)>>1]|0;I=G+10230|0;E=b[d+(u<<1)>>1]|0;F=E+10230|0;c=(b[d+(v<<1)>>1]|0)+10230|0;B=(b[d+(w<<1)>>1]|0)+10230|0;C=(b[d+(x<<1)>>1]|0)+10230|0;a=(b[d+(y<<1)>>1]|0)+10230|0;D=b[d+(z<<1)>>1]|0;A=(b[d+(p<<1)>>1]|0)+10742+K+((O+P|0)*20|0)+(H(M+Q|0,-5)|0)>>10;b[i>>1]=((e[i>>1]|0)+1+(A>>>0<1024?A:(A^-2147483648)>>31&1023)|0)>>>1;A=i+(o<<1)|0;G=G+10742|0;Q=G+Q+((M+O|0)*20|0)+(H(K+P|0,-5)|0)>>10;b[A>>1]=((e[A>>1]|0)+1+(Q>>>0<1024?Q:(Q^-2147483648)>>31&1023)|0)>>>1;A=i+(j<<1)|0;O=E+10742+P+((K+M|0)*20|0)+(H(I+O|0,-5)|0)>>10;b[A>>1]=((O>>>0<1024?O:(O^-2147483648)>>31&1023)+1+(e[A>>1]|0)|0)>>>1;A=i+(k<<1)|0;M=N+10742+c+((I+K|0)*20|0)+(H(F+M|0,-5)|0)>>10;b[A>>1]=((M>>>0<1024?M:(M^-2147483648)>>31&1023)+1+(e[A>>1]|0)|0)>>>1;A=i+(f<<1)|0;K=L+10742+B+((F+I|0)*20|0)+(H(c+K|0,-5)|0)>>10;b[A>>1]=((K>>>0<1024?K:(K^-2147483648)>>31&1023)+1+(e[A>>1]|0)|0)>>>1;A=i+(l<<1)|0;I=J+10742+C+((c+F|0)*20|0)+(H(B+I|0,-5)|0)>>10;b[A>>1]=((I>>>0<1024?I:(I^-2147483648)>>31&1023)+1+(e[A>>1]|0)|0)>>>1;A=i+(m<<1)|0;F=G+a+((B+c|0)*20|0)+(H(C+F|0,-5)|0)>>10;b[A>>1]=((F>>>0<1024?F:(F^-2147483648)>>31&1023)+1+(e[A>>1]|0)|0)>>>1;A=i+(n<<1)|0;c=E+20972+D+((C+B|0)*20|0)+(H(a+c|0,-5)|0)>>10;b[A>>1]=((c>>>0<1024?c:(c^-2147483648)>>31&1023)+1+(e[A>>1]|0)|0)>>>1;i=i+2|0;d=d+2|0;h=h+1|0}return}function Md(a,e,g){a=a|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0,F=0,G=0,H=0;h=(NL(e)|0)<<1;F=g+148704|0;c[F>>2]=h;h=Yz(e,3)|0;k=g+148708|0;c[k>>2]=h;E=0;j=0;while(1){if((j|0)>(h|0))break;h=E+1|0;B=(NL(e)|0)!=0&1;C=g+148712+(j<<2)|0;c[C>>2]=B;B=Yz(e,4)|0;c[g+148744+(j<<2)>>2]=B;if((c[C>>2]|0)==1){i=Yz(e,2)|0;h=(i|0)==3?E+2|0:h}else i=2;c[g+148776+(j<<2)>>2]=i;E=h;j=j+1|0;h=c[k>>2]|0}C=g+288|0;i=(NL(e)|0)!=0;h=c[F>>2]|0;c[F>>2]=h+((h>>>0>1|i)&1);i=Yz(e,1)|0;h=43584+((Yz(e,2)|0)<<2)|0;D=+f[h>>2];h=rh(a,C,e,0)|0;a:do if(!h){z=g+304|0;A=e+8|0;B=e+16|0;x=(i|0)==0;y=(x^1)&1;v=0;while(1){if((v|0)>=(E|0)){h=0;break a}if(!v){l=1.0;i=0;h=1}else{if((c[F>>2]|0)!=3){h=NL(e)|0;if(!h){i=0;h=0}else G=12}else{h=1;G=12}if((G|0)==12){G=0;n=c[284092]|0;i=c[A>>2]|0;o=c[B>>2]|0;a=c[e>>2]|0;u=a+(i>>>3)|0;u=(IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(i&7)>>>25;j=b[n+(u<<2)>>1]|0;u=b[n+(u<<2)+2>>1]|0;m=u<<16>>16;if(u<<16>>16<0){i=i+7|0;i=o>>>0>i>>>0?i:o;u=a+(i>>>3)|0;u=((IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(i&7)>>>(m+32|0))+j|0;j=b[n+(u<<2)>>1]|0;u=b[n+(u<<2)+2>>1]|0;k=u<<16>>16;if(u<<16>>16<0){i=i-m|0;i=o>>>0>i>>>0?i:o;u=a+(i>>>3)|0;j=((IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(i&7)>>>(k+32|0))+j|0;k=b[n+(j<<2)+2>>1]|0;j=b[n+(j<<2)>>1]|0}}else k=m;i=k+i|0;c[A>>2]=o>>>0>i>>>0?i:o;i=j+-60|0}l=+w(+D,+(+(0-i|0)))}b:do if((c[F>>2]|0)==3)f[g+148808+(v*480|0)>>2]=l;else{u=(h|0)==0;t=c[z>>2]|0;h=0;s=0;while(1){if((s|0)>=(t|0))break b;r=d[C>>0]|0;q=0;p=h;while(1){if(q>>>0>=r>>>0)break;if(c[g+6160+(p<<2)>>2]|0){if(u){n=c[284092]|0;h=c[A>>2]|0;o=c[B>>2]|0;a=c[e>>2]|0;k=a+(h>>>3)|0;k=(IS(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(h&7)>>>25;j=b[n+(k<<2)>>1]|0;k=b[n+(k<<2)+2>>1]|0;m=k<<16>>16;if(k<<16>>16<0){h=h+7|0;h=o>>>0>h>>>0?h:o;H=a+(h>>>3)|0;H=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>(m+32|0))+j|0;j=b[n+(H<<2)>>1]|0;H=b[n+(H<<2)+2>>1]|0;k=H<<16>>16;if(H<<16>>16<0){h=h-m|0;h=o>>>0>h>>>0?h:o;H=a+(h>>>3)|0;j=((IS(d[H>>0]|d[H+1>>0]<<8|d[H+2>>0]<<16|d[H+3>>0]<<24|0)|0)<<(h&7)>>>(k+32|0))+j|0;k=b[n+(j<<2)+2>>1]|0;j=b[n+(j<<2)>>1]|0}}else k=m;h=k+h|0;c[A>>2]=o>>>0>h>>>0?h:o;h=j+-60|0;if(h){i=h+i|0;l=+w(+D,+(+(0-(i>>y)|0)));l=l*(x?1.0:+(1-(i<<1&2)|0))}}f[g+148808+(v*480|0)+(p<<2)>>2]=l}q=q+1|0;p=p+1|0}h=p;s=s+1|0}}while(0);v=v+1|0}}while(0);return h|0}function Nd(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,J=0,K=0;K=Nb;Nb=Nb+1072|0;J=K+1048|0;H=K+1040|0;F=K+768|0;j=K+1056|0;k=K+1052|0;D=K+1032|0;E=K+1024|0;A=K+256|0;B=K;c[F>>2]=j;c[F+4>>2]=k;c[F+8>>2]=K+1060;if(!((CN(f,204986,F)|0)==2?(i=c[j>>2]|0,i=Pd(b,e,h,1.0,c[k>>2]|0,i,((i|0)<0)<<31>>31)|0,(i|0)>-1):0)){s=e+12|0;v=e+44|0;w=e+16|0;x=e+32|0;y=e+24|0;z=e+16|0;i=0;while(1){r=E;c[r>>2]=1;c[r+4>>2]=0;if(!(c[s>>2]|0)){j=a[f>>0]|0;switch(j<<24>>24){case 45:case 43:{l=j<<24>>24;j=f+1|0;break}default:{l=0;j=f}}f=0;a:while(1){if(f>>>0>=255)break;k=a[j+f>>0]|0;switch(k<<24>>24){case 45:case 43:case 0:break a;default:{}}a[F+f>>0]=k;f=f+1|0}a[F+f>>0]=0;r=f}else{l=0;r=0;j=f}q=(r|0)!=0;o=q?F:j;k=mQ(d,o,c[v>>2]|0,0,0)|0;if((k|0)!=0?(c[k+12>>2]|0)==128:0){p=k+16|0;g[D>>3]=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0);p=33}else p=15;do if((p|0)==15){f=c[v>>2]|0;do if(f){n=0;k=0;b:while(1){do{k=sC(d,k)|0;if(!k){p=26;break b}}while(!(((c[k+12>>2]|0)==128?(C=c[k+44>>2]|0,C|0):0)?(hz(C,f)|0)==0:0));if((n+6|0)>>>0>63){p=24;break}c[B+(n<<2)>>2]=c[k>>2];p=k+16|0;g[A+(n<<3)>>3]=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0);n=n+1|0}if((p|0)==24){p=0;c[H>>2]=f;mx(b,16,205e3,H);i=-1163346256;break}else if((p|0)==26){f=n;k=B+(n<<2)|0;p=27;break}}else{f=0;k=B;p=27}while(0);if((p|0)==27){p=0;c[k>>2]=205037;switch(c[s>>2]|0){case 1:case 0:case 128:case 9:case 2:{n=z;m=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0);break}default:m=+g[w>>3]}k=f+1|0;g[A+(f<<3)>>3]=m;c[B+(k<<2)>>2]=209843;n=f+2|0;g[A+(k<<3)>>3]=+g[x>>3];c[B+(n<<2)>>2]=209847;k=f+3|0;g[A+(n<<3)>>3]=+g[y>>3];c[B+(k<<2)>>2]=214025;n=f+4|0;g[A+(k<<3)>>3]=0.0;c[B+(n<<2)>>2]=205045;k=f+5|0;g[A+(n<<3)>>3]=-1.0;c[B+(k<<2)>>2]=0;g[A+(k<<3)>>3]=0.0;k=Vs(D,o,B,A,0,0,0,0,0,0,b)|0;if((k|0)>=0){p=33;break}c[J>>2]=j;mx(b,16,205049,J);i=k}f=1}while(0);if((p|0)==33){c:do if(!(c[s>>2]|0)){Dg(e,h,0,0,E)|0;switch(l|0){case 43:{p=E;m=+g[D>>3];m=+((c[p>>2]|~~m>>>0)>>>0)+4294967296.0*+(c[p+4>>2]|(+u(m)>=1.0?(m>0.0?~~+I(+t(m/4294967296.0),4294967295.0)>>>0:~~+G((m-+(~~m>>>0))/4294967296.0)>>>0):0)|0);g[D>>3]=m;break c}case 45:{p=E;m=+g[D>>3];m=+((c[p>>2]&~(~~m>>>0))>>>0)+4294967296.0*+(c[p+4>>2]&~(+u(m)>=1.0?(m>0.0?~~+I(+t(m/4294967296.0),4294967295.0)>>>0:~~+G((m-+(~~m>>>0))/4294967296.0)>>>0):0)|0);g[D>>3]=m;break c}default:break c}}while(0);k=Pd(b,e,h,+g[D>>3],1,1,0)|0;if((k|0)>=0){j=j+r|0;if(q){r=(a[j>>0]|0)==0;f=r&1;i=r?0:i}else{f=1;i=0}}else{f=1;i=k}}if(!f)f=j;else break}}Nb=K;return i|0}function Od(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;r=f>>1;m=(c|0)!=0;c=0-r|0;if(m){g=e[a+(c<<1)>>1]|0;c=e[a+(~r<<1)>>1]|0}else{c=e[a+(c<<1)>>1]|0;g=c}j=e[a+(1-r<<1)>>1]|0;k=j+2|0;q=(k+c+(g<<1)|0)>>>2;l=e[a+(2-r<<1)>>1]|0;i=g+2|0;j=(i+(j<<1)+l|0)>>>2;n=e[a+(3-r<<1)>>1]|0;k=(k+(l<<1)+n|0)>>>2;o=e[a+(4-r<<1)>>1]|0;l=(l+2+(n<<1)+o|0)>>>2;p=e[a+(5-r<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;g=e[a+(6-r<<1)>>1]|0;o=(o+2+(p<<1)+g|0)>>>2;h=e[a+(7-r<<1)>>1]|0;p=(p+2+(g<<1)+h|0)>>>2;if(!d)c=h;else c=e[a+(8-r<<1)>>1]|0;d=(g+2+(h<<1)+c|0)>>>2;if(m){h=e[a+(~r<<1)>>1]|0;c=e[a+-2>>1]|0;g=h}else{h=e[a+-2>>1]|0;c=h;g=e[a+(~r<<1)>>1]|0}y=e[a+(r+-1<<1)>>1]|0;x=y+2|0;w=(x+h+(c<<1)|0)>>>2;m=f&-2;A=e[a+(m+-1<<1)>>1]|0;y=(c+2+(y<<1)+A|0)>>>2;h=r*3|0;z=e[a+(h+-1<<1)>>1]|0;x=(x+(A<<1)+z|0)>>>2;s=r<<2;C=e[a+(s+-1<<1)>>1]|0;A=(A+2+(z<<1)+C|0)>>>2;t=r*5|0;D=e[a+(t+-1<<1)>>1]|0;z=(z+2+(C<<1)+D|0)>>>2;u=r*6|0;B=e[a+(u+-1<<1)>>1]|0;C=(C+2+(D<<1)+B|0)>>>2;v=r*7|0;B=(D+2+(B<<1)+(e[a+(v+-1<<1)>>1]|0)|0)>>>2;c=(i+c+(g<<1)|0)>>>2;b[a+(u<<1)>>1]=(A+2+(z<<1)+C|0)>>>2;b[a+(v<<1)>>1]=(z+2+(C<<1)+B|0)>>>2;i=y+2|0;g=(i+(x<<1)+A|0)>>>2&65535;b[a+((u|1)<<1)>>1]=g;b[a+(s<<1)>>1]=g;g=(x+2+(A<<1)+z|0)>>>2&65535;b[a+(v+1<<1)>>1]=g;b[a+(t<<1)>>1]=g;i=(i+(w<<1)+c|0)>>>2&65535;b[a+(u+2<<1)>>1]=i;b[a+((s|1)<<1)>>1]=i;b[a+(m<<1)>>1]=i;i=(w+2+(y<<1)+x|0)>>>2&65535;b[a+(v+2<<1)>>1]=i;b[a+(t+1<<1)>>1]=i;b[a+(h<<1)>>1]=i;i=q+2|0;g=(i+w+(c<<1)|0)>>>2&65535;b[a+(v+3<<1)>>1]=g;b[a+(t+2<<1)>>1]=g;b[a+(h+1<<1)>>1]=g;b[a+(r<<1)>>1]=g;g=q+1|0;w=(g+c|0)>>>1&65535;b[a+(u+3<<1)>>1]=w;b[a+((s|2)<<1)>>1]=w;b[a+((f|1)<<1)>>1]=w;b[a>>1]=w;f=j+2|0;q=(f+(q<<1)+c|0)>>>2&65535;b[a+(v+4<<1)>>1]=q;b[a+(t+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+(r+1<<1)>>1]=q;q=(g+j|0)>>>1&65535;b[a+(u+4<<1)>>1]=q;b[a+((s|3)<<1)>>1]=q;b[a+(m+2<<1)>>1]=q;b[a+2>>1]=q;q=(i+(j<<1)+k|0)>>>2&65535;b[a+(v+5<<1)>>1]=q;b[a+(t+4<<1)>>1]=q;b[a+(h+3<<1)>>1]=q;b[a+(r+2<<1)>>1]=q;q=(j+1+k|0)>>>1&65535;b[a+(u+5<<1)>>1]=q;b[a+(s+4<<1)>>1]=q;b[a+(m+3<<1)>>1]=q;b[a+4>>1]=q;f=(f+(k<<1)+l|0)>>>2&65535;b[a+(v+6<<1)>>1]=f;b[a+(t+5<<1)>>1]=f;b[a+(h+4<<1)>>1]=f;b[a+(r+3<<1)>>1]=f;f=(k+1+l|0)>>>1&65535;b[a+(u+6<<1)>>1]=f;b[a+(s+5<<1)>>1]=f;b[a+(m+4<<1)>>1]=f;b[a+6>>1]=f;f=(k+2+(l<<1)+n|0)>>>2&65535;b[a+(v+7<<1)>>1]=f;b[a+(t+6<<1)>>1]=f;b[a+(h+5<<1)>>1]=f;b[a+(r+4<<1)>>1]=f;f=(l+1+n|0)>>>1&65535;b[a+(u+7<<1)>>1]=f;b[a+(s+6<<1)>>1]=f;b[a+(m+5<<1)>>1]=f;b[a+8>>1]=f;f=(l+2+(n<<1)+o|0)>>>2&65535;b[a+(t+7<<1)>>1]=f;b[a+(h+6<<1)>>1]=f;b[a+(r+5<<1)>>1]=f;f=(n+1+o|0)>>>1&65535;b[a+(s+7<<1)>>1]=f;b[a+(m+6<<1)>>1]=f;b[a+10>>1]=f;f=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(h+7<<1)>>1]=f;b[a+(r+6<<1)>>1]=f;f=(o+1+p|0)>>>1&65535;b[a+(m+7<<1)>>1]=f;b[a+12>>1]=f;b[a+(r+7<<1)>>1]=(o+2+(p<<1)+d|0)>>>2;b[a+14>>1]=(p+1+d|0)>>>1;return}function Pd(a,b,d,e,h,i,j){a=a|0;b=b|0;d=d|0;e=+e;h=h|0;i=i|0;j=j|0;var k=0,l=0.0,m=0.0,n=0.0,o=0,p=0,q=0,t=0,u=0;u=Nb;Nb=Nb+64|0;k=u+40|0;q=u+8|0;o=u;p=c[b+12>>2]|0;a:do if(!p){l=+(h|0);m=(+(i>>>0)+4294967296.0*+(j|0))*e/l;if(!(m<-1.5|m>4294967295.5)?(q=fN(m*256.0)|0,M()|0,(q&255|0)==0&0==0):0){t=14;break}j=c[b>>2]|0;g[k>>3]=m;c[k+8>>2]=j;mx(a,16,204817,k);k=-34}else{if(!h){m=e!=0.0&((i|0)!=0|(j|0)!=0)?s:r;l=+g[b+32>>3]}else{n=+g[b+32>>3];l=+(h|0);m=(+(i>>>0)+4294967296.0*+(j|0))*e;if(!(n*l<m)?!(+g[b+24>>3]*l>m):0){b:do if((p|0)<1112493900)switch(p|0){case 1:{t=14;break a}case 2:{t=15;break b}case 6:{t=25;break b}case 9:{l=e/l;if((i|0)==1&(j|0)==0&l==18446744073709551616.0){k=d;c[k>>2]=-1;c[k+4>>2]=-1;k=0;break a}if(l>9223372036854775808.0){k=fN(l+-9223372036854775808.0)|0;i=oK(k|0,(M()|0)^-2147483648|0,i|0,j|0)|0;j=M()|0;k=d;c[k>>2]=i;c[k+4>>2]=j;k=0;break a}else{k=fN(l)|0;i=oK(k|0,M()|0,i|0,j|0)|0;j=M()|0;k=d;c[k>>2]=i;c[k+4>>2]=j;k=0;break a}}case 4:{f[d>>2]=m/l;k=0;break a}case 3:{g[d>>3]=m/l;k=0;break a}default:{k=-22;break a}}else{if((p|0)<1346784596){if((p|0)<1128811585)switch(p|0){case 1112493900:{t=14;break a}default:{k=-22;break a}}if((p|0)<1146442272)switch(p|0){case 1128811585:{t=15;break b}default:{k=-22;break a}}else switch(p|0){case 1146442272:{t=15;break b}default:{k=-22;break a}}}if((p|0)<1397116244){switch(p|0){case 1346784596:break;default:{k=-22;break a}}k=fN(e/l)|0;k=oK(k|0,M()|0,i|0,j|0)|0;M()|0;c[d>>2]=k;k=0;break a}if((p|0)>=1448231252)switch(p|0){case 1448231252:{t=25;break b}default:{k=-22;break a}}switch(p|0){case 1397116244:break;default:{k=-22;break a}}k=fN(e/l)|0;k=oK(k|0,M()|0,i|0,j|0)|0;M()|0;c[d>>2]=k;k=0;break a}while(0);if((t|0)==15){l=e/l;if((i|0)==1&(j|0)==0&l==9223372036854775808.0){k=d;c[k>>2]=-1;c[k+4>>2]=2147483647;k=0;break}else{k=fN(l)|0;i=oK(k|0,M()|0,i|0,j|0)|0;j=M()|0;k=d;c[k>>2]=i;c[k+4>>2]=j;k=0;break}}else if((t|0)==25)if(+(~~e|0)==e){c[d>>2]=~~m;c[d+4>>2]=h;k=0;break}else{Pl(o,m/l,16777216);i=o;j=c[i+4>>2]|0;k=d;c[k>>2]=c[i>>2];c[k+4>>2]=j;k=0;break}}m=m/l;l=n}k=c[b>>2]|0;e=+g[b+24>>3];g[q>>3]=m;c[q+8>>2]=k;g[q+16>>3]=e;g[q+24>>3]=l;mx(a,16,204765,q);k=-34}while(0);if((t|0)==14){k=fN(e/l)|0;k=oK(k|0,M()|0,i|0,j|0)|0;M()|0;c[d>>2]=k;k=0}Nb=u;return k|0}function Qd(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;p=f>>1;g=(c|0)!=0;d=0-p|0;if(g){c=e[a+(d<<1)>>1]|0;d=e[a+(~p<<1)>>1]|0}else{d=e[a+(d<<1)>>1]|0;c=d}i=e[a+(1-p<<1)>>1]|0;j=i+2|0;o=(j+d+(c<<1)|0)>>>2;k=e[a+(2-p<<1)>>1]|0;h=c+2|0;i=(h+(i<<1)+k|0)>>>2;l=e[a+(3-p<<1)>>1]|0;j=(j+(k<<1)+l|0)>>>2;m=e[a+(4-p<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;c=e[a+(5-p<<1)>>1]|0;l=(l+2+(m<<1)+c|0)>>>2;n=e[a+(6-p<<1)>>1]|0;m=(m+2+(c<<1)+n|0)>>>2;n=(c+2+(n<<1)+(e[a+(7-p<<1)>>1]|0)|0)>>>2;if(g){g=e[a+(~p<<1)>>1]|0;d=e[a+-2>>1]|0;c=g}else{g=e[a+-2>>1]|0;d=g;c=e[a+(~p<<1)>>1]|0}t=e[a+(p+-1<<1)>>1]|0;v=t+2|0;r=(v+g+(d<<1)|0)>>>2;g=f&-2;x=e[a+(g+-1<<1)>>1]|0;t=(d+2+(t<<1)+x|0)>>>2;q=p*3|0;z=e[a+(q+-1<<1)>>1]|0;v=(v+(x<<1)+z|0)>>>2;s=p<<2;A=e[a+(s+-1<<1)>>1]|0;x=(x+2+(z<<1)+A|0)>>>2;u=p*5|0;B=e[a+(u+-1<<1)>>1]|0;z=(z+2+(A<<1)+B|0)>>>2;w=p*6|0;D=e[a+(w+-1<<1)>>1]|0;A=(A+2+(B<<1)+D|0)>>>2;y=p*7|0;C=e[a+(y+-1<<1)>>1]|0;B=(B+2+(D<<1)+C|0)>>>2;C=(D+2+(C*3|0)|0)>>>2;c=(h+d+(c<<1)|0)>>>2;b[a+(y<<1)>>1]=(B+1+C|0)>>>1;b[a+(y+1<<1)>>1]=(A+2+C+(B<<1)|0)>>>2;d=(A+1+B|0)>>>1&65535;b[a+(y+2<<1)>>1]=d;b[a+(w<<1)>>1]=d;d=(z+2+(A<<1)+B|0)>>>2&65535;b[a+(y+3<<1)>>1]=d;b[a+((w|1)<<1)>>1]=d;d=(z+1+A|0)>>>1&65535;b[a+(y+4<<1)>>1]=d;b[a+(w+2<<1)>>1]=d;b[a+(u<<1)>>1]=d;d=(x+2+(z<<1)+A|0)>>>2&65535;b[a+(y+5<<1)>>1]=d;b[a+(w+3<<1)>>1]=d;b[a+(u+1<<1)>>1]=d;d=(x+1+z|0)>>>1&65535;b[a+(y+6<<1)>>1]=d;b[a+(w+4<<1)>>1]=d;b[a+(u+2<<1)>>1]=d;b[a+(s<<1)>>1]=d;d=(v+2+(x<<1)+z|0)>>>2&65535;b[a+(y+7<<1)>>1]=d;b[a+(w+5<<1)>>1]=d;b[a+(u+3<<1)>>1]=d;b[a+((s|1)<<1)>>1]=d;d=(v+1+x|0)>>>1&65535;b[a+(w+6<<1)>>1]=d;b[a+(u+4<<1)>>1]=d;b[a+((s|2)<<1)>>1]=d;b[a+(q<<1)>>1]=d;d=t+2|0;h=(d+(v<<1)+x|0)>>>2&65535;b[a+(w+7<<1)>>1]=h;b[a+(u+5<<1)>>1]=h;b[a+((s|3)<<1)>>1]=h;b[a+(q+1<<1)>>1]=h;h=(t+1+v|0)>>>1&65535;b[a+(u+6<<1)>>1]=h;b[a+(s+4<<1)>>1]=h;b[a+(q+2<<1)>>1]=h;b[a+(g<<1)>>1]=h;h=(r+2+(t<<1)+v|0)>>>2&65535;b[a+(u+7<<1)>>1]=h;b[a+(s+5<<1)>>1]=h;b[a+(q+3<<1)>>1]=h;b[a+((f|1)<<1)>>1]=h;h=r+1|0;f=(h+t|0)>>>1&65535;b[a+(s+6<<1)>>1]=f;b[a+(q+4<<1)>>1]=f;b[a+(g+2<<1)>>1]=f;b[a+(p<<1)>>1]=f;f=(d+(r<<1)+c|0)>>>2&65535;b[a+(s+7<<1)>>1]=f;b[a+(q+5<<1)>>1]=f;b[a+(g+3<<1)>>1]=f;b[a+(p+1<<1)>>1]=f;h=(h+c|0)>>>1&65535;b[a+(q+6<<1)>>1]=h;b[a+(g+4<<1)>>1]=h;b[a+(p+2<<1)>>1]=h;b[a>>1]=h;h=o+2|0;f=(h+r+(c<<1)|0)>>>2&65535;b[a+(q+7<<1)>>1]=f;b[a+(g+5<<1)>>1]=f;b[a+(p+3<<1)>>1]=f;b[a+2>>1]=f;f=i+2|0;o=(f+(o<<1)+c|0)>>>2&65535;b[a+(g+6<<1)>>1]=o;b[a+(p+4<<1)>>1]=o;b[a+4>>1]=o;o=(h+(i<<1)+j|0)>>>2&65535;b[a+(g+7<<1)>>1]=o;b[a+(p+5<<1)>>1]=o;b[a+6>>1]=o;f=(f+(j<<1)+k|0)>>>2&65535;b[a+(p+6<<1)>>1]=f;b[a+8>>1]=f;f=(j+2+(k<<1)+l|0)>>>2&65535;b[a+(p+7<<1)>>1]=f;b[a+10>>1]=f;b[a+12>>1]=(k+2+(l<<1)+m|0)>>>2;b[a+14>>1]=(l+2+(m<<1)+n|0)>>>2;return}function Rd(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0;k=h>>1;A=g*13|0;i=c;j=0;d=d+(0-(h&-2)<<1)|0;while(1){if((j|0)==13)break;x=d+2|0;y=d+-2|0;w=d+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+6|0;b[i>>1]=(((e[x>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[d+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[d>>1]|0)|0,-5)|0;t=d+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=d+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[d>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=d+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=d+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=d+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[d+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;d=d+(k<<1)|0}o=f>>1;p=H(g,-2)|0;q=0-g|0;r=g<<1;s=g*3|0;t=g<<2;u=g*5|0;v=g*6|0;w=g*7|0;x=g<<3;y=g*9|0;z=g*10|0;j=f&-2;k=o*3|0;f=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;i=a;d=c+(A<<1)+((H(g,-11)|0)<<1)|0;h=0;while(1){if((h|0)==8)break;E=b[d+(q<<1)>>1]|0;N=b[d>>1]|0;M=b[d+(g<<1)>>1]|0;L=b[d+(r<<1)>>1]|0;K=b[d+(s<<1)>>1]|0;I=b[d+(t<<1)>>1]|0;F=b[d+(u<<1)>>1]|0;c=b[d+(v<<1)>>1]|0;B=b[d+(w<<1)>>1]|0;C=b[d+(x<<1)>>1]|0;a=b[d+(y<<1)>>1]|0;D=b[d+(z<<1)>>1]|0;J=K+512|0;A=J+(b[d+(p<<1)>>1]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>10;b[i>>1]=((e[i>>1]|0)+1+(A>>>0<512?A:(A^-2147483648)>>31&511)|0)>>>1;A=i+(o<<1)|0;G=I+512|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>10;b[A>>1]=((E>>>0<512?E:(E^-2147483648)>>31&511)+1+(e[A>>1]|0)|0)>>>1;A=i+(j<<1)|0;E=F+512|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>10;b[A>>1]=((N>>>0<512?N:(N^-2147483648)>>31&511)+1+(e[A>>1]|0)|0)>>>1;A=i+(k<<1)|0;M=M+512+c+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>10;b[A>>1]=((M>>>0<512?M:(M^-2147483648)>>31&511)+1+(e[A>>1]|0)|0)>>>1;A=i+(f<<1)|0;K=L+512+B+((F+I|0)*20|0)+(H(c+K|0,-5)|0)>>10;b[A>>1]=((K>>>0<512?K:(K^-2147483648)>>31&511)+1+(e[A>>1]|0)|0)>>>1;A=i+(l<<1)|0;I=J+C+((c+F|0)*20|0)+(H(B+I|0,-5)|0)>>10;b[A>>1]=((I>>>0<512?I:(I^-2147483648)>>31&511)+1+(e[A>>1]|0)|0)>>>1;A=i+(m<<1)|0;F=G+a+((B+c|0)*20|0)+(H(C+F|0,-5)|0)>>10;b[A>>1]=((F>>>0<512?F:(F^-2147483648)>>31&511)+1+(e[A>>1]|0)|0)>>>1;A=i+(n<<1)|0;c=E+D+((C+B|0)*20|0)+(H(a+c|0,-5)|0)>>10;b[A>>1]=((c>>>0<512?c:(c^-2147483648)>>31&511)+1+(e[A>>1]|0)|0)>>>1;i=i+2|0;d=d+2|0;h=h+1|0}return}function Sd(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;t=f>>1;m=(c|0)!=0;c=0-t|0;if(m){g=e[a+(c<<1)>>1]|0;c=e[a+(~t<<1)>>1]|0}else{c=e[a+(c<<1)>>1]|0;g=c}j=e[a+(1-t<<1)>>1]|0;k=j+2|0;s=(k+c+(g<<1)|0)>>>2;l=e[a+(2-t<<1)>>1]|0;i=g+2|0;j=(i+(j<<1)+l|0)>>>2;n=e[a+(3-t<<1)>>1]|0;k=(k+(l<<1)+n|0)>>>2;p=e[a+(4-t<<1)>>1]|0;l=(l+2+(n<<1)+p|0)>>>2;r=e[a+(5-t<<1)>>1]|0;n=(n+2+(p<<1)+r|0)>>>2;o=e[a+(6-t<<1)>>1]|0;p=(p+2+(r<<1)+o|0)>>>2;q=e[a+(7-t<<1)>>1]|0;r=(r+2+(o<<1)+q|0)>>>2;if(!d)h=q;else h=e[a+(8-t<<1)>>1]|0;if(m){d=e[a+(~t<<1)>>1]|0;c=e[a+-2>>1]|0;g=d}else{d=e[a+-2>>1]|0;c=d;g=e[a+(~t<<1)>>1]|0}A=e[a+(t+-1<<1)>>1]|0;z=A+2|0;y=(z+d+(c<<1)|0)>>>2;m=f&-2;B=e[a+(m+-1<<1)>>1]|0;A=(c+2+(A<<1)+B|0)>>>2;d=t*3|0;C=e[a+(d+-1<<1)>>1]|0;z=(z+(B<<1)+C|0)>>>2;u=t<<2;D=e[a+(u+-1<<1)>>1]|0;B=(B+2+(C<<1)+D|0)>>>2;v=t*5|0;E=e[a+(v+-1<<1)>>1]|0;C=(C+2+(D<<1)+E|0)>>>2;w=t*6|0;G=e[a+(w+-1<<1)>>1]|0;D=(D+2+(E<<1)+G|0)>>>2;x=t*7|0;F=e[a+(x+-1<<1)>>1]|0;E=(E+2+(G<<1)+F|0)>>>2;g=(i+c+(g<<1)|0)>>>2;b[a+(x<<1)>>1]=(D+2+((G+2+(F*3|0)|0)>>>2)+(E<<1)|0)>>>2;i=(C+2+(D<<1)+E|0)>>>2&65535;b[a+(x+1<<1)>>1]=i;b[a+(w<<1)>>1]=i;i=(B+2+(C<<1)+D|0)>>>2&65535;b[a+(x+2<<1)>>1]=i;b[a+((w|1)<<1)>>1]=i;b[a+(v<<1)>>1]=i;i=(z+2+(B<<1)+C|0)>>>2&65535;b[a+(x+3<<1)>>1]=i;b[a+(w+2<<1)>>1]=i;b[a+(v+1<<1)>>1]=i;b[a+(u<<1)>>1]=i;i=A+2|0;c=(i+(z<<1)+B|0)>>>2&65535;b[a+(x+4<<1)>>1]=c;b[a+(w+3<<1)>>1]=c;b[a+(v+2<<1)>>1]=c;b[a+((u|1)<<1)>>1]=c;b[a+(d<<1)>>1]=c;c=(y+2+(A<<1)+z|0)>>>2&65535;b[a+(x+5<<1)>>1]=c;b[a+(w+4<<1)>>1]=c;b[a+(v+3<<1)>>1]=c;b[a+((u|2)<<1)>>1]=c;b[a+(d+1<<1)>>1]=c;b[a+(m<<1)>>1]=c;i=(i+(y<<1)+g|0)>>>2&65535;b[a+(x+6<<1)>>1]=i;b[a+(w+5<<1)>>1]=i;b[a+(v+4<<1)>>1]=i;b[a+((u|3)<<1)>>1]=i;b[a+(d+2<<1)>>1]=i;b[a+((f|1)<<1)>>1]=i;b[a+(t<<1)>>1]=i;i=s+2|0;f=(i+y+(g<<1)|0)>>>2&65535;b[a+(x+7<<1)>>1]=f;b[a+(w+6<<1)>>1]=f;b[a+(v+5<<1)>>1]=f;b[a+(u+4<<1)>>1]=f;b[a+(d+3<<1)>>1]=f;b[a+(m+2<<1)>>1]=f;b[a+(t+1<<1)>>1]=f;b[a>>1]=f;f=j+2|0;s=(f+(s<<1)+g|0)>>>2&65535;b[a+(w+7<<1)>>1]=s;b[a+(v+6<<1)>>1]=s;b[a+(u+5<<1)>>1]=s;b[a+(d+4<<1)>>1]=s;b[a+(m+3<<1)>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+2>>1]=s;s=(i+(j<<1)+k|0)>>>2&65535;b[a+(v+7<<1)>>1]=s;b[a+(u+6<<1)>>1]=s;b[a+(d+5<<1)>>1]=s;b[a+(m+4<<1)>>1]=s;b[a+(t+3<<1)>>1]=s;b[a+4>>1]=s;f=(f+(k<<1)+l|0)>>>2&65535;b[a+(u+7<<1)>>1]=f;b[a+(d+6<<1)>>1]=f;b[a+(m+5<<1)>>1]=f;b[a+(t+4<<1)>>1]=f;b[a+6>>1]=f;f=(k+2+(l<<1)+n|0)>>>2&65535;b[a+(d+7<<1)>>1]=f;b[a+(m+6<<1)>>1]=f;b[a+(t+5<<1)>>1]=f;b[a+8>>1]=f;f=(l+2+(n<<1)+p|0)>>>2&65535;b[a+(m+7<<1)>>1]=f;b[a+(t+6<<1)>>1]=f;b[a+10>>1]=f;f=(n+2+(p<<1)+r|0)>>>2&65535;b[a+(t+7<<1)>>1]=f;b[a+12>>1]=f;b[a+14>>1]=(p+2+(r<<1)+((o+2+(q<<1)+h|0)>>>2)|0)>>>2;return}function Td(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Nb;Nb=Nb+16|0;f=g;h=(b+-9|0)>>>0<8;c[a+128>>2]=h?1:2;c[a+124>>2]=h?3:4;a:do switch(b|0){case 9:{c[a+84>>2]=5;c[a+88>>2]=6;c[a+92>>2]=7;c[a+96>>2]=8;c[a+100>>2]=37;c[a+104>>2]=38;e=(d|0)<2;c[a+108>>2]=e?39:40;c[a+112>>2]=41;c[a+116>>2]=9;c[a+120>>2]=e?1:2;c[a>>2]=1;c[a+4>>2]=2;c[a+8>>2]=3;c[a+12>>2]=4;c[a+16>>2]=1;c[a+20>>2]=2;c[a+24>>2]=3;c[a+28>>2]=4;c[a+32>>2]=42;c[a+36>>2]=43;c[a+40>>2]=44;c[a+44>>2]=1;c[a+48>>2]=2;c[a+52>>2]=3;c[a+56>>2]=45;c[a+60>>2]=e?46:47;c[a+64>>2]=e?48:49;c[a+68>>2]=4;c[a+72>>2]=e?5:6;e=e?7:8;break}case 10:{c[a+84>>2]=10;c[a+88>>2]=11;c[a+92>>2]=12;c[a+96>>2]=13;c[a+100>>2]=50;c[a+104>>2]=51;e=(d|0)<2;c[a+108>>2]=e?52:53;c[a+112>>2]=54;c[a+116>>2]=14;c[a+120>>2]=e?3:4;c[a>>2]=5;c[a+4>>2]=6;c[a+8>>2]=7;c[a+12>>2]=8;c[a+16>>2]=5;c[a+20>>2]=6;c[a+24>>2]=7;c[a+28>>2]=8;c[a+32>>2]=55;c[a+36>>2]=56;c[a+40>>2]=57;c[a+44>>2]=9;c[a+48>>2]=10;c[a+52>>2]=11;c[a+56>>2]=58;c[a+60>>2]=e?59:60;c[a+64>>2]=e?61:62;c[a+68>>2]=12;c[a+72>>2]=e?13:14;e=e?15:16;break}case 12:{c[a+84>>2]=15;c[a+88>>2]=16;c[a+92>>2]=17;c[a+96>>2]=18;c[a+100>>2]=63;c[a+104>>2]=64;e=(d|0)<2;c[a+108>>2]=e?65:66;c[a+112>>2]=67;c[a+116>>2]=19;c[a+120>>2]=e?5:6;c[a>>2]=9;c[a+4>>2]=10;c[a+8>>2]=11;c[a+12>>2]=12;c[a+16>>2]=9;c[a+20>>2]=10;c[a+24>>2]=11;c[a+28>>2]=12;c[a+32>>2]=68;c[a+36>>2]=69;c[a+40>>2]=70;c[a+44>>2]=17;c[a+48>>2]=18;c[a+52>>2]=19;c[a+56>>2]=71;c[a+60>>2]=e?72:73;c[a+64>>2]=e?74:75;c[a+68>>2]=20;c[a+72>>2]=e?21:22;e=e?23:24;break}case 14:{c[a+84>>2]=20;c[a+88>>2]=21;c[a+92>>2]=22;c[a+96>>2]=23;c[a+100>>2]=76;c[a+104>>2]=77;e=(d|0)<2;c[a+108>>2]=e?78:79;c[a+112>>2]=80;c[a+116>>2]=24;c[a+120>>2]=e?7:8;c[a>>2]=13;c[a+4>>2]=14;c[a+8>>2]=15;c[a+12>>2]=16;c[a+16>>2]=13;c[a+20>>2]=14;c[a+24>>2]=15;c[a+28>>2]=16;c[a+32>>2]=81;c[a+36>>2]=82;c[a+40>>2]=83;c[a+44>>2]=25;c[a+48>>2]=26;c[a+52>>2]=27;c[a+56>>2]=84;c[a+60>>2]=e?85:86;c[a+64>>2]=e?87:88;c[a+68>>2]=28;c[a+72>>2]=e?29:30;e=e?31:32;break}default:if((b|0)<9){c[a+84>>2]=25;c[a+88>>2]=26;c[a+92>>2]=27;c[a+96>>2]=28;c[a+100>>2]=89;c[a+104>>2]=90;e=(d|0)<2;c[a+108>>2]=e?91:92;c[a+112>>2]=93;c[a+116>>2]=29;c[a+120>>2]=e?9:10;c[a>>2]=17;c[a+4>>2]=18;c[a+8>>2]=19;c[a+12>>2]=20;c[a+16>>2]=17;c[a+20>>2]=18;c[a+24>>2]=19;c[a+28>>2]=20;c[a+32>>2]=94;c[a+36>>2]=95;c[a+40>>2]=96;c[a+44>>2]=33;c[a+48>>2]=34;c[a+52>>2]=35;c[a+56>>2]=97;c[a+60>>2]=e?98:99;c[a+64>>2]=e?100:101;c[a+68>>2]=36;c[a+72>>2]=e?37:38;e=e?39:40;break a}else{c[f>>2]=200871;c[f+4>>2]=172119;c[f+8>>2]=150;mx(0,0,214689,f);ba()}}while(0);c[a+76>>2]=e;c[a+80>>2]=0;c[a+132>>2]=6;Nb=g;return}function Ud(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+104|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=ol(b)|0}while((hU(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=ol(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;while(1){if((h|32|0)!=(a[214874+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=ol(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=8){e=8;break}}c:do switch(e&2147483647|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;while(1){if((h|32|0)!=(a[214936+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=ol(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=3){e=3;break}}}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=ol(b)|0;if((e|0)!=40){if(!(c[n>>2]|0)){g=r;break a}c[o>>2]=(c[o>>2]|0)+-1;g=r;break a}e=1;while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=ol(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=r;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){o=PV()|0;c[o>>2]=22;sw(b,0,0);g=0.0;break a}if(!e){g=r;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=r;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=ol(b)|0;if((e|32|0)==120){g=+Fd(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+Zc(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;o=PV()|0;c[o>>2]=22;sw(b,0,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*s}while(0);return +g}function Vd(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;E=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+808>>2]&1|0)Bf(d,f);if(E&12288|0?(p=c[d+25652>>2]|0,q=a[f+28284>>0]|0,q<<24>>24>-1):0){C=q<<24>>24;z=f+21788|0;y=c[z>>2]|0;B=(y<<4|8)+(b[f+28e3>>1]>>2)|0;D=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;y=(B<<p)+(64<<p)+(H(D+(y<<2&12)|0,c[f+21780>>2]|0)|0)|0;A=d+12|0;hc[c[A>>2]&1023]((c[f+23416+(C*40|0)>>2]|0)+y|0,c[f+21772>>2]|0,4);B=(H((c[z>>2]&7)+(D>>1)|0,c[f+21776>>2]|0)|0)+((B>>1)+64<<p)|0;D=c[f+23416+(C*40|0)+4>>2]|0;hc[c[A>>2]&1023](D+B|0,(c[f+23416+(C*40|0)+8>>2]|0)-D|0,2)}a:do if(!(E&8)){if(E&16|0){B=d+25652|0;C=j+64|0;D=l+64|0;Lc(d,f,0,0,8,8<<c[B>>2],g,h,i,0,0,C,c[k>>2]|0,D,c[m>>2]|0,n,o,E&4096,E&16384);Lc(d,f,8,0,8,8<<c[B>>2],g,h,i,0,4,C,c[k>>2]|0,D,c[m>>2]|0,n,o,E&8192,E&32768);break}if(E&32|0){x=f+21780|0;y=j+64|0;z=k+4|0;A=l+64|0;B=m+4|0;C=n+4|0;D=o+4|0;Lc(d,f,0,0,16,c[x>>2]<<3,g,h,i,0,0,y,c[z>>2]|0,A,c[B>>2]|0,C,D,E&4096,E&16384);Lc(d,f,4,0,16,c[x>>2]<<3,g,h,i,4,0,y,c[z>>2]|0,A,c[B>>2]|0,C,D,E&8192,E&32768);break}x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;D=d+25652|0;w=j+128|0;v=l+128|0;u=k+8|0;t=m+8|0;s=n+8|0;l=o+8|0;k=f+21780|0;j=0;while(1){if((j|0)==4)break a;p=e[f+28552+(j<<1)>>1]|0;m=j<<2;n=m&4;o=j<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;r=p&16384;Lc(d,f,m,0,4,4<<c[D>>2],g,h,i,n,o,w,c[y>>2]|0,v,c[A>>2]|0,B,C,q,r);Lc(d,f,m|2,0,4,4<<c[D>>2],g,h,i,n,o|2,w,c[y>>2]|0,v,c[A>>2]|0,B,C,q,r);break}if(p&32|0){q=p&4096;r=p&16384;Lc(d,f,m,0,8,c[k>>2]<<2,g,h,i,n,o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,q,r);Lc(d,f,m|1,0,8,c[k>>2]<<2,g,h,i,n|2,o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,q,r);break}r=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;Lc(d,f,p+m|0,1,4,0,g,h,i,p<<1&2|n,p&2|o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,r,q);p=p+1|0}}else Lc(d,f,m,1,8,0,g,h,i,n,o,x,c[y>>2]|0,z,c[A>>2]|0,B,C,p&4096,p&16384);while(0);j=j+1|0}}else Lc(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,E&4096,E&16384);while(0);if(E&49152|0?(F=c[d+25652>>2]|0,G=a[f+28324>>0]|0,G<<24>>24>-1):0){h=G<<24>>24;E=f+21788|0;D=c[E>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<<F)+(64<<F)+(H(i+(D<<2&12)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;hc[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(H((c[E>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<<F)|0;i=c[f+25336+(h*40|0)+4>>2]|0;hc[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function Wd(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;E=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+808>>2]&1|0)Bf(d,f);if(E&12288|0?(p=c[d+25652>>2]|0,q=a[f+28284>>0]|0,q<<24>>24>-1):0){C=q<<24>>24;z=f+21788|0;y=c[z>>2]|0;B=(y<<4|8)+(b[f+28e3>>1]>>2)|0;D=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;y=(B<<p)+(64<<p)+(H(D+(y<<2&12)|0,c[f+21780>>2]|0)|0)|0;A=d+12|0;hc[c[A>>2]&1023]((c[f+23416+(C*40|0)>>2]|0)+y|0,c[f+21772>>2]|0,4);B=(H((c[z>>2]&7)+(D>>1)|0,c[f+21776>>2]|0)|0)+((B>>1)+64<<p)|0;D=c[f+23416+(C*40|0)+4>>2]|0;hc[c[A>>2]&1023](D+B|0,(c[f+23416+(C*40|0)+8>>2]|0)-D|0,2)}a:do if(!(E&8)){if(E&16|0){B=d+25652|0;C=j+64|0;D=l+64|0;Gc(d,f,0,0,8,8<<c[B>>2],g,h,i,0,0,C,c[k>>2]|0,D,c[m>>2]|0,n,o,E&4096,E&16384);Gc(d,f,8,0,8,8<<c[B>>2],g,h,i,0,4,C,c[k>>2]|0,D,c[m>>2]|0,n,o,E&8192,E&32768);break}if(E&32|0){x=f+21780|0;y=j+64|0;z=k+4|0;A=l+64|0;B=m+4|0;C=n+4|0;D=o+4|0;Gc(d,f,0,0,16,c[x>>2]<<3,g,h,i,0,0,y,c[z>>2]|0,A,c[B>>2]|0,C,D,E&4096,E&16384);Gc(d,f,4,0,16,c[x>>2]<<3,g,h,i,4,0,y,c[z>>2]|0,A,c[B>>2]|0,C,D,E&8192,E&32768);break}x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;D=d+25652|0;w=j+128|0;v=l+128|0;u=k+8|0;t=m+8|0;s=n+8|0;l=o+8|0;k=f+21780|0;j=0;while(1){if((j|0)==4)break a;p=e[f+28552+(j<<1)>>1]|0;m=j<<2;n=m&4;o=j<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;r=p&16384;Gc(d,f,m,0,4,4<<c[D>>2],g,h,i,n,o,w,c[y>>2]|0,v,c[A>>2]|0,B,C,q,r);Gc(d,f,m|2,0,4,4<<c[D>>2],g,h,i,n,o|2,w,c[y>>2]|0,v,c[A>>2]|0,B,C,q,r);break}if(p&32|0){q=p&4096;r=p&16384;Gc(d,f,m,0,8,c[k>>2]<<2,g,h,i,n,o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,q,r);Gc(d,f,m|1,0,8,c[k>>2]<<2,g,h,i,n|2,o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,q,r);break}r=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;Gc(d,f,p+m|0,1,4,0,g,h,i,p<<1&2|n,p&2|o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,r,q);p=p+1|0}}else Gc(d,f,m,1,8,0,g,h,i,n,o,x,c[y>>2]|0,z,c[A>>2]|0,B,C,p&4096,p&16384);while(0);j=j+1|0}}else Gc(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,E&4096,E&16384);while(0);if(E&49152|0?(F=c[d+25652>>2]|0,G=a[f+28324>>0]|0,G<<24>>24>-1):0){h=G<<24>>24;E=f+21788|0;D=c[E>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<<F)+(64<<F)+(H(i+(D<<2&12)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;hc[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(H((c[E>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<<F)|0;i=c[f+25336+(h*40|0)+4>>2]|0;hc[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function Xd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+240|0;p=s+216|0;n=s+208|0;l=s+200|0;g=s+192|0;i=s;j=s+224|0;k=b+6484|0;h=c[k>>2]|0;a:do if(h){r=b+1004|0;f=c[r>>2]|0;o=(d|0)==1;do if((h|0)==1&(o&(f|0)==0)){GJ(b)|0;m=b+4|0;mx(c[m>>2]|0,48,189159,g);if((ju(c[m>>2]|0,i,j,2)|0)>=0?(eh(b,i,c[j>>2]|0,2,1)|0)>=0:0){c[k>>2]=2;c[b+6512>>2]=0;f=c[r>>2]|0;h=2;break}f=0;break a}while(0);m=(d|0)==0;b:do if(!((f|d|0)==0&(h|0)==2)){switch(h|0){case 1:{q=15;break b}case 7:case 12:{f=c[r>>2]|0;if(o&(f|0)==3){c[r>>2]=4;f=c[b+564>>2]|0;c[b+812+(e<<2)>>2]=f;break a}else q=21;break}case 11:{f=c[r>>2]|0;q=21;break}case 6:{f=c[r>>2]|0;q=23;break}case 5:{f=c[r>>2]|0;q=29;break}case 4:{f=c[r>>2]|0;q=32;break}case 2:case 3:break;default:{f=0;break a}}if((q|0)==21)if(m&(h|0)==11&(f|0)==2){c[r>>2]=3;f=c[b+496>>2]|0;c[b+748+(e<<2)>>2]=f;break a}else q=23;c:do if((q|0)==23)if((f|0)==((a[43792+h>>0]|0)+-1|0)){switch(d|0){case 0:case 3:break;default:{q=29;break c}}g=b+1008|0;if((c[g>>2]|0)==0?(d|0)!=3|(e|0)!=0:0){f=c[b+4>>2]|0;c[n>>2]=m?189191:201599;c[n+4>>2]=e;mx(f,24,189195,n);c[g>>2]=(c[g>>2]|0)+1;f=c[r>>2]|0}c[r>>2]=f+1;f=c[b+684>>2]|0;c[b+748+(d<<6)+(e<<2)>>2]=f;break a}else q=29;while(0);if((q|0)==29)if(o&(f|0)==2){c[r>>2]=3;f=c[b+560>>2]|0;c[b+812+(e<<2)>>2]=f;break a}else q=32;if((q|0)==32){d:do if((f|0)==((a[43792+h>>0]|0)+-1|0)){switch(d|0){case 0:case 3:break;default:break d}g=b+1008|0;if((c[g>>2]|0)==0?(d|0)!=0|(e|0)!=1:0){f=c[b+4>>2]|0;c[p>>2]=m?189191:201599;c[p+4>>2]=e;mx(f,24,189282,p);c[g>>2]=(c[g>>2]|0)+1;f=c[r>>2]|0}c[r>>2]=f+1;f=c[b+496>>2]|0;c[b+748+(d<<6)+(e<<2)>>2]=f;break a}while(0);if(m&(h|0)==4&(f|0)==2){c[r>>2]=3;f=c[b+496>>2]|0;c[b+748+(e<<2)>>2]=f;break a}}f=c[r>>2]|0;if(!(o&(f|0)==((h|0)!=2|0)))if((h|0)==2){f=0;break a}else break;else{c[r>>2]=f+1;f=c[b+556>>2]|0;c[b+812+(e<<2)>>2]=f;break a}}else{GJ(b)|0;q=b+4|0;mx(c[q>>2]|0,48,189174,l);if((ju(c[q>>2]|0,i,j,1)|0)<0){f=0;break a}if((eh(b,i,c[j>>2]|0,2,1)|0)<0){f=0;break a}c[k>>2]=1;if(c[b+6488>>2]|0)c[b+6512>>2]=-1;q=15}while(0);if((q|0)==15)f=c[r>>2]|0;if(!(f|d)){c[r>>2]=f+1;f=c[b+492>>2]|0;c[b+748+(e<<2)>>2]=f}else f=0}else f=c[b+748+(d<<6)+(e<<2)>>2]|0;while(0);Nb=s;return f|0}function Yd(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;y=f>>1;g=0-y|0;if(!c){q=e[a+(g<<1)>>1]|0;o=q}else{o=e[a+(g<<1)>>1]|0;q=e[a+(~y<<1)>>1]|0}r=e[a+(1-y<<1)>>1]|0;p=r+2|0;s=e[a+(2-y<<1)>>1]|0;t=s+2|0;r=(t+o+(r<<1)|0)>>>2;u=e[a+(3-y<<1)>>1]|0;s=(p+(s<<1)+u|0)>>>2;w=e[a+(4-y<<1)>>1]|0;t=(t+(u<<1)+w|0)>>>2;x=e[a+(5-y<<1)>>1]|0;u=(u+2+(w<<1)+x|0)>>>2;v=e[a+(6-y<<1)>>1]|0;w=(w+2+(x<<1)+v|0)>>>2;c=e[a+(7-y<<1)>>1]|0;x=(x+2+(v<<1)+c|0)>>>2;if(!d){g=c*3|0;d=c;h=c;i=c;j=c;k=c;l=c;m=c;n=c;c=g}else{z=e[a+(8-y<<1)>>1]|0;n=e[a+(9-y<<1)>>1]|0;A=e[a+(10-y<<1)>>1]|0;m=A+2|0;l=e[a+(11-y<<1)>>1]|0;k=e[a+(12-y<<1)>>1]|0;j=e[a+(13-y<<1)>>1]|0;i=e[a+(14-y<<1)>>1]|0;h=e[a+(15-y<<1)>>1]|0;g=(i+2+(h*3|0)|0)>>>2;d=g;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(m+(l<<1)+k|0)>>>2;l=(n+2+(A<<1)+l|0)>>>2;m=(m+z+(n<<1)|0)>>>2;n=(c+2+(z<<1)+n|0)>>>2;c=(c<<1)+z|0;g=g*3|0}A=(v+2+c|0)>>>2;v=s+2|0;b[a>>1]=(v+((p+q+(o<<1)|0)>>>2)+(r<<1)|0)>>>2;z=t+2|0;s=(z+r+(s<<1)|0)>>>2&65535;b[a+2>>1]=s;b[a+(y<<1)>>1]=s;t=(v+(t<<1)+u|0)>>>2&65535;b[a+4>>1]=t;b[a+(y+1<<1)>>1]=t;s=f&-2;b[a+(s<<1)>>1]=t;z=(z+(u<<1)+w|0)>>>2&65535;b[a+6>>1]=z;b[a+(y+2<<1)>>1]=z;b[a+((f|1)<<1)>>1]=z;t=y*3|0;b[a+(t<<1)>>1]=z;z=(u+2+(w<<1)+x|0)>>>2&65535;b[a+8>>1]=z;b[a+(y+3<<1)>>1]=z;b[a+(s+2<<1)>>1]=z;b[a+(t+1<<1)>>1]=z;v=y<<2;b[a+(v<<1)>>1]=z;z=(w+2+(x<<1)+A|0)>>>2&65535;b[a+10>>1]=z;b[a+(y+4<<1)>>1]=z;b[a+(s+3<<1)>>1]=z;b[a+(t+2<<1)>>1]=z;b[a+((v|1)<<1)>>1]=z;w=y*5|0;b[a+(w<<1)>>1]=z;z=(x+2+n+(A<<1)|0)>>>2&65535;b[a+12>>1]=z;b[a+(y+5<<1)>>1]=z;b[a+(s+4<<1)>>1]=z;b[a+(t+3<<1)>>1]=z;b[a+((v|2)<<1)>>1]=z;b[a+(w+1<<1)>>1]=z;f=y*6|0;b[a+(f<<1)>>1]=z;z=m+2|0;x=(z+A+(n<<1)|0)>>>2&65535;b[a+14>>1]=x;b[a+(y+6<<1)>>1]=x;b[a+(s+5<<1)>>1]=x;b[a+(t+4<<1)>>1]=x;b[a+((v|3)<<1)>>1]=x;b[a+(w+2<<1)>>1]=x;b[a+((f|1)<<1)>>1]=x;A=y*7|0;b[a+(A<<1)>>1]=x;x=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(y+7<<1)>>1]=x;b[a+(s+6<<1)>>1]=x;b[a+(t+5<<1)>>1]=x;b[a+(v+4<<1)>>1]=x;b[a+(w+3<<1)>>1]=x;b[a+(f+2<<1)>>1]=x;b[a+(A+1<<1)>>1]=x;z=(z+(l<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=z;b[a+(t+6<<1)>>1]=z;b[a+(v+5<<1)>>1]=z;b[a+(w+4<<1)>>1]=z;b[a+(f+3<<1)>>1]=z;b[a+(A+2<<1)>>1]=z;z=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(t+7<<1)>>1]=z;b[a+(v+6<<1)>>1]=z;b[a+(w+5<<1)>>1]=z;b[a+(f+4<<1)>>1]=z;b[a+(A+3<<1)>>1]=z;z=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(v+7<<1)>>1]=z;b[a+(w+6<<1)>>1]=z;b[a+(f+5<<1)>>1]=z;b[a+(A+4<<1)>>1]=z;z=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(w+7<<1)>>1]=z;b[a+(f+6<<1)>>1]=z;b[a+(A+5<<1)>>1]=z;z=(i+2+(h<<1)+d|0)>>>2&65535;b[a+(f+7<<1)>>1]=z;b[a+(A+6<<1)>>1]=z;b[a+(A+7<<1)>>1]=(h+2+g|0)>>>2;return}function Zd(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=H((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=H((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=H((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=H((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=H((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=H((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=H(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((H(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;F=b[f+(l<<1)>>1]|0;O=b[f>>1]|0;N=b[f+(h<<1)>>1]|0;M=b[f+(m<<1)>>1]|0;L=b[f+(n<<1)>>1]|0;J=b[f+(o<<1)>>1]|0;G=b[f+(p<<1)>>1]|0;e=b[f+(q<<1)>>1]|0;C=b[f+(r<<1)>>1]|0;D=b[f+(s<<1)>>1]|0;c=b[f+(t<<1)>>1]|0;E=b[f+(u<<1)>>1]|0;K=L+512|0;B=K+(b[f+(i<<1)>>1]|0)+((N+O|0)*20|0)+(H(M+F|0,-5)|0)>>10;a[k>>0]=((d[k>>0]|0)+1+((B>>>0>255?(B^-2147483648)>>31:B)&255)|0)>>>1;B=k+g|0;I=J+512|0;F=I+F+((M+N|0)*20|0)+(H(L+O|0,-5)|0)>>10;a[B>>0]=(((F>>>0>255?(F^-2147483648)>>31:F)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+v|0;F=G+512|0;O=F+O+((L+M|0)*20|0)+(H(J+N|0,-5)|0)>>10;a[B>>0]=(((O>>>0>255?(O^-2147483648)>>31:O)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+w|0;N=N+512+e+((J+L|0)*20|0)+(H(G+M|0,-5)|0)>>10;a[B>>0]=(((N>>>0>255?(N^-2147483648)>>31:N)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+x|0;L=M+512+C+((G+J|0)*20|0)+(H(e+L|0,-5)|0)>>10;a[B>>0]=(((L>>>0>255?(L^-2147483648)>>31:L)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+y|0;J=K+D+((e+G|0)*20|0)+(H(C+J|0,-5)|0)>>10;a[B>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+z|0;G=I+c+((C+e|0)*20|0)+(H(D+G|0,-5)|0)>>10;a[B>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+A|0;e=F+E+((D+C|0)*20|0)+(H(c+e|0,-5)|0)>>10;a[B>>0]=(((e>>>0>255?(e^-2147483648)>>31:e)&255)+1+(d[B>>0]|0)|0)>>>1;k=k+1|0;f=f+2|0;j=j+1|0}return}function _d(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;k=h>>1;A=g*13|0;i=c;j=0;d=d+(0-(h&-2)<<1)|0;while(1){if((j|0)==13)break;x=d+2|0;y=d+-2|0;w=d+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+6|0;b[i>>1]=(((e[x>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[d+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[d>>1]|0)|0,-5)|0;t=d+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=d+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[d>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=d+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=d+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=d+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[d+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;d=d+(k<<1)|0}o=f>>1;p=H(g,-2)|0;q=0-g|0;r=g<<1;s=g*3|0;t=g<<2;u=g*5|0;v=g*6|0;w=g*7|0;x=g<<3;y=g*9|0;z=g*10|0;j=f&-2;k=o*3|0;f=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;i=a;d=c+(A<<1)+((H(g,-11)|0)<<1)|0;h=0;while(1){if((h|0)==8)break;P=(b[d+(q<<1)>>1]|0)+10230|0;O=(b[d>>1]|0)+10230|0;M=b[d+(g<<1)>>1]|0;N=M+10230|0;K=b[d+(r<<1)>>1]|0;L=K+10230|0;I=b[d+(s<<1)>>1]|0;J=I+10230|0;F=b[d+(t<<1)>>1]|0;G=F+10230|0;D=b[d+(u<<1)>>1]|0;E=D+10230|0;A=(b[d+(v<<1)>>1]|0)+10230|0;a=(b[d+(w<<1)>>1]|0)+10230|0;B=(b[d+(x<<1)>>1]|0)+10230|0;c=(b[d+(y<<1)>>1]|0)+10230|0;C=b[d+(z<<1)>>1]|0;Q=(b[d+(p<<1)>>1]|0)+10742+J+((N+O|0)*20|0)+(H(L+P|0,-5)|0)>>10;b[i>>1]=Q>>>0<1024?Q:(Q^-2147483648)>>31&1023;F=F+10742|0;P=F+P+((L+N|0)*20|0)+(H(J+O|0,-5)|0)>>10;b[i+(o<<1)>>1]=P>>>0<1024?P:(P^-2147483648)>>31&1023;N=D+10742+O+((J+L|0)*20|0)+(H(G+N|0,-5)|0)>>10;b[i+(j<<1)>>1]=N>>>0<1024?N:(N^-2147483648)>>31&1023;L=M+10742+A+((G+J|0)*20|0)+(H(E+L|0,-5)|0)>>10;b[i+(k<<1)>>1]=L>>>0<1024?L:(L^-2147483648)>>31&1023;J=K+10742+a+((E+G|0)*20|0)+(H(A+J|0,-5)|0)>>10;b[i+(f<<1)>>1]=J>>>0<1024?J:(J^-2147483648)>>31&1023;G=I+10742+B+((A+E|0)*20|0)+(H(a+G|0,-5)|0)>>10;b[i+(l<<1)>>1]=G>>>0<1024?G:(G^-2147483648)>>31&1023;E=F+c+((a+A|0)*20|0)+(H(B+E|0,-5)|0)>>10;b[i+(m<<1)>>1]=E>>>0<1024?E:(E^-2147483648)>>31&1023;A=D+20972+C+((B+a|0)*20|0)+(H(c+A|0,-5)|0)>>10;b[i+(n<<1)>>1]=A>>>0<1024?A:(A^-2147483648)>>31&1023;i=i+2|0;d=d+2|0;h=h+1|0}return}function $d(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;E=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+808>>2]&1|0)Bf(d,f);if(E&12288|0?(p=c[d+25652>>2]|0,q=a[f+28284>>0]|0,q<<24>>24>-1):0){B=q<<24>>24;C=c[f+21788>>2]|0;C=((C<<4|8)+(b[f+28e3>>1]>>2)<<p)+(64<<p)+(H((c[f+21792>>2]<<4|C<<2&12)+(b[f+28002>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;A=d+12|0;D=f+21772|0;hc[c[A>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+C|0,c[D>>2]|0,4);hc[c[A>>2]&1023]((c[f+23416+(B*40|0)+4>>2]|0)+C|0,c[D>>2]|0,4);hc[c[A>>2]&1023]((c[f+23416+(B*40|0)+8>>2]|0)+C|0,c[D>>2]|0,4)}a:do if(!(E&8)){if(E&16|0){B=d+25652|0;C=j+64|0;D=l+64|0;Hc(d,f,0,0,8,8<<c[B>>2],g,h,i,0,0,C,c[k>>2]|0,D,c[m>>2]|0,n,o,E&4096,E&16384);Hc(d,f,8,0,8,8<<c[B>>2],g,h,i,0,4,C,c[k>>2]|0,D,c[m>>2]|0,n,o,E&8192,E&32768);break}if(E&32|0){x=f+21780|0;y=j+64|0;z=k+4|0;A=l+64|0;B=m+4|0;C=n+4|0;D=o+4|0;Hc(d,f,0,0,16,c[x>>2]<<3,g,h,i,0,0,y,c[z>>2]|0,A,c[B>>2]|0,C,D,E&4096,E&16384);Hc(d,f,4,0,16,c[x>>2]<<3,g,h,i,4,0,y,c[z>>2]|0,A,c[B>>2]|0,C,D,E&8192,E&32768);break}x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;D=d+25652|0;w=j+128|0;v=l+128|0;u=k+8|0;t=m+8|0;s=n+8|0;l=o+8|0;k=f+21780|0;j=0;while(1){if((j|0)==4)break a;p=e[f+28552+(j<<1)>>1]|0;m=j<<2;n=m&4;o=j<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;r=p&16384;Hc(d,f,m,0,4,4<<c[D>>2],g,h,i,n,o,w,c[y>>2]|0,v,c[A>>2]|0,B,C,q,r);Hc(d,f,m|2,0,4,4<<c[D>>2],g,h,i,n,o|2,w,c[y>>2]|0,v,c[A>>2]|0,B,C,q,r);break}if(p&32|0){q=p&4096;r=p&16384;Hc(d,f,m,0,8,c[k>>2]<<2,g,h,i,n,o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,q,r);Hc(d,f,m|1,0,8,c[k>>2]<<2,g,h,i,n|2,o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,q,r);break}r=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;Hc(d,f,p+m|0,1,4,0,g,h,i,p<<1&2|n,p&2|o,w,c[u>>2]|0,v,c[t>>2]|0,s,l,r,q);p=p+1|0}}else Hc(d,f,m,1,8,0,g,h,i,n,o,x,c[y>>2]|0,z,c[A>>2]|0,B,C,p&4096,p&16384);while(0);j=j+1|0}}else Hc(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,E&4096,E&16384);while(0);if(E&49152|0?(F=c[d+25652>>2]|0,G=a[f+28324>>0]|0,G<<24>>24>-1):0){g=G<<24>>24;h=c[f+21788>>2]|0;h=((h<<4|8)+(b[f+28160>>1]>>2)<<F)+(64<<F)+(H((c[f+21792>>2]<<4|h<<2&12)+(b[f+28162>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;G=d+12|0;i=f+21772|0;hc[c[G>>2]&1023]((c[f+25336+(g*40|0)>>2]|0)+h|0,c[i>>2]|0,4);hc[c[G>>2]&1023]((c[f+25336+(g*40|0)+4>>2]|0)+h|0,c[i>>2]|0,4);hc[c[G>>2]&1023]((c[f+25336+(g*40|0)+8>>2]|0)+h|0,c[i>>2]|0,4)}return}function ae(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=f>>1;g=0-s|0;if(!c){c=e[a+(g<<1)>>1]|0;g=c}else{g=e[a+(g<<1)>>1]|0;c=e[a+(~s<<1)>>1]|0}k=e[a+(1-s<<1)>>1]|0;p=k+2|0;r=(p+c+(g<<1)|0)>>>2;l=e[a+(2-s<<1)>>1]|0;m=l+2|0;k=(m+g+(k<<1)|0)>>>2;n=e[a+(3-s<<1)>>1]|0;l=(p+(l<<1)+n|0)>>>2;p=e[a+(4-s<<1)>>1]|0;m=(m+(n<<1)+p|0)>>>2;q=e[a+(5-s<<1)>>1]|0;n=(n+2+(p<<1)+q|0)>>>2;o=e[a+(6-s<<1)>>1]|0;p=(p+2+(q<<1)+o|0)>>>2;c=e[a+(7-s<<1)>>1]|0;q=(q+2+(o<<1)+c|0)>>>2;if(!d){g=c;d=c;h=c;i=c;j=c;c=c*3|0}else{t=e[a+(8-s<<1)>>1]|0;j=e[a+(9-s<<1)>>1]|0;u=e[a+(10-s<<1)>>1]|0;i=u+2|0;h=e[a+(11-s<<1)>>1]|0;d=e[a+(12-s<<1)>>1]|0;g=(h+2+(d<<1)+(e[a+(13-s<<1)>>1]|0)|0)>>>2;d=(i+(h<<1)+d|0)>>>2;h=(j+2+(u<<1)+h|0)>>>2;i=(i+t+(j<<1)|0)>>>2;j=(c+2+(t<<1)+j|0)>>>2;c=(c<<1)+t|0}v=(o+2+c|0)>>>2;c=k+1|0;b[a>>1]=(c+r|0)>>>1;u=l+2|0;b[a+(s<<1)>>1]=(u+r+(k<<1)|0)>>>2;r=(c+l|0)>>>1&65535;b[a+2>>1]=r;c=f&-2;b[a+(c<<1)>>1]=r;r=m+2|0;t=(r+k+(l<<1)|0)>>>2&65535;b[a+(s+1<<1)>>1]=t;k=s*3|0;b[a+(k<<1)>>1]=t;t=(l+1+m|0)>>>1&65535;b[a+4>>1]=t;b[a+((f|1)<<1)>>1]=t;o=s<<2;b[a+(o<<1)>>1]=t;u=(u+(m<<1)+n|0)>>>2&65535;b[a+(s+2<<1)>>1]=u;b[a+(k+1<<1)>>1]=u;f=s*5|0;b[a+(f<<1)>>1]=u;u=(m+1+n|0)>>>1&65535;b[a+6>>1]=u;b[a+(c+2<<1)>>1]=u;b[a+((o|1)<<1)>>1]=u;t=s*6|0;b[a+(t<<1)>>1]=u;r=(r+(n<<1)+p|0)>>>2&65535;b[a+(s+3<<1)>>1]=r;b[a+(k+2<<1)>>1]=r;b[a+(f+1<<1)>>1]=r;u=s*7|0;b[a+(u<<1)>>1]=r;r=(n+1+p|0)>>>1&65535;b[a+8>>1]=r;b[a+(c+3<<1)>>1]=r;b[a+((o|2)<<1)>>1]=r;b[a+((t|1)<<1)>>1]=r;r=(n+2+(p<<1)+q|0)>>>2&65535;b[a+(s+4<<1)>>1]=r;b[a+(k+3<<1)>>1]=r;b[a+(f+2<<1)>>1]=r;b[a+(u+1<<1)>>1]=r;r=(p+1+q|0)>>>1&65535;b[a+10>>1]=r;b[a+(c+4<<1)>>1]=r;b[a+((o|3)<<1)>>1]=r;b[a+(t+2<<1)>>1]=r;r=(p+2+(q<<1)+v|0)>>>2&65535;b[a+(s+5<<1)>>1]=r;b[a+(k+4<<1)>>1]=r;b[a+(f+3<<1)>>1]=r;b[a+(u+2<<1)>>1]=r;r=(q+1+v|0)>>>1&65535;b[a+12>>1]=r;b[a+(c+5<<1)>>1]=r;b[a+(o+4<<1)>>1]=r;b[a+(t+3<<1)>>1]=r;q=(q+2+j+(v<<1)|0)>>>2&65535;b[a+(s+6<<1)>>1]=q;b[a+(k+5<<1)>>1]=q;b[a+(f+4<<1)>>1]=q;b[a+(u+3<<1)>>1]=q;q=j+1|0;r=(q+v|0)>>>1&65535;b[a+14>>1]=r;b[a+(c+6<<1)>>1]=r;b[a+(o+5<<1)>>1]=r;b[a+(t+4<<1)>>1]=r;r=i+2|0;p=(r+v+(j<<1)|0)>>>2&65535;b[a+(s+7<<1)>>1]=p;b[a+(k+6<<1)>>1]=p;b[a+(f+5<<1)>>1]=p;b[a+(u+4<<1)>>1]=p;s=(q+i|0)>>>1&65535;b[a+(c+7<<1)>>1]=s;b[a+(o+6<<1)>>1]=s;b[a+(t+5<<1)>>1]=s;s=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(k+7<<1)>>1]=s;b[a+(f+6<<1)>>1]=s;b[a+(u+5<<1)>>1]=s;s=(i+1+h|0)>>>1&65535;b[a+(o+7<<1)>>1]=s;b[a+(t+6<<1)>>1]=s;s=(r+(h<<1)+d|0)>>>2&65535;b[a+(f+7<<1)>>1]=s;b[a+(u+6<<1)>>1]=s;b[a+(t+7<<1)>>1]=(h+1+d|0)>>>1;b[a+(u+7<<1)>>1]=(h+2+(d<<1)+g|0)>>>2;return}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+48|0;q=r+32|0;n=r+16|0;k=r+8|0;h=r;b=c[a+28200>>2]|0;m=c[a+24312>>2]|0;j=a+29528|0;i=m+92|0;c[i>>2]=c[j>>2];c[j>>2]=0;j=b+660|0;l=c[a+4>>2]|0;if(!((c[j>>2]|0)==0?(c[l+672>>2]|0)<=0:0)){o=l+180|0;f=c[o>>2]|0;g=c[b+664>>2]|0;c[o>>2]=(f|0)>(g|0)?f:g}g=m+84|0;b=0;while(1){f=c[g>>2]|0;if((b|0)==16){b=16;o=8;break}d=c[a+28660+(b<<2)>>2]|0;e=(b|0)==0;if((f|0)<(d|0)){o=7;break}if(!e)c[a+28660+(b+-1<<2)>>2]=d;b=b+1|0}if((o|0)==7)if(e)b=0;else o=8;if((o|0)==8)c[a+28660+(b+-1<<2)>>2]=f;d=16-b|0;if((c[(c[m>>2]|0)+88>>2]|0)==3)if((d|0)>1)o=17;else o=16;else{e=c[a+28716>>2]|0;if((e|0)!=-2147483648?(o=c[a+28720>>2]|0,o=iP(o|0,((o|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0,f=M()|0,!((d|0)>1|((f|0)<0|(f|0)==0&o>>>0<3))):0)o=16;else o=17}if((o|0)==16){d=1;b=a+4|0;o=22}else if((o|0)==17){e=a+4|0;if(!b){d=a+28660|0;b=c[d>>2]|0;c[h>>2]=c[g>>2];c[h+4>>2]=b;mx(l,40,199664,h);b=1;while(1){if((b|0)==16)break;c[a+28660+(b<<2)>>2]=-2147483648;b=b+1|0}c[d>>2]=c[g>>2];c[i>>2]=1;g=e}else{b=e;o=22}}if((o|0)==22)if((c[l+180>>2]|0)<(d|0)?(c[j>>2]|0)==0:0){g=(c[l+432>>2]|0)>1?24:40;c[k>>2]=d;mx(l,g,199683,k);c[(c[b>>2]|0)+180>>2]=d;g=b}else g=b;k=0;while(1){b=a+28588+(k<<2)|0;if(!(c[b>>2]|0))break;else k=k+1|0}if(k>>>0>=17){c[n>>2]=199716;c[n+4>>2]=199033;c[n+8>>2]=1343;mx(0,0,214689,n);ba()}c[b>>2]=m;b=m+640|0;if(!(c[b>>2]|0))c[b>>2]=4;j=a+28588|0;f=c[j>>2]|0;l=f;i=0;b=1;while(1){d=c[a+28588+(b<<2)>>2]|0;if(!d)break;if(c[(c[d>>2]|0)+84>>2]|0)break;if(c[d+92>>2]|0)break;o=(c[d+84>>2]|0)<(c[l+84>>2]|0);l=o?d:l;i=o?b:i;b=b+1|0}b=c[g>>2]|0;e=c[b+180>>2]|0;do if(!e){if((c[(c[f>>2]|0)+84>>2]|0)==0?(c[f+92>>2]|0)==0:0)break;c[a+28728>>2]=-2147483648}while(0);d=c[l+84>>2]|0;h=a+28728|0;f=(d|0)<(c[h>>2]|0);do if(!((k|0)<(e|0)&(f^1))){b=l+640|0;c[b>>2]=c[b>>2]&-5;b=i;e=c[a+28588+(i<<2)>>2]|0;while(1){if(!e)break;o=b+1|0;e=c[a+28588+(o<<2)>>2]|0;c[a+28588+(b<<2)>>2]=e;b=o}if(f){b=c[g>>2]|0;o=61;break}else{e=c[g>>2]|0;b=e;e=c[e+180>>2]|0;o=47;break}}else o=47;while(0);do if((o|0)==47){if((k|0)<(e|0)){o=61;break}g=a+28724|0;c[g>>2]=l;if((i|0)==0?(p=c[j>>2]|0,(p|0)!=0):0)if((c[(c[p>>2]|0)+84>>2]|0)==0?(c[p+92>>2]|0)==0:0)o=53;else d=-2147483648;else o=53;c[h>>2]=d;e=l+644|0;f=c[e>>2]|0;d=a+29560|0;if(f|0)c[d>>2]=c[d>>2]|2;a=(c[d>>2]|0)>>>1&1|f;c[e>>2]=a;if(!a){if((c[b+92>>2]&8|0)==0?(c[b+96>>2]&4194304|0)==0:0){c[g>>2]=0;break}a=(c[l>>2]|0)+296|0;c[a>>2]=c[a>>2]|1}}while(0);if((o|0)==61){c[q>>2]=f?199727:1137073;mx(b,48,199731,q)}Nb=r;return}function ce(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,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;mS()|0;q=a+48|0;s=c[q>>2]|0;s=Eu(-1,1073741823,s|0,((s|0)<0)<<31>>31|0)|0;p=M()|0;r=a+40|0;i=c[r>>2]|0;i=Eu(s|0,p|0,i|0,((i|0)<0)<<31>>31|0)|0;p=M()|0;s=a+44|0;j=c[s>>2]|0;j=(j|0)==0?d:(j|0)<(d|0)?j:d;d=((f|0)<0)<<31>>31;o=(p|0)<(d|0)|(p|0)==(d|0)&i>>>0<f>>>0;i=o?i:f;c[g>>2]=0;d=c[a+8>>2]|0;f=c[q>>2]|0;a:do if((d|0)==1&(f|0)==1){l=a+36|0;h=c[l>>2]|0;t=c[r>>2]|0;f=((t|0)<0)<<31>>31;o=Eu(0,h|0,t|0,f|0)|0;n=M()|0;m=a+32|0;n=kP(0,c[m>>2]|0,o|0,n|0)|0;o=M()|0;k=c[a+20>>2]|0;d=((k|0)<0)<<31>>31;p=Eu(0,k|0,t|0,f|0)|0;q=M()|0;i=oK(t|0,f|0,i|0,((i|0)<0)<<31>>31|0)|0;i=kP(i|0,M()|0,~h|0,~(((h|0)<0)<<31>>31)|0)|0;i=kP(i|0,M()|0,k|0,d|0)|0;d=Eu(i|0,M()|0,k|0,d|0)|0;M()|0;d=(j|0)>(d|0)?d:j;k=(d|0)>0;d=k?d:0;if(k){h=b+260|0;i=a+96|0;j=a+24|0;k=a+28|0;f=0;while(1){if((f|0)>=(c[h>>2]|0))break a;nc[c[i>>2]&15](c[b+(f<<2)>>2]|0,c[e+(f<<2)>>2]|0,d,n,o,p,q);f=f+1|0;if((f|0)==(c[h>>2]|0)){u=H(c[j>>2]|0,d)|0;u=(c[m>>2]|0)+u|0;w=c[l>>2]|0;t=c[k>>2]|0;t=oK(t|0,((t|0)<0)<<31>>31|0,d|0,0)|0;w=kP(t|0,M()|0,w|0,((w|0)<0)<<31>>31|0)|0;t=M()|0;v=c[r>>2]|0;v=Eu(w|0,t|0,v|0,((v|0)<0)<<31>>31|0)|0;M()|0;c[g>>2]=u+v;v=c[l>>2]|0;u=c[k>>2]|0;u=oK(u|0,((u|0)<0)<<31>>31|0,d|0,0)|0;v=kP(u|0,M()|0,v|0,((v|0)<0)<<31>>31|0)|0;u=M()|0;t=c[r>>2]|0;t=Js(v|0,u|0,t|0,((t|0)<0)<<31>>31|0)|0;M()|0;c[l>>2]=t;c[m>>2]=0}}}else d=0}else{t=kP(i|0,((i|0)<0)<<31>>31|0,1,0)|0;t=iP(t|0,M()|0,d|0,((d|0)<0)<<31>>31|0)|0;t=oK(t|0,M()|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M()|0;f=c[a+32>>2]|0;f=iP(t|0,u|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M()|0;t=c[r>>2]|0;t=oK(f|0,u|0,t|0,((t|0)<0)<<31>>31|0)|0;u=M()|0;f=c[a+36>>2]|0;w=c[a+20>>2]|0;d=((w|0)<0)<<31>>31;v=~f;v=kP(t|0,u|0,v|0,((v|0)<0)<<31>>31|0)|0;v=kP(v|0,M()|0,w|0,d|0)|0;d=Eu(v|0,M()|0,w|0,d|0)|0;M()|0;d=(j|0)>(d|0)?d:j;w=(d|0)>0;d=w?d:0;if(w){do if(!(c[a+52>>2]|0))h=13;else{if((f|0)==0?(c[a+28>>2]|0)==0:0){h=13;break}f=a+104|0}while(0);if((h|0)==13)f=a+100|0;h=c[f>>2]|0;i=b+260|0;f=0;while(1){j=c[i>>2]|0;if((f|0)>=(j|0))break a;w=f+1|0;v=$b[h&63](a,c[b+(f<<2)>>2]|0,c[e+(f<<2)>>2]|0,d,(w|0)==(j|0)&1)|0;c[g>>2]=v;f=w}}else d=0}while(0);f=c[s>>2]|0;if(f|0?(w=f-d|0,c[s>>2]=w,(w|0)==0):0){u=c[a+16>>2]|0;c[a+20>>2]=u;w=c[r>>2]|0;v=(u|0)/(w|0)|0;c[a+24>>2]=v;w=u-(H(v,w)|0)|0;c[a+28>>2]=w}return d|0}function de(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=Nb;Nb=Nb+112|0;i=l+24|0;j=l;e=l+96|0;k=l+92|0;h=l+48|0;c[e>>2]=0;f=BP()|0;c[k>>2]=f;g=c[d+32>>2]|0;if((g|0)==(c[b+148>>2]|0)){i=b+312|0;c[i>>2]=(c[i>>2]|0)+(c[d+28>>2]|0);i=(_Q(c[b+240>>2]|0,f,e,d)|0)>-1;if(i&(c[e>>2]|0)!=0){h=b+253|0;if(!(a[h>>0]|0)){i=c[k>>2]|0;e=c[i+232>>2]|0;g=b+140|0;if((e|0)<=0)e=c[g>>2]|0;c[g>>2]=e;e=c[i+352>>2]|0;f=b+136|0;if((e|0)<=0)e=c[f>>2]|0;c[f>>2]=e;n=b+132|0;c[n>>2]=c[i+76>>2];e=BP()|0;i=b+112|0;c[i>>2]=e;c[e+80>>2]=3;q=e+240|0;c[q>>2]=4;c[q+4>>2]=0;q=c[(c[k>>2]|0)+76>>2]|0;m=b+100|0;p=c[c[m>>2]>>2]|0;o=c[g>>2]|0;o=Re(q,((q|0)<0)<<31>>31,p,((p|0)<0)<<31>>31,o,((o|0)<0)<<31>>31,3)|0;M()|0;c[e+76>>2]=o;Qv(e,0)|0;m=c[c[m>>2]>>2]|0;e=xD(c[f>>2]|0)|0;o=M()|0;o=Fl(0,4,0,3,m,e,o,c[(c[k>>2]|0)+80>>2]|0,c[g>>2]|0,0,0)|0;e=b+108|0;c[e>>2]=o;Oc(o)|0;a[h>>0]=1;o=c[g>>2]|0;n=c[n>>2]|0;m=c[(c[k>>2]|0)+80>>2]|0;h=c[(c[i>>2]|0)+76>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=o;c[j+8>>2]=n;c[j+12>>2]=m;c[j+16>>2]=h;EN(163195,j)|0;d=d+16|0;j=c[d+4>>2]|0;h=b+264|0;c[h>>2]=c[d>>2];c[h+4>>2]=j;h=GC()|0;h=Eu(h|0,M()|0,1e3,0)|0;j=M()|0;d=b+272|0;c[d>>2]=h;c[d+4>>2]=j;ia(3,b|0,c[g>>2]|0,c[f>>2]|0)|0;f=i}else{e=b+108|0;f=b+112|0}p=c[f>>2]|0;q=c[k>>2]|0;e=he(c[e>>2]|0,p,c[p+76>>2]|0,q,c[q+76>>2]|0)|0;if((e|0)>0)kr(c[b+104>>2]|0,c[f>>2]|0,e)|0}}else if((g|0)==(c[b+152>>2]|0)?(q=b+304|0,c[q>>2]=(c[q>>2]|0)+1,q=b+308|0,c[q>>2]=(c[q>>2]|0)+(c[d+28>>2]|0),q=(_Q(c[b+244>>2]|0,f,e,d)|0)>-1,q&(c[e>>2]|0)!=0):0){e=b+254|0;if(!(a[e>>0]|0)){m=c[k>>2]|0;n=c[m+72>>2]|0;q=c[m+80>>2]|0;p=d+8|0;o=c[p>>2]|0;p=c[p+4>>2]|0;c[i>>2]=c[m+68>>2];c[i+4>>2]=n;c[i+8>>2]=q;q=i+16|0;c[q>>2]=o;c[q+4>>2]=p;EN(163313,i)|0;q=c[k>>2]|0;c[b+124>>2]=c[q+68>>2];c[b+128>>2]=c[q+72>>2];q=d+16|0;p=c[q+4>>2]|0;o=b+264|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=GC()|0;o=Eu(o|0,M()|0,1e3,0)|0;p=M()|0;q=b+272|0;c[q>>2]=o;c[q+4>>2]=p;a[e>>0]=1;q=c[k>>2]|0;ia(4,b|0,c[q+68>>2]|0,c[q+72>>2]|0)|0}Ca(c[b+96>>2]|0)|0;q=c[k>>2]|0;c[h>>2]=c[q+68>>2];p=c[q+72>>2]|0;c[h+4>>2]=p;c[h+8>>2]=c[q+32>>2];c[h+12>>2]=c[q+36>>2];c[h+16>>2]=c[q+40>>2];c[h+20>>2]=p;p=(p|0)/2|0;c[h+24>>2]=p;c[h+28>>2]=p;c[h+32>>2]=c[q>>2];c[h+36>>2]=c[q+4>>2];c[h+40>>2]=c[q+8>>2];tk(c[b+92>>2]|0,c[b>>2]|0,h)|0}iQ(k);Nb=l;return}function ee(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+64|0;m=r+56|0;l=r+48|0;q=r+40|0;p=r+24|0;o=r;k=(d|0)!=0;if(k){i=a+28188|0;nT(i);f=a+28196|0;c[f>>2]=0;d=rI(c[a+27164+(c[b+27776>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d)d=-12;else{d=c[d+4>>2]|0;c[f>>2]=d;g=5}}else{d=a+28196|0;f=d;d=c[d>>2]|0;g=5}a:do if((g|0)==5){h=a+28200|0;g=c[h>>2]|0;do if((g|0)==(c[(c[a+27036+(c[d>>2]<<2)>>2]|0)+4>>2]|0))d=0;else{i=a+28192|0;nT(i);c[h>>2]=0;d=rI(c[a+27036+(c[c[f>>2]>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d){d=-12;break a}g=c[d+4>>2]|0;c[h>>2]=g;if((((c[a+26996>>2]|0)==(c[g+56>>2]|0)?(c[a+26992>>2]|0)==(c[g+60>>2]|0):0)?(e=c[a+29580>>2]|0,(e|0)==(c[g+1184>>2]|0)):0)?(c[a+29576>>2]|0)==(c[g+12>>2]|0):0)d=0;else{d=1;e=c[g+1184>>2]|0}if((c[a+27028>>2]|0)==(e|0)?(c[a+27032>>2]|0)==(c[g+12>>2]|0):0)break;d=1}while(0);i=a+25680|0;if(c[i>>2]|0){f=c[g+56>>2]|0;h=a+4|0;e=c[h>>2]|0;if(((((f<<4|0)==(c[e+132>>2]|0)?(j=c[g+60>>2]|0,(j<<4|0)==(c[e+136>>2]|0)):0)?(c[a+29580>>2]|0)==(c[g+1184>>2]|0):0)?(c[a+29576>>2]|0)==(c[g+12>>2]|0):0)?(c[a+26996>>2]|0)==(f|0):0)f=(c[a+26992>>2]|0)!=(j|0)&1;else f=1}else{e=a+4|0;h=e;f=0;e=c[e>>2]|0}e=c[e+144>>2]|0;if(!((e|0)!=-1?(j=UO(e)|0,(j|0)==(UO(pg(a,0)|0)|0)):0))f=1;if(k){j=g+100|0;k=(c[h>>2]|0)+228|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];m=(_q(l,m)|0)==0;f=m?f:1}if(((c[a+29572>>2]|0)==0?(m=dI(g)|0,l=c[h>>2]|0,c[l+828>>2]=m,c[l+832>>2]=c[g+8>>2],c[l+368>>2]=c[g+48>>2],l=c[g+56>>2]|0,c[a+26996>>2]=l,m=c[g+60>>2]|0,c[a+26992>>2]=m,k=H(m,l)|0,c[a+27004>>2]=k,c[a+27e3>>2]=l+1,c[a+26352>>2]=l<<2,c[a+25668>>2]=(c[g+12>>2]|0)<2&1,c[a+25656>>2]=l<<4,c[a+25660>>2]=m<<4,Al(a),(c[g+108>>2]|0)!=0):0)?(n=c[h>>2]|0,c[n+400>>2]=(c[g+112>>2]|0)>0?2:1,(c[g+116>>2]|0)!=0):0){m=n+396|0;l=c[g+128>>2]|0;d=(c[m>>2]|0)==(l|0)?d:1;c[n+388>>2]=c[g+120>>2];c[n+392>>2]=c[g+124>>2];c[m>>2]=l}e=(c[i>>2]|0)==0;if((d|f|0)!=0|e){c[i>>2]=0;if((c[a+25628>>2]|0)!=(b|0)){d=c[h>>2]|0;n=c[d+132>>2]|0;b=c[a+25660>>2]|0;p=c[d+136>>2]|0;q=(c[a+29544>>2]|0)+1|0;c[o>>2]=c[a+25656>>2];c[o+4>>2]=n;c[o+8>>2]=b;c[o+12>>2]=p;c[o+16>>2]=q;mx(d,16,199866,o);d=-1094995529;break}if(!e)Ns(a);d=pg(a,1)|0;if((d|0)>=0){o=c[h>>2]|0;c[o+144>>2]=d;n=c[a+25656>>2]|0;b=c[a+25660>>2]|0;d=rQ(d)|0;c[p>>2]=n;c[p+4>>2]=b;c[p+8>>2]=d;mx(o,40,199921,p);d=hf(a)|0;if((d|0)<0)mx(c[h>>2]|0,16,199959,q);else d=0}}else d=0}while(0);Nb=r;return d|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=Nb;Nb=Nb+64|0;r=t+56|0;s=t+40|0;k=t+24|0;j=t+16|0;f=t+8|0;e=t;p=t+60|0;a:do if((c[a+804>>2]&1|0)!=0?(q=a+12|0,(c[(c[q>>2]|0)+16>>2]&1073741824|0)!=0):0){o=a+800|0;d=c[o>>2]|0;if(!d){d=a+48|0;if((c[d>>2]|0)==8?(c[a+92>>2]&2|0)==0:0){mx(a,48,168738,e);c[o>>2]=1;g=12}else g=8}else if((d|0)>1){d=a+48|0;e=c[d>>2]|0;if((e|0)==8)if(!(c[a+92>>2]&2)){mx(a,24,168870,f);g=12}else g=12;else d=e}else g=8;if((g|0)==8){d=a+48|0;g=12}if((g|0)==12)d=c[d>>2]|0;b:do switch(d|0){case 68:case 26:{d=Yn(b,179814,0,1)|0;if((d|0)!=0?(h=c[d+4>>2]|0,(h|0)!=0):0)d=Ht(h)|0;else d=0;if(!(c[a+92>>2]&512)){if((d|0)<=0)break b;d=Yn(b,169001,0,1)|0;if((d|0?(i=c[d+4>>2]|0,i|0):0)?Ht(i)|0:0)break b}mx(a,24,169019,j);c[o>>2]=1;d=0;break a}default:{}}while(0);d=c[o>>2]|0;if(!d){d=fM()|0;d=(d|0)<64?d:64;c[o>>2]=d}if((d|0)>=2)if((d|0)<=64){d=a+64|0;if(c[(c[d>>2]|0)+52>>2]|0){c[k>>2]=169096;c[k+4>>2]=169135;c[k+8>>2]=176;mx(0,0,214689,k);ba()}l=rR(3528)|0;c[(c[d>>2]|0)+52>>2]=l;if(!l)d=-12;else{c[l>>2]=a;k=xQ(128,24)|0;c[l+32>>2]=k;do if(k){RU(l+36|0,0)|0;RU(l+3184|0,0)|0;RU(l+4|0,0)|0;xb(l+64|0,0)|0;xb(l+3212|0,0)|0;c[l+3524>>2]=0;h=a+60|0;i=l+3268|0;k=0;while(1){if((k|0)>=(c[o>>2]|0)){g=45;break}c[p>>2]=0;j=DN(c[q>>2]|0)|0;if(!j){g=43;break}d=j+60|0;e=c[d>>2]|0;Bk(j|0,a|0,1016)|0;if((Fj(j,a)|0)<0){g=43;break}c[d>>2]=e;f=j+64|0;c[f>>2]=0;g=c[q>>2]|0;d=c[h>>2]|0;if(c[g+44>>2]|0){if((Fj(e,d)|0)>>31&4|0){g=43;break}}else Bk(e|0,d|0,c[g+52>>2]|0)|0;c[j+800>>2]=1;g=j+808|0;c[g>>2]=c[g>>2]&-2;wI(p,b,0)|0;Jf(p,180156,169169,0)|0;g=(yc(j,c[q>>2]|0,p)|0)<0;HC(p);if(g){g=43;break}d=(c[f>>2]|0)+52|0;if(c[d>>2]|0){g=41;break}c[d>>2]=l;if(Ab(i+(k<<2)|0,0,23,j|0)|0){g=43;break}k=k+1|0}if((g|0)==41){c[s>>2]=169171;c[s+4>>2]=169135;c[s+8>>2]=224;mx(0,0,214689,s);ba()}else if((g|0)==43){m=k;n=a;break}else if((g|0)==45){c[a+808>>2]=1;d=0;break a}}else{m=0;n=a}while(0);c[o>>2]=m;mx(n,16,169217,r);yt(a);d=-1}}else d=-22;else d=0}else d=0;while(0);Nb=t;return d|0}function ge(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=(c|0)!=0;c=0-f|0;if(l){g=d[b+c>>0]|0;c=d[b+~f>>0]|0}else{c=d[b+c>>0]|0;g=c}j=d[b+(1-f)>>0]|0;k=j+2|0;q=(k+c+(g<<1)|0)>>>2;m=d[b+(2-f)>>0]|0;i=g+2|0;j=(i+(j<<1)+m|0)>>>2;n=d[b+(3-f)>>0]|0;k=(k+(m<<1)+n|0)>>>2;o=d[b+(4-f)>>0]|0;m=(m+2+(n<<1)+o|0)>>>2;p=d[b+(5-f)>>0]|0;n=(n+2+(o<<1)+p|0)>>>2;g=d[b+(6-f)>>0]|0;o=(o+2+(p<<1)+g|0)>>>2;h=d[b+(7-f)>>0]|0;p=(p+2+(g<<1)+h|0)>>>2;if(!e)c=h;else c=d[b+(8-f)>>0]|0;e=(g+2+(h<<1)+c|0)>>>2;if(l){h=d[b+~f>>0]|0;c=d[b+-1>>0]|0;g=h}else{h=d[b+-1>>0]|0;c=h;g=d[b+~f>>0]|0}y=d[b+(f+-1)>>0]|0;x=y+2|0;w=(x+h+(c<<1)|0)>>>2;l=f<<1;A=d[b+(l+-1)>>0]|0;y=(c+2+(y<<1)+A|0)>>>2;h=f*3|0;z=d[b+(h+-1)>>0]|0;x=(x+(A<<1)+z|0)>>>2;r=f<<2;C=d[b+(r+-1)>>0]|0;A=(A+2+(z<<1)+C|0)>>>2;s=f*5|0;v=d[b+(s+-1)>>0]|0;z=(z+2+(C<<1)+v|0)>>>2;t=f*6|0;B=d[b+(t+-1)>>0]|0;C=(C+2+(v<<1)+B|0)>>>2;u=f*7|0;B=(v+2+(B<<1)+(d[b+(u+-1)>>0]|0)|0)>>>2;v=(i+c+(g<<1)|0)>>>2;a[b+t>>0]=(A+2+(z<<1)+C|0)>>>2;a[b+u>>0]=(z+2+(C<<1)+B|0)>>>2;g=y+2|0;c=(g+(x<<1)+A|0)>>>2&255;a[b+(t|1)>>0]=c;a[b+r>>0]=c;c=(x+2+(A<<1)+z|0)>>>2&255;a[b+(u+1)>>0]=c;a[b+s>>0]=c;g=(g+(w<<1)+v|0)>>>2&255;a[b+(t+2)>>0]=g;a[b+(r|1)>>0]=g;a[b+l>>0]=g;g=(w+2+(y<<1)+x|0)>>>2&255;a[b+(u+2)>>0]=g;a[b+(s+1)>>0]=g;a[b+h>>0]=g;g=q+2|0;c=(g+w+(v<<1)|0)>>>2&255;a[b+(u+3)>>0]=c;a[b+(s+2)>>0]=c;a[b+(h+1)>>0]=c;a[b+f>>0]=c;c=q+1|0;i=(c+v|0)>>>1&255;a[b+(t+3)>>0]=i;a[b+(r|2)>>0]=i;a[b+(l|1)>>0]=i;a[b>>0]=i;i=j+2|0;q=(i+(q<<1)+v|0)>>>2&255;a[b+(u+4)>>0]=q;a[b+(s+3)>>0]=q;a[b+(h+2)>>0]=q;a[b+(f+1)>>0]=q;q=(c+j|0)>>>1&255;a[b+(t+4)>>0]=q;a[b+(r|3)>>0]=q;a[b+(l+2)>>0]=q;a[b+1>>0]=q;q=(g+(j<<1)+k|0)>>>2&255;a[b+(u+5)>>0]=q;a[b+(s+4)>>0]=q;a[b+(h+3)>>0]=q;a[b+(f+2)>>0]=q;q=(j+1+k|0)>>>1&255;a[b+(t+5)>>0]=q;a[b+(r+4)>>0]=q;a[b+(l+3)>>0]=q;a[b+2>>0]=q;q=(i+(k<<1)+m|0)>>>2&255;a[b+(u+6)>>0]=q;a[b+(s+5)>>0]=q;a[b+(h+4)>>0]=q;a[b+(f+3)>>0]=q;q=(k+1+m|0)>>>1&255;a[b+(t+6)>>0]=q;a[b+(r+5)>>0]=q;a[b+(l+4)>>0]=q;a[b+3>>0]=q;q=(k+2+(m<<1)+n|0)>>>2&255;a[b+(u+7)>>0]=q;a[b+(s+6)>>0]=q;a[b+(h+5)>>0]=q;a[b+(f+4)>>0]=q;q=(m+1+n|0)>>>1&255;a[b+(t+7)>>0]=q;a[b+(r+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+4>>0]=q;q=(m+2+(n<<1)+o|0)>>>2&255;a[b+(s+7)>>0]=q;a[b+(h+6)>>0]=q;a[b+(f+5)>>0]=q;q=(n+1+o|0)>>>1&255;a[b+(r+7)>>0]=q;a[b+(l+6)>>0]=q;a[b+5>>0]=q;q=(n+2+(o<<1)+p|0)>>>2&255;a[b+(h+7)>>0]=q;a[b+(f+6)>>0]=q;q=(o+1+p|0)>>>1&255;a[b+(l+7)>>0]=q;a[b+6>>0]=q;a[b+(f+7)>>0]=(o+2+(p<<1)+e|0)>>>2;a[b+7>>0]=(p+1+e|0)>>>1;return}function he(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+304|0;l=r+288|0;o=r;p=a+11140|0;n=a+12260|0;a:do if(!(jU(a)|0)){mx(a,16,211050,r+280|0);g=-22}else{q=a+13416|0;j=a+13100|0;k=(b|0)!=0;h=c[q>>2]|0;while(1){if((h|0)<=0){m=11;break}h=Hj(j,(h|0)<16384?h:16384)|0;if((h|0)<0){g=h;break}FD(j,o);h=c[q>>2]|0;c[q>>2]=0-h;f=he(a,o,(h|0)<16384?h:16384,e,f)|0;h=c[q>>2]|0;i=0-h|0;c[q>>2]=i;if((f|0)<=0){m=7;break}h=i-f|0;c[q>>2]=h;if(!(k|(h|0)!=0)){g=0;break a}else f=0}if((m|0)==7)if(!h){c[l>>2]=211084;c[l+4>>2]=210702;c[l+8>>2]=739;mx(0,0,214689,l);ba()}else g=0;else if((m|0)==11){do if(!e){g=a+13444|0;if(!(c[g>>2]|0))if(!(c[a+13384>>2]|0)){g=0;break a}else break;h=a+13392|0;if(!(c[h>>2]|0))Wb[c[(c[a+13448>>2]|0)+12>>2]&31](a)|0;c[a+13388>>2]=0;c[h>>2]=1}else{bu(p,e);g=a+13444|0}while(0);bu(n,b);if(c[g>>2]|0){g=gd(a,n,d,p,f)|0;if((g|0)<=0)break;if(c[q>>2]|0)break;n=c[a+40>>2]|0;n=oK(n|0,((n|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;o=M()|0;q=a+13400|0;p=q;p=kP(n|0,o|0,c[p>>2]|0,c[p+4>>2]|0)|0;a=M()|0;c[q>>2]=p;c[q+4>>2]=a;break}Bk(o|0,p|0,280)|0;b=a+13384|0;h=c[b>>2]|0;g=(h|0)<(d|0)?h:d;if(g){j=a+13380|0;mt(o,a+12540|0,c[j>>2]|0);g=gd(a,n,g,o,g)|0;if((g|0)>=0){c[b>>2]=(c[b>>2]|0)-g;c[j>>2]=(c[j>>2]|0)+g;mt(n,n,g);h=d-g|0;i=c[b>>2]|0;if(!i){c[j>>2]=0;d=h;h=0;m=26}else{d=h;h=i;m=26}}}else{g=0;m=26}b:do if((m|0)==26){do if(f){l=a+13380|0;k=c[l>>2]|0;h=h+f-d|0;i=h+k|0;e=(f|0)>(d|0);do if(e){j=a+12540|0;if((h|0)>(k|0)?1:(i|0)<=(c[a+12808>>2]|0)){h=Hj(j,i)|0;if((h|0)<0){g=h;break b}else break}else{mt(o,j,k);Jn(j,o,c[b>>2]|0);c[l>>2]=0;break}}while(0);if(d){h=e?d:f;h=gd(a,n,h,p,h)|0;if((h|0)<0){g=h;break b}mt(p,p,h);f=f-h|0;g=h+g|0;if(!f)break}mt(o,a+12540|0,(c[b>>2]|0)+(c[l>>2]|0)|0);Jn(o,p,f);c[b>>2]=(c[b>>2]|0)+f}while(0);if((g|0)>0?(c[q>>2]|0)==0:0){n=c[a+40>>2]|0;n=oK(n|0,((n|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;o=M()|0;q=a+13400|0;p=q;p=kP(n|0,o|0,c[p>>2]|0,c[p+4>>2]|0)|0;a=M()|0;c[q>>2]=p;c[q+4>>2]=a}}while(0);break}}while(0);Nb=r;return g|0}function ie(a){a=a|0;var e=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.0,x=0,y=0;y=Nb;Nb=Nb+528|0;x=y+512|0;u=y;e=c[a+32>>2]|0;if(!e){b[a+310386>>1]=b[a+310226>>1]|0;b[a+310388>>1]=b[a+310226+(c[a+310112>>2]<<1)>>1]|0;c[a+310124>>2]=1}else{w=+f[161672+(e+-1<<2)>>2];g=a+310386|0;i=c[a+76>>2]|0;b[x>>1]=i;k=a+310448|0;h=(c[k>>2]|0)+1|0;e=1;while(1){if((e|0)==(h|0))break;t=(i&65535)+(d[e+-1+(a+310452)>>0]|0)|0;b[x+(e<<1)>>1]=t;e=e+1|0;i=t}e=a+310388|0;h=a+310112|0;i=c[h>>2]|0;Bk(g|0,a+310226|0,(i<<1)+2|0)|0;j=c[k>>2]|0;if(j>>>0>1){Bk(a+310386+(i<<1)+2|0,x+2|0,(j<<1)+-2|0)|0;i=c[h>>2]|0;j=c[k>>2]|0}c[u>>2]=g;t=i+j|0;c[u+4>>2]=a+310386+(t<<1)+-2;h=1;while(1){if(!h)break;h=h+-1|0;k=c[u+(h<<3)>>2]|0;i=c[u+(h<<3)+4>>2]|0;while(1){if(k>>>0>=i>>>0)break;p=i+-2|0;if(k>>>0>=p>>>0){v=40;break}m=i+-4|0;n=k+2|0;r=i;s=k;q=k+(r-s>>2<<1)|0;if((vS(k,i)|0)<=0)if((vS(k,q)|0)>0){l=q;v=15}else l=1;else{l=(vS(i,q)|0)>0;l=l?q:i;v=15}if((v|0)==15){v=0;o=b[l>>1]|0;b[l>>1]=b[k>>1]|0;b[k>>1]=o;l=0}if((vS(q,i)|0)>0){l=b[i>>1]|0;b[i>>1]=b[q>>1]|0;b[q>>1]=l;l=0}if((k|0)==(m|0))break;o=b[q>>1]|0;b[q>>1]=b[p>>1]|0;b[p>>1]=o;o=m;while(1){if(n>>>0>o>>>0)break;while(1){if(n>>>0>o>>>0)break;if((vS(n,p)|0)>=0)break;n=n+2|0}m=o;while(1){if(n>>>0>m>>>0)break;if((vS(m,p)|0)<=0){v=29;break}m=m+-2|0}if((v|0)==29){v=0;o=b[m>>1]|0;b[m>>1]=b[n>>1]|0;b[n>>1]=o;m=m+-2|0;n=n+2|0}o=m}m=b[n>>1]|0;b[n>>1]=b[p>>1]|0;b[p>>1]=m;if(l|0?(q|0)==(n|0)|(q|0)==(n+-2|0):0){l=k;while(1){if(l>>>0>=i>>>0)break;m=l+2|0;if((vS(l,m)|0)<1)l=m;else break}if((l|0)==(i|0))break}q=n;if((r-q|0)<(q-s|0)){c[u+(h<<3)>>2]=k;c[u+(h<<3)+4>>2]=o;k=n+2|0}else{c[u+(h<<3)>>2]=n+2;c[u+(h<<3)+4>>2]=i;i=o}h=h+1|0}if((v|0)==40?(v=0,(vS(k,i)|0)>0):0){s=b[i>>1]|0;b[i>>1]=b[k>>1]|0;b[k>>1]=s}}m=a+310124|0;h=t+-1|0;a:while(1){c[m>>2]=h;l=a+310386+(h<<1)|0;while(1){if(g>>>0>=l>>>0)break a;k=b[e>>1]|0;i=b[g>>1]|0;if(!(w*+(i&65535)<=+(k&65535))){if(k<<16>>16==i<<16>>16){v=51;break}if(!(KJ(x,j,k)|0)){v=51;break}e=e+2|0;if(!(KJ(x,j,i)|0)){v=54;break}g=g+2|0;b[g>>1]=k}else{g=g+2|0;b[g>>1]=k;e=e+2|0}}if((v|0)==51){e=e+2|0;h=h+-1|0}else if((v|0)==54){b[g>>1]=k;h=h+-1|0}}}Nb=y;return}function je(f,g,h,i,j,k,l){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=Nb;Nb=Nb+304|0;t=A;u=A+256|0;z=g+32860|0;r=u+4|0;c[r>>2]=c[z>>2];w=g+32856|0;c[u>>2]=c[w>>2];x=g+32872|0;y=u+16|0;c[y>>2]=c[x>>2];q=c[g+21828>>2]|0;p=(c[88752+(q*56|0)+(i<<2)>>2]|0)+(g+32904)|0;q=(c[88864+(q*56|0)+(i<<2)>>2]|0)+(g+32904)|0;s=(c[89008+(i<<2)>>2]|0)+(g+32904)|0;o=l+-1|0;n=0;m=0;while(1){if((n|0)>=(o|0)){v=6;break}if(Vu(u,p+n|0)|0){l=m+1|0;c[t+(m<<2)>>2]=n;if(!(Vu(u,q+n|0)|0))m=l;else{m=l;break}}n=n+1|0}if((v|0)==6)if((n|0)==(o|0)){c[t+(m<<2)>>2]=o;m=m+1|0}q=(i|0)==3;i=(c[f+26376>>2]|0)+(c[g+21796>>2]<<1)|0;b[i>>1]=(q?64:256)<<(q?-49:-48)+j|(e[i>>1]|0);a[(d[88688+j>>0]|0)+(g+27824)>>0]=m;if(!(c[f+25652>>2]|0)){q=m;l=0;while(1){q=q+-1|0;f=d[k+(c[t+(q<<2)>>2]|0)>>0]|0;if(!(Vu(u,s+(d[201504+l>>0]|0)|0)|0)){m=d[88976+l>>0]|0;j=c[u>>2]|0;l=j<<1;c[u>>2]=l;if(!(j&32767)){VM(u);l=c[u>>2]|0}j=c[r>>2]|0;p=j<<17;l=l-p|0;o=l>>31;l=(o&p)+l|0;c[u>>2]=l;p=m;n=o^65535;m=j}else{m=s+(d[88992+l>>0]|0)|0;p=d[88984+l>>0]|0;l=2;while(1){if(l>>>0>=15){v=35;break}if(!(Vu(u,m)|0))break;l=l+1|0}if((v|0)==35){v=0;l=0;while(1)if(l>>>0<23&(uI(u)|0)!=0)l=l+1|0;else break;m=1;while(1){if(!l)break;l=l+-1|0;m=(uI(u)|0)+(m<<1)|0}l=m+14|0}j=c[u>>2]|0;m=j<<1;c[u>>2]=m;if(!(j&32767)){VM(u);m=c[u>>2]|0}j=c[r>>2]|0;n=j<<17;m=m-n|0;o=m>>31;m=(o&n)+m|0;c[u>>2]=m;n=o^0-l;l=m;m=j}b[h+(f<<1)>>1]=n-o;if(!q)break;else l=p}}else{l=0;q=m;while(1){q=q+-1|0;f=d[k+(c[t+(q<<2)>>2]|0)>>0]|0;if(!(Vu(u,s+(d[201504+l>>0]|0)|0)|0)){m=d[88976+l>>0]|0;j=c[u>>2]|0;l=j<<1;c[u>>2]=l;if(!(j&32767)){VM(u);l=c[u>>2]|0}j=c[r>>2]|0;p=j<<17;l=l-p|0;o=l>>31;l=(o&p)+l|0;c[u>>2]=l;p=m;n=~o;m=j}else{m=s+(d[88992+l>>0]|0)|0;p=d[88984+l>>0]|0;l=2;while(1){if(l>>>0>=15){v=17;break}if(!(Vu(u,m)|0))break;l=l+1|0}if((v|0)==17){v=0;l=0;while(1)if(l>>>0<23&(uI(u)|0)!=0)l=l+1|0;else break;m=1;while(1){if(!l)break;l=l+-1|0;m=(uI(u)|0)+(m<<1)|0}l=m+14|0}j=c[u>>2]|0;m=j<<1;c[u>>2]=m;if(!(j&32767)){VM(u);m=c[u>>2]|0}j=c[r>>2]|0;n=j<<17;m=m-n|0;o=m>>31;m=(o&n)+m|0;c[u>>2]=m;n=o^0-l;l=m;m=j}c[h+(f<<2)>>2]=n-o;if(!q)break;else l=p}}c[z>>2]=m;c[w>>2]=l;c[x>>2]=c[y>>2];Nb=A;return}function ke(a,b,e,g,h){a=a|0;b=b|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0;O=Nb;Nb=Nb+384|0;K=O+192|0;L=O;M=(c[e+44>>2]|0)==0;F=(M&1)<<2;G=c[e+76>>2]|0;H=c[e+84>>2]|0;I=g+87944|0;r=c[I>>2]|0;J=g+87948|0;s=c[J>>2]|0;a:do if(!(c[e+16>>2]|0)){if(M){j=g+87932|0;k=g+87940|0;i=0;while(1){if((i|0)==4)break a;Bk(g+69904+((((d[j>>0]|0)<<1)+i|0)*192|0)|0,g+69904+((((d[k>>0]|0)<<1)+i|0)*192|0)|0,192)|0;Bk(g+77968+((((d[j>>0]|0)<<1)+i|0)*192|0)|0,g+77968+((((d[k>>0]|0)<<1)+i|0)*192|0)|0,192)|0;i=i+1|0}}}else{j=g+87932|0;k=e+388176|0;l=H<<2;m=e+385488|0;i=0;while(1){if((i|0)==(F|0))break a;Bk(g+69904+((((d[j>>0]|0)<<1)+i|0)*192|0)|0,k|0,l|0)|0;Bk(g+77968+((((d[j>>0]|0)<<1)+i|0)*192|0)|0,m|0,l|0)|0;i=i+1|0}}while(0);E=g+8|0;j=H<<2;q=c[E>>2]|0;i=0;while(1){if(i>>>0>=q>>>0)break;k=i+1|0;l=g+87932+k|0;m=e+388176+(i*192|0)|0;n=e+385488+(i*192|0)|0;i=(d[g+87932+i>>0]|0)<<1;while(1){if(i>>>0>=(d[l>>0]|0)<<1>>>0)break;D=i+F|0;Bk(g+69904+(D*192|0)|0,m|0,j|0)|0;Bk(g+77968+(D*192|0)|0,n|0,j|0)|0;i=i+1|0}i=k}D=e+390988|0;w=b+(G*320|0)|0;x=h+4|0;y=G&1;z=(H&1|0)==0;A=F|1;B=((H|0)>1?H:1)&2147483646;C=B<<1;k=r;j=s;v=0;i=q;while(1){if(v>>>0>=i>>>0)break;r=v+1|0;s=g+87932+r|0;t=e+386832+(v*192|0)|0;u=e+386832+(v*192|0)+(B<<2)|0;q=(d[g+87932+v>>0]|0)<<1;while(1){if(q>>>0>=(d[s>>0]|0)<<1>>>0)break;b:do if((M?(v|0)!=(c[h>>2]|0):0)?(v|0)!=(c[x>>2]|0):0){m=q+F|0;l=0;while(1){if((l|0)>=(H|0)){i=L;l=K;break b}n=K+(l<<2)|0;f[n>>2]=0.0;b=L+(l<<2)|0;f[b>>2]=0.0;i=0;o=0.0;p=0.0;while(1){if((i|0)==(A|0))break;R=m-i|0;P=+f[51440+(i<<2)>>2];Q=o+ +f[g+69904+(R*192|0)+(l<<2)>>2]*P;f[n>>2]=Q;P=p+P*+f[g+77968+(R*192|0)+(l<<2)>>2];f[b>>2]=P;i=i+1|0;o=Q;p=P}l=l+1|0}}else N=28;while(0);if((N|0)==28){N=0;i=g+77968+(q*192|0)|0;l=g+69904+((q+F|0)*192|0)|0}m=a+(q<<9)+(G<<3)|0;kc[c[D>>2]&127](m,w,l,H,q+2|0);if((v|0)!=(c[h>>2]|0)?(v|0)!=(c[x>>2]|0):0)lc[c[e+390992+(j<<2)>>2]&63](m,t,i,k,G,H);else{i=j&1;R=1-(j+y&2)|0;l=a+(q<<9)+(G<<3)+(i<<2)|0;o=+(R|0);p=+((R^0-i)+i|0);i=0;while(1){m=i|1;if((m|0)>=(H|0))break;R=i<<1;b=l+(R<<2)|0;f[b>>2]=+f[b>>2]+ +f[e+386832+(v*192|0)+(i<<2)>>2]*o;R=l+((R|2)<<2)|0;f[R>>2]=+f[R>>2]+ +f[e+386832+(v*192|0)+(m<<2)>>2]*p;i=i+2|0}if(!z){R=l+(C<<2)|0;f[R>>2]=+f[R>>2]+ +f[u>>2]*o}}k=k+H&511;j=j+1&3;q=q+1|0}v=r;i=c[E>>2]|0}c[I>>2]=k;c[J>>2]=j;Nb=O;return}function le(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0;k=h>>1;A=g*13|0;i=c;j=0;d=d+(0-(h&-2)<<1)|0;while(1){if((j|0)==13)break;x=d+2|0;y=d+-2|0;w=d+4|0;u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+6|0;b[i>>1]=(((e[x>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[d+-4>>1]|0)+u+(e[v>>1]|0);u=H((e[v>>1]|0)+(e[d>>1]|0)|0,-5)|0;t=d+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=H((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=d+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[d>>1]|0)+u+(e[y>>1]|0);u=H((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=d+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=H((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=d+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=H((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=d+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=H((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=d+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=H((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[d+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;d=d+(k<<1)|0}o=f>>1;p=H(g,-2)|0;q=0-g|0;r=g<<1;s=g*3|0;t=g<<2;u=g*5|0;v=g*6|0;w=g*7|0;x=g<<3;y=g*9|0;z=g*10|0;j=f&-2;k=o*3|0;f=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;i=a;d=c+(A<<1)+((H(g,-11)|0)<<1)|0;h=0;while(1){if((h|0)==8)break;D=b[d+(q<<1)>>1]|0;M=b[d>>1]|0;L=b[d+(g<<1)>>1]|0;K=b[d+(r<<1)>>1]|0;J=b[d+(s<<1)>>1]|0;G=b[d+(t<<1)>>1]|0;E=b[d+(u<<1)>>1]|0;A=b[d+(v<<1)>>1]|0;a=b[d+(w<<1)>>1]|0;B=b[d+(x<<1)>>1]|0;c=b[d+(y<<1)>>1]|0;C=b[d+(z<<1)>>1]|0;I=J+512|0;F=I+(b[d+(p<<1)>>1]|0)+((L+M|0)*20|0)+(H(K+D|0,-5)|0)>>10;b[i>>1]=F>>>0<512?F:(F^-2147483648)>>31&511;F=G+512|0;D=F+D+((K+L|0)*20|0)+(H(J+M|0,-5)|0)>>10;b[i+(o<<1)>>1]=D>>>0<512?D:(D^-2147483648)>>31&511;D=E+512|0;M=D+M+((J+K|0)*20|0)+(H(G+L|0,-5)|0)>>10;b[i+(j<<1)>>1]=M>>>0<512?M:(M^-2147483648)>>31&511;L=L+512+A+((G+J|0)*20|0)+(H(E+K|0,-5)|0)>>10;b[i+(k<<1)>>1]=L>>>0<512?L:(L^-2147483648)>>31&511;J=K+512+a+((E+G|0)*20|0)+(H(A+J|0,-5)|0)>>10;b[i+(f<<1)>>1]=J>>>0<512?J:(J^-2147483648)>>31&511;G=I+B+((A+E|0)*20|0)+(H(a+G|0,-5)|0)>>10;b[i+(l<<1)>>1]=G>>>0<512?G:(G^-2147483648)>>31&511;E=F+c+((a+A|0)*20|0)+(H(B+E|0,-5)|0)>>10;b[i+(m<<1)>>1]=E>>>0<512?E:(E^-2147483648)>>31&511;A=D+C+((B+a|0)*20|0)+(H(c+A|0,-5)|0)>>10;b[i+(n<<1)>>1]=A>>>0<512?A:(A^-2147483648)>>31&511;i=i+2|0;d=d+2|0;h=h+1|0}return}function me(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;g=(c|0)!=0;c=0-f|0;if(g){e=d[b+c>>0]|0;c=d[b+~f>>0]|0}else{c=d[b+c>>0]|0;e=c}i=d[b+(1-f)>>0]|0;j=i+2|0;o=(j+c+(e<<1)|0)>>>2;k=d[b+(2-f)>>0]|0;h=e+2|0;i=(h+(i<<1)+k|0)>>>2;l=d[b+(3-f)>>0]|0;j=(j+(k<<1)+l|0)>>>2;m=d[b+(4-f)>>0]|0;k=(k+2+(l<<1)+m|0)>>>2;e=d[b+(5-f)>>0]|0;l=(l+2+(m<<1)+e|0)>>>2;n=d[b+(6-f)>>0]|0;m=(m+2+(e<<1)+n|0)>>>2;n=(e+2+(n<<1)+(d[b+(7-f)>>0]|0)|0)>>>2;if(g){g=d[b+~f>>0]|0;c=d[b+-1>>0]|0;e=g}else{g=d[b+-1>>0]|0;c=g;e=d[b+~f>>0]|0}s=d[b+(f+-1)>>0]|0;u=s+2|0;q=(u+g+(c<<1)|0)>>>2;g=f<<1;w=d[b+(g+-1)>>0]|0;s=(c+2+(s<<1)+w|0)>>>2;p=f*3|0;y=d[b+(p+-1)>>0]|0;u=(u+(w<<1)+y|0)>>>2;r=f<<2;z=d[b+(r+-1)>>0]|0;w=(w+2+(y<<1)+z|0)>>>2;t=f*5|0;A=d[b+(t+-1)>>0]|0;y=(y+2+(z<<1)+A|0)>>>2;v=f*6|0;C=d[b+(v+-1)>>0]|0;z=(z+2+(A<<1)+C|0)>>>2;x=f*7|0;B=d[b+(x+-1)>>0]|0;A=(A+2+(C<<1)+B|0)>>>2;B=(C+2+(B*3|0)|0)>>>2;c=(h+c+(e<<1)|0)>>>2;a[b+x>>0]=(A+1+B|0)>>>1;a[b+(x+1)>>0]=(z+2+B+(A<<1)|0)>>>2;h=(z+1+A|0)>>>1&255;a[b+(x+2)>>0]=h;a[b+v>>0]=h;h=(y+2+(z<<1)+A|0)>>>2&255;a[b+(x+3)>>0]=h;a[b+(v|1)>>0]=h;h=(y+1+z|0)>>>1&255;a[b+(x+4)>>0]=h;a[b+(v+2)>>0]=h;a[b+t>>0]=h;h=(w+2+(y<<1)+z|0)>>>2&255;a[b+(x+5)>>0]=h;a[b+(v+3)>>0]=h;a[b+(t+1)>>0]=h;h=(w+1+y|0)>>>1&255;a[b+(x+6)>>0]=h;a[b+(v+4)>>0]=h;a[b+(t+2)>>0]=h;a[b+r>>0]=h;h=(u+2+(w<<1)+y|0)>>>2&255;a[b+(x+7)>>0]=h;a[b+(v+5)>>0]=h;a[b+(t+3)>>0]=h;a[b+(r|1)>>0]=h;h=(u+1+w|0)>>>1&255;a[b+(v+6)>>0]=h;a[b+(t+4)>>0]=h;a[b+(r|2)>>0]=h;a[b+p>>0]=h;h=s+2|0;e=(h+(u<<1)+w|0)>>>2&255;a[b+(v+7)>>0]=e;a[b+(t+5)>>0]=e;a[b+(r|3)>>0]=e;a[b+(p+1)>>0]=e;e=(s+1+u|0)>>>1&255;a[b+(t+6)>>0]=e;a[b+(r+4)>>0]=e;a[b+(p+2)>>0]=e;a[b+g>>0]=e;e=(q+2+(s<<1)+u|0)>>>2&255;a[b+(t+7)>>0]=e;a[b+(r+5)>>0]=e;a[b+(p+3)>>0]=e;a[b+(g|1)>>0]=e;e=q+1|0;s=(e+s|0)>>>1&255;a[b+(r+6)>>0]=s;a[b+(p+4)>>0]=s;a[b+(g+2)>>0]=s;a[b+f>>0]=s;h=(h+(q<<1)+c|0)>>>2&255;a[b+(r+7)>>0]=h;a[b+(p+5)>>0]=h;a[b+(g+3)>>0]=h;a[b+(f+1)>>0]=h;e=(e+c|0)>>>1&255;a[b+(p+6)>>0]=e;a[b+(g+4)>>0]=e;a[b+(f+2)>>0]=e;a[b>>0]=e;e=o+2|0;h=(e+q+(c<<1)|0)>>>2&255;a[b+(p+7)>>0]=h;a[b+(g+5)>>0]=h;a[b+(f+3)>>0]=h;a[b+1>>0]=h;h=i+2|0;o=(h+(o<<1)+c|0)>>>2&255;a[b+(g+6)>>0]=o;a[b+(f+4)>>0]=o;a[b+2>>0]=o;o=(e+(i<<1)+j|0)>>>2&255;a[b+(g+7)>>0]=o;a[b+(f+5)>>0]=o;a[b+3>>0]=o;o=(h+(j<<1)+k|0)>>>2&255;a[b+(f+6)>>0]=o;a[b+4>>0]=o;o=(j+2+(k<<1)+l|0)>>>2&255;a[b+(f+7)>>0]=o;a[b+5>>0]=o;a[b+6>>0]=(k+2+(l<<1)+m|0)>>>2;a[b+7>>0]=(l+2+(m<<1)+n|0)>>>2;return}function ne(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;l=(c|0)!=0;c=0-f|0;if(l){g=d[b+c>>0]|0;c=d[b+~f>>0]|0}else{c=d[b+c>>0]|0;g=c}j=d[b+(1-f)>>0]|0;k=j+2|0;s=(k+c+(g<<1)|0)>>>2;m=d[b+(2-f)>>0]|0;i=g+2|0;j=(i+(j<<1)+m|0)>>>2;n=d[b+(3-f)>>0]|0;k=(k+(m<<1)+n|0)>>>2;p=d[b+(4-f)>>0]|0;m=(m+2+(n<<1)+p|0)>>>2;r=d[b+(5-f)>>0]|0;n=(n+2+(p<<1)+r|0)>>>2;o=d[b+(6-f)>>0]|0;p=(p+2+(r<<1)+o|0)>>>2;q=d[b+(7-f)>>0]|0;r=(r+2+(o<<1)+q|0)>>>2;if(!e)h=q;else h=d[b+(8-f)>>0]|0;if(l){e=d[b+~f>>0]|0;c=d[b+-1>>0]|0;g=e}else{e=d[b+-1>>0]|0;c=e;g=d[b+~f>>0]|0}z=d[b+(f+-1)>>0]|0;y=z+2|0;x=(y+e+(c<<1)|0)>>>2;l=f<<1;A=d[b+(l+-1)>>0]|0;z=(c+2+(z<<1)+A|0)>>>2;e=f*3|0;B=d[b+(e+-1)>>0]|0;y=(y+(A<<1)+B|0)>>>2;t=f<<2;C=d[b+(t+-1)>>0]|0;A=(A+2+(B<<1)+C|0)>>>2;u=f*5|0;D=d[b+(u+-1)>>0]|0;B=(B+2+(C<<1)+D|0)>>>2;v=f*6|0;F=d[b+(v+-1)>>0]|0;C=(C+2+(D<<1)+F|0)>>>2;w=f*7|0;E=d[b+(w+-1)>>0]|0;D=(D+2+(F<<1)+E|0)>>>2;c=(i+c+(g<<1)|0)>>>2;a[b+w>>0]=(C+2+((F+2+(E*3|0)|0)>>>2)+(D<<1)|0)>>>2;g=(B+2+(C<<1)+D|0)>>>2&255;a[b+(w+1)>>0]=g;a[b+v>>0]=g;g=(A+2+(B<<1)+C|0)>>>2&255;a[b+(w+2)>>0]=g;a[b+(v|1)>>0]=g;a[b+u>>0]=g;g=(y+2+(A<<1)+B|0)>>>2&255;a[b+(w+3)>>0]=g;a[b+(v+2)>>0]=g;a[b+(u+1)>>0]=g;a[b+t>>0]=g;g=z+2|0;i=(g+(y<<1)+A|0)>>>2&255;a[b+(w+4)>>0]=i;a[b+(v+3)>>0]=i;a[b+(u+2)>>0]=i;a[b+(t|1)>>0]=i;a[b+e>>0]=i;i=(x+2+(z<<1)+y|0)>>>2&255;a[b+(w+5)>>0]=i;a[b+(v+4)>>0]=i;a[b+(u+3)>>0]=i;a[b+(t|2)>>0]=i;a[b+(e+1)>>0]=i;a[b+l>>0]=i;g=(g+(x<<1)+c|0)>>>2&255;a[b+(w+6)>>0]=g;a[b+(v+5)>>0]=g;a[b+(u+4)>>0]=g;a[b+(t|3)>>0]=g;a[b+(e+2)>>0]=g;a[b+(l|1)>>0]=g;a[b+f>>0]=g;g=s+2|0;i=(g+x+(c<<1)|0)>>>2&255;a[b+(w+7)>>0]=i;a[b+(v+6)>>0]=i;a[b+(u+5)>>0]=i;a[b+(t+4)>>0]=i;a[b+(e+3)>>0]=i;a[b+(l+2)>>0]=i;a[b+(f+1)>>0]=i;a[b>>0]=i;i=j+2|0;s=(i+(s<<1)+c|0)>>>2&255;a[b+(v+7)>>0]=s;a[b+(u+6)>>0]=s;a[b+(t+5)>>0]=s;a[b+(e+4)>>0]=s;a[b+(l+3)>>0]=s;a[b+(f+2)>>0]=s;a[b+1>>0]=s;s=(g+(j<<1)+k|0)>>>2&255;a[b+(u+7)>>0]=s;a[b+(t+6)>>0]=s;a[b+(e+5)>>0]=s;a[b+(l+4)>>0]=s;a[b+(f+3)>>0]=s;a[b+2>>0]=s;s=(i+(k<<1)+m|0)>>>2&255;a[b+(t+7)>>0]=s;a[b+(e+6)>>0]=s;a[b+(l+5)>>0]=s;a[b+(f+4)>>0]=s;a[b+3>>0]=s;s=(k+2+(m<<1)+n|0)>>>2&255;a[b+(e+7)>>0]=s;a[b+(l+6)>>0]=s;a[b+(f+5)>>0]=s;a[b+4>>0]=s;s=(m+2+(n<<1)+p|0)>>>2&255;a[b+(l+7)>>0]=s;a[b+(f+6)>>0]=s;a[b+5>>0]=s;s=(n+2+(p<<1)+r|0)>>>2&255;a[b+(f+7)>>0]=s;a[b+6>>0]=s;a[b+7>>0]=(p+2+(r<<1)+((o+2+(q<<1)+h|0)>>>2)|0)>>>2;return}function oe(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;z=Nb;Nb=Nb+16|0;j=z;w=z+8|0;x=z+4|0;y=$N(h,g<<3)|0;c[w>>2]=y;v=$N(h,g<<4)|0;c[x>>2]=v;a:do if((v|0)!=0&(y|0)!=0){u=d+564|0;v=d+696|0;t=d+580|0;n=0;while(1){if((n|0)>=(g|0))break;o=n>>>i;p=H(n,h)|0;l=0;j=1024;d=-1;while(1){if((l|0)>=(f|0))break;s=(H(c[u>>2]|0,o)|0)+(l>>>i)|0;if((c[(c[v>>2]|0)+(s<<2)>>2]&7|0)!=0?(a[(c[t>>2]|0)+s>>0]&4)!=0:0)k=l+p|0;else{k=l+p|0;j=b[e+(k<<1)>>1]|0;d=l}b[y+(k<<3)+2>>1]=j;c[(c[x>>2]|0)+(k<<4)+4>>2]=(d|0)>-1?l-d|0:9999;l=l+1|0}k=f;j=1024;d=-1;while(1){m=k+-1|0;if((k|0)<=0)break;s=(H(c[u>>2]|0,o)|0)+(m>>i)|0;if((c[(c[v>>2]|0)+(s<<2)>>2]&7|0)!=0?(a[(c[t>>2]|0)+s>>0]&4)!=0:0){l=j;j=m+p|0}else{j=m+p|0;l=b[e+(j<<1)>>1]|0;d=m}b[y+(j<<3)>>1]=l;c[(c[x>>2]|0)+(j<<4)>>2]=(d|0)>-1?d-m|0:9999;k=m;j=l}n=n+1|0}n=0;while(1){if((n|0)>=(f|0))break;o=n>>>i;j=1024;d=-1;l=0;while(1){if((l|0)>=(g|0))break;s=(H(c[u>>2]|0,l>>>i)|0)+o|0;if((c[(c[v>>2]|0)+(s<<2)>>2]&7|0)!=0?(a[(c[t>>2]|0)+s>>0]&4)!=0:0)k=(H(l,h)|0)+n|0;else{k=(H(l,h)|0)+n|0;j=b[e+(k<<1)>>1]|0;d=l}b[y+(k<<3)+6>>1]=j;c[(c[x>>2]|0)+(k<<4)+12>>2]=(d|0)>-1?l-d|0:9999;l=l+1|0}k=g;j=1024;d=-1;while(1){m=k+-1|0;if((k|0)<=0)break;s=(H(c[u>>2]|0,m>>i)|0)+o|0;if((c[(c[v>>2]|0)+(s<<2)>>2]&7|0)!=0?(a[(c[t>>2]|0)+s>>0]&4)!=0:0){l=j;j=(H(m,h)|0)+n|0}else{j=(H(m,h)|0)+n|0;l=b[e+(j<<1)>>1]|0;d=m}b[y+(j<<3)+4>>1]=l;c[(c[x>>2]|0)+(j<<4)+8>>2]=(d|0)>-1?d-m|0:9999;k=m;j=l}n=n+1|0}k=0;while(1){if((k|0)>=(g|0))break a;l=k>>>i;m=H(k,h)|0;d=0;while(1){if((d|0)>=(f|0))break;s=(H(c[u>>2]|0,l)|0)+(d>>>i)|0;if((c[(c[v>>2]|0)+(s<<2)>>2]&120|0)==0?a[(c[t>>2]|0)+s>>0]&4:0){n=c[x>>2]|0;o=d+m|0;j=0;p=0;q=0;r=0;s=0;while(1){if((j|0)==4)break;A=c[n+(o<<4)+(j<<2)>>2]|0;A=268435456/((A>>>0>1?A:1)>>>0)|0;C=b[y+(o<<3)+(j<<1)>>1]|0;C=oK(C|0,((C|0)<0)<<31>>31|0,A|0,0)|0;C=kP(C|0,M()|0,p|0,q|0)|0;B=M()|0;A=kP(r|0,s|0,A|0,0)|0;j=j+1|0;p=C;q=B;r=A;s=M()|0}C=GN(r|0,s|0,1)|0;C=kP(C|0,M()|0,p|0,q|0)|0;C=Eu(C|0,M()|0,r|0,s|0)|0;M()|0;b[e+(o<<1)>>1]=C}d=d+1|0}k=k+1|0}}else mx(c[d>>2]|0,16,195826,j);while(0);zM(w);zM(x);Nb=z;return}function pe(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=Nb;Nb=Nb+1056|0;u=w+1024|0;v=w;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>>2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;f=a[e>>0]|0;a:do if(f<<24>>24){p=0;do{if(!(a[b+p>>0]|0)){f=0;break a}t=f&255;s=u+(t>>>5<<2)|0;c[s>>2]=c[s>>2]|1<<(t&31);p=p+1|0;c[v+(t<<2)>>2]=p;f=a[e+p>>0]|0}while(f<<24>>24!=0);m=p>>>0>1;if(m){k=1;j=1;l=0;i=-1;n=1;while(1){f=a[e+(j+i)>>0]|0;g=a[e+n>>0]|0;do if(f<<24>>24==g<<24>>24)if((j|0)==(k|0)){h=k;f=1;g=k+l|0;break}else{h=k;f=j+1|0;g=l;break}else if((f&255)>(g&255)){h=n-i|0;f=1;g=n;break}else{h=1;f=1;g=l+1|0;i=l;break}while(0);n=f+g|0;if(n>>>0>=p>>>0)break;else{k=h;j=f;l=g}}if(m){m=1;l=1;n=0;g=-1;o=1;while(1){f=a[e+(l+g)>>0]|0;j=a[e+o>>0]|0;do if(f<<24>>24==j<<24>>24)if((l|0)==(m|0)){f=m;j=1;k=m+n|0;break}else{f=m;j=l+1|0;k=n;break}else if((f&255)<(j&255)){f=o-g|0;j=1;k=o;break}else{f=1;j=1;k=n+1|0;g=n;break}while(0);o=j+k|0;if(o>>>0>=p>>>0){t=p;j=25;break}else{m=f;l=j;n=k}}}else{t=p;f=1;g=-1;j=25}}else{h=1;i=-1;t=p;f=1;g=-1;j=25}}else{h=1;i=-1;t=0;f=1;g=-1;j=25}while(0);b:do if((j|0)==25){r=(g+1|0)>>>0>(i+1|0)>>>0;f=r?f:h;r=r?g:i;s=r+1|0;if(!(Zx(e,e+f|0,s)|0)){m=t-f|0;q=m;l=f}else{m=t-r+-1|0;m=(r>>>0>m>>>0?r:m)+1|0;q=0;l=m;m=t-m|0}n=t|63;o=t+-1|0;p=(q|0)!=0;f=b;k=0;g=b;while(1){h=f;do if((g-h|0)>>>0<t>>>0){i=Nm(g,0,n)|0;if(i)if((i-h|0)>>>0<t>>>0){f=0;break b}else break;else{i=g+n|0;break}}else i=g;while(0);g=d[f+o>>0]|0;c:do if(!(1<<(g&31)&c[u+(g>>>5<<2)>>2])){h=0;g=t}else{g=t-(c[v+(g<<2)>>2]|0)|0;if(g|0){h=0;g=p&(k|0)!=0&g>>>0<l>>>0?m:g;break}j=s>>>0>k>>>0;g=j?s:k;h=a[e+g>>0]|0;d:do if(h<<24>>24){while(1){if(h<<24>>24!=(a[f+g>>0]|0))break;g=g+1|0;h=a[e+g>>0]|0;if(!(h<<24>>24))break d}h=0;g=g-r|0;break c}while(0);if(!j)break b;g=s;while(1){g=g+-1|0;if((a[e+g>>0]|0)!=(a[f+g>>0]|0)){h=q;g=l;break c}if(g>>>0<=k>>>0)break b}}while(0);f=f+g|0;k=h;g=i}}while(0);Nb=w;return f|0}function qe(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=Nb;Nb=Nb+304|0;q=y;r=y+256|0;w=g+32860|0;s=r+4|0;c[s>>2]=c[w>>2];x=g+32856|0;c[r>>2]=c[x>>2];u=g+32872|0;v=r+16|0;c[v>>2]=c[u>>2];o=c[g+21828>>2]|0;n=(c[88752+(o*56|0)+12>>2]|0)+(g+32904)|0;o=(c[88864+(o*56|0)+12>>2]|0)+(g+32904)|0;p=g+33161|0;m=0;k=0;while(1){if(m>>>0>=7){t=6;break}j=d[201497+m>>0]|0;if(Vu(r,n+j|0)|0){l=k+1|0;c[q+(k<<2)>>2]=m;if(!(Vu(r,o+j|0)|0))k=l;else{k=l;break}}m=m+1|0}if((t|0)==6)if((m|0)==7){c[q+(k<<2)>>2]=7;k=k+1|0}o=(c[f+26376>>2]|0)+(c[g+21796>>2]<<1)|0;b[o>>1]=64<<i+-49|(e[o>>1]|0);a[(d[88688+i>>0]|0)+(g+27824)>>0]=k;if(!(c[f+25652>>2]|0)){o=k;j=0;while(1){o=o+-1|0;f=d[171064+(c[q+(o<<2)>>2]|0)>>0]|0;if(!(Vu(r,p+(d[201504+j>>0]|0)|0)|0)){k=d[88976+j>>0]|0;i=c[r>>2]|0;j=i<<1;c[r>>2]=j;if(!(i&32767)){VM(r);j=c[r>>2]|0}i=c[s>>2]|0;n=i<<17;j=j-n|0;m=j>>31;j=(m&n)+j|0;c[r>>2]=j;n=k;l=m^65535;k=i}else{k=p+(d[89e3+j>>0]|0)|0;n=d[88984+j>>0]|0;j=2;while(1){if(j>>>0>=15){t=35;break}if(!(Vu(r,k)|0))break;j=j+1|0}if((t|0)==35){t=0;j=0;while(1)if(j>>>0<23&(uI(r)|0)!=0)j=j+1|0;else break;k=1;while(1){if(!j)break;j=j+-1|0;k=(uI(r)|0)+(k<<1)|0}j=k+14|0}i=c[r>>2]|0;k=i<<1;c[r>>2]=k;if(!(i&32767)){VM(r);k=c[r>>2]|0}i=c[s>>2]|0;l=i<<17;k=k-l|0;m=k>>31;k=(m&l)+k|0;c[r>>2]=k;l=m^0-j;j=k;k=i}b[h+(f<<1)>>1]=l-m;if(!o)break;else j=n}}else{j=0;o=k;while(1){o=o+-1|0;f=d[171064+(c[q+(o<<2)>>2]|0)>>0]|0;if(!(Vu(r,p+(d[201504+j>>0]|0)|0)|0)){k=d[88976+j>>0]|0;i=c[r>>2]|0;j=i<<1;c[r>>2]=j;if(!(i&32767)){VM(r);j=c[r>>2]|0}i=c[s>>2]|0;n=i<<17;j=j-n|0;m=j>>31;j=(m&n)+j|0;c[r>>2]=j;n=k;l=~m;k=i}else{k=p+(d[89e3+j>>0]|0)|0;n=d[88984+j>>0]|0;j=2;while(1){if(j>>>0>=15){t=17;break}if(!(Vu(r,k)|0))break;j=j+1|0}if((t|0)==17){t=0;j=0;while(1)if(j>>>0<23&(uI(r)|0)!=0)j=j+1|0;else break;k=1;while(1){if(!j)break;j=j+-1|0;k=(uI(r)|0)+(k<<1)|0}j=k+14|0}i=c[r>>2]|0;k=i<<1;c[r>>2]=k;if(!(i&32767)){VM(r);k=c[r>>2]|0}i=c[s>>2]|0;l=i<<17;k=k-l|0;m=k>>31;k=(m&l)+k|0;c[r>>2]=k;l=m^0-j;j=k;k=i}c[h+(f<<2)>>2]=l-m;if(!o)break;else j=n}}c[w>>2]=k;c[x>>2]=j;c[u>>2]=c[v>>2];Nb=y;return}function re(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=0-f|0;if(!c){q=d[b+g>>0]|0;o=q}else{o=d[b+g>>0]|0;q=d[b+~f>>0]|0}r=d[b+(1-f)>>0]|0;p=r+2|0;s=d[b+(2-f)>>0]|0;t=s+2|0;r=(t+o+(r<<1)|0)>>>2;u=d[b+(3-f)>>0]|0;s=(p+(s<<1)+u|0)>>>2;w=d[b+(4-f)>>0]|0;t=(t+(u<<1)+w|0)>>>2;x=d[b+(5-f)>>0]|0;u=(u+2+(w<<1)+x|0)>>>2;v=d[b+(6-f)>>0]|0;w=(w+2+(x<<1)+v|0)>>>2;c=d[b+(7-f)>>0]|0;x=(x+2+(v<<1)+c|0)>>>2;if(!e){g=c*3|0;e=c;h=c;i=c;j=c;k=c;l=c;m=c;n=c;c=g}else{y=d[b+(8-f)>>0]|0;n=d[b+(9-f)>>0]|0;z=d[b+(10-f)>>0]|0;m=z+2|0;l=d[b+(11-f)>>0]|0;k=d[b+(12-f)>>0]|0;j=d[b+(13-f)>>0]|0;i=d[b+(14-f)>>0]|0;h=d[b+(15-f)>>0]|0;g=(i+2+(h*3|0)|0)>>>2;e=g;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(m+(l<<1)+k|0)>>>2;l=(n+2+(z<<1)+l|0)>>>2;m=(m+y+(n<<1)|0)>>>2;n=(c+2+(y<<1)+n|0)>>>2;c=(c<<1)+y|0;g=g*3|0}z=(v+2+c|0)>>>2;v=s+2|0;a[b>>0]=(v+((p+q+(o<<1)|0)>>>2)+(r<<1)|0)>>>2;y=t+2|0;s=(y+r+(s<<1)|0)>>>2&255;a[b+1>>0]=s;a[b+f>>0]=s;t=(v+(t<<1)+u|0)>>>2&255;a[b+2>>0]=t;a[b+(f+1)>>0]=t;s=f<<1;a[b+s>>0]=t;y=(y+(u<<1)+w|0)>>>2&255;a[b+3>>0]=y;a[b+(f+2)>>0]=y;a[b+(s|1)>>0]=y;t=f*3|0;a[b+t>>0]=y;y=(u+2+(w<<1)+x|0)>>>2&255;a[b+4>>0]=y;a[b+(f+3)>>0]=y;a[b+(s+2)>>0]=y;a[b+(t+1)>>0]=y;v=f<<2;a[b+v>>0]=y;y=(w+2+(x<<1)+z|0)>>>2&255;a[b+5>>0]=y;a[b+(f+4)>>0]=y;a[b+(s+3)>>0]=y;a[b+(t+2)>>0]=y;a[b+(v|1)>>0]=y;w=f*5|0;a[b+w>>0]=y;y=(x+2+n+(z<<1)|0)>>>2&255;a[b+6>>0]=y;a[b+(f+5)>>0]=y;a[b+(s+4)>>0]=y;a[b+(t+3)>>0]=y;a[b+(v|2)>>0]=y;a[b+(w+1)>>0]=y;x=f*6|0;a[b+x>>0]=y;y=m+2|0;u=(y+z+(n<<1)|0)>>>2&255;a[b+7>>0]=u;a[b+(f+6)>>0]=u;a[b+(s+5)>>0]=u;a[b+(t+4)>>0]=u;a[b+(v|3)>>0]=u;a[b+(w+2)>>0]=u;a[b+(x|1)>>0]=u;z=f*7|0;a[b+z>>0]=u;u=(n+2+(m<<1)+l|0)>>>2&255;a[b+(f+7)>>0]=u;a[b+(s+6)>>0]=u;a[b+(t+5)>>0]=u;a[b+(v+4)>>0]=u;a[b+(w+3)>>0]=u;a[b+(x+2)>>0]=u;a[b+(z+1)>>0]=u;y=(y+(l<<1)+k|0)>>>2&255;a[b+(s+7)>>0]=y;a[b+(t+6)>>0]=y;a[b+(v+5)>>0]=y;a[b+(w+4)>>0]=y;a[b+(x+3)>>0]=y;a[b+(z+2)>>0]=y;y=(l+2+(k<<1)+j|0)>>>2&255;a[b+(t+7)>>0]=y;a[b+(v+6)>>0]=y;a[b+(w+5)>>0]=y;a[b+(x+4)>>0]=y;a[b+(z+3)>>0]=y;y=(k+2+(j<<1)+i|0)>>>2&255;a[b+(v+7)>>0]=y;a[b+(w+6)>>0]=y;a[b+(x+5)>>0]=y;a[b+(z+4)>>0]=y;y=(j+2+(i<<1)+h|0)>>>2&255;a[b+(w+7)>>0]=y;a[b+(x+6)>>0]=y;a[b+(z+5)>>0]=y;y=(i+2+(h<<1)+e|0)>>>2&255;a[b+(x+7)>>0]=y;a[b+(z+6)>>0]=y;a[b+(z+7)>>0]=(h+2+g|0)>>>2;return}function se(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=H((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=H((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=H((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=H((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=H((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=H((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=H((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=H(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((H(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;E=b[f+(l<<1)>>1]|0;N=b[f>>1]|0;M=b[f+(h<<1)>>1]|0;L=b[f+(m<<1)>>1]|0;K=b[f+(n<<1)>>1]|0;I=b[f+(o<<1)>>1]|0;F=b[f+(p<<1)>>1]|0;B=b[f+(q<<1)>>1]|0;c=b[f+(r<<1)>>1]|0;C=b[f+(s<<1)>>1]|0;e=b[f+(t<<1)>>1]|0;D=b[f+(u<<1)>>1]|0;J=K+512|0;G=J+(b[f+(i<<1)>>1]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>10;a[k>>0]=G>>>0>255?(G^-2147483648)>>31:G;G=I+512|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>10;a[k+g>>0]=E>>>0>255?(E^-2147483648)>>31:E;E=F+512|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>10;a[k+v>>0]=N>>>0>255?(N^-2147483648)>>31:N;M=M+512+B+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>10;a[k+w>>0]=M>>>0>255?(M^-2147483648)>>31:M;K=L+512+c+((F+I|0)*20|0)+(H(B+K|0,-5)|0)>>10;a[k+x>>0]=K>>>0>255?(K^-2147483648)>>31:K;I=J+C+((B+F|0)*20|0)+(H(c+I|0,-5)|0)>>10;a[k+y>>0]=I>>>0>255?(I^-2147483648)>>31:I;F=G+e+((c+B|0)*20|0)+(H(C+F|0,-5)|0)>>10;a[k+z>>0]=F>>>0>255?(F^-2147483648)>>31:F;B=E+D+((C+c|0)*20|0)+(H(e+B|0,-5)|0)>>10;a[k+A>>0]=B>>>0>255?(B^-2147483648)>>31:B;k=k+1|0;f=f+2|0;j=j+1|0}return}function te(b){b=b|0;var d=0,e=0,h=0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;q=Nb;Nb=Nb+16|0;e=q;o=b+24|0;o=px(c[o>>2]|0,c[o+4>>2]|0)|0;n=b+32|0;n=px(c[n>>2]|0,c[n+4>>2]|0)|0;p=b+83184|0;c[p>>2]=0;if(!((c[b+11136>>2]|0)==0?(d=Gp(b)|0,(d|0)!=0):0))h=3;a:do if((h|0)==3){b:do switch(c[b+11976>>2]|0){case 6:{i=BO(H(n,o)|0,4)|0;j=b+62608|0;c[j>>2]=i;i=rR(4)|0;c[b+62612>>2]=i;j=c[j>>2]|0;if((i|0)==0|(j|0)==0){d=-12;break a}m=0;e=0;while(1){if((e|0)>=(n|0))break;l=H(e,o)|0;d=0;k=0.0;h=0;while(1){if((h|0)>=(o|0))break;s=k+ +g[b+13456+(e<<9)+(h<<3)>>3]*32768.0;r=uV(s)|0;c[j+(h+l<<2)>>2]=r;d=((r|0)>-1?r:0-r|0)+d|0;k=k+(s-+(r|0));h=h+1|0}m=(m|0)>(d|0)?m:d;e=e+1|0}c[i>>2]=32768;d=b+83168|0;if((m|0)<32769){c[d>>2]=122;c[b+83176>>2]=1;r=Wk(b)|0;c[p>>2]=r;break b}else{c[d>>2]=123;c[b+83176>>2]=2;r=Sk(b)|0;c[p>>2]=r;break b}}case 8:{h=BO(H(n,o)|0,4)|0;i=b+62608|0;c[i>>2]=h;h=rR(4)|0;c[b+62612>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){d=-12;break a}d=0;while(1){if((d|0)>=(n|0))break;j=H(d,o)|0;e=0;while(1){if((e|0)>=(o|0))break;f[i+(e+j<<2)>>2]=+g[b+13456+(d<<9)+(e<<3)>>3];e=e+1|0}d=d+1|0}f[h>>2]=1.0;c[b+83168>>2]=124;c[b+83176>>2]=3;r=Uk(b)|0;c[p>>2]=r;break}case 9:{h=BO(H(n,o)|0,8)|0;i=b+62608|0;c[i>>2]=h;h=rR(8)|0;c[b+62612>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){d=-12;break a}d=0;while(1){if((d|0)>=(n|0))break;j=H(d,o)|0;e=0;while(1){if((e|0)>=(o|0))break;g[i+(e+j<<3)>>3]=+g[b+13456+(d<<9)+(e<<3)>>3];e=e+1|0}d=d+1|0}g[h>>3]=1.0;c[b+83168>>2]=125;c[b+83176>>2]=4;r=Tk(b)|0;c[p>>2]=r;break}case 7:{d=rR(4)|0;c[b+62612>>2]=d;if(!d){d=-12;break a}c[d>>2]=32768;c[b+83168>>2]=126;c[b+83176>>2]=5;r=Vk(b)|0;c[p>>2]=r;break}default:{c[e>>2]=214810;c[e+4>>2]=214425;c[e+8>>2]=463;mx(0,0,214689,e);ba()}}while(0);h=0;while(1){if((h|0)==64){d=0;break a}d=0;i=0;while(1){if((i|0)==64)break;s=+g[b+13456+(h<<9)+(i<<3)>>3];e=uV(s*32768.0)|0;c[b+62624+(h<<8)+(i<<2)>>2]=e;e=d+1|0;if(s!=0.0){a[b+79008+(h*65|0)+e>>0]=i;d=e}i=i+1|0}a[b+79008+(h*65|0)>>0]=d;h=h+1|0}}while(0);Nb=q;return d|0}function ue(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0;l=i>>1;B=h*13|0;j=d;k=0;f=f+(0-(i&-2)<<1)|0;while(1){if((k|0)==13)break;A=e[f>>1]|0;y=e[f+2>>1]|0;z=e[f+-2>>1]|0;x=e[f+4>>1]|0;v=H(x+z|0,-5)|0;w=e[f+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[f+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[f+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[f+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[f+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[f+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[f+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[f+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[f+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;f=f+(l<<1)|0}p=g>>1;q=H(h,-2)|0;r=0-h|0;s=h<<1;t=h*3|0;u=h<<2;v=h*5|0;w=h*6|0;x=h*7|0;y=h<<3;z=h*9|0;A=h*10|0;k=g&-2;l=p*3|0;g=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;j=a;f=d+(B<<2)+((H(h,-11)|0)<<2)|0;i=0;while(1){if((i|0)==8)break;F=c[f+(r<<2)>>2]|0;O=c[f>>2]|0;N=c[f+(h<<2)>>2]|0;M=c[f+(s<<2)>>2]|0;L=c[f+(t<<2)>>2]|0;J=c[f+(u<<2)>>2]|0;G=c[f+(v<<2)>>2]|0;d=c[f+(w<<2)>>2]|0;C=c[f+(x<<2)>>2]|0;D=c[f+(y<<2)>>2]|0;a=c[f+(z<<2)>>2]|0;E=c[f+(A<<2)>>2]|0;K=L+512|0;B=K+(c[f+(q<<2)>>2]|0)+((N+O|0)*20|0)+(H(M+F|0,-5)|0)>>10;b[j>>1]=((B>>>0<16384?B:(B^-2147483648)>>31&16383)+1+(e[j>>1]|0)|0)>>>1;B=j+(p<<1)|0;I=J+512|0;F=I+F+((M+N|0)*20|0)+(H(L+O|0,-5)|0)>>10;b[B>>1]=((F>>>0<16384?F:(F^-2147483648)>>31&16383)+1+(e[B>>1]|0)|0)>>>1;B=j+(k<<1)|0;F=G+512|0;O=F+O+((L+M|0)*20|0)+(H(J+N|0,-5)|0)>>10;b[B>>1]=((O>>>0<16384?O:(O^-2147483648)>>31&16383)+1+(e[B>>1]|0)|0)>>>1;B=j+(l<<1)|0;N=N+512+d+((J+L|0)*20|0)+(H(G+M|0,-5)|0)>>10;b[B>>1]=((N>>>0<16384?N:(N^-2147483648)>>31&16383)+1+(e[B>>1]|0)|0)>>>1;B=j+(g<<1)|0;L=M+512+C+((G+J|0)*20|0)+(H(d+L|0,-5)|0)>>10;b[B>>1]=((L>>>0<16384?L:(L^-2147483648)>>31&16383)+1+(e[B>>1]|0)|0)>>>1;B=j+(m<<1)|0;J=K+D+((d+G|0)*20|0)+(H(C+J|0,-5)|0)>>10;b[B>>1]=((J>>>0<16384?J:(J^-2147483648)>>31&16383)+1+(e[B>>1]|0)|0)>>>1;B=j+(n<<1)|0;G=I+a+((C+d|0)*20|0)+(H(D+G|0,-5)|0)>>10;b[B>>1]=((G>>>0<16384?G:(G^-2147483648)>>31&16383)+1+(e[B>>1]|0)|0)>>>1;B=j+(o<<1)|0;d=F+E+((D+C|0)*20|0)+(H(a+d|0,-5)|0)>>10;b[B>>1]=((d>>>0<16384?d:(d^-2147483648)>>31&16383)+1+(e[B>>1]|0)|0)>>>1;j=j+2|0;f=f+4|0;i=i+1|0}return}function ve(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0;l=i>>1;B=h*13|0;j=d;k=0;f=f+(0-(i&-2)<<1)|0;while(1){if((k|0)==13)break;A=e[f>>1]|0;y=e[f+2>>1]|0;z=e[f+-2>>1]|0;x=e[f+4>>1]|0;v=H(x+z|0,-5)|0;w=e[f+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[f+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[f+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[f+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[f+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[f+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[f+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[f+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[f+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;f=f+(l<<1)|0}p=g>>1;q=H(h,-2)|0;r=0-h|0;s=h<<1;t=h*3|0;u=h<<2;v=h*5|0;w=h*6|0;x=h*7|0;y=h<<3;z=h*9|0;A=h*10|0;k=g&-2;l=p*3|0;g=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;j=a;f=d+(B<<2)+((H(h,-11)|0)<<2)|0;i=0;while(1){if((i|0)==8)break;F=c[f+(r<<2)>>2]|0;O=c[f>>2]|0;N=c[f+(h<<2)>>2]|0;M=c[f+(s<<2)>>2]|0;L=c[f+(t<<2)>>2]|0;J=c[f+(u<<2)>>2]|0;G=c[f+(v<<2)>>2]|0;d=c[f+(w<<2)>>2]|0;C=c[f+(x<<2)>>2]|0;D=c[f+(y<<2)>>2]|0;a=c[f+(z<<2)>>2]|0;E=c[f+(A<<2)>>2]|0;K=L+512|0;B=K+(c[f+(q<<2)>>2]|0)+((N+O|0)*20|0)+(H(M+F|0,-5)|0)>>10;b[j>>1]=((B>>>0<4096?B:(B^-2147483648)>>31&4095)+1+(e[j>>1]|0)|0)>>>1;B=j+(p<<1)|0;I=J+512|0;F=I+F+((M+N|0)*20|0)+(H(L+O|0,-5)|0)>>10;b[B>>1]=((F>>>0<4096?F:(F^-2147483648)>>31&4095)+1+(e[B>>1]|0)|0)>>>1;B=j+(k<<1)|0;F=G+512|0;O=F+O+((L+M|0)*20|0)+(H(J+N|0,-5)|0)>>10;b[B>>1]=((O>>>0<4096?O:(O^-2147483648)>>31&4095)+1+(e[B>>1]|0)|0)>>>1;B=j+(l<<1)|0;N=N+512+d+((J+L|0)*20|0)+(H(G+M|0,-5)|0)>>10;b[B>>1]=((N>>>0<4096?N:(N^-2147483648)>>31&4095)+1+(e[B>>1]|0)|0)>>>1;B=j+(g<<1)|0;L=M+512+C+((G+J|0)*20|0)+(H(d+L|0,-5)|0)>>10;b[B>>1]=((L>>>0<4096?L:(L^-2147483648)>>31&4095)+1+(e[B>>1]|0)|0)>>>1;B=j+(m<<1)|0;J=K+D+((d+G|0)*20|0)+(H(C+J|0,-5)|0)>>10;b[B>>1]=((J>>>0<4096?J:(J^-2147483648)>>31&4095)+1+(e[B>>1]|0)|0)>>>1;B=j+(n<<1)|0;G=I+a+((C+d|0)*20|0)+(H(D+G|0,-5)|0)>>10;b[B>>1]=((G>>>0<4096?G:(G^-2147483648)>>31&4095)+1+(e[B>>1]|0)|0)>>>1;B=j+(o<<1)|0;d=F+E+((D+C|0)*20|0)+(H(a+d|0,-5)|0)>>10;b[B>>1]=((d>>>0<4096?d:(d^-2147483648)>>31&4095)+1+(e[B>>1]|0)|0)>>>1;j=j+2|0;f=f+4|0;i=i+1|0}return}function we(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=0-f|0;if(!c){c=d[b+g>>0]|0;g=c}else{g=d[b+g>>0]|0;c=d[b+~f>>0]|0}k=d[b+(1-f)>>0]|0;p=k+2|0;r=(p+c+(g<<1)|0)>>>2;l=d[b+(2-f)>>0]|0;m=l+2|0;k=(m+g+(k<<1)|0)>>>2;n=d[b+(3-f)>>0]|0;l=(p+(l<<1)+n|0)>>>2;p=d[b+(4-f)>>0]|0;m=(m+(n<<1)+p|0)>>>2;q=d[b+(5-f)>>0]|0;n=(n+2+(p<<1)+q|0)>>>2;o=d[b+(6-f)>>0]|0;p=(p+2+(q<<1)+o|0)>>>2;c=d[b+(7-f)>>0]|0;q=(q+2+(o<<1)+c|0)>>>2;if(!e){g=c;e=c;h=c;i=c;j=c;c=c*3|0}else{s=d[b+(8-f)>>0]|0;j=d[b+(9-f)>>0]|0;t=d[b+(10-f)>>0]|0;i=t+2|0;h=d[b+(11-f)>>0]|0;e=d[b+(12-f)>>0]|0;g=(h+2+(e<<1)+(d[b+(13-f)>>0]|0)|0)>>>2;e=(i+(h<<1)+e|0)>>>2;h=(j+2+(t<<1)+h|0)>>>2;i=(i+s+(j<<1)|0)>>>2;j=(c+2+(s<<1)+j|0)>>>2;c=(c<<1)+s|0}u=(o+2+c|0)>>>2;t=k+1|0;a[b>>0]=(t+r|0)>>>1;s=l+2|0;a[b+f>>0]=(s+r+(k<<1)|0)>>>2;t=(t+l|0)>>>1&255;a[b+1>>0]=t;c=f<<1;a[b+c>>0]=t;t=m+2|0;r=(t+k+(l<<1)|0)>>>2&255;a[b+(f+1)>>0]=r;k=f*3|0;a[b+k>>0]=r;r=(l+1+m|0)>>>1&255;a[b+2>>0]=r;a[b+(c|1)>>0]=r;o=f<<2;a[b+o>>0]=r;s=(s+(m<<1)+n|0)>>>2&255;a[b+(f+2)>>0]=s;a[b+(k+1)>>0]=s;r=f*5|0;a[b+r>>0]=s;m=(m+1+n|0)>>>1&255;a[b+3>>0]=m;a[b+(c+2)>>0]=m;a[b+(o|1)>>0]=m;s=f*6|0;a[b+s>>0]=m;m=(t+(n<<1)+p|0)>>>2&255;a[b+(f+3)>>0]=m;a[b+(k+2)>>0]=m;a[b+(r+1)>>0]=m;t=f*7|0;a[b+t>>0]=m;m=(n+1+p|0)>>>1&255;a[b+4>>0]=m;a[b+(c+3)>>0]=m;a[b+(o|2)>>0]=m;a[b+(s|1)>>0]=m;n=(n+2+(p<<1)+q|0)>>>2&255;a[b+(f+4)>>0]=n;a[b+(k+3)>>0]=n;a[b+(r+2)>>0]=n;a[b+(t+1)>>0]=n;n=(p+1+q|0)>>>1&255;a[b+5>>0]=n;a[b+(c+4)>>0]=n;a[b+(o|3)>>0]=n;a[b+(s+2)>>0]=n;p=(p+2+(q<<1)+u|0)>>>2&255;a[b+(f+5)>>0]=p;a[b+(k+4)>>0]=p;a[b+(r+3)>>0]=p;a[b+(t+2)>>0]=p;p=(q+1+u|0)>>>1&255;a[b+6>>0]=p;a[b+(c+5)>>0]=p;a[b+(o+4)>>0]=p;a[b+(s+3)>>0]=p;p=(q+2+j+(u<<1)|0)>>>2&255;a[b+(f+6)>>0]=p;a[b+(k+5)>>0]=p;a[b+(r+4)>>0]=p;a[b+(t+3)>>0]=p;p=j+1|0;q=(p+u|0)>>>1&255;a[b+7>>0]=q;a[b+(c+6)>>0]=q;a[b+(o+5)>>0]=q;a[b+(s+4)>>0]=q;q=i+2|0;n=(q+u+(j<<1)|0)>>>2&255;a[b+(f+7)>>0]=n;a[b+(k+6)>>0]=n;a[b+(r+5)>>0]=n;a[b+(t+4)>>0]=n;f=(p+i|0)>>>1&255;a[b+(c+7)>>0]=f;a[b+(o+6)>>0]=f;a[b+(s+5)>>0]=f;f=(j+2+(i<<1)+h|0)>>>2&255;a[b+(k+7)>>0]=f;a[b+(r+6)>>0]=f;a[b+(t+5)>>0]=f;f=(i+1+h|0)>>>1&255;a[b+(o+7)>>0]=f;a[b+(s+6)>>0]=f;f=(q+(h<<1)+e|0)>>>2&255;a[b+(r+7)>>0]=f;a[b+(t+6)>>0]=f;a[b+(s+7)>>0]=(h+1+e|0)>>>1;a[b+(t+7)>>0]=(h+2+(e<<1)+g|0)>>>2;return}function xe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+240|0;r=s+176|0;d=s+160|0;n=s+144|0;m=s+128|0;l=s;o=s+224|0;p=s+184|0;q=b+840|0;do if((c[q>>2]|0)==3){k=a+26364|0;g=c[k>>2]|0;h=c[a+24312>>2]|0;g=c[((g|0)==3?h+84|0:h+76+(((g|0)==2&1)<<2)|0)>>2]|0;h=a+28332|0;i=a+29540|0;j=a+28460|0;f=0;while(1){if(f>>>0>=2){d=11;break}d=Ft(l,h,c[i>>2]|0,g,f^1)|0;d=(Ft(l+(d<<2)|0,h,c[i>>2]|0,g,f)|0)+d|0;if((d|0)>=33){d=5;break}d=Gj(b+23416+(f*1920|0)|0,48,l,d,0,c[k>>2]|0)|0;d=(Gj(b+23416+(f*1920|0)+(d*40|0)|0,48-d|0,j,16,1,c[k>>2]|0)|0)+d|0;if((d|0)>=33){d=7;break}e=c[b+23404+(f<<2)>>2]|0;if(e>>>0>d>>>0)jq(b+23416+(f*1920|0)+(d*40|0)|0,0,(e-d|0)*40|0)|0;c[o+(f<<2)>>2]=d;f=f+1|0}if((d|0)==5){c[m>>2]=197963;c[m+4>>2]=197783;c[m+8>>2]=153;mx(0,0,214689,m);ba()}else if((d|0)==7){c[n>>2]=197963;c[n+4>>2]=197783;c[n+8>>2]=160;mx(0,0,214689,n);ba()}else if((d|0)==11){e=c[o>>2]|0;o=c[o+4>>2]|0;if((e|0)==(o|0)&(o|0)>1){d=0;while(1){if((d|0)>=(e|0))break;if((c[c[(c[c[b+23416+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0)!=(c[c[(c[c[b+25336+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0))break;d=d+1|0}if((d|0)==(e|0)){d=b+25376|0;j=p;f=d;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));e=b+25336|0;j=d;f=e;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));j=e;f=p;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0))}}break}}else{p=a+26364|0;e=Gj(b+23416|0,48,a+28332|0,c[a+29540>>2]|0,0,c[p>>2]|0)|0;e=(Gj(b+23416+(e*40|0)|0,48-e|0,a+28460|0,16,1,c[p>>2]|0)|0)+e|0;if((e|0)>=33){c[d>>2]=197963;c[d+4>>2]=197783;c[d+8>>2]=181;mx(0,0,214689,d);ba()}d=c[b+23404>>2]|0;if(d>>>0>e>>>0)jq(b+23416+(e*40|0)|0,0,(d-e|0)*40|0)|0}while(0);h=a+4|0;f=0;while(1){if(f>>>0>=((c[q>>2]|0)==3?2:1)>>>0)break;i=b+23404+(f<<2)|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;d=b+23416+(f*1920|0)+(g*40|0)|0;e=c[b+23416+(f*1920|0)+(g*40|0)+36>>2]|0;if(e|0?sF(a,e)|0:0){mx(c[h>>2]|0,16,197973,r);j=d;k=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0))}g=g+1|0}f=f+1|0}e=b+23412|0;d=0;while(1){if(d>>>0>=(c[e>>2]|0)>>>0)break;j=a+28252+(d*40|0)|0;f=b+23416+(d*1920|0)|0;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));d=d+1|0}Nb=s;return}function ye(a,b,d,e,f,h,i,j,k,l,m,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;j=j|0;k=k|0;l=+l;m=+m;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Nb;Nb=Nb+48|0;u=x+24|0;t=x+8|0;s=x;w=x+32|0;n=x+36|0;c[w>>2]=a;i=(i!=0.0?i:.97)*+(b|0)/+(d|0);i=i>1.0?1.0:i;f=1<<f;m=+(e|0)/i;q=~~+G(+m);q=(q|0)>1?q+1&2147483646:1;if(!o){e=f;r=f}else{Mf(n,x+28|0,b,((b|0)<0)<<31>>31,d,((d|0)<0)<<31>>31,2147483647,0)|0;a=c[n>>2]|0;if((a|0)>(f|0)){n=f;a=f}else n=f-((f|0)%(a|0)|0)|0;e=n;r=a;a=c[w>>2]|0}if((((((((a|0)!=0?(c[a+48>>2]|0)==(r|0):0)?(c[a+52>>2]|0)==(h|0):0)?!(+g[a+72>>3]!=i):0)?(c[a+8>>2]|0)==(q|0):0)?(c[a+80>>2]|0)==(j|0):0)?(c[a+56>>2]|0)==(k|0):0)?!(+g[a+64>>3]!=l):0)p=23;else p=13;do if((p|0)==13){QQ(w);a=rR(112)|0;c[w>>2]=a;if(a){c[a+80>>2]=j;a=bQ(j)|0;n=c[w>>2]|0;c[n+84>>2]=a;switch(c[n+80>>2]|0){case 6:{v=15;break}case 7:{v=30;break}case 9:case 8:{v=0;break}default:{mx(0,16,214822,s);c[t>>2]=214810;c[t+4>>2]=214748;c[t+8>>2]=335;mx(0,0,214689,t);ba()}}c[n+88>>2]=v;if(m>8388607.0){mx(0,16,214849,u);a=w;p=29;break}c[n+48>>2]=r;c[n+52>>2]=h;g[n+72>>3]=i;c[n+8>>2]=q;h=q+7&2147483640;c[n+12>>2]=h;a=BO(h,H(a,r+1|0)|0)|0;n=c[w>>2]|0;c[n+4>>2]=a;c[n+56>>2]=k;g[n+64>>3]=l;c[n+92>>2]=e;if((a|0)!=0?(Jd(n,a,i,c[n+8>>2]|0,c[n+12>>2]|0,r,1<<c[n+88>>2],k,l)|0)==0:0){a=c[w>>2]|0;p=c[a+4>>2]|0;k=c[a+12>>2]|0;h=(H(k,r)|0)+1|0;a=c[a+84>>2]|0;Bk(p+(H(h,a)|0)|0,p|0,H(k+-1|0,a)|0)|0;a=c[w>>2]|0;k=c[a+4>>2]|0;p=c[a+12>>2]|0;h=H(p,r)|0;a=c[a+84>>2]|0;Bk(k+(H(h,a)|0)|0,k+(H(p+-1|0,a)|0)|0,a|0)|0;a=c[w>>2]|0;p=23}else{a=w;p=29}}else a=0}while(0);do if((p|0)==23){c[a+44>>2]=0;d=oK(r|0,((r|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;if(!(Mf(a+40|0,a+20|0,b,((b|0)<0)<<31>>31,d,M()|0,1073741823,0)|0)){a=w;p=29;break}a=c[w>>2]|0;n=a+20|0;f=a+40|0;e=c[n>>2]|0;while(1){o=c[f>>2]|0;if(!((e|0)<1048576&(o|0)<1048576))break;d=e<<1;c[n>>2]=d;c[f>>2]=o<<1;e=d}c[a+16>>2]=e;d=(e|0)/(o|0)|0;c[a+24>>2]=d;d=e-(H(d,o)|0)|0;c[a+28>>2]=d;d=H(((c[a+8>>2]|0)+-1|0)/2|0,0-r|0)|0;c[a+32>>2]=d;c[a+36>>2]=0;Jw(a);a=c[w>>2]|0}while(0);if((p|0)==29){zM((c[w>>2]|0)+4|0);FV(c[a>>2]|0);a=0}Nb=x;return a|0}function ze(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=Nb;Nb=Nb+16|0;z=A+8|0;y=A;u=c[f+48>>2]|0;x=(i|0)==1&(u|0)==1?2:1;u=(i|0)!=0&(u|0)!=0;v=u?12:31;t=u?c[218481]|0:c[218473]|0;u=u?c[218489]|0:c[218485]|0;w=h+20|0;q=f+310120|0;r=g+8|0;s=g+16|0;i=0;a:while(1){j=c[w>>2]|0;if(i>>>0>=j>>>0){f=18;break}b:do if(!(a[h+29+i>>0]|0)){f=H(Yz(g,5)|0,x)|0;i=i+1|0;a[h+87856+(i*5|0)>>0]=f;p=1;while(1){if(p>>>0>=(c[q>>2]|0)>>>0)break b;n=f&255;f=c[r>>2]|0;o=c[s>>2]|0;l=c[g>>2]|0;k=l+(f>>>3)|0;k=(IS(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(f&7)>>>23;j=b[t+(k<<2)>>1]|0;k=b[t+(k<<2)+2>>1]|0;m=k<<16>>16;if(k<<16>>16<0){f=f+9|0;f=o>>>0>f>>>0?f:o;B=l+(f>>>3)|0;B=((IS(d[B>>0]|d[B+1>>0]<<8|d[B+2>>0]<<16|d[B+3>>0]<<24|0)|0)<<(f&7)>>>(m+32|0))+j|0;j=b[t+(B<<2)>>1]|0;B=b[t+(B<<2)+2>>1]|0;k=B<<16>>16;if(B<<16>>16<0){f=f-m|0;f=o>>>0>f>>>0?f:o;B=l+(f>>>3)|0;j=((IS(d[B>>0]|d[B+1>>0]<<8|d[B+2>>0]<<16|d[B+3>>0]<<24|0)|0)<<(f&7)>>>(k+32|0))+j|0;k=b[t+(j<<2)+2>>1]|0;j=b[t+(j<<2)>>1]|0}}else k=m;f=k+f|0;c[r>>2]=o>>>0>f>>>0?f:o;f=(H(j-v|0,x)|0)+n|0;a[h+87856+(i*5|0)+p>>0]=f;j=f&255;if(j>>>0>30){f=17;break a}else p=p+1|0}}else{p=i+1|0;o=0;while(1){if(o>>>0>=(c[q>>2]|0)>>>0){i=p;break b}m=d[h+87856+(i*5|0)+o>>0]|0;f=c[r>>2]|0;n=c[s>>2]|0;k=c[g>>2]|0;B=k+(f>>>3)|0;B=(IS(d[B>>0]|d[B+1>>0]<<8|d[B+2>>0]<<16|d[B+3>>0]<<24|0)|0)<<(f&7)>>>23;j=b[u+(B<<2)>>1]|0;B=b[u+(B<<2)+2>>1]|0;l=B<<16>>16;if(B<<16>>16<0){f=f+9|0;f=n>>>0>f>>>0?f:n;B=k+(f>>>3)|0;j=((IS(d[B>>0]|d[B+1>>0]<<8|d[B+2>>0]<<16|d[B+3>>0]<<24|0)|0)<<(f&7)>>>(l+32|0))+j|0;l=b[u+(j<<2)+2>>1]|0;j=b[u+(j<<2)>>1]|0}B=l+f|0;c[r>>2]=n>>>0>B>>>0?B:n;j=(H(j-v|0,x)|0)+m|0;a[h+87856+(p*5|0)+o>>0]=j;j=j&255;if(j>>>0>30){f=10;break a}else o=o+1|0}}while(0)}if((f|0)==10){i=c[e+4>>2]|0;c[y>>2]=j;mx(i,16,190218,y);i=-1094995529}else if((f|0)==17){i=c[e+4>>2]|0;c[z>>2]=j;mx(i,16,190218,z);i=-1094995529}else if((f|0)==18){i=h+87856|0;B=h+87856+(j*5|0)|0;a[i>>0]=a[B>>0]|0;a[i+1>>0]=a[B+1>>0]|0;a[i+2>>0]=a[B+2>>0]|0;a[i+3>>0]=a[B+3>>0]|0;a[i+4>>0]=a[B+4>>0]|0;i=0}Nb=A;return i|0}function Ae(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=Nb;Nb=Nb+32|0;e=o+24|0;f=o;m=c[b+25652>>2]|0;n=b+28200|0;g=c[n>>2]|0;c[f>>2]=1<<(c[g+1184>>2]|0)+-1;g=1<<(c[g+1188>>2]|0)+-1;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=-1;g=b+4|0;do if(hy(c[g>>2]|0)|0){sx(b,1);l=b+24312|0;c[l>>2]=0;d=pM(b)|0;if((d|0)<0){mx(c[g>>2]|0,16,199792,e);break}j=b+696+(d*656|0)|0;k=b+26364|0;i=c[k>>2]|0;c[b+696+(d*656|0)+640>>2]=(c[b+25672>>2]|0)==0?i:0;e=b+25676|0;p=c[e>>2]|0;c[e>>2]=p+1;e=c[j>>2]|0;c[e+128>>2]=p;c[b+696+(d*656|0)+636>>2]=(i|0)!=3&1;c[b+696+(d*656|0)+88>>2]=c[b+28228>>2];c[e+84>>2]=0;c[b+696+(d*656|0)+92>>2]=0;c[b+696+(d*656|0)+644>>2]=0;c[b+696+(d*656|0)+648>>2]=0;c[b+696+(d*656|0)+652>>2]=c[b+29700>>2];i=b+25628|0;c[e+88>>2]=c[(c[i>>2]|0)+836>>2];c[e+392>>2]=c[b+25700>>2];c[e+396>>2]=c[b+25704>>2];c[e+384>>2]=c[b+25708>>2];c[e+388>>2]=c[b+25712>>2];d=Fh(b,j)|0;if((d|0)>=0){if(((c[b+29560>>2]|0)==0?(h=c[g>>2]|0,(c[h+704>>2]|0)==0):0)?(c[(c[h+12>>2]|0)+16>>2]&128|0)==0:0)tm(c[j>>2]|0,f);c[l>>2]=j;d=b+24316|0;Tw(b,d);ru((c[i>>2]|0)+696|0,0);d=gg(b,d,c[l>>2]|0)|0;if((d|0)>=0){e=c[b+25632>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;h=c[c[l>>2]>>2]|0;p=c[i>>2]|0;c[p+(d*34768|0)+21772>>2]=c[h+32>>2];c[p+(d*34768|0)+21776>>2]=c[h+36>>2];d=d+1|0}if(c[b+29656>>2]|0){rz((c[i>>2]|0)+24|0);ru((c[i>>2]|0)+728|0,0);ru((c[i>>2]|0)+760|0,0)}d=0;while(1){if((d|0)==16)break;p=a[88688+d>>0]|0;h=(p&255)+-12|0;p=((p<<2&255)+16&28)<<m;i=(c[j>>2]|0)+32|0;g=p+(H(c[i>>2]<<2,h>>3)|0)|0;c[b+25960+(d<<2)>>2]=g;p=(H(h&-8,c[i>>2]|0)|0)+p|0;c[b+25960+(d+48<<2)>>2]=p;d=d+1|0}d=0;while(1){if((d|0)==16)break;p=a[88688+d>>0]|0;h=(p&255)+-12|0;p=((p<<2&255)+16&28)<<m;i=(c[j>>2]|0)+36|0;g=p+(H(c[i>>2]<<2,h>>3)|0)|0;c[b+25960+(d+32<<2)>>2]=g;c[b+25960+(d+16<<2)>>2]=g;p=(H(h&-8,c[i>>2]|0)|0)+p|0;c[b+25960+(d+80<<2)>>2]=p;c[b+25960+(d+64<<2)>>2]=p;d=d+1|0}p=c[l>>2]|0;c[p+640>>2]=0;c[p+80>>2]=2147483647;c[p+76>>2]=2147483647;c[b+28724>>2]=0;c[b+25692>>2]=0;if(!(c[(c[n>>2]|0)+68>>2]|0))d=0;else d=(c[k>>2]|0)==3&1;c[b+26360>>2]=d;d=0}}}else{mx(c[g>>2]|0,16,199746,o+16|0);d=-1}while(0);Nb=o;return d|0}function Be(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Nb;Nb=Nb+80|0;e=r+48|0;j=r+32|0;n=r+16|0;o=r;g=r+64|0;h=r+60|0;q=c[(c[a+64>>2]|0)+16>>2]|0;a:do switch(c[a+8>>2]|0){case 0:{c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;k=b+68|0;e=c[k>>2]|0;c[g>>2]=e;l=b+72|0;f=c[l>>2]|0;c[h>>2]=f;m=q+16|0;i=b+80|0;if(((c[m>>2]|0)==(c[i>>2]|0)?(c[q+20>>2]|0)==(e|0):0)?(c[q+24>>2]|0)==(f|0):0)d=0;else p=5;b:do if((p|0)==5){Lf(a,g,h,q+28|0);f=a+144|0;a=c[g>>2]|0;do{d=ks(n,c[f>>2]|0,a)|0;if((d|0)<0)break b;a=c[g>>2]|0;a=(a&0-a)+a|0;c[g>>2]=a;d=0;e=0;while(1){if((d|0)==4)break;b=(c[n+(d<<2)>>2]|0)%(c[q+28+(d<<2)>>2]|0)|0|e;d=d+1|0;e=b}}while((e|0)!=0);f=Fk(j,c[f>>2]|0,c[h>>2]|0,0,n)|0;if((f|0)>=0){d=0;while(1){if(d>>>0>=3)break;e=d+1|0;a=c[j+(e<<2)>>2]|0;if(!a)break;c[o+(d<<2)>>2]=a-(c[j+(d<<2)>>2]|0);d=e}c[o+(d<<2)>>2]=f-(c[j+(d<<2)>>2]|0)+(c[j>>2]|0);d=0;while(1){if(d>>>0>=4){p=21;break}e=q+(d<<2)|0;gM(e);c[q+60+(d<<2)>>2]=c[n+(d<<2)>>2];a=c[o+(d<<2)>>2]|0;if(a|0?(p=DJ(a+23|0,22)|0,c[e>>2]=p,(p|0)==0):0){p=23;break}d=d+1|0}if((p|0)==21){c[m>>2]=c[i>>2];c[q+20>>2]=c[k>>2];c[q+24>>2]=c[l>>2];d=0;break a}else if((p|0)==23){d=-12;p=32;break a}}else d=-1}while(0);break}case 1:{f=c[b+352>>2]|0;g=b+80|0;h=(aQ(c[g>>2]|0)|0)==0;h=h?1:f;i=q+16|0;if((((c[i>>2]|0)==(c[g>>2]|0)?(c[q+76>>2]|0)==(h|0):0)?(c[q+80>>2]|0)==(f|0):0)?(c[b+76>>2]|0)==(c[q+84>>2]|0):0){d=0;break a}gM(q);a=q+60|0;e=b+76|0;d=up(a,f,c[e>>2]|0,c[g>>2]|0,0)|0;if((d|0)>=0){o=DJ(c[a>>2]|0,0)|0;c[q>>2]=o;if(!o){d=-12;p=32}else{c[i>>2]=c[g>>2];c[q+76>>2]=h;c[q+80>>2]=f;c[q+84>>2]=c[e>>2];d=0}}else p=32;break}default:{c[e>>2]=214810;c[e+4>>2]=166508;c[e+8>>2]=1343;mx(0,0,214689,e);ba()}}while(0);if((p|0)==32){e=0;while(1){if((e|0)==4)break;gM(q+(e<<2)|0);e=e+1|0}c[q+16>>2]=-1;c[q+84>>2]=0;c[q+80>>2]=0;c[q+76>>2]=0;c[q+24>>2]=0;c[q+20>>2]=0}Nb=r;return d|0}function Ce(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Nb;Nb=Nb+32|0;h=l+24|0;k=l+16|0;j=l+8|0;i=l;g=c[(c[a+64>>2]|0)+40>>2]|0;do if(g){f=g+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=b+104|0;c[d>>2]=e;c[d+4>>2]=f;d=b+112|0;c[d>>2]=e;c[d+4>>2]=f;d=g+56|0;f=c[d+4>>2]|0;e=b+328|0;c[e>>2]=c[d>>2];c[e+4>>2]=f;e=g+48|0;f=c[e+4>>2]|0;d=b+336|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[b+356>>2]=c[g+28>>2];d=0;while(1){if(d>>>0>=8){e=9;break}e=ev(g,c[18256+(d<<3)>>2]|0,h)|0;if(e|0){f=AQ(b,c[18256+(d<<3)+4>>2]|0,c[h>>2]|0)|0;if(!f){e=7;break}Bk(c[f+4>>2]|0,e|0,c[h>>2]|0)|0}d=d+1|0}if((e|0)==7){d=-12;break}else if((e|0)==9){cK(g,b);f=b+296|0;d=c[f>>2]|0;c[f>>2]=(c[g+36>>2]&4|0)==0?d&-5:d|4;e=10;break}}else e=10;while(0);a:do if((e|0)==10){f=a+696|0;g=c[f+4>>2]|0;d=b+224|0;c[d>>2]=c[f>>2];c[d+4>>2]=g;d=b+304|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+388>>2];d=b+308|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+392>>2];d=b+312|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+396>>2];d=b+300|0;if(!(c[d>>2]|0))c[d>>2]=c[a+400>>2];d=b+316|0;if(!(c[d>>2]|0))c[d>>2]=c[a+404>>2];switch(c[(c[a+12>>2]|0)+8>>2]|0){case 0:{c[b+80>>2]=c[a+144>>2];d=b+92|0;if(!(c[d>>2]|0)){g=a+228|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}e=c[b+68>>2]|0;if(!e){d=0;break a}f=c[b+72>>2]|0;if(!f){d=0;break a}c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];if((Lv(e,f,h)|0)>=0){d=0;break a}k=b+96|0;j=c[k>>2]|0;c[i>>2]=c[d>>2];c[i+4>>2]=j;mx(a,24,185677,i);c[b+92>>2]=0;c[k>>2]=1;d=0;break a}case 1:break;default:{d=0;break a}}d=b+232|0;if(!(c[d>>2]|0))c[d>>2]=c[a+416>>2];d=b+80|0;if((c[d>>2]|0)<0)c[d>>2]=c[a+424>>2];f=b+240|0;i=f;do if((c[i>>2]|0)==0&(c[i+4>>2]|0)==0){g=a+448|0;e=g;d=c[e>>2]|0;e=c[e+4>>2]|0;if((d|0)==0&(e|0)==0){d=c[a+420>>2]|0;if(d>>>0<=64)break;c[k>>2]=d;mx(a,16,167828,k);d=-38;break a}d=px(d,e)|0;if((d|0)==(c[a+420>>2]|0)){j=g;k=c[j+4>>2]|0;a=f;c[a>>2]=c[j>>2];c[a+4>>2]=k;break}else{mx(a,16,167791,j);d=-22;break a}}else d=c[a+420>>2]|0;while(0);c[b+352>>2]=d;d=0}while(0);Nb=l;return d|0}function De(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Nb;Nb=Nb+48|0;p=q+32|0;m=q+24|0;l=q+16|0;i=q+8|0;g=q;k=c[b+6472>>2]|0;n=c[b+6476>>2]|0;j=(k|0)!=39;do if(j){if(NL(f)|0?(h=b+4|0,mx(c[h>>2]|0,16,188345,g),c[(c[h>>2]|0)+688>>2]&2|0):0){g=-1094995529;break}g=e+4|0;c[e+8>>2]=c[g>>2];h=Yz(f,2)|0;c[g>>2]=h;if((k|0)!=23|(h|0)==0){o=e+12|0;a[e+13>>0]=a[o>>0]|0;i=(NL(f)|0)&255;a[o>>0]=i;o=8;break}else{p=c[b+4>>2]|0;c[i>>2]=h;mx(p,16,188364,i);c[g>>2]=0;g=-1094995529;break}}else{g=e+4|0;o=8}while(0);do if((o|0)==8){i=e+16|0;c[i>>2]=1;a[e+20>>0]=1;a:do if((c[g>>2]|0)!=2){g=(Yz(f,6)|0)&255;a[e>>0]=g;c[e+92>>2]=1;g=(c[b+6516>>2]|0)!=0;switch(k|0){case 23:case 39:{i=c[(g?59792:59504)+(n<<2)>>2]|0;c[e+80>>2]=i;h=a[(g?191422:191409)+n>>0]|0;c[e+88>>2]=h&255;c[e+96>>2]=d[(g?191487:191474)+n>>0];if(h<<24>>24==0|(i|0)==0){g=-558323010;h=e;break a}break}default:{c[e+88>>2]=d[(g?191396:191383)+n>>0];c[e+80>>2]=c[(g?58736:57968)+(n<<2)>>2];c[e+96>>2]=d[191461+n>>0]}}if(j){g=NL(f)|0;c[e+100>>2]=g;c[e+108>>2]=0}else g=c[e+100>>2]|0;if(!g){h=e;o=29}else switch(k|0){case 1:if(!(xs(b,e,f)|0)){h=e;o=29;break a}else{g=-1094995529;h=e;break a}case 2:case 17:{mx(c[b+4>>2]|0,16,188441,l);g=-1094995529;h=e;break a}case 23:{mx(c[b+4>>2]|0,16,188479,m);g=-1163346256;h=e;break a}default:{o=(Yz(f,1)|0)&255;g=e+28|0;a[g>>0]=o;if(!(o<<24>>24)){h=e;o=29;break a}Jy(g,f,a[e>>0]|0);h=e;o=29;break a}}}else{g=(Yz(f,4)|0)&255;a[e>>0]=g;g=0;while(1){if((g|0)==7)break;o=(NL(f)|0)==0;h=c[i>>2]|0;if(o){c[i>>2]=h+1;a[e+20+h>>0]=1}else{o=h+-1+(e+20)|0;a[o>>0]=(a[o>>0]|0)+1<<24>>24}g=g+1|0}c[e+92>>2]=8;h=(c[b+6516>>2]|0)==0;c[e+80>>2]=c[(h?60080:60304)+(n<<2)>>2];c[e+88>>2]=d[(h?191435:191435)+n>>0];c[e+96>>2]=d[191500+n>>0];c[e+100>>2]=0;h=e;o=29}while(0);if((o|0)==29){i=d[h>>0]|0;g=c[e+88>>2]|0;if((g|0)>=(i|0)){g=0;break}e=c[b+4>>2]|0;c[p>>2]=i;c[p+4>>2]=g;mx(e,16,188518,p);g=-1094995529}a[h>>0]=0}while(0);Nb=q;return g|0}function Ee(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=Nb;Nb=Nb+32|0;x=y+16|0;l=y+8|0;k=y;c[f>>2]=0;w=f+4|0;c[w>>2]=0;i=qp(a)|0;j=f+8|0;c[j>>2]=i;if(i>>>0>7){c[k>>2]=i;mx(h,16,196964,k);c[j>>2]=0;i=0}t=1<<i;s=b+12|0;if(!(c[s>>2]|0))r=0;else{i=qp(a)|0;j=f+12|0;c[j>>2]=i;if(i>>>0>7){c[l>>2]=i;mx(h,16,197007,l);c[j>>2]=0;i=0}r=1<<i}q=(g|0)==3;m=(e|0)==3;g=0;a:while(1){if(g>>>0>=2){j=37;break}n=f+16+(g<<2)|0;c[n>>2]=0;o=f+24+(g<<2)|0;c[o>>2]=0;p=d+(g<<2)|0;e=0;while(1){if((e|0)>=(c[p>>2]|0))break;if(NL(a)|0){i=pp(a)|0;j=f+32+(e<<4)+(g<<3)|0;c[j>>2]=i;i=pp(a)|0;c[f+32+(e<<4)+(g<<3)+4>>2]=i;j=c[j>>2]|0;if((j<<24>>24|0)!=(j|0)){j=40;break a}if((i<<24>>24|0)!=(i|0)){j=40;break a}if(!((i|0)==0&(j|0)==(t|0))){c[f>>2]=1;c[n>>2]=1}}else{c[f+32+(e<<4)+(g<<3)>>2]=t;c[f+32+(e<<4)+(g<<3)+4>>2]=0}b:do if(c[s>>2]|0){if(!(NL(a)|0)){i=0;while(1){if((i|0)==2)break b;c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]=r;c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]=0;i=i+1|0}}i=0;while(1){if(i>>>0>=2)break b;j=pp(a)|0;b=f+800+(e<<5)+(g<<4)+(i<<3)|0;c[b>>2]=j;j=pp(a)|0;l=f+800+(e<<5)+(g<<4)+(i<<3)+4|0;c[l>>2]=j;k=c[b>>2]|0;if((k<<24>>24|0)!=(k|0)){j=27;break a}if((j<<24>>24|0)!=(j|0)){j=27;break a}if(!((j|0)==0&(k|0)==(r|0))){c[w>>2]=1;c[o>>2]=1}i=i+1|0}}while(0);c:do if(q?(l=c[f+32+(e<<4)+(g<<3)>>2]|0,v=e<<1,u=v+16|0,v=v+17|0,c[f+32+(v<<4)+(g<<3)>>2]=l,c[f+32+(u<<4)+(g<<3)>>2]=l,l=c[f+32+(e<<4)+(g<<3)+4>>2]|0,c[f+32+(v<<4)+(g<<3)+4>>2]=l,c[f+32+(u<<4)+(g<<3)+4>>2]=l,c[s>>2]|0):0){i=0;while(1){if((i|0)==2)break c;l=c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]|0;c[f+800+(v<<5)+(g<<4)+(i<<3)>>2]=l;c[f+800+(u<<5)+(g<<4)+(i<<3)>>2]=l;l=c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]|0;c[f+800+(v<<5)+(g<<4)+(i<<3)+4>>2]=l;c[f+800+(u<<5)+(g<<4)+(i<<3)+4>>2]=l;i=i+1|0}}while(0);e=e+1|0}if(m)g=g+1|0;else{j=37;break}}if((j|0)==27){c[b>>2]=r;c[l>>2]=0;j=40}else if((j|0)==37){if(!(c[f>>2]|0))i=(c[w>>2]|0)!=0&1;else i=1;c[f>>2]=i;i=0}if((j|0)==40){bN(h,197052,x);i=-1094995529}Nb=y;return i|0}function Fe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[a+84>>2]=c[b+84>>2];c[a+88>>2]=c[b+88>>2];e=b+92|0;f=c[e+4>>2]|0;g=a+92|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+384>>2]=c[b+384>>2];c[a+388>>2]=c[b+388>>2];c[a+392>>2]=c[b+392>>2];c[a+396>>2]=c[b+396>>2];g=b+104|0;f=c[g+4>>2]|0;e=a+104|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+208>>2]=c[b+208>>2];c[a+212>>2]=c[b+212>>2];c[a+216>>2]=c[b+216>>2];c[a+220>>2]=c[b+220>>2];c[a+232>>2]=c[b+232>>2];c[a+140>>2]=c[b+140>>2];e=b+112|0;f=c[e+4>>2]|0;g=a+112|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+120|0;f=c[g+4>>2]|0;e=a+120|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+328|0;f=c[e+4>>2]|0;g=a+328|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+356>>2]=c[b+356>>2];g=b+336|0;f=c[g+4>>2]|0;e=a+336|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+224|0;f=c[e+4>>2]|0;g=a+224|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+136>>2]=c[b+136>>2];g=b+320|0;f=c[g+4>>2]|0;e=a+320|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+128>>2]=c[b+128>>2];c[a+132>>2]=c[b+132>>2];c[a+296>>2]=c[b+296>>2];c[a+348>>2]=c[b+348>>2];c[a+304>>2]=c[b+304>>2];c[a+308>>2]=c[b+308>>2];c[a+312>>2]=c[b+312>>2];c[a+300>>2]=c[b+300>>2];c[a+316>>2]=c[b+316>>2];wI(a+344|0,c[b+344>>2]|0,0)|0;e=a+144|0;f=b+144|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));k=b+292|0;l=b+288|0;m=b+68|0;n=a+68|0;d=(d|0)==0;h=b+72|0;i=a+72|0;g=0;while(1){if((g|0)>=(c[k>>2]|0)){o=14;break}j=c[(c[l>>2]|0)+(g<<2)>>2]|0;e=c[j>>2]|0;if(!e){if((c[m>>2]|0)==(c[n>>2]|0)?(c[h>>2]|0)==(c[i>>2]|0):0)o=6}else o=6;if((o|0)==6){o=0;if(d){e=sr(a,e,rI(c[j+16>>2]|0)|0)|0;if(!e){o=11;break}}else{f=j+8|0;e=AQ(a,e,c[f>>2]|0)|0;if(!e){o=8;break}Bk(c[e+4>>2]|0,c[j+4>>2]|0,c[f>>2]|0)|0}wI(e+12|0,c[j+12>>2]|0,0)|0}g=g+1|0}do if((o|0)==8){wJ(a);e=-12}else if((o|0)==11){wJ(a);e=-12}else if((o|0)==14){e=a+360|0;c[e>>2]=0;f=a+364|0;c[f>>2]=0;g=a+368|0;c[g>>2]=0;d=a+372|0;nT(d);h=c[b+372>>2]|0;if(h|0?(p=rI(h)|0,c[d>>2]=p,p|0):0){c[e>>2]=c[p+4>>2];c[f>>2]=c[b+364>>2];c[g>>2]=c[b+368>>2]}f=a+380|0;nT(f);e=c[b+380>>2]|0;if(e|0?(b=rI(e)|0,c[f>>2]=b,(b|0)==0):0){e=-12;break}e=0}while(0);return e|0}function Ge(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,I=0,J=0,K=0,L=0,M=0,N=0;l=i>>1;B=h*13|0;j=d;k=0;f=f+(0-(i&-2)<<1)|0;while(1){if((k|0)==13)break;A=e[f>>1]|0;y=e[f+2>>1]|0;z=e[f+-2>>1]|0;x=e[f+4>>1]|0;v=H(x+z|0,-5)|0;w=e[f+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[f+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[f+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[f+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[f+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[f+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[f+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[f+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[f+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;f=f+(l<<1)|0}p=g>>1;q=H(h,-2)|0;r=0-h|0;s=h<<1;t=h*3|0;u=h<<2;v=h*5|0;w=h*6|0;x=h*7|0;y=h<<3;z=h*9|0;A=h*10|0;k=g&-2;l=p*3|0;g=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;j=a;f=d+(B<<2)+((H(h,-11)|0)<<2)|0;i=0;while(1){if((i|0)==8)break;E=c[f+(r<<2)>>2]|0;N=c[f>>2]|0;M=c[f+(h<<2)>>2]|0;L=c[f+(s<<2)>>2]|0;K=c[f+(t<<2)>>2]|0;I=c[f+(u<<2)>>2]|0;F=c[f+(v<<2)>>2]|0;B=c[f+(w<<2)>>2]|0;a=c[f+(x<<2)>>2]|0;C=c[f+(y<<2)>>2]|0;d=c[f+(z<<2)>>2]|0;D=c[f+(A<<2)>>2]|0;J=K+512|0;G=J+(c[f+(q<<2)>>2]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>10;b[j>>1]=G>>>0<16384?G:(G^-2147483648)>>31&16383;G=I+512|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>10;b[j+(p<<1)>>1]=E>>>0<16384?E:(E^-2147483648)>>31&16383;E=F+512|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>10;b[j+(k<<1)>>1]=N>>>0<16384?N:(N^-2147483648)>>31&16383;M=M+512+B+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>10;b[j+(l<<1)>>1]=M>>>0<16384?M:(M^-2147483648)>>31&16383;K=L+512+a+((F+I|0)*20|0)+(H(B+K|0,-5)|0)>>10;b[j+(g<<1)>>1]=K>>>0<16384?K:(K^-2147483648)>>31&16383;I=J+C+((B+F|0)*20|0)+(H(a+I|0,-5)|0)>>10;b[j+(m<<1)>>1]=I>>>0<16384?I:(I^-2147483648)>>31&16383;F=G+d+((a+B|0)*20|0)+(H(C+F|0,-5)|0)>>10;b[j+(n<<1)>>1]=F>>>0<16384?F:(F^-2147483648)>>31&16383;B=E+D+((C+a|0)*20|0)+(H(d+B|0,-5)|0)>>10;b[j+(o<<1)>>1]=B>>>0<16384?B:(B^-2147483648)>>31&16383;j=j+2|0;f=f+4|0;i=i+1|0}return}function He(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,I=0,J=0,K=0,L=0,M=0,N=0;l=i>>1;B=h*13|0;j=d;k=0;f=f+(0-(i&-2)<<1)|0;while(1){if((k|0)==13)break;A=e[f>>1]|0;y=e[f+2>>1]|0;z=e[f+-2>>1]|0;x=e[f+4>>1]|0;v=H(x+z|0,-5)|0;w=e[f+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[f+-4>>1]|0)+v+w;v=H(w+A|0,-5)|0;u=e[f+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=H(u+y|0,-5)|0;z=e[f+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=H(z+x|0,-5)|0;A=e[f+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=H(A+w|0,-5)|0;y=e[f+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=H(y+u|0,-5)|0;x=e[f+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=H(x+z|0,-5)|0;w=e[f+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=H(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[f+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;f=f+(l<<1)|0}p=g>>1;q=H(h,-2)|0;r=0-h|0;s=h<<1;t=h*3|0;u=h<<2;v=h*5|0;w=h*6|0;x=h*7|0;y=h<<3;z=h*9|0;A=h*10|0;k=g&-2;l=p*3|0;g=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;j=a;f=d+(B<<2)+((H(h,-11)|0)<<2)|0;i=0;while(1){if((i|0)==8)break;E=c[f+(r<<2)>>2]|0;N=c[f>>2]|0;M=c[f+(h<<2)>>2]|0;L=c[f+(s<<2)>>2]|0;K=c[f+(t<<2)>>2]|0;I=c[f+(u<<2)>>2]|0;F=c[f+(v<<2)>>2]|0;B=c[f+(w<<2)>>2]|0;a=c[f+(x<<2)>>2]|0;C=c[f+(y<<2)>>2]|0;d=c[f+(z<<2)>>2]|0;D=c[f+(A<<2)>>2]|0;J=K+512|0;G=J+(c[f+(q<<2)>>2]|0)+((M+N|0)*20|0)+(H(L+E|0,-5)|0)>>10;b[j>>1]=G>>>0<4096?G:(G^-2147483648)>>31&4095;G=I+512|0;E=G+E+((L+M|0)*20|0)+(H(K+N|0,-5)|0)>>10;b[j+(p<<1)>>1]=E>>>0<4096?E:(E^-2147483648)>>31&4095;E=F+512|0;N=E+N+((K+L|0)*20|0)+(H(I+M|0,-5)|0)>>10;b[j+(k<<1)>>1]=N>>>0<4096?N:(N^-2147483648)>>31&4095;M=M+512+B+((I+K|0)*20|0)+(H(F+L|0,-5)|0)>>10;b[j+(l<<1)>>1]=M>>>0<4096?M:(M^-2147483648)>>31&4095;K=L+512+a+((F+I|0)*20|0)+(H(B+K|0,-5)|0)>>10;b[j+(g<<1)>>1]=K>>>0<4096?K:(K^-2147483648)>>31&4095;I=J+C+((B+F|0)*20|0)+(H(a+I|0,-5)|0)>>10;b[j+(m<<1)>>1]=I>>>0<4096?I:(I^-2147483648)>>31&4095;F=G+d+((a+B|0)*20|0)+(H(C+F|0,-5)|0)>>10;b[j+(n<<1)>>1]=F>>>0<4096?F:(F^-2147483648)>>31&4095;B=E+D+((C+a|0)*20|0)+(H(d+B|0,-5)|0)>>10;b[j+(o<<1)>>1]=B>>>0<4096?B:(B^-2147483648)>>31&4095;j=j+2|0;f=f+4|0;i=i+1|0}return}function Ie(e,f,g,h,i,j,k){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=Nb;Nb=Nb+16|0;y=A;x=c[g+12>>2]|0;w=c[1080640+(i<<4)+4>>2]|0;a:do if(!k){t=f+8|0;u=f+16|0;s=201279+i|0;q=g+8|0;o=0;p=0;while(1){if((p|0)>=(x|0)){k=0;break a}k=c[t>>2]|0;r=c[u>>2]|0;m=c[f>>2]|0;v=m+(k>>>3)|0;v=(IS(d[v>>0]|d[v+1>>0]<<8|d[v+2>>0]<<16|d[v+3>>0]<<24|0)|0)<<(k&7)>>>23;i=b[w+(v<<2)>>1]|0;v=b[w+(v<<2)+2>>1]|0;n=v<<16>>16;if(v<<16>>16<0){k=k+9|0;k=r>>>0>k>>>0?k:r;v=m+(k>>>3)|0;v=((IS(d[v>>0]|d[v+1>>0]<<8|d[v+2>>0]<<16|d[v+3>>0]<<24|0)|0)<<(k&7)>>>(n+32|0))+i|0;i=b[w+(v<<2)>>1]|0;v=b[w+(v<<2)+2>>1]|0;l=v<<16>>16;if(v<<16>>16<0){k=k-n|0;k=r>>>0>k>>>0?k:r;v=m+(k>>>3)|0;i=((IS(d[v>>0]|d[v+1>>0]<<8|d[v+2>>0]<<16|d[v+3>>0]<<24|0)|0)<<(k&7)>>>(l+32|0))+i|0;l=b[w+(i<<2)+2>>1]|0;i=b[w+(i<<2)>>1]|0}}else l=n;v=l+k|0;c[t>>2]=r>>>0>v>>>0?v:r;o=i-(a[s>>0]|0)+o|0;a[h+(j*34|0)+p>>0]=o;v=a[g+76+(j*34|0)+p>>0]|0;if((((v|0)>-1?v:0-v|0)|0)>(c[q>>2]<<3|7|0)){z=16;break}else p=p+1|0}}else{if(!j)k=c[g+40>>2]|0;else k=j;t=k+-1|0;t=(t|0)>0?t:0;u=f+8|0;v=f+16|0;p=201279+i|0;q=g+8|0;o=0;while(1){if((o|0)>=(x|0)){k=0;break a}r=d[h+(t*34|0)+o>>0]|0;k=c[u>>2]|0;s=c[v>>2]|0;m=c[f>>2]|0;l=m+(k>>>3)|0;l=(IS(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24|0)|0)<<(k&7)>>>23;i=b[w+(l<<2)>>1]|0;l=b[w+(l<<2)+2>>1]|0;n=l<<16>>16;if(l<<16>>16<0){k=k+9|0;k=s>>>0>k>>>0?k:s;B=m+(k>>>3)|0;B=((IS(d[B>>0]|d[B+1>>0]<<8|d[B+2>>0]<<16|d[B+3>>0]<<24|0)|0)<<(k&7)>>>(n+32|0))+i|0;i=b[w+(B<<2)>>1]|0;B=b[w+(B<<2)+2>>1]|0;l=B<<16>>16;if(B<<16>>16<0){k=k-n|0;k=s>>>0>k>>>0?k:s;B=m+(k>>>3)|0;i=((IS(d[B>>0]|d[B+1>>0]<<8|d[B+2>>0]<<16|d[B+3>>0]<<24|0)|0)<<(k&7)>>>(l+32|0))+i|0;l=b[w+(i<<2)+2>>1]|0;i=b[w+(i<<2)>>1]|0}}else l=n;B=l+k|0;c[u>>2]=s>>>0>B>>>0?B:s;a[h+(j*34|0)+o>>0]=i+r-(d[p>>0]|0);B=a[g+76+(j*34|0)+o>>0]|0;if((((B|0)>-1?B:0-B|0)|0)>(c[q>>2]<<3|7|0)){z=16;break}else o=o+1|0}}while(0);if((z|0)==16){mx(e,16,201302,y);k=-1}Nb=A;return k|0}function Je(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+28200>>2]|0;q=c[b+24312>>2]|0;j=c[q>>2]|0;h=j+212|0;c[h>>2]=0;d=j+208|0;c[d>>2]=0;i=(c[i+1160>>2]|0)==0;if(!i?(c[b+29660>>2]|0)!=0:0){g=c[b+29664>>2]|0;a:do switch(g|0){case 8:{c[d>>2]=4;d=0;break}case 2:case 1:{c[h>>2]=1;d=1;break}case 4:case 3:{if((c[b+26360>>2]|0)==0?(c[b+26364>>2]|0)==3:0){d=c[b+29548>>2]|0;c[h>>2]=d;break a}c[h>>2]=1;d=1;break}case 6:case 5:{c[d>>2]=1;d=0;break}case 7:{c[d>>2]=2;d=0;break}default:d=0}while(0);e=c[b+29668>>2]|0;if((e&3|0)!=0?(f=e>>>1&1,g>>>0<5):0)c[h>>2]=f;else f=d}else{if(!(c[b+26360>>2]|0))d=(c[b+26364>>2]|0)!=3;else d=1;f=d&1;c[h>>2]=f}c[b+29548>>2]=f;d=c[q+76>>2]|0;e=c[q+80>>2]|0;b:do if((d|0)==(e|0)){if(!i?c[b+29660>>2]|0:0)switch(c[b+29664>>2]|0){case 5:case 3:{c[j+216>>2]=1;break b}default:{c[j+216>>2]=0;break b}}d=j+216|0;if(!f){c[d>>2]=0;break}else{c[d>>2]=1;break}}else c[j+216>>2]=(d|0)<(e|0)&1;while(0);if(((c[b+29836>>2]|0?(k=b+29848|0,(c[k>>2]|0)>>>0<7):0)?(l=b+29856|0,((c[l>>2]|0)+-1|0)>>>0<2):0)?(m=gy(j)|0,m|0):0){c:do switch(c[k>>2]|0){case 0:{c[m>>2]=4;break}case 1:{c[m>>2]=7;break}case 2:{c[m>>2]=6;break}case 3:if(!(c[b+29860>>2]|0)){c[m>>2]=1;break c}else{c[m>>2]=5;break c}case 4:{c[m>>2]=2;break}case 5:{c[m>>2]=3;break}case 6:{c[m>>2]=0;break}default:{}}while(0);if((c[l>>2]|0)==2)c[m+4>>2]=1}do if(c[b+29864>>2]|0){d=c[b+29868>>2]|0;if(((d|0)==0?(c[b+29872>>2]|0)==0:0)?(c[b+29876>>2]|0)==0:0)break;e=AQ(c[q>>2]|0,6,36)|0;if(e|0){m=e+4|0;cx(c[m>>2]|0,+(d*360|0)*.0000152587890625);Cv(c[m>>2]|0,c[b+29872>>2]|0,c[b+29876>>2]|0)}}while(0);d=b+29680|0;if(c[d>>2]|0?(n=AQ(c[q>>2]|0,7,1)|0,n|0):0){a[c[n+4>>2]>>0]=a[b+29684>>0]|0;c[d>>2]=0}d=b+29692|0;if(c[d>>2]|0){e=b+29688|0;f=AQ(c[q>>2]|0,1,c[e>>2]|0)|0;if(f|0)Bk(c[f+4>>2]|0,c[d>>2]|0,c[e>>2]|0)|0;zM(d);c[e>>2]=0;n=(c[b+4>>2]|0)+964|0;c[n>>2]=c[n>>2]|2}if((c[b+29896>>2]|0?(o=b+29900|0,yQ(c[o>>2]|0)|0):0)?(p=c[o>>2]|0,(p|0)!=2):0){c[(c[q>>2]|0)+308>>2]=p;c[(c[b+4>>2]|0)+392>>2]=p}return}function Ke(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=8-g|0;l=8-h|0;o=H(l,m)|0;l=H(l,g)|0;m=H(m,h)|0;k=H(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;m=((e[a>>1]|0)+1+(((H(o,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[a>>1]=m;m=a+2|0;l=((e[m>>1]|0)+1+(((H(o,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[m>>1]=l;m=a+4|0;l=((e[m>>1]|0)+1+(((H(o,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[m>>1]=l;m=a+6|0;l=((e[m>>1]|0)+1+(((H(o,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[m>>1]=l;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=(m|0)==0?1:n;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=H(o,e[c>>1]|0)|0;m=((e[a>>1]|0)+1+((m+32+(H(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=m;m=a+2|0;l=H(o,e[c+2>>1]|0)|0;l=((e[m>>1]|0)+1+((l+32+(H(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[m>>1]=l;m=a+4|0;l=H(o,e[c+4>>1]|0)|0;l=((e[m>>1]|0)+1+((l+32+(H(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[m>>1]=l;m=a+6|0;l=H(o,e[c+6>>1]|0)|0;l=((e[m>>1]|0)+1+((l+32+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[m>>1]=l;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=H(o,e[c>>1]|0)|0;r=c+2|0;v=H(l,e[r>>1]|0)|0;p=c+(n<<1)|0;q=H(m,e[p>>1]|0)|0;t=c+(h<<1)|0;q=((e[a>>1]|0)+1+((u+32+v+q+(H(k,e[t>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=q;q=a+2|0;r=H(o,e[r>>1]|0)|0;v=c+4|0;u=H(l,e[v>>1]|0)|0;t=H(m,e[t>>1]|0)|0;s=c+(d<<1)|0;t=((e[q>>1]|0)+1+((r+32+u+t+(H(k,e[s>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=t;q=a+4|0;v=H(o,e[v>>1]|0)|0;t=c+6|0;u=H(l,e[t>>1]|0)|0;s=H(m,e[s>>1]|0)|0;r=c+(i<<1)|0;s=((e[q>>1]|0)+1+((v+32+u+s+(H(k,e[r>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=s;q=a+6|0;t=H(o,e[t>>1]|0)|0;s=H(l,e[c+8>>1]|0)|0;r=H(m,e[r>>1]|0)|0;r=((e[q>>1]|0)+1+((t+32+s+r+(H(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=r;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function Le(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (L(n|0),f)|0}else{if(!g){n=0;f=0;return (L(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (L(n|0),f)|0}}g=(i|0)==0;do if(h){if(!g){g=(J(i|0)|0)-(J(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!f){n=0;f=0;return (L(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (L(n|0),f)|0}g=h-1|0;if(g&h|0){i=(J(h|0)|0)+33-(J(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (L(o|0),p)|0}else{p=WT(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (L(o|0),p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (L(o|0),p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (L(o|0),p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((WT(i|0)|0)>>>0);return (L(o|0),p)|0}g=(J(i|0)|0)-(J(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (L(o|0),p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (L(o|0),p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=kP(m|0,l|0,-1,-1)|0;d=M()|0;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;iP(k|0,d|0,e|0,n|0)|0;p=M()|0;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=iP(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=M()|0;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (L(o|0),p)|0}function Me(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Nb;Nb=Nb+144|0;r=x+128|0;m=x+112|0;l=x+96|0;k=x+88|0;j=x+80|0;h=x;s=c[d>>2]|0;w=d+24|0;t=c[w>>2]|0;u=d+28|0;q=c[u>>2]|0;o=(t|0)!=0;p=(o^1)&1;c[f>>2]=0;v=b+12|0;i=c[v>>2]|0;a:do if(c[i+84>>2]|0){n=b+64|0;if(c[(c[n>>2]|0)+52>>2]|0?c[b+808>>2]&1|0:0){g=th(b,d,e,f)|0;break}if((c[b+92>>2]&512|0)!=0?(g=c[b+660>>2]|0,(g|0)!=0):0){a[g>>0]=0;g=c[v>>2]|0}else g=i;i=(e|0)!=0;if(!(i|(c[g+16>>2]&32|0)!=0)){AP(d);Zw(d);c[u>>2]=0;g=0;break}g=b+992|0;if(!(un(c[b+124>>2]|0,c[b+128>>2]|0,c[g>>2]|0,c[g+4>>2]|0,-1,0,b)|0)){do if(i){if((c[e+80>>2]|0)==-1)mx(b,24,168666,j);if(c[e+68>>2]|0?c[e+72>>2]|0:0)break;mx(b,24,168693,k)}while(0);g=c[(c[v>>2]|0)+84>>2]|0;if(!g){c[l>>2]=168598;c[l+4>>2]=168205;c[l+8>>2]=305;mx(0,0,214689,l);ba()}g=_b[g&7](b,d,e,f)|0;if((g|0)>=1){c[m>>2]=168729;c[m+4>>2]=168205;c[m+8>>2]=308;mx(0,0,214689,m);ba()}i=c[w>>2]|0;do if((i|0)!=0?(i|0)==(c[(c[n>>2]|0)+44>>2]|0):0)if(!o){if(c[d>>2]|0){h=0;break}i=h;j=i+72|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));g=kq(h,d)|0;AP(d);if((g|0)<0)break a;else{i=d;j=i+72|0;do{c[i>>2]=c[h>>2];i=i+4|0;h=h+4|0}while((i|0)<(j|0));h=0;break}}else{h=c[u>>2]|0;if((q|0)<(h|0)){c[r>>2]=h;mx(b,16,168620,r);c[u>>2]=q;g=-1}else Bk(t|0,i|0,h|0)|0;c[d>>2]=s;c[w>>2]=t;h=0;break}else h=p;while(0);if(!g){if(c[f>>2]|0){if(!(c[(c[v>>2]|0)+16>>2]&32)){e=e+104|0;t=c[e>>2]|0;e=c[e+4>>2]|0;v=d+16|0;c[v>>2]=t;c[v+4>>2]=e;v=d+8|0;c[v>>2]=t;c[v+4>>2]=e}}else c[u>>2]=0;if((h|0)!=0?(c[w>>2]|0)!=0:0){g=Wl(d,(c[u>>2]|0)+32|0)|0;if((g|0)>-1)c[w>>2]=c[(c[d>>2]|0)+4>>2]}else g=0;b=b+432|0;c[b>>2]=(c[b>>2]|0)+1}if((g|0)>=0?c[f>>2]|0:0)break;AP(d)}else g=-22}else{mx(b,16,168303,x+72|0);g=-38}while(0);Nb=x;return g|0}function Ne(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=Nb;Nb=Nb+48|0;k=v+32|0;j=v+24|0;s=v+20|0;t=v+16|0;l=v+8|0;m=v;c[s>>2]=f;c[t>>2]=g;o=c[a>>2]|0;h=o+1640|0;if((c[h>>2]|0)==0?(c[h>>2]=1,i=c[b+104>>2]|0,i|0):0)Di(c[b+100>>2]|0,i,o+40|0,o+1632|0,o+1636|0,c[b+688>>2]|0,b)|0;i=a+176|0;do if(!(c[i>>2]&1)){g=yf(o,f,g,b)|0;if((Wg(o,g,s,t)|0)<0){c[d>>2]=0;c[e>>2]=0;g=c[t>>2]|0;break}if((g|0)<0&(g|0)!=-100){yf(o,(c[o>>2]|0)+((c[o+8>>2]|0)+g)|0,0-g|0,b)|0;u=9}else u=9}else u=9;while(0);if((u|0)==9){Uc(a,b,c[s>>2]|0,c[t>>2]|0);h=b+880|0;if(c[h>>2]|0){c[m>>2]=c[b+116>>2];c[m+4>>2]=1;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];cv(l,j,k);n=c[l>>2]|0;p=b+108|0;c[p>>2]=c[l+4>>2];c[p+4>>2]=n}h=c[o+1404>>2]|0;if((h|0)>-1){p=c[o+1432>>2]|0;k=h;n=c[o+1400>>2]|0}else{p=-2147483648;k=-2147483648;n=-2147483648}c[a+240>>2]=p;c[a+244>>2]=k;c[a+248>>2]=n;h=c[i>>2]|0;if(h&2|0)c[i>>2]=h&1;if((p|0)>-1?(q=c[b+112>>2]|0,r=c[b+892>>2]|0,q=oK(r|0,((r|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0,r=M()|0,(r|0)>0|(r|0)==0&q>>>0>0):0){l=c[b+108>>2]|0;m=c[b+896>>2]|0;l=oK(m|0,((m|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0;m=M()|0;j=a+48|0;h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;if((i|0)==0&(h|0)==-2147483648){f=o+1664|0;i=f;h=c[i>>2]|0;i=c[i+4>>2]|0;if((h|0)==0&(i|0)==-2147483648){i=0;h=-2147483648}else{u=HN(k,((k|0)<0)<<31>>31,l,m,q,r)|0;i=kP(u|0,M()|0,h|0,i|0)|0;h=M()|0;u=j;c[u>>2]=i;c[u+4>>2]=h;u=21}}else{k=HN(k,((k|0)<0)<<31>>31,l,m,q,r)|0;k=iP(i|0,h|0,k|0,M()|0)|0;b=M()|0;f=o+1664|0;o=f;c[o>>2]=k;c[o+4>>2]=b;if(!((k|0)==0&(b|0)==-2147483648))u=21}if((u|0)==21){j=a+40|0;u=j;if((c[u>>2]|0)==0?(c[u+4>>2]|0)==-2147483648:0){q=HN(n,((n|0)<0)<<31>>31,l,m,q,r)|0;q=kP(q|0,M()|0,i|0,h|0)|0;r=M()|0;u=j;c[u>>2]=q;c[u+4>>2]=r}}if((p|0)>0){u=f;c[u>>2]=i;c[u+4>>2]=h}}c[d>>2]=c[s>>2];c[e>>2]=c[t>>2]}Nb=v;return g|0}function Oe(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=f>>1;if(!c){c=e[a+-2>>1]|0;d=c}else{d=e[a+-2>>1]|0;c=e[a+(~g<<1)>>1]|0}t=e[a+(g+-1<<1)>>1]|0;i=t+2|0;u=(i+c+(d<<1)|0)>>>2;m=f&-2;s=e[a+(m+-1<<1)>>1]|0;q=s+2|0;t=(q+d+(t<<1)|0)>>>2;k=g*3|0;o=e[a+(k+-1<<1)>>1]|0;s=(i+(s<<1)+o|0)>>>2;i=g<<2;n=e[a+(i+-1<<1)>>1]|0;q=(q+(o<<1)+n|0)>>>2;h=g*5|0;l=e[a+(h+-1<<1)>>1]|0;o=(o+2+(n<<1)+l|0)>>>2;d=g*6|0;p=e[a+(d+-1<<1)>>1]|0;n=(n+2+(l<<1)+p|0)>>>2;c=g*7|0;j=e[a+(c+-1<<1)>>1]|0;l=(l+2+(p<<1)+j|0)>>>2;j=(p+2+(j*3|0)|0)>>>2;p=t+1|0;b[a>>1]=(p+u|0)>>>1;r=s+2|0;b[a+2>>1]=(r+u+(t<<1)|0)>>>2;p=(p+s|0)>>>1&65535;b[a+4>>1]=p;b[a+(g<<1)>>1]=p;p=q+2|0;t=(p+t+(s<<1)|0)>>>2&65535;b[a+6>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+1+q|0)>>>1&65535;b[a+8>>1]=s;b[a+(g+2<<1)>>1]=s;b[a+(m<<1)>>1]=s;r=(r+(q<<1)+o|0)>>>2&65535;b[a+10>>1]=r;b[a+(g+3<<1)>>1]=r;b[a+((f|1)<<1)>>1]=r;f=(q+1+o|0)>>>1&65535;b[a+12>>1]=f;b[a+(g+4<<1)>>1]=f;b[a+(m+2<<1)>>1]=f;b[a+(k<<1)>>1]=f;f=(p+(o<<1)+n|0)>>>2&65535;b[a+14>>1]=f;b[a+(g+5<<1)>>1]=f;b[a+(m+3<<1)>>1]=f;b[a+(k+1<<1)>>1]=f;f=(o+1+n|0)>>>1&65535;b[a+(g+6<<1)>>1]=f;b[a+(m+4<<1)>>1]=f;b[a+(k+2<<1)>>1]=f;b[a+(i<<1)>>1]=f;f=(o+2+(n<<1)+l|0)>>>2&65535;b[a+(g+7<<1)>>1]=f;b[a+(m+5<<1)>>1]=f;b[a+(k+3<<1)>>1]=f;b[a+((i|1)<<1)>>1]=f;f=(n+1+l|0)>>>1&65535;b[a+(m+6<<1)>>1]=f;b[a+(k+4<<1)>>1]=f;b[a+((i|2)<<1)>>1]=f;b[a+(h<<1)>>1]=f;f=(n+2+j+(l<<1)|0)>>>2&65535;b[a+(m+7<<1)>>1]=f;b[a+(k+5<<1)>>1]=f;b[a+((i|3)<<1)>>1]=f;b[a+(h+1<<1)>>1]=f;f=(l+1+j|0)>>>1&65535;b[a+(k+6<<1)>>1]=f;b[a+(i+4<<1)>>1]=f;b[a+(h+2<<1)>>1]=f;b[a+(d<<1)>>1]=f;f=(l+2+(j*3|0)|0)>>>2&65535;b[a+(k+7<<1)>>1]=f;b[a+(i+5<<1)>>1]=f;b[a+(h+3<<1)>>1]=f;b[a+((d|1)<<1)>>1]=f;f=j&65535;b[a+(c+7<<1)>>1]=f;b[a+(d+7<<1)>>1]=f;b[a+(h+7<<1)>>1]=f;b[a+(i+7<<1)>>1]=f;b[a+(c+6<<1)>>1]=f;b[a+(d+6<<1)>>1]=f;b[a+(h+6<<1)>>1]=f;b[a+(i+6<<1)>>1]=f;b[a+(c+5<<1)>>1]=f;b[a+(d+5<<1)>>1]=f;b[a+(h+5<<1)>>1]=f;b[a+(c+4<<1)>>1]=f;b[a+(d+4<<1)>>1]=f;b[a+(h+4<<1)>>1]=f;b[a+(c+3<<1)>>1]=f;b[a+(d+3<<1)>>1]=f;b[a+(c+2<<1)>>1]=f;b[a+(d+2<<1)>>1]=f;b[a+(c+1<<1)>>1]=f;b[a+(c<<1)>>1]=f;return}function Pe(e,f,g,h,i,j,k){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=Nb;Nb=Nb+16|0;x=z;w=c[g+28>>2]|0;v=c[1080640+(i<<4)+4>>2]|0;a:do if(!k){s=f+8|0;t=f+16|0;q=201279+i|0;o=0;p=0;while(1){if((p|0)>=(w|0)){k=0;break a}k=c[s>>2]|0;r=c[t>>2]|0;n=c[f>>2]|0;u=n+(k>>>3)|0;u=(IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(k&7)>>>23;i=b[v+(u<<2)>>1]|0;u=b[v+(u<<2)+2>>1]|0;m=u<<16>>16;if(u<<16>>16<0){k=k+9|0;k=r>>>0>k>>>0?k:r;u=n+(k>>>3)|0;u=((IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(k&7)>>>(m+32|0))+i|0;i=b[v+(u<<2)>>1]|0;u=b[v+(u<<2)+2>>1]|0;l=u<<16>>16;if(u<<16>>16<0){k=k-m|0;k=r>>>0>k>>>0?k:r;u=n+(k>>>3)|0;i=((IS(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24|0)|0)<<(k&7)>>>(l+32|0))+i|0;l=b[v+(i<<2)+2>>1]|0;i=b[v+(i<<2)>>1]|0}}else l=m;u=l+k|0;c[s>>2]=r>>>0>u>>>0?u:r;o=i-(a[q>>0]|0)+o|0;a[h+(j*34|0)+p>>0]=o;if((d[g+246+(j*34|0)+p>>0]|0)>7){y=16;break}else p=p+1|0}}else{if(!j)k=c[g+40>>2]|0;else k=j;s=k+-1|0;s=(s|0)>0?s:0;t=f+8|0;u=f+16|0;p=201279+i|0;o=0;while(1){if((o|0)>=(w|0)){k=0;break a}q=d[h+(s*34|0)+o>>0]|0;k=c[t>>2]|0;r=c[u>>2]|0;m=c[f>>2]|0;l=m+(k>>>3)|0;l=(IS(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24|0)|0)<<(k&7)>>>23;i=b[v+(l<<2)>>1]|0;l=b[v+(l<<2)+2>>1]|0;n=l<<16>>16;if(l<<16>>16<0){k=k+9|0;k=r>>>0>k>>>0?k:r;A=m+(k>>>3)|0;A=((IS(d[A>>0]|d[A+1>>0]<<8|d[A+2>>0]<<16|d[A+3>>0]<<24|0)|0)<<(k&7)>>>(n+32|0))+i|0;i=b[v+(A<<2)>>1]|0;A=b[v+(A<<2)+2>>1]|0;l=A<<16>>16;if(A<<16>>16<0){k=k-n|0;k=r>>>0>k>>>0?k:r;A=m+(k>>>3)|0;i=((IS(d[A>>0]|d[A+1>>0]<<8|d[A+2>>0]<<16|d[A+3>>0]<<24|0)|0)<<(k&7)>>>(l+32|0))+i|0;l=b[v+(i<<2)+2>>1]|0;i=b[v+(i<<2)>>1]|0}}else l=n;A=l+k|0;c[t>>2]=r>>>0>A>>>0?A:r;a[h+(j*34|0)+o>>0]=i+q-(d[p>>0]|0);if((d[g+246+(j*34|0)+o>>0]|0)<8)o=o+1|0;else{y=16;break}}}while(0);if((y|0)==16){mx(e,16,201289,x);k=-1}Nb=z;return k|0}function Qe(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=8-g|0;m=8-h|0;o=H(m,n)|0;m=H(m,g)|0;n=H(n,h)|0;h=H(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;n=((d[b>>0]|0)+1+(((H(o,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[b>>0]=n;n=b+1|0;m=((d[n>>0]|0)+1+(((H(o,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[n>>0]=m;n=b+2|0;m=((d[n>>0]|0)+1+(((H(o,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[n>>0]=m;n=b+3|0;m=((d[n>>0]|0)+1+(((H(o,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[n>>0]=m;b=b+e|0;g=g+1|0;c=c+e|0}}else{h=(n|0)==0?1:e;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=H(o,d[c>>0]|0)|0;n=((d[b>>0]|0)+1+((n+32+(H(l,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=n;n=b+1|0;m=H(o,d[c+1>>0]|0)|0;m=((d[n>>0]|0)+1+((m+32+(H(l,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[n>>0]=m;n=b+2|0;m=H(o,d[c+2>>0]|0)|0;m=((d[n>>0]|0)+1+((m+32+(H(l,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[n>>0]=m;n=b+3|0;m=H(o,d[c+3>>0]|0)|0;m=((d[n>>0]|0)+1+((m+32+(H(l,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[n>>0]=m;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=H(o,d[c>>0]|0)|0;r=c+1|0;v=H(m,d[r>>0]|0)|0;p=c+e|0;q=H(n,d[p>>0]|0)|0;t=c+i|0;q=((d[b>>0]|0)+1+((u+32+v+q+(H(h,d[t>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=q;q=b+1|0;r=H(o,d[r>>0]|0)|0;v=c+2|0;u=H(m,d[v>>0]|0)|0;t=H(n,d[t>>0]|0)|0;s=c+j|0;t=((d[q>>0]|0)+1+((r+32+u+t+(H(h,d[s>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[q>>0]=t;q=b+2|0;v=H(o,d[v>>0]|0)|0;t=c+3|0;u=H(m,d[t>>0]|0)|0;s=H(n,d[s>>0]|0)|0;r=c+k|0;s=((d[q>>0]|0)+1+((v+32+u+s+(H(h,d[r>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[q>>0]=s;q=b+3|0;t=H(o,d[t>>0]|0)|0;s=H(m,d[c+4>>0]|0)|0;r=H(n,d[r>>0]|0)|0;r=((d[q>>0]|0)+1+((t+32+s+r+(H(h,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[q>>0]=r;b=b+e|0;g=g+1|0;c=p}}while(0);return}function Re(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,k=0,l=0,m=0,n=0;do if(!((d|0)<0|((f|0)<0|(f|0)==0&e>>>0<1))?(j=g&-8193,!(j>>>0>5|(j|0)==4)):0){if(g&8192){j=kP(a|0,b|0,1,-2147483648)|0;i=M()|0;if(i>>>0<0|(i|0)==0&j>>>0<2)break;g=g+-8192|0}if((b|0)<0){j=(b|0)>-2147483648|(b|0)==-2147483648&a>>>0>1;j=iP(0,0,(j?a:1)|0,(j?b:-2147483648)|0)|0;f=Re(j,M()|0,c,d,e,f,g>>>1&1^g)|0;f=iP(0,0,f|0,M()|0)|0;L(M()|0);return f|0}if((g|0)==5){g=GN(e|0,f|0,1)|0;h=M()|0}else{j=(g&1|0)==0;g=kP(e|0,f|0,-1,-1)|0;h=M()|0;g=j?0:g;h=j?0:h}if(!(((d|0)<0|(d|0)==0&c>>>0<2147483648)&((f|0)<0|(f|0)==0&e>>>0<2147483648))){j=oK(d|0,0,a|0,0)|0;k=M()|0;i=oK(c|0,0,b|0,0)|0;i=kP(j|0,k|0,i|0,M()|0)|0;k=M()|0;c=oK(c|0,0,a|0,0)|0;c=kP(0,i|0,c|0,M()|0)|0;j=M()|0;a=oK(d|0,0,b|0,0)|0;a=kP(k|0,0,a|0,M()|0)|0;a=kP(a|0,M()|0,(j>>>0<i>>>0|(j|0)==(i|0)&c>>>0<0)&1|0,0)|0;b=M()|0;j=kP(g|0,h|0,c|0,j|0)|0;c=M()|0;b=kP(a|0,b|0,(c>>>0<h>>>0|(c|0)==(h|0)&j>>>0<g>>>0)&1|0,0)|0;a=63;g=M()|0;h=k;while(1){if((a|0)<=-1)break;l=GN(j|0,c|0,a|0)|0;M()|0;n=uN(b|0,g|0,1)|0;m=M()|0;n=l&1|n;l=uN(i|0,h|0,1)|0;k=M()|0;d=m>>>0<f>>>0|(m|0)==(f|0)&n>>>0<e>>>0;m=iP(n|0,m|0,(d?0:e)|0,(d?0:f)|0)|0;a=a+-1|0;b=m;g=M()|0;i=l|(d^1)&1;h=k}a=(h|0)<0;b=a?-2147483648:h;a=a?0:i;break}if((b|0)<0|(b|0)==0&a>>>0<2147483648){a=oK(c|0,d|0,a|0,b|0)|0;a=kP(g|0,h|0,a|0,M()|0)|0;a=Eu(a|0,M()|0,e|0,f|0)|0;b=M()|0;break}i=uS(a|0,b|0,e|0,f|0)|0;j=M()|0;n=oK(i|0,j|0,e|0,f|0)|0;a=iP(a|0,b|0,n|0,M()|0)|0;a=oK(a|0,M()|0,c|0,d|0)|0;a=kP(a|0,M()|0,g|0,h|0)|0;a=Eu(a|0,M()|0,e|0,f|0)|0;b=M()|0;if(((c|0)!=0|(d|0)!=0)&((j|0)>0|(j|0)==0&i>>>0>2147483646)?(n=iP(-1,2147483647,a|0,b|0)|0,n=Eu(n|0,M()|0,c|0,d|0)|0,m=M()|0,(j|0)>(m|0)|(j|0)==(m|0)&i>>>0>n>>>0):0){b=-2147483648;a=0;break}n=oK(i|0,j|0,c|0,d|0)|0;a=kP(a|0,b|0,n|0,M()|0)|0;b=M()|0}else{b=-2147483648;a=0}while(0);L(b|0);return a|0}function Se(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+16|0;q=s;d=a+800|0;b=c[d>>2]|0;e=c[a+12>>2]|0;if(!b){b=fM()|0;if((c[a+680>>2]&24576|0)==0?(c[a+684>>2]|0)==0:0){p=b+1|0;b=(b|0)>1?((p|0)<16?p:16):1}else b=1;c[d>>2]=b;o=b}else o=b;a:do if((o|0)>=2){p=rR(156)|0;b=a+64|0;c[(c[b>>2]|0)+20>>2]=p;if(!p)b=-12;else{n=LQ(o)|0;c[p>>2]=n;if(!n){zM((c[b>>2]|0)+20|0);b=-12;break}RU(p+8|0,0)|0;RU(p+36|0,0)|0;RU(p+64|0,0)|0;xb(p+92|0,0)|0;c[p+140>>2]=1;c[p+152>>2]=1;l=e+76|0;m=e+52|0;j=e+60|0;n=0;d=a;while(1){if((n|0)>=(o|0)){b=0;break a}k=Ax(1016)|0;c[q>>2]=k;k=c[p>>2]|0;h=k+(n*352|0)|0;RU(k+(n*352|0)+156|0,0)|0;RU(k+(n*352|0)+184|0,0)|0;xb(k+(n*352|0)+12|0,0)|0;xb(k+(n*352|0)+60|0,0)|0;xb(k+(n*352|0)+108|0,0)|0;i=BP()|0;c[k+(n*352|0)+288>>2]=i;if(!i){r=14;break}c[h>>2]=p;b=c[q>>2]|0;c[k+(n*352|0)+212>>2]=b;i=b;if(!b){b=-12;r=26;break}Bk(b|0,d|0,1016)|0;e=Ax(116)|0;g=i+64|0;c[g>>2]=e;if(!e){r=17;break}b=c[d+64>>2]|0;f=e+116|0;do{c[e>>2]=c[b>>2];e=e+4|0;b=b+4|0}while((e|0)<(f|0));f=c[g>>2]|0;c[f+20>>2]=h;c[f+40>>2]=k+(n*352|0)+216;if(n){b=Ax(c[m>>2]|0)|0;c[i+60>>2]=b;if(!b){b=-12;r=26;break}Bk(b|0,c[d+60>>2]|0,c[m>>2]|0)|0;c[c[g>>2]>>2]=1;b=c[j>>2]|0;if(b){b=Wb[b&31](i)|0;r=25}}else{b=c[l>>2]|0;if(!b)b=0;else b=Wb[b&31](i)|0;dg(a,i,1)|0;d=i;r=25}if((r|0)==25){r=0;if(b){r=26;break}}c[k+(n*352|0)+344>>2]=(c[i+680>>2]|0)>>>16&1;b=Ab(k+(n*352|0)+4|0,0,26,h|0)|0;i=(b|0)==0;c[k+(n*352|0)+8>>2]=i&1;if(!i){r=29;break}n=n+1|0}if((r|0)==14){zM(q);b=-12;r=26}else if((r|0)==17){c[b+60>>2]=0;b=-12;r=26}else if((r|0)==29)b=0-b|0;Hg(a,n+1|0)}}else{c[a+808>>2]=0;b=0}while(0);Nb=s;return b|0}function Te(){var b=0.0,c=0,d=0,e=0,g=0.0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.0;c=0;while(1){if((c|0)==8)break;i=+f[78320+(c<<2)>>2]*.25;j=+f[78352+(c<<2)>>2]*.25;m=c<<6;d=0;while(1){if((d|0)==8)break;b=i+ +f[78320+(d<<2)>>2]*.5;g=j+ +f[78352+(d<<2)>>2]*.5;h=(d<<3)+m|0;e=0;while(1){if((e|0)==8)break;k=b+ +f[78320+(e<<2)>>2];l=g+ +f[78352+(e<<2)>>2];n=1.0/+Nk(l,k);o=h+e|0;f[1092576+(o<<2)>>2]=k*n;f[1094624+(o<<2)>>2]=l*n;e=e+1|0}d=d+1|0}c=c+1|0}c=0;while(1){if((c|0)==46)break;l=+f[78384+(c<<2)>>2];k=l*l;b=1.4142135381698608/+v(+(k+1.0));g=l*b;i=b-g;j=l*2.0;k=k+-1.0;l=l+1.0/l;l=l*l;d=0;while(1){if((d|0)==8)break;n=+f[78576+(d<<2)>>2]*.5;q=i*n*.7071067690849304;p=n+q;r=g*+x(+p);f[1080800+(c<<7)+(d<<4)>>2]=r;n=q-n;q=b*+x(+n);f[1080800+(c<<7)+(d<<4)+4>>2]=q;p=g*+y(+p);f[1080800+(c<<7)+(d<<4)+8>>2]=p;n=b*+y(+n);f[1080800+(c<<7)+(d<<4)+12>>2]=n;if(d>>>0<5)n=+f[78608+(d<<2)>>2];else n=.05000000074505806;q=+D(+(j*n),+k)*.5;n=+v(+((n*(n*4.0)+-4.0)/l+1.0));n=+C(+(+v(+((1.0-n)/(n+1.0)))));q=q<0.0?q+1.5707963267948966:q;p=+y(+q);r=+y(+n);q=+x(+q)*1.4142135623730951;n=+x(+n);f[1086688+(c<<7)+(d<<4)>>2]=q*n;f[1086688+(c<<7)+(d<<4)+4>>2]=p*1.4142135623730951*n;f[1086688+(c<<7)+(d<<4)+8>>2]=p*-1.4142135623730951*r;f[1086688+(c<<7)+(d<<4)+12>>2]=q*r;d=d+1|0}c=c+1|0}c=0;while(1){if((c|0)==30)break;if(c>>>0<10)b=+(a[201409+c>>0]|0)*.125;else b=+(c|0)+-6.5;d=0;while(1){if((d|0)==3)break;r=b*(+f[161976+(d<<2)>>2]*-3.141592653589793);q=+x(+r);f[1097472+(c*24|0)+(d<<3)>>2]=q;r=+y(+r);f[1097472+(c*24|0)+(d<<3)+4>>2]=r;d=d+1|0}r=b*-1.225221089959176;q=+x(+r);f[1096672+(c<<3)>>2]=q;r=+y(+r);f[1096672+(c<<3)+4>>2]=r;c=c+1|0}c=0;while(1){if((c|0)==50)break;if(c>>>0<32)b=+(a[78640+c>>0]|0)/24.0;else b=+(c|0)+-26.5;d=0;while(1){if((d|0)==3)break;r=b*(+f[161976+(d<<2)>>2]*-3.141592653589793);q=+x(+r);f[1098672+(c*24|0)+(d<<3)>>2]=q;r=+y(+r);f[1098672+(c*24|0)+(d<<3)+4>>2]=r;d=d+1|0}r=b*-1.225221089959176;q=+x(+r);f[1097072+(c<<3)>>2]=q;r=+y(+r);f[1097072+(c<<3)+4>>2]=r;c=c+1|0}bv(1101408,78672,8);bv(1099872,78704,12);bv(1100640,78736,8);bv(1101152,78768,4);return}function Ue(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Nb;Nb=Nb+16|0;l=m;k=m+8|0;j=k+4|0;e=0;while(1){e=sC(a,e)|0;if(!e)break;h=a+(c[e+8>>2]|0)|0;i=c[e+40>>2]|0;a:do if((i&b|0)==(d|0)&(i&128|0)==0){f=c[e+12>>2]|0;b:do if((f|0)>=9){if((f|0)<1146442272){if((f|0)<1112493900)switch(f|0){case 128:break a;case 9:{i=5;break b}default:{i=14;break b}}if((f|0)<1128811585)switch(f|0){case 1112493900:{i=5;break b}default:{i=14;break b}}if((f|0)<1129270354)switch(f|0){case 1128811585:{i=5;break b}default:{i=14;break b}}switch(f|0){case 1129270354:break;default:{i=14;break b}}PH(a,c[e+16>>2]|0,h)|0;break a}if((f|0)<1397116244)if((f|0)<1346784596)switch(f|0){case 1146442272:{i=5;break b}default:{i=14;break b}}else switch(f|0){case 1346784596:{i=5;break b}default:{i=14;break b}}if((f|0)<1397316165)switch(f|0){case 1397116244:{i=5;break b}default:{i=14;break b}}if((f|0)<1448231252){switch(f|0){case 1397316165:break;default:{i=14;break b}}tz(a,c[e+16>>2]|0,h)|0;break a}else{switch(f|0){case 1448231252:break;default:{i=14;break b}}HD(a,c[e+16>>2]|0,h)|0;break a}}else switch(f|0){case 8:break a;case 2:case 1:case 0:{i=5;break b}case 4:case 3:{Pd(a,e,h,+g[e+16>>3],1,1,0)|0;break a}case 6:{Pl(k,+g[e+16>>3],2147483647);i=c[k>>2]|0;Pd(a,e,h,1.0,c[j>>2]|0,i,((i|0)<0)<<31>>31)|0;break a}case 5:{nQ(c[e+16>>2]|0,h)|0;break a}case 7:{_p(c[e+16>>2]|0,h)|0;break a}default:{i=14;break b}}while(0);if((i|0)==5){i=e+16|0;Pd(a,e,h,1.0,1,c[i>>2]|0,c[i+4>>2]|0)|0;break}else if((i|0)==14){i=c[e>>2]|0;c[l>>2]=f;c[l+4>>2]=i;mx(a,48,205196,l);break}}while(0)}Nb=m;return}function Ve(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0.0,p=0,q=0.0,r=0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0;g=c<<1;i=c<<2;j=c*6|0;e=b+(g<<2)|0;h=a+(i<<3)|0;q=+f[h>>2];d=a+(i<<3)+4|0;m=+f[d>>2];n=a+(j<<3)|0;v=+f[n>>2];k=a+(j<<3)+4|0;u=+f[k>>2];o=v-q;v=q+v;f[h>>2]=+f[a>>2]-v;f[a>>2]=v+ +f[a>>2];h=a+(g<<3)+4|0;f[k>>2]=+f[h>>2]-o;f[h>>2]=o+ +f[h>>2];o=m-u;u=m+u;h=a+(g<<3)|0;f[n>>2]=+f[h>>2]-o;f[h>>2]=o+ +f[h>>2];h=a+4|0;f[d>>2]=+f[h>>2]-u;f[h>>2]=u+ +f[h>>2];h=i|1;d=a+(h<<3)|0;u=+f[d>>2];o=+f[b+4>>2];n=a+(h<<3)+4|0;m=+f[n>>2];v=+f[e+-4>>2];q=-v;t=u*o-m*q;q=o*m+u*q;k=j|1;p=a+(k<<3)|0;u=+f[p>>2];r=a+(k<<3)+4|0;m=+f[r>>2];s=o*u-v*m;m=v*u+o*m;o=s-t;s=t+s;l=a+8|0;f[d>>2]=+f[l>>2]-s;f[l>>2]=+f[l>>2]+s;l=g|1;d=a+(l<<3)+4|0;f[r>>2]=+f[d>>2]-o;f[d>>2]=o+ +f[d>>2];o=q-m;m=q+m;d=a+(l<<3)|0;f[p>>2]=+f[d>>2]-o;f[d>>2]=o+ +f[d>>2];d=a+12|0;f[n>>2]=+f[d>>2]-m;f[d>>2]=m+ +f[d>>2];d=a;a=c+-1|0;do{r=d;d=d+16|0;p=b;b=b+8|0;c=e;e=e+-8|0;w=d+(i<<3)|0;q=+f[w>>2];u=+f[b>>2];x=w+4|0;o=+f[x>>2];s=+f[e>>2];v=-s;t=q*u-o*v;v=u*o+q*v;n=d+(j<<3)|0;q=+f[n>>2];z=n+4|0;o=+f[z>>2];m=u*q-s*o;o=s*q+u*o;u=m-t;m=t+m;f[w>>2]=+f[d>>2]-m;f[d>>2]=+f[d>>2]+m;w=d+(g<<3)|0;y=w+4|0;f[z>>2]=+f[y>>2]-u;f[y>>2]=u+ +f[y>>2];u=v-o;o=v+o;f[n>>2]=+f[w>>2]-u;f[w>>2]=u+ +f[w>>2];w=r+20|0;f[x>>2]=+f[w>>2]-o;f[w>>2]=o+ +f[w>>2];w=d+(h<<3)|0;o=+f[w>>2];u=+f[p+12>>2];p=w+4|0;v=+f[p>>2];m=+f[c+-12>>2];t=-m;q=o*u-v*t;t=u*v+o*t;c=d+(k<<3)|0;o=+f[c>>2];x=c+4|0;v=+f[x>>2];s=u*o-m*v;v=m*o+u*v;u=s-q;s=q+s;n=r+24|0;f[w>>2]=+f[n>>2]-s;f[n>>2]=+f[n>>2]+s;n=d+(l<<3)|0;w=n+4|0;f[x>>2]=+f[w>>2]-u;f[w>>2]=u+ +f[w>>2];u=t-v;v=t+v;f[c>>2]=+f[n>>2]-u;f[n>>2]=u+ +f[n>>2];r=r+28|0;f[p>>2]=+f[r>>2]-v;f[r>>2]=v+ +f[r>>2];a=a+-1|0}while((a|0)!=0);return}function We(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[284264]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;ud(k,d);return a|0}if((c[284150]|0)==(i|0)){k=(c[284147]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[284150]=e;c[284147]=d;return a|0}if((c[284149]|0)==(i|0)){e=(c[284146]|0)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[284146]=d;c[284149]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0<b>>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[284144]=c[284144]&~(1<<f);break}else{c[e+12>>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){e=i+16|0;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){f=0;break}}else e=f;while(1){g=d+20|0;f=c[g>>2]|0;if(!f){g=d+16|0;f=c[g>>2]|0;if(!f)break;else{d=f;e=g}}else{d=f;e=g}}c[e>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=1136880+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[284145]=c[284145]&~(1<<d);break}}else{g=h+16|0;c[((c[g>>2]|0)==(i|0)?g:h+20|0)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=m&1|j|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;ud(i,k);return a|0}return 0}function Xe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Nb;Nb=Nb+16|0;q=u;i=(f|0)!=0;j=i?0:262144;p=e+56|0;c[p>>2]=0;f=0;while(1){if((f+1|0)>=(d|0))break;if(!(a[b+f>>0]|0)){g=f+-1|0;if((f|0)>0)g=(a[b+g>>0]|0)==0?g:f;else g=f;f=g+2|0;if(((f|0)<(d|0)?(a[b+(g+1)>>0]|0)==0:0)?(h=a[b+f>>0]|0,(h&255)<4):0){r=11;break}}else f=f+2|0}a:do if((r|0)==11){switch(h<<24>>24){case 0:case 3:{f=g;break a}default:{}}d=g;f=g}while(0);b:do if(!(i&(f|0)>=(d+-1|0))){g=(f|0)>(d|0)?d:f;_E(e,e+4|0,d+j|0);o=c[e>>2]|0;if(!o)d=-12;else{Bk(o|0,b|0,g|0)|0;m=e+64|0;n=e+60|0;f=g;while(1){h=g+2|0;if((h|0)>=(d|0)){r=18;break}j=b+h|0;i=a[j>>0]|0;if((i&255)<=3){h=a[b+g>>0]|0;if(!(h<<24>>24))if(!(i<<24>>24==0?1:(a[b+(g+1)>>0]|0)!=0)){if(i<<24>>24!=3){t=f;s=g;break}l=f+1|0;a[o+f>>0]=0;f=f+2|0;a[o+l>>0]=0;g=g+3|0;h=c[m>>2]|0;if(h){k=c[p>>2]|0;i=k+1|0;c[p>>2]=i;j=c[n>>2]|0;if((j|0)<=(k|0)){h=j<<1;c[n>>2]=h;if((h|0)<=(k|0)){r=27;break}JD(m,h,4)|0;h=c[m>>2]|0;if(!h){r=30;break}i=c[p>>2]|0}c[h+(i+-1<<2)>>2]=l}}else{h=0;r=33}else r=33}else{a[o+f>>0]=a[b+g>>0]|0;a[o+(f+1)>>0]=a[b+(g+1)>>0]|0;f=f+2|0;g=h;h=a[j>>0]|0;r=33}if((r|0)==33){r=0;a[o+f>>0]=h;f=f+1|0;g=g+1|0}}c:do if((r|0)==18)while(1){if((g|0)>=(d|0)){t=f;s=g;break c}a[o+f>>0]=a[b+g>>0]|0;f=f+1|0;g=g+1|0}else if((r|0)==27){c[q>>2]=195901;c[q+4>>2]=195951;c[q+8>>2]=118;mx(0,0,214689,q);ba()}else if((r|0)==30){c[n>>2]=0;d=-12;break b}while(0);d=o+t|0;f=d+32|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(f|0));c[e+12>>2]=o;c[e+8>>2]=t;c[e+24>>2]=b;c[e+20>>2]=s;d=s}}else{c[e+24>>2]=b;c[e+12>>2]=b;c[e+20>>2]=d;c[e+8>>2]=d}while(0);Nb=u;return d|0}function Ye(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}m=f>>1;f=f&-2;h=m*3|0;i=m<<2;j=m*5|0;k=m*6|0;l=m*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:(p^-2147483648)>>31&16383;y=a+(g+m<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:(p^-2147483648)>>31&16383;y=a+(g+f<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:(p^-2147483648)>>31&16383;y=a+(g+h<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:(p^-2147483648)>>31&16383;y=a+(g+i<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<16384?r:(r^-2147483648)>>31&16383;y=a+(g+j<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<16384?t:(t^-2147483648)>>31&16383;y=a+(g+k<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<16384?v:(v^-2147483648)>>31&16383;y=a+(g+l<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<16384?x:(x^-2147483648)>>31&16383;g=g+1|0}jq(d|0,0,256)|0;return}function Ze(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}m=f>>1;f=f&-2;h=m*3|0;i=m<<2;j=m*5|0;k=m*6|0;l=m*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:(p^-2147483648)>>31&4095;y=a+(g+m<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:(p^-2147483648)>>31&4095;y=a+(g+f<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:(p^-2147483648)>>31&4095;y=a+(g+h<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:(p^-2147483648)>>31&4095;y=a+(g+i<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<4096?r:(r^-2147483648)>>31&4095;y=a+(g+j<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<4096?t:(t^-2147483648)>>31&4095;y=a+(g+k<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<4096?v:(v^-2147483648)>>31&4095;y=a+(g+l<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<4096?x:(x^-2147483648)>>31&4095;g=g+1|0}jq(d|0,0,256)|0;return}function _e(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}m=f>>1;f=f&-2;h=m*3|0;i=m<<2;j=m*5|0;k=m*6|0;l=m*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:(p^-2147483648)>>31&1023;y=a+(g+m<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:(p^-2147483648)>>31&1023;y=a+(g+f<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:(p^-2147483648)>>31&1023;y=a+(g+h<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:(p^-2147483648)>>31&1023;y=a+(g+i<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<1024?r:(r^-2147483648)>>31&1023;y=a+(g+j<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<1024?t:(t^-2147483648)>>31&1023;y=a+(g+k<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<1024?v:(v^-2147483648)>>31&1023;y=a+(g+l<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<1024?x:(x^-2147483648)>>31&1023;g=g+1|0}jq(d|0,0,256)|0;return}function $e(b,d,e,g){b=b|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0;v=Nb;Nb=Nb+8704|0;n=v+4352|0;t=v;u=(g|0)==0?77312:77216;jq(n|0,0,4352)|0;if((c[b+760>>2]|0)!=(g|0)){jq(b+80560|0,0,136)|0;jq(b+80704|0,0,136)|0;jq(b+2528|0,0,78024)|0}s=c[161928+(g<<2)>>2]|0;i=b+134036|0;h=0;while(1){if((h|0)>=(s|0))break;hc[c[i>>2]&1023](n+(a[u+h>>0]<<7)|0,e+(h<<8)|0,32);h=h+1|0}j=c[161944+(g<<2)>>2]|0;h=0;while(1){if((h|0)>=(j|0))break;k=b+80416+(h<<2)|0;l=b+80560+(h<<2)|0;m=b+80704+(h<<2)|0;i=0;while(1){if((i|0)==32)break;x=+f[k>>2]*.765928328037262;w=+f[n+(h<<7)+(i<<2)>>2];x=x>w?x:w;f[k>>2]=x;o=+f[l>>2];o=o+(w-o)*.25;f[l>>2]=o;p=+f[m>>2];p=p+(x-w-p)*.25;f[m>>2]=p;p=p*1.5;f[t+(h<<7)+(i<<2)>>2]=p>o?o/p:1.0;i=i+1|0}h=h+1|0}j=c[161936+(g<<2)>>2]|0;k=161960+(g<<2)|0;l=b+134056|0;h=0;while(1){if((h|0)>=(j|0))break;m=a[u+h>>0]|0;p=1.0-+(h-(c[k>>2]|0)|0)*.05000000074505806;o=p>1.0?1.0:p;n=b+2528+(h*368|0)|0;q=b+2528+(h*368|0)+256|0;r=n+112|0;do{c[n>>2]=c[q>>2];n=n+4|0;q=q+4|0}while((n|0)<(r|0));Bk(b+2528+(h*368|0)+112|0,e+(h<<8)|0,256)|0;i=0;while(1){if((i|0)==3)break;n=b+36016+(h*888|0)+(i*296|0)|0;q=b+36016+(h*888|0)+(i*296|0)+256|0;r=n+40|0;do{c[n>>2]=c[q>>2];n=n+4|0;q=q+4|0}while((n|0)<(r|0));i=i+1|0}mc[c[l>>2]&1](d+(h<<8)|0,b+2528+(h*368|0)+96|0,b+36016+(h*888|0)|0,1096672+(g*400|0)+(h<<3)|0,1097472+(g*1200|0)+(h*24|0)|0,t+(m<<24>>24<<7)|0,p<0.0?0.0:o,32);h=h+1|0}k=c[161968+(g<<2)>>2]|0;l=b+134040|0;while(1){if((h|0)>=(k|0))break;i=a[u+h>>0]|0;j=b+2528+(h*368|0)|0;n=j;q=b+2528+(h*368|0)+256|0;r=n+112|0;do{c[n>>2]=c[q>>2];n=n+4|0;q=q+4|0}while((n|0)<(r|0));Bk(b+2528+(h*368|0)+112|0,e+(h<<8)|0,256)|0;ic[c[l>>2]&255](d+(h<<8)|0,j,t+(i<<7)|0,32);h=h+1|0}while(1){if((h|0)>=(s|0))break;i=a[u+h>>0]|0;n=b+2528+(h*368|0)|0;q=b+2528+(h*368|0)+256|0;r=n+112|0;do{c[n>>2]=c[q>>2];n=n+4|0;q=q+4|0}while((n|0)<(r|0));Bk(b+2528+(h*368|0)+112|0,e+(h<<8)|0,256)|0;ic[c[l>>2]&255](d+(h<<8)|0,b+2528+(h*368|0)+104|0,t+(i<<7)|0,32);h=h+1|0}Nb=v;return}function af(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}m=f>>1;f=f&-2;h=m*3|0;i=m<<2;j=m*5|0;k=m*6|0;l=m*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:(p^-2147483648)>>31&511;y=a+(g+m<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:(p^-2147483648)>>31&511;y=a+(g+f<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:(p^-2147483648)>>31&511;y=a+(g+h<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:(p^-2147483648)>>31&511;y=a+(g+i<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<512?r:(r^-2147483648)>>31&511;y=a+(g+j<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<512?t:(t^-2147483648)>>31&511;y=a+(g+k<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<512?v:(v^-2147483648)>>31&511;y=a+(g+l<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<512?x:(x^-2147483648)>>31&511;g=g+1|0}jq(d|0,0,256)|0;return}function bf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=Nb;Nb=Nb+96|0;r=v+80|0;q=v+72|0;p=v+64|0;o=v+56|0;l=v+48|0;i=v+40|0;g=v+32|0;f=v+24|0;e=v+16|0;d=v+8|0;s=a+27e3|0;h=c[s>>2]|0;t=a+26992|0;n=H((c[t>>2]|0)+1|0,h)|0;b=c[a+25632>>2]|0;h=H((b|0)>1?b:1,h<<1)|0;b=YO(h,8)|0;c[a+25716>>2]=b;a:do if(!b){mx(c[a+4>>2]|0,16,172029,v);u=30}else{j=a+25628|0;c[(c[j>>2]|0)+21704>>2]=b;k=rR(n*48|0)|0;c[a+25956>>2]=k;m=(n|0)==0;if(!(m|(k|0)!=0)){mx(c[a+4>>2]|0,16,172029,d);u=30;break}d=rR((c[s>>2]|0)+n<<1)|0;k=a+28204|0;c[k>>2]=d;if((d|0)==0?(c[s>>2]|0)+n&2147483647|0:0){mx(c[a+4>>2]|0,16,172029,e);u=30;break}d=n<<1;e=rR(d)|0;c[a+26376>>2]=e;if(!((d|0)==0|(e|0)!=0)){mx(c[a+4>>2]|0,16,172029,f);u=30;break}f=rR(n)|0;c[a+26380>>2]=f;if(!(m|(f|0)!=0)){mx(c[a+4>>2]|0,16,172029,g);u=30;break}g=YO(h,16)|0;d=a+26384|0;c[d>>2]=g;if(!g){mx(c[a+4>>2]|0,16,172029,i);u=30;break}i=YO(h,16)|0;b=a+26388|0;c[b>>2]=i;if(!i){mx(c[a+4>>2]|0,16,172029,l);u=30;break}c[(c[j>>2]|0)+32848>>2]=c[d>>2];c[(c[j>>2]|0)+32852>>2]=c[b>>2];b=n<<2;l=rR(b)|0;c[a+26392>>2]=l;d=(b|0)==0;if(!(d|(l|0)!=0)){mx(c[a+4>>2]|0,16,172029,o);u=30;break}o=rR(n)|0;c[a+26372>>2]=o;if(!(m|(o|0)!=0)){mx(c[a+4>>2]|0,16,172029,p);u=30;break}jq(c[k>>2]|0,-1,(c[s>>2]|0)+n<<1|0)|0;c[a+26356>>2]=(c[k>>2]|0)+(c[s>>2]<<1<<1)+2;p=rR(b)|0;h=a+26344|0;c[h>>2]=p;if(!(d|(p|0)!=0)){mx(c[a+4>>2]|0,16,172029,q);u=30;break}g=rR(b)|0;c[a+26348>>2]=g;if(!(d|(g|0)!=0)){mx(c[a+4>>2]|0,16,172029,r);u=30;break}f=a+26996|0;e=a+26352|0;d=0;while(1){if((d|0)>=(c[t>>2]|0)){b=0;break a}b=0;while(1){if((b|0)>=(c[f>>2]|0))break;a=(H(c[s>>2]|0,d)|0)+b|0;r=(H(c[e>>2]|0,d)|0)+b<<2;c[(c[h>>2]|0)+(a<<2)>>2]=r;c[g+(a<<2)>>2]=((a|0)%(c[s>>2]<<1|0)|0)<<3;b=b+1|0}d=d+1|0}}while(0);if((u|0)==30){so(a);b=-12}Nb=v;return b|0}function cf(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==8)break;x=f+(h<<1)|0;p=b[x>>1]|0;n=f+(h+32<<1)|0;m=b[n>>1]|0;k=m+p|0;m=p-m|0;p=f+(h+16<<1)|0;l=b[p>>1]|0;q=f+(h+48<<1)|0;w=b[q>>1]|0;o=(l>>1)-w|0;l=(w>>1)+l|0;w=l+k|0;s=o+m|0;o=m-o|0;l=k-l|0;k=f+(h+24<<1)|0;m=b[k>>1]|0;j=f+(h+40<<1)|0;i=b[j>>1]|0;u=f+(h+56<<1)|0;r=b[u>>1]|0;v=i-m-r-(r>>1)|0;t=f+(h+8<<1)|0;y=b[t>>1]|0;z=r-((m>>1)+m)+y|0;r=r+i+(i>>1)-y|0;y=i+m+y+(y>>1)|0;m=(y>>2)+v|0;i=(r>>2)+z|0;r=(z>>2)-r|0;v=y-(v>>2)|0;b[x>>1]=v+w;b[u>>1]=w-v;b[t>>1]=r+s;b[q>>1]=s-r;b[p>>1]=i+o;b[j>>1]=o-i;b[k>>1]=m+l;b[n>>1]=l-m;h=h+1|0}i=g<<1;j=g*3|0;k=g<<2;l=g*5|0;m=g*6|0;n=g*7|0;h=0;while(1){if((h|0)==8)break;z=h<<3;r=b[f+(z<<1)>>1]|0;u=b[f+((z|4)<<1)>>1]|0;s=u+r|0;u=r-u|0;r=b[f+((z|2)<<1)>>1]|0;x=b[f+((z|6)<<1)>>1]|0;t=(r>>1)-x|0;r=(x>>1)+r|0;x=r+s|0;v=t+u|0;t=u-t|0;r=s-r|0;s=b[f+((z|3)<<1)>>1]|0;u=b[f+((z|5)<<1)>>1]|0;w=b[f+((z|7)<<1)>>1]|0;y=u-s-w-(w>>1)|0;z=b[f+((z|1)<<1)>>1]|0;q=w-((s>>1)+s)+z|0;w=w+u+(u>>1)-z|0;z=u+s+z+(z>>1)|0;s=(z>>2)+y|0;u=(w>>2)+q|0;w=(q>>2)-w|0;y=z-(y>>2)|0;z=c+h|0;q=(y+x>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+g)|0;q=(w+v>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+i)|0;q=(u+t>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+j)|0;q=(s+r>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+k)|0;s=(r-s>>6)+(d[z>>0]|0)|0;a[z>>0]=s>>>0>255?(s^-2147483648)>>31:s;z=c+(h+l)|0;u=(t-u>>6)+(d[z>>0]|0)|0;a[z>>0]=u>>>0>255?(u^-2147483648)>>31:u;z=c+(h+m)|0;w=(v-w>>6)+(d[z>>0]|0)|0;a[z>>0]=w>>>0>255?(w^-2147483648)>>31:w;z=c+(h+n)|0;y=(x-y>>6)+(d[z>>0]|0)|0;a[z>>0]=y>>>0>255?(y^-2147483648)>>31:y;h=h+1|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function df(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=Nb;Nb=Nb+32|0;A=D+16|0;j=D+8|0;i=D;C=(c[a+6500>>2]|0)<(c[b>>2]|0)&1;g=(d|0)==1;x=g?2:1;h=c[b+12>>2]|0;if((h|0)!=(d|0)){z=c[a+4>>2]|0;c[i>>2]=d;c[i+4>>2]=h;mx(z,(d|0)==3?40:24,191086,i);UK(b)}w=b+4|0;if(c[w>>2]|0?(c[b+8>>2]|0)==0:0){mx(c[a+4>>2]|0,16,191118,j);UK(b)}h=b+88|0;if(!(c[h>>2]|0)){c[b+72>>2]=c[b+76>>2];c[b+80>>2]=c[b+84>>2]}else c[h>>2]=0;if(c[w>>2]|0){Dd(b,d);c[b+8>>2]=0}y=a+5404|0;j=b+390816|0;z=b+390952|0;d=b+389536|0;k=b+391008|0;l=b+310464|0;m=b+391016|0;n=b+391020|0;o=b+380096|0;p=b+380608|0;q=b+52|0;r=b+320704|0;s=b+384144|0;t=b+391012|0;i=0;while(1){if(i>>>0>=x>>>0)break;u=b+96+(i*87968|0)|0;h=b+96+(i*87968|0)+14592|0;v=b+96+(i*87968|0)+30976|0;rs(c[y>>2]|0,j,z,(i|0)==0?e:f,b+96+(i*87968|0)+9312|0,d,h,c[v>>2]|0);$b[c[k>>2]&63](a,b,l,h,c[v>>2]|0)|0;c[v>>2]=c[v>>2]^1;if(c[w>>2]|0){kc[c[n>>2]&127](z,o,p,l,c[q>>2]|0);Kv(b,u);h=c[b+96+(i*87968|0)+8>>2]|0;if(!h){B=15;break}Qk(a,b,r,l,o,p,b+96+(i*87968|0)+14572|0,b+96+(i*87968|0)+87932|0,h);h=b+96+(i*87968|0)+14564|0;if(!(Af(a,b,u,h)|0)){Gh(s,r,b,u);sf(b,u,h);kc[c[t>>2]&127](b+96+(i*87968|0)+30992+((c[v>>2]|0)*19456|0)|0,r,b,u,h)}}v=c[v>>2]|0;ac[c[m>>2]&7](b,b+341184+(i*19456|0)|0,b+96+(i*87968|0)+30992+((1-v|0)*19456|0)|0,b+96+(i*87968|0)+30992+(v*19456|0)|0,l,i)|0;i=i+1|0}if((B|0)==15){c[A>>2]=191159;c[A+4>>2]=190438;c[A+8>>2]=1511;mx(0,0,214689,A);ba()}do if((c[a+6512>>2]|0)==1){g=b+176032|0;if(!(c[g>>2]|0)){h=b+341184|0;Bk(b+360640|0,h|0,19456)|0;g=1;break}else{h=b+341184|0;Nt(c[a+4>>2]|0,g,h,b+360640|0,(c[b+84>>2]|0)+(c[b+76>>2]|0)|0)|0;g=1;break}}else h=b+341184|0;while(0);i=b+390884|0;j=b+389536|0;eg(i,z,c[y>>2]|0,e,h,j,b+192|0,b+14656|0,C);if(g)eg(i,z,c[y>>2]|0,f,b+360640|0,j,b+88160|0,b+102624|0,C);Nb=D;return}function ef(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:(a^-2147483648)>>31&16383;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:(m^-2147483648)>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ff(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=Nb;Nb=Nb+32|0;k=l+24|0;i=l+16|0;h=l+8|0;f=l;do if(NL(a)|0){e=Yz(a,8)|0;if((e|0)==255){g=Yz(a,16)|0;c[d+100>>2]=g;g=Yz(a,16)|0;c[d+104>>2]=g;g=8;break}if(e>>>0<17){e=18480+(e<<3)|0;f=c[e+4>>2]|0;g=d+100|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=8;break}else{mx(b,16,170091,f);e=-1094995529;break}}else{c[d+104>>2]=0;c[d+100>>2]=0;g=8}while(0);do if((g|0)==8){if(NL(a)|0)NL(a)|0;g=NL(a)|0;c[d+108>>2]=g;if(g|0?(Yz(a,3)|0,g=NL(a)|0,c[d+112>>2]=g,g=NL(a)|0,c[d+116>>2]=g,g|0):0){m=Yz(a,8)|0;e=d+120|0;c[e>>2]=m;m=Yz(a,8)|0;f=d+124|0;c[f>>2]=m;m=Yz(a,8)|0;g=d+128|0;c[g>>2]=m;if(!(tQ(c[e>>2]|0)|0))c[e>>2]=2;if(!(yQ(c[f>>2]|0)|0))c[f>>2]=2;if(!(MQ(c[g>>2]|0)|0))c[g>>2]=2}if(NL(a)|0){m=(qp(a)|0)+1|0;c[b+404>>2]=m;qp(a)|0}if(gV(a)|0?(NS(a)|0)<10:0){mx(b,24,170113,h);e=0;break}m=NL(a)|0;e=d+132|0;c[e>>2]=m;if(m|0){f=hH(a,32)|0;g=hH(a,32)|0;if((f|0)!=0&(g|0)!=0){c[d+136>>2]=f;c[d+140>>2]=g}else{c[i>>2]=g;c[i+4>>2]=f;mx(b,16,170128,i);c[e>>2]=0}m=NL(a)|0;c[d+144>>2]=m}m=NL(a)|0;e=d+1152|0;c[e>>2]=m;if(m|0?(Tq(a,b,d)|0)<0:0){e=-1094995529;break}m=NL(a)|0;f=d+1156|0;c[f>>2]=m;if(m|0?(Tq(a,b,d)|0)<0:0){e=-1094995529;break}if(!((c[e>>2]|0)==0?!(c[f>>2]|0):0))NL(a)|0;m=NL(a)|0;c[d+1160>>2]=m;if((NS(a)|0)!=0?(m=NL(a)|0,j=d+660|0,c[j>>2]=m,(m|0)!=0):0){NL(a)|0;qp(a)|0;qp(a)|0;qp(a)|0;qp(a)|0;m=qp(a)|0;f=d+664|0;c[f>>2]=m;qp(a)|0;if((NS(a)|0)<0){c[f>>2]=0;c[j>>2]=0;e=0;break}e=c[f>>2]|0;if(e>>>0>16){c[k>>2]=e;mx(b,16,170189,k);c[f>>2]=16;e=-1094995529}else e=0}else e=0}while(0);Nb=l;return e|0}function gf(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=Nb;Nb=Nb+32|0;w=y+24|0;v=y+16|0;u=y+8|0;t=y;s=y+28|0;r=(g|0)!=0;p=b+4|0;c[p>>2]=0;q=b+8|0;o=(i|0)==174;i=d;g=e;m=r?d:d+e|0;a:while(1){k=m+-3|0;l=m;d=g;while(1){if((d|0)<=3){g=0;break a}if((i|0)==(m|0)){x=5;break}if(i>>>0>m>>>0)mx(f,24,195976,t);g=d;while(1){d=i+1|0;if(((a[i>>0]|0)==0?(a[d>>0]|0)==0:0)?(a[i+2>>0]|0)==1:0)break;e=g+-1|0;if((g|0)<5){x=13;break a}if(d>>>0<k>>>0){i=d;g=e}else{i=d;g=e;break}}i=i+3|0;d=g+-3|0;g=l-i|0;if(i>>>0<m>>>0){x=17;break}i=m;d=d-g|0}if((x|0)==5){x=0;c[s>>2]=0;g=Yt(h,m,d,s,f)|0;i=m+h|0;if((g|0)<0)break;else{e=g;n=i+g|0;m=d-h|0}}else if((x|0)==17){x=0;e=(d|0)>(g|0)?g:d;n=m;m=d}g=c[q>>2]|0;d=c[p>>2]|0;if((g|0)<=(d|0)){g=g+1|0;d=mN(c[b>>2]|0,g,72)|0;if(!d){g=-12;break}c[b>>2]=d;k=c[q>>2]|0;jq(d+(k*72|0)|0,0,(g-k|0)*72|0)|0;d=c[b>>2]|0;k=c[p>>2]|0;c[d+(k*72|0)+60>>2]=1024;l=sV()|0;c[d+(k*72|0)+64>>2]=l;if(!l){g=-12;break}c[q>>2]=g;d=c[p>>2]|0}l=c[b>>2]|0;k=l+(d*72|0)|0;g=Xe(i,e,k,j)|0;if((g|0)<0)break;if(r?(e|0)!=0&(e|0)!=(g|0):0){c[v>>2]=g;c[v+4>>2]=e;mx(f,48,196044,v)}c[p>>2]=(c[p>>2]|0)+1;if((((g|0)<(m+-3|0)?(a[i+g>>0]|0)==0:0)?(a[i+(g+1)>>0]|0)==0:0)?(a[i+(g+2)>>0]|0)==1:0)e=(a[i+(g+3)>>0]|0)!=-32&1;else e=1;e=Es(k,e)|0;c[l+(d*72|0)+16>>2]=e;e=YH(l+(d*72|0)+28|0,c[l+(d*72|0)+12>>2]|0,e)|0;if((e|0)<0){g=e;break}if(o)e=hu(k,f)|0;else e=Ww(k,f)|0;if((e|0)<1)if((e|0)<0){c[w>>2]=c[l+(d*72|0)+48>>2];mx(f,16,196089,w);x=39}else x=39;else if((c[l+(d*72|0)+8>>2]|0)<1)x=39;if((x|0)==39){x=0;c[p>>2]=(c[p>>2]|0)+-1}i=i+g|0;g=m-g|0;m=n}if((x|0)==13)if((c[p>>2]|0)>0)g=0;else{mx(f,16,196019,u);g=-1094995529}Nb=y;return g|0}function hf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=Nb;Nb=Nb+48|0;j=n+40|0;k=n+32|0;h=n+24|0;g=n+16|0;d=n+8|0;e=c[a+28200>>2]|0;l=a+4|0;i=c[l>>2]|0;f=e+100|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];wt(i,j)|0;jL(c[(c[l>>2]|0)+144>>2]|0,a+25664|0,a+25668|0)|0;if(c[e+132>>2]|0){i=uN(c[e+140>>2]|0,0,(c[a+29696>>2]|0)>>>0<44|0)|0;j=M()|0;f=c[l>>2]|0;Mf(f+884|0,f+880|0,H(c[f+116>>2]|0,c[e+136>>2]|0)|0,0,i,j,1073741824,0)|0}so(a);c[a+26368>>2]=0;c[a+29548>>2]=1;jg(a);b=bf(a)|0;f=c[l>>2]|0;a:do if((b|0)<0){mx(f,16,198843,n);m=20}else{j=c[f+12>>2]|0;do if(j|0?c[j+16>>2]&128|0:0){if((c[e+1184>>2]|0)==8?(c[e+12>>2]|0)<=1:0)break;mx(f,16,198870,d);b=-1094995529;m=20;break a}while(0);b=e+1184|0;d=c[b>>2]|0;b:do if((d+-8|0)>>>0<=6){switch(d|0){case 11:case 13:break b;default:{}}c[f+788>>2]=d;c[a+29580>>2]=d;j=e+12|0;i=c[j>>2]|0;c[a+29576>>2]=i;c[a+25652>>2]=(d|0)>8&1;c[a+27032>>2]=i;c[a+27028>>2]=d;Td(a+16|0,d,i);iE(a+152|0,c[e+1188>>2]|0);Vc(a+184|0,c[b>>2]|0);Bc(a+25720|0,c[(c[l>>2]|0)+48>>2]|0,c[b>>2]|0,c[j>>2]|0);hS(a+8|0,c[b>>2]|0);if(!(c[(c[l>>2]|0)+808>>2]&2)){b=Wf(a,c[a+25628>>2]|0)|0;if((b|0)>=0){b=0;d=1;break a}mx(c[l>>2]|0,16,198947,h);m=20;break a}e=a+25632|0;f=a+25628|0;g=a+25716|0;h=a+27e3|0;i=a+26384|0;j=a+26388|0;d=0;while(1){if((d|0)>=(c[e>>2]|0)){b=0;d=1;break a}o=c[f>>2]|0;b=o+(d*34768|0)|0;c[b>>2]=a;p=H(c[h>>2]|0,d<<4)|0;c[o+(d*34768|0)+21704>>2]=(c[g>>2]|0)+p;c[o+(d*34768|0)+32848>>2]=(c[i>>2]|0)+(p<<1);c[o+(d*34768|0)+32852>>2]=(c[j>>2]|0)+(p<<1);b=Wf(a,b)|0;if((b|0)<0)break;else d=d+1|0}mx(c[l>>2]|0,16,198947,k);m=20;break a}while(0);c[g>>2]=d;mx(f,16,198921,g);b=-1094995529;m=20}while(0);if((m|0)==20){so(a);d=0}c[a+25680>>2]=d;Nb=n;return b|0}function jf(a,b){a=+a;b=+b;var d=0,e=0,f=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g[h>>3]=a;j=c[h>>2]|0;l=c[h+4>>2]|0;g[h>>3]=b;n=c[h>>2]|0;o=c[h+4>>2]|0;e=GN(j|0,l|0,52)|0;M()|0;e=e&2047;m=GN(n|0,o|0,52)|0;M()|0;m=m&2047;p=l&-2147483648;i=uN(n|0,o|0,1)|0;k=M()|0;a:do if(!((i|0)==0&(k|0)==0)?(f=mP(b)|0,d=(M()|0)&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=uN(j|0,l|0,1)|0;f=M()|0;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>i>>>0))return +((d|0)==(i|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=uN(j|0,l|0,12)|0;f=M()|0;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=uN(d|0,f|0,1)|0;f=M()|0}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;j=uN(j|0,l|0,1-e|0)|0;i=M()|0}else i=l&1048575|1048576;if(!m){f=uN(n|0,o|0,12)|0;k=M()|0;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=uN(f|0,k|0,1)|0;k=M()|0}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=uN(n|0,o|0,1-d|0)|0;m=d;l=M()|0}else l=o&1048575|1048576;f=iP(j|0,i|0,n|0,l|0)|0;d=M()|0;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=j;d=i}j=uN(f|0,d|0,1)|0;i=M()|0;e=e+-1|0;f=iP(j|0,i|0,n|0,l|0)|0;d=M()|0;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=i;f=j}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=uN(f|0,d|0,1)|0;d=M()|0;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=kP(f|0,d|0,0,-1048576)|0;d=M()|0;e=uN(e|0,0,52)|0;d=d|(M()|0);e=o|e}else{e=GN(f|0,d|0,1-e|0)|0;d=M()|0}c[h>>2]=e;c[h+4>>2]=d|p;b=+g[h>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function kf(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:(a^-2147483648)>>31&4095;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:(m^-2147483648)>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function lf(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<<g;g=g+1|0;d=a;j=0;while(1){if((j|0)>=(f|0))break;m=H(e[c>>1]|0,i)|0;m=m+k+(H(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;m=H(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;a=H(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(H(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:(a^-2147483648)>>31&1023;m=H(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(H(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:(m^-2147483648)>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}
|
|
function Ec(e,h,i){e=e|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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;Q=Nb;Nb=Nb+288|0;J=Q+264|0;K=Q;L=Q+260|0;N=Q+272|0;if((c[e+76>>2]|0)>-1)P=NV(e)|0;else P=0;j=a[h>>0]|0;a:do if(j<<24>>24){B=e+4|0;C=e+104|0;D=e+120|0;E=e+8|0;F=K+10|0;G=K+33|0;H=K+46|0;I=K+94|0;A=J+4|0;m=h;h=0;k=0;l=j;j=0;u=0;v=0;b:while(1){c:do if(!(hU(l&255)|0)){n=(a[m>>0]|0)==37;d:do if(n){l=m+1|0;o=a[l>>0]|0;e:do switch(o<<24>>24){case 37:break d;case 42:{z=0;l=m+2|0;break}default:{if(UU(o&255)|0?(a[m+2>>0]|0)==36:0){z=kE(i,(d[l>>0]|0)+-48|0)|0;l=m+3|0;break e}y=(c[i>>2]|0)+(4-1)&~(4-1);z=c[y>>2]|0;c[i>>2]=y+4}}while(0);if(!(UU(d[l>>0]|0)|0)){r=0;o=l}else{m=0;do{m=(m*10|0)+-48+(d[l>>0]|0)|0;l=l+1|0}while((UU(d[l>>0]|0)|0)!=0);r=m;o=l}n=a[o>>0]|0;q=o+1|0;if(n<<24>>24==109){l=(z|0)!=0&1;k=0;m=q;o=o+2|0;n=a[q>>0]|0;j=0}else{l=0;m=o;o=q}switch(n<<24>>24){case 104:{y=(a[o>>0]|0)==104;n=y?-2:-1;m=y?m+2|0:o;break}case 108:{y=(a[o>>0]|0)==108;n=y?3:1;m=y?m+2|0:o;break}case 106:{n=3;m=o;break}case 116:case 122:{n=1;m=o;break}case 76:{n=2;m=o;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:{O=143;break b}}s=d[m>>0]|0;t=(s&47|0)==3;s=t?s|32:s;t=t?1:n;q=s&255;switch(q<<24>>24){case 99:{y=(r|0)>1?r:1;break}case 91:{y=r;break}case 110:{Zv(z,t,u,v);n=u;o=v;break c}default:{sw(e,0,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=ol(e)|0}while((hU(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}x=D;y=n-(c[E>>2]|0)|0;u=kP(c[x>>2]|0,c[x+4>>2]|0,u|0,v|0)|0;u=kP(u|0,M()|0,y|0,((y|0)<0)<<31>>31|0)|0;y=r;v=M()|0}}x=((y|0)<0)<<31>>31;sw(e,y,x);o=c[B>>2]|0;n=c[C>>2]|0;if(o>>>0<n>>>0)c[B>>2]=o+1;else{if((ol(e)|0)<0){O=143;break b}n=c[C>>2]|0}if(n|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(q<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){jq(K|0,-1,257)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;b[F>>1]=0;b[F+2>>1]=0;a[F+4>>0]=0}}else{s=m+1|0;r=(a[s>>0]|0)==94;n=r&1;m=r?m+2|0:s;jq(K|0,n|0,257)|0;a[K>>0]=0;switch(a[m>>0]|0){case 45:{q=(n^1)&255;a[H>>0]=q;m=m+1|0;break}case 93:{q=(n^1)&255;a[I>>0]=q;m=m+1|0;break}default:q=(n^1)&255}while(1){n=a[m>>0]|0;h:do switch(n<<24>>24){case 0:{O=143;break b}case 93:break g;case 45:{o=m+1|0;n=a[o>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){m=m&255;do{m=m+1|0;a[K+m>>0]=q;n=a[o>>0]|0}while(m>>>0<(n&255)>>>0);m=o}else m=o;break}default:{}}while(0);a[K+((n&255)+1)>>0]=q;m=m+1|0}}while(0);n=w?y+1|0:31;s=(t|0)==1;t=(l|0)!=0;i:do if(s){if(t){j=xc(n<<2)|0;if(!j){k=0;j=0;O=143;break b}}else j=z;c[J>>2]=0;c[A>>2]=0;k=0;j:while(1){q=(j|0)==0;do{k:while(1){o=c[B>>2]|0;if(o>>>0<(c[C>>2]|0)>>>0){c[B>>2]=o+1;o=d[o>>0]|0}else o=ol(e)|0;if(!(a[K+(o+1)>>0]|0))break j;a[N>>0]=o;switch(xj(L,N,1,J)|0){case -1:{k=0;O=143;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(t&(k|0)==(n|0)));n=n<<1|1;o=hv(j,n<<2)|0;if(!o){k=0;O=143;break b}else j=o}if(!(zS(J)|0)){k=0;O=143;break b}else{q=k;k=0;r=j}}else{if(t){k=xc(n)|0;if(!k){k=0;j=0;O=143;break b}j=0;while(1){q=j;do{j=c[B>>2]|0;if(j>>>0<(c[C>>2]|0)>>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=ol(e)|0;if(!(a[K+(j+1)>>0]|0)){r=0;j=0;break i}r=q;q=q+1|0;a[k+r>>0]=j}while((q|0)!=(n|0));n=n<<1|1;o=hv(k,n)|0;if(!o){j=0;O=143;break b}else{j=q;k=o}}}if(!z)while(1){j=c[B>>2]|0;if(j>>>0<(c[C>>2]|0)>>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=ol(e)|0;if(!(a[K+(j+1)>>0]|0)){q=0;k=0;r=0;j=0;break i}}k=0;while(1){j=c[B>>2]|0;if(j>>>0<(c[C>>2]|0)>>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=ol(e)|0;if(!(a[K+(j+1)>>0]|0)){q=k;k=z;r=0;j=0;break i}a[z+k>>0]=j;k=k+1|0}}while(0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}o=D;n=n-(c[E>>2]|0)|0;n=kP(c[o>>2]|0,c[o+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;o=M()|0;if((n|0)==0&(o|0)==0)break b;if(!((n|0)==(y|0)&(o|0)==(x|0)|w^1))break b;do if(t)if(s){c[z>>2]=r;break}else{c[z>>2]=k;break}while(0);if(!w){if(r|0)c[r+(q<<2)>>2]=0;if(!k){k=0;break f}a[k+q>>0]=0}break}case 120:case 88:case 112:{n=16;O=131;break}case 111:{n=8;O=131;break}case 117:case 100:{n=10;O=131;break}case 105:{n=0;O=131;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{p=+Ud(e,t,0);y=D;w=c[y>>2]|0;y=c[y+4>>2]|0;x=(c[B>>2]|0)-(c[E>>2]|0)|0;x=iP(0,0,x|0,((x|0)<0)<<31>>31|0)|0;if((w|0)==(x|0)&(y|0)==(M()|0))break b;if(z)switch(t|0){case 0:{f[z>>2]=p;break f}case 1:{g[z>>3]=p;break f}case 2:{g[z>>3]=p;break f}default:break f}break}default:{}}while(0);do if((O|0)==131){O=0;n=id(e,n,0,-1,-1)|0;o=M()|0;y=D;w=c[y>>2]|0;y=c[y+4>>2]|0;x=(c[B>>2]|0)-(c[E>>2]|0)|0;x=iP(0,0,x|0,((x|0)<0)<<31>>31|0)|0;if((w|0)==(x|0)&(y|0)==(M()|0))break b;if((z|0)!=0&(s|0)==112){c[z>>2]=n;break}else{Zv(z,t,n,o);break}}while(0);o=D;n=(c[B>>2]|0)-(c[E>>2]|0)|0;o=kP(c[o>>2]|0,c[o+4>>2]|0,u|0,v|0)|0;n=kP(o|0,M()|0,n|0,((n|0)<0)<<31>>31|0)|0;h=h+((z|0)!=0&1)|0;o=M()|0;break c}while(0);m=m+(n&1)|0;sw(e,0,0);l=c[B>>2]|0;if(l>>>0<(c[C>>2]|0)>>>0){c[B>>2]=l+1;l=d[l>>0]|0}else l=ol(e)|0;if((l|0)!=(d[m>>0]|0)){O=23;break b}n=kP(u|0,v|0,1,0)|0;o=M()|0}else{while(1){l=m+1|0;if(!(hU(d[l>>0]|0)|0))break;else m=l}sw(e,0,0);do{l=c[B>>2]|0;if(l>>>0<(c[C>>2]|0)>>>0){c[B>>2]=l+1;l=d[l>>0]|0}else l=ol(e)|0}while((hU(l)|0)!=0);if(!(c[C>>2]|0))l=c[B>>2]|0;else{l=(c[B>>2]|0)+-1|0;c[B>>2]=l}o=D;n=l-(c[E>>2]|0)|0;o=kP(c[o>>2]|0,c[o+4>>2]|0,u|0,v|0)|0;n=kP(o|0,M()|0,n|0,((n|0)<0)<<31>>31|0)|0;o=M()|0}while(0);m=m+1|0;l=a[m>>0]|0;if(!(l<<24>>24))break a;else{u=n;v=o}}if((O|0)==23){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((h|0)!=0|(l|0)>-1)break;else{l=0;h=k;O=144}}else if((O|0)==143)if(!h){h=k;O=144}if((O|0)==144){k=h;h=-1}if(l){qd(k);qd(j)}}else h=0;while(0);if(P|0)MV(e);Nb=Q;return h|0}function Fc(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;ka=Nb;Nb=Nb+128|0;ga=ka+96|0;X=ka+112|0;Y=ka+108|0;Z=ka+32|0;_=ka;ja=e+564|0;ea=c[ja>>2]|0;q=e+556|0;fa=c[q>>2]|0;h=c[e+560>>2]|0;p=e+704|0;f=c[p>>2]|0;if((f|0)!=0?(c[f>>2]|0)!=0:0){f=(c[f+72>>2]|0)+15>>4;f=(h|0)>(f|0)?f:h}else f=h;g=c[e+736>>2]|0;if((g|0)!=0?(c[g>>2]|0)!=0:0){ia=(c[g+72>>2]|0)+15>>4;ia=(f|0)>(ia|0)?ia:f}else ia=f;v=c[e+584>>2]|0;T=H(h,ea)|0;w=v+(T<<3)|0;T=w+(T<<3)|0;wv(e,X,Y);i=e+712|0;if(c[i>>2]|0)js(c[e+708>>2]|0,ia+-1|0,0);U=H(ia,fa)|0;j=e+548|0;n=e+580|0;o=e+696|0;y=c[Y>>2]|0;x=c[X>>2]|0;V=e+680|0;k=e+720|0;W=e+688|0;h=0;f=0;while(1){if((h|0)>=(U|0))break;g=c[(c[j>>2]|0)+(h<<2)>>2]|0;S=(a[(c[n>>2]|0)+g>>0]&8)==0?8:(c[(c[o>>2]|0)+(g<<2)>>2]&7|0)==0?0:8;a[T+g>>0]=S;if((S|0)!=8){if((c[c[p>>2]>>2]|0)!=0?(l=c[i>>2]|0,(l|0)!=0):0){S=c[ja>>2]|0;R=(g|0)/(S|0)|0;S=H((H(y,R)|0)+(g-(H(R,S)|0))|0,x)|0;R=c[V>>2]|0;b[R+(S<<2)>>1]=b[l+(S<<2)>>1]|0;b[R+(S<<2)+2>>1]=b[l+(S<<2)+2>>1]|0;S=g<<2;a[(c[W>>2]|0)+S>>0]=a[(c[k>>2]|0)+S>>0]|0}}else f=f+1|0;h=h+1|0}a:do if((c[(c[e>>2]|0)+676>>2]&1|0)!=0?(f|0)>((((fa|0)>(ia|0)?fa:ia)|0)/2|0|0):0){f=0;j=0;while(1){if((j|0)>=(ia|0))break;k=H(j,ea)|0;l=(j|0)==0;m=j+1|0;n=(m|0)<(ia|0);o=j+-1|0;g=0;b:while(1){while(1){if((g|0)>=(fa|0))break b;i=g+k|0;if((a[T+i>>0]|0)==8)break;g=g+1|0}if((g|0)!=0?(r=T+(i+-1)|0,(a[r>>0]|0)==0):0){a[r>>0]=1;c[v+(f<<3)>>2]=g+-1;c[v+(f<<3)+4>>2]=j;f=f+1|0}if(!l?(s=T+(i-ea)|0,(a[s>>0]|0)==0):0){a[s>>0]=1;c[v+(f<<3)>>2]=g;c[v+(f<<3)+4>>2]=o;f=f+1|0}h=g+1|0;if((h|0)<(fa|0)?(t=T+(i+1)|0,(a[t>>0]|0)==0):0){a[t>>0]=1;c[v+(f<<3)>>2]=h;c[v+(f<<3)+4>>2]=j;f=f+1|0}if(n?(u=T+(i+ea)|0,(a[u>>0]|0)==0):0){a[u>>0]=1;c[v+(f<<3)>>2]=g;c[v+(f<<3)+4>>2]=m;f=f+1|0}g=h}j=m}O=Z+4|0;P=e+672|0;Q=e+608|0;R=e+612|0;S=e+800|0;N=e+804|0;M=f;while(1){L=H(x,y)|0;f=1;K=0;g=1;while(1){if(!(K>>>0<10&(K>>>0<2|(f|0)!=0)))break;J=K>>>0>1;I=0;f=0;while(1){if((I|0)>=(M|0))break;E=c[v+(I<<3)>>2]|0;F=c[v+(I<<3)+4>>2]|0;G=(H(F,ea)|0)+E|0;c:do if(!((E^K^F)&1)){B=(E|0)>0;if(B)h=d[T+(G+-1)>>0]|0;else h=0;C=(E+1|0)<(fa|0);if(C)h=h|d[T+(G+1)>>0];A=(F|0)>0;if(A)h=h|d[T+(G-ea)>>0];z=(F+1|0)<(ia|0);if(z)h=h|d[T+(G+ea)>>0];if(!(J&(h&4|0)==0)){D=H((H(y,F)|0)+E|0,x)|0;do if(B){g=G+-1|0;if((d[T+g>>0]|0)<=1){g=0;break}u=c[V>>2]|0;e=D-x|0;c[Z>>2]=b[u+(e<<2)>>1];c[O>>2]=b[u+(e<<2)+2>>1];c[_>>2]=a[(c[W>>2]|0)+(g<<2)>>0];g=1}else g=0;while(0);do if(C){h=G+1|0;if((d[T+h>>0]|0)<=1)break;u=c[V>>2]|0;e=D+x|0;c[Z+(g<<3)>>2]=b[u+(e<<2)>>1];c[Z+(g<<3)+4>>2]=b[u+(e<<2)+2>>1];c[_+(g<<2)>>2]=a[(c[W>>2]|0)+(h<<2)>>0];g=g+1|0}while(0);do if(A){if((d[T+(G-ea)>>0]|0)<=1)break;u=c[V>>2]|0;e=D-L|0;c[Z+(g<<3)>>2]=b[u+(e<<2)>>1];c[Z+(g<<3)+4>>2]=b[u+(e<<2)+2>>1];c[_+(g<<2)>>2]=a[(c[W>>2]|0)+(G-(c[ja>>2]|0)<<2)>>0];g=g+1|0}while(0);do if(z){if((d[T+(G+ea)>>0]|0)<=1){ha=78;break}u=c[V>>2]|0;e=D+L|0;c[Z+(g<<3)>>2]=b[u+(e<<2)>>1];c[Z+(g<<3)+4>>2]=b[u+(e<<2)+2>>1];c[_+(g<<2)>>2]=a[(c[W>>2]|0)+((c[ja>>2]|0)+G<<2)>>0];g=g+1|0}else ha=78;while(0);if((ha|0)==78){ha=0;if(!g){g=0;break}}d:do if((g|0)>1){h=0;i=0;j=0;k=0;while(1){if((k|0)>=(g|0))break;j=(c[Z+(k<<3)>>2]|0)+j|0;i=(c[Z+(k<<3)+4>>2]|0)+i|0;e=c[_+(k<<2)>>2]|0;h=e+h|0;if(k|0?(e|0)!=(c[_+(k+-1<<2)>>2]|0):0)break d;k=k+1|0}c[Z+(g<<3)>>2]=(j|0)/(k|0)|0;c[Z+(g<<3)+4>>2]=(i|0)/(k|0)|0;c[_+(g<<2)>>2]=(h|0)/(k|0)|0;k=(g|0)>2;l=k?-99999:0;k=k?99999:0;p=k;q=l;n=k;o=l;m=0;while(1){if((m|0)==(g|0))break;e=c[Z+(m<<3)>>2]|0;u=c[Z+(m<<3)+4>>2]|0;t=c[_+(m<<2)>>2]|0;p=(p|0)>(t|0)?t:p;q=(q|0)>(t|0)?q:t;n=(n|0)>(u|0)?u:n;k=(k|0)>(e|0)?e:k;o=(o|0)>(u|0)?o:u;l=(l|0)>(e|0)?l:e;m=m+1|0}l=j-l-k|0;e=g+1|0;m=Z+(e<<3)|0;c[m>>2]=l;j=i-o-n|0;k=Z+(e<<3)+4|0;c[k>>2]=j;h=h-q-p|0;i=_+(e<<2)|0;c[i>>2]=h;if((g|0)==4){c[m>>2]=(l|0)/2|0;c[k>>2]=(j|0)/2|0;c[i>>2]=(h|0)/2|0}g=g+2|0}else g=1;while(0);c[_+(g<<2)>>2]=0;c[Z+(g<<3)+4>>2]=0;c[Z+(g<<3)>>2]=0;m=g+1|0;e=c[V>>2]|0;u=b[e+(D<<2)>>1]|0;e=b[e+(D<<2)+2>>1]|0;n=a[(c[W>>2]|0)+(G<<2)>>0]|0;c[Z+(m<<3)>>2]=u;c[Z+(m<<3)+4>>2]=e;c[_+(m<<2)>>2]=n;m=g+2|0;n=E<<4;o=F<<4;p=T+(G+-1)|0;q=T+(G+1)|0;r=T+(G-ea)|0;s=T+(G+ea)|0;t=0;g=1073741824;l=0;while(1){if((l|0)>=(m|0))break;k=c[P>>2]|0;j=k+32|0;k=(c[k>>2]|0)+n+(H(o,c[j>>2]|0)|0)|0;i=c[Z+(l<<3)>>2]|0;c[Q>>2]=i;h=c[V>>2]|0;b[h+(D<<2)>>1]=i;i=c[Z+(l<<3)+4>>2]|0;c[R>>2]=i;b[h+(D<<2)+2>>1]=i;h=c[_+(l<<2)>>2]|0;if((h|0)<0)h=t;else{pc[c[S>>2]&1](c[N>>2]|0,h,1,0,Q,E,F,0,0);e:do if(B){if((d[p>>0]|0)<=1){i=0;break}h=0;i=0;while(1){if((h|0)==16)break e;la=H(c[j>>2]|0,h)|0;la=(d[k+(la+-1)>>0]|0)-(d[k+la>>0]|0)|0;h=h+1|0;i=((la|0)>-1?la:0-la|0)+i|0}}else i=0;while(0);f:do if(C){if((d[q>>0]|0)<=1)break;h=0;while(1){if((h|0)==16)break f;la=H(c[j>>2]|0,h)|0;la=(d[k+(la+15)>>0]|0)-(d[k+(la+16)>>0]|0)|0;h=h+1|0;i=((la|0)>-1?la:0-la|0)+i|0}}while(0);g:do if(A){if((d[r>>0]|0)<=1)break;h=0;while(1){if((h|0)==16)break g;la=(d[k+(h-(c[j>>2]|0))>>0]|0)-(d[k+h>>0]|0)|0;h=h+1|0;i=((la|0)>-1?la:0-la|0)+i|0}}while(0);h:do if(z){if((d[s>>0]|0)<=1)break;h=0;while(1){if((h|0)==16)break h;la=c[j>>2]|0;la=(d[k+((la*15|0)+h)>>0]|0)-(d[k+((la<<4)+h)>>0]|0)|0;h=h+1|0;i=((la|0)>-1?la:0-la|0)+i|0}}while(0);la=(i|0)>(g|0);h=la?t:l;g=la?g:i}t=h;l=l+1|0}i=c[Z+(t<<3)>>2]|0;c[Q>>2]=i;j=c[Z+(t<<3)+4>>2]|0;c[R>>2]=j;i=i&65535;j=j&65535;g=0;while(1){if((g|0)>=(x|0))break;k=g+D|0;h=0;while(1){if((h|0)==(x|0))break;C=c[V>>2]|0;la=k+(H(h,y)|0)|0;b[C+(la<<2)>>1]=i;b[C+(la<<2)+2>>1]=j;h=h+1|0}g=g+1|0}pc[c[S>>2]&1](c[N>>2]|0,c[_+(t<<2)>>2]|0,1,0,Q,E,F,0,0);do if((c[Q>>2]|0)==(u|0)){if((c[R>>2]|0)!=(e|0))break;a[T+G>>0]=2;g=0;break c}while(0);a[T+G>>0]=4;g=0;f=f+1|0}}while(0);I=I+1|0}K=K+1|0}if(g|0)break a;f=0;k=0;while(1){if((k|0)>=(M|0))break;i=c[v+(k<<3)>>2]|0;h=c[v+(k<<3)+4>>2]|0;j=(H(h,ea)|0)+i|0;g=T+j|0;if(a[g>>0]&14){a[g>>0]=8;if((i|0)>0?($=T+(j+-1)|0,(a[$>>0]|0)==0):0){a[$>>0]=1;c[w+(f<<3)>>2]=i+-1;c[w+(f<<3)+4>>2]=h;f=f+1|0}if((h|0)>0?(aa=T+(j-ea)|0,(a[aa>>0]|0)==0):0){a[aa>>0]=1;c[w+(f<<3)>>2]=i;c[w+(f<<3)+4>>2]=h+-1;f=f+1|0}g=i+1|0;if((g|0)<(fa|0)?(ca=T+(j+1)|0,(a[ca>>0]|0)==0):0){a[ca>>0]=1;c[w+(f<<3)>>2]=g;c[w+(f<<3)+4>>2]=h;f=f+1|0}g=h+1|0;if((g|0)<(ia|0)?(da=T+(j+ea)|0,(a[da>>0]|0)==0):0){a[da>>0]=1;c[w+(f<<3)>>2]=i;c[w+(f<<3)+4>>2]=g;f=f+1|0}}k=k+1|0}if((f|0)>(U|0))break;la=w;M=f;x=c[X>>2]|0;y=c[Y>>2]|0;w=v;v=la}c[ga>>2]=195855;c[ga+4>>2]=195778;c[ga+8>>2]=717;mx(0,0,214689,ga);ba()}else ha=20;while(0);i:do if((ha|0)==20){k=e+608|0;l=e+612|0;m=e+800|0;i=e+804|0;h=0;while(1){if((h|0)>=(ia|0))break i;g=0;while(1){if((g|0)>=(c[q>>2]|0))break;j=(H(c[ja>>2]|0,h)|0)+g|0;f=c[p>>2]|0;if(!f)f=2;else f=(c[f>>2]|0)==0?2:1;if((c[(c[o>>2]|0)+(j<<2)>>2]&7|0)==0?a[(c[n>>2]|0)+j>>0]&8:0){c[k>>2]=0;c[l>>2]=0;pc[c[m>>2]&1](c[i>>2]|0,0,f,0,k,g,h,0,0)}g=g+1|0}h=h+1|0}}while(0);Nb=ka;return}function Gc(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;O=f+880|0;y=c[O>>2]|0;A=(v|0)!=0;B=(w|0)!=0;if(B&(A&(y|0)==2)){W=d[88688+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+W>>0]|0)*384|0)+(a[f+28312+W>>0]<<3)+((y&1)<<2)>>2]|0)==32){J=x;x=46}else{Q=x;x=4}}else{x=f+21792|0;z=c[x>>2]|0;if((y|0)==1){Q=x;y=z;x=4}else{J=x;y=z;x=46}}do if((x|0)==4){E=c[t>>2]|0;D=c[t+4>>2]|0;M=c[u>>2]|0;L=c[u+4>>2]|0;P=c[e+25652>>2]|0;W=f+21780|0;r=c[W>>2]|0;T=k+((H(o<<1,r)|0)+(n<<1<<P))|0;U=i>>1;V=f+21784|0;x=c[V>>2]|0;R=(H(x,o)|0)+(n<<P)|0;S=l+R|0;R=m+R|0;z=(c[f+21788>>2]<<3)+n|0;N=f+21828|0;k=c[N>>2]|0;y=(y>>k<<3)+o|0;if(!(A&B)){n=B&1;v=d[88688+g>>0]|0;m=a[f+28272+(n*40|0)+v>>0]|0;A=(z<<3)+(b[f+27952+(n*160|0)+(v<<2)>>1]|0)|0;v=(y<<3)+(b[f+27952+(n*160|0)+(v<<2)+2>>1]|0)|0;u=v<<2&12|A&3;x=A>>2;y=v>>2;z=(H(y,r)|0)+(x<<P)|0;z=(c[f+23416+(n*1920|0)+(m*40|0)>>2]|0)+z|0;C=c[e+26996>>2]|0;t=C<<4;B=c[e+26992>>2]<<4>>k;l=A&7;g=(l|0)==0?0:-3;O=(v&7|0)==0?0:-3;if((!((x|0)<(0-g|0)|(y|0)<(0-O|0))?(x+16|0)<=(g+t|0):0)?(y+16|0)<=(B+O|0):0){k=0;y=r}else{O=f+27792|0;k=2<<P;qc[c[e+8>>2]&3](c[O>>2]|0,z+(0-k)+(0-(r<<1))|0,r,r,21,21,x+-2|0,y+-2|0,t,B);y=c[W>>2]|0;z=(c[O>>2]|0)+k+(y<<1)|0;k=1}x=p+(u<<2)|0;hc[c[x>>2]&1023](T,z,y);if(!h)hc[c[x>>2]&1023](T+j|0,z+j|0,c[W>>2]|0);if(!(c[N>>2]|0)){p=v;v=v>>3}else{j=(1-(c[f+23416+(n*1920|0)+(m*40|0)+24>>2]|0)+(c[Q>>2]&1)<<1)+v|0;v=j>>3;p=j;k=j>>>31|k|(v+8|0)>=(B>>1|0)}u=A>>3;t=u<<P;y=c[V>>2]|0;x=H(y,v)|0;z=(c[f+23416+(n*1920|0)+(m*40|0)+4>>2]|0)+t+x|0;x=(c[f+23416+(n*1920|0)+(m*40|0)+8>>2]|0)+t+x|0;t=f+27792|0;if(!k){e=p&7;lc[q&63](S,z,y,U,l,e);y=e}else{j=B>>1;h=C<<3;Q=e+8|0;qc[c[Q>>2]&3](c[t>>2]|0,z,y,y,9,9,u,v,h,j);y=p&7;lc[q&63](S,c[t>>2]|0,c[V>>2]|0,U,l,y);e=c[V>>2]|0;qc[c[Q>>2]&3](c[t>>2]|0,x,e,e,9,9,u,v,h,j);x=c[t>>2]|0}lc[q&63](R,x,c[V>>2]|0,U,l,y);lc[E&63](T,c[W>>2]|0,i,c[f+888>>2]|0,c[f+912+(m<<4)+(n<<3)>>2]|0,c[f+912+(m<<4)+(n<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;i=f+892|0;lc[D&63](S,c[V>>2]|0,U,c[i>>2]|0,c[f+1680+(m<<5)+(n<<4)>>2]|0,c[f+1680+(m<<5)+(n<<4)+4>>2]|0);lc[D&63](R,c[V>>2]|0,U,c[i>>2]|0,c[f+1680+(m<<5)+(n<<4)+8>>2]|0,c[f+1680+(m<<5)+(n<<4)+12>>2]|0);break}J=c[f+27788>>2]|0;K=J+(16<<P)|0;I=J+(x<<4)|0;D=d[88688+g>>0]|0;F=a[f+28272+D>>0]|0;G=a[f+28312+D>>0]|0;n=z<<3;B=n+(b[f+27952+(D<<2)>>1]|0)|0;o=y<<3;A=o+(b[f+27952+(D<<2)+2>>1]|0)|0;u=A<<2&12|B&3;x=B>>2;y=A>>2;z=(H(y,r)|0)+(x<<P)|0;z=(c[f+23416+(F*40|0)>>2]|0)+z|0;s=e+26996|0;l=c[s>>2]|0;t=l<<4;w=e+26992|0;C=c[w>>2]<<4>>k;m=B&7;E=(m|0)==0?0:-3;g=(A&7|0)==0?0:-3;if((!((x|0)<(0-E|0)|(y|0)<(0-g|0))?(x+16|0)<=(E+t|0):0)?(y+16|0)<=(C+g|0):0){t=0;y=r}else{E=f+27792|0;g=2<<P;qc[c[e+8>>2]&3](c[E>>2]|0,z+(0-g)+(0-(r<<1))|0,r,r,21,21,x+-2|0,y+-2|0,t,C);y=c[W>>2]|0;z=(c[E>>2]|0)+g+(y<<1)|0;t=1}x=p+(u<<2)|0;hc[c[x>>2]&1023](T,z,y);E=(h|0)!=0;if(!E)hc[c[x>>2]&1023](T+j|0,z+j|0,c[W>>2]|0);if(!(c[N>>2]|0)){k=A;v=t;u=A>>3}else{v=(1-(c[f+23416+(F*40|0)+24>>2]|0)+(c[Q>>2]&1)<<1)+A|0;u=v>>3;k=v;v=v>>>31|t|(u+8|0)>=(C>>1|0)}y=B>>3;r=y<<P;z=c[V>>2]|0;x=H(z,u)|0;t=(c[f+23416+(F*40|0)+4>>2]|0)+r+x|0;x=(c[f+23416+(F*40|0)+8>>2]|0)+r+x|0;r=f+27792|0;if(!v){y=k&7;lc[q&63](S,t,z,U,m,y)}else{g=C>>1;l=l<<3;B=e+8|0;qc[c[B>>2]&3](c[r>>2]|0,t,z,z,9,9,y,u,l,g);h=k&7;lc[q&63](S,c[r>>2]|0,c[V>>2]|0,U,m,h);C=c[V>>2]|0;qc[c[B>>2]&3](c[r>>2]|0,x,C,C,9,9,y,u,l,g);x=c[r>>2]|0;y=h}lc[q&63](R,x,c[V>>2]|0,U,m,y);B=n+(b[f+28112+(D<<2)>>1]|0)|0;A=o+(b[f+28112+(D<<2)+2>>1]|0)|0;k=A<<2&12|B&3;t=B>>2;u=A>>2;y=c[W>>2]|0;z=(H(u,y)|0)+(t<<P)|0;z=(c[f+25336+(G*40|0)>>2]|0)+z|0;l=c[s>>2]|0;x=l<<4;C=c[w>>2]<<4>>c[N>>2];m=B&7;g=(m|0)==0?0:-3;h=(A&7|0)==0?0:-3;if((!((t|0)<(0-g|0)|(u|0)<(0-h|0))?(t+16|0)<=(x+g|0):0)?(u+16|0)<=(C+h|0):0)v=0;else{v=2<<P;qc[c[e+8>>2]&3](c[r>>2]|0,z+(0-v)+(0-(y<<1))|0,y,y,21,21,t+-2|0,u+-2|0,x,C);y=c[W>>2]|0;z=(c[r>>2]|0)+v+(y<<1)|0;v=1}x=p+(k<<2)|0;hc[c[x>>2]&1023](I,z,y);if(!E)hc[c[x>>2]&1023](I+j|0,z+j|0,c[W>>2]|0);if(!(c[N>>2]|0)){k=A;u=A>>3}else{j=(1-(c[f+25336+(G*40|0)+24>>2]|0)+(c[Q>>2]&1)<<1)+A|0;u=j>>3;k=j;v=j>>>31|v|(u+8|0)>=(C>>1|0)}t=B>>3;j=t<<P;y=c[V>>2]|0;x=H(y,u)|0;z=(c[f+25336+(G*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(G*40|0)+8>>2]|0)+j+x|0;if(!v){e=k&7;lc[q&63](J,z,y,U,m,e);y=e}else{j=C>>1;h=l<<3;P=e+8|0;qc[c[P>>2]&3](c[r>>2]|0,z,y,y,9,9,t,u,h,j);y=k&7;lc[q&63](J,c[r>>2]|0,c[V>>2]|0,U,m,y);e=c[V>>2]|0;qc[c[P>>2]&3](c[r>>2]|0,x,e,e,9,9,t,u,h,j);x=c[r>>2]|0}lc[q&63](K,x,c[V>>2]|0,U,m,y);if((c[O>>2]|0)==2){e=c[f+3216+(F*384|0)+(G<<3)+((c[Q>>2]&1)<<2)>>2]|0;f=64-e|0;oc[M&31](T,I,c[W>>2]|0,i,5,e,f,0);oc[L&31](S,J,c[V>>2]|0,U,5,e,f,0);oc[L&31](R,K,c[V>>2]|0,U,5,e,f,0);break}else{oc[M&31](T,I,c[W>>2]|0,i,c[f+888>>2]|0,c[f+912+(F<<4)>>2]|0,c[f+912+(G<<4)+8>>2]|0,(c[f+912+(G<<4)+12>>2]|0)+(c[f+912+(F<<4)+4>>2]|0)|0);i=f+892|0;oc[L&31](S,J,c[V>>2]|0,U,c[i>>2]|0,c[f+1680+(F<<5)>>2]|0,c[f+1680+(G<<5)+16>>2]|0,(c[f+1680+(G<<5)+20>>2]|0)+(c[f+1680+(F<<5)+4>>2]|0)|0);oc[L&31](R,K,c[V>>2]|0,U,c[i>>2]|0,c[f+1680+(F<<5)+8>>2]|0,c[f+1680+(G<<5)+24>>2]|0,(c[f+1680+(G<<5)+28>>2]|0)+(c[f+1680+(F<<5)+12>>2]|0)|0);break}}else if((x|0)==46){K=c[e+25652>>2]|0;I=f+21780|0;C=c[I>>2]|0;G=k+((H(o<<1,C)|0)+(n<<1<<K))|0;N=f+21784|0;M=(H(c[N>>2]|0,o)|0)+(n<<K)|0;L=l+M|0;M=m+M|0;E=(c[f+21788>>2]<<3)+n|0;F=f+21828|0;u=c[F>>2]|0;D=(y>>u<<3)+o|0;if(v){A=d[88688+g>>0]|0;l=a[f+28272+A>>0]|0;B=(E<<3)+(b[f+27952+(A<<2)>>1]|0)|0;A=(D<<3)+(b[f+27952+(A<<2)+2>>1]|0)|0;v=A<<2&12|B&3;x=B>>2;y=A>>2;z=(H(y,C)|0)+(x<<K)|0;z=(c[f+23416+(l*40|0)>>2]|0)+z|0;n=c[e+26996>>2]|0;t=n<<4;m=c[e+26992>>2]<<4>>u;o=B&7;V=(o|0)==0?0:-3;W=(A&7|0)==0?0:-3;if((!((x|0)<(0-V|0)|(y|0)<(0-W|0))?(x+16|0)<=(V+t|0):0)?(y+16|0)<=(m+W|0):0){t=0;y=C}else{V=f+27792|0;W=2<<K;qc[c[e+8>>2]&3](c[V>>2]|0,z+(0-W)+(0-(C<<1))|0,C,C,21,21,x+-2|0,y+-2|0,t,m);y=c[I>>2]|0;z=(c[V>>2]|0)+W+(y<<1)|0;t=1}x=p+(v<<2)|0;hc[c[x>>2]&1023](G,z,y);if(!h)hc[c[x>>2]&1023](G+j|0,z+j|0,c[I>>2]|0);if(!(c[F>>2]|0)){p=A;k=t;v=A>>3}else{k=(1-(c[f+23416+(l*40|0)+24>>2]|0)+(c[J>>2]&1)<<1)+A|0;v=k>>3;p=k;k=k>>>31|t|(v+8|0)>=(m>>1|0)}z=B>>3;y=z<<K;t=c[N>>2]|0;x=H(t,v)|0;u=(c[f+23416+(l*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(l*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=i>>1;z=p&7;lc[q&63](L,u,t,y,o,z)}else{U=m>>1;T=n<<3;R=e+8|0;qc[c[R>>2]&3](c[y>>2]|0,u,t,t,9,9,z,v,T,U);V=i>>1;W=p&7;lc[q&63](L,c[y>>2]|0,c[N>>2]|0,V,o,W);S=c[N>>2]|0;qc[c[R>>2]&3](c[y>>2]|0,x,S,S,9,9,z,v,T,U);x=c[y>>2]|0;y=V;z=W}lc[q&63](M,x,c[N>>2]|0,y,o,z);q=s;p=r}if(w|0){A=d[88688+g>>0]|0;C=a[f+28312+A>>0]|0;B=(E<<3)+(b[f+28112+(A<<2)>>1]|0)|0;A=(D<<3)+(b[f+28112+(A<<2)+2>>1]|0)|0;v=A<<2&12|B&3;x=B>>2;t=A>>2;y=c[I>>2]|0;z=(H(t,y)|0)+(x<<K)|0;z=(c[f+25336+(C*40|0)>>2]|0)+z|0;l=c[e+26996>>2]|0;u=l<<4;m=c[e+26992>>2]<<4>>c[F>>2];n=B&7;V=(n|0)==0?0:-3;W=(A&7|0)==0?0:-3;if((!((x|0)<(0-V|0)|(t|0)<(0-W|0))?(x+16|0)<=(u+V|0):0)?(t+16|0)<=(m+W|0):0)k=0;else{W=f+27792|0;k=2<<K;qc[c[e+8>>2]&3](c[W>>2]|0,z+(0-k)+(0-(y<<1))|0,y,y,21,21,x+-2|0,t+-2|0,u,m);y=c[I>>2]|0;z=(c[W>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;hc[c[x>>2]&1023](G,z,y);if(!h)hc[c[x>>2]&1023](G+j|0,z+j|0,c[I>>2]|0);if(!(c[F>>2]|0)){p=A;v=A>>3}else{j=(1-(c[f+25336+(C*40|0)+24>>2]|0)+(c[J>>2]&1)<<1)+A|0;v=j>>3;p=j;k=j>>>31|k|(v+8|0)>=(m>>1|0)}u=B>>3;y=u<<K;z=c[N>>2]|0;x=H(z,v)|0;t=(c[f+25336+(C*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(C*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=i>>1;i=p&7;lc[q&63](L,t,z,y,n,i);z=i}else{f=m>>1;j=l<<3;h=e+8|0;qc[c[h>>2]&3](c[y>>2]|0,t,z,z,9,9,u,v,j,f);i=i>>1;z=p&7;lc[q&63](L,c[y>>2]|0,c[N>>2]|0,i,n,z);e=c[N>>2]|0;qc[c[h>>2]&3](c[y>>2]|0,x,e,e,9,9,u,v,j,f);x=c[y>>2]|0;y=i}lc[q&63](M,x,c[N>>2]|0,y,n,z)}}while(0);return}function Hc(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;L=f+880|0;s=c[L>>2]|0;y=(v|0)!=0;z=(w|0)!=0;if(z&(y&(s|0)==2)){Q=d[88688+g>>0]|0;q=f+21792|0;s=c[q>>2]|0;if((c[f+3216+((a[f+28272+Q>>0]|0)*384|0)+(a[f+28312+Q>>0]<<3)+((s&1)<<2)>>2]|0)==32)q=58;else{K=q;q=4}}else{q=f+21792|0;x=c[q>>2]|0;if((s|0)==1){K=q;s=x;q=4}else{s=x;q=58}}do if((q|0)==4){A=c[t>>2]|0;J=c[u>>2]|0;M=c[e+25652>>2]|0;Q=f+21780|0;u=c[Q>>2]|0;N=(H(o<<1,u)|0)+(n<<1<<M)|0;P=k+N|0;O=l+N|0;N=m+N|0;x=(c[f+21788>>2]<<3)+n|0;C=f+21828|0;t=c[C>>2]|0;q=(s>>t<<3)+o|0;if(!(y&z)){n=z&1;L=d[88688+g>>0]|0;m=a[f+28272+(n*40|0)+L>>0]|0;K=(x<<3)+(b[f+27952+(n*160|0)+(L<<2)>>1]|0)|0;L=(q<<3)+(b[f+27952+(n*160|0)+(L<<2)+2>>1]|0)|0;x=L<<2&12|K&3;y=K>>2;z=L>>2;v=(H(z,u)|0)+(y<<M)|0;q=(c[f+23416+(n*1920|0)+(m*40|0)>>2]|0)+v|0;l=c[e+26996>>2]<<4;k=c[e+26992>>2]<<4>>t;K=(K&7|0)==0?0:-3;L=(L&7|0)==0?0:-3;if((!((y|0)<(0-K|0)|(z|0)<(0-L|0))?(y+16|0)<=(K+l|0):0)?(z+16|0)<=(k+L|0):0){t=0;s=u}else{L=f+27792|0;t=2<<M;qc[c[e+8>>2]&3](c[L>>2]|0,q+(0-t)+(0-(u<<1))|0,u,u,21,21,y+-2|0,z+-2|0,l,k);s=c[Q>>2]|0;q=(c[L>>2]|0)+t+(s<<1)|0;t=1}u=p+(x<<2)|0;hc[c[u>>2]&1023](P,q,s);p=(h|0)!=0;if(!p)hc[c[u>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(n*1920|0)+(m*40|0)+4>>2]|0)+v|0;x=(t|0)!=0;if(x){L=f+27792|0;h=2<<M;s=c[Q>>2]|0;qc[c[e+8>>2]&3](c[L>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,z+-2|0,l,k);s=c[Q>>2]|0;q=(c[L>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;hc[c[u>>2]&1023](O,q,s);if(!p)hc[c[u>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(n*1920|0)+(m*40|0)+8>>2]|0)+v|0;if(x){L=f+27792|0;h=2<<M;s=c[Q>>2]|0;qc[c[e+8>>2]&3](c[L>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,z+-2|0,l,k);s=c[Q>>2]|0;q=(c[L>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;hc[c[u>>2]&1023](N,q,s);if(!p)hc[c[u>>2]&1023](N+j|0,q+j|0,c[Q>>2]|0);lc[A&63](P,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(m<<4)+(n<<3)>>2]|0,c[f+912+(m<<4)+(n<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+21784|0;j=f+892|0;lc[A&63](O,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(m<<5)+(n<<4)>>2]|0,c[f+1680+(m<<5)+(n<<4)+4>>2]|0);lc[A&63](N,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(m<<5)+(n<<4)+8>>2]|0,c[f+1680+(m<<5)+(n<<4)+12>>2]|0);break}E=c[f+27788>>2]|0;F=E+(16<<M)|0;G=f+21784|0;I=E+(c[G>>2]<<4)|0;A=d[88688+g>>0]|0;w=a[f+28272+A>>0]|0;D=a[f+28312+A>>0]|0;n=x<<3;r=n+(b[f+27952+(A<<2)>>1]|0)|0;m=q<<3;g=m+(b[f+27952+(A<<2)+2>>1]|0)|0;x=g<<2&12|r&3;z=r>>2;l=g>>2;k=(H(l,u)|0)+(z<<M)|0;q=(c[f+23416+(w*40|0)>>2]|0)+k|0;B=e+26996|0;y=c[B>>2]<<4;o=e+26992|0;v=c[o>>2]<<4>>t;r=(r&7|0)==0?0:-3;g=(g&7|0)==0?0:-3;if((!((z|0)<(0-r|0)|(l|0)<(0-g|0))?(z+16|0)<=(r+y|0):0)?(l+16|0)<=(v+g|0):0){t=0;s=u}else{g=f+27792|0;t=2<<M;qc[c[e+8>>2]&3](c[g>>2]|0,q+(0-t)+(0-(u<<1))|0,u,u,21,21,z+-2|0,l+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+t+(s<<1)|0;t=1}u=p+(x<<2)|0;hc[c[u>>2]&1023](P,q,s);r=(h|0)!=0;if(!r)hc[c[u>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(w*40|0)+4>>2]|0)+k|0;x=(t|0)!=0;if(x){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;qc[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,z+-2|0,l+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;hc[c[u>>2]&1023](O,q,s);if(!r)hc[c[u>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(w*40|0)+8>>2]|0)+k|0;if(x){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;qc[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,z+-2|0,l+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;hc[c[u>>2]&1023](N,q,s);if(!r)hc[c[u>>2]&1023](N+j|0,q+j|0,c[Q>>2]|0);g=n+(b[f+28112+(A<<2)>>1]|0)|0;h=m+(b[f+28112+(A<<2)+2>>1]|0)|0;t=h<<2&12|g&3;y=g>>2;z=h>>2;q=c[Q>>2]|0;v=(H(z,q)|0)+(y<<M)|0;s=(c[f+25336+(D*40|0)>>2]|0)+v|0;k=c[B>>2]<<4;u=c[o>>2]<<4>>c[C>>2];g=(g&7|0)==0?0:-3;h=(h&7|0)==0?0:-3;if((!((y|0)<(0-g|0)|(z|0)<(0-h|0))?(y+16|0)<=(k+g|0):0)?(z+16|0)<=(u+h|0):0)x=0;else{h=f+27792|0;x=2<<M;qc[c[e+8>>2]&3](c[h>>2]|0,s+(0-x)+(0-(q<<1))|0,q,q,21,21,y+-2|0,z+-2|0,k,u);q=c[Q>>2]|0;s=(c[h>>2]|0)+x+(q<<1)|0;x=1}t=p+(t<<2)|0;hc[c[t>>2]&1023](I,s,q);if(!r)hc[c[t>>2]&1023](I+j|0,s+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+4>>2]|0)+v|0;x=(x|0)!=0;if(x){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;qc[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,z+-2|0,k,u);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;hc[c[t>>2]&1023](E,q,s);if(!r)hc[c[t>>2]&1023](E+j|0,q+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+8>>2]|0)+v|0;if(x){g=f+27792|0;h=2<<M;s=c[Q>>2]|0;qc[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,z+-2|0,k,u);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;hc[c[t>>2]&1023](F,q,s);if(!r)hc[c[t>>2]&1023](F+j|0,q+j|0,c[Q>>2]|0);if((c[L>>2]|0)==2){f=c[f+3216+(w*384|0)+(D<<3)+((c[K>>2]&1)<<2)>>2]|0;j=64-f|0;oc[J&31](P,I,c[Q>>2]|0,i,5,f,j,0);oc[J&31](O,E,c[G>>2]|0,i,5,f,j,0);oc[J&31](N,F,c[G>>2]|0,i,5,f,j,0);break}else{oc[J&31](P,I,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(D<<4)+8>>2]|0,(c[f+912+(D<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);j=f+892|0;oc[J&31](O,E,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(D<<5)+16>>2]|0,(c[f+1680+(D<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);oc[J&31](N,F,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(D<<5)+24>>2]|0,(c[f+1680+(D<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((q|0)==58){F=c[e+25652>>2]|0;G=f+21780|0;u=c[G>>2]|0;E=(H(o<<1,u)|0)+(n<<1<<F)|0;C=k+E|0;D=l+E|0;E=m+E|0;A=(c[f+21788>>2]<<3)+n|0;B=f+21828|0;x=c[B>>2]|0;n=(s>>x<<3)+o|0;if(v){i=d[88688+g>>0]|0;v=a[f+28272+i>>0]|0;Q=(A<<3)+(b[f+27952+(i<<2)>>1]|0)|0;i=(n<<3)+(b[f+27952+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;z=Q>>2;l=i>>2;k=(H(l,u)|0)+(z<<F)|0;q=(c[f+23416+(v*40|0)>>2]|0)+k|0;m=c[e+26996>>2]<<4;y=c[e+26992>>2]<<4>>x;Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((z|0)<(0-Q|0)|(l|0)<(0-i|0))?(z+16|0)<=(Q+m|0):0)?(l+16|0)<=(y+i|0):0){x=0;s=u}else{i=f+27792|0;x=2<<F;qc[c[e+8>>2]&3](c[i>>2]|0,q+(0-x)+(0-(u<<1))|0,u,u,21,21,z+-2|0,l+-2|0,m,y);s=c[G>>2]|0;q=(c[i>>2]|0)+x+(s<<1)|0;x=1}p=p+(t<<2)|0;hc[c[p>>2]&1023](C,q,s);t=(h|0)!=0;if(!t)hc[c[p>>2]&1023](C+j|0,q+j|0,c[G>>2]|0);q=(c[f+23416+(v*40|0)+4>>2]|0)+k|0;x=(x|0)!=0;if(x){Q=f+27792|0;i=2<<F;s=c[G>>2]|0;qc[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,z+-2|0,l+-2|0,m,y);s=c[G>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[G>>2]|0;hc[c[p>>2]&1023](D,q,s);if(!t)hc[c[p>>2]&1023](D+j|0,q+j|0,c[G>>2]|0);q=(c[f+23416+(v*40|0)+8>>2]|0)+k|0;if(x){Q=f+27792|0;i=2<<F;s=c[G>>2]|0;qc[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,z+-2|0,l+-2|0,m,y);s=c[G>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[G>>2]|0;hc[c[p>>2]&1023](E,q,s);if(t)p=r;else{hc[c[p>>2]&1023](E+j|0,q+j|0,c[G>>2]|0);p=r}}if(w|0){i=d[88688+g>>0]|0;m=a[f+28312+i>>0]|0;Q=(A<<3)+(b[f+28112+(i<<2)>>1]|0)|0;i=(n<<3)+(b[f+28112+(i<<2)+2>>1]|0)|0;x=i<<2&12|Q&3;y=Q>>2;z=i>>2;s=c[G>>2]|0;v=(H(z,s)|0)+(y<<F)|0;q=(c[f+25336+(m*40|0)>>2]|0)+v|0;l=c[e+26996>>2]<<4;k=c[e+26992>>2]<<4>>c[B>>2];Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((y|0)<(0-Q|0)|(z|0)<(0-i|0))?(y+16|0)<=(l+Q|0):0)?(z+16|0)<=(k+i|0):0)t=0;else{i=f+27792|0;t=2<<F;qc[c[e+8>>2]&3](c[i>>2]|0,q+(0-t)+(0-(s<<1))|0,s,s,21,21,y+-2|0,z+-2|0,l,k);s=c[G>>2]|0;q=(c[i>>2]|0)+t+(s<<1)|0;t=1}u=p+(x<<2)|0;hc[c[u>>2]&1023](C,q,s);p=(h|0)!=0;if(!p)hc[c[u>>2]&1023](C+j|0,q+j|0,c[G>>2]|0);q=(c[f+25336+(m*40|0)+4>>2]|0)+v|0;x=(t|0)!=0;if(x){i=f+27792|0;h=2<<F;s=c[G>>2]|0;qc[c[e+8>>2]&3](c[i>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,z+-2|0,l,k);s=c[G>>2]|0;q=(c[i>>2]|0)+h+(s<<1)|0}else s=c[G>>2]|0;hc[c[u>>2]&1023](D,q,s);if(!p)hc[c[u>>2]&1023](D+j|0,q+j|0,c[G>>2]|0);q=(c[f+25336+(m*40|0)+8>>2]|0)+v|0;if(x){h=f+27792|0;f=2<<F;s=c[G>>2]|0;qc[c[e+8>>2]&3](c[h>>2]|0,q+(0-f)+(0-(s<<1))|0,s,s,21,21,y+-2|0,z+-2|0,l,k);s=c[G>>2]|0;q=(c[h>>2]|0)+f+(s<<1)|0}else s=c[G>>2]|0;hc[c[u>>2]&1023](E,q,s);if(!p)hc[c[u>>2]&1023](E+j|0,q+j|0,c[G>>2]|0)}}while(0);return}function Ic(e,f,g,h,i,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=Nb;Nb=Nb+112|0;y=z+96|0;v=z+88|0;t=z+80|0;s=z+64|0;x=z;u=(l|0)<9;do if(u)if((l|0)==4){w=c[284098]|0;m=g+8|0;r=c[m>>2]|0;o=(c[g>>2]|0)+(r>>>3)|0;o=(IS(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24|0)|0)<<(r&7)>>>24;n=b[w+(o<<2)>>1]|0;o=r+(b[w+(o<<2)+2>>1]|0)|0;break}else{w=c[284102]|0;m=g+8|0;r=c[m>>2]|0;o=(c[g>>2]|0)+(r>>>3)|0;o=(IS(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24|0)|0)<<(r&7)>>>19;n=b[w+(o<<2)>>1]|0;o=r+(b[w+(o<<2)+2>>1]|0)|0;break}else if((i|0)>47){r=75856+((WM(f,(i<<4)+-768|0)|0)<<2)|0;r=c[1042096+(c[r>>2]<<4)+4>>2]|0;m=g+8|0;q=c[m>>2]|0;o=c[g>>2]|0;w=o+(q>>>3)|0;w=(IS(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(q&7)>>>24;n=b[r+(w<<2)>>1]|0;w=b[r+(w<<2)+2>>1]|0;p=w<<16>>16;if(w<<16>>16<0){w=q+8|0;o=o+(w>>>3)|0;n=((IS(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24|0)|0)<<(w&7)>>>(p+32|0))+n|0;p=b[r+(n<<2)+2>>1]|0;o=w;n=b[r+(n<<2)>>1]|0}else o=q;o=p+o|0;break}else{r=75856+((WM(f,i)|0)<<2)|0;r=c[1042096+(c[r>>2]<<4)+4>>2]|0;m=g+8|0;q=c[m>>2]|0;p=c[g>>2]|0;w=p+(q>>>3)|0;w=(IS(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(q&7)>>>24;n=b[r+(w<<2)>>1]|0;w=b[r+(w<<2)+2>>1]|0;o=w<<16>>16;if(w<<16>>16<0){w=q+8|0;p=p+(w>>>3)|0;n=((IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(w&7)>>>(o+32|0))+n|0;o=b[r+(n<<2)+2>>1]|0;p=w;n=b[r+(n<<2)>>1]|0}else p=q;o=o+p|0;break}while(0);c[m>>2]=o;w=n>>2;a[(d[88688+i>>0]|0)+(f+27824)>>0]=w;a:do if(w){if(w>>>0>l>>>0){m=c[e+4>>2]|0;y=c[f+21792>>2]|0;c[s>>2]=c[f+21788>>2];c[s+4>>2]=y;c[s+8>>2]=w;mx(m,16,196733,s);m=-1;break}o=n&3;s=eJ(g,3)|0;CS(g,o);c[x>>2]=1-(s>>>1&2);c[x+4>>2]=1-(s&2);c[x+8>>2]=1-(s<<1&2);b:do if((o|0)<(w|0)){p=(o|0)!=3;n=(n|0)>43&p;q=n&1;r=eJ(g,8)|0;s=a[1075008+(q<<9)+(r<<1)>>0]|0;m=s<<24>>24;CS(g,a[1075008+(q<<9)+(r<<1)+1>>0]|0);if(s<<24>>24>99){m=m+-100|0;if((m|0)==8)m=(Xw(g)|0)+8|0;do if((m|0)<14){if(n)m=(RN(g)|0)+(m<<1)|0}else{if((m|0)==14)if(n){m=(RN(g)|0)+28|0;break}else{m=(SG(g,4)|0)+14|0;break}do if((m|0)>15)if((m|0)>28){mx(c[e+4>>2]|0,16,196778,t);m=-1;break a}else{n=m+-3|0;m=(1<<n)+-4066|0;break}else{m=30;n=12}while(0);m=(SG(g,n)|0)+m|0}while(0);t=p?m+2|0:m;m=t&1;n=2;m=(t+2>>1^0-m)+m|0}else{m=(p?m>>31|1:0)+m|0;n=(m+3|0)>>>0>6?2:1}c[x+(o<<2)>>2]=m;while(1){o=o+1|0;if((o|0)>=(w|0))break b;s=eJ(g,8)|0;t=a[1075008+(n<<9)+(s<<1)>>0]|0;m=t<<24>>24;CS(g,a[1075008+(n<<9)+(s<<1)+1>>0]|0);if(t<<24>>24>99){m=m+-100|0;if((m|0)==8)m=(Xw(g)|0)+8|0;if((m|0)>=15){p=15<<n;if((m|0)==15){m=p;p=12}else{if((m|0)>28)break;t=m+-3|0;m=p+-4096+(1<<t)|0;p=t}}else{m=m<<n;p=n}t=(SG(g,p)|0)+m|0;m=t&1;m=(t+2>>1^0-m)+m|0}c[x+(o<<2)>>2]=m;t=c[75936+(n<<2)>>2]|0;n=n+((t+m|0)>>>0>t<<1>>>0&1)|0}mx(c[e+4>>2]|0,16,196778,v);m=-1094995529;break a}while(0);if((w|0)==(l|0))m=0;else{do if(u)if((l|0)==4){v=c[1042256+(w<<4)+4>>2]|0;n=g+8|0;o=c[n>>2]|0;p=(c[g>>2]|0)+(o>>>3)|0;p=(IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(o&7)>>>29;m=b[v+(p<<2)>>1]|0;p=v+(p<<2)+2|0;break}else{v=c[1043216+(w<<4)+4>>2]|0;n=g+8|0;o=c[n>>2]|0;p=(c[g>>2]|0)+(o>>>3)|0;p=(IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(o&7)>>>27;m=b[v+(p<<2)>>1]|0;p=v+(p<<2)+2|0;break}else{v=c[1074064+(w<<4)+4>>2]|0;n=g+8|0;o=c[n>>2]|0;p=(c[g>>2]|0)+(o>>>3)|0;p=(IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(o&7)>>>23;m=b[v+(p<<2)>>1]|0;p=v+(p<<2)+2|0}while(0);c[n>>2]=o+(b[p>>1]|0)}o=j+(w+-1+m)|0;n=(i|0)>47;p=c[x>>2]|0;c:do if(!(c[e+25652>>2]|0))if(n){b[h+(d[o>>0]<<1)>>1]=p;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){k=c[1074512+(m<<4)+4>>2]|0;i=c[l>>2]|0;p=(c[g>>2]|0)+(i>>>3)|0;p=(IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(i&7)>>>29;q=b[k+(p<<2)>>1]|0;p=i+(b[k+(p<<2)+2>>1]|0)|0}else{t=c[284106]|0;s=c[l>>2]|0;q=c[g>>2]|0;k=q+(s>>>3)|0;k=(IS(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(k<<2)>>1]|0;k=b[t+(k<<2)+2>>1]|0;r=k<<16>>16;if(k<<16>>16<0){s=s+6|0;k=q+(s>>>3)|0;p=((IS(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;k=o+~q|0;b[h+(d[k>>0]<<1)>>1]=c[x+(n<<2)>>2];m=m-q|0;o=k;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;b[h+(d[g>>0]<<1)>>1]=c[x+(n<<2)>>2];o=g;n=n+1|0}}else{l=d[o>>0]|0;n=((H(c[k+(l<<2)>>2]|0,p)|0)+32|0)>>>6&65535;b[h+(l<<1)>>1]=n;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){i=c[1074512+(m<<4)+4>>2]|0;j=c[l>>2]|0;p=(c[g>>2]|0)+(j>>>3)|0;p=(IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(j&7)>>>29;q=b[i+(p<<2)>>1]|0;p=j+(b[i+(p<<2)+2>>1]|0)|0}else{t=c[284106]|0;s=c[l>>2]|0;q=c[g>>2]|0;i=q+(s>>>3)|0;i=(IS(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(i<<2)>>1]|0;i=b[t+(i<<2)+2>>1]|0;r=i<<16>>16;if(i<<16>>16<0){s=s+6|0;i=q+(s>>>3)|0;p=((IS(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;i=o+~q|0;j=d[i>>0]|0;v=((H(c[k+(j<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32|0)>>>6&65535;b[h+(j<<1)>>1]=v;m=m-q|0;o=i;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;i=d[g>>0]|0;j=((H(c[k+(i<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32|0)>>>6&65535;b[h+(i<<1)>>1]=j;o=g;n=n+1|0}}else if(n){c[h+(d[o>>0]<<2)>>2]=p;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){k=c[1074512+(m<<4)+4>>2]|0;i=c[l>>2]|0;p=(c[g>>2]|0)+(i>>>3)|0;p=(IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(i&7)>>>29;q=b[k+(p<<2)>>1]|0;p=i+(b[k+(p<<2)+2>>1]|0)|0}else{t=c[284106]|0;s=c[l>>2]|0;q=c[g>>2]|0;k=q+(s>>>3)|0;k=(IS(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(k<<2)>>1]|0;k=b[t+(k<<2)+2>>1]|0;r=k<<16>>16;if(k<<16>>16<0){s=s+6|0;k=q+(s>>>3)|0;p=((IS(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;k=o+~q|0;c[h+(d[k>>0]<<2)>>2]=c[x+(n<<2)>>2];o=k;m=m-q|0;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;c[h+(d[g>>0]<<2)>>2]=c[x+(n<<2)>>2];o=g;n=n+1|0}}else{l=d[o>>0]|0;n=(H(c[k+(l<<2)>>2]|0,p)|0)+32>>6;c[h+(l<<2)>>2]=n;l=g+8|0;n=1;while(1){if(!((n|0)<(w|0)&(m|0)>0))break;if((m|0)<7){i=c[1074512+(m<<4)+4>>2]|0;j=c[l>>2]|0;p=(c[g>>2]|0)+(j>>>3)|0;p=(IS(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(j&7)>>>29;q=b[i+(p<<2)>>1]|0;p=j+(b[i+(p<<2)+2>>1]|0)|0}else{t=c[284106]|0;s=c[l>>2]|0;q=c[g>>2]|0;i=q+(s>>>3)|0;i=(IS(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>26;p=b[t+(i<<2)>>1]|0;i=b[t+(i<<2)+2>>1]|0;r=i<<16>>16;if(i<<16>>16<0){s=s+6|0;i=q+(s>>>3)|0;p=((IS(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(s&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;p=b[t+(p<<2)>>1]|0}q=p;p=r+s|0}c[l>>2]=p;i=o+~q|0;j=d[i>>0]|0;v=(H(c[k+(j<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32>>6;c[h+(j<<2)>>2]=v;o=i;m=m-q|0;n=n+1|0}while(1){if((n|0)>=(w|0))break c;g=o+-1|0;i=d[g>>0]|0;j=(H(c[k+(i<<2)>>2]|0,c[x+(n<<2)>>2]|0)|0)+32>>6;c[h+(i<<2)>>2]=j;o=g;n=n+1|0}}while(0);if((m|0)<0){m=c[e+4>>2]|0;e=c[f+21792>>2]|0;c[y>>2]=c[f+21788>>2];c[y+4>>2]=e;mx(m,16,196800,y);m=-1}else m=0}else m=0;while(0);Nb=z;return m|0}function Jc(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=c[f+21796>>2]|0;o=d+27e3|0;m=c[o>>2]|0;h=u-(m<<c[f+21828>>2])|0;j=u+-1|0;n=d+26360|0;do if(!(c[n>>2]|0)){t=j;s=j}else{i=c[d+24364>>2]|0;k=c[i+(j<<2)>>2]&128;l=g&128;if(c[f+21792>>2]&1|0){t=j-((k|0)==(l|0)?0:m)|0;s=j;break}if(l)h=(((c[i+(h<<2)>>2]|0)>>>7&1)+-1&m)+h|0;t=j;s=((k|0)==(l|0)?0:m)+j|0}while(0);c[f+21712>>2]=h;c[f+21720>>2]=t;c[f+21724>>2]=s;i=c[f+860>>2]|0;j=c[d+24340>>2]|0;k=a[j+u>>0]|0;do if((i|0)>=(k|0)){l=(t|0)<0;if(!l?(k+1+(a[j+t>>0]|0)>>1|0)>(i|0):0){p=17;break}if((h|0)>=0?(k+1+(a[j+h>>0]|0)>>1|0)>(i|0):0){p=17;break}if(c[n>>2]|0){if(!l?(k+1+(a[j+s>>0]|0)>>1|0)>(i|0):0){p=17;break}r=c[o>>2]|0;if((h|0)>=(r|0)?(k+1+(a[j+(h-r)>>0]|0)>>1|0)>(i|0):0)p=17;else h=1}else h=1}else p=17;while(0);if((p|0)==17){l=c[d+24364>>2]|0;i=c[l+(h<<2)>>2]|0;k=c[l+(t<<2)>>2]|0;l=c[l+(s<<2)>>2]|0;o=d+26356|0;j=c[o>>2]|0;n=b[j+(h<<1)>>1]|0;if((c[f+868>>2]|0)==2){r=c[f+832>>2]|0;p=(r|0)==(e[j+(s<<1)>>1]|0);r=(r|0)==(n&65535|0)?i:0;q=p?k:0;p=p?l:0}else{p=(b[j+(s<<1)>>1]|0)==-1;r=n<<16>>16==-1?0:i;q=p?0:k;p=p?0:l}c[f+21732>>2]=r;c[f+21740>>2]=q;c[f+21744>>2]=p;if(!(g&7)){i=d+26352|0;j=c[i>>2]|0;k=f+28e3|0;l=f+28284|0;m=(g&376|0)==0;do if(!m){if(!(r&12288)){n=f+27968|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28276>>2]=-1}else{y=(c[(c[d+26344>>2]|0)+(h<<2)>>2]|0)+(j*3|0)|0;v=h<<2;w=d+29920+((n&31)<<9)+(((c[f+21832>>2]|0)==0?2:20)<<2)|0;x=d+24352|0;A=(c[x>>2]|0)+(y<<2)|0;z=c[A+4>>2]|0;n=f+27968|0;c[n>>2]=c[A>>2];c[n+4>>2]=z;y=(c[x>>2]|0)+(y<<2)+8|0;x=c[y+4>>2]|0;n=f+27976|0;c[n>>2]=c[y>>2];c[n+4>>2]=x;n=d+24384|0;x=c[w+(a[(c[n>>2]|0)+(v|2)>>0]<<2)>>2]&255;a[f+28277>>0]=x;a[f+28276>>0]=x;n=c[w+(a[(c[n>>2]|0)+(v|3)>>0]<<2)>>2]&255;a[f+28279>>0]=n;a[f+28278>>0]=n}if(!((q^g)&128))if(!(q&12288)){c[f+27996>>2]=0;c[f+28028>>2]=0;c[f+28060>>2]=0;c[f+28092>>2]=0;a[f+28307>>0]=-1;a[f+28299>>0]=-1;a[f+28291>>0]=-1;a[f+28283>>0]=-1;break}else{z=(c[(c[d+26344>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29920+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+(((c[f+21832>>2]|0)==0?2:20)<<2)|0;x=d+24352|0;c[f+27996>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28028>>2]=c[(c[x>>2]|0)+(z+j<<2)>>2];c[f+28060>>2]=c[(c[x>>2]|0)+(z+(j<<1)<<2)>>2];c[f+28092>>2]=c[(c[x>>2]|0)+(z+(j*3|0)<<2)>>2];z=d+24384|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28291>>0]=x;a[f+28283>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28307>>0]=A;a[f+28299>>0]=A;break}}while(0);if(!(g&12288)){y=f+28032|0;z=f+28064|0;A=f+28096|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[l>>2]=-1;c[f+28292>>2]=-1;c[f+28300>>2]=-1;c[f+28308>>2]=-1}else{y=(c[d+24384>>2]|0)+(u<<2)|0;A=d+29920+((c[f+832>>2]&31)<<9)+(((c[f+21832>>2]|0)==0?2:20)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[l>>2]=x;c[f+28292>>2]=x;c[f+28300>>2]=y;c[f+28308>>2]=y;y=(c[d+24352>>2]|0)+((H(c[f+21792>>2]|0,j)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=k;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28008|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(j<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28032|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28040|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(j<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28064|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28072|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(j*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28096|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28104|0;c[A>>2]=c[y>>2];c[A+4>>2]=z}do if((c[f+23412>>2]|0)==2){i=c[i>>2]|0;j=f+28160|0;k=f+28324|0;do if(!m){if(!(r&49152)){A=f+28128|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[f+28316>>2]=-1}else{w=(c[(c[d+26344>>2]|0)+(h<<2)>>2]|0)+(i*3|0)|0;A=h<<2;y=d+29920+((b[(c[o>>2]|0)+(h<<1)>>1]&31)<<9)+256+(((c[f+21832>>2]|0)==0?2:20)<<2)|0;x=d+24356|0;n=(c[x>>2]|0)+(w<<2)|0;v=c[n+4>>2]|0;z=f+28128|0;c[z>>2]=c[n>>2];c[z+4>>2]=v;w=(c[x>>2]|0)+(w<<2)+8|0;x=c[w+4>>2]|0;z=f+28136|0;c[z>>2]=c[w>>2];c[z+4>>2]=x;z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|2)>>0]<<2)>>2]&255;a[f+28317>>0]=x;a[f+28316>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28319>>0]=A;a[f+28318>>0]=A}if(!((q^g)&128))if(!(q&49152)){c[f+28156>>2]=0;c[f+28188>>2]=0;c[f+28220>>2]=0;c[f+28252>>2]=0;a[f+28347>>0]=-1;a[f+28339>>0]=-1;a[f+28331>>0]=-1;a[f+28323>>0]=-1;break}else{z=(c[(c[d+26344>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29920+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+256+(((c[f+21832>>2]|0)==0?2:20)<<2)|0;x=d+24356|0;c[f+28156>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28188>>2]=c[(c[x>>2]|0)+(z+i<<2)>>2];c[f+28220>>2]=c[(c[x>>2]|0)+(z+(i<<1)<<2)>>2];c[f+28252>>2]=c[(c[x>>2]|0)+(z+(i*3|0)<<2)>>2];z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28331>>0]=x;a[f+28323>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28347>>0]=A;a[f+28339>>0]=A;break}}while(0);if(!(g&49152)){y=f+28192|0;z=f+28224|0;A=f+28256|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[k>>2]=-1;c[f+28332>>2]=-1;c[f+28340>>2]=-1;c[f+28348>>2]=-1;break}else{y=(c[d+24388>>2]|0)+(u<<2)|0;A=d+29920+((c[f+832>>2]&31)<<9)+256+(((c[f+21832>>2]|0)==0?2:20)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[k>>2]=x;c[f+28332>>2]=x;c[f+28340>>2]=y;c[f+28348>>2]=y;y=(c[d+24356>>2]|0)+((H(c[f+21792>>2]|0,i)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=j;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28168|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(i<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28192|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28200|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(i<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28224|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28232|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(i*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28256|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28264|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}}while(0);j=d+25956|0;o=c[j>>2]|0;k=f+27836|0;c[k>>2]=c[o+(u*48|0)>>2];l=f+27844|0;c[l>>2]=c[o+(u*48|0)+4>>2];m=f+27852|0;c[m>>2]=c[o+(u*48|0)+8>>2];n=f+27860|0;c[n>>2]=c[o+(u*48|0)+12>>2];o=d+26376|0;i=e[(c[o>>2]|0)+(u<<1)>>1]|0;c[f+21856>>2]=i;if(r|0)c[f+27828>>2]=c[(c[j>>2]|0)+(h*48|0)+12>>2];if(q|0){A=c[j>>2]|0;a[f+27835>>0]=a[A+(t*48|0)+3>>0]|0;a[f+27843>>0]=a[A+(t*48|0)+7>>0]|0;a[f+27851>>0]=a[A+(t*48|0)+11>>0]|0;a[f+27859>>0]=a[A+(t*48|0)+15>>0]|0}A=c[d+28196>>2]|0;if((c[A+4>>2]|0)==0?(c[A+64>>2]|0)!=0:0){if(r&16777216|0){A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&4;a[f+27829>>0]=A;a[f+27828>>0]=A;A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&8;a[f+27831>>0]=A;a[f+27830>>0]=A}if(q&16777216|0){A=(e[(c[o>>2]|0)+(t<<1)>>1]|0)>>>12&2;a[f+27843>>0]=A;a[f+27835>>0]=A}if(p&16777216|0){A=(e[(c[o>>2]|0)+(s<<1)>>1]|0)>>>12&8;a[f+27859>>0]=A;a[f+27851>>0]=A}if(g&16777216){h=i>>>12;A=h&1;a[f+27845>>0]=A;a[l>>0]=A;a[f+27837>>0]=A;a[k>>0]=A;A=h&2;a[f+27847>>0]=A;a[f+27846>>0]=A;a[f+27839>>0]=A;a[f+27838>>0]=A;A=h&4;a[f+27861>>0]=A;a[n>>0]=A;a[f+27853>>0]=A;a[m>>0]=A;h=h&8;a[f+27863>>0]=h;a[f+27862>>0]=h;a[f+27855>>0]=h;a[f+27854>>0]=h;h=0}else h=0}else h=0}else h=0}return h|0}function Kc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;aa=e+21792|0;_=b+26360|0;h=c[_>>2]|0;ba=h+(c[aa>>2]|0)|0;ca=e+836|0;$=c[ca>>2]|0;X=b+25652|0;Y=c[X>>2]|0;Z=16>>>(c[b+25668>>2]|0);if(!(c[b+25692>>2]|0)){a:do if(!(c[e+868>>2]|0)){l=b+28196|0;k=e+852|0;j=e+856|0;i=e+21788|0}else{J=b+27e3|0;K=e+21796|0;L=b+24364|0;i=e+21788|0;M=b+24316|0;N=e+21772|0;O=b+28200|0;P=e+21776|0;Q=e+21828|0;R=e+21832|0;S=e+21780|0;T=e+21784|0;U=1-Z|0;l=b+28196|0;V=b+24340|0;k=e+852|0;j=e+856|0;W=e+27796|0;while(1){h=c[_>>2]|0;if((f|0)>=(g|0))break a;I=f<<Y;E=ba-h|0;while(1){if((E|0)>(ba|0))break;F=(H(c[J>>2]|0,E)|0)+f|0;c[K>>2]=F;G=c[(c[L>>2]|0)+(F<<2)>>2]|0;s=(c[_>>2]|0)==0;h=G>>>7&1;if(s)h=c[Q>>2]|0;else{c[Q>>2]=h;c[R>>2]=h}c[i>>2]=f;c[aa>>2]=E;C=c[M>>2]|0;p=c[N>>2]|0;m=(c[C>>2]|0)+((H(p,E)|0)+I<<4)|0;r=c[(c[O>>2]|0)+12>>2]|0;z=(r|0)==3;D=H(8<<(z&1),I)|0;q=c[P>>2]|0;o=H(H(E,Z)|0,q)|0;n=(c[C+4>>2]|0)+D+o|0;o=(c[C+8>>2]|0)+D+o|0;if(!h){c[S>>2]=p;c[T>>2]=q;D=m;C=q}else{B=p<<1;c[S>>2]=B;C=q<<1;c[T>>2]=C;y=(E&1|0)==0;D=m+(H(p,-15)|0)|0;p=H(U,q)|0;D=y?m:D;n=y?n:n+p|0;o=y?o:o+p|0;p=B}w=c[X>>2]|0;x=(r|0)==2;v=D+(0-p)|0;B=0-C|0;y=n+B|0;B=o+B|0;do if(!s){h=(c[R>>2]|0)!=0;if(!(E&1))if(h){h=0;A=31;break}else break;if(!h){s=c[W>>2]|0;h=v+(p*15|0)|0;t=h;A=c[t+4>>2]|0;u=s+(f*96|0)|0;c[u>>2]=c[t>>2];c[u+4>>2]=A;u=h+8|0;A=c[u+4>>2]|0;t=s+(f*96|0)+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=A;t=(w|0)!=0;h=h+16|0;if(t){A=h;u=c[A+4>>2]|0;r=s+(f*96|0)+16|0;c[r>>2]=c[A>>2];c[r+4>>2]=u;r=h+8|0;u=c[r+4>>2]|0;A=s+(f*96|0)+24|0;c[A>>2]=c[r>>2];c[A+4>>2]=u}if(z){h=C*15|0;m=y+h|0;r=m;q=c[r>>2]|0;r=c[r+4>>2]|0;if(t){u=s+(f*96|0)+32|0;c[u>>2]=q;c[u+4>>2]=r;u=m+8|0;r=c[u+4>>2]|0;A=s+(f*96|0)+40|0;c[A>>2]=c[u>>2];c[A+4>>2]=r;A=m+16|0;r=A;u=c[r+4>>2]|0;t=s+(f*96|0)+48|0;c[t>>2]=c[r>>2];c[t+4>>2]=u;A=A+8|0;t=c[A+4>>2]|0;u=s+(f*96|0)+56|0;c[u>>2]=c[A>>2];c[u+4>>2]=t;u=B+h|0;t=u;h=c[t+4>>2]|0;A=s+(f*96|0)+64|0;c[A>>2]=c[t>>2];c[A+4>>2]=h;A=u+8|0;h=c[A+4>>2]|0;t=s+(f*96|0)+72|0;c[t>>2]=c[A>>2];c[t+4>>2]=h;u=u+16|0;t=u;h=c[t+4>>2]|0;A=s+(f*96|0)+80|0;c[A>>2]=c[t>>2];c[A+4>>2]=h;u=u+8|0;A=c[u+4>>2]|0;h=s+(f*96|0)+88|0;c[h>>2]=c[u>>2];c[h+4>>2]=A;h=1;A=31;break}else{A=s+(f*96|0)+16|0;c[A>>2]=q;c[A+4>>2]=r;A=m+8|0;t=c[A+4>>2]|0;u=s+(f*96|0)+24|0;c[u>>2]=c[A>>2];c[u+4>>2]=t;u=B+h|0;t=u;h=c[t+4>>2]|0;A=s+(f*96|0)+32|0;c[A>>2]=c[t>>2];c[A+4>>2]=h;u=u+8|0;A=c[u+4>>2]|0;h=s+(f*96|0)+40|0;c[h>>2]=c[u>>2];c[h+4>>2]=A;h=1;A=31;break}}if(x){h=C*15|0;m=y+h|0;r=m;q=c[r>>2]|0;r=c[r+4>>2]|0;if(t){A=s+(f*96|0)+32|0;c[A>>2]=q;c[A+4>>2]=r;A=m+8|0;t=c[A+4>>2]|0;u=s+(f*96|0)+40|0;c[u>>2]=c[A>>2];c[u+4>>2]=t;u=B+h|0;t=u;h=c[t+4>>2]|0;A=s+(f*96|0)+48|0;c[A>>2]=c[t>>2];c[A+4>>2]=h;u=u+8|0;A=c[u+4>>2]|0;h=s+(f*96|0)+56|0;c[h>>2]=c[u>>2];c[h+4>>2]=A;h=1;A=31;break}else{u=s+(f*96|0)+16|0;c[u>>2]=q;c[u+4>>2]=r;u=B+h|0;A=c[u+4>>2]|0;h=s+(f*96|0)+24|0;c[h>>2]=c[u>>2];c[h+4>>2]=A;h=1;A=31;break}}else{h=C*7|0;m=y+h|0;r=m;q=c[r>>2]|0;r=c[r+4>>2]|0;if(t){A=s+(f*96|0)+32|0;c[A>>2]=q;c[A+4>>2]=r;A=m+8|0;t=c[A+4>>2]|0;u=s+(f*96|0)+40|0;c[u>>2]=c[A>>2];c[u+4>>2]=t;u=B+h|0;t=u;h=c[t+4>>2]|0;A=s+(f*96|0)+48|0;c[A>>2]=c[t>>2];c[A+4>>2]=h;u=u+8|0;A=c[u+4>>2]|0;h=s+(f*96|0)+56|0;c[h>>2]=c[u>>2];c[h+4>>2]=A;h=1;A=31;break}else{u=s+(f*96|0)+16|0;c[u>>2]=q;c[u+4>>2]=r;u=B+h|0;A=c[u+4>>2]|0;h=s+(f*96|0)+24|0;c[h>>2]=c[u>>2];c[h+4>>2]=A;h=1;A=31;break}}}else{h=1;A=31}}else{h=1;A=31}while(0);if((A|0)==31){A=0;t=c[e+27796+(h<<2)>>2]|0;u=c[i>>2]|0;r=p<<4;h=v+r|0;s=h;v=c[s+4>>2]|0;q=t+(u*96|0)|0;c[q>>2]=c[s>>2];c[q+4>>2]=v;q=h+8|0;v=c[q+4>>2]|0;s=t+(u*96|0)+8|0;c[s>>2]=c[q>>2];c[s+4>>2]=v;s=(w|0)!=0;h=h+16|0;if(s){w=h;v=c[w+4>>2]|0;q=t+(u*96|0)+16|0;c[q>>2]=c[w>>2];c[q+4>>2]=v;q=h+8|0;v=c[q+4>>2]|0;w=t+(u*96|0)+24|0;c[w>>2]=c[q>>2];c[w+4>>2]=v}do if(z){h=y+r|0;q=h;m=c[q>>2]|0;q=c[q+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=m;c[z+4>>2]=q;z=h+8|0;y=c[z+4>>2]|0;m=t+(u*96|0)+40|0;c[m>>2]=c[z>>2];c[m+4>>2]=y;m=h+16|0;y=m;h=c[y+4>>2]|0;z=t+(u*96|0)+48|0;c[z>>2]=c[y>>2];c[z+4>>2]=h;m=m+8|0;z=c[m+4>>2]|0;h=t+(u*96|0)+56|0;c[h>>2]=c[m>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;m=t+(u*96|0)+64|0;c[m>>2]=c[z>>2];c[m+4>>2]=B;m=h+8|0;B=c[m+4>>2]|0;z=t+(u*96|0)+72|0;c[z>>2]=c[m>>2];c[z+4>>2]=B;h=h+16|0;z=h;B=c[z+4>>2]|0;m=t+(u*96|0)+80|0;c[m>>2]=c[z>>2];c[m+4>>2]=B;h=h+8|0;m=88;break}else{z=t+(u*96|0)+16|0;c[z>>2]=m;c[z+4>>2]=q;m=h+8|0;z=c[m+4>>2]|0;h=t+(u*96|0)+24|0;c[h>>2]=c[m>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;m=t+(u*96|0)+32|0;c[m>>2]=c[z>>2];c[m+4>>2]=B;h=h+8|0;m=40;break}}else if(x){r=C<<4;h=y+r|0;q=h;m=c[q>>2]|0;q=c[q+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=m;c[z+4>>2]=q;m=h+8|0;z=c[m+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[m>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;m=t+(u*96|0)+48|0;c[m>>2]=c[z>>2];c[m+4>>2]=B;h=h+8|0;m=56;break}else{h=t+(u*96|0)+16|0;c[h>>2]=m;c[h+4>>2]=q;h=B+r|0;m=24;break}}else{r=C<<3;h=y+r|0;q=h;m=c[q>>2]|0;q=c[q+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=m;c[z+4>>2]=q;m=h+8|0;z=c[m+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[m>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;m=t+(u*96|0)+48|0;c[m>>2]=c[z>>2];c[m+4>>2]=B;h=h+8|0;m=56;break}else{h=t+(u*96|0)+16|0;c[h>>2]=m;c[h+4>>2]=q;h=B+r|0;m=24;break}}while(0);y=h;z=c[y+4>>2]|0;B=t+(u*96|0)+m|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}do if(!(Jc(b,e,G)|0)){G=c[l>>2]|0;F=(c[V>>2]|0)+F|0;c[k>>2]=d[(a[F>>0]|0)+(G+548)>>0];c[j>>2]=d[(a[F>>0]|0)+(G+636)>>0];if(!(c[_>>2]|0)){tc(b,e,f,E,D,n,o,p,C);break}else{uc(b,e,f,E,D,n,o,p,C);break}}while(0);E=E+1|0}f=f+1|0}}while(0);c[ca>>2]=$;c[i>>2]=g;c[aa>>2]=ba-h;ba=c[l>>2]|0;ca=c[e+848>>2]|0;c[k>>2]=d[ba+548+ca>>0];c[j>>2]=d[ba+636+ca>>0]}return}function Lc(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;O=f+880|0;y=c[O>>2]|0;A=(v|0)!=0;B=(w|0)!=0;if(B&(A&(y|0)==2)){U=d[88688+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+U>>0]|0)*384|0)+(a[f+28312+U>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=37;else{N=x;x=4}}else{x=f+21792|0;z=c[x>>2]|0;if((y|0)==1){N=x;y=z;x=4}else{y=z;x=37}}do if((x|0)==4){E=c[t>>2]|0;D=c[t+4>>2]|0;M=c[u>>2]|0;L=c[u+4>>2]|0;P=c[e+25652>>2]|0;Q=o<<1;U=f+21780|0;F=c[U>>2]|0;S=k+((H(F,Q)|0)+(n<<1<<P))|0;T=f+21784|0;x=c[T>>2]|0;Q=(H(x,Q)|0)+(n<<P)|0;R=l+Q|0;Q=m+Q|0;z=(c[f+21788>>2]<<3)+n|0;r=f+21828|0;k=c[r>>2]|0;y=(y>>k<<3)+o|0;if(!(A&B)){n=B&1;A=d[88688+g>>0]|0;m=a[f+28272+(n*40|0)+A>>0]|0;u=(z<<3)+(b[f+27952+(n*160|0)+(A<<2)>>1]|0)|0;A=(y<<3)+(b[f+27952+(n*160|0)+(A<<2)+2>>1]|0)|0;t=A<<2&12|u&3;x=u>>2;B=A>>2;z=(H(B,F)|0)+(x<<P)|0;z=(c[f+23416+(n*1920|0)+(m*40|0)>>2]|0)+z|0;C=c[e+26996>>2]|0;y=C<<4;k=c[e+26992>>2]<<4>>k;l=u&7;N=(l|0)==0?0:-3;O=(A&7|0)==0?0:-3;if((!((x|0)<(0-N|0)|(B|0)<(0-O|0))?(x+16|0)<=(N+y|0):0)?(B+16|0)<=(k+O|0):0){v=0;y=F}else{O=f+27792|0;v=2<<P;qc[c[e+8>>2]&3](c[O>>2]|0,z+(0-v)+(0-(F<<1))|0,F,F,21,21,x+-2|0,B+-2|0,y,k);y=c[U>>2]|0;z=(c[O>>2]|0)+v+(y<<1)|0;v=1}x=p+(t<<2)|0;hc[c[x>>2]&1023](S,z,y);if(!h)hc[c[x>>2]&1023](S+j|0,z+j|0,c[U>>2]|0);u=u>>3;t=u<<P;y=c[T>>2]|0;x=H(y,B)|0;z=(c[f+23416+(n*1920|0)+(m*40|0)+4>>2]|0)+t+x|0;x=(c[f+23416+(n*1920|0)+(m*40|0)+8>>2]|0)+t+x|0;t=f+27792|0;if(!v){e=A<<1&6;lc[q&63](R,z,y,i,l,e);y=e}else{j=C<<3;h=e+8|0;qc[c[h>>2]&3](c[t>>2]|0,z,y,y,9,17,u,B,j,k);y=A<<1&6;lc[q&63](R,c[t>>2]|0,c[T>>2]|0,i,l,y);e=c[T>>2]|0;qc[c[h>>2]&3](c[t>>2]|0,x,e,e,9,17,u,B,j,k);x=c[t>>2]|0}lc[q&63](Q,x,c[T>>2]|0,i,l,y);lc[E&63](S,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(m<<4)+(n<<3)>>2]|0,c[f+912+(m<<4)+(n<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+892|0;lc[D&63](R,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(m<<5)+(n<<4)>>2]|0,c[f+1680+(m<<5)+(n<<4)+4>>2]|0);lc[D&63](Q,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(m<<5)+(n<<4)+8>>2]|0,c[f+1680+(m<<5)+(n<<4)+12>>2]|0);break}J=c[f+27788>>2]|0;K=J+(16<<P)|0;I=J+(x<<4)|0;o=d[88688+g>>0]|0;w=a[f+28272+o>>0]|0;G=a[f+28312+o>>0]|0;m=z<<3;v=m+(b[f+27952+(o<<2)>>1]|0)|0;n=y<<3;C=n+(b[f+27952+(o<<2)+2>>1]|0)|0;t=C<<2&12|v&3;x=v>>2;A=C>>2;y=(H(A,F)|0)+(x<<P)|0;y=(c[f+23416+(w*40|0)>>2]|0)+y|0;D=e+26996|0;B=c[D>>2]|0;z=B<<4;s=e+26992|0;k=c[s>>2]<<4>>k;l=v&7;E=(l|0)==0?0:-3;g=(C&7|0)==0?0:-3;if((!((x|0)<(0-E|0)|(A|0)<(0-g|0))?(x+16|0)<=(E+z|0):0)?(A+16|0)<=(k+g|0):0){z=y;u=0;y=F}else{g=f+27792|0;u=2<<P;qc[c[e+8>>2]&3](c[g>>2]|0,y+(0-u)+(0-(F<<1))|0,F,F,21,21,x+-2|0,A+-2|0,z,k);y=c[U>>2]|0;z=(c[g>>2]|0)+u+(y<<1)|0;u=1}x=p+(t<<2)|0;hc[c[x>>2]&1023](S,z,y);E=(h|0)!=0;if(!E)hc[c[x>>2]&1023](S+j|0,z+j|0,c[U>>2]|0);y=v>>3;F=y<<P;z=c[T>>2]|0;x=H(z,A)|0;t=(c[f+23416+(w*40|0)+4>>2]|0)+F+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+F+x|0;F=f+27792|0;if(!u){y=C<<1&6;lc[q&63](R,t,z,i,l,y)}else{g=B<<3;B=e+8|0;qc[c[B>>2]&3](c[F>>2]|0,t,z,z,9,17,y,A,g,k);h=C<<1&6;lc[q&63](R,c[F>>2]|0,c[T>>2]|0,i,l,h);C=c[T>>2]|0;qc[c[B>>2]&3](c[F>>2]|0,x,C,C,9,17,y,A,g,k);x=c[F>>2]|0;y=h}lc[q&63](Q,x,c[T>>2]|0,i,l,y);A=m+(b[f+28112+(o<<2)>>1]|0)|0;l=n+(b[f+28112+(o<<2)+2>>1]|0)|0;v=l<<2&12|A&3;t=A>>2;m=l>>2;y=c[U>>2]|0;z=(H(m,y)|0)+(t<<P)|0;z=(c[f+25336+(G*40|0)>>2]|0)+z|0;B=c[D>>2]|0;x=B<<4;k=c[s>>2]<<4>>c[r>>2];C=A&7;g=(C|0)==0?0:-3;h=(l&7|0)==0?0:-3;if((!((t|0)<(0-g|0)|(m|0)<(0-h|0))?(t+16|0)<=(x+g|0):0)?(m+16|0)<=(k+h|0):0)u=0;else{u=2<<P;qc[c[e+8>>2]&3](c[F>>2]|0,z+(0-u)+(0-(y<<1))|0,y,y,21,21,t+-2|0,m+-2|0,x,k);y=c[U>>2]|0;z=(c[F>>2]|0)+u+(y<<1)|0;u=1}x=p+(v<<2)|0;hc[c[x>>2]&1023](I,z,y);if(!E)hc[c[x>>2]&1023](I+j|0,z+j|0,c[U>>2]|0);t=A>>3;j=t<<P;y=c[T>>2]|0;x=H(y,m)|0;z=(c[f+25336+(G*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(G*40|0)+8>>2]|0)+j+x|0;if(!u){e=l<<1&6;lc[q&63](J,z,y,i,C,e);y=e}else{j=B<<3;h=e+8|0;qc[c[h>>2]&3](c[F>>2]|0,z,y,y,9,17,t,m,j,k);y=l<<1&6;lc[q&63](J,c[F>>2]|0,c[T>>2]|0,i,C,y);e=c[T>>2]|0;qc[c[h>>2]&3](c[F>>2]|0,x,e,e,9,17,t,m,j,k);x=c[F>>2]|0}lc[q&63](K,x,c[T>>2]|0,i,C,y);if((c[O>>2]|0)==2){e=c[f+3216+(w*384|0)+(G<<3)+((c[N>>2]&1)<<2)>>2]|0;f=64-e|0;oc[M&31](S,I,c[U>>2]|0,i,5,e,f,0);oc[L&31](R,J,c[T>>2]|0,i,5,e,f,0);oc[L&31](Q,K,c[T>>2]|0,i,5,e,f,0);break}else{oc[M&31](S,I,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(G<<4)+8>>2]|0,(c[f+912+(G<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);e=f+892|0;oc[L&31](R,J,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(G<<5)+16>>2]|0,(c[f+1680+(G<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);oc[L&31](Q,K,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(G<<5)+24>>2]|0,(c[f+1680+(G<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==37){J=c[e+25652>>2]|0;L=o<<1;I=f+21780|0;C=c[I>>2]|0;G=k+((H(C,L)|0)+(n<<1<<J))|0;M=f+21784|0;L=(H(c[M>>2]|0,L)|0)+(n<<J)|0;K=l+L|0;L=m+L|0;E=(c[f+21788>>2]<<3)+n|0;F=f+21828|0;t=c[F>>2]|0;D=(y>>t<<3)+o|0;if(v){l=d[88688+g>>0]|0;A=a[f+28272+l>>0]|0;v=(E<<3)+(b[f+27952+(l<<2)>>1]|0)|0;l=(D<<3)+(b[f+27952+(l<<2)+2>>1]|0)|0;u=l<<2&12|v&3;x=v>>2;m=l>>2;z=(H(m,C)|0)+(x<<J)|0;z=(c[f+23416+(A*40|0)>>2]|0)+z|0;n=c[e+26996>>2]|0;y=n<<4;B=c[e+26992>>2]<<4>>t;o=v&7;T=(o|0)==0?0:-3;U=(l&7|0)==0?0:-3;if((!((x|0)<(0-T|0)|(m|0)<(0-U|0))?(x+16|0)<=(T+y|0):0)?(m+16|0)<=(B+U|0):0){k=0;y=C}else{U=f+27792|0;k=2<<J;qc[c[e+8>>2]&3](c[U>>2]|0,z+(0-k)+(0-(C<<1))|0,C,C,21,21,x+-2|0,m+-2|0,y,B);y=c[I>>2]|0;z=(c[U>>2]|0)+k+(y<<1)|0;k=1}x=p+(u<<2)|0;hc[c[x>>2]&1023](G,z,y);if(!h)hc[c[x>>2]&1023](G+j|0,z+j|0,c[I>>2]|0);z=v>>3;y=z<<J;t=c[M>>2]|0;x=H(t,m)|0;u=(c[f+23416+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=l<<1&6;lc[q&63](K,u,t,i,o,y)}else{T=n<<3;R=e+8|0;qc[c[R>>2]&3](c[y>>2]|0,u,t,t,9,17,z,m,T,B);U=l<<1&6;lc[q&63](K,c[y>>2]|0,c[M>>2]|0,i,o,U);S=c[M>>2]|0;qc[c[R>>2]&3](c[y>>2]|0,x,S,S,9,17,z,m,T,B);x=c[y>>2]|0;y=U}lc[q&63](L,x,c[M>>2]|0,i,o,y);q=s;p=r}if(w|0){C=d[88688+g>>0]|0;B=a[f+28312+C>>0]|0;k=(E<<3)+(b[f+28112+(C<<2)>>1]|0)|0;C=(D<<3)+(b[f+28112+(C<<2)+2>>1]|0)|0;u=C<<2&12|k&3;x=k>>2;l=C>>2;y=c[I>>2]|0;z=(H(l,y)|0)+(x<<J)|0;z=(c[f+25336+(B*40|0)>>2]|0)+z|0;m=c[e+26996>>2]|0;t=m<<4;A=c[e+26992>>2]<<4>>c[F>>2];n=k&7;T=(n|0)==0?0:-3;U=(C&7|0)==0?0:-3;if((!((x|0)<(0-T|0)|(l|0)<(0-U|0))?(x+16|0)<=(t+T|0):0)?(l+16|0)<=(A+U|0):0)v=0;else{U=f+27792|0;v=2<<J;qc[c[e+8>>2]&3](c[U>>2]|0,z+(0-v)+(0-(y<<1))|0,y,y,21,21,x+-2|0,l+-2|0,t,A);y=c[I>>2]|0;z=(c[U>>2]|0)+v+(y<<1)|0;v=1}x=p+(u<<2)|0;hc[c[x>>2]&1023](G,z,y);if(!h)hc[c[x>>2]&1023](G+j|0,z+j|0,c[I>>2]|0);u=k>>3;y=u<<J;z=c[M>>2]|0;x=H(z,l)|0;t=(c[f+25336+(B*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(B*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!v){y=C<<1&6;lc[q&63](K,t,z,i,n,y)}else{j=m<<3;h=e+8|0;qc[c[h>>2]&3](c[y>>2]|0,t,z,z,9,17,u,l,j,A);f=C<<1&6;lc[q&63](K,c[y>>2]|0,c[M>>2]|0,i,n,f);e=c[M>>2]|0;qc[c[h>>2]&3](c[y>>2]|0,x,e,e,9,17,u,l,j,A);x=c[y>>2]|0;y=f}lc[q&63](L,x,c[M>>2]|0,i,n,y)}}while(0);return}function Mc(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;T=Nb;Nb=Nb+32|0;D=T+16|0;C=T+8|0;v=T;y=c[f+26352>>2]|0;w=c[g+21796>>2]|0;B=g+21792|0;n=c[B>>2]|0;S=c[h>>2]|0;R=S&64;A=g+25336|0;dC(f,A,(S>>>7&1)+n|0);S=(R|0)==0;i=61440;t=0;while(1){if((t|0)==2)break;l=a[g+28272+(t*40|0)+11>>0]|0;r=a[g+28272+(t*40|0)+4>>0]|0;j=a[g+28272+(t*40|0)+8>>0]|0;if(j<<24>>24==-2){p=a[g+28272+(t*40|0)+3>>0]|0;q=g+27952+(t*160|0)+12|0}else{p=j<<24>>24;q=g+27952+(t*160|0)+32|0}s=l>>>0>r>>>0?r:l;j=s>>>0>p>>>0?p:s;k=C+(t<<2)|0;c[k>>2]=j;do if((j|0)>-1){m=g+27952+(t*160|0)+44|0;o=g+27952+(t*160|0)+16|0;k=(j|0)==(l|0);j=(j|0)==(r|0);if(((j&1)+(p>>>0<=s>>>0&1)+(k&1)|0)>>>0>1){P=GM(b[m>>1]|0,b[o>>1]|0,b[q>>1]|0)|0;P=(GM(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[q+2>>1]|0)|0)<<16|P&65535;c[v+(t<<2)>>2]=P;break}if(k){c[v+(t<<2)>>2]=c[m>>2];break}if(j){c[v+(t<<2)>>2]=c[o>>2];break}else{c[v+(t<<2)>>2]=c[q>>2];break}}else{j=~(12288<<(t<<1));c[v+(t<<2)>>2]=0;c[k>>2]=-1;if(S)c[h>>2]=c[h>>2]&j;i=i&j}while(0);t=t+1|0}j=c[C>>2]|0;if((j|0)<0?(u=C+4|0,(c[u>>2]|0)<0):0){c[u>>2]=0;c[C>>2]=0;if(S)c[h>>2]=c[h>>2]|61440;r=i|61440;u=0}else{r=i;u=j}i=c[v>>2]|0;j=c[v+4>>2]|0;do if(i|R|j){t=g+25372|0;p=c[(c[t>>2]|0)+48>>2]|0;s=c[h>>2]|0;k=(s&128|0)!=0;do if(!(c[p+(w<<2)>>2]&128))if(k){n=c[B>>2]&-2;o=c[f+27e3>>2]|0;q=H(n,o)|0;q=q+(c[g+21788>>2]|0)|0;m=c[p+(q<<2)>>2]|0;c[D>>2]=m;k=c[p+(q+o<<2)>>2]|0;l=D+4|0;c[l>>2]=k;p=o<<2|2;o=y*6|0;if((k^m)&128){k=k&-129;m=m&-129;c[D>>2]=m;c[l>>2]=k}l=r|264;if(m&15|0?!((R|0)!=0|(k&15|0)==0):0){P=o;z=p;o=q;r=l;k=s|272;p=m;break}P=o;z=p;o=q;r=l;k=s|64;p=m}else{m=2;o=w;Q=36}else{if(k){l=c[g+21852>>2]|0;m=2;n=l+n|0;k=w}else{l=(c[B>>2]&-2)+(c[g+21848>>2]|0)|0;m=0;n=l;k=c[g+21788>>2]|0}o=(H(c[f+27e3>>2]|0,l)|0)+k|0;Q=36}while(0);do if((Q|0)==36){p=c[p+(o<<2)>>2]|0;c[D+4>>2]=p;c[D>>2]=p;l=r|264;k=(R|0)!=0;if(!(k|(p&15|0)==0)){P=y;z=m;r=l;k=s|264;break}if(!k?(x=p&48,x|0):0){P=y;z=m;r=l;k=s|x|256;break}P=y;z=m;r=(c[(c[f+28200>>2]|0)+72>>2]|0)==0?l+56|0:l;k=s|64}while(0);c[h>>2]=k;dC(f,A,n);q=c[t>>2]|0;l=c[(c[f+26344>>2]|0)+(o<<2)>>2]|0;k=(c[q+36>>2]|0)+(l<<2)|0;l=(c[q+40>>2]|0)+(l<<2)|0;n=o<<2;m=(c[q+68>>2]|0)+n|0;n=(c[q+72>>2]|0)+n|0;if(!z){M=(c[B>>2]&1|0)==0;N=P<<1;O=M?k:k+(N<<2)|0;N=M?l:l+(N<<2)|0;m=M?m:m+2|0;n=M?n:n+2|0}else{O=k;N=l}k=c[h>>2]|0;if((p^k)&128|0){x=r&65535;y=(u&255)*257&65535;s=c[C+4>>2]|0;w=(s&255)*257&65535;v=q+100|0;u=(u|0)>0?i:0;s=(s|0)>0?j:0;k=0;t=0;while(1){if((t|0)==4)break;q=t&1;o=t>>>1;p=(H(o,z)|0)+q|0;q=(0-q&3)+(H(o,P)|0)|0;l=g+28552+(t<<1)|0;if(!(!S?(b[l>>1]&256)==0:0)){b[l>>1]=x;r=d[88688+(t<<2)>>0]|0;Q=g+28272+r|0;b[Q>>1]=y;b[Q+8>>1]=y;Q=g+28312+r|0;b[Q>>1]=w;b[Q+8>>1]=w;do if((c[D+(o<<2)>>2]&7|0)==0?(c[v>>2]|0)==0:0){l=a[m+p>>0]|0;if(!(l<<24>>24)){Q=b[O+(q<<2)>>1]|0;if((((Q|0)>-1?Q:0-Q|0)|0)>=2){l=j;o=i;break}Q=b[O+(q<<2)+2>>1]|0;if((((Q|0)>-1?Q:0-Q|0)|0)>=2){l=j;o=i;break}}else{if(l<<24>>24>=0){l=j;o=i;break}if(a[n+p>>0]|0){l=j;o=i;break}Q=b[N+(q<<2)>>1]|0;if((((Q|0)>-1?Q:0-Q|0)|0)>=2){l=j;o=i;break}Q=b[N+(q<<2)+2>>1]|0;if((((Q|0)>-1?Q:0-Q|0)|0)>=2){l=j;o=i;break}}l=s;o=u;k=k+1|0}else{l=j;o=i}while(0);Q=g+27952+(r<<2)|0;c[Q>>2]=o;c[Q+4>>2]=o;c[Q+32>>2]=o;c[Q+36>>2]=o;Q=g+28112+(r<<2)|0;c[Q>>2]=l;c[Q+4>>2]=l;c[Q+32>>2]=l;c[Q+36>>2]=l}t=t+1|0}if(k&3|R|0)break;c[h>>2]=c[h>>2]&-41337|264;break}if(k&8|0){l=H(u&255,16843009)|0;c[g+28284>>2]=l;c[g+28292>>2]=l;c[g+28300>>2]=l;c[g+28308>>2]=l;l=c[C+4>>2]|0;h=H(l&255,16843009)|0;c[g+28324>>2]=h;c[g+28332>>2]=h;c[g+28340>>2]=h;c[g+28348>>2]=h;do if((p&7|0)==0?(c[q+100>>2]|0)==0:0){k=a[m>>0]|0;if(!(k<<24>>24)){h=b[O>>1]|0;if((((h|0)>-1?h:0-h|0)|0)>=2)break;h=b[O+2>>1]|0;if((((h|0)>-1?h:0-h|0)|0)>=2)break}else{if(k<<24>>24>=0)break;if(a[n>>0]|0)break;h=b[N>>1]|0;if((((h|0)>-1?h:0-h|0)|0)>=2)break;h=b[N+2>>1]|0;if((((h|0)>-1?h:0-h|0)|0)>=2)break;if((c[f+29696>>2]|0)>>>0<=33)break}j=(l|0)>0?j:0;i=(u|0)>0?i:0}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i;c[g+28160>>2]=j;c[g+28164>>2]=j;c[g+28168>>2]=j;c[g+28172>>2]=j;c[g+28192>>2]=j;c[g+28196>>2]=j;c[g+28200>>2]=j;c[g+28204>>2]=j;c[g+28224>>2]=j;c[g+28228>>2]=j;c[g+28232>>2]=j;c[g+28236>>2]=j;c[g+28256>>2]=j;c[g+28260>>2]=j;c[g+28264>>2]=j;c[g+28268>>2]=j;break}L=r&65535;M=(u&255)*257&65535;E=c[C+4>>2]|0;K=(E&255)*257&65535;J=(p&7|0)==0;I=q+100|0;G=(r&8|0)==0;D=(u|0)==0;E=(E|0)==0;F=P*3|0;f=f+29696|0;k=0;C=0;while(1){if((C|0)==4)break;p=C&1;q=C>>>1;A=g+28552+(C<<1)|0;if(!(!S?(b[A>>1]&256)==0:0))Q=80;do if((Q|0)==80){Q=0;b[A>>1]=L;B=C<<2;z=d[88688+B>>0]|0;r=g+27952+(z<<2)|0;c[r>>2]=i;s=r+4|0;c[s>>2]=i;t=r+32|0;c[t>>2]=i;u=r+36|0;c[u>>2]=i;v=g+28112+(z<<2)|0;c[v>>2]=j;w=v+4|0;c[w>>2]=j;x=v+32|0;c[x>>2]=j;y=v+36|0;c[y>>2]=j;o=g+28272+z|0;b[o>>1]=M;b[o+8>>1]=M;z=g+28312+z|0;b[z>>1]=K;b[z+8>>1]=K;if(J?(c[I>>2]|0)==0:0){l=a[m+C>>0]|0;o=l<<24>>24==0;if(!o){if(l<<24>>24>=0)break;if(a[n+C>>0]|0)break;if((c[f>>2]|0)>>>0<=33)break}z=o?O:N;if(!G){l=(H(F,q)|0)+(0-p&3)|0;B=b[z+(l<<2)>>1]|0;if((((B|0)>-1?B:0-B|0)|0)>=2)break;B=b[z+(l<<2)+2>>1]|0;if((((B|0)>-1?B:0-B|0)|0)>=2)break;if(D){c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0}if(E){c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0}k=k+4|0;break}q=p<<1;r=C&2147483646;l=0;p=0;while(1){if((p|0)==4)break;o=(H((p>>>1)+r|0,P)|0)+(p&1|q)|0;y=b[z+(o<<2)>>1]|0;if((((y|0)>-1?y:0-y|0)|0)<2?(y=b[z+(o<<2)+2>>1]|0,(((y|0)>-1?y:0-y|0)|0)<2):0){if(D)c[g+27952+(d[88688+(p+B)>>0]<<2)>>2]=0;if(E)c[g+28112+(d[88688+(p+B)>>0]<<2)>>2]=0;l=l+1|0}p=p+1|0}if(!(l&3))b[A>>1]=(e[A>>1]|0)+65480;k=l+k|0}}while(0);C=C+1|0}if(!(k&15|R))c[h>>2]=c[h>>2]&-41337|264}else{M=H(u&255,16843009)|0;c[g+28284>>2]=M;c[g+28292>>2]=M;c[g+28300>>2]=M;c[g+28308>>2]=M;M=H(c[C+4>>2]&255,16843009)|0;c[g+28324>>2]=M;c[g+28332>>2]=M;c[g+28340>>2]=M;c[g+28348>>2]=M;M=g+28e3|0;N=g+28032|0;O=g+28064|0;P=g+28096|0;Q=g+28160|0;R=g+28192|0;S=g+28224|0;g=g+28256|0;c[M>>2]=0;c[M+4>>2]=0;c[M+8>>2]=0;c[M+12>>2]=0;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;c[O+12>>2]=0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;c[S+12>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[h>>2]=c[h>>2]&-41337|264}while(0);Nb=T;return}function Nc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,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;Y=Nb;Nb=Nb+208|0;N=Y+200|0;L=Y+192|0;X=Y+136|0;S=Y+128|0;K=Y+120|0;I=Y+112|0;C=Y+104|0;y=Y+96|0;t=Y+88|0;q=Y+80|0;j=Y+72|0;E=Y;W=Y+164|0;i=Y+160|0;s=Y+184|0;B=Y+176|0;P=Y+168|0;Q=Y+152|0;R=b+64|0;T=c[R>>2]|0;U=c[T+24>>2]|0;V=U+24|0;if(!(((c[V>>2]|0)==0?(c[T+64>>2]|0)==0:0)?(AP(U),f=Ur(b,U)|0,(f|0)<0&(f|0)!=-541478725):0))D=4;do if((D|0)==4){O=T+80|0;if(!(c[O>>2]|0)){if(((c[V>>2]|0)==0?(c[(c[b+12>>2]|0)+16>>2]&32|0)==0:0)?(c[b+808>>2]&1|0)==0:0){f=-541478725;break}f=E;g=U;h=f+72|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if(!(c[T+96>>2]|0))f=Og(E)|0;else f=um(E)|0;w=(f|0)!=0;if(w){f=OH(c[R>>2]|0,E)|0;if((f|0)<0)break;f=Sf(b,E)|0;if((f|0)<0)break}c[W>>2]=0;x=b+808|0;if(!(c[x>>2]&1)){h=b+12|0;f=_b[c[(c[h>>2]|0)+88>>2]&7](b,e,W,E)|0;g=c[h>>2]|0;if(!(c[g+112>>2]&4)){o=U+16|0;u=c[o+4>>2]|0;v=e+120|0;c[v>>2]=c[o>>2];c[v+4>>2]=u}if(!(c[g+8>>2]|0)){if(!(c[b+180>>2]|0)){o=U+56|0;u=c[o+4>>2]|0;v=e+328|0;c[v>>2]=c[o>>2];c[v+4>>2]=u}if(!(c[g+16>>2]&2)){g=e+92|0;if(!(c[g>>2]|0)){o=b+228|0;u=c[o+4>>2]|0;v=g;c[v>>2]=c[o>>2];c[v+4>>2]=u}g=e+68|0;if(!(c[g>>2]|0))c[g>>2]=c[b+124>>2];g=e+72|0;if(!(c[g>>2]|0))c[g>>2]=c[b+128>>2];g=e+80|0;if((c[g>>2]|0)==-1){c[g>>2]=c[b+144>>2];u=h}else u=h}else u=h}else u=h}else{f=Yh(b,e,W,E)|0;u=b+12|0}v=c[W>>2]|0;a:do switch(c[(c[u>>2]|0)+8>>2]|0){case 0:{if(c[e+296>>2]&4|0){c[W>>2]=0;break a}if(v|0){G=e+104|0;F=e+120|0;F=gl(b,c[G>>2]|0,c[G+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0;G=M()|0;I=e+320|0;c[I>>2]=F;c[I+4>>2]=G}break}case 1:{if((f|0)>-1&(v|0)!=0){o=e+104|0;n=e+120|0;n=gl(b,c[o>>2]|0,c[o+4>>2]|0,c[n>>2]|0,c[n+4>>2]|0)|0;o=M()|0;g=e+320|0;c[g>>2]=n;c[g+4>>2]=o;g=e+80|0;if((c[g>>2]|0)==-1)c[g>>2]=c[b+424>>2];g=e+240|0;o=g;if((c[o>>2]|0)==0&(c[o+4>>2]|0)==0){m=b+448|0;n=c[m+4>>2]|0;o=g;c[o>>2]=c[m>>2];c[o+4>>2]=n}g=e+352|0;if(!(c[g>>2]|0))c[g>>2]=c[b+420>>2];g=e+232|0;if(!(c[g>>2]|0))c[g>>2]=c[b+416>>2]}g=ev(c[T+40>>2]|0,70,i)|0;if((g|0)!=0&(c[i>>2]|0)>9){n=c[R>>2]|0;o=H(c[n+108>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0;c[n+56>>2]=o;n=g+4|0;n=d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24;c[j>>2]=o;c[j+4>>2]=n;mx(b,48,166528,j);o=a[g+8>>0]|0;m=a[g+9>>0]|0}else{n=0;o=0;m=0}g=c[W>>2]|0;if((g|0?(c[e+296>>2]&4|0)!=0:0)?(c[b+96>>2]&536870912|0)==0:0){l=(c[R>>2]|0)+56|0;j=(c[l>>2]|0)-(c[e+76>>2]|0)|0;c[l>>2]=(j|0)>0?j:0;c[W>>2]=0}else D=49;do if(((D|0)==49?(k=(c[R>>2]|0)+56|0,p=c[k>>2]|0,(p|0)>0&(g|0)!=0):0)?(c[b+96>>2]&536870912|0)==0:0){l=e+76|0;g=c[l>>2]|0;if((g|0)<=(p|0)){c[W>>2]=0;D=p-g|0;c[k>>2]=D;c[q>>2]=D;mx(b,48,166575,q);break}q=c[e+64>>2]|0;Xp(q,q,0,p,g-p|0,c[b+420>>2]|0,c[e+80>>2]|0)|0;g=b+892|0;do if((c[g>>2]|0)!=0?(r=c[b+416>>2]|0,(r|0)!=0):0){j=c[(c[R>>2]|0)+56>>2]|0;c[s>>2]=1;c[s+4>>2]=r;c[L>>2]=c[s>>2];c[L+4>>2]=c[s+4>>2];c[N>>2]=c[g>>2];c[N+4>>2]=c[g+4>>2];j=Sy(j,((j|0)<0)<<31>>31,L,N)|0;k=M()|0;g=e+104|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){r=kP(h|0,i|0,j|0,k|0)|0;s=M()|0;t=g;c[t>>2]=r;c[t+4>>2]=s}g=e+112|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){r=kP(h|0,i|0,j|0,k|0)|0;s=M()|0;t=g;c[t>>2]=r;c[t+4>>2]=s}g=e+120|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){r=kP(h|0,i|0,j|0,k|0)|0;s=M()|0;t=g;c[t>>2]=r;c[t+4>>2]=s}g=e+336|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if((i|0)<(k|0)|(i|0)==(k|0)&h>>>0<j>>>0)break;r=iP(h|0,i|0,j|0,k|0)|0;s=M()|0;t=g;c[t>>2]=r;c[t+4>>2]=s}else D=63;while(0);if((D|0)==63)mx(b,24,166608,t);D=c[l>>2]|0;c[y>>2]=c[(c[R>>2]|0)+56>>2];c[y+4>>2]=D;mx(b,48,166658,y);D=(c[R>>2]|0)+56|0;c[l>>2]=(c[l>>2]|0)-(c[D>>2]|0);c[D>>2]=0}while(0);do if((n|0?(F=e+76|0,z=c[F>>2]|0,z>>>0>=n>>>0&(c[W>>2]|0)!=0):0)?(c[b+96>>2]&536870912|0)==0:0){if((z|0)==(n|0)){c[W>>2]=0;break}g=b+892|0;if((c[g>>2]|0)!=0?(A=c[b+416>>2]|0,(A|0)!=0):0){c[B>>2]=1;c[B+4>>2]=A;c[L>>2]=c[B>>2];c[L+4>>2]=c[B+4>>2];c[N>>2]=c[g>>2];c[N+4>>2]=c[g+4>>2];C=Sy(z-n|0,0,L,N)|0;D=M()|0;g=e+336|0;c[g>>2]=C;c[g+4>>2]=D;g=b}else{mx(b,24,166678,C);g=b}D=c[F>>2]|0;c[I>>2]=n;c[I+4>>2]=D;mx(g,48,166730,I);c[F>>2]=(c[F>>2]|0)-n}while(0);if((c[W>>2]|0?(c[b+96>>2]&536870912|0)!=0:0)?(G=AQ(e,9,10)|0,G|0):0){F=c[(c[R>>2]|0)+56>>2]|0;I=G+4|0;G=c[I>>2]|0;a[G>>0]=F;a[G+1>>0]=F>>8;a[G+2>>0]=F>>16;a[G+3>>0]=F>>24;G=(c[I>>2]|0)+4|0;a[G>>0]=n;a[G+1>>0]=n>>8;a[G+2>>0]=n>>16;a[G+3>>0]=n>>24;a[(c[I>>2]|0)+8>>0]=o;a[(c[I>>2]|0)+9>>0]=m;c[(c[R>>2]|0)+56>>2]=0}break}default:{}}while(0);if(w?(oJ(E),(f|0)==(c[E+28>>2]|0)):0)f=c[U+28>>2]|0;g=c[u>>2]|0;if((((c[g+8>>2]|0)==1?(J=T+104|0,(f|0)>-1&(c[J>>2]|0)==0):0)?(f|0)!=(c[U+28>>2]|0):0)?(c[g+16>>2]&256|0)==0:0){mx(b,24,166753,K);c[J>>2]=1}if(!(c[W>>2]|0))rv(e);if(((f|0)>-1?(c[(c[u>>2]|0)+8>>2]|0)==0:0)?(c[b+92>>2]&65536|0)==0:0)f=c[U+28>>2]|0;g=b+880|0;if((c[g>>2]|0)>0?(c[b+884>>2]|0)>0:0){c[Q>>2]=c[b+116>>2];c[Q+4>>2]=1;c[L>>2]=c[g>>2];c[L+4>>2]=c[g+4>>2];c[N>>2]=c[Q>>2];c[N+4>>2]=c[Q+4>>2];cv(P,L,N);N=c[P>>2]|0;Q=b+108|0;c[Q>>2]=c[P+4>>2];c[Q+4>>2]=N}do if(!(v|0?1:(c[(c[R>>2]|0)+64>>2]|0)==0)){if((f|0)>=0){c[O>>2]=1;break}if(!(c[x>>2]&1))g=21;else g=(c[b+800>>2]|0)+20|0;Q=T+112|0;R=c[Q>>2]|0;c[Q>>2]=R+1;if((R|0)>=(g|0)){mx(b,16,166783,S);c[O>>2]=1;f=-558323010}}while(0);g=T+92|0;c[g>>2]=(c[g>>2]|0)+f;g=U+28|0;h=c[g>>2]|0;i=(f|0)<0;if(i|(h|0)<=(f|0))AP(U);else{c[V>>2]=(c[V>>2]|0)+f;c[g>>2]=h-f;V=c[T+40>>2]|0;T=V+28|0;c[T>>2]=(c[T>>2]|0)-f;T=U+8|0;c[T>>2]=0;c[T+4>>2]=-2147483648;U=U+16|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=V+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;V=V+16|0;c[V>>2]=0;c[V+4>>2]=-2147483648}if(c[W>>2]|0?(c[e+248>>2]|0)==0:0){c[X>>2]=166859;c[X+4>>2]=166508;c[X+8>>2]=610;mx(0,0,214689,X);ba()}f=i?f:0}else f=-541478725}while(0);Nb=Y;return f|0}function Oc(a){a=a|0;var b=0,d=0,e=0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,N=0,O=0;O=Nb;Nb=Nb+2224|0;N=O+2208|0;D=O+2192|0;B=O+2176|0;A=O+2168|0;x=O+2160|0;w=O+2152|0;v=O+2144|0;u=O+2128|0;q=O+2120|0;p=O+2112|0;n=O+2104|0;m=O+2096|0;k=O+2088|0;j=O+2080|0;i=O+2072|0;h=O+2064|0;e=O+2056|0;d=O+2048|0;y=O+1024|0;z=O;Yu(a);J=a+12|0;b=c[J>>2]|0;a:do if((b|0)>11){c[d>>2]=b;mx(a,16,210114,d);b=-22}else{F=a+20|0;b=c[F>>2]|0;if((b|0)>11){c[e>>2]=b;mx(a,16,210159,e);b=-22;break}E=a+12260|0;I=a+12520|0;c[I>>2]=c[a+92>>2];G=a+11140|0;C=a+11400|0;c[C>>2]=c[a+88>>2];H=a+80|0;c[H>>2]=c[a+96>>2];r=a+104|0;o=c[r>>2]|0;r=c[r+4>>2]|0;s=a+24|0;e=s;c[e>>2]=o;c[e+4>>2]=r;e=a+112|0;L=c[e+4>>2]|0;t=a+32|0;K=t;c[K>>2]=c[e>>2];c[K+4>>2]=L;K=a+16|0;c[K>>2]=c[a+120>>2];L=a+128|0;c[L>>2]=c[a+124>>2];if((px(o,r)|0)>64){e=s;o=c[e+4>>2]|0;r=h;c[r>>2]=c[e>>2];c[r+4>>2]=o;mx(a,24,210205,h);r=s;c[r>>2]=0;c[r+4>>2]=0}r=t;if((px(c[r>>2]|0,c[r+4>>2]|0)|0)>64){h=t;o=c[h+4>>2]|0;r=i;c[r>>2]=c[h>>2];c[r+4>>2]=o;mx(a,24,210261,i);r=t;c[r>>2]=0;c[r+4>>2]=0}i=a+84|0;if(c[i>>2]|0){mx(a,16,210318,j);b=-22;break}j=a+13448|0;c[j>>2]=162180;b=c[H>>2]|0;if(!b){b=c[C>>2]|0;c[H>>2]=b;if(!b)r=16;else r=13}else r=13;if((r|0)==13){d=s;e=c[d>>2]|0;d=c[d+4>>2]|0;if(!((e|0)==0&(d|0)==0))if((b|0)==(px(e,d)|0))r=16;else{mx(a,24,210362,k);r=s;c[r>>2]=0;c[r+4>>2]=0;r=17}else r=17}if((r|0)==16){d=s;b=c[d>>2]|0;d=c[d+4>>2]|0;if((b|0)==0&(d|0)==0)r=17}if((r|0)==17){b=xD(c[H>>2]|0)|0;d=M()|0;o=s;c[o>>2]=b;c[o+4>>2]=d}h=t;e=c[h>>2]|0;h=c[h+4>>2]|0;if((e|0)==0&(h|0)==0){e=xD(c[I>>2]|0)|0;h=M()|0;d=t;c[d>>2]=e;c[d+4>>2]=h;d=s;b=c[d>>2]|0;d=c[d+4>>2]|0}if((e|0)==(b|0)&(h|0)==(d|0)?!(+f[a+64>>2]!=1.0):0)b=(c[a+11136>>2]|0)!=0;else b=1;o=a+11132|0;c[o>>2]=b&1;b=c[K>>2]|0;if((b|0)==-1){if((bQ(c[J>>2]|0)|0)<3?(bQ(c[F>>2]|0)|0)<3:0)b=6;else r=26;do if((r|0)==26){if((((bQ(c[J>>2]|0)|0)<3?(c[o>>2]|0)==0:0)?(c[a+44>>2]|0)==(c[a+40>>2]|0):0)?(c[a+48>>2]&1|0)==0:0){b=6;break}if((((((XO(c[J>>2]|0)|0)==7?(XO(c[F>>2]|0)|0)==7:0)?(c[o>>2]|0)==0:0)?(c[a+44>>2]|0)==(c[a+40>>2]|0):0)?(c[a+48>>2]&1|0)==0:0)?(c[i>>2]|0)!=1:0){b=7;break}b=(bQ(c[J>>2]|0)|0)<5;b=b?8:9}while(0);c[K>>2]=b}b=HT(b)|0;c[m>>2]=b;mx(a,48,210469,m);b=c[K>>2]|0;switch(b|0){case 9:case 8:case 11:case 7:case 6:break;default:{b=HT(b)|0;c[n>>2]=b;mx(a,16,210506,n);b=-22;break a}}PK(G,c[J>>2]|0);PK(E,c[F>>2]|0);e=a+11120|0;d=c[e>>2]|0;e=c[e+4>>2]|0;if((d|0)==0&(e|0)==-2147483648){n=a+13408|0;c[n>>2]=0;c[n+4>>2]=-2147483648;l=+f[a+11116>>2]}else{b=a+11116|0;l=+f[b>>2];if(!(l!=0.0)?+f[a+11100>>2]>=170141173319264429905852.0e15:0){f[b>>2]=1.0;l=1.0}k=c[a+44>>2]|0;k=oK(d|0,e|0,k|0,((k|0)<0)<<31>>31|0)|0;m=M()|0;n=a+13400|0;c[n>>2]=k;c[n+4>>2]=m;n=a+13408|0;c[n>>2]=k;c[n+4>>2]=m}if(l!=0.0){b=a+11100|0;if(+f[b>>2]>=170141173319264429905852.0e15)f[b>>2]=1.0000000474974513e-03;if(l>1.0001)f[a+11112>>2]=l/+(c[a+40>>2]|0)}h=a+44|0;b=c[h>>2]|0;i=a+40|0;d=c[i>>2]|0;if((b|0)==(d|0)?(c[a+48>>2]&1|0)==0:0)ec[c[(c[j>>2]|0)+4>>2]&31](a+13444|0);else r=53;if((r|0)==53?(m=a+13444|0,n=bc[c[c[j>>2]>>2]&1](c[m>>2]|0,b,d,c[a+11044>>2]|0,c[a+11048>>2]|0,c[a+11052>>2]|0,+g[a+11064>>3],c[K>>2]|0,c[a+11072>>2]|0,+g[a+11080>>3],+g[a+11088>>3],c[a+11096>>2]|0,c[a+11056>>2]|0)|0,c[m>>2]=n,(n|0)==0):0){mx(a,16,210596,p);b=-12;break}if(((c[K>>2]|0)+-6|0)>>>0>=4?(c[a+13444>>2]|0)!=0:0){mx(a,16,210628,q);b=-22}else r=59;b:do if((r|0)==59){b=c[C>>2]|0;if(!b){b=s;b=px(c[b>>2]|0,c[b+4>>2]|0)|0;c[C>>2]=b}if(!(c[H>>2]|0))c[H>>2]=b;if(!(c[I>>2]|0)){b=t;b=px(c[b>>2]|0,c[b+4>>2]|0)|0;c[I>>2]=b;b=c[C>>2]|0}e=s;d=c[e>>2]|0;e=c[e+4>>2]|0;if(!b)if((d|0)==0&(e|0)==0){mx(a,16,210729,v);b=-22;break}else{c[u>>2]=210685;c[u+4>>2]=210702;c[u+8>>2]=293;mx(0,0,214689,u);ba()}iJ(y,1024,b,d,e);d=t;iJ(z,1024,c[I>>2]|0,c[d>>2]|0,c[d+4>>2]|0);d=t;b=c[d>>2]|0;d=c[d+4>>2]|0;do if(!((b|0)==0&(d|0)==0)){v=c[I>>2]|0;if((v|0)==(px(b,d)|0))break;b=c[I>>2]|0;c[w>>2]=z;c[w+4>>2]=b;mx(a,16,210771,w);b=-22;break b}while(0);d=s;b=c[d>>2]|0;d=c[d+4>>2]|0;do if(!((b|0)==0&(d|0)==0)){w=c[H>>2]|0;if((w|0)==(px(b,d)|0))break;b=c[H>>2]|0;c[x>>2]=y;c[x+4>>2]=b;mx(a,16,210835,x);b=-22;break b}while(0);x=t;do if((c[x>>2]|0)==0&(c[x+4>>2]|0)==0)r=78;else{x=s;if((c[x>>2]|0)==0&(c[x+4>>2]|0)==0){r=78;break}d=c[H>>2]|0}while(0);do if((r|0)==78){b=c[H>>2]|0;if((b|0)==(c[I>>2]|0)){d=b;break}if(c[a+11136>>2]|0){d=b;break}c[A>>2]=y;c[A+4>>2]=z;mx(a,16,210898,A);b=-22;break b}while(0);if(!d){c[B>>2]=210981;c[B+4>>2]=210702;c[B+8>>2]=319;mx(0,0,214689,B);ba()}b=c[I>>2]|0;if(!b){c[D>>2]=210998;c[D+4>>2]=210702;c[D+8>>2]=320;mx(0,0,214689,D);ba()}k=a+11128|0;c[k>>2]=+(c[h>>2]|0)/+(c[i>>2]|0)+-1.0>+(((b|0)/(d|0)|0)+-1|0)&1;j=a+12540|0;Bk(j|0,G|0,280)|0;Bk(a+12820|0,G|0,280)|0;Bk(a+13100|0,E|0,280)|0;b=Gg(a,c[F>>2]|0,c[K>>2]|0)|0;if((b|0)<0)break;i=a+13444|0;do if(!(c[i>>2]|0)){if(c[o>>2]|0)break;if(c[a+76>>2]|0)break;if(c[L>>2]|0)break;b=lo(c[F>>2]|0,c[J>>2]|0,c[C>>2]|0,0,0)|0;c[a+13440>>2]=b;b=0;break a}while(0);b=a+76|0;D=lo(c[K>>2]|0,c[J>>2]|0,c[H>>2]|0,c[b>>2]|0,0)|0;J=a+13432|0;c[J>>2]=D;F=lo(c[F>>2]|0,c[K>>2]|0,c[I>>2]|0,0,0)|0;c[a+13436>>2]=F;if((F|0)==0|(c[J>>2]|0)==0){b=-12;break}e=a+11420|0;Bk(e|0,G|0,280)|0;h=a+11980|0;Bk(h|0,E|0,280)|0;d=a+11700|0;Bk(d|0,G|0,280)|0;do if(c[b>>2]|0){b=c[H>>2]|0;c[a+11960>>2]=b;c[a+11680>>2]=b;if(!(c[i>>2]|0))break;c[a+12800>>2]=b}while(0);do if(!(c[k>>2]|0)){b=c[I>>2]|0;c[a+11960>>2]=b;if(!(c[i>>2]|0))break;c[a+12800>>2]=b}while(0);PK(e,c[K>>2]|0);PK(d,c[K>>2]|0);PK(h,c[K>>2]|0);if(c[i>>2]|0)PK(j,c[K>>2]|0);if(c[a+12248>>2]|0){c[N>>2]=211014;c[N+4>>2]=210702;c[N+8>>2]=370;mx(0,0,214689,N);ba()}Bk(a+10480|0,h|0,280)|0;Bk(a+10760|0,h|0,280)|0;b=c[L>>2]|0;if((b|0)>64){c[a+10744>>2]=4;c[a+10756>>2]=8;f[a+140>>2]=1.0}if(!(c[o>>2]|b)){b=0;break a}b=te(a)|0;if((b|0)>=0){b=0;break a}}while(0);bV(a)}while(0);Nb=O;return b|0}function Pc(f,g,h,i,j,k,l,m,n,o,p,q,r){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,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;T=Nb;Nb=Nb+12624|0;S=T+12584|0;R=T+12576|0;N=T+12568|0;L=T+12560|0;z=T+12552|0;A=T+12544|0;v=T+12528|0;t=T+12512|0;s=T+512|0;u=T+12600|0;F=T;c[f>>2]=g;P=(r&4|0)!=0;do if(P)if((h+1|0)>>>0<1501){c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[u+8>>2]=0;K=u;O=6;break}else{c[t>>2]=191536;c[t+4>>2]=191513;c[t+8>>2]=282;mx(0,0,214689,t);ba()}else{c[f+4>>2]=0;c[f+12>>2]=0;c[f+8>>2]=0;s=XQ(h+1|0)|0;if(!s)Q=-12;else{K=f;O=6}}while(0);do if((O|0)==6){J=(o|0)!=0;if(J&(q|0)>2){c[v>>2]=191595;c[v+4>>2]=191513;c[v+8>>2]=298;mx(0,0,214689,v);ba()}G=g*3|0;I=(r&2|0)==0;y=0;t=0;while(1){if((y|0)>=(h|0)){O=39;break}u=i+(H(y,j)|0)|0;switch(k|0){case 1:{x=a[u>>0]|0;a[s+(t<<3)>>0]=x;break}case 2:{x=b[u>>1]&255;a[s+(t<<3)>>0]=x;break}case 4:{x=c[u>>2]&255;a[s+(t<<3)>>0]=x;break}default:x=a[s+(t<<3)>>0]|0}w=x&255;if((w|0)>(g|0)){if((x&255)>32|(G|0)<(w|0)){O=17;break}u=l+(H(y,m)|0)|0;switch(n|0){case 1:{u=d[u>>0]|0;v=s+(t<<3)+4|0;c[v>>2]=u;break}case 2:{u=e[u>>1]|0;v=s+(t<<3)+4|0;c[v>>2]=u;break}case 4:{u=c[u>>2]|0;v=s+(t<<3)+4|0;c[v>>2]=u;break}default:{u=s+(t<<3)+4|0;v=u;u=c[u>>2]|0}}E=uN(1,0,x&255|0)|0;D=M()|0;if(!((D|0)>0|(D|0)==0&E>>>0>u>>>0)){O=25;break}if(I)u=u<<32-w;else u=(d[148528+(u>>>8&255)>>0]|0)<<16|(d[148528+(u&255)>>0]|0)<<24|(d[148528+(u>>>16&255)>>0]|0)<<8|(d[148528+(u>>>24)>>0]|0);c[v>>2]=u;a:do if(J){u=o+(H(y,p)|0)|0;switch(q|0){case 1:{u=d[u>>0]|0;O=36;break a}case 2:{u=b[u>>1]|0;O=36;break a}case 4:{u=c[u>>2]&65535;O=36;break a}default:break a}}else{u=y&65535;O=36}while(0);if((O|0)==36){O=0;b[s+(t<<3)+2>>1]=u}t=t+1|0}y=y+1|0}if((O|0)==17){c[A>>2]=w;mx(0,16,191625,A);if(P){Q=-1;break}FV(s);Q=-1;break}else if((O|0)==25){c[z>>2]=u;c[z+4>>2]=y;mx(0,16,191656,z);if(P){Q=-1;break}FV(s);Q=-1;break}else if((O|0)==39){c[F>>2]=s;c[F+4>>2]=s+(t<<3)+-8;u=1;while(1){if(!u)break;u=u+-1|0;E=c[F+(u<<3)+4>>2]|0;v=c[F+(u<<3)>>2]|0;while(1){if(v>>>0>=E>>>0)break;A=E+-8|0;if(v>>>0>=A>>>0){O=75;break}w=E+-16|0;y=v+8|0;C=E;D=v;B=v+(C-D>>4<<3)|0;do if((FR(v,E)|0)>0)if((FR(E,B)|0)>0){z=B;U=c[z>>2]|0;z=c[z+4>>2]|0;W=v;V=c[W+4>>2]|0;x=B;c[x>>2]=c[W>>2];c[x+4>>2]=V;x=v;c[x>>2]=U;c[x+4>>2]=z;x=0;break}else{W=E;V=c[W>>2]|0;W=c[W+4>>2]|0;z=v;U=c[z+4>>2]|0;x=E;c[x>>2]=c[z>>2];c[x+4>>2]=U;x=v;c[x>>2]=V;c[x+4>>2]=W;x=0;break}else if((FR(v,B)|0)>0){W=B;V=c[W>>2]|0;W=c[W+4>>2]|0;z=v;U=c[z+4>>2]|0;x=B;c[x>>2]=c[z>>2];c[x+4>>2]=U;x=v;c[x>>2]=V;c[x+4>>2]=W;x=0}else x=1;while(0);if((FR(B,E)|0)>0){W=E;V=c[W>>2]|0;W=c[W+4>>2]|0;z=B;U=c[z+4>>2]|0;x=E;c[x>>2]=c[z>>2];c[x+4>>2]=U;x=B;c[x>>2]=V;c[x+4>>2]=W;x=0}if((v|0)==(w|0))break;W=B;V=c[W>>2]|0;W=c[W+4>>2]|0;X=A;U=c[X+4>>2]|0;z=B;c[z>>2]=c[X>>2];c[z+4>>2]=U;z=A;c[z>>2]=V;c[z+4>>2]=W;z=y;while(1){if(z>>>0>w>>>0)break;y=z;while(1){if(y>>>0>w>>>0)break;if((FR(y,A)|0)>=0)break;y=y+8|0}while(1){if(y>>>0>w>>>0)break;if((FR(w,A)|0)<=0){O=63;break}w=w+-8|0}if((O|0)==63){O=0;W=w;V=c[W>>2]|0;W=c[W+4>>2]|0;z=y;U=c[z+4>>2]|0;X=w;c[X>>2]=c[z>>2];c[X+4>>2]=U;X=y;c[X>>2]=V;c[X+4>>2]=W;y=y+8|0;w=w+-8|0}z=y}W=z;V=c[W>>2]|0;W=c[W+4>>2]|0;y=A;U=c[y+4>>2]|0;X=z;c[X>>2]=c[y>>2];c[X+4>>2]=U;X=A;c[X>>2]=V;c[X+4>>2]=W;if(x|0?(B|0)==(z|0)|(B|0)==(z+-8|0):0){x=v;while(1){if(x>>>0>=E>>>0)break;if((FR(x,x+8|0)|0)>=1)break;x=x+8|0}if((x|0)==(E|0))break}X=z;if((C-X|0)<(X-D|0)){x=E;y=z+8|0}else{x=w;y=v;w=E;v=z+8|0}c[F+(u<<3)>>2]=v;c[F+(u<<3)+4>>2]=w;E=x;v=y;u=u+1|0}if((O|0)==75?(O=0,(FR(v,E)|0)>0):0){W=E;V=c[W>>2]|0;W=c[W+4>>2]|0;D=v;U=c[D+4>>2]|0;X=E;c[X>>2]=c[D>>2];c[X+4>>2]=U;X=v;c[X>>2]=V;c[X+4>>2]=W}}y=0;while(1){if((y|0)>=(h|0)){O=110;break}u=i+(H(y,j)|0)|0;switch(k|0){case 1:{x=a[u>>0]|0;a[s+(t<<3)>>0]=x;break}case 2:{x=b[u>>1]&255;a[s+(t<<3)>>0]=x;break}case 4:{x=c[u>>2]&255;a[s+(t<<3)>>0]=x;break}default:x=a[s+(t<<3)>>0]|0}w=x&255;if(!(x<<24>>24==0|(w|0)>(g|0))){if((x&255)>32|(G|0)<(w|0)){O=88;break}u=l+(H(y,m)|0)|0;switch(n|0){case 1:{u=d[u>>0]|0;v=s+(t<<3)+4|0;c[v>>2]=u;break}case 2:{u=e[u>>1]|0;v=s+(t<<3)+4|0;c[v>>2]=u;break}case 4:{u=c[u>>2]|0;v=s+(t<<3)+4|0;c[v>>2]=u;break}default:{u=s+(t<<3)+4|0;v=u;u=c[u>>2]|0}}X=uN(1,0,x&255|0)|0;W=M()|0;if(!((W|0)>0|(W|0)==0&X>>>0>u>>>0)){O=96;break}if(I)u=u<<32-w;else u=(d[148528+(u>>>8&255)>>0]|0)<<16|(d[148528+(u&255)>>0]|0)<<24|(d[148528+(u>>>16&255)>>0]|0)<<8|(d[148528+(u>>>24)>>0]|0);c[v>>2]=u;b:do if(J){u=o+(H(y,p)|0)|0;switch(q|0){case 1:{u=d[u>>0]|0;O=107;break b}case 2:{u=b[u>>1]|0;O=107;break b}case 4:{u=c[u>>2]&65535;O=107;break b}default:break b}}else{u=y&65535;O=107}while(0);if((O|0)==107){O=0;b[s+(t<<3)+2>>1]=u}t=t+1|0}y=y+1|0}if((O|0)==88){c[L>>2]=w;mx(0,16,191625,L);if(P){Q=-1;break}FV(s);Q=-1;break}else if((O|0)==96){c[N>>2]=u;c[N+4>>2]=y;mx(0,16,191656,N);if(P){Q=-1;break}FV(s);Q=-1;break}else if((O|0)==110){u=Pf(K,g,t,s,r)|0;if(!P){FV(s);if((u|0)>=0){Q=0;break}zM(K+4|0);Q=u;break}s=c[K+8>>2]|0;t=c[K+12>>2]|0;if((s|0)!=(t|0)){c[R>>2]=s;c[R+4>>2]=t;mx(0,16,191692,R)}if((u|0)>-1){c[f>>2]=c[K>>2];c[f+4>>2]=c[K+4>>2];c[f+8>>2]=c[K+8>>2];c[f+12>>2]=c[K+12>>2];Q=0;break}else{c[S>>2]=191710;c[S+4>>2]=191513;c[S+8>>2]=341;mx(0,0,214689,S);ba()}}}}while(0);Nb=T;return Q|0}function Qc(a,b,d,e,f,h,i,j,k,l,m,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0,E=0,F=0,G=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;U=Nb;Nb=Nb+2896|0;T=U+2880|0;S=U+2864|0;R=U+2856|0;L=U+2848|0;G=U+2832|0;F=U+2816|0;y=U+2800|0;x=U+2784|0;t=U+2768|0;w=U+2752|0;v=U+2736|0;s=U+2728|0;r=U+2720|0;K=U+128|0;p=U;jq(K|0,0,2592)|0;Q=Yx(o,a,b)|0;O=Yx(o,d,e)|0;J=(O|0)==1610612736&((Q&1610612736|0)==0&0==0);N=J?3:O;O=J?0:((O|0)<0)<<31>>31;J=(Q|0)==1610612736&((N&1610612736|0)==0&0==0);P=J?3:Q;Q=J?0:((Q|0)<0)<<31>>31;a:do if(!(vI(P,Q)|0)){iJ(p,128,-1,a,b);c[r>>2]=p;mx(o,16,214336,r);a=-22}else{if(!(vI(N,O)|0)){iJ(p,128,-1,d,e);c[s>>2]=p;mx(o,16,214380,s);a=-22;break}I=P&N;J=Q&O;a=0;while(1){if((a|0)==18)break;s=uN(1,0,a|0)|0;if(!((I&s|0)==0&(J&(M()|0)|0)==0))g[K+(a*144|0)+(a<<3)>>3]=1.0;a=a+1|0}b=P&~N;do if(!((b&4|0)==0&0==0))if((N&3|0)==3&0==0){s=(P&3|0)==0&0==0;v=K+16|0;g[v>>3]=+g[v>>3]+(s?.7071067811865476:f);v=K+160|0;g[v>>3]=+g[v>>3]+(s?.7071067811865476:f);break}else{c[v>>2]=214810;c[v+4>>2]=214425;c[v+8>>2]=177;mx(0,0,214689,v);ba()}while(0);if(!((b&3|0)==0&0==0)){if((N&4|0)==0&0==0){c[w>>2]=214810;c[w+4>>2]=214425;c[w+8>>2]=186;mx(0,0,214689,w);ba()}w=K+288|0;g[w>>3]=+g[w>>3]+.7071067811865476;w=K+296|0;g[w>>3]=+g[w>>3]+.7071067811865476;if(!((P&4|0)==0&0==0))g[K+304>>3]=f*1.4142135623730951}if(!((b&256|0)==0&0==0)){do if((N&16|0)==0&0==0){if(!((N&512|0)==0&0==0)){w=K+1360|0;g[w>>3]=+g[w>>3]+.7071067811865476;w=K+1504|0;a=w;f=+g[w>>3];q=.7071067811865476;break}if((N&1|0)==0&0==0)if((N&4|0)==0&0==0){c[t>>2]=214810;c[t+4>>2]=214425;c[t+8>>2]=213;mx(0,0,214689,t);ba()}else{w=K+352|0;a=w;f=h*.7071067811865476;q=+g[w>>3];break}if((n+-1|0)>>>0>=2){f=h*.7071067811865476;w=K+64|0;g[w>>3]=f+ +g[w>>3];w=K+208|0;a=w;q=+g[w>>3];break}if((b&528|0)==0&0==0){w=K+64|0;g[w>>3]=+g[w>>3]-h;w=K+208|0;a=w;f=+g[w>>3];q=h;break}else{f=h*.7071067811865476;w=K+64|0;g[w>>3]=+g[w>>3]-f;w=K+208|0;a=w;q=+g[w>>3];break}}else{w=K+640|0;g[w>>3]=+g[w>>3]+.7071067811865476;w=K+784|0;a=w;f=+g[w>>3];q=.7071067811865476}while(0);g[a>>3]=f+q}if(!((b&16|0)==0&0==0)){b:do if((N&256|0)==0&0==0){if(!((N&512|0)==0&0==0)){a=K+1328|0;f=+g[a>>3];if((P&512|0)==0&0==0){g[a>>3]=f+1.0;x=K+1480|0;a=x;f=+g[x>>3];q=1.0;break}else{g[a>>3]=f+.7071067811865476;x=K+1480|0;a=x;f=+g[x>>3];q=.7071067811865476;break}}if((N&1|0)==0&0==0)if((N&4|0)==0&0==0){c[x>>2]=214810;c[x+4>>2]=214425;c[x+8>>2]=246;mx(0,0,214689,x);ba()}else{f=h*.7071067811865476;x=K+320|0;g[x>>3]=f+ +g[x>>3];x=K+328|0;a=x;q=+g[x>>3];break}switch(n|0){case 1:{f=h*.7071067811865476;x=K+32|0;g[x>>3]=+g[x>>3]-f;x=K+40|0;g[x>>3]=+g[x>>3]-f;x=K+176|0;g[x>>3]=f+ +g[x>>3];x=K+184|0;a=x;q=+g[x>>3];break b}case 2:{f=h*1.224744871391589;x=K+32|0;g[x>>3]=+g[x>>3]-f;q=h*.7071067811865476;x=K+40|0;g[x>>3]=+g[x>>3]-q;x=K+176|0;g[x>>3]=q+ +g[x>>3];x=K+184|0;a=x;q=+g[x>>3];break b}default:{x=K+32|0;g[x>>3]=+g[x>>3]+h;x=K+184|0;a=x;f=+g[x>>3];q=h;break b}}}else{x=K+1184|0;g[x>>3]=+g[x>>3]+.7071067811865476;x=K+1192|0;a=x;f=+g[x>>3];q=.7071067811865476}while(0);g[a>>3]=f+q}if(!((b&512|0)==0&0==0)){c:do if(!((N&16|0)==0&0==0)){a=K+648|0;h=+g[a>>3];if((P&16|0)==0&0==0){g[a>>3]=h+1.0;y=K+800|0;a=y;f=+g[y>>3];h=1.0;break}else{g[a>>3]=h+.7071067811865476;y=K+800|0;a=y;f=+g[y>>3];h=.7071067811865476;break}}else{if(!((N&256|0)==0&0==0)){y=K+1224|0;g[y>>3]=+g[y>>3]+.7071067811865476;y=K+1232|0;a=y;f=+g[y>>3];h=.7071067811865476;break}if((N&1|0)==0&0==0)if((N&4|0)==0&0==0){c[y>>2]=214810;c[y+4>>2]=214425;c[y+8>>2]=282;mx(0,0,214689,y);ba()}else{f=h*.7071067811865476;y=K+360|0;g[y>>3]=f+ +g[y>>3];y=K+368|0;a=y;h=+g[y>>3];break}switch(n|0){case 1:{f=h*.7071067811865476;y=K+72|0;g[y>>3]=+g[y>>3]-f;y=K+80|0;g[y>>3]=+g[y>>3]-f;y=K+216|0;g[y>>3]=f+ +g[y>>3];y=K+224|0;a=y;h=+g[y>>3];break c}case 2:{f=h*1.224744871391589;y=K+72|0;g[y>>3]=+g[y>>3]-f;h=h*.7071067811865476;y=K+80|0;g[y>>3]=+g[y>>3]-h;y=K+216|0;g[y>>3]=h+ +g[y>>3];y=K+224|0;a=y;h=+g[y>>3];break c}default:{y=K+72|0;g[y>>3]=+g[y>>3]+h;y=K+224|0;a=y;f=+g[y>>3];break c}}}while(0);g[a>>3]=f+h}if(!((b&64|0)==0&0==0)){if((N&1|0)==0&0==0)if((N&4|0)==0&0==0){c[F>>2]=214810;c[F+4>>2]=214425;c[F+8>>2]=293;mx(0,0,214689,F);ba()}else{z=2;D=.7071067811865476;E=2}else{z=1;D=1.0;E=0}F=K+(E*144|0)+48|0;g[F>>3]=+g[F>>3]+D;F=K+(z*144|0)+56|0;g[F>>3]=+g[F>>3]+D}if(!((b&8|0)==0&0==0)){do if((N&4|0)==0&0==0)if((N&1|0)==0&0==0){c[G>>2]=214810;c[G+4>>2]=214425;c[G+8>>2]=303;mx(0,0,214689,G);ba()}else{B=i*.7071067811865476;G=K+24|0;g[G>>3]=B+ +g[G>>3];G=K+168|0;A=G;C=+g[G>>3];break}else{G=K+312|0;A=G;B=+g[G>>3];C=i}while(0);g[A>>3]=B+C}h=0.0;a=0;s=0;while(1){if((s|0)==64)break;b=uN(1,0,s|0)|0;p=M()|0;if(!((b&N|0)==0&(p&O|0)==0)){e=s>>>0<18;r=H(a,m)|0;d=(I&b|0)!=0|(J&p|0)!=0;b=0;f=0.0;p=0;while(1){if((p|0)==64)break;G=uN(1,0,p|0)|0;if(!((G&P|0)==0&((M()|0)&Q|0)==0)){if(e&p>>>0<18)q=+g[K+(s*144|0)+(p<<3)>>3];else q=+(d&(s|0)==(p|0)&1);g[l+(b+r<<3)>>3]=q;b=b+1|0;f=f+ +u(+q)}p=p+1|0}h=h>f?h:f;a=a+1|0}s=s+1|0}K=k<0.0;h=K?-k:h;d:do if(K|h>j){h=h/j;b=0;while(1){if((b|0)==64)break d;p=H(b,m)|0;a=0;while(1){if((a|0)==64)break;K=l+(a+p<<3)|0;g[K>>3]=+g[K>>3]/h;a=a+1|0}b=b+1|0}}while(0);e:do if(k>0.0){b=0;while(1){if((b|0)==64)break e;p=H(b,m)|0;a=0;while(1){if((a|0)==64)break;K=l+(a+p<<3)|0;g[K>>3]=+g[K>>3]*k;a=a+1|0}b=b+1|0}}while(0);mx(o,48,214450,L);b=0;while(1){if((b|0)>=(px(N,O)|0)){a=0;break a}p=Gu(N,O,b)|0;p=$x(p,M()|0)|0;c[R>>2]=(p|0)==0?214472:p;mx(o,48,214474,R);p=H(b,m)|0;a=0;while(1){if((a|0)>=(px(P,Q)|0))break;L=Gu(P,Q,a)|0;L=$x(L,M()|0)|0;k=+g[l+(a+p<<3)>>3];c[S>>2]=(L|0)==0?214472:L;g[S+8>>3]=k;mx(o,48,214479,S);a=a+1|0}mx(o,48,214486,T);b=b+1|0}}while(0);Nb=U;return a|0}function Rc(a,g,h,i,j,k,l,m){a=a|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0.0,p=0,q=0,r=0.0,s=0,t=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0,Y=0,Z=0,_=0.0;X=Nb;Nb=Nb+16|0;U=X;s=l+92|0;q=c[s>>2]|0;p=1024/(q|0)|0;V=c[l+80>>2]|0;n=0;while(1){if((n|0)>=(q|0))break;q=e[V+(d[l>>0]<<1)>>1]|0;jq(g+(n<<7<<2)+(q<<2)|0,0,p-q<<2|0)|0;n=n+1|0;q=c[s>>2]|0}O=l+16|0;P=a+5408|0;Q=a+5404|0;R=h+8|0;S=h+16|0;M=g;n=0;N=0;a:while(1){if((N|0)>=(c[O>>2]|0)){p=68;break}T=d[l+20+N>>0]|0;p=0;while(1){if(p>>>0>=(d[l>>0]|0)>>>0)break;s=(c[m+(n<<2)>>2]|0)+-1|0;K=e[V+(p<<1)>>1]|0;q=M+(K<<2)|0;L=p+1|0;K=(e[V+(L<<1)>>1]|0)-K|0;b:do if(s>>>0>12){s=K<<2;p=q;q=0;while(1){if((q|0)==(T|0))break b;jq(p|0,0,s|0)|0;p=p+512|0;q=q+1|0}}else{if((s|0)==12){t=i+(n<<2)|0;s=0;while(1){if((s|0)==(T|0))break b;p=0;while(1){if((p|0)>=(K|0))break;J=(H(c[P>>2]|0,1664525)|0)+1013904223|0;c[P>>2]=J;f[q+(p<<2)>>2]=+(J|0);p=p+1|0}r=+Vb[c[(c[Q>>2]|0)+36>>2]&1](q,q,K);r=+f[t>>2]/+v(+r);gc[c[(c[Q>>2]|0)+12>>2]&7](q,q,r,K);q=q+512|0;s=s+1|0}}F=c[56336+(s<<2)>>2]|0;G=c[56496+(s<<2)>>2]|0;I=c[851936+(s<<4)+4>>2]|0;p=c[R>>2]|0;J=c[S>>2]|0;c:do switch(s>>>1&2147483647|0){case 0:{A=i+(n<<2)|0;z=0;while(1){if((z|0)==(T|0))break c;x=q;y=K;do{t=c[h>>2]|0;E=t+(p>>>3)|0;E=(IS(d[E>>0]|d[E+1>>0]<<8|d[E+2>>0]<<16|d[E+3>>0]<<24|0)|0)<<(p&7)>>>24;w=b[I+(E<<2)>>1]|0;E=b[I+(E<<2)+2>>1]|0;s=E<<16>>16;if(E<<16>>16<0){p=p+8|0;p=J>>>0>p>>>0?p:J;E=t+(p>>>3)|0;s=((IS(d[E>>0]|d[E+1>>0]<<8|d[E+2>>0]<<16|d[E+3>>0]<<24|0)|0)<<(p&7)>>>(s+32|0))+w|0;w=b[I+(s<<2)>>1]|0;s=b[I+(s<<2)+2>>1]|0}p=p+s|0;p=J>>>0>p>>>0?p:J;x=yD(x,F,e[G+(w<<1)>>1]|0,A)|0;y=y+-4|0}while((y|0)!=0);q=q+512|0;z=z+1|0}}case 1:{B=i+(n<<2)|0;A=0;while(1){if((A|0)==(T|0))break c;y=q;z=K;do{t=c[h>>2]|0;s=t+(p>>>3)|0;s=(IS(d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24|0)|0)<<(p&7);E=s>>>24;x=b[I+(E<<2)>>1]|0;E=b[I+(E<<2)+2>>1]|0;w=E<<16>>16;if(E<<16>>16<0){p=p+8|0;p=J>>>0>p>>>0?p:J;s=t+(p>>>3)|0;s=(IS(d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24|0)|0)<<(p&7);t=(s>>>(w+32|0))+x|0;w=b[I+(t<<2)+2>>1]|0;t=b[I+(t<<2)>>1]|0}else t=x;p=p+w|0;D=e[G+(t<<1)>>1]|0;E=D>>>8&15;p=E+(J>>>0>p>>>0?p:J)|0;p=J>>>0>p>>>0?p:J;y=ss(y,F,D,(E|0)==0?0:s<<w,B)|0;z=z+-4|0}while((z|0)!=0);q=q+512|0;A=A+1|0}}case 2:{A=i+(n<<2)|0;z=0;while(1){if((z|0)==(T|0))break c;x=K;y=q;do{t=c[h>>2]|0;E=t+(p>>>3)|0;E=(IS(d[E>>0]|d[E+1>>0]<<8|d[E+2>>0]<<16|d[E+3>>0]<<24|0)|0)<<(p&7)>>>24;s=b[I+(E<<2)>>1]|0;E=b[I+(E<<2)+2>>1]|0;w=E<<16>>16;if(E<<16>>16<0){p=p+8|0;p=J>>>0>p>>>0?p:J;E=t+(p>>>3)|0;s=((IS(d[E>>0]|d[E+1>>0]<<8|d[E+2>>0]<<16|d[E+3>>0]<<24|0)|0)<<(p&7)>>>(w+32|0))+s|0;w=b[I+(s<<2)+2>>1]|0;s=b[I+(s<<2)>>1]|0}p=p+w|0;p=J>>>0>p>>>0?p:J;y=XL(y,F,e[G+(s<<1)>>1]|0,A)|0;x=x+-2|0}while((x|0)!=0);q=q+512|0;z=z+1|0}}case 4:case 3:{B=i+(n<<2)|0;A=0;while(1){if((A|0)==(T|0))break c;y=K;z=q;do{t=c[h>>2]|0;s=t+(p>>>3)|0;s=(IS(d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24|0)|0)<<(p&7);E=s>>>24;x=b[I+(E<<2)>>1]|0;E=b[I+(E<<2)+2>>1]|0;w=E<<16>>16;if(E<<16>>16<0){p=p+8|0;p=J>>>0>p>>>0?p:J;s=t+(p>>>3)|0;s=(IS(d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24|0)|0)<<(p&7);t=(s>>>(w+32|0))+x|0;w=b[I+(t<<2)+2>>1]|0;t=b[I+(t<<2)>>1]|0}else t=x;p=w+p|0;E=e[G+(t<<1)>>1]|0;D=E>>>8&15;p=D+(J>>>0>p>>>0?p:J)|0;p=J>>>0>p>>>0?p:J;z=IC(z,F,E,(D|0)==0?0:s<<w>>>(32-D|0)<<(E>>>12),B)|0;y=y+-2|0}while((y|0)!=0);q=q+512|0;A=A+1|0}}default:{E=i+(n<<2)|0;C=0;while(1){if(C>>>0>=T>>>0)break c;D=c[h>>2]|0;B=K;s=q;do{x=D+(p>>>3)|0;x=(IS(d[x>>0]|d[x+1>>0]<<8|d[x+2>>0]<<16|d[x+3>>0]<<24|0)|0)<<(p&7);A=x>>>24;w=b[I+(A<<2)>>1]|0;A=b[I+(A<<2)+2>>1]|0;t=A<<16>>16;if(A<<16>>16<0){p=p+8|0;p=J>>>0>p>>>0?p:J;x=D+(p>>>3)|0;x=(IS(d[x>>0]|d[x+1>>0]<<8|d[x+2>>0]<<16|d[x+3>>0]<<24|0)|0)<<(p&7);w=(x>>>(t+32|0))+w|0;t=b[I+(w<<2)+2>>1]|0;w=b[I+(w<<2)>>1]|0}p=t+p|0;p=J>>>0>p>>>0?p:J;d:do if(!w){c[s>>2]=0;c[s+4>>2]=0;s=s+8|0}else{y=e[G+(w<<1)>>1]|0;z=y>>>12;A=y>>>8;w=32-z|0;p=z+p|0;z=0;x=x<<t>>>w<<w;p=J>>>0>p>>>0?p:J;while(1){if(z>>>0>=2)break d;if(!(1<<z&A)){t=c[F+((y&15)<<2)>>2]|0;c[s>>2]=t|x&-2147483648;t=(t|0)!=0&1}else{t=D+(p>>>3)|0;t=(IS(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24|0)|0)<<(p&7);Z=~t;w=t>>>0<4294901760;Z=w?Z>>>16:Z;w=w?16:0;Y=(Z&65280|0)==0;w=31-(d[91680+(Y?Z:Z>>>8)>>0]|0)-(Y?w:w|8)|0;if(w>>>0>8){p=66;break a}Y=w+1|0;p=Y+p|0;Z=w+4|0;p=(J>>>0>p>>>0?p:J)+Z|0;c[s>>2]=c[904448+((t<<Y>>>(28-w|0))+(1<<Z)<<2)>>2]|x&-2147483648;p=J>>>0>p>>>0?p:J;t=1}z=z+1|0;x=x<<t;y=y>>>4;s=s+4|0}}while(0);B=B+-2|0}while((B|0)!=0);gc[c[(c[Q>>2]|0)+12>>2]&7](q,q,+f[E>>2],K);q=q+512|0;C=C+1|0}}}while(0);c[R>>2]=p}while(0);p=L;n=n+1|0}M=M+(T<<7<<2)|0;N=N+1|0}e:do if((p|0)==66){mx(c[a+4>>2]|0,16,188698,U);n=-1094995529}else if((p|0)==68)if(!j)n=0;else{t=c[k>>2]|0;s=0;n=0;while(1){if((s|0)>=(t|0)){n=0;break e}q=c[k+8+(s<<2)>>2]|0;w=g+(q<<2)|0;r=+f[w>>2];while(1){p=n+1|0;if((q|0)<(e[V+(p<<1)>>1]|0))break;else n=p}if((c[m+(n<<2)>>2]|0)!=13?(W=+f[i+(n<<2)>>2],W!=0.0):0){o=+(0-(c[k+24+(s<<2)>>2]|0)|0);if(r!=0.0){r=r/W;_=r/+v(+(+v(+(+u(+r)))));o=_+(r>0.0?-o:o)}_=W*(o*+$s(+u(+o)));f[w>>2]=_}s=s+1|0}}while(0);Nb=X;return n|0}function Sc(a,b){a=a|0;b=b|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0.0,l=0,m=0,n=0.0,o=0.0,p=0,q=0.0,s=0;s=Nb;Nb=Nb+16|0;i=s;a:do switch(c[b>>2]|0){case 0:{e=+g[b+8>>3];break}case 1:{e=+g[b+8>>3]*+g[(c[a+12>>2]|0)+(c[b+16>>2]<<3)>>3];break}case 2:{o=+g[b+8>>3];p=c[b+16>>2]|0;q=+Sc(a,c[b+20>>2]|0);q=o*+Rb[p&15](q);Nb=s;return +q}case 3:{o=+g[b+8>>3];m=c[b+16>>2]|0;p=c[a+36>>2]|0;q=+Sc(a,c[b+20>>2]|0);q=o*+Sb[m&0](p,q);Nb=s;return +q}case 4:{n=+g[b+8>>3];m=c[b+16>>2]|0;p=c[a+36>>2]|0;o=+Sc(a,c[b+20>>2]|0);q=+Sc(a,c[b+24>>2]|0);q=n*+Tb[m&0](p,o,q);Nb=s;return +q}case 5:{q=1.0/(+E(+(+Sc(a,c[b+20>>2]|0)*4.0))+1.0);Nb=s;return +q}case 6:{q=+Sc(a,c[b+20>>2]|0);q=+E(+(q*q*-.5))/2.5066282746310002;Nb=s;return +q}case 7:{q=+g[b+8>>3];p=c[a+48>>2]|0;a=~~+Sc(a,c[b+20>>2]|0);a=(a|0)<9?a:9;Nb=s;return +(q*+g[p+(((a|0)>0?a:0)<<3)>>3])}case 8:{q=+g[b+8>>3];a=mP(+Sc(a,c[b+20>>2]|0))|0;p=(M()|0)&2147483647;Nb=s;return +(q*+((p>>>0>2146435072|(p|0)==2146435072&a>>>0>0)&1))}case 9:{q=+g[b+8>>3]*+((mP(+Sc(a,c[b+20>>2]|0))|0)==0&((M()|0)&2147483647|0)==2146435072&1);Nb=s;return +q}case 27:{q=+g[b+8>>3]*+t(+(+Sc(a,c[b+20>>2]|0)));Nb=s;return +q}case 28:{q=+g[b+8>>3]*+G(+(+Sc(a,c[b+20>>2]|0)));Nb=s;return +q}case 29:{q=+g[b+8>>3]*+sb(+(+Sc(a,c[b+20>>2]|0)));Nb=s;return +q}case 30:{q=+g[b+8>>3]*+gU(+(+Sc(a,c[b+20>>2]|0)));Nb=s;return +q}case 31:{q=+g[b+8>>3]*+v(+(+Sc(a,c[b+20>>2]|0)));Nb=s;return +q}case 32:{q=+g[b+8>>3]*+(+Sc(a,c[b+20>>2]|0)==0.0&1);Nb=s;return +q}case 36:{h=+g[b+8>>3];if(!(+Sc(a,c[b+20>>2]|0)!=0.0)){f=c[b+28>>2]|0;if(!f)e=0.0;else e=+Sc(a,f)}else e=+Sc(a,c[b+24>>2]|0);e=h*e;break}case 37:{h=+g[b+8>>3];if(+Sc(a,c[b+20>>2]|0)!=0.0){f=c[b+28>>2]|0;if(!f)e=0.0;else e=+Sc(a,f)}else e=+Sc(a,c[b+24>>2]|0);e=h*e;break}case 42:{f=b+20|0;e=+Sc(a,c[f>>2]|0);h=+Sc(a,c[b+24>>2]|0);j=+Sc(a,c[b+28>>2]|0);p=mP(h)|0;m=(M()|0)&2147483647;if((!(m>>>0>2146435072|(m|0)==2146435072&p>>>0>0)?(p=mP(j)|0,m=(M()|0)&2147483647,!(m>>>0>2146435072|(m|0)==2146435072&p>>>0>0)):0)?(p=mP(e)|0,m=(M()|0)&2147483647,!(h>j|(m>>>0>2146435072|(m|0)==2146435072&p>>>0>0))):0){o=+g[b+8>>3];q=+Sc(a,c[f>>2]|0);Nb=s;return +(o*(q<h?h:q>j?j:q))}else e=r;break}case 41:{e=+Sc(a,c[b+20>>2]|0);h=+g[b+8>>3];if(!(e>=+Sc(a,c[b+24>>2]|0)))e=0.0;else e=+(e<=+Sc(a,c[b+28>>2]|0)&1);e=h*e;break}case 44:{q=+Sc(a,c[b+20>>2]|0);q=q+(+Sc(a,c[b+24>>2]|0)-q)*+Sc(a,c[b+28>>2]|0);Nb=s;return +q}case 38:{e=+Sc(a,c[b+20>>2]|0);f=c[b+24>>2]|0;if(!f)f=32;else f=~~+Sc(a,f);g[i>>3]=e;mx(a,f,210059,i);break}case 33:{p=~~+Sc(a,c[b+20>>2]|0);p=(p|0)<9?p:9;a=(c[a+48>>2]|0)+(((p|0)>0?p:0)<<3)|0;q=+g[a>>3];p=mP(q)|0;m=(M()|0)&2147483647;q=+((kP(oK(~~q>>>0|0,(+u(q)>=1.0?(q>0.0?~~+I(+t(q/4294967296.0),4294967295.0)>>>0:~~+G((q-+(~~q>>>0))/4294967296.0)>>>0):0)|0,1664525,0)|0,M()|0,1013904223,0)|0)>>>0)+4294967296.0*+((M()|0)>>>0);q=m>>>0>2146435072|(m|0)==2146435072&p>>>0>0?1013904223.0:q;g[a>>3]=q;Nb=s;return +(+g[b+8>>3]*(q*5.421010862427522e-20))}case 24:{i=b+20|0;f=b+24|0;e=r;while(1){if(!(+Sc(a,c[i>>2]|0)!=0.0))break a;e=+Sc(a,c[f>>2]|0)}}case 25:{k=+Sc(a,c[b+24>>2]|0);f=c[b+28>>2]|0;if(!f)m=0;else{m=~~+Sc(a,f);m=(m|0)<9?m:9;m=(m|0)>0?m:0}l=a+48|0;n=+g[(c[l>>2]|0)+(m<<3)>>3];i=b+20|0;h=1.0;e=0.0;f=0;while(1){if(f>>>0>=1e3)break;g[(c[l>>2]|0)+(m<<3)>>3]=+(f|0);q=+Sc(a,c[i>>2]|0);j=e+h*q;if(q!=0.0&e==j){e=j;break}p=f+1|0;h=h*(k/+(p|0));e=j;f=p}g[(c[l>>2]|0)+(m<<3)>>3]=n;break}case 26:{p=a+48|0;q=+g[c[p>>2]>>3];o=+Sc(a,c[b+24>>2]|0);l=b+20|0;n=1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;h=-1.0;e=-1.0;i=-1;while(1){if((i|0)>=1024){k=n;break}do if((i|0)>=255){k=o*+w(.9,+(+(i+-255|0)));f=c[p>>2]|0;k=(i&1|0)==0?k:-k;g[f>>3]=k;if(!(i&2)){g[f>>3]=h+k;break}else{g[f>>3]=e+k;break}}else g[c[p>>2]>>3]=o*+(d[148528+(i&255)>>0]|0)/255.0;while(0);k=+Sc(a,c[l>>2]|0);if(k<=0.0&k>j){j=k;e=+g[c[p>>2]>>3]}if(k>=0.0&k<n)h=+g[c[p>>2]>>3];else k=n;if(e>=0.0&h>=0.0){m=62;break}else{n=k;i=i+1|0}}b:do if((m|0)==62){f=0;while(1){if(f>>>0>=1e3)break b;o=(e+h)*.5;g[c[p>>2]>>3]=o;if(e==o|h==o)break b;n=+Sc(a,c[l>>2]|0);if(n<=0.0)e=+g[c[p>>2]>>3];if(n>=0.0)h=+g[c[p>>2]>>3];b=mP(n)|0;m=(M()|0)&2147483647;if(m>>>0>2146435072|(m|0)==2146435072&b>>>0>0){h=n;e=n;break}else f=f+1|0}}while(0);g[c[p>>2]>>3]=q;e=k>-j?e:h;break}default:{e=+Sc(a,c[b+20>>2]|0);h=+Sc(a,c[b+24>>2]|0);do switch(c[b>>2]|0){case 10:{e=(e-h*+t(+(e/h)))*+g[b+8>>3];break a}case 35:{e=+g[b+8>>3]*(+((Ii(~~e>>>0,+u(e)>=1.0?(e>0.0?~~+I(+t(e/4294967296.0),4294967295.0)>>>0:~~+G((e-+(~~e>>>0))/4294967296.0)>>>0):0,~~h>>>0,+u(h)>=1.0?(h>0.0?~~+I(+t(h/4294967296.0),4294967295.0)>>>0:~~+G((h-+(~~h>>>0))/4294967296.0)>>>0):0)|0)>>>0)+4294967296.0*+(M()|0));break a}case 11:{e=(e>h?e:h)*+g[b+8>>3];break a}case 12:{e=(e<h?e:h)*+g[b+8>>3];break a}case 13:{e=(e==h?1.0:0.0)*+g[b+8>>3];break a}case 14:{e=(e>h?1.0:0.0)*+g[b+8>>3];break a}case 15:{e=(e>=h?1.0:0.0)*+g[b+8>>3];break a}case 17:{e=(e<h?1.0:0.0)*+g[b+8>>3];break a}case 16:{e=(e<=h?1.0:0.0)*+g[b+8>>3];break a}case 18:{e=+w(+e,+h)*+g[b+8>>3];break a}case 19:{e=e*h*+g[b+8>>3];break a}case 20:{e=e/h*+g[b+8>>3];break a}case 21:{e=(e+h)*+g[b+8>>3];break a}case 22:{e=h*+g[b+8>>3];break a}case 23:{q=+g[b+8>>3];p=~~e;p=(p|0)<9?p:9;g[(c[a+48>>2]|0)+(((p|0)>0?p:0)<<3)>>3]=h;e=h*q;break a}case 34:{e=+g[b+8>>3]*+Nk(e,h);break a}case 43:{e=+g[b+8>>3]*+D(+e,+h);break a}case 39:{a=mP(e)|0;p=(M()|0)&2147483647;if(p>>>0>2146435072|(p|0)==2146435072&a>>>0>0){e=r;break a}a=mP(h)|0;p=(M()|0)&2147483647;if(p>>>0>2146435072|(p|0)==2146435072&a>>>0>0){e=r;break a}e=+g[b+8>>3]*+(~~h&~~e|0);break a}case 40:{a=mP(e)|0;p=(M()|0)&2147483647;if(p>>>0>2146435072|(p|0)==2146435072&a>>>0>0){e=r;break a}a=mP(h)|0;p=(M()|0)&2147483647;if(p>>>0>2146435072|(p|0)==2146435072&a>>>0>0){e=r;break a}e=+g[b+8>>3]*+(~~h|~~e|0);break a}default:{e=r;break a}}while(0)}}while(0);Nb=s;return +e}function Tc(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=Nb;Nb=Nb+560|0;l=F+32|0;u=F+536|0;E=F;D=E;m=F+540|0;c[u>>2]=0;C=m+12|0;mP(e)|0;j=M()|0;if((j|0)<0){e=-e;mP(e)|0;B=1;A=214909;j=M()|0}else{B=(h&2049|0)!=0&1;A=(h&2048|0)==0?((h&1|0)==0?214910:214915):214912}do if(0==0&(j&2146435072|0)==2146435072){E=(i&32|0)!=0;j=B+3|0;ow(b,32,f,j,h&-65537);HQ(b,A,B);HQ(b,e!=e|0.0!=0.0?(E?214936:214940):E?214928:214932,3);ow(b,32,f,j,h^8192)}else{q=+gu(e,u)*2.0;j=q!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;t=i|32;if((t|0)==97){o=i&32;r=(o|0)==0?A:A+9|0;p=B|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[r>>0]|0)==45){e=-(e+(-q-e));break}else{e=q+e-e;break}}else e=q;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=Us(j,((j|0)<0)<<31>>31,C)|0;if((j|0)==(C|0)){j=m+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;n=j+-2|0;a[n>>0]=i+15;k=(g|0)<1;l=(h&8|0)==0;m=E;do{B=~~e;j=m+1|0;a[m>>0]=o|d[158208+B>>0];e=(e-+(B|0))*16.0;if((j-D|0)==1?!(l&(k&e==0.0)):0){a[j>>0]=46;m=m+2|0}else m=j}while(e!=0.0);if((g|0)!=0?(-2-D+m|0)<(g|0):0){k=C;l=n;j=g+2+k-l|0}else{k=C;l=n;j=k-D-l+m|0}C=j+p|0;ow(b,32,f,C,h);HQ(b,r,p);ow(b,48,f,C,h^65536);D=m-D|0;HQ(b,E,D);E=k-l|0;ow(b,48,j-(D+E)|0,0,0);HQ(b,n,E);ow(b,32,f,C,h^8192);j=C;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=q*268435456.0}else{e=q;j=c[u>>2]|0}z=(j|0)<0?l:l+288|0;l=z;do{x=~~e>>>0;c[l>>2]=x;l=l+4|0;e=(e-+(x>>>0))*1.0e9}while(e!=0.0);x=z;if((j|0)>0){o=z;while(1){n=(j|0)<29?j:29;j=l+-4|0;if(j>>>0>=o>>>0){m=0;do{s=uN(c[j>>2]|0,0,n|0)|0;s=kP(s|0,M()|0,m|0,0)|0;v=M()|0;m=uS(s|0,v|0,1e9,0)|0;w=oK(m|0,M()|0,1e9,0)|0;w=iP(s|0,v|0,w|0,M()|0)|0;M()|0;c[j>>2]=w;j=j+-4|0}while(j>>>0>=o>>>0);if(m){w=o+-4|0;c[w>>2]=m;m=w}else m=o}else m=o;a:do if(l>>>0>m>>>0){j=l;while(1){l=j+-4|0;if(c[l>>2]|0){l=j;break a}if(l>>>0>m>>>0)j=l;else break}}while(0);j=(c[u>>2]|0)-n|0;c[u>>2]=j;if((j|0)>0)o=m;else break}}else m=z;if((j|0)<0){g=((k+25|0)/9|0)+1|0;s=(t|0)==102;do{r=0-j|0;r=(r|0)<9?r:9;if(m>>>0<l>>>0){n=(1<<r)+-1|0;o=1e9>>>r;p=0;j=m;do{w=c[j>>2]|0;c[j>>2]=(w>>>r)+p;p=H(w&n,o)|0;j=j+4|0}while(j>>>0<l>>>0);m=(c[m>>2]|0)==0?m+4|0:m;if(p){c[l>>2]=p;l=l+4|0}}else m=(c[m>>2]|0)==0?m+4|0:m;j=s?z:m;l=(l-j>>2|0)>(g|0)?j+(g<<2)|0:l;j=(c[u>>2]|0)+r|0;c[u>>2]=j}while((j|0)<0);s=m}else s=m;if(s>>>0<l>>>0){j=(x-s>>2)*9|0;n=c[s>>2]|0;if(n>>>0>=10){m=10;do{m=m*10|0;j=j+1|0}while(n>>>0>=m>>>0)}}else j=0;v=(t|0)==103;w=(k|0)!=0;m=k-((t|0)==102?0:j)+((w&v)<<31>>31)|0;if((m|0)<(((l-x>>2)*9|0)+-9|0)){u=m+9216|0;m=(u|0)/9|0;g=z+4+(m+-1024<<2)|0;m=u-(m*9|0)|0;if((m|0)<8){n=10;while(1){n=n*10|0;if((m|0)<7)m=m+1|0;else break}}else n=10;p=c[g>>2]|0;m=(p>>>0)/(n>>>0)|0;r=p-(H(m,n)|0)|0;o=(g+4|0)==(l|0);if(!(o&(r|0)==0)){q=(m&1|0)==0?9007199254740992.0:9007199254740994.0;u=n>>>1;e=r>>>0<u>>>0?.5:o&(r|0)==(u|0)?1.0:1.5;if(B){u=(a[A>>0]|0)==45;e=u?-e:e;q=u?-q:q}m=p-r|0;c[g>>2]=m;if(q+e!=q){u=m+n|0;c[g>>2]=u;if(u>>>0>999999999){n=g;j=s;while(1){m=n+-4|0;c[n>>2]=0;if(m>>>0<j>>>0){j=j+-4|0;c[j>>2]=0}u=(c[m>>2]|0)+1|0;c[m>>2]=u;if(u>>>0>999999999)n=m;else{n=j;break}}}else{m=g;n=s}j=(x-n>>2)*9|0;p=c[n>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else{m=g;n=s}}else{m=g;n=s}u=m+4|0;l=l>>>0>u>>>0?u:l}else n=s;g=0-j|0;b:do if(l>>>0>n>>>0)while(1){m=l+-4|0;if(c[m>>2]|0){u=l;t=1;break b}if(m>>>0>n>>>0)l=m;else{u=m;t=0;break}}else{u=l;t=0}while(0);do if(v){k=k+((w^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){o=i+-1|0;k=k+-1-j|0}else{o=i+-2|0;k=k+-1|0}if(!(h&8)){if(t?(y=c[u+-4>>2]|0,(y|0)!=0):0)if(!((y>>>0)%10|0)){m=0;l=10;do{l=l*10|0;m=m+1|0}while(!((y>>>0)%(l>>>0)|0|0))}else m=0;else m=9;l=((u-x>>2)*9|0)+-9|0;if((o|32|0)==102){i=l-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=l+j-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else o=i;while(0);s=(k|0)!=0;p=s?1:h>>>3&1;r=(o|32|0)==102;if(r){v=0;j=(j|0)>0?j:0}else{l=(j|0)<0?g:j;l=Us(l,((l|0)<0)<<31>>31,C)|0;m=C;if((m-l|0)<2)do{l=l+-1|0;a[l>>0]=48}while((m-l|0)<2);a[l+-1>>0]=(j>>31&2)+43;j=l+-2|0;a[j>>0]=o;v=j;j=m-j|0}j=B+1+k+p+j|0;ow(b,32,f,j,h);HQ(b,A,B);ow(b,48,f,j,h^65536);if(r){p=n>>>0>z>>>0?z:n;r=E+9|0;n=r;o=E+8|0;m=p;do{l=Us(c[m>>2]|0,0,r)|0;if((m|0)==(p|0)){if((l|0)==(r|0)){a[o>>0]=48;l=o}}else if(l>>>0>E>>>0){jq(E|0,48,l-D|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}HQ(b,l,n-l|0);m=m+4|0}while(m>>>0<=z>>>0);if(!((h&8|0)==0&(s^1)))HQ(b,214944,1);if(m>>>0<u>>>0&(k|0)>0)while(1){l=Us(c[m>>2]|0,0,r)|0;if(l>>>0>E>>>0){jq(E|0,48,l-D|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}HQ(b,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0<u>>>0&(k|0)>9)){k=l;break}else k=l}ow(b,48,k+9|0,9,0)}else{u=t?u:n+4|0;if(n>>>0<u>>>0&(k|0)>-1){g=E+9|0;s=(h&8|0)==0;t=g;p=0-D|0;r=E+8|0;o=n;do{l=Us(c[o>>2]|0,0,g)|0;if((l|0)==(g|0)){a[r>>0]=48;l=r}do if((o|0)==(n|0)){m=l+1|0;HQ(b,l,1);if(s&(k|0)<1){l=m;break}HQ(b,214944,1);l=m}else{if(l>>>0<=E>>>0)break;jq(E|0,48,l+p|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}while(0);D=t-l|0;HQ(b,l,(k|0)>(D|0)?D:k);k=k-D|0;o=o+4|0}while(o>>>0<u>>>0&(k|0)>-1)}ow(b,48,k+18|0,18,0);HQ(b,v,C-v|0)}ow(b,32,f,j,h^8192)}while(0);Nb=F;return ((j|0)<(f|0)?f:j)|0}function Uc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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=Nb;Nb=Nb+128|0;t=I+24|0;y=I+16|0;v=I+8|0;u=I;H=I+48|0;s=I+40|0;E=I+32|0;F=c[b>>2]|0;h=H;i=h+72|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if((g|0)>3)p=(Zx(171115,f,4)|0)==0;else p=0;w=b+32|0;c[w>>2]=1;x=b+224|0;c[x>>2]=0;D=b+312|0;c[D>>2]=0;C=F+1388|0;ZI(C);c[F+1572>>2]=-1;a:do if(g|0){c[s>>2]=0;m=F+1636|0;z=H+28|0;n=H+12|0;o=H+8|0;B=H+68|0;A=H+48|0;q=F+40|0;r=H+16|0;i=(c[F+1632>>2]|0)==0?g:0;h=0;b:while(1){while(1){if((h|0)>=(i|0)){G=7;break}h=zI(f,g,h,i)|0;if((h|0)>=(g|0)){G=112;break b}if((h|0)<(i|0)){G=11;break}}if((G|0)==7){G=0;c[s>>2]=h;h=Yt(c[m>>2]|0,f,g,s,e)|0;if((h|0)<0){G=113;break}k=c[s>>2]|0;l=k+h|0;h=k}else if((G|0)==11){G=0;c[s>>2]=h;l=i}i=l-h|0;k=f+h|0;J=a[k>>0]|0;j=J&255;c:do switch(J&31){case 5:case 1:if((j&31|0)==5|(j&96|0)==0){i=(i|0)<60?i:60;break c}else{i=(i|0)<1e3?i:1e3;break c}default:{}}while(0);i=Xe(k,i,H,1)|0;if((i|0)<0){G=113;break}h=i+h|0;c[s>>2]=h;if((NQ(z,c[n>>2]|0,c[o>>2]|0)|0)<0)break;RN(z)|0;J=SG(z,2)|0;c[B>>2]=J;J=SG(z,5)|0;c[A>>2]=J;switch(J|0){case 5:{G=23;break b}case 1:{G=24;break b}case 7:{Yc(z,e,q,0)|0;break}case 8:{Gd(z,e,q,c[r>>2]|0)|0;break}case 6:{gh(C,z,q,e)|0;break}default:{}}i=l}if((G|0)==23){c[x>>2]=1;c[F+1384>>2]=0;c[F+1380>>2]=0;c[F+1372>>2]=0;c[F+1368>>2]=0;G=24}else if((G|0)==112){c[s>>2]=h;G=113}do if((G|0)==24){cH(z)|0;J=171055+(((cE(z)|0)>>>0)%5|0)|0;c[w>>2]=d[J>>0];if((c[F+1428>>2]|0)>-1)c[x>>2]=1;h=sq(z)|0;if(h>>>0>255){c[u>>2]=h;mx(e,16,200521,u);break}i=F+168+(h<<2)|0;if(!(c[i>>2]|0)){c[v>>2]=h;mx(e,16,200545,v);break}J=F+1192|0;nT(J);j=F+1196|0;nT(j);l=F+1200|0;c[l>>2]=0;k=F+1204|0;c[k>>2]=0;h=rI(c[i>>2]|0)|0;c[J>>2]=h;if(h|0){h=c[h+4>>2]|0;c[l>>2]=h;h=c[h>>2]|0;i=c[F+40+(h<<2)>>2]|0;if(!i){c[y>>2]=h;mx(e,16,200577,y);break}h=rI(i)|0;c[j>>2]=h;if(h|0){n=c[h+4>>2]|0;c[k>>2]=n;if(((c[n+48>>2]|0)<2?(c[(c[l>>2]|0)+20>>2]|0)>>>0<2:0)?(c[w>>2]|0)==1:0)c[x>>2]=1;h=SG(z,c[n+20>>2]|0)|0;m=F+1344|0;o=F+1364|0;c[o>>2]=h;h=c[n+56>>2]<<4;c[b+328>>2]=h;i=c[n+60>>2]<<4;c[b+332>>2]=i;y=h-(c[n+84>>2]|0)-(c[n+80>>2]|0)|0;j=b+320|0;c[j>>2]=y;J=i-(c[n+88>>2]|0)-(c[n+92>>2]|0)|0;k=b+324|0;c[k>>2]=J;if((y|0)<1|(J|0)<1){c[j>>2]=h;c[k>>2]=i}d:do switch(c[n+1184>>2]|0){case 9:{h=c[n+12>>2]|0;if((h|0)==3){c[b+336>>2]=76;break d}i=b+336|0;if((h|0)==2){c[i>>2]=80;break d}else{c[i>>2]=70;break d}}case 10:{h=c[n+12>>2]|0;if((h|0)==3){c[b+336>>2]=78;break d}i=b+336|0;if((h|0)==2){c[i>>2]=74;break d}else{c[i>>2]=72;break d}}case 8:{h=c[n+12>>2]|0;if((h|0)==3){c[b+336>>2]=5;break d}i=b+336|0;if((h|0)==2){c[i>>2]=4;break d}else{c[i>>2]=0;break d}}default:c[b+336>>2]=-1}while(0);J=dI(n)|0;c[e+828>>2]=J;c[e+832>>2]=c[n+8>>2];if((c[n+64>>2]|0)==0?(RN(z)|0)!=0:0)h=(RN(z)|0)+1|0;else h=3;c[F+1644>>2]=h;if((c[A>>2]|0)==5)cH(z)|0;i=n+24|0;h=c[i>>2]|0;if(!h){J=SG(z,c[n+28>>2]|0)|0;c[m>>2]=J;if((c[(c[l>>2]|0)+8>>2]|0)==1?(c[F+1644>>2]|0)==3:0){J=Hq(z)|0;c[F+1352>>2]=J}h=c[i>>2]|0}if((((h|0)==1?(c[n+32>>2]|0)==0:0)?(J=Hq(z)|0,c[F+1356>>2]=J,(c[(c[l>>2]|0)+8>>2]|0)==1):0)?(c[F+1644>>2]|0)==3:0){J=Hq(z)|0;c[F+1360>>2]=J}l=E+4|0;c[l>>2]=2147483647;c[E>>2]=2147483647;k=F+1644|0;fh(E,b+316|0,n,m,c[k>>2]|0,c[B>>2]|0)|0;if(!((c[B>>2]|0)==0|(c[A>>2]|0)==5)){h=Yf(b,z,e)|0;if((h|0)<0)break;if(h){h=0;i=0;j=1}else G=75}else G=75;if((G|0)==75){h=c[o>>2]|0;i=c[F+1376>>2]|0;j=0}c[F+1384>>2]=h;c[F+1380>>2]=i;if(c[B>>2]|0){if(j){c[F+1368>>2]=0;h=(c[k>>2]|0)==2?0:c[E>>2]|0}else{c[F+1368>>2]=c[F+1348>>2];h=c[m>>2]|0}c[F+1372>>2]=h}i=(c[n+1160>>2]|0)==0;e:do if(i)G=89;else{if(!(c[C>>2]|0)){G=89;break}switch(c[F+1392>>2]|0){case 2:case 1:{h=0;break e}case 4:case 3:case 0:{h=1;break e}case 6:case 5:{h=2;break e}case 7:{h=3;break e}case 8:{h=5;break e}default:{h=(c[k>>2]|0)==3&1;break e}}}while(0);if((G|0)==89)h=(c[k>>2]|0)==3&1;c[b+36>>2]=h;h=c[k>>2]|0;f:do switch(h|0){case 3:{c[D>>2]=3;do if(!i){if(!(c[C>>2]|0))break;switch(c[F+1392>>2]|0){case 5:case 3:{c[b+308>>2]=2;break f}case 6:case 4:{c[b+308>>2]=3;break f}default:{c[b+308>>2]=1;break f}}}while(0);j=c[E>>2]|0;i=c[l>>2]|0;if((j|0)<(i|0)){c[b+308>>2]=2;break f}h=b+308|0;if((j|0)>(i|0)){c[h>>2]=3;break f}else{c[h>>2]=1;break f}}case 1:{m=h;G=103;break}default:{m=2;G=103}}while(0);if((G|0)==103){c[D>>2]=m;k=c[o>>2]|0;l=F+1672|0;i=F+1676|0;g:do if((k|0)==(c[l>>2]|0)){j=c[i>>2]|0;switch(j|0){case 3:case 0:{G=109;break g}default:{}}if((j|0)==(m|0)){G=109;break}h=b+308|0;if((j|0)==1){c[h>>2]=2;break}else{c[h>>2]=3;break}}else G=109;while(0);if((G|0)==109)c[b+308>>2]=0;c[i>>2]=m;c[l>>2]=k}zM(H);break a}}}else if((G|0)==113)if(p){zM(H);break a}else{c[t>>2]=g;mx(e,16,169254,t);break}while(0);zM(H)}while(0);Nb=I;return}function Vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0;switch(b|0){case 9:{b=307;d=311;e=315;f=319;g=308;h=312;i=316;j=320;k=309;l=313;m=317;n=321;o=310;p=314;q=318;r=322;s=339;t=343;u=347;v=351;w=340;x=344;y=348;z=352;A=341;B=345;C=349;D=353;E=342;F=346;G=350;H=354;I=323;J=327;K=331;L=335;M=324;N=328;O=332;P=336;Q=325;R=329;S=333;T=337;U=326;V=330;W=334;X=338;Y=243;Z=247;_=251;$=255;aa=244;ba=248;ca=252;da=256;ea=245;fa=249;ga=253;ha=257;ia=246;ja=250;ka=254;la=258;ma=291;na=295;oa=299;pa=303;qa=292;ra=296;sa=300;ta=304;ua=293;va=297;wa=301;xa=305;ya=294;za=298;Aa=302;Ba=306;Ca=275;Da=279;Ea=283;Fa=287;Ga=276;Ha=280;Ia=284;Ja=288;Ka=277;La=281;Ma=285;Na=289;Oa=278;Pa=282;Qa=286;Ra=290;Sa=259;Ta=263;Ua=267;Va=271;Wa=260;Xa=264;Ya=268;Za=272;_a=261;$a=265;ab=269;bb=273;cb=262;db=266;eb=270;fb=274;break}case 10:{b=419;d=423;e=427;f=431;g=420;h=424;i=428;j=432;k=421;l=425;m=429;n=433;o=422;p=426;q=430;r=434;s=451;t=455;u=459;v=463;w=452;x=456;y=460;z=464;A=453;B=457;C=461;D=465;E=454;F=458;G=462;H=466;I=435;J=439;K=443;L=447;M=436;N=440;O=444;P=448;Q=437;R=441;S=445;T=449;U=438;V=442;W=446;X=450;Y=355;Z=359;_=363;$=367;aa=356;ba=360;ca=364;da=368;ea=357;fa=361;ga=365;ha=369;ia=358;ja=362;ka=366;la=370;ma=403;na=407;oa=411;pa=415;qa=404;ra=408;sa=412;ta=416;ua=405;va=409;wa=413;xa=417;ya=406;za=410;Aa=414;Ba=418;Ca=387;Da=391;Ea=395;Fa=399;Ga=388;Ha=392;Ia=396;Ja=400;Ka=389;La=393;Ma=397;Na=401;Oa=390;Pa=394;Qa=398;Ra=402;Sa=371;Ta=375;Ua=379;Va=383;Wa=372;Xa=376;Ya=380;Za=384;_a=373;$a=377;ab=381;bb=385;cb=374;db=378;eb=382;fb=386;break}case 12:{b=531;d=535;e=539;f=543;g=532;h=536;i=540;j=544;k=533;l=537;m=541;n=545;o=534;p=538;q=542;r=546;s=563;t=567;u=571;v=575;w=564;x=568;y=572;z=576;A=565;B=569;C=573;D=577;E=566;F=570;G=574;H=578;I=547;J=551;K=555;L=559;M=548;N=552;O=556;P=560;Q=549;R=553;S=557;T=561;U=550;V=554;W=558;X=562;Y=467;Z=471;_=475;$=479;aa=468;ba=472;ca=476;da=480;ea=469;fa=473;ga=477;ha=481;ia=470;ja=474;ka=478;la=482;ma=515;na=519;oa=523;pa=527;qa=516;ra=520;sa=524;ta=528;ua=517;va=521;wa=525;xa=529;ya=518;za=522;Aa=526;Ba=530;Ca=499;Da=503;Ea=507;Fa=511;Ga=500;Ha=504;Ia=508;Ja=512;Ka=501;La=505;Ma=509;Na=513;Oa=502;Pa=506;Qa=510;Ra=514;Sa=483;Ta=487;Ua=491;Va=495;Wa=484;Xa=488;Ya=492;Za=496;_a=485;$a=489;ab=493;bb=497;cb=486;db=490;eb=494;fb=498;break}case 14:{b=643;d=647;e=651;f=655;g=644;h=648;i=652;j=656;k=645;l=649;m=653;n=657;o=646;p=650;q=654;r=658;s=675;t=679;u=683;v=687;w=676;x=680;y=684;z=688;A=677;B=681;C=685;D=689;E=678;F=682;G=686;H=690;I=659;J=663;K=667;L=671;M=660;N=664;O=668;P=672;Q=661;R=665;S=669;T=673;U=662;V=666;W=670;X=674;Y=579;Z=583;_=587;$=591;aa=580;ba=584;ca=588;da=592;ea=581;fa=585;ga=589;ha=593;ia=582;ja=586;ka=590;la=594;ma=627;na=631;oa=635;pa=639;qa=628;ra=632;sa=636;ta=640;ua=629;va=633;wa=637;xa=641;ya=630;za=634;Aa=638;Ba=642;Ca=611;Da=615;Ea=619;Fa=623;Ga=612;Ha=616;Ia=620;Ja=624;Ka=613;La=617;Ma=621;Na=625;Oa=614;Pa=618;Qa=622;Ra=626;Sa=595;Ta=599;Ua=603;Va=607;Wa=596;Xa=600;Ya=604;Za=608;_a=597;$a=601;ab=605;bb=609;cb=598;db=602;eb=606;fb=610;break}default:{b=195;d=199;e=203;f=207;g=196;h=200;i=204;j=208;k=197;l=201;m=205;n=209;o=198;p=202;q=206;r=210;s=227;t=231;u=235;v=239;w=228;x=232;y=236;z=240;A=229;B=233;C=237;D=241;E=230;F=234;G=238;H=242;I=211;J=215;K=219;L=223;M=212;N=216;O=220;P=224;Q=213;R=217;S=221;T=225;U=214;V=218;W=222;X=226;Y=131;Z=135;_=139;$=143;aa=132;ba=136;ca=140;da=144;ea=133;fa=137;ga=141;ha=145;ia=134;ja=138;ka=142;la=146;ma=179;na=183;oa=187;pa=191;qa=180;ra=184;sa=188;ta=192;ua=181;va=185;wa=189;xa=193;ya=182;za=186;Aa=190;Ba=194;Ca=163;Da=167;Ea=171;Fa=175;Ga=164;Ha=168;Ia=172;Ja=176;Ka=165;La=169;Ma=173;Na=177;Oa=166;Pa=170;Qa=174;Ra=178;Sa=147;Ta=151;Ua=155;Va=159;Wa=148;Xa=152;Ya=156;Za=160;_a=149;$a=153;ab=157;bb=161;cb=150;db=154;eb=158;fb=162}}c[a>>2]=Y;c[a+4>>2]=aa;c[a+8>>2]=ea;c[a+12>>2]=ia;c[a+16>>2]=Z;c[a+20>>2]=ba;c[a+24>>2]=fa;c[a+28>>2]=ja;c[a+32>>2]=_;c[a+36>>2]=ca;c[a+40>>2]=ga;c[a+44>>2]=ka;c[a+48>>2]=$;c[a+52>>2]=da;c[a+56>>2]=ha;c[a+60>>2]=la;c[a+64>>2]=Sa;c[a+68>>2]=Wa;c[a+72>>2]=_a;c[a+76>>2]=cb;c[a+80>>2]=Ta;c[a+84>>2]=Xa;c[a+88>>2]=$a;c[a+92>>2]=db;c[a+96>>2]=Ua;c[a+100>>2]=Ya;c[a+104>>2]=ab;c[a+108>>2]=eb;c[a+112>>2]=Va;c[a+116>>2]=Za;c[a+120>>2]=bb;c[a+124>>2]=fb;c[a+128>>2]=Ca;c[a+132>>2]=Ga;c[a+136>>2]=Ka;c[a+140>>2]=Oa;c[a+144>>2]=Da;c[a+148>>2]=Ha;c[a+152>>2]=La;c[a+156>>2]=Pa;c[a+160>>2]=Ea;c[a+164>>2]=Ia;c[a+168>>2]=Ma;c[a+172>>2]=Qa;c[a+176>>2]=Fa;c[a+180>>2]=Ja;c[a+184>>2]=Na;c[a+188>>2]=Ra;c[a+192>>2]=ma;c[a+196>>2]=qa;c[a+200>>2]=ua;c[a+204>>2]=ya;c[a+208>>2]=na;c[a+212>>2]=ra;c[a+216>>2]=va;c[a+220>>2]=za;c[a+224>>2]=oa;c[a+228>>2]=sa;c[a+232>>2]=wa;c[a+236>>2]=Aa;c[a+240>>2]=pa;c[a+244>>2]=ta;c[a+248>>2]=xa;c[a+252>>2]=Ba;c[a+256>>2]=b;c[a+260>>2]=g;c[a+264>>2]=k;c[a+268>>2]=o;c[a+272>>2]=d;c[a+276>>2]=h;c[a+280>>2]=l;c[a+284>>2]=p;c[a+288>>2]=e;c[a+292>>2]=i;c[a+296>>2]=m;c[a+300>>2]=q;c[a+304>>2]=f;c[a+308>>2]=j;c[a+312>>2]=n;c[a+316>>2]=r;c[a+320>>2]=I;c[a+324>>2]=M;c[a+328>>2]=Q;c[a+332>>2]=U;c[a+336>>2]=J;c[a+340>>2]=N;c[a+344>>2]=R;c[a+348>>2]=V;c[a+352>>2]=K;c[a+356>>2]=O;c[a+360>>2]=S;c[a+364>>2]=W;c[a+368>>2]=L;c[a+372>>2]=P;c[a+376>>2]=T;c[a+380>>2]=X;c[a+384>>2]=s;c[a+388>>2]=w;c[a+392>>2]=A;c[a+396>>2]=E;c[a+400>>2]=t;c[a+404>>2]=x;c[a+408>>2]=B;c[a+412>>2]=F;c[a+416>>2]=u;c[a+420>>2]=y;c[a+424>>2]=C;c[a+428>>2]=G;c[a+432>>2]=v;c[a+436>>2]=z;c[a+440>>2]=D;c[a+444>>2]=H;return}function Wc(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;I=Nb;Nb=Nb+64|0;F=I+56|0;H=I+40|0;A=I;C=I+48|0;D=I+60|0;c[F>>2]=e;x=(d|0)!=0;y=A+40|0;z=y;A=A+39|0;B=C+4|0;l=0;e=0;n=0;a:while(1){do{do if((e|0)>-1)if((l|0)>(2147483647-e|0)){e=PV()|0;c[e>>2]=75;e=-1;break}else{e=l+e|0;break}while(0);r=c[F>>2]|0;l=a[r>>0]|0;if(!(l<<24>>24)){w=92;break a}m=r;b:while(1){switch(l<<24>>24){case 37:{w=10;break b}case 0:{l=m;break b}default:{}}v=m+1|0;c[F>>2]=v;l=a[v>>0]|0;m=v}c:do if((w|0)==10){w=0;l=m;do{if((a[m+1>>0]|0)!=37)break c;l=l+1|0;m=m+2|0;c[F>>2]=m}while((a[m>>0]|0)==37)}while(0);l=l-r|0;if(x)HQ(d,r,l)}while((l|0)!=0);v=(UU(a[(c[F>>2]|0)+1>>0]|0)|0)==0;m=c[F>>2]|0;if(!v?(a[m+2>>0]|0)==36:0){t=(a[m+1>>0]|0)+-48|0;p=1;l=3}else{t=-1;p=n;l=1}l=m+l|0;c[F>>2]=l;m=a[l>>0]|0;n=(m<<24>>24)+-32|0;if(n>>>0>31|(1<<n&75913|0)==0)o=0;else{o=0;do{o=1<<n|o;l=l+1|0;c[F>>2]=l;m=a[l>>0]|0;n=(m<<24>>24)+-32|0}while(!(n>>>0>31|(1<<n&75913|0)==0))}if(m<<24>>24==42){if((UU(a[l+1>>0]|0)|0)!=0?(G=c[F>>2]|0,(a[G+2>>0]|0)==36):0){l=G+1|0;c[i+((a[l>>0]|0)+-48<<2)>>2]=10;l=c[h+((a[l>>0]|0)+-48<<3)>>2]|0;n=1;m=G+3|0}else{if(p|0){e=-1;break}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);l=c[v>>2]|0;c[f>>2]=v+4}else l=0;n=0;m=(c[F>>2]|0)+1|0}c[F>>2]=m;v=(l|0)<0;u=v?0-l|0:l;o=v?o|8192:o;v=n}else{l=CF(F)|0;if((l|0)<0){e=-1;break}u=l;v=p;m=c[F>>2]|0}do if((a[m>>0]|0)==46){l=m+1|0;if((a[l>>0]|0)!=42){c[F>>2]=l;l=CF(F)|0;m=c[F>>2]|0;break}if(UU(a[m+2>>0]|0)|0?(E=c[F>>2]|0,(a[E+3>>0]|0)==36):0){l=E+2|0;c[i+((a[l>>0]|0)+-48<<2)>>2]=10;l=c[h+((a[l>>0]|0)+-48<<3)>>2]|0;m=E+4|0;c[F>>2]=m;break}if(v|0){e=-1;break a}if(x){s=(c[f>>2]|0)+(4-1)&~(4-1);l=c[s>>2]|0;c[f>>2]=s+4}else l=0;m=(c[F>>2]|0)+2|0;c[F>>2]=m}else l=-1;while(0);s=0;while(1){if(((a[m>>0]|0)+-65|0)>>>0>57){e=-1;break a}n=m;m=m+1|0;c[F>>2]=m;n=a[(a[n>>0]|0)+-65+(157744+(s*58|0))>>0]|0;p=n&255;if((p+-1|0)>>>0>=8)break;else s=p}if(!(n<<24>>24)){e=-1;break}q=(t|0)>-1;do if(n<<24>>24==19)if(q){e=-1;break a}else w=54;else{if(q){c[i+(t<<2)>>2]=p;q=h+(t<<3)|0;t=c[q+4>>2]|0;w=H;c[w>>2]=c[q>>2];c[w+4>>2]=t;w=54;break}if(!x){e=0;break a}sh(H,p,f,k);m=c[F>>2]|0;w=55}while(0);if((w|0)==54){w=0;if(x)w=55;else l=0}d:do if((w|0)==55){w=0;m=a[m+-1>>0]|0;m=(s|0)!=0&(m&15|0)==3?m&-33:m;n=o&-65537;t=(o&8192|0)==0?o:n;e:do switch(m|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[H>>2]>>2]=e;l=0;break d}case 1:{c[c[H>>2]>>2]=e;l=0;break d}case 2:{l=c[H>>2]|0;c[l>>2]=e;c[l+4>>2]=((e|0)<0)<<31>>31;l=0;break d}case 3:{b[c[H>>2]>>1]=e;l=0;break d}case 4:{a[c[H>>2]>>0]=e;l=0;break d}case 6:{c[c[H>>2]>>2]=e;l=0;break d}case 7:{l=c[H>>2]|0;c[l>>2]=e;c[l+4>>2]=((e|0)<0)<<31>>31;l=0;break d}default:{l=0;break d}}case 112:{m=120;l=l>>>0>8?l:8;n=t|8;w=67;break}case 88:case 120:{n=t;w=67;break}case 111:{q=H;q=PI(c[q>>2]|0,c[q+4>>2]|0,y)|0;n=z-q|0;o=0;p=214892;l=(t&8|0)==0|(l|0)>(n|0)?l:n+1|0;n=t;w=73;break}case 105:case 100:{n=H;m=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){m=iP(0,0,m|0,n|0)|0;n=M()|0;o=H;c[o>>2]=m;c[o+4>>2]=n;o=1;p=214892;w=72;break e}else{o=(t&2049|0)!=0&1;p=(t&2048|0)==0?((t&1|0)==0?214892:214894):214893;w=72;break e}}case 117:{n=H;o=0;p=214892;m=c[n>>2]|0;n=c[n+4>>2]|0;w=72;break}case 99:{a[A>>0]=c[H>>2];r=A;o=0;p=214892;q=1;m=n;l=z;break}case 115:{s=c[H>>2]|0;s=(s|0)==0?214902:s;t=Nm(s,0,l)|0;J=(t|0)==0;r=s;o=0;p=214892;q=J?l:t-s|0;m=n;l=J?s+l|0:t;break}case 67:{c[C>>2]=c[H>>2];c[B>>2]=0;c[H>>2]=C;p=-1;w=79;break}case 83:{if(!l){ow(d,32,u,0,t);l=0;w=89}else{p=l;w=79}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{l=Xb[j&1](d,+g[H>>3],u,l,t,m)|0;break d}default:{o=0;p=214892;q=l;m=t;l=z}}while(0);f:do if((w|0)==67){q=H;q=YF(c[q>>2]|0,c[q+4>>2]|0,y,m&32)|0;p=H;p=(n&8|0)==0|(c[p>>2]|0)==0&(c[p+4>>2]|0)==0;o=p?0:2;p=p?214892:214892+(m>>>4)|0;w=73}else if((w|0)==72){q=Us(m,n,y)|0;n=t;w=73}else if((w|0)==79){w=0;o=c[H>>2]|0;l=0;while(1){m=c[o>>2]|0;if(!m)break;m=mR(D,m)|0;n=(m|0)<0;if(n|m>>>0>(p-l|0)>>>0){w=83;break}l=m+l|0;if(p>>>0>l>>>0)o=o+4|0;else break}if((w|0)==83){w=0;if(n){e=-1;break a}}ow(d,32,u,l,t);if(!l){l=0;w=89}else{n=c[H>>2]|0;o=0;while(1){m=c[n>>2]|0;if(!m){w=89;break f}m=mR(D,m)|0;o=m+o|0;if((o|0)>(l|0)){w=89;break f}HQ(d,D,m);if(o>>>0>=l>>>0){w=89;break}else n=n+4|0}}}while(0);if((w|0)==73){w=0;m=H;m=(c[m>>2]|0)!=0|(c[m+4>>2]|0)!=0;J=(l|0)!=0|m;m=z-q+((m^1)&1)|0;r=J?q:y;q=J?((l|0)>(m|0)?l:m):0;m=(l|0)>-1?n&-65537:n;l=z}else if((w|0)==89){w=0;ow(d,32,u,l,t^8192);l=(u|0)>(l|0)?u:l;break}t=l-r|0;s=(q|0)<(t|0)?t:q;J=s+o|0;l=(u|0)<(J|0)?J:u;ow(d,32,l,J,m);HQ(d,p,o);ow(d,48,l,J,m^65536);ow(d,48,s,t,0);HQ(d,r,t);ow(d,32,l,J,m^8192)}while(0);n=v}g:do if((w|0)==92)if(!d)if(!n)e=0;else{e=1;while(1){l=c[i+(e<<2)>>2]|0;if(!l)break;sh(h+(e<<3)|0,l,f,k);e=e+1|0;if(e>>>0>=10){e=1;break g}}while(1){if(c[i+(e<<2)>>2]|0){e=-1;break g}e=e+1|0;if(e>>>0>=10){e=1;break}}}while(0);Nb=I;return e|0}function Xc(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=Nb;Nb=Nb+16|0;w=B+4|0;y=B;z=g+21796|0;A=c[z>>2]|0;c[y>>2]=0;h=(c[f+25956>>2]|0)+(A*48|0)|0;i=h+48|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));u=g+21828|0;if(!(c[u>>2]|0))h=0;else{c[y>>2]=128;h=128}x=g+840|0;if((c[x>>2]|0)==3){h=h|63744;c[y>>2]=h;if(c[g+21844>>2]|0){ph(f,g,h);zc(f,g,h)}xN(f,g,y);k=c[y>>2]|2048;c[y>>2]=k;h=f+26352|0}else{k=h|14344;c[y>>2]=k;ph(f,g,k);p=c[f+24384>>2]|0;q=c[f+24352>>2]|0;h=f+26352|0;r=c[h>>2]|0;c[g+28284>>2]=0;c[g+28292>>2]=0;c[g+28300>>2]=0;c[g+28308>>2]=0;l=c[g+21740>>2]|0;if(!(l&12288))if(!l)v=50;else{t=1136440;j=-1;v=16}else{i=c[g+21720>>2]|0;v=d[c[g+21748>>2]>>0]|0;j=a[p+((v&254)+(i<<2|1))>>0]|0;i=q+((H(r,v)|0)+3+(c[(c[f+26344>>2]|0)+(i<<2)>>2]|0)<<2)|0;do if(c[f+26360>>2]|0){l=(l&128|0)!=0;if(!(c[u>>2]|0)){if(!l)break;i=c[i>>2]|0;c[w>>2]=i;b[w+2>>1]=i>>16<<1;i=w;j=j>>1;break}else{if(l)break;i=c[i>>2]|0;c[w>>2]=i;b[w+2>>1]=((i>>>16&65535)<<16>>16)/2|0;i=w;j=j<<1;break}}while(0);if(!(c[i>>2]|j))v=50;else{t=i;v=16}}do if((v|0)==16){m=c[g+21732>>2]|0;if(!(m&12288))if(!m){v=50;break}else{n=-1;o=1136440}else{l=c[g+21712>>2]|0;i=a[p+(l<<2|2)>>0]|0;l=q+((c[(c[f+26344>>2]|0)+(l<<2)>>2]|0)+(r*3|0)<<2)|0;do if(c[f+26360>>2]|0){m=(m&128|0)!=0;if(!(c[u>>2]|0)){if(!m)break;o=c[l>>2]|0;l=w+4|0;c[l>>2]=o;b[w+6>>1]=o>>16<<1;i=i>>1;break}else{if(m)break;o=c[l>>2]|0;l=w+4|0;c[l>>2]=o;b[w+6>>1]=((o>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}while(0);if(!(c[l>>2]|i)){v=50;break}else{n=i;o=l}}l=c[g+21736>>2]|0;do if(!(l&12288))if((l|0)==0?(s=c[g+21728>>2]|0,(s&12288|0)!=0):0){m=c[g+21708>>2]|0;l=c[g+21752>>2]|0;i=a[p+(m<<2|l&2|1)>>0]|0;m=q+(r+3+(l&r<<1)+(c[(c[f+26344>>2]|0)+(m<<2)>>2]|0)<<2)|0;if(c[f+26360>>2]|0){l=(s&128|0)!=0;if(!(c[u>>2]|0)){if(!l)break;u=c[m>>2]|0;m=w+8|0;c[m>>2]=u;b[w+10>>1]=u>>16<<1;i=i>>1;break}else{if(l)break;u=c[m>>2]|0;m=w+8|0;c[m>>2]=u;b[w+10>>1]=((u>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}}else{m=1136440;i=-1}else{m=c[g+21716>>2]|0;i=a[p+(m<<2|2)>>0]|0;m=q+((c[(c[f+26344>>2]|0)+(m<<2)>>2]|0)+(r*3|0)<<2)|0;if(c[f+26360>>2]|0){l=(l&128|0)!=0;if(!(c[u>>2]|0)){if(!l)break;u=c[m>>2]|0;m=w+8|0;c[m>>2]=u;b[w+10>>1]=u>>16<<1;i=i>>1;break}else{if(l)break;u=c[m>>2]|0;m=w+8|0;c[m>>2]=u;b[w+10>>1]=((u>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}}while(0);l=(n|0)!=0;j=(j|0)!=0;i=((l^1)&1)+((j^1)&1)+((i|0)==0&1)|0;do if(i>>>0<=1){if((i|0)!=1){i=GM(b[t>>1]|0,b[o>>1]|0,b[m>>1]|0)|0;j=GM(b[t+2>>1]|0,b[o+2>>1]|0,b[m+2>>1]|0)|0;break}if(!j){j=b[t+2>>1]|0;i=b[t>>1]|0;break}if(l){j=b[m+2>>1]|0;i=b[m>>1]|0;break}else{j=b[o+2>>1]|0;i=b[o>>1]|0;break}}else{i=GM(b[t>>1]|0,b[o>>1]|0,b[m>>1]|0)|0;j=GM(b[t+2>>1]|0,b[o+2>>1]|0,b[m+2>>1]|0)|0}while(0);w=j<<16|i&65535;c[g+28e3>>2]=w;c[g+28004>>2]=w;c[g+28008>>2]=w;c[g+28012>>2]=w;c[g+28032>>2]=w;c[g+28036>>2]=w;c[g+28040>>2]=w;c[g+28044>>2]=w;c[g+28064>>2]=w;c[g+28068>>2]=w;c[g+28072>>2]=w;c[g+28076>>2]=w;c[g+28096>>2]=w;c[g+28100>>2]=w;c[g+28104>>2]=w;c[g+28108>>2]=w}while(0);if((v|0)==50){t=g+28e3|0;u=g+28032|0;v=g+28064|0;w=g+28096|0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0}}h=c[h>>2]|0;i=(H(h<<2,c[g+21792>>2]|0)|0)+(c[g+21788>>2]<<2)|0;j=c[z>>2]<<2;if(!(k&12288)){w=(c[f+24384>>2]|0)+j|0;b[w>>1]=-1;b[w+2>>1]=-1}else{w=(c[f+24352>>2]|0)+(i<<2)|0;u=g+28e3|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=g+28008|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28032|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28040|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=g+28064|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28072|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28096|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=g+28104|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[g+32848>>2]|0)+(c[(c[f+26348>>2]|0)+(c[z>>2]<<2)>>2]<<1)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;w=(c[f+24384>>2]|0)+j|0;a[w>>0]=a[g+28284>>0]|0;a[w+1>>0]=a[g+28286>>0]|0;a[w+2>>0]=a[g+28300>>0]|0;a[w+3>>0]=a[g+28302>>0]|0}if(k&49152|0){w=(c[f+24356>>2]|0)+(i<<2)|0;u=g+28160|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=g+28168|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28192|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28200|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=g+28224|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=g+28232|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=g+28256|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=g+28264|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[g+32852>>2]|0)+(c[(c[f+26348>>2]|0)+(c[z>>2]<<2)>>2]<<1)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;w=(c[f+24388>>2]|0)+j|0;a[w>>0]=a[g+28324>>0]|0;a[w+1>>0]=a[g+28326>>0]|0;a[w+2>>0]=a[g+28340>>0]|0;a[w+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[x>>2]|0)!=3)){z=(c[f+26392>>2]|0)+(c[z>>2]<<2)|0;a[z+1>>0]=(e[g+28554>>1]|0)>>>1;a[z+2>>0]=(e[g+28556>>1]|0)>>>1;a[z+3>>0]=(e[g+28558>>1]|0)>>>1}c[(c[f+24364>>2]|0)+(A<<2)>>2]=c[y>>2];a[(c[f+24340>>2]|0)+A>>0]=c[g+848>>2];b[(c[f+26356>>2]|0)+(A<<1)>>1]=c[g+832>>2];c[g+21648>>2]=1;Nb=B;return}function Yc(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;P=Nb;Nb=Nb+240|0;K=P+152|0;G=P+144|0;F=P+120|0;D=P+104|0;B=P+96|0;y=P+88|0;x=P+80|0;u=P+72|0;w=P+64|0;v=P+56|0;t=P+48|0;r=P+40|0;s=P+32|0;q=P+24|0;p=P+16|0;o=P+8|0;j=P;L=P+228|0;M=cP(5300)|0;c[L>>2]=M;N=M;a:do if(!M)g=-12;else{O=M+4|0;J=c[O>>2]|0;h=c[a>>2]|0;g=(c[a+4>>2]|0)-h|0;i=J+5296|0;c[i>>2]=g;if(g>>>0>4096){mx(d,24,169442,j);c[i>>2]=4096;h=c[a>>2]|0;g=4096}Bk(J+1200|0,h|0,g|0)|0;n=Yz(a,8)|0;g=NL(a)|0;h=NL(a)|0;i=NL(a)|0;j=NL(a)|0;k=NL(a)|0;l=NL(a)|0;bP(a);m=Yz(a,8)|0;I=ey(a)|0;b:do if(I>>>0>31){c[o>>2]=I;mx(d,16,169475,o)}else{c[J>>2]=I;c[J+1164>>2]=24;E=J+4|0;c[E>>2]=n;c[J+1196>>2]=h<<1|g|i<<2|j<<3|k<<4|l<<5;C=J+8|0;c[C>>2]=m;c[J+112>>2]=-1;i=J+672|0;j=J+768|0;k=J+668|0;jq(i|0,16,480)|0;c[k>>2]=0;c[J+128>>2]=2;switch(n|0){case 144:case 138:case 128:case 118:case 86:case 83:case 44:case 244:case 122:case 110:case 100:{g=ey(a)|0;c[J+12>>2]=g;if(g>>>0>3){c[p>>2]=g;bN(d,169499,p);break b}if((g|0)==3?(z=NL(a)|0,c[J+1192>>2]=z,z|0):0){mx(d,16,169520,q);break b}g=(qp(a)|0)+8|0;z=J+1184|0;c[z>>2]=g;g=qp(a)|0;h=g+8|0;c[J+1188>>2]=h;if((h|0)!=(c[z>>2]|0)){bN(d,169561,s);break b}if(g>>>0>6){c[r>>2]=h;c[r+4>>2]=h;mx(d,16,169597,r);break b}g=NL(a)|0;c[J+16>>2]=g;g=vm(a,J,0,1,i,j)|0;if((g|0)<0)break b;c[k>>2]=c[k>>2]|g;break}default:{c[J+12>>2]=1;c[J+1184>>2]=8;c[J+1188>>2]=8}}g=qp(a)|0;if(g>>>0>12){c[t>>2]=g;mx(d,16,169631,t);break}c[J+20>>2]=g+4;g=ey(a)|0;t=J+24|0;c[t>>2]=g;c:do switch(g|0){case 0:{g=qp(a)|0;if(g>>>0>12){c[v>>2]=g;mx(d,16,169682,v);break b}else{c[J+28>>2]=g+4;break c}}case 1:{g=NL(a)|0;c[J+32>>2]=g;g=pp(a)|0;c[J+36>>2]=g;g=pp(a)|0;c[J+40>>2]=g;g=qp(a)|0;i=J+44|0;c[i>>2]=g;if(g>>>0>255){c[w>>2]=g;mx(d,16,169721,w);break b}h=0;while(1){if((h|0)>=(g|0))break c;g=(pp(a)|0)&65535;b[J+148+(h<<1)>>1]=g;h=h+1|0;g=c[i>>2]|0}}case 2:break;default:{c[u>>2]=g;mx(d,16,169751,u);break b}}while(0);g=ey(a)|0;r=J+48|0;c[r>>2]=g;w=(c[d+52>>2]|0)==844516691;z=(g|0)>2?g:2;c[r>>2]=w?z:g;g=w?z:g;if((g|0)>16){c[x>>2]=g;mx(d,16,169772,x);break}g=NL(a)|0;c[J+52>>2]=g;g=(qp(a)|0)+1|0;q=J+56|0;c[q>>2]=g;g=(qp(a)|0)+1|0;s=J+60|0;c[s>>2]=g;g=NL(a)|0;z=J+64|0;c[z>>2]=g;h=c[s>>2]|0;if(h>>>0>1073741822){mx(d,16,169802,y);break}y=H(h,2-g|0)|0;c[s>>2]=y;if(!g)g=NL(a)|0;else g=0;p=J+68|0;c[p>>2]=g;g=c[q>>2]|0;if((g>>>0<=134217726?(A=c[s>>2]|0,A>>>0<=134217726):0)?(OP(g<<4,A<<4,0,d)|0)==0:0){B=NL(a)|0;o=J+72|0;c[o>>2]=B;B=NL(a)|0;g=J+76|0;c[g>>2]=B;d:do if(!B){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0}else{i=qp(a)|0;j=qp(a)|0;k=qp(a)|0;l=qp(a)|0;m=c[q>>2]<<4;n=c[s>>2]<<4;if(c[d+96>>2]&65536|0){c[D>>2]=i;c[D+4>>2]=j;c[D+8>>2]=k;c[D+12>>2]=l;mx(d,48,169845,D);F=J+80|0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;c[F+12>>2]=0;break}h=c[J+12>>2]|0;g=(h+-1|0)>>>0<2&1;h=2-(c[z>>2]|0)<<((h|0)==1&1);D=536870911>>>g;do if((!(i>>>0>D>>>0|j>>>0>D>>>0)?(D=536870911/(h>>>0)|0,!(k>>>0>D>>>0|l>>>0>D>>>0)):0)?j+i<<g>>>0<m>>>0:0){if((H(h,l+k|0)|0)>>>0>=n>>>0)break;c[J+80>>2]=i<<g;c[J+84>>2]=j<<g;F=H(h,k)|0;c[J+88>>2]=F;F=H(h,l)|0;c[J+92>>2]=F;break d}while(0);c[F>>2]=i;c[F+4>>2]=j;c[F+8>>2]=k;c[F+12>>2]=l;c[F+16>>2]=m;c[F+20>>2]=n;mx(d,16,169911,F);break b}while(0);F=NL(a)|0;i=J+96|0;c[i>>2]=F;if(F|0?(ff(a,d,J)|0)<0:0)break;g=NS(a)|0;if((g|0)<0?(f=(f|0)!=0,c[G>>2]=(c[i>>2]|0)==0?196268:169952,c[G+4>>2]=0-g,mx(d,f?24:16,169956,G),!f):0)break;y=(c[J+660>>2]|0)==0;e:do if(y){if((c[r>>2]|0)==0?(c[d+672>>2]|0)<=0:0)break;h=J+664|0;c[h>>2]=15;g=0;while(1){if(g>>>0>=16)break e;if((c[18320+(g<<3)>>2]|0)==(c[C>>2]|0))break;g=g+1|0}G=(c[18320+(g<<3)+4>>2]|0)/(H(c[s>>2]|0,c[q>>2]|0)|0)|0;c[h>>2]=(G|0)<15?G:15}while(0);g=J+104|0;if(!(c[g>>2]|0))c[g>>2]=1;if(c[d+680>>2]&1|0){x=c[E>>2]|0;w=c[C>>2]|0;v=c[t>>2]|0;u=c[r>>2]|0;t=c[q>>2]|0;s=c[s>>2]|0;if(!(c[z>>2]|0))r=(c[p>>2]|0)==0?169980:169988;else r=169995;m=(c[o>>2]|0)==0?1137073:169999;n=c[J+80>>2]|0;o=c[J+84>>2]|0;p=c[J+88>>2]|0;q=c[J+92>>2]|0;h=(c[i>>2]|0)==0?1137073:169952;i=18448+((c[J+12>>2]|0)*5|0)|0;if(!(c[J+132>>2]|0)){k=0;l=0}else{k=c[J+136>>2]|0;l=c[J+140>>2]|0}j=c[J+1184>>2]|0;if(y)g=-1;else g=c[J+664>>2]|0;c[K>>2]=I;c[K+4>>2]=x;c[K+8>>2]=w;c[K+12>>2]=v;c[K+16>>2]=u;c[K+20>>2]=t;c[K+24>>2]=s;c[K+28>>2]=r;c[K+32>>2]=m;c[K+36>>2]=n;c[K+40>>2]=o;c[K+44>>2]=p;c[K+48>>2]=q;c[K+52>>2]=h;c[K+56>>2]=i;c[K+60>>2]=k;c[K+64>>2]=l;c[K+68>>2]=j;c[K+72>>2]=g;mx(d,48,170003,K)}g=e+(I<<2)|0;h=c[g>>2]|0;do if(h|0){if(Zx(c[h+4>>2]|0,c[O>>2]|0,c[M+8>>2]|0)|0)break;nT(L);g=0;break a}while(0);YT(e,I);c[g>>2]=N;g=0;break a}mx(d,16,169819,B)}while(0);nT(L);g=-1094995529}while(0);Nb=P;return g|0}function Zc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.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,I=0.0;G=Nb;Nb=Nb+512|0;D=G;E=f+e|0;F=0-E|0;C=a+4|0;B=a+104|0;j=0;a:while(1){switch(b|0){case 46:{z=7;break a}case 48:break;default:{v=0;p=j;j=0;o=0;break a}}b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=ol(a)|0;j=1}if((z|0)==7){b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=ol(a)|0;if((b|0)==48){j=0;b=0;while(1){j=kP(j|0,b|0,-1,-1)|0;o=M()|0;b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=ol(a)|0;if((b|0)==48)b=o;else{v=1;p=1;break}}}else{v=1;p=j;j=0;o=0}}c[D>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){A=D+496|0;w=0;l=0;s=0;x=v;y=p;z=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;j=p;o=n}else break c;else{p=kP(p|0,n|0,1,0)|0;n=M()|0;v=(b|0)!=48;if((l|0)>=125){if(!v)break;c[A>>2]=c[A>>2]|1;break}m=D+(l<<2)|0;if(!w)b=z;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;l=l+(y&1)|0;s=v?p:s;y=1}while(0);b=c[C>>2]|0;if(b>>>0<(c[B>>2]|0)>>>0){c[C>>2]=b+1;b=d[b>>0]|0}else b=ol(a)|0;z=b+-48|0;m=(b|0)==46;if(!(m|z>>>0<10)){v=x;m=y;z=31;break b}}b=w;m=(y|0)!=0;z=39}else{w=0;l=0;s=0;m=p;p=0;n=0;z=31}while(0);do if((z|0)==31){A=(v|0)==0;j=A?p:j;o=A?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;z=39;break}else{b=w;z=41;break}m=Rg(a,h)|0;b=M()|0;if((m|0)==0&(b|0)==-2147483648){if(!h){sw(a,0,0);i=0.0;break}if(!(c[B>>2]|0)){m=0;b=0}else{c[C>>2]=(c[C>>2]|0)+-1;m=0;b=0}}j=kP(m|0,b|0,j|0,o|0)|0;b=w;o=M()|0;z=43}while(0);if((z|0)==39)if(c[B>>2]|0){c[C>>2]=(c[C>>2]|0)+-1;if(m)z=43;else z=42}else z=41;if((z|0)==41)if(m)z=43;else z=42;do if((z|0)==42){F=PV()|0;c[F>>2]=22;sw(a,0,0);i=0.0}else if((z|0)==43){m=c[D>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((j|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;C=((a|0)<0)<<31>>31;if((o|0)>(C|0)|(o|0)==(C|0)&j>>>0>a>>>0){F=PV()|0;c[F>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;C=((a|0)<0)<<31>>31;if((o|0)<(C|0)|(o|0)==(C|0)&j>>>0<a>>>0){F=PV()|0;c[F>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=D+(l<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}l=l+1|0}if((s|0)<9?(s|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(g|0)*+((c[D>>2]|0)>>>0);break}if((j|0)<9){i=+(g|0)*+((c[D>>2]|0)>>>0)/+(c[157440+(8-j<<2)>>2]|0);break}a=e+27+(H(j,-3)|0)|0;b=c[D>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[157440+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)m=0;else{s=(j|0)>-1?b:b+9|0;o=c[157440+(8-s<<2)>>2]|0;if(l){p=1e9/(o|0)|0;n=0;m=0;b=0;do{B=D+(b<<2)|0;C=c[B>>2]|0;a=(C>>>0)/(o>>>0)|0;C=C-(H(a,o)|0)|0;a=a+n|0;c[B>>2]=a;n=H(p,C)|0;a=(b|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;b=b+1|0}while((b|0)!=(l|0));if(!n)b=l;else{c[D+(l<<2)>>2]=n;b=l+1|0}}else{m=0;b=0}l=b;j=9-s+j|0}b=0;d:while(1){v=(j|0)<18;w=(j|0)==18;x=D+(m<<2)|0;while(1){if(!v){if(!w)break d;if((c[x>>2]|0)>>>0>=9007199){j=18;break d}}n=0;y=l;l=l+127|0;while(1){p=l&127;o=D+(p<<2)|0;l=uN(c[o>>2]|0,0,29)|0;l=kP(l|0,M()|0,n|0,0)|0;n=M()|0;if(n>>>0>0|(n|0)==0&l>>>0>1e9){s=uS(l|0,n|0,1e9,0)|0;a=oK(s|0,M()|0,1e9,0)|0;l=iP(l|0,n|0,a|0,M()|0)|0;M()|0}else s=0;c[o>>2]=l;a=(p|0)==(m|0);o=(p|0)!=(y+127&127|0)|a?y:(l|0)==0?p:y;if(a)break;else{n=s;y=o;l=p+-1|0}}b=b+-29|0;if(!s)l=y;else break}m=m+127&127;l=o+127&127;n=D+((o+126&127)<<2)|0;if((m|0)==(o|0))c[n>>2]=c[n>>2]|c[D+(l<<2)>>2];else l=y;c[D+(m<<2)>>2]=s;j=j+9|0}e:while(1){w=l+1&127;x=D+((l+127&127)<<2)|0;while(1){p=(j|0)==18;v=(j|0)>27?9:1;y=m;while(1){o=0;while(1){m=o+y&127;if((m|0)==(l|0)){z=92;break}m=c[D+(m<<2)>>2]|0;n=c[162464+(o<<2)>>2]|0;if(m>>>0<n>>>0){z=92;break}if(m>>>0>n>>>0)break;if((o+1|0)>>>0<2)o=1;else{z=92;break}}if((z|0)==92?(z=0,p):0)break e;b=v+b|0;if((y|0)==(l|0))y=l;else break}p=(1<<v)+-1|0;s=1e9>>>v;o=0;m=y;n=y;do{B=D+(n<<2)|0;C=c[B>>2]|0;a=(C>>>v)+o|0;c[B>>2]=a;o=H(C&p,s)|0;a=(n|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;n=n+1&127}while((n|0)!=(l|0));if(o|0){if((w|0)!=(m|0))break;c[x>>2]=c[x>>2]|1}}c[D+(l<<2)>>2]=o;l=w}i=0.0;j=l;m=0;do{n=m+y&127;l=j+1&127;if((n|0)==(j|0)){c[D+(l+-1<<2)>>2]=0;j=l}i=i*1.0e9+ +((c[D+(n<<2)>>2]|0)>>>0);m=m+1|0}while((m|0)!=2);t=+(g|0);k=i*t;n=b+53|0;o=n-f|0;p=(o|0)<(e|0);m=p?((o|0)>0?o:0):e;if((m|0)<53){I=+LU(+mu(1.0,105-m|0),k);q=+XU(k,+mu(1.0,53-m|0));r=I;i=q;q=I+(k-q)}else{r=0.0;i=0.0;q=k}l=y+2&127;if((l|0)!=(j|0)){l=c[D+(l<<2)>>2]|0;do if(l>>>0>=5e8){if((l|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(j|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((l|0)==0?(y+3&127|0)==(j|0):0)break;i=t*.25+i}while(0);if((53-m|0)>1?!(+XU(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=q+k-r;do if((n&2147483647|0)>(-2-E|0)){E=!(+u(+i)>=9007199254740992.0);b=b+((E^1)&1)|0;i=E?i:i*.5;if((b+50|0)<=(F|0)?!(k!=0.0&(p&((m|0)!=(o|0)|E))):0)break;F=PV()|0;c[F>>2]=34}while(0);i=+MU(i,b)}while(0);Nb=G;return +i}function _c(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=Nb;Nb=Nb+16|0;v=z+4|0;x=z;w=f+21796|0;y=c[w>>2]|0;c[x>>2]=0;g=(c[e+25956>>2]|0)+(y*48|0)|0;h=g+48|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));t=f+21828|0;if(!(c[t>>2]|0))g=0;else{c[x>>2]=128;g=128}if((c[f+840>>2]|0)==3){g=g|63744;c[x>>2]=g;if(c[f+21844>>2]|0){qh(e,f,g);Cc(e,f,g)}xN(e,f,x);j=c[x>>2]|2048;c[x>>2]=j;g=e+26352|0}else{j=g|14344;c[x>>2]=j;qh(e,f,j);o=c[e+24384>>2]|0;p=c[e+24352>>2]|0;g=e+26352|0;q=c[g>>2]|0;c[f+28284>>2]=0;c[f+28292>>2]=0;c[f+28300>>2]=0;c[f+28308>>2]=0;k=c[f+21740>>2]|0;if(!(k&12288))if(!k)u=50;else{s=1136440;i=-1;u=16}else{h=c[f+21720>>2]|0;u=d[c[f+21748>>2]>>0]|0;i=a[o+((u&254)+(h<<2|1))>>0]|0;h=p+((H(q,u)|0)+3+(c[(c[e+26344>>2]|0)+(h<<2)>>2]|0)<<2)|0;do if(c[e+26360>>2]|0){k=(k&128|0)!=0;if(!(c[t>>2]|0)){if(!k)break;h=c[h>>2]|0;c[v>>2]=h;b[v+2>>1]=h>>16<<1;h=v;i=i>>1;break}else{if(k)break;h=c[h>>2]|0;c[v>>2]=h;b[v+2>>1]=((h>>>16&65535)<<16>>16)/2|0;h=v;i=i<<1;break}}while(0);if(!(c[h>>2]|i))u=50;else{s=h;u=16}}do if((u|0)==16){l=c[f+21732>>2]|0;if(!(l&12288))if(!l){u=50;break}else{m=-1;n=1136440}else{k=c[f+21712>>2]|0;h=a[o+(k<<2|2)>>0]|0;k=p+((c[(c[e+26344>>2]|0)+(k<<2)>>2]|0)+(q*3|0)<<2)|0;do if(c[e+26360>>2]|0){l=(l&128|0)!=0;if(!(c[t>>2]|0)){if(!l)break;n=c[k>>2]|0;k=v+4|0;c[k>>2]=n;b[v+6>>1]=n>>16<<1;h=h>>1;break}else{if(l)break;n=c[k>>2]|0;k=v+4|0;c[k>>2]=n;b[v+6>>1]=((n>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}while(0);if(!(c[k>>2]|h)){u=50;break}else{m=h;n=k}}k=c[f+21736>>2]|0;do if(!(k&12288))if((k|0)==0?(r=c[f+21728>>2]|0,(r&12288|0)!=0):0){l=c[f+21708>>2]|0;k=c[f+21752>>2]|0;h=a[o+(l<<2|k&2|1)>>0]|0;l=p+(q+3+(k&q<<1)+(c[(c[e+26344>>2]|0)+(l<<2)>>2]|0)<<2)|0;if(c[e+26360>>2]|0){k=(r&128|0)!=0;if(!(c[t>>2]|0)){if(!k)break;t=c[l>>2]|0;l=v+8|0;c[l>>2]=t;b[v+10>>1]=t>>16<<1;h=h>>1;break}else{if(k)break;t=c[l>>2]|0;l=v+8|0;c[l>>2]=t;b[v+10>>1]=((t>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}}else{l=1136440;h=-1}else{l=c[f+21716>>2]|0;h=a[o+(l<<2|2)>>0]|0;l=p+((c[(c[e+26344>>2]|0)+(l<<2)>>2]|0)+(q*3|0)<<2)|0;if(c[e+26360>>2]|0){k=(k&128|0)!=0;if(!(c[t>>2]|0)){if(!k)break;t=c[l>>2]|0;l=v+8|0;c[l>>2]=t;b[v+10>>1]=t>>16<<1;h=h>>1;break}else{if(k)break;t=c[l>>2]|0;l=v+8|0;c[l>>2]=t;b[v+10>>1]=((t>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}}while(0);k=(m|0)!=0;i=(i|0)!=0;h=((k^1)&1)+((i^1)&1)+((h|0)==0&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=GM(b[s>>1]|0,b[n>>1]|0,b[l>>1]|0)|0;i=GM(b[s+2>>1]|0,b[n+2>>1]|0,b[l+2>>1]|0)|0;break}if(!i){i=b[s+2>>1]|0;h=b[s>>1]|0;break}if(k){i=b[l+2>>1]|0;h=b[l>>1]|0;break}else{i=b[n+2>>1]|0;h=b[n>>1]|0;break}}else{h=GM(b[s>>1]|0,b[n>>1]|0,b[l>>1]|0)|0;i=GM(b[s+2>>1]|0,b[n+2>>1]|0,b[l+2>>1]|0)|0}while(0);v=i<<16|h&65535;c[f+28e3>>2]=v;c[f+28004>>2]=v;c[f+28008>>2]=v;c[f+28012>>2]=v;c[f+28032>>2]=v;c[f+28036>>2]=v;c[f+28040>>2]=v;c[f+28044>>2]=v;c[f+28064>>2]=v;c[f+28068>>2]=v;c[f+28072>>2]=v;c[f+28076>>2]=v;c[f+28096>>2]=v;c[f+28100>>2]=v;c[f+28104>>2]=v;c[f+28108>>2]=v}while(0);if((u|0)==50){s=f+28e3|0;t=f+28032|0;u=f+28064|0;v=f+28096|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0}}h=c[g>>2]|0;i=(H(h<<2,c[f+21792>>2]|0)|0)+(c[f+21788>>2]<<2)|0;g=c[w>>2]<<2;if(!(j&12288)){w=(c[e+24384>>2]|0)+g|0;b[w>>1]=-1;b[w+2>>1]=-1}else{w=(c[e+24352>>2]|0)+(i<<2)|0;u=f+28e3|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=f+28008|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28032|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28040|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=f+28064|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28072|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28096|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=f+28104|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[e+24384>>2]|0)+g|0;a[w>>0]=a[f+28284>>0]|0;a[w+1>>0]=a[f+28286>>0]|0;a[w+2>>0]=a[f+28300>>0]|0;a[w+3>>0]=a[f+28302>>0]|0}if(j&49152|0){w=(c[e+24356>>2]|0)+(i<<2)|0;u=f+28160|0;v=c[u+4>>2]|0;s=w;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=f+28168|0;v=c[s+4>>2]|0;u=w+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28192|0;v=c[u+4>>2]|0;s=w+(h<<2)|0;t=s;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28200|0;v=c[t+4>>2]|0;s=s+8|0;c[s>>2]=c[t>>2];c[s+4>>2]=v;s=f+28224|0;v=c[s+4>>2]|0;t=w+(h<<1<<2)|0;u=t;c[u>>2]=c[s>>2];c[u+4>>2]=v;u=f+28232|0;v=c[u+4>>2]|0;t=t+8|0;c[t>>2]=c[u>>2];c[t+4>>2]=v;t=f+28256|0;v=c[t+4>>2]|0;w=w+(h*3<<2)|0;u=w;c[u>>2]=c[t>>2];c[u+4>>2]=v;u=f+28264|0;v=c[u+4>>2]|0;w=w+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[e+24388>>2]|0)+g|0;a[w>>0]=a[f+28324>>0]|0;a[w+1>>0]=a[f+28326>>0]|0;a[w+2>>0]=a[f+28340>>0]|0;a[w+3>>0]=a[f+28342>>0]|0}c[(c[e+24364>>2]|0)+(y<<2)>>2]=c[x>>2];a[(c[e+24340>>2]|0)+y>>0]=c[f+848>>2];b[(c[e+26356>>2]|0)+(y<<1)>>1]=c[f+832>>2];c[f+21648>>2]=1;Nb=z;return}function $c(e,g,h,i){e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=Nb;Nb=Nb+32|0;o=v+24|0;m=v+16|0;l=v+8|0;j=c[i+24>>2]|0;i=c[i+28>>2]|0;u=c[e+60>>2]|0;s=e+48|0;r=(SI(c[s>>2]|0)|0)/8|0;k=c[s>>2]|0;t=(k|0)==65561;q=t?2:1;r=t?5:r;a:do if(r){t=e+420|0;p=c[t>>2]|0;if(!p){mx(e,16,184440,l);i=-22;break}if((k|0)!=(c[(c[e+12>>2]|0)+12>>2]|0)){mx(e,16,184468,m);i=-22;break}k=H(p,r)|0;do if((k|0)!=0?(n=(i|0)%(k|0)|0,(n|0)!=0):0)if((i|0)<(k|0)){c[o>>2]=i;c[o+4>>2]=k;mx(e,16,184488,o);i=-1094995529;break a}else{i=i-n|0;break}while(0);l=(i|0)/(r|0)|0;k=(H(l,q)|0)/(p|0)|0;p=g+76|0;c[p>>2]=k;k=YI(e,g,0)|0;if((k|0)<0)i=k;else{k=c[g>>2]|0;b:do switch(c[s>>2]|0){case 65546:while(1){if((l|0)<=0)break b;r=j;c[k>>2]=(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24)^-2147483648;l=l+-1|0;k=k+4|0;j=j+4|0}case 65547:while(1){if((l|0)<=0)break b;r=j;r=IS((d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24)^128|0)|0;c[k>>2]=r;l=l+-1|0;k=k+4|0;j=j+4|0}case 65548:while(1){if((l|0)<=0)break b;r=j;c[k>>2]=((d[r+1>>0]|0)<<8|(d[r+2>>0]|0)<<16|(d[r>>0]|0))<<8;l=l+-1|0;k=k+4|0;j=r+3|0}case 65564:{k=c[t>>2]|0;n=(l|0)/(k|0)|0;o=g+64|0;m=0;while(1){if((m|0)>=(k|0))break b;k=n;l=c[(c[o>>2]|0)+(m<<2)>>2]|0;while(1){if((k|0)<=0)break;r=j;c[l>>2]=((d[r+1>>0]|0)<<8|(d[r+2>>0]|0)<<16|(d[r>>0]|0))<<8;k=k+-1|0;l=l+4|0;j=r+3|0}m=m+1|0;k=c[t>>2]|0}}case 65549:while(1){if((l|0)<=0)break b;r=j;c[k>>2]=((d[r+1>>0]|0)<<8|(d[r>>0]|0)<<16|(d[r+2>>0]|0))<<8;l=l+-1|0;k=k+4|0;j=r+3|0}case 65550:while(1){if((l|0)<=0)break b;r=j;c[k>>2]=((d[r+1>>0]|0)<<8|(d[r+2>>0]|0)<<16|(d[r>>0]|0))<<8^-2147483648;l=l+-1|0;k=k+4|0;j=r+3|0}case 65551:while(1){if((l|0)<=0)break b;r=j;c[k>>2]=((d[r+1>>0]|0)<<8|(d[r>>0]|0)<<16|(d[r+2>>0]|0))<<8^-2147483648;l=l+-1|0;k=k+4|0;j=r+3|0}case 65552:while(1){if((l|0)<=0)break b;r=j;e=(d[r+1>>0]|0)<<8;b[k>>1]=(d[148528+((e|(d[r+2>>0]|0))>>>4&255)>>0]|0)<<8|(d[148528+((e|(d[r>>0]|0)<<16)>>>12&255)>>0]|0);l=l+-1|0;k=k+2|0;j=r+3|0}case 65538:while(1){if((l|0)<=0)break b;r=j;b[k>>1]=((d[r>>0]|d[r+1>>0]<<8)&65535)+32768;l=l+-1|0;k=k+2|0;j=j+2|0}case 65539:while(1){if((l|0)<=0)break b;r=j;r=((yU(d[r>>0]|d[r+1>>0]<<8|0)|0)&65535)+32768&65535;b[k>>1]=r;l=l+-1|0;k=k+2|0;j=j+2|0}case 65540:while(1){if((l|0)<=0)break b;r=j;a[k>>0]=(d[r>>0]|0)+128;k=k+1|0;l=l+-1|0;j=r+1|0}case 65563:{k=c[t>>2]|0;n=(l|0)/(k|0)|0;o=g+64|0;m=0;while(1){if((m|0)>=(k|0))break b;k=n;l=c[(c[o>>2]|0)+(m<<2)>>2]|0;while(1){if((k|0)<=0)break;r=j;a[l>>0]=(d[r>>0]|0)+128;k=k+-1|0;l=l+1|0;j=r+1|0}m=m+1|0;k=c[t>>2]|0}}case 65558:case 67585:while(1){if((l|0)<=0)break b;q=j;e=q;q=q+4|0;q=gQ(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24,d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24)|0;e=M()|0;r=k;c[r>>2]=q;c[r+4>>2]=e;l=l+-1|0;k=k+8|0;j=j+8|0}case 65545:case 65556:while(1){if((l|0)<=0)break b;r=j;r=IS(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0;c[k>>2]=r;l=l+-1|0;k=k+4|0;j=j+4|0}case 65537:while(1){if((l|0)<=0)break b;r=j;r=yU(d[r>>0]|d[r+1>>0]<<8|0)|0;b[k>>1]=r;l=l+-1|0;k=k+2|0;j=j+2|0}case 65566:{k=c[t>>2]|0;n=(l|0)/(k|0)|0;o=g+64|0;m=0;while(1){if((m|0)>=(k|0))break b;k=n;l=c[(c[o>>2]|0)+(m<<2)>>2]|0;while(1){if((k|0)<=0)break;r=j;r=yU(d[r>>0]|d[r+1>>0]<<8|0)|0;b[l>>1]=r;k=k+-1|0;l=l+2|0;j=j+2|0}m=m+1|0;k=c[t>>2]|0}}case 65541:case 65536:case 65544:case 67584:case 67586:case 67587:case 65557:case 65559:{Bk(k|0,j|0,H(l,r)|0)|0;break}case 65565:case 65554:{k=c[t>>2]|0;n=g+64|0;m=H((l|0)/(k|0)|0,r)|0;l=0;while(1){if((l|0)>=(k|0))break b;k=j;Bk(c[(c[n>>2]|0)+(l<<2)>>2]|0,k|0,m|0)|0;l=l+1|0;j=k+m|0;k=c[t>>2]|0}}case 65553:while(1){if((l|0)<=0)break b;r=j;q=a[r>>0]|0;e=q&255;a[k>>0]=q<<24>>24>-1?128-e|0:e;l=l+-1|0;k=k+1|0;j=r+1|0}case 65542:case 65543:while(1){if((l|0)<=0)break b;r=j;b[k>>1]=b[u+((d[r>>0]|0)<<1)>>1]|0;l=l+-1|0;k=k+2|0;j=r+1|0}case 65561:{k=c[t>>2]|0;n=(l|0)/(k|0)|0;o=g+64|0;m=0;while(1){if((m|0)>=(k|0))break b;k=0;l=c[(c[o>>2]|0)+(m<<2)>>2]|0;while(1){if((k|0)>=(n|0))break;r=j;e=r+2|0;w=d[e>>0]|0;q=d[r+1>>0]|0;c[l>>2]=w<<28|q|q<<20|w<<8&3840|(d[r>>0]|0)<<12;w=d[r+4>>0]|0;q=d[r+3>>0]|0;c[l+4>>2]=w<<4|w<<24|q<<16|q>>>4|(a[e>>0]&-16&255)<<8;k=k+1|0;l=l+8|0;j=r+5|0}m=m+1|0;k=c[t>>2]|0}}default:{i=-1;break a}}while(0);if((c[s>>2]&-2|0)==67586){g=c[c[g+64>>2]>>2]|0;w=(H(c[t>>2]|0,c[p>>2]|0)|0)+3&-4;gc[c[(c[u+512>>2]|0)+12>>2]&7](g,g,+f[u+516>>2],w)}c[h>>2]=1}}else{mx(e,16,184419,v);i=-22}while(0);Nb=v;return i|0}function ad(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0;E=Nb;Nb=Nb+16|0;x=E;n=c[f+26352>>2]|0;j=c[g+21796>>2]|0;v=g+21792|0;l=c[v>>2]|0;t=c[h>>2]|0;w=t&64;r=g+25336|0;dC(f,r,(t>>>7&1)+l|0);t=g+25372|0;p=c[(c[t>>2]|0)+48>>2]|0;q=c[h>>2]|0;i=(q&128|0)!=0;do if(!(c[p+(j<<2)>>2]&128))if(i){l=c[v>>2]&-2;k=c[f+27e3>>2]|0;o=(H(k,l)|0)+(c[g+21788>>2]|0)|0;m=c[p+(o<<2)>>2]|0;c[x>>2]=m;i=c[p+(o+k<<2)>>2]|0;j=x+4|0;c[j>>2]=i;k=k<<2|2;n=n*6|0;if((i^m)&128){i=i&-129;m=m&-129;c[x>>2]=m;c[j>>2]=i}if(m&15|0?!((w|0)!=0|(i&15|0)==0):0){j=o;u=20744;i=q|61712;s=m;break}j=o;u=20744;i=q|61504;s=m}else{k=2;D=13}else{if(i){D=c[g+21852>>2]|0;k=2;l=D+l|0;i=j;j=D}else{j=(c[v>>2]&-2)+(c[g+21848>>2]|0)|0;k=0;l=j;i=c[g+21788>>2]|0}j=(H(c[f+27e3>>2]|0,j)|0)+i|0;D=13}while(0);do if((D|0)==13){m=c[p+(j<<2)>>2]|0;c[x+4>>2]=m;c[x>>2]=m;i=(w|0)!=0;if(!(i|(m&15|0)==0)){u=20744;i=q|20744;s=m;break}if(!i?(o=m&48,o|0):0){u=20744;i=q|o|61696;s=m;break}u=(c[(c[f+28200>>2]|0)+72>>2]|0)==0?20800:20744;i=q|61504;s=m}while(0);c[h>>2]=i;dC(f,r,l);r=c[t>>2]|0;l=c[(c[f+26344>>2]|0)+(j<<2)>>2]|0;i=(c[r+36>>2]|0)+(l<<2)|0;l=(c[r+40>>2]|0)+(l<<2)|0;m=j<<2;j=(c[r+68>>2]|0)+m|0;m=(c[r+72>>2]|0)+m|0;if(!k){A=(c[v>>2]&1|0)==0;B=n<<1;C=A?i:i+(B<<2)|0;l=A?l:l+(B<<2)|0;B=A?j:j+2|0;m=A?m:m+2|0}else{C=i;B=j}i=g+22252|0;p=g+22444|0;o=g+21868|0;q=c[h>>2]|0;j=q&128;if(c[f+26360>>2]|0)if(!j){j=0;z=p}else{z=c[v>>2]&1;o=g+21996+(z<<7)|0;i=g+22636+(z*384|0)|0;z=g+22636+(z*384|0)+192|0}else z=p;A=s>>3&c[r+632>>2]<<4;a:do if((j|0)==(s&128|0)){if(q&8|0){c[g+28324>>2]=0;c[g+28332>>2]=0;c[g+28340>>2]=0;c[g+28348>>2]=0;if(!(s&7)){j=a[B>>0]|0;k=j<<24>>24>-1;if(!k){j=a[m>>0]|0;i=z}D=c[i+(A+(j<<24>>24)<<2)>>2]|0;B=c[o+(D<<2)>>2]|0;C=k?C:l;i=b[C>>1]|0;j=(H(B,i)|0)+128>>8;C=b[C+2>>1]|0;k=(H(B,C)|0)+128>>8;i=k-C<<16|j-i&65535;j=k<<16|j&65535;k=H(D,16843009)|0}else{i=0;j=0;k=0}c[g+28284>>2]=k;c[g+28292>>2]=k;c[g+28300>>2]=k;c[g+28308>>2]=k;c[g+28e3>>2]=j;c[g+28004>>2]=j;c[g+28008>>2]=j;c[g+28012>>2]=j;c[g+28032>>2]=j;c[g+28036>>2]=j;c[g+28040>>2]=j;c[g+28044>>2]=j;c[g+28064>>2]=j;c[g+28068>>2]=j;c[g+28072>>2]=j;c[g+28076>>2]=j;c[g+28096>>2]=j;c[g+28100>>2]=j;c[g+28104>>2]=j;c[g+28108>>2]=j;c[g+28160>>2]=i;c[g+28164>>2]=i;c[g+28168>>2]=i;c[g+28172>>2]=i;c[g+28192>>2]=i;c[g+28196>>2]=i;c[g+28200>>2]=i;c[g+28204>>2]=i;c[g+28224>>2]=i;c[g+28228>>2]=i;c[g+28232>>2]=i;c[g+28236>>2]=i;c[g+28256>>2]=i;c[g+28260>>2]=i;c[g+28264>>2]=i;c[g+28268>>2]=i;break}x=(w|0)==0;y=u&65535;w=(s&7|0)==0;f=(u&8|0)==0;v=n*3|0;h=0;while(1){if((h|0)==4)break a;r=h&1;s=h>>>1;j=g+28552+(h<<1)|0;if(!(!x?!(b[j>>1]&256):0))D=46;b:do if((D|0)==46){D=0;b[j>>1]=y;u=h<<2;p=d[88688+u>>0]|0;t=g+28312+p|0;b[t>>1]=0;b[t+8>>1]=0;if(!w){u=g+28272+p|0;b[u>>1]=0;b[u+8>>1]=0;u=g+27952+(p<<2)|0;c[u>>2]=0;c[u+4>>2]=0;c[u+32>>2]=0;c[u+36>>2]=0;u=g+28112+(p<<2)|0;c[u>>2]=0;c[u+4>>2]=0;c[u+32>>2]=0;c[u+36>>2]=0;break}j=a[B+h>>0]|0;if(j<<24>>24>-1){t=C;k=i}else{t=l;j=a[m+h>>0]|0;k=z}j=c[k+(A+(j<<24>>24)<<2)>>2]|0;q=c[o+(j<<2)>>2]|0;k=g+28272+p|0;j=j*257&65535;b[k>>1]=j;b[k+8>>1]=j;if(!f){u=(H(v,s)|0)+(0-r&3)|0;s=b[t+(u<<2)>>1]|0;r=(H(q,s)|0)+128>>8;t=b[t+(u<<2)+2>>1]|0;q=(H(q,t)|0)+128>>8;u=g+27952+(p<<2)|0;k=q<<16|r&65535;c[u>>2]=k;c[u+4>>2]=k;c[u+32>>2]=k;c[u+36>>2]=k;u=g+28112+(p<<2)|0;t=q-t<<16|r-s&65535;c[u>>2]=t;c[u+4>>2]=t;c[u+32>>2]=t;c[u+36>>2]=t;break}k=r<<1;p=h&2147483646;j=0;while(1){if((j|0)==4)break b;G=(H((j>>>1)+p|0,n)|0)+(j&1|k)|0;r=t+(G<<2)|0;s=d[88688+(j+u)>>0]|0;F=((H(q,b[r>>1]|0)|0)+128|0)>>>8;b[g+27952+(s<<2)>>1]=F;G=t+(G<<2)+2|0;I=((H(q,b[G>>1]|0)|0)+128|0)>>>8;b[g+27952+(s<<2)+2>>1]=I;c[g+28112+(s<<2)>>2]=I-(e[G>>1]|0)<<16|F-(e[r>>1]|0)&65535;j=j+1|0}}while(0);h=h+1|0}}else{v=j>>>6^2;f=(w|0)==0;h=u&65535;u=0;while(1){if((u|0)==4)break a;r=u&1;s=u>>>1;j=g+28552+(u<<1)|0;if(!(!f?!(b[j>>1]&256):0)){b[j>>1]=h;t=d[88688+(u<<2)>>0]|0;I=g+28312+t|0;b[I>>1]=0;b[I+8>>1]=0;if(!(c[x+(s<<2)>>2]&7)){p=(H(s,k)|0)+r|0;j=a[B+p>>0]|0;if(j<<24>>24>-1){q=C;p=i}else{q=l;j=a[m+p>>0]|0;p=z}G=c[p+(A+(j<<24>>24)<<2)>>2]|0;F=c[o+(G<<2)>>2]|0;j=g+28272+t|0;G=G*257&65535;b[j>>1]=G;b[j+8>>1]=G;j=(0-r&3)+(H(s,n)|0)|0;G=(b[q+(j<<2)+2>>1]<<v|0)/2|0;j=b[q+(j<<2)>>1]|0;I=(H(F,j)|0)+128>>8;F=(H(G,F)|0)+128>>8;D=g+27952+(t<<2)|0;y=F<<16|I&65535;c[D>>2]=y;c[D+4>>2]=y;c[D+32>>2]=y;c[D+36>>2]=y;j=F-G<<16|I-j&65535}else{j=g+28272+t|0;b[j>>1]=0;b[j+8>>1]=0;j=g+27952+(t<<2)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+32>>2]=0;c[j+36>>2]=0;j=0}I=g+28112+(t<<2)|0;c[I>>2]=j;c[I+4>>2]=j;c[I+32>>2]=j;c[I+36>>2]=j}u=u+1|0}}while(0);Nb=E;return}function bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=Nb;Nb=Nb+96|0;x=E+72|0;w=E+56|0;u=E+48|0;o=E+40|0;p=E+32|0;l=E+16|0;k=E;e=ee(a,b,e)|0;a:do if((e|0)>=0){A=a+28200|0;q=c[A>>2]|0;m=a+25672|0;n=c[m>>2]|0;B=a+26364|0;v=c[B>>2]|0;C=d+68|0;c[m>>2]=(c[C>>2]|0)==0&1;e=c[b+21824>>2]|0;c[B>>2]=e;f=c[b+34732>>2]|0;y=a+28208|0;D=a+28228|0;c[D>>2]=f;c[y>>2]=c[b+34736>>2];c[a+28216>>2]=c[b+34740>>2];c[a+28220>>2]=c[b+34744>>2];c[a+28224>>2]=c[b+34748>>2];r=a+28248|0;g=c[r>>2]|0;if((f|0)!=(g|0)?(h=1<<c[q+20>>2],z=c[q+48>>2]|0,i=f-z|0,(f-g+((f|0)<(g|0)?h:0)|0)>(z|0)):0)c[r>>2]=i+-1+((i|0)<1?h:0);z=a+26368|0;do if(c[z>>2]|0){i=(v|0)==2;f=i&1;j=a+24312|0;g=c[j>>2]|0;if(!g){c[k>>2]=199498;c[k+4>>2]=199033;c[k+8>>2]=1452;mx(0,0,214689,k);ba()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[l>>2]=199513;c[l+4>>2]=199033;c[l+8>>2]=1453;mx(0,0,214689,l);ba()}h=a+4|0;if((c[g+8+(f<<2)>>2]|0)==(c[h>>2]|0)){qt(g+4|0,2147483647,f);e=c[B>>2]|0}if((e|0)==3|(e|0)==(v|0)){if((v|0)==3){n=j;break}qt((c[j>>2]|0)+4|0,2147483647,(v|0)==1&1);n=j;break}f=c[j>>2]|0;if((c[f+88>>2]|0)!=(c[D>>2]|0)){if((v|0)==3){n=j;break}qt(f+4|0,2147483647,(v|0)==1&1);n=j;break}if(!((v|0)==1&(e|0)==2|i&(e|0)==1)){a=c[h>>2]|0;c[p>>2]=v;c[p+4>>2]=e;mx(a,16,199539,p);c[B>>2]=v;c[m>>2]=n;e=-1094995529;break a}if((n|0)==(c[m>>2]|0))n=j;else{bN(c[h>>2]|0,199577,o);c[B>>2]=v;c[m>>2]=n;e=-1163346256;break a}}else{h=a+4|0;n=a+24312|0}while(0);k=q+20|0;l=a+29540|0;g=q+52|0;j=a+28332|0;m=a+29532|0;while(1){i=c[D>>2]|0;e=c[r>>2]|0;f=(c[z>>2]|0)==0;if((i|0)==(e|0)){g=47;break}if(!f){g=48;break}if((i|0)==((e+1|0)%(1<<c[k>>2]|0)|0|0)){g=59;break}if(!(c[l>>2]|0))f=0;else f=c[j>>2]|0;q=c[h>>2]|0;c[u>>2]=i;c[u+4>>2]=e;mx(q,48,199643,u);b:do if(!(c[g>>2]|0)){e=0;while(1){if((e|0)==16)break b;c[a+28660+(e<<2)>>2]=-2147483648;e=e+1|0}}while(0);e=Ae(a)|0;if((e|0)<0){g=34;break}q=((c[r>>2]|0)+1|0)%(1<<c[k>>2]|0)|0;c[r>>2]=q;e=c[n>>2]|0;c[e+88>>2]=q;c[e+648>>2]=(c[g>>2]|0)==0&1;qt(e+4|0,2147483647,0);qt((c[n>>2]|0)+4|0,2147483647,1);c[m>>2]=0;e=cd(a)|0;if((e|0)<0?c[(c[h>>2]|0)+688>>2]&8|0:0)break a;if(c[l>>2]|0){e=c[j>>2]|0;if((((f|0)!=0?(s=c[e>>2]|0,t=c[f>>2]|0,(c[s+68>>2]|0)==(c[t+68>>2]|0)):0)?(c[s+72>>2]|0)==(c[t+72>>2]|0):0)?(c[s+80>>2]|0)==(c[t+80>>2]|0):0){e=f+4|0;js(e,2147483647,0);if(c[f+636>>2]|0)js(e,2147483647,1);q=c[c[j>>2]>>2]|0;e=c[f>>2]|0;bx(q,q+32|0,e,e+32|0,c[e+80>>2]|0,c[e+68>>2]|0,c[e+72>>2]|0);e=c[j>>2]|0;c[e+84>>2]=(c[f+84>>2]|0)+2}c[e+88>>2]=c[r>>2]}}if((g|0)==34){c[z>>2]=0;break}else if((g|0)==47)if(f)g=59;else g=48;do if((g|0)==48){g=c[n>>2]|0;if(!g){c[w>>2]=199498;c[w+4>>2]=199033;c[w+8>>2]=1559;mx(0,0,214689,w);ba()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[x>>2]=199513;c[x+4>>2]=199033;c[x+8>>2]=1560;mx(0,0,214689,x);ba()}e=c[B>>2]|0;f=a+29568|0;if((e|0)==3|(e|0)==(v|0)){c[f>>2]=(c[f>>2]|0)+1;c[n>>2]=0;f=(e|0)!=3&1;c[z>>2]=f;g=60;break}c[f>>2]=0;if((c[g+88>>2]|0)!=(i|0)){qt(g+4|0,2147483647,(e|0)==2&1);c[z>>2]=1;c[n>>2]=0;e=c[B>>2]|0;f=1;g=60;break}if(!(c[g+640>>2]&4)){c[z>>2]=0;g=63;break}else{c[z>>2]=1;c[n>>2]=0;g=61;break}}else if((g|0)==59){e=c[B>>2]|0;f=(e|0)!=3&1;c[z>>2]=f;g=60}while(0);if((g|0)==60)if((e|0)!=3&(f|0)==0)g=63;else g=61;if((g|0)==61){if((Ae(a)|0)<0){c[z>>2]=0;e=-1094995529;break}}else if((g|0)==63){sx(a,0);c[(c[n>>2]|0)+8+(((e|0)==2&1)<<2)>>2]=c[h>>2]}e=c[B>>2]|0;c:do if((e|0)==3)jq(c[a+26356>>2]|0,-1,(H(c[a+26992>>2]<<1,c[a+27e3>>2]|0)|0)+-2|0)|0;else{g=a+26992|0;h=a+26356|0;i=a+27e3|0;e=(e|0)==2&1;while(1){f=c[g>>2]|0;if((e|0)>=(f|0))break c;w=c[i>>2]|0;x=e+1|0;jq((c[h>>2]|0)+((H(w,e)|0)<<1)|0,-1,w-((x|0)==(f|0)&1)<<1|0)|0;e=x}}while(0);j=c[n>>2]|0;fh(j+76|0,j+84|0,c[A>>2]|0,y,c[B>>2]|0,c[C>>2]|0)|0;j=b+34724|0;Bk(a+28732|0,b+33932|0,(c[j>>2]|0)*12|0)|0;c[a+29524>>2]=c[j>>2];c[m>>2]=c[b+34728>>2];j=(c[d+48>>2]|0)==5;k=j&1;c[a+25696>>2]=k;h=c[a+29700>>2]|0;do if((h|0)>-1){i=c[D>>2]|0;if(!((i|0)==(h|0)?(c[b+840>>2]|0)==1:0))c[a+29552>>2]=1;f=a+29556|0;g=c[f>>2]|0;if((g|0)>=0){e=(1<<c[(c[A>>2]|0)+20>>2])+-1|0;if((e&g-i)>>>0<=h>>>0)break}else e=(1<<c[(c[A>>2]|0)+20>>2])+-1|0;c[f>>2]=(c[a+29552>>2]|0)==0?i:e&i+h}else f=a+29556|0;while(0);e=c[n>>2]|0;A=(c[e>>2]|0)+84|0;c[A>>2]=c[A>>2]|k;if(!j){if((c[f>>2]|0)==(c[D>>2]|0)?c[C>>2]|0:0){c[f>>2]=-1;c[e+644>>2]=1}}else{c[f>>2]=-1;c[e+644>>2]=1;D=a+29560|0;c[D>>2]=c[D>>2]|1}D=e+644|0;c[D>>2]=c[D>>2]|c[a+29560>>2];if(((c[B>>2]|0)!=3?c[z>>2]|0:0)?(c[a+29568>>2]|0)<=1:0){e=0;break}Je(a);be(a);e=0}while(0);Nb=E;return e|0}function cd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=Nb;Nb=Nb+128|0;B=J+96|0;z=J+88|0;y=J+80|0;u=J+64|0;t=J+56|0;s=J+48|0;r=J+40|0;w=J+32|0;v=J+24|0;q=J+8|0;m=J+112|0;n=J+108|0;if(!(c[a+29532>>2]|0))os(a);p=c[a+29524>>2]|0;I=a+4|0;b=c[I>>2]|0;if((p|0)==0?(c[b+680>>2]&2048|0)!=0:0)mx(b,48,198145,J);A=a+28332|0;F=a+24312|0;G=a+29540|0;D=a+29536|0;E=a+26364|0;k=a+28228|0;l=a+29528|0;j=0;f=0;b=0;d=0;i=0;a:while(1){if((j|0)>=(p|0))break;e=c[I>>2]|0;if(!(c[e+680>>2]&2048))g=a+28732+(j*12|0)|0;else{g=a+28732+(j*12|0)|0;K=c[a+28732+(j*12|0)+4>>2]|0;h=c[a+28732+(j*12|0)+8>>2]|0;c[q>>2]=c[g>>2];c[q+4>>2]=K;c[q+8>>2]=h;mx(e,48,198159,q)}e=c[g>>2]|0;b:do switch(e|0){case 3:case 1:{e=eK(a,c[a+28732+(j*12|0)+4>>2]|0,n)|0;f=Nr(a,e,m)|0;b=c[g>>2]|0;if(!f){if(((b|0)==3?(o=c[a+28460+(c[a+28732+(j*12|0)+8>>2]<<2)>>2]|0,o|0):0)?(c[o+88>>2]|0)==(e|0):0){g=i;b=0;break b}mx(c[I>>2]|0,(c[G>>2]|0)==0?48:16,198174,v);d=-1094995529;g=i;b=0}else{h=e;x=16}break}default:{h=f;f=b;b=e;x=16}}while(0);c:do if((x|0)==16){x=0;switch(b|0){case 1:{b=c[I>>2]|0;if(c[b+680>>2]&2048|0){K=c[G>>2]|0;c[w>>2]=c[a+28732+(j*12|0)+4>>2];c[w+4>>2]=K;mx(b,48,198201,w)}uw(a,h,c[n>>2]^3)|0;e=h;g=i;b=f;break c}case 3:{b=a+28732+(j*12|0)+8|0;e=c[b>>2]|0;if((c[a+28460+(e<<2)>>2]|0)!=(f|0))fI(a,e,0);II(a,c[m>>2]|0);c[a+28460+(c[b>>2]<<2)>>2]=f;if(!f){e=h;g=i;b=0;break c}c[f+100>>2]=1;c[D>>2]=(c[D>>2]|0)+1;e=h;g=i;b=f;break c}case 2:{e=eK(a,c[a+28732+(j*12|0)+8>>2]|0,n)|0;c[m>>2]=e;b=c[a+28460+(e<<2)>>2]|0;if(b|0){fI(a,e,c[n>>2]^3);e=h;g=i;break c}b=c[I>>2]|0;if(!(c[b+680>>2]&2048)){e=h;g=i;b=0;break c}mx(b,48,198232,r);e=h;g=i;b=0;break c}case 6:{b=c[F>>2]|0;if((c[A>>2]|0)==(b|0)){mx(c[I>>2]|0,16,198258,s);II(a,0);b=c[F>>2]|0}g=a+28732+(j*12|0)+8|0;if(c[b+100>>2]|0){b=0;while(1){if((b|0)==32)break;if((c[a+28460+(b<<2)>>2]|0)==(c[F>>2]|0)){if((b|0)!=(c[g>>2]|0))mx(c[I>>2]|0,16,198330,t);fI(a,b,0)}b=b+1|0}c[m>>2]=32;b=c[F>>2]|0}e=c[g>>2]|0;if((c[a+28460+(e<<2)>>2]|0)!=(b|0)){if(c[b+100>>2]|0){x=42;break a}fI(a,e,0);b=c[F>>2]|0;c[a+28460+(c[g>>2]<<2)>>2]=b;c[b+100>>2]=1;c[D>>2]=(c[D>>2]|0)+1;b=c[F>>2]|0}e=b+640|0;c[e>>2]=c[e>>2]|c[E>>2];e=h;g=1;b=f;break c}case 4:{b=c[a+28732+(j*12|0)+8>>2]|0;while(1){if((b|0)>=16)break;fI(a,b,0);b=b+1|0}c[m>>2]=b;e=h;g=i;b=f;break c}case 5:{while(1){if(!(c[G>>2]|0))break;uw(a,c[(c[A>>2]|0)+88>>2]|0,0)|0}b=0;while(1){if((b|0)==16)break;fI(a,b,0);b=b+1|0}c[m>>2]=16;b=c[F>>2]|0;c[b+88>>2]=0;c[k>>2]=0;c[l>>2]=1;c[b+92>>2]=1;b=0;while(1){if((b|0)==16)break;c[a+28660+(b<<2)>>2]=-2147483648;b=b+1|0}c[m>>2]=16;e=h;g=i;b=f;break c}default:{e=h;g=i;b=f;break c}}}while(0);j=j+1|0;f=e;i=g}if((x|0)==42){c[u>>2]=198393;c[u+4>>2]=197783;c[u+8>>2]=696;mx(0,0,214689,u);ba()}do if(!i){if(c[G>>2]|0){e=c[A>>2]|0;b=c[F>>2]|0;if((e|0)==(b|0)){K=e+640|0;c[K>>2]=c[K>>2]|c[E>>2];break}}else b=c[F>>2]|0;if(c[b+100>>2]|0){mx(c[I>>2]|0,16,198419,y);d=-1094995529;break}if(uw(a,c[b+88>>2]|0,0)|0){mx(c[I>>2]|0,16,198532,z);d=-1094995529}b=c[G>>2]|0;if(!b)b=1;else{eF(a+28336|0,A|0,b<<2|0)|0;b=(c[G>>2]|0)+1|0}K=c[F>>2]|0;c[a+28332>>2]=K;c[G>>2]=b;K=K+640|0;c[K>>2]=c[K>>2]|c[E>>2]}while(0);b=c[D>>2]|0;e=c[G>>2]|0;h=a+28200|0;f=c[(c[h>>2]|0)+48>>2]|0;do if((e+b|0)>(((f|0)>1?f:1)|0)){K=c[I>>2]|0;c[B>>2]=b;c[B+4>>2]=e;c[B+8>>2]=f;mx(K,16,198574,B);b=c[G>>2]|0;if(!((c[D>>2]|0)!=0&(b|0)==0)){uw(a,c[(c[a+28332+(b+-1<<2)>>2]|0)+88>>2]|0,0)|0;g=-1094995529;break}b=0;while(1){if(b>>>0>=16)break;if(c[a+28460+(b<<2)>>2]|0)break;b=b+1|0}fI(a,b,0);g=-1094995529}else g=d;while(0);b=0;while(1){if((b|0)>=(c[G>>2]|0))break;d=c[a+28332+(b<<2)>>2]|0;if(c[d+648>>2]|0?(C=c[d+88>>2]|0,K=c[h>>2]|0,((1<<c[K+20>>2])+-1&(c[(c[F>>2]|0)+88>>2]|0)-C|0)>(c[K+48>>2]|0)):0)uw(a,C,0)|0;b=b+1|0}is(a);As(a);e=0;f=0;d=0;while(1){if((e|0)==256)break;b=c[a+27164+(e<<2)>>2]|0;if(!b)b=f;else{K=c[b+4>>2]|0;b=c[K+20>>2]|0;K=c[K+24>>2]|0;b=f>>>0>b>>>0?f:b;d=d>>>0>K>>>0?d:K}e=e+1|0;f=b}do if((g|0)>-1?(c[D>>2]|0)==0:0){b=c[E>>2]|0;if((c[G>>2]|0)>=3?!((d|0)<2&(f|0)<=(((b|0)==3?1:2)|0)):0)break;if(((f|0)<=((((c[a+29564>>2]|0)==0&1)<<1)+((b|0)==3?2:3)|0)?(H=c[F>>2]|0,(c[(c[H>>2]|0)+88>>2]|0)==1):0)?(K=H+644|0,c[K>>2]=c[K>>2]|1,(c[(c[I>>2]|0)+180>>2]|0)==0):0){K=a+29560|0;c[K>>2]=c[K>>2]|2}}while(0);Nb=J;return ((c[(c[I>>2]|0)+688>>2]&8|0)==0?0:g)|0}function dd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=Nb;Nb=Nb+64|0;p=C+56|0;o=C+48|0;v=C+32|0;t=C+24|0;u=C+16|0;f=C;y=c[d>>2]|0;B=d+21788|0;q=c[B>>2]|0;z=d+868|0;A=c[z>>2]|0;x=c[c[y+24312>>2]>>2]|0;b=c[x+32>>2]|0;e=d+21772|0;c[e>>2]=b;c[d+21776>>2]=c[x+36>>2];b=nr(d,b)|0;a:do if((b|0)>=0){n=d+21816|0;c[n>>2]=-1;if((c[y+26020>>2]|0)!=(((c[e>>2]|0)*12|0)+(12<<c[y+25652>>2])|0)){c[f>>2]=200170;c[f+4>>2]=199033;c[f+8>>2]=2540;mx(0,0,214689,f);ba()}if(c[y+25692>>2]|0)c[z>>2]=0;w=y+26360|0;if(!(c[w>>2]|0))b=(c[y+26364>>2]|0)!=3&1;else b=1;c[d+21820>>2]=b;x=y+4|0;if(((((c[(c[x>>2]|0)+808>>2]&2|0)==0?(c[y+26364>>2]|0)==3:0)?(h=c[y+25628>>2]|0,i=c[h+604>>2]|0,i|0):0)?(s=(H(c[y+26996>>2]|0,c[d+21804>>2]|0)|0)+(c[d+21800>>2]|0)|0,g=(c[y+27004>>2]|0)+-1|0,g=(s|0)>(g|0)?g:s,!((s|0)<0|(g|0)==0)):0)?(a[i+(c[(c[h+572>>2]|0)+(g+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0)c[h+600>>2]=1;do if(!(c[(c[y+28196>>2]|0)+4>>2]|0)){m=d+21792|0;f=y+26996|0;i=d+21812|0;l=d+4|0;j=y+26364|0;k=y+26992|0;e=q;while(1){v=(H(c[f>>2]|0,c[m>>2]|0)|0)+(c[B>>2]|0)|0;b=c[i>>2]|0;if((v|0)>=(b|0)){f=46;break}b=sc(y,d)|0;if((b|0)<=-1){f=52;break}mO(y,d);if(c[w>>2]|0){c[m>>2]=(c[m>>2]|0)+1;b=sc(y,d)|0;if((b|0)<=-1){f=50;break}mO(y,d);c[m>>2]=(c[m>>2]|0)+-1}b=(c[B>>2]|0)+1|0;c[B>>2]=b;if((b|0)>=(c[f>>2]|0)){Kc(y,d,e,b);c[B>>2]=0;Yq(y,d);b=c[m>>2]|0;e=b+1|0;c[m>>2]=e;if(!(c[w>>2]|0)){if((c[j>>2]|0)!=3){e=b+2|0;c[m>>2]=e}}else{b=b+2|0;c[m>>2]=b;if((b|0)<(c[k>>2]|0)){nu(y,d);e=c[m>>2]|0}else e=b}if((e|0)<(c[k>>2]|0))h=0;else{f=61;break}}else h=e;g=NS(l)|0;if((g|0)<1?(c[n>>2]|0)<1:0){f=69;break}e=h}if((f|0)==46){A=c[x>>2]|0;c[o>>2]=b;mx(A,16,200297,o);AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[B>>2]|0,c[m>>2]|0,14);b=-1094995529;break a}else if((f|0)==50){e=(c[m>>2]|0)+-1|0;c[m>>2]=e}else if((f|0)==52)e=c[m>>2]|0;else if((f|0)==61){b=NS(l)|0;do if(b|0){if((b|0)>0?(c[(c[x>>2]|0)+688>>2]&262144|0)==0:0)break;AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[B>>2]|0,e,112);b=-1094995529;break a}while(0);AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[B>>2]|0)+-1|0,e,112);break}else if((f|0)==69){b=c[d+21800>>2]|0;e=c[d+21804>>2]|0;f=c[B>>2]|0;if(g|0){AL(d,b,e,f,c[m>>2]|0,14);b=-1094995529;break a}AL(d,b,e,f+-1|0,c[m>>2]|0,112);b=c[B>>2]|0;if((b|0)<=(h|0))break;Kc(y,d,h,b);break}A=c[x>>2]|0;c[p>>2]=c[B>>2];c[p+4>>2]=e;mx(A,16,200401,p);AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[B>>2]|0,c[m>>2]|0,14);break a}else{b=d+4|0;VQ(b);o=d+32856|0;s=c[b>>2]|0;s=s+((SU(b)|0)/8|0)|0;b=zv(o,s,((NS(b)|0)+7|0)/8|0)|0;if((b|0)<0)break a;iu(y,d);s=d+21792|0;l=y+26996|0;m=d+21812|0;n=y+25688|0;r=d+32872|0;p=d+32876|0;j=y+26992|0;k=y+26364|0;i=q;b=c[s>>2]|0;while(1){q=(H(c[l>>2]|0,b)|0)+(c[B>>2]|0)|0;b=c[m>>2]|0;if((q|0)>=(b|0)){f=18;break}b=rc(y,d)|0;if((b|0)>-1?(mO(y,d),(c[w>>2]|0)!=0):0){c[s>>2]=(c[s>>2]|0)+1;b=rc(y,d)|0;if((b|0)>-1)mO(y,d);c[s>>2]=(c[s>>2]|0)+-1}h=MI(o)|0;e=c[r>>2]|0;f=c[p>>2]|0;g=f+2|0;if((c[n>>2]&16384|0)!=0&e>>>0>g>>>0){f=25;break}if(e>>>0>g>>>0){q=c[x>>2]|0;c[t>>2]=f-e;mx(q,48,200329,t)}if((b|0)<0){f=30;break}b=c[r>>2]|0;e=c[p>>2]|0;if(b>>>0>(e+4|0)>>>0){f=32;break}b=(c[B>>2]|0)+1|0;c[B>>2]=b;do if((b|0)>=(c[l>>2]|0)){Kc(y,d,i,b);c[B>>2]=0;Yq(y,d);b=c[s>>2]|0;c[s>>2]=b+1;if(!(c[w>>2]|0)){if((c[k>>2]|0)==3){e=0;break}c[s>>2]=b+2;e=0;break}else{q=b+2|0;c[s>>2]=q;if((q|0)>=(c[j>>2]|0)){e=0;break}nu(y,d);e=0;break}}else e=i;while(0);b=c[s>>2]|0;if(h|0){f=42;break}if((b|0)>=(c[j>>2]|0)){f=42;break}else i=e}if((f|0)==18){A=c[x>>2]|0;c[u>>2]=b;mx(A,16,200297,u);AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[B>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}else if((f|0)==25){AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[B>>2]|0)+-1|0,c[s>>2]|0,112);b=c[B>>2]|0;if((b|0)<(i|0))break;Kc(y,d,i,b+1|0);break}else if((f|0)==30){e=c[p>>2]|0;b=c[r>>2]|0}else if((f|0)!=32)if((f|0)==42){AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[B>>2]|0)+-1|0,b,112);b=c[B>>2]|0;if((b|0)<=(e|0))break;Kc(y,d,e,b);break}A=c[x>>2]|0;z=c[s>>2]|0;c[v>>2]=c[B>>2];c[v+4>>2]=z;c[v+8>>2]=e-b;mx(A,16,200354,v);AL(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[B>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}while(0);c[z>>2]=A;b=0}while(0);Nb=C;return b|0}function ed(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;T=Nb;Nb=Nb+80|0;K=T+48|0;O=T+40|0;N=T+32|0;M=T+24|0;L=T+16|0;J=T+8|0;j=T;G=T+52|0;P=b+4|0;H=c[P>>2]|0;S=b+27016|0;c[S>>2]=0;I=b+27012|0;c[I>>2]=0;i=H+96|0;if(!(c[i>>2]&32768)){c[b+29544>>2]=0;if(!(c[b+26368>>2]|0))c[b+24312>>2]=0;ZI(b+29660|0)}h=c[b+27024>>2]|0;do if((h|0)==4){if((f|0)>8){g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((g|0)==16777216){R=e+5|0;if((IS(d[R>>0]|d[R+1>>0]<<8|d[R+2>>0]<<16|d[R+3>>0]<<24|0)|0)>>>0>f>>>0){c[b+27020>>2]=0;break}else g=16777216}}else{if((f|0)<=3)break;g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24}R=IS(g|0)|0;if(!(R>>>0<2|R>>>0>f>>>0))c[b+27020>>2]=1}while(0);E=b+25640|0;g=gf(E,e,f,H,c[b+27020>>2]|0,h,c[H+48>>2]|0,c[i>>2]&1)|0;do if((g|0)<0)mx(H,16,171209,j);else{B=H+808|0;if(c[B>>2]&1){g=io(b)|0;if((g|0)<0)break}else g=0;n=b+25644|0;o=H+844|0;p=b+27008|0;q=b+29660|0;r=b+27036|0;s=b+29564|0;C=b+29544|0;D=b+25628|0;t=b+25636|0;u=b+29700|0;v=H+680|0;w=H+704|0;x=b+29684|0;y=b+29880|0;z=b+29572|0;A=b+25632|0;R=b+24312|0;h=0;m=0;a:while(1){if((m|0)>=(c[n>>2]|0)){Q=64;break}k=c[E>>2]|0;j=k+(m*72|0)|0;i=c[k+(m*72|0)+68>>2]|0;if((c[o>>2]|0)>7&(i|0)==0){if((c[k+(m*72|0)+48>>2]|0)==6){i=0;Q=22}}else Q=22;b:do if((Q|0)==22){Q=0;c[p>>2]=i;i=c[k+(m*72|0)+48>>2]|0;c[I>>2]=i;switch(i|0){case 19:case 13:case 12:case 11:case 10:case 9:break b;case 5:{if((a[(c[k+(m*72|0)+12>>2]|0)+1>>0]&-4)<<24>>24==-104){Q=24;break a}if(!h){if(c[C>>2]|0?c[B>>2]&2|0:0){Q=28;break a}AI(b)}c[s>>2]=1;h=1;break}case 1:break;case 4:case 3:case 2:{bN(H,171360,M);break b}case 6:{l=gh(q,k+(m*72|0)+28|0,r,H)|0;if(!(c[s>>2]|0))i=(c[u>>2]|0)!=-1;else i=1;c[s>>2]=i&1;if(c[v>>2]&8388608|0)Pm(y,c[P>>2]|0);i=c[P>>2]|0;c[i+276>>2]=d[x>>0];if((l|0)>=0)break b;if(!(c[i+688>>2]&8))break b;else break a}case 7:{i=k+(m*72|0)+28|0;c[G>>2]=c[i>>2];c[G+4>>2]=c[i+4>>2];c[G+8>>2]=c[i+8>>2];c[G+12>>2]=c[i+12>>2];c[G+16>>2]=c[i+16>>2];if((Yc(G,H,r,0)|0)<=-1?(mx(c[P>>2]|0,48,171378,N),NQ(G,(c[k+(m*72|0)+24>>2]|0)+1|0,(c[k+(m*72|0)+20>>2]|0)+-1|0)|0,(Yc(G,H,r,0)|0)<=-1):0)Yc(i,H,r,1)|0;break b}case 8:{l=Gd(k+(m*72|0)+28|0,H,r,c[k+(m*72|0)+16>>2]|0)|0;if((l|0)>=0)break b;if(!(c[(c[P>>2]|0)+688>>2]&8))break b;else break a}default:{l=c[k+(m*72|0)+16>>2]|0;c[O>>2]=i;c[O+4>>2]=l;mx(H,48,171436,O);break b}}c[S>>2]=1;i=xd(b,j)|0;if(i|0){k=c[D>>2]|0;l=c[t>>2]|0;c[k+(l*34768|0)+23408>>2]=0;c[k+(l*34768|0)+23404>>2]=0;if((i|0)>=0)break;mx(c[P>>2]|0,16,171468,K);break}if((c[C>>2]|0)==1){if((!((m|0)<(g|0)|(c[B>>2]&1|0)==0)?(c[z>>2]|0)==0:0)?c[R>>2]|0:0){Pq(H);c[z>>2]=1}i=c[P>>2]|0;j=c[i+704>>2]|0;if(j|0?(F=Zb[c[j+28>>2]&15](i,e,f)|0,(F|0)<0):0){l=F;break a}}i=c[w>>2]|0;if(!i)j=c[A>>2]|0;else j=1;if((c[t>>2]|0)==(j|0)){if(!(c[(c[P>>2]|0)+704>>2]|0))l=of(b)|0;else{l=Zb[c[i+32>>2]&15](H,c[k+(m*72|0)+24>>2]|0,c[k+(m*72|0)+20>>2]|0)|0;c[t>>2]=0}if((l|0)<0?(c[(c[P>>2]|0)+688>>2]&8|0)!=0:0)break a}}while(0);m=m+1|0}do if((Q|0)==24){mx(c[P>>2]|0,16,171252,J);c[b+28728>>2]=-2147483648;l=-1}else if((Q|0)==28){mx(b,16,171277,L);l=-1094995529}else if((Q|0)==64){g=of(b)|0;if((g|0)<0?c[(c[P>>2]|0)+688>>2]&8|0:0){l=g;break}l=0}while(0);k=b+26364|0;if((((c[k>>2]|0)==3?c[C>>2]|0:0)?(c[b+28200>>2]|0)==(c[(c[b+27036+(c[c[b+28196>>2]>>2]<<2)>>2]|0)+4>>2]|0):0)?c[b+29656>>2]|0:0){h=c[D>>2]|0;g=b+24972|0;if(!(c[(c[g>>2]|0)+248>>2]|0))j=0;else j=(c[h+23404>>2]|0)==0;i=h+24|0;ru(h+696|0,c[R>>2]|0);do if(!j){g=h+728|0;if(!(c[h+23404>>2]|0)){ru(g,0);break}else{ru(g,c[h+23452>>2]|0);break}}else{ru(h+728|0,g);Q=h+23416|0;c[h+23452>>2]=g;P=c[g>>2]|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];Q=h+23428|0;P=(c[g>>2]|0)+32|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[h+23440>>2]=c[b+25612>>2]}while(0);if(c[h+23408>>2]|0)ru(h+760|0,c[h+25372>>2]|0);c[h+820>>2]=c[h+23404>>2];Dc(i);if(j){g=h+23416|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}}g=c[R>>2]|0;if((g|0?(c[b+25672>>2]|0)==0:0)?c[S>>2]|0:0)qt(g+4|0,2147483647,(c[k>>2]|0)==2&1);g=(l|0)<0?l:f}while(0);Nb=T;return g|0}function fd(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0;G=Nb;Nb=Nb+32|0;F=G+24|0;E=G+16|0;D=G+8|0;C=G;z=c[f+48>>2]|0;A=(i|0)==1&(z|0)==1?2:1;B=c[f+310116>>2]&1;j=(c[h+92>>2]|0)!=0;if((i|0)!=0&(z|0)!=0){y=j?5:6;z=j?12:24;i=j?873924:873860;j=j?873908:873844}else{y=j?6:7;z=j?31:60;i=j?873892:873828;j=j?873876:873812}x=c[i>>2]|0;t=c[j>>2]|0;u=h+8|0;v=g+8|0;w=g+16|0;i=0;a:while(1){l=c[u>>2]|0;if(i>>>0>=l>>>0){j=41;break}b:do if(a[h+24+i>>0]|0){r=i+1|0;s=h+12+r|0;j=a[s>>0]|0;if(j<<24>>24==(a[h+12+i>>0]|0)){q=0;while(1){if(q>>>0>=(c[f+310112+((j&255)<<2)>>2]|0)>>>0){i=r;break b}o=d[h+86416+(i*48|0)+q>>0]|0;j=c[v>>2]|0;p=c[w>>2]|0;m=c[g>>2]|0;l=m+(j>>>3)|0;l=(IS(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24|0)|0)<<(j&7)>>>23;k=b[t+(l<<2)>>1]|0;l=b[t+(l<<2)+2>>1]|0;n=l<<16>>16;if(l<<16>>16<0){j=j+9|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;I=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(n+32|0))+k|0;k=b[t+(I<<2)>>1]|0;I=b[t+(I<<2)+2>>1]|0;l=I<<16>>16;if(I<<16>>16<0){j=j-n|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;k=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(l+32|0))+k|0;l=b[t+(k<<2)+2>>1]|0;k=b[t+(k<<2)>>1]|0}}else l=n;I=l+j|0;c[v>>2]=p>>>0>I>>>0?I:p;k=(H(k-z|0,A)|0)+o|0;a[h+86416+(r*48|0)+q>>0]=k;k=k&255;if(k>>>0>127){j=16;break a}q=q+1|0;j=a[s>>0]|0}}if(!(j<<24>>24)){q=0;j=0;while(1){if(q>>>0>=(c[f+310112+((j&255)<<2)>>2]|0)>>>0){i=r;break b}o=d[((q|0)==0?0:(q<<1)-B|0)+(h+86416+(i*48|0))>>0]|0;j=c[v>>2]|0;p=c[w>>2]|0;m=c[g>>2]|0;I=m+(j>>>3)|0;I=(IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>23;k=b[t+(I<<2)>>1]|0;I=b[t+(I<<2)+2>>1]|0;n=I<<16>>16;if(I<<16>>16<0){j=j+9|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;I=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(n+32|0))+k|0;k=b[t+(I<<2)>>1]|0;I=b[t+(I<<2)+2>>1]|0;l=I<<16>>16;if(I<<16>>16<0){j=j-n|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;k=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(l+32|0))+k|0;l=b[t+(k<<2)+2>>1]|0;k=b[t+(k<<2)>>1]|0}}else l=n;I=l+j|0;c[v>>2]=p>>>0>I>>>0?I:p;k=(H(k-z|0,A)|0)+o|0;a[h+86416+(r*48|0)+q>>0]=k;k=k&255;if(k>>>0>127){j=33;break a}q=q+1|0;j=a[s>>0]|0}}else{q=0;while(1){if(q>>>0>=(c[f+310112+((j&255)<<2)>>2]|0)>>>0){i=r;break b}o=d[((q+B|0)>>>1)+(h+86416+(i*48|0))>>0]|0;j=c[v>>2]|0;p=c[w>>2]|0;m=c[g>>2]|0;I=m+(j>>>3)|0;I=(IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>23;k=b[t+(I<<2)>>1]|0;I=b[t+(I<<2)+2>>1]|0;n=I<<16>>16;if(I<<16>>16<0){j=j+9|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;I=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(n+32|0))+k|0;k=b[t+(I<<2)>>1]|0;I=b[t+(I<<2)+2>>1]|0;l=I<<16>>16;if(I<<16>>16<0){j=j-n|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;k=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(l+32|0))+k|0;l=b[t+(k<<2)+2>>1]|0;k=b[t+(k<<2)>>1]|0}}else l=n;I=l+j|0;c[v>>2]=p>>>0>I>>>0?I:p;k=(H(k-z|0,A)|0)+o|0;a[h+86416+(r*48|0)+q>>0]=k;k=k&255;if(k>>>0>127){j=26;break a}q=q+1|0;j=a[s>>0]|0}}}else{j=H(Yz(g,y)|0,A)|0;i=i+1|0;a[h+86416+(i*48|0)>>0]=j;r=h+12+i|0;q=1;while(1){if(q>>>0>=(c[f+310112+(d[r>>0]<<2)>>2]|0)>>>0)break b;o=j&255;j=c[v>>2]|0;p=c[w>>2]|0;m=c[g>>2]|0;I=m+(j>>>3)|0;I=(IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>23;k=b[x+(I<<2)>>1]|0;I=b[x+(I<<2)+2>>1]|0;n=I<<16>>16;if(I<<16>>16<0){j=j+9|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;I=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(n+32|0))+k|0;k=b[x+(I<<2)>>1]|0;I=b[x+(I<<2)+2>>1]|0;l=I<<16>>16;if(I<<16>>16<0){j=j-n|0;j=p>>>0>j>>>0?j:p;I=m+(j>>>3)|0;k=((IS(d[I>>0]|d[I+1>>0]<<8|d[I+2>>0]<<16|d[I+3>>0]<<24|0)|0)<<(j&7)>>>(l+32|0))+k|0;l=b[x+(k<<2)+2>>1]|0;k=b[x+(k<<2)>>1]|0}}else l=n;j=l+j|0;c[v>>2]=p>>>0>j>>>0?j:p;j=(H(k-z|0,A)|0)+o|0;a[h+86416+(i*48|0)+q>>0]=j;k=j&255;if(k>>>0>127){j=40;break a}else q=q+1|0}}while(0)}if((j|0)==16){i=c[e+4>>2]|0;c[C>>2]=k;mx(i,16,190246,C);i=-1094995529}else if((j|0)==26){i=c[e+4>>2]|0;c[D>>2]=k;mx(i,16,190246,D);i=-1094995529}else if((j|0)==33){i=c[e+4>>2]|0;c[E>>2]=k;mx(i,16,190246,E);i=-1094995529}else if((j|0)==40){i=c[e+4>>2]|0;c[F>>2]=k;mx(i,16,190246,F);i=-1094995529}else if((j|0)==41){k=h+86416|0;i=h+86416+(l*48|0)|0;j=k+48|0;do{c[k>>2]=c[i>>2];k=k+4|0;i=i+4|0}while((k|0)<(j|0));i=0}Nb=G;return i|0}function gd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=Nb;Nb=Nb+640|0;u=w+64|0;q=w+48|0;l=w+32|0;k=w+16|0;i=w;o=w+360|0;m=w+80|0;h=c[a+13440>>2]|0;a:do if(!h){i=a+11420|0;g=Hj(i,f)|0;if((g|0)>=0){n=a+11128|0;j=a+11700|0;g=c[a+11960>>2]|0;do if(!(c[n>>2]|0))if((g|0)==(c[a+12520>>2]|0)){g=Hj(j,f)|0;if((g|0)<0)break a;else break}else{c[l>>2]=211227;c[l+4>>2]=210702;c[l+8>>2]=596;mx(0,0,214689,l);ba()}else if((g|0)==(c[a+80>>2]|0)){g=Hj(j,d)|0;if((g|0)<0)break a;else break}else{c[k>>2]=211188;c[k+4>>2]=210702;c[k+8>>2]=592;mx(0,0,214689,k);ba()}while(0);h=a+11980|0;g=Hj(h,d)|0;if((g|0)>=0){Bk(m|0,j|0,280)|0;Bk(o|0,h|0,280)|0;t=a+16|0;j=c[t>>2]|0;if((j|0)==(c[a+12>>2]|0)?(c[a+11412>>2]|0)!=0:0)i=(c[a+76>>2]|0)==0?e:i;k=c[n>>2]|0;if(!k){g=(c[a+11132>>2]|0)==0?i:m;if(!(c[a+13444>>2]|0))p=20;else h=o}else{g=(c[a+13444>>2]|0)==0?i:m;if(!(c[a+11132>>2]|0))p=20;else h=o}if((p|0)==20)h=g;do if((j|0)==(c[a+20>>2]|0)?(c[a+12532>>2]|0)!=0:0){if((j|0)==7?c[a+11040>>2]&31|0:0){r=i;v=h;s=g;break}if((h|0)!=(e|0)){s=(h|0)==(i|0);r=s?b:i;v=b;s=s|(h|0)==(g|0)?b:g;break}g=(d|0)>(f|0)?f:d;if(!(c[a+11412>>2]|0)){c[q>>2]=211265;c[q+4>>2]=210702;c[q+8>>2]=623;mx(0,0,214689,q);ba()}else{Jn(b,e,g);break a}}else{r=i;v=h;s=g}while(0);if((r|0)==(e|0))g=k;else{fg(c[a+13432>>2]|0,r,e,f)|0;g=c[n>>2]|0}h=(r|0)!=(s|0);if(!g){if(h)Ad(a,s,r,f,(s|0)==(b|0)&1)|0;if((s|0)==(v|0))q=d;else q=Ef(a,v,d,s,f)|0}else{if(h)d=Ef(a,s,d,r,f)|0;if((s|0)==(v|0))q=d;else{Ad(a,v,s,d,(v|0)==(b|0)&1)|0;q=d}}if((v|0)!=(b|0)&(q|0)!=0){m=a+128|0;if(!(c[m>>2]|0))d=v;else{h=(q|0)>65536?q:65536;if((v|0)==(e|0)){d=a+10760|0;g=Hj(d,h)|0;if((g|0)<0)break}else d=v;l=a+10480|0;g=Hj(l,h)|0;if((g|0)<0)break;k=a+10740|0;b:do if(!g)g=c[k>>2]|0;else{i=a+10748|0;j=a+10756|0;h=0;while(1){g=c[k>>2]|0;if((h|0)>=(g|0))break b;s=c[a+10480+(h<<2)>>2]|0;e=c[i>>2]|0;g=oK(h|0,0,1942904875,2874)|0;g=kP(g|0,M()|0,3141592,0)|0;g=LJ(g|0,M()|0,-1576685468,0)|0;M()|0;g=Hh(a,s,e,g,c[j>>2]|0)|0;if((g|0)<0)break a;else h=h+1|0}}while(0);p=v+260|0;if((g|0)!=(c[p>>2]|0)){c[u>>2]=211278;c[u+4>>2]=210702;c[u+8>>2]=666;mx(0,0,214689,u);ba()}o=a+132|0;if(((c[o>>2]|0)+q|0)>(c[a+10748>>2]|0))c[o>>2]=0;c:do if((c[m>>2]|0)<64){i=a+83180|0;if(!(c[i>>2]|0)){i=a+83176|0;j=a+10744|0;k=a+62612|0;h=0;while(1){if((h|0)>=(g|0))break c;g=(c[a+10480+(h<<2)>>2]|0)+(H(c[o>>2]|0,c[j>>2]|0)|0)|0;nc[c[i>>2]&15](c[d+(h<<2)>>2]|0,c[v+(h<<2)>>2]|0,g,c[k>>2]|0,0,0,q);h=h+1|0;g=c[p>>2]|0}}m=q&-16;n=H(c[v+264>>2]|0,m)|0;d:do if(m){j=a+10744|0;k=a+62616|0;h=0;while(1){if((h|0)>=(g|0))break d;g=(c[a+10480+(h<<2)>>2]|0)+(H(c[o>>2]|0,c[j>>2]|0)|0)|0;nc[c[i>>2]&15](c[d+(h<<2)>>2]|0,c[v+(h<<2)>>2]|0,g,c[k>>2]|0,0,0,m);h=h+1|0;g=c[p>>2]|0}}while(0);if((q|0)==(m|0))break;j=a+83176|0;k=a+10744|0;l=a+62612|0;i=q-m|0;h=0;while(1){if((h|0)>=(g|0))break c;g=(c[a+10480+(h<<2)>>2]|0)+(H(c[o>>2]|0,c[k>>2]|0)|0)+n|0;nc[c[j>>2]&15]((c[d+(h<<2)>>2]|0)+n|0,(c[v+(h<<2)>>2]|0)+n|0,g,c[l>>2]|0,0,0,i);h=h+1|0;g=c[p>>2]|0}}else switch(c[t>>2]|0){case 6:{gj(a,d,v,l,q);break c}case 7:{aj(a,d,v,l,q);break c}case 8:{Dj(a,d,v,l,q);break c}case 9:{Cj(a,d,v,l,q);break c}default:break c}while(0);c[o>>2]=(c[o>>2]|0)+q}fg(c[a+13436>>2]|0,b,d,q)|0;g=q}else g=q}}}else if(!(c[a+13444>>2]|0)){fg(h,b,e,f)|0;g=d;break}else{c[i>>2]=211175;c[i+4>>2]=210702;c[i+8>>2]=581;mx(0,0,214689,i);ba()}while(0);Nb=w;return g|0}function hd(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;E=Nb;Nb=Nb+160|0;D=E+88|0;l=E+80|0;h=E+72|0;f=E+64|0;w=E;if((c[a+25696>>2]|0)!=0?(c[e+48>>2]|0)!=5:0){mx(c[a+4>>2]|0,16,199218,f);f=-1094995529}else x=4;do if((x|0)==4){g=c[d+21808>>2]|0;j=a+26360|0;i=(c[j>>2]|0)==0;if(i)f=(c[a+26364>>2]|0)!=3;else f=1;C=c[a+27004>>2]|0;if(!(g>>>0<C>>>0&g<<(f&1)>>>0<C>>>0)){mx(c[a+4>>2]|0,16,199257,h);f=-1094995529;break}z=a+26996|0;t=c[z>>2]|0;f=(g>>>0)/(t>>>0)|0;t=g-(H(f,t)|0)|0;y=d+21788|0;c[y>>2]=t;c[d+21800>>2]=t;t=a+26364|0;C=c[t>>2]|0;f=f<<(((C|0)!=3|i^1)&1);u=d+21792|0;c[u>>2]=f;k=d+21804|0;c[k>>2]=f;f=f+1|0;if((C|0)==2){c[u>>2]=f;c[k>>2]=f}f=Hd(a,d)|0;if((f|0)>=0){h=a+28196|0;g=d+840|0;if((c[(c[h>>2]|0)+32>>2]|0)==2){if((c[g>>2]|0)==3){Mg(a,d,-1);if(!(c[j>>2]|0))x=15;else{Mg(a,d,0);Mg(a,d,1);x=15}}}else x=15;if(((x|0)==15?(c[g>>2]|0)==3:0)?(c[d+21844>>2]|0)==0:0)Lo(a,d);if(!(c[a+29572>>2]|0))qf(a,d);s=a+4|0;i=c[s>>2]|0;f=c[i+836>>2]|0;a:do if((f|0)<=47){do if((f|0)>31)if((c[a+27012>>2]|0)==5)x=24;else{x=29;break a}else if((f|0)<=23)if((f|0)>15)if((c[g>>2]|0)==3){x=29;break a}else break;else if((f|0)>7)break;else break a;else x=24;while(0);if((x|0)==24?(c[g>>2]|0)!=1:0){x=29;break}if(!(c[e+68>>2]|0))x=29}else x=29;while(0);if((x|0)==29)c[d+868>>2]=0;A=d+868|0;do if((c[A>>2]|0)==1?(c[a+25632>>2]|0)>1:0)if(!(c[i+96>>2]&1)){c[a+25692>>2]=1;break}else{c[A>>2]=2;break}while(0);B=d+872|0;q=c[B>>2]|0;C=d+876|0;p=c[C>>2]|0;r=c[h>>2]|0;g=c[r+44>>2]|0;g=(g|0)>0?g:0;r=c[r+48>>2]|0;c[d+860>>2]=-33-((q|0)>(p|0)?p:q)-((g|0)>(r|0)?g:r)+((c[(c[a+28200>>2]|0)+1184>>2]|0)*6|0);r=a+29544|0;g=c[r>>2]|0;h=g+1|0;c[r>>2]=h;r=d+832|0;c[r>>2]=h;if(!h)f=c[k>>2]|0;else{f=c[k>>2]|0;b[a+29584+((g&31)<<1)>>1]=f}q=b[a+29584+((h&31)<<1)>>1]|0;if((g|0)>30&((f|0)>=(q|0)&(q+3|0)>=(f|0))){c[l>>2]=h;c[l+4>>2]=32;mx(i,24,199285,l)}n=d+23412|0;o=a+29540|0;p=a+29536|0;m=0;while(1){if((m|0)==2)break;q=c[r>>2]&31;i=d+23404+(m<<2)|0;h=0;while(1){if((h|0)==16)break;j=w+(h<<2)|0;c[j>>2]=60;b:do if((m>>>0<(c[n>>2]|0)>>>0?h>>>0<(c[i>>2]|0)>>>0:0)?(v=c[(c[c[d+23416+(m*1920|0)+(h*40|0)+36>>2]>>2]|0)+248>>2]|0,v|0):0){k=c[v>>2]|0;l=c[o>>2]|0;f=0;while(1){if((f|0)>=(l|0))break;if((c[c[(c[c[a+28332+(f<<2)>>2]>>2]|0)+248>>2]>>2]|0)==(k|0)){x=50;break}f=f+1|0}if((x|0)==50){x=0;c[j>>2]=f}g=c[p>>2]|0;f=0;while(1){if((f|0)>=(g|0))break b;F=c[a+28460+(f<<2)>>2]|0;if(F|0?(c[c[(c[F>>2]|0)+248>>2]>>2]|0)==(k|0):0)break;f=f+1|0}c[j>>2]=f+l}while(0);h=h+1|0}c[a+29920+(q<<9)+(m<<8)+4>>2]=-1;c[a+29920+(q<<9)+(m<<8)>>2]=-1;f=0;while(1){if((f|0)==16)break;c[a+29920+(q<<9)+(m<<8)+(f+2<<2)>>2]=c[d+23416+(m*1920|0)+(f*40|0)+24>>2]&3|c[w+(f<<2)>>2]<<2;f=f+1|0}c[a+29920+(q<<9)+(m<<8)+76>>2]=-1;c[a+29920+(q<<9)+(m<<8)+72>>2]=-1;f=16;while(1){if((f|0)==48)break;c[a+29920+(q<<9)+(m<<8)+(f+4<<2)>>2]=c[d+23416+(m*1920|0)+(f*40|0)+24>>2]&3|c[w+(f+-16>>1<<2)>>2]<<2;f=f+1|0}m=m+1|0}x=c[s>>2]|0;if(!(c[x+680>>2]&1))f=0;else{w=c[r>>2]|0;v=c[t>>2]|0;s=H(c[z>>2]|0,c[u>>2]|0)|0;s=s+(c[y>>2]|0)|0;f=d+836|0;t=(AE(c[f>>2]|0)|0)<<24>>24;u=(c[d+844>>2]|0)==0?1137073:199386;q=(c[e+48>>2]|0)==5?199391:1137073;r=c[a+28228>>2]|0;m=c[a+24312>>2]|0;l=c[m+76>>2]|0;m=c[m+80>>2]|0;n=c[d+23404>>2]|0;o=c[d+23408>>2]|0;p=c[d+848>>2]|0;k=c[A>>2]|0;j=c[B>>2]|0;g=c[C>>2]|0;h=c[d+880>>2]|0;if((h|0)==1)i=(c[d+884>>2]|0)==0?1137073:199396;else i=1137073;if((c[f>>2]|0)==3)f=(c[d+21844>>2]|0)==0?199398:199403;else f=1137073;c[D>>2]=w;c[D+4>>2]=(v|0)==3?199384:(v|0)==1?199380:199382;c[D+8>>2]=s;c[D+12>>2]=t;c[D+16>>2]=u;c[D+20>>2]=q;c[D+24>>2]=r;c[D+28>>2]=l;c[D+32>>2]=m;c[D+36>>2]=n;c[D+40>>2]=o;c[D+44>>2]=p;c[D+48>>2]=k;c[D+52>>2]=j;c[D+56>>2]=g;c[D+60>>2]=h;c[D+64>>2]=i;c[D+68>>2]=f;mx(x,48,199408,D);f=0}}}while(0);Nb=E;return f|0}function id(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){h=PV()|0;c[h>>2]=22;h=0;g=0}else{r=b+4|0;q=b+104|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=ol(b)|0}while((hU(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=ol(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=ol(b)|0;if((i|32|0)!=120)if(j){o=8;n=47;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=ol(b)|0;if((d[157473+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){sw(b,0,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{o=16;n=47}}else{e=j?10:e;if(e>>>0>(d[157473+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;sw(b,0,0);h=PV()|0;c[h>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;do{i=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=ol(b)|0;e=j+-48|0}while(e>>>0<10&i>>>0<429496729);if(e>>>0<10){m=0;do{f=oK(i|0,m|0,10,0)|0;k=M()|0;l=((e|0)<0)<<31>>31;o=~l;if(k>>>0>o>>>0|(k|0)==(o|0)&f>>>0>~e>>>0){f=10;e=m;n=76;break c}i=kP(f|0,k|0,e|0,l|0)|0;m=M()|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=ol(b)|0;e=j+-48|0}while(e>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(e>>>0>9){j=p;e=m}else{f=10;e=m;n=76}}else{j=p;e=0}}else{j=p;e=0;i=0}}else{o=e;n=47}while(0);d:do if((n|0)==47){if(!(o+-1&o)){n=a[214883+((o*23|0)>>>5&7)>>0]|0;f=a[157473+i>>0]|0;e=f&255;if(o>>>0>e>>>0){i=0;do{i=e|i<<n;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=ol(b)|0;f=a[157473+j>>0]|0;e=f&255}while(i>>>0<134217728&o>>>0>e>>>0);k=e;e=0}else{j=i;k=e;e=0;i=0}l=GN(-1,-1,n|0)|0;m=M()|0;if(o>>>0<=k>>>0|(m>>>0<e>>>0|(m|0)==(e|0)&l>>>0<i>>>0)){f=o;n=76;break}while(1){i=uN(i|0,e|0,n|0)|0;e=M()|0;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=ol(b)|0;f=a[157473+j>>0]|0;if(o>>>0<=(f&255)>>>0|(e>>>0>m>>>0|(e|0)==(m|0)&i>>>0>l>>>0)){f=o;n=76;break d}}}e=a[157473+i>>0]|0;f=e&255;if(o>>>0>f>>>0){i=0;do{i=f+(H(i,o)|0)|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=ol(b)|0;e=a[157473+j>>0]|0;f=e&255}while(i>>>0<119304647&o>>>0>f>>>0);k=e;e=0}else{j=i;k=e;i=0;e=0}if(o>>>0>f>>>0){m=uS(-1,-1,o|0,0)|0;n=M()|0;f=k;while(1){if(e>>>0>n>>>0|(e|0)==(n|0)&i>>>0>m>>>0){f=o;n=76;break d}k=oK(i|0,e|0,o|0,0)|0;l=M()|0;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=o;n=76;break d}i=kP(k|0,l|0,f|0,0)|0;e=M()|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=ol(b)|0;f=a[157473+j>>0]|0;if(o>>>0<=(f&255)>>>0){f=o;n=76;break}}}else{f=o;n=76}}while(0);if((n|0)==76)if(f>>>0>(d[157473+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=ol(b)|0}while(f>>>0>(d[157473+i>>0]|0)>>>0);j=PV()|0;c[j>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else j=p;if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0<h>>>0|(e|0)==(h|0)&i>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){r=PV()|0;c[r>>2]=34;g=kP(g|0,h|0,-1,-1)|0;h=M()|0;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){r=PV()|0;c[r>>2]=34;break}}g=((j|0)<0)<<31>>31;g=iP(i^j|0,e^g|0,j|0,g|0)|0;h=M()|0}while(0);L(h|0);return g|0}function jd(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=e+12|0;m=(SI(c[(c[l>>2]|0)+12>>2]|0)|0)/8|0;n=e+420|0;j=H(c[n>>2]|0,c[g+76>>2]|0)|0;i=c[g>>2]|0;k=H(j,m)|0;o=((k|0)<0)<<31>>31;e=xh(e,f,k,o,k,o)|0;a:do if((e|0)>=0){e=c[f+24>>2]|0;b:do switch(c[(c[l>>2]|0)+12>>2]|0){case 65546:while(1){if((j|0)<=0)break b;n=c[i>>2]^-2147483648;o=e;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+-1|0;i=i+4|0;e=e+4|0}case 65547:while(1){if((j|0)<=0)break b;n=IS(c[i>>2]^-2147483648|0)|0;o=e;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+-1|0;i=i+4|0;e=e+4|0}case 65548:while(1){if((j|0)<=0)break b;n=c[i>>2]>>8;o=e;a[o>>0]=n;a[o+1>>0]=n>>>8;a[o+2>>0]=n>>>16;i=i+4|0;j=j+-1|0;e=o+3|0}case 65564:{i=c[n>>2]|0;l=(j|0)/(i|0)|0;k=g+64|0;f=0;while(1){if((f|0)>=(i|0))break b;i=l;j=c[(c[k>>2]|0)+(f<<2)>>2]|0;while(1){if((i|0)<=0)break;g=c[j>>2]>>8;o=e;a[o>>0]=g;a[o+1>>0]=g>>>8;a[o+2>>0]=g>>>16;i=i+-1|0;j=j+4|0;e=o+3|0}f=f+1|0;i=c[n>>2]|0}}case 65549:while(1){if((j|0)<=0)break b;n=c[i>>2]>>8;o=e;a[o+2>>0]=n;a[o+1>>0]=n>>>8;a[o>>0]=n>>>16;i=i+4|0;j=j+-1|0;e=o+3|0}case 65550:while(1){if((j|0)<=0)break b;n=((c[i>>2]|0)>>>8)+8388608|0;o=e;a[o>>0]=n;a[o+1>>0]=n>>>8;a[o+2>>0]=n>>>16;i=i+4|0;j=j+-1|0;e=o+3|0}case 65551:while(1){if((j|0)<=0)break b;n=((c[i>>2]|0)>>>8)+8388608|0;o=e;a[o+2>>0]=n;a[o+1>>0]=n>>>8;a[o>>0]=n>>>16;i=i+4|0;j=j+-1|0;e=o+3|0}case 65552:while(1){if((j|0)<=0)break b;n=b[i>>1]|0;g=d[148528+(n>>>8&255)>>0]|0;n=a[148528+(n&255)>>0]|0;o=e;a[o+2>>0]=g<<4;a[o+1>>0]=((n&255)<<8|g)>>>4;a[o>>0]=(n&255)>>>4;i=i+2|0;j=j+-1|0;e=o+3|0}case 65538:while(1){if((j|0)<=0)break b;n=b[i>>1]^-32768;o=e;a[o>>0]=n;a[o+1>>0]=n>>8;i=i+2|0;j=j+-1|0;e=e+2|0}case 65539:while(1){if((j|0)<=0)break b;n=yU(b[i>>1]^-32768|0)|0;o=e;a[o>>0]=n;a[o+1>>0]=n>>8;i=i+2|0;j=j+-1|0;e=e+2|0}case 65540:while(1){if((j|0)<=0)break b;o=e;a[o>>0]=a[i>>0]^-128;i=i+1|0;j=j+-1|0;e=o+1|0}case 65563:{i=c[n>>2]|0;l=(j|0)/(i|0)|0;k=g+64|0;f=0;while(1){if((f|0)>=(i|0))break b;i=l;j=c[(c[k>>2]|0)+(f<<2)>>2]|0;while(1){if((i|0)<=0)break;o=e;a[o>>0]=a[j>>0]^-128;i=i+-1|0;j=j+1|0;e=o+1|0}f=f+1|0;i=c[n>>2]|0}}case 65558:case 67585:while(1){if((j|0)<=0)break b;m=i;m=gQ(c[m>>2]|0,c[m+4>>2]|0)|0;n=M()|0;o=e;g=o;a[g>>0]=m;a[g+1>>0]=m>>8;a[g+2>>0]=m>>16;a[g+3>>0]=m>>24;o=o+4|0;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;i=i+8|0;j=j+-1|0;e=e+8|0}case 65545:case 65556:while(1){if((j|0)<=0)break b;n=IS(c[i>>2]|0)|0;o=e;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+-1|0;i=i+4|0;e=e+4|0}case 65537:while(1){if((j|0)<=0)break b;n=yU(b[i>>1]|0)|0;o=e;a[o>>0]=n;a[o+1>>0]=n>>8;i=i+2|0;j=j+-1|0;e=e+2|0}case 65566:{i=c[n>>2]|0;l=(j|0)/(i|0)|0;k=g+64|0;f=0;while(1){if((f|0)>=(i|0))break b;i=l;j=c[(c[k>>2]|0)+(f<<2)>>2]|0;while(1){if((i|0)<=0)break;g=yU(b[j>>1]|0)|0;o=e;a[o>>0]=g;a[o+1>>0]=g>>8;i=i+-1|0;j=j+2|0;e=e+2|0}f=f+1|0;i=c[n>>2]|0}}case 65541:case 65536:case 65544:case 67584:case 65557:case 65559:{Bk(e|0,i|0,k|0)|0;break}case 65565:case 65554:{i=c[n>>2]|0;k=g+64|0;f=H((j|0)/(i|0)|0,m)|0;j=0;while(1){if((j|0)>=(i|0))break b;i=e;Bk(i|0,c[(c[k>>2]|0)+(j<<2)>>2]|0,f|0)|0;j=j+1|0;e=i+f|0;i=c[n>>2]|0}}case 65543:while(1){if((j|0)<=0)break b;o=e;a[o>>0]=a[819168+((b[i>>1]|0)+32768>>2)>>0]|0;i=i+2|0;j=j+-1|0;e=o+1|0}case 65542:while(1){if((j|0)<=0)break b;o=e;a[o>>0]=a[835552+((b[i>>1]|0)+32768>>2)>>0]|0;j=j+-1|0;i=i+2|0;e=o+1|0}default:{e=-1;break a}}while(0);c[h>>2]=1;e=0}while(0);return e|0}function kd(b,d){b=b|0;d=d|0;var e=0,f=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.0;u=Nb;Nb=Nb+48|0;r=u+24|0;o=u+16|0;n=u+8|0;m=u;t=u+32|0;p=u+28|0;l=rR(40)|0;c[t>>2]=l;q=d+8|0;s=c[q>>2]|0;c[p>>2]=s;e=l;a:do if(!l)e=-12;else{v=+cm(s,p);i=l+8|0;g[i>>3]=v;k=c[p>>2]|0;if((k|0)!=(c[q>>2]|0)){c[l>>2]=0;c[q>>2]=k;c[b>>2]=e;e=0;break}g[i>>3]=1.0;f=c[d+16>>2]|0;b:do if(f|0){e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h)break b;if(ay(k,h)|0)break;e=e+1|0}t=k+(wu(h)|0)|0;c[q>>2]=t;c[l>>2]=1;c[l+16>>2]=e;c[b>>2]=l;e=0;break a}while(0);e=0;while(1){if(e>>>0>=4)break;f=c[150576+(e<<4)>>2]|0;if(ay(k,f)|0){j=13;break}e=e+1|0}if((j|0)==13){t=k+(wu(f)|0)|0;c[q>>2]=t;c[l>>2]=0;g[i>>3]=+g[150576+(e<<4)+8>>3];c[b>>2]=l;e=0;break}e=vQ(k,40)|0;c[q>>2]=e;if(!e){c[m>>2]=s;mx(d,16,209665,m);c[q>>2]=c[p>>2];kI(c[t>>2]|0);e=-22;break}c[q>>2]=e+1;if((a[k>>0]|0)==40){zM(t);e=ko(t,d)|0;if((e|0)<0)break;e=c[q>>2]|0;if((a[e>>0]|0)==41){c[q>>2]=e+1;c[b>>2]=c[t>>2];e=0;break}else{c[n>>2]=s;mx(d,16,209708,n);kI(c[t>>2]|0);e=-22;break}}e=ko(l+20|0,d)|0;if((e|0)<0){kI(c[t>>2]|0);break}f=c[q>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[q>>2]=f+1;ko((c[t>>2]|0)+24|0,d)|0;f=c[q>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[q>>2]=f+1;ko((c[t>>2]|0)+28|0,d)|0;f=c[q>>2]|0;e=a[f>>0]|0}}if(e<<24>>24!=41){c[o>>2]=s;mx(d,16,209729,o);kI(c[t>>2]|0);e=-22;break}c[q>>2]=f+1;k=c[t>>2]|0;c[k>>2]=2;i=c[p>>2]|0;j=k;do if(!(ay(i,209767)|0)){if(ay(i,209772)|0){c[k+16>>2]=2;break}if(ay(i,209777)|0){c[k+16>>2]=3;break}if(ay(i,209782)|0){c[k+16>>2]=4;break}if(ay(i,209786)|0){c[k+16>>2]=5;break}if(ay(i,209790)|0){c[k+16>>2]=6;break}if(ay(i,209794)|0){c[k+16>>2]=7;break}if(ay(i,209799)|0){c[k+16>>2]=8;break}if(ay(i,209804)|0){c[k+16>>2]=9;break}if(ay(i,209809)|0){c[k+16>>2]=10;break}if(ay(i,209813)|0){c[k+16>>2]=11;break}if(ay(i,209817)|0){c[k+16>>2]=12;break}if(ay(i,209821)|0){c[k+16>>2]=13;break}if(ay(i,209826)|0){c[k>>2]=5;break}if(ay(i,209833)|0){c[k>>2]=6;break}if(ay(i,209839)|0){c[k>>2]=10;break}if(ay(i,209843)|0){c[k>>2]=11;break}if(ay(i,209847)|0){c[k>>2]=12;break}if(ay(i,209851)|0){c[k>>2]=13;break}if(ay(i,209854)|0){c[k>>2]=15;break}if(ay(i,209858)|0){c[k>>2]=14;break}if(ay(i,209861)|0){c[k>>2]=16;break}if(ay(i,209865)|0){c[k>>2]=17;break}if(ay(i,209868)|0){c[k>>2]=7;break}if(ay(i,209871)|0){c[k>>2]=8;break}if(ay(i,209877)|0){c[k>>2]=9;break}if(ay(i,209883)|0){c[k>>2]=23;break}if(ay(i,209886)|0){c[k>>2]=24;break}if(ay(i,209892)|0){c[k>>2]=25;break}if(ay(i,209899)|0){c[k>>2]=26;break}if(ay(i,209904)|0){c[k>>2]=27;break}if(ay(i,209910)|0){c[k>>2]=28;break}if(ay(i,209915)|0){c[k>>2]=29;break}if(ay(i,209921)|0){c[k>>2]=30;break}if(ay(i,209927)|0){c[k>>2]=31;break}if(ay(i,209932)|0){c[k>>2]=32;break}if(ay(i,209936)|0){c[k>>2]=18;break}if(ay(i,209940)|0){c[k>>2]=38;break}if(ay(i,209946)|0){c[k>>2]=33;break}if(ay(i,209953)|0){c[k>>2]=34;break}if(ay(i,209959)|0){c[k>>2]=35;break}if(ay(i,209963)|0){c[k>>2]=36;break}if(ay(i,209966)|0){c[k>>2]=37;break}if(ay(i,209972)|0){c[k>>2]=39;break}if(ay(i,209979)|0){c[k>>2]=40;break}if(ay(i,209985)|0){c[k>>2]=41;break}if(ay(i,209993)|0){c[k>>2]=42;break}if(ay(i,209998)|0){c[k>>2]=43;break}if(ay(i,210004)|0){c[k>>2]=44;break}f=c[d+24>>2]|0;c:do if(f|0){e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h)break c;if(ay(i,h)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+20>>2]|0)+(e<<2)>>2];c[k>>2]=3;c[b>>2]=j;e=0;break a}while(0);f=c[d+32>>2]|0;d:do if(f|0){e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h)break d;if(ay(i,h)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+28>>2]|0)+(e<<2)>>2];c[k>>2]=4;c[b>>2]=j;e=0;break a}while(0);c[r>>2]=s;mx(d,16,210009,r);kI(c[t>>2]|0);e=-22;break a}else c[k+16>>2]=1;while(0);c[b>>2]=j;e=0}while(0);Nb=u;return e|0}function ld(b,d,e,g){b=b|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0,ia=0,ja=0;ca=Nb;Nb=Nb+784|0;r=ca+776|0;s=ca+772|0;u=ca+768|0;t=ca+764|0;Z=ca+32|0;_=ca;l=b+80848|0;m=b+82480|0;n=b+84112|0;o=b+85744|0;p=b+133968|0;q=b+134002|0;c[r>>2]=ca+592;c[s>>2]=ca+416;c[u>>2]=ca+240;c[t>>2]=ca+64;$=(g|0)!=0;aa=$?77216:77312;ba=(c[b+24>>2]|0)<3?1080800:1086688;i=c[b+40>>2]|0;if(i|0){Bk(l|0,b+80848+(i*136|0)|0,136)|0;Bk(b+81664|0,b+81664+(i*136|0)|0,136)|0;Bk(m|0,b+82480+(i*136|0)|0,136)|0;Bk(b+83296|0,b+83296+(i*136|0)|0,136)|0;Bk(n|0,b+84112+(i*136|0)|0,136)|0;Bk(b+84928|0,b+84928+(i*136|0)|0,136)|0;Bk(o|0,b+85744+(i*136|0)|0,136)|0;Bk(b+86560|0,b+86560+(i*136|0)|0,136)|0}i=b+76|0;j=c[b+12>>2]|0;Y=b+44|0;k=c[Y>>2]|0;if($){Bu(r,i,j,k,1);Bu(s,b+246|0,c[b+28>>2]|0,c[Y>>2]|0,1);i=b+48|0;if(c[i>>2]|0){X=b+16|0;Bu(u,b+416|0,c[X>>2]|0,c[Y>>2]|0,0);Bu(t,b+586|0,c[X>>2]|0,c[Y>>2]|0,0)}if(!(c[b+760>>2]|0)){bk(l);bk(b+81664|0);bk(m);bk(b+83296|0);bk(n);bk(b+84928|0);bk(o);bk(b+86560|0);CO(q,p)}}else{Cu(r,i,j,k,1);Cu(s,b+246|0,c[b+28>>2]|0,c[Y>>2]|0,1);i=b+48|0;if(c[i>>2]|0){X=b+16|0;Cu(u,b+416|0,c[X>>2]|0,c[Y>>2]|0,0);Cu(t,b+586|0,c[X>>2]|0,c[Y>>2]|0,0)}if(c[b+760>>2]|0){Ck(l);Ck(b+81664|0);Ck(m);Ck(b+83296|0);Ck(n);Ck(b+84928|0);Ck(o);Ck(b+86560|0);CO(q,p)}}X=161944+(g<<2)|0;V=c[r>>2]|0;W=b+8|0;T=c[s>>2]|0;U=161952+(g<<2)|0;S=c[t>>2]|0;M=c[u>>2]|0;N=161928+(g<<2)|0;O=Z+4|0;P=Z+8|0;Q=Z+12|0;R=_+4|0;C=_+8|0;D=_+12|0;E=Z+16|0;F=_+16|0;G=Z+20|0;H=_+20|0;I=Z+24|0;J=_+24|0;K=Z+28|0;L=_+28|0;g=(g|0)==0;A=Z+16|0;u=0;while(1){if((u|0)>=(c[Y>>2]|0))break;k=c[X>>2]|0;B=u+1|0;j=0;while(1){if((j|0)>=(k|0))break;s=(a[V+(u*34|0)+j>>0]|0)+7+((c[W>>2]|0)*23|0)|0;t=a[T+(u*34|0)+j>>0]|0;w=+f[ba+(s<<7)+(t<<4)>>2];y=+f[ba+(s<<7)+(t<<4)+4>>2];x=+f[ba+(s<<7)+(t<<4)+8>>2];v=+f[ba+(s<<7)+(t<<4)+12>>2];if((c[i>>2]|0)!=0?(j|0)<(c[U>>2]|0):0){r=b+133968+j|0;q=(a[r>>0]<<3)+(a[S+(u*34|0)+j>>0]|0)|0;t=b+134002+j|0;s=(a[t>>0]<<3)+(a[M+(u*34|0)+j>>0]|0)|0;da=+f[1092576+(q<<2)>>2];fa=+f[1094624+(q<<2)>>2];ga=+f[1092576+(s<<2)>>2];ea=+f[1094624+(s<<2)>>2];a[r>>0]=q&63;a[t>>0]=s&63;z=da*ga+fa*ea;ea=fa*ga-da*ea;f[b+81664+(B*136|0)+(j<<2)>>2]=w*fa;f[b+83296+(B*136|0)+(j<<2)>>2]=y*ea;f[b+84928+(B*136|0)+(j<<2)>>2]=x*fa;f[b+86560+(B*136|0)+(j<<2)>>2]=v*ea;w=w*da;y=y*z;x=x*da;v=v*z}f[b+80848+(B*136|0)+(j<<2)>>2]=w;f[b+82480+(B*136|0)+(j<<2)>>2]=y;f[b+84112+(B*136|0)+(j<<2)>>2]=x;f[b+85744+(B*136|0)+(j<<2)>>2]=v;j=j+1|0}k=c[N>>2]|0;l=b+52+(u<<2)|0;m=b+52+(B<<2)|0;j=0;while(1){if((j|0)>=(k|0))break;n=c[l>>2]|0;o=(c[m>>2]|0)-n|0;p=(o|0)!=0;v=p?1.0/+(o|0):1.0;q=a[aa+j>>0]|0;ja=c[b+80848+(u*136|0)+(q<<2)>>2]|0;c[Z>>2]=ja;ia=c[b+82480+(u*136|0)+(q<<2)>>2]|0;c[O>>2]=ia;ha=c[b+84112+(u*136|0)+(q<<2)>>2]|0;c[P>>2]=ha;t=c[b+85744+(u*136|0)+(q<<2)>>2]|0;c[Q>>2]=t;r=c[i>>2]|0;s=(r|0)==0;w=(c[h>>2]=ja,+f[h>>2]);x=(c[h>>2]=ia,+f[h>>2]);y=(c[h>>2]=ha,+f[h>>2]);z=(c[h>>2]=t,+f[h>>2]);do if(!s){t=b+81664+(u*136|0)+(q<<2)|0;if($&(j+-9|0)>>>0<5|g&j>>>0<2){f[E>>2]=-+f[t>>2];f[G>>2]=-+f[b+83296+(u*136|0)+(q<<2)>>2];f[I>>2]=-+f[b+84928+(u*136|0)+(q<<2)>>2];f[K>>2]=-+f[b+86560+(u*136|0)+(q<<2)>>2];break}else{c[A>>2]=c[t>>2];c[G>>2]=c[b+83296+(u*136|0)+(q<<2)>>2];c[I>>2]=c[b+84928+(u*136|0)+(q<<2)>>2];c[K>>2]=c[b+86560+(u*136|0)+(q<<2)>>2];break}}while(0);f[_>>2]=v*(+f[b+80848+(B*136|0)+(q<<2)>>2]-w);f[R>>2]=v*(+f[b+82480+(B*136|0)+(q<<2)>>2]-x);f[C>>2]=v*(+f[b+84112+(B*136|0)+(q<<2)>>2]-y);f[D>>2]=v*(+f[b+85744+(B*136|0)+(q<<2)>>2]-z);if(!s){f[F>>2]=v*(+f[b+81664+(B*136|0)+(q<<2)>>2]-+f[E>>2]);f[H>>2]=v*(+f[b+83296+(B*136|0)+(q<<2)>>2]-+f[G>>2]);f[J>>2]=v*(+f[b+84928+(B*136|0)+(q<<2)>>2]-+f[I>>2]);f[L>>2]=v*(+f[b+86560+(B*136|0)+(q<<2)>>2]-+f[K>>2])}if(p)kc[c[b+134060+(((r|0)!=0&1)<<2)>>2]&127](d+(j<<8)+8+(n<<3)|0,e+(j<<8)+8+(n<<3)|0,Z,_,o);j=j+1|0}u=B}Nb=ca;return}function md(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;t=Nb;Nb=Nb+80|0;s=t+72|0;q=t;do if(a[b+250>>0]|0){j=b+249|0;if(((a[j>>0]|0)==0?(a[j>>0]=1,(a[b+248>>0]|0)==0):0)?(LM(162768)|0)==2548:0){_v(162795)|0;a[j>>0]=0;j=2;break}n=GC()|0;o=M()|0;p=b+296|0;p=iP(n|0,o|0,c[p>>2]|0,c[p+4>>2]|0)|0;o=M()|0;if((o|0)>0|(o|0)==0&p>>>0>6e8){if(!(a[b+260>>0]|0)){_v(17472)|0;j=3;break}while(1){}}p=GC()|0;o=M()|0;if((o|0)>367362|(o|0)==367362&p>>>0>224206848)j=4;else{n=jT()|0;c[s>>2]=n;o=GC()|0;p=M()|0;GD(n,f)|0;c[n+28>>2]=f;j=n+8|0;c[j>>2]=g;c[j+4>>2]=0;j=n+16|0;c[j>>2]=h;c[j+4>>2]=0;c[n+36>>2]=i;Bk(c[n+24>>2]|0,e|0,f|0)|0;n=b+288|0;e=n;j=c[e>>2]|0;e=c[e+4>>2]|0;if((j|0)==0&(e|0)==0){j=n;c[j>>2]=o;c[j+4>>2]=p;j=o;e=p}l=iP(o|0,p|0,j|0,e|0)|0;g=M()|0;k=b+280|0;m=k;h=c[m+4>>2]|0;if((g|0)>(h|0)|((g|0)==(h|0)?l>>>0>(c[m>>2]|0)>>>0:0)){m=b+200|0;j=(c[m>>2]|0)+16|0;l=c[j>>2]|0;j=c[j+4>>2]|0;f=(c[b+204>>2]|0)+16|0;e=c[f>>2]|0;f=c[f+4>>2]|0;h=b+232|0;g=c[h>>2]|0;h=c[h+4>>2]|0;w=NH(m)|0;u=((w|0)<0)<<31>>31;v=NH(m)|0;z=((v|0)<0)<<31>>31;x=(u|0)>(z|0)|(u|0)==(z|0)&w>>>0>v>>>0;z=x?u:z;u=c[b+4>>2]|0;y=((u|0)<0)<<31>>31;do if((z|0)>(y|0)|(z|0)==(y|0)&(x?w:v)>>>0>u>>>0){if(!(a[b+254>>0]|0)){j=k;c[j>>2]=1e7;c[j+4>>2]=0;j=b+164|0;e=b+160|0;while(1){g=(c[e>>2]|0)+16|0;f=c[g>>2]|0;g=c[g+4>>2]|0;if(!((g|0)>0|(g|0)==0&f>>>0>0))break;z=(c[j>>2]|0)+16|0;z=iP(c[z>>2]|0,c[z+4>>2]|0,f|0,g|0)|0;y=M()|0;if(!((y|0)>0|(y|0)==0&z>>>0>200))break;No(e,q)|0;AP(q)}x=b+264|0;c[x>>2]=f;c[x+4>>2]=g;x=Eu(o|0,p|0,1e3,0)|0;y=M()|0;z=b+272|0;c[z>>2]=x;c[z+4>>2]=y;break}z=iP(e|0,f|0,g|0,h|0)|0;y=M()|0;if(((l|0)!=(g|0)|(j|0)!=(h|0))&((g|0)!=0|(h|0)!=0)&((y|0)>0|(y|0)==0&z>>>0>199)){z=k;c[z>>2]=1e7;c[z+4>>2]=0;while(1){y=(c[m>>2]|0)+16|0;z=c[y>>2]|0;y=c[y+4>>2]|0;if(!(((y|0)>0|(y|0)==0&z>>>0>0)&((y|0)<(h|0)|(y|0)==(h|0)&z>>>0<g>>>0)))break;No(m,q)|0;AP(q)}j=b+160|0;while(1){y=(c[j>>2]|0)+16|0;z=c[y>>2]|0;y=c[y+4>>2]|0;f=(c[m>>2]|0)+16|0;e=c[f>>2]|0;f=c[f+4>>2]|0;if(!(((y|0)>0|(y|0)==0&z>>>0>0)&((y|0)<(f|0)|(y|0)==(f|0)&z>>>0<e>>>0)))break;No(j,q)|0;AP(q)}x=b+264|0;c[x>>2]=e;c[x+4>>2]=f;x=Eu(o|0,p|0,1e3,0)|0;y=M()|0;z=b+272|0;c[z>>2]=x;c[z+4>>2]=y}}while(0);z=n;c[z>>2]=o;c[z+4>>2]=p}switch(d|0){case 112:{e=65543;j=8e3;r=45;break}case 128:{e=65542;j=8e3;r=45;break}case 64:{e=86050;j=16e3;r=45;break}case 80:{e=86050;j=8e3;r=45;break}case 96:{e=86050;j=c[17504+(i<<2)>>2]|0;r=45;break}case 160:{e=86018;r=46;break}case 7:{e=28;r=37;break}case 12:{e=174;r=37;break}default:fQ(s)}if((r|0)==37){f=b+152|0;j=c[f>>2]|0;if((i|0)!=0&(j|0)==-1){j=b+258|0;do if(a[j>>0]|0){z=Co(b,e)|0;c[b+244>>2]=z;if(!z){a[j>>0]=0;break}else{y=b+144|0;z=c[y>>2]|0;c[y>>2]=z+1;c[f>>2]=z;UP(b+200|0)|0;break}}while(0);j=c[f>>2]|0}if((j|0)>-1){z=c[s>>2]|0;c[z+32>>2]=j;PP(b+200|0,z)|0}}else if((r|0)==45){c[b+140>>2]=j;r=46}if((r|0)==46){f=b+148|0;j=c[f>>2]|0;if((j|0)==-1){j=b+257|0;do if(a[j>>0]|0){z=Co(b,e)|0;c[b+240>>2]=z;if(!z){a[j>>0]=0;break}else{y=b+144|0;z=c[y>>2]|0;c[y>>2]=z+1;c[f>>2]=z;UP(b+160|0)|0;break}}while(0);j=c[f>>2]|0}if((j|0)>-1){z=c[s>>2]|0;c[z+32>>2]=j;PP(b+160|0,z)|0}}j=0}}else j=1;while(0);Nb=t;return j|0}function nd(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Nb;Nb=Nb+80|0;w=x+48|0;r=x+40|0;q=x+32|0;l=x+24|0;k=x+16|0;j=x+8|0;i=x;t=x+56|0;u=SU(e)|0;c[t>>2]=c[e>>2];c[t+4>>2]=c[e+4>>2];c[t+8>>2]=c[e+8>>2];c[t+12>>2]=c[e+12>>2];c[t+16>>2]=c[e+16>>2];v=(NL(t)|0)!=0;a:do if(v){s=NL(t)|0;c[f+4>>2]=s;do if(s|0){h=Yz(t,3)|0;if((h|0)>5){c[i>>2]=h;mx(b,16,201081,i);s=75;break a}else{c[f+12>>2]=a[201069+h>>0];c[f+8>>2]=(h|0)>2&1;c[f+16>>2]=a[201075+h>>0];break}}while(0);s=NL(t)|0;c[f+20>>2]=s;do if(s|0){h=Yz(t,3)|0;c[f+24>>2]=h;if((h|0)>5){c[j>>2]=h;mx(b,16,201107,j);s=75;break a}else{c[f+28>>2]=a[201069+h>>0];break}}while(0);s=NL(t)|0;c[f+32>>2]=s;s=11}else s=11;while(0);b:do if((s|0)==11){j=NL(t)|0;o=f+36|0;c[o>>2]=j;p=f+44|0;m=f+40|0;c[m>>2]=c[p>>2];j=(Yz(t,2)|0)+(201133+(j<<2))|0;j=a[j>>0]|0;c[p>>2]=j;c[f+52>>2]=-1;c:do if(!(c[o>>2]|0)){i=91680+j|0;h=1;while(1){if((h|0)>(j|0)){h=j;break c}c[f+52+(h<<2)>>2]=(h<<5>>>(d[i>>0]|0))+-1;h=h+1|0}}else{i=1;h=j;while(1){if((i|0)>(h|0))break c;o=Yz(t,5)|0;c[f+52+(i<<2)>>2]=o;if((o|0)<(c[f+52+(i+-1<<2)>>2]|0))break;i=i+1|0;h=c[p>>2]|0}mx(b,16,201141,k);s=75;break b}while(0);o=f+4|0;d:do if(!(c[o>>2]|0))jq(f+76|0,0,170)|0;else{j=f+76|0;k=f+8|0;i=0;while(1){if((i|0)>=(h|0))break d;n=NL(t)|0;if(Ie(b,t,f,j,c[77200+((n<<1)+(c[k>>2]|0)<<2)>>2]|0,i,n)|0){s=75;break b}i=i+1|0;h=c[p>>2]|0}}while(0);n=f+20|0;e:do if(!(c[n>>2]|0))jq(f+246|0,0,170)|0;else{j=f+246|0;i=0;while(1){if((i|0)>=(h|0))break e;k=NL(t)|0;if(Pe(b,t,f,j,(k|0)==0?4:5,i,k)|0){s=75;break b}i=i+1|0;h=c[p>>2]|0}}while(0);do if(c[f+32>>2]|0){h=Yz(t,4)|0;if((h|0)==15)h=(Yz(t,8)|0)+15|0;h=h<<3;while(1){if((h|0)<=7)break;h=h+-2-(Zs(t,f,Yz(t,2)|0)|0)|0}if((h|0)<0){c[l>>2]=h;mx(b,16,201172,l);s=75;break b}else{yO(t,h);h=c[p>>2]|0;break}}while(0);l=f+48|0;c[l>>2]=c[l>>2]&1;if(h){if((c[f+52+(h<<2)>>2]|0)<31){i=h;s=44}}else{i=c[m>>2]|0;s=44}if((s|0)==44){k=i+-1|0;if(!((i|0)<1|(k|0)==(h|0))){if(c[o>>2]|0){h=f+76+(h*34|0)|0;i=f+76+(k*34|0)|0;j=h+34|0;do{a[h>>0]=a[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0))}if(c[n>>2]|0){h=f+246+((c[p>>2]|0)*34|0)|0;i=f+246+(k*34|0)|0;j=h+34|0;do{a[h>>0]=a[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0))}if(c[l>>2]|0){h=f+416+((c[p>>2]|0)*34|0)|0;i=f+416+(k*34|0)|0;j=h+34|0;do{a[h>>0]=a[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0));h=f+586+((c[p>>2]|0)*34|0)|0;i=f+586+(k*34|0)|0;j=h+34|0;do{a[h>>0]=a[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0))}}f:do if(c[o>>2]|0){i=c[f+12>>2]|0;j=f+8|0;h=0;while(1){if((h|0)>=(i|0))break f;m=a[f+76+((c[p>>2]|0)*34|0)+h>>0]|0;if((((m|0)>-1?m:0-m|0)|0)>(c[j>>2]<<3|7|0))break;else h=h+1|0}mx(b,16,201198,q);s=75;break b}while(0);g:do if(c[n>>2]|0){i=c[f+12>>2]|0;h=0;while(1){if((h|0)>=(i|0))break g;if((d[f+246+((c[p>>2]|0)*34|0)+h>>0]|0)>7)break;else h=h+1|0}mx(b,16,201215,r);s=75;break b}while(0);r=(c[p>>2]|0)+1|0;c[p>>2]=r;c[f+52+(r<<2)>>2]=31}i=f+756|0;c[f+760>>2]=c[i>>2];if(!(c[o>>2]|0)){if(c[n>>2]|0)s=66}else if((c[f+12>>2]|0)!=34)if(!(c[n>>2]|0)){h=0;s=67}else s=66;else{h=1;s=67}if((s|0)==66){h=(c[f+28>>2]|0)==34&1;s=67}if((s|0)==67)c[i>>2]=h;if(!(c[l>>2]|0))jq(f+416|0,0,340)|0;if(v)c[f>>2]=1;h=(SU(t)|0)-u|0;if((h|0)>(g|0)){c[w>>2]=g;c[w+4>>2]=h;mx(b,16,201232,w);s=75;break}else{JK(e,h);break}}while(0);if((s|0)==75){c[f>>2]=0;JK(e,g);jq(f+76|0,0,680)|0;h=g}Nb=x;return h|0}function od(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;q=8-g|0;p=8-h|0;s=H(p,q)|0;p=H(p,g)|0;q=H(q,h)|0;o=H(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;q=((e[a>>1]|0)+1+(((H(s,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[a>>1]=q;q=a+2|0;p=((e[q>>1]|0)+1+(((H(s,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+4|0;p=((e[q>>1]|0)+1+(((H(s,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+6|0;p=((e[q>>1]|0)+1+(((H(s,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+8|0;p=((e[q>>1]|0)+1+(((H(s,e[c+8>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+10|0;p=((e[q>>1]|0)+1+(((H(s,e[c+10>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+12|0;p=((e[q>>1]|0)+1+(((H(s,e[c+12>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+14|0;p=((e[q>>1]|0)+1+(((H(s,e[c+14>>1]|0)|0)+32|0)>>>6)|0)>>>1&65535;b[q>>1]=p;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=(q|0)==0?1:r;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=H(s,e[c>>1]|0)|0;q=((e[a>>1]|0)+1+((q+32+(H(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=q;q=a+2|0;p=H(s,e[c+2>>1]|0)|0;p=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+4|0;p=H(s,e[c+4>>1]|0)|0;p=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+6|0;p=H(s,e[c+6>>1]|0)|0;p=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+8|0;p=H(s,e[c+8>>1]|0)|0;p=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+10|0;p=H(s,e[c+10>>1]|0)|0;p=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+12|0;p=H(s,e[c+12>>1]|0)|0;p=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=p;q=a+14|0;p=H(s,e[c+14>>1]|0)|0;p=((e[q>>1]|0)+1+((p+32+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[q>>1]=p;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=H(s,e[c>>1]|0)|0;v=c+2|0;z=H(p,e[v>>1]|0)|0;t=c+(r<<1)|0;u=H(q,e[t>>1]|0)|0;x=c+(h<<1)|0;u=((e[a>>1]|0)+1+((y+32+z+u+(H(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[a>>1]=u;u=a+2|0;v=H(s,e[v>>1]|0)|0;z=c+4|0;y=H(p,e[z>>1]|0)|0;x=H(q,e[x>>1]|0)|0;w=c+(d<<1)|0;x=((e[u>>1]|0)+1+((v+32+y+x+(H(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[u>>1]=x;u=a+4|0;z=H(s,e[z>>1]|0)|0;x=c+6|0;y=H(p,e[x>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(i<<1)|0;w=((e[u>>1]|0)+1+((z+32+y+w+(H(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[u>>1]=w;u=a+6|0;x=H(s,e[x>>1]|0)|0;w=c+8|0;y=H(p,e[w>>1]|0)|0;v=H(q,e[v>>1]|0)|0;z=c+(j<<1)|0;v=((e[u>>1]|0)+1+((x+32+y+v+(H(o,e[z>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[u>>1]=v;u=a+8|0;w=H(s,e[w>>1]|0)|0;v=c+10|0;y=H(p,e[v>>1]|0)|0;z=H(q,e[z>>1]|0)|0;x=c+(k<<1)|0;z=((e[u>>1]|0)+1+((w+32+y+z+(H(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[u>>1]=z;u=a+10|0;v=H(s,e[v>>1]|0)|0;z=c+12|0;y=H(p,e[z>>1]|0)|0;x=H(q,e[x>>1]|0)|0;w=c+(l<<1)|0;x=((e[u>>1]|0)+1+((v+32+y+x+(H(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[u>>1]=x;u=a+12|0;z=H(s,e[z>>1]|0)|0;x=c+14|0;y=H(p,e[x>>1]|0)|0;w=H(q,e[w>>1]|0)|0;v=c+(m<<1)|0;w=((e[u>>1]|0)+1+((z+32+y+w+(H(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[u>>1]=w;u=a+14|0;x=H(s,e[x>>1]|0)|0;w=H(p,e[c+16>>1]|0)|0;v=H(q,e[v>>1]|0)|0;v=((e[u>>1]|0)+1+((x+32+w+v+(H(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1&65535;b[u>>1]=v;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function pd(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=Nb;Nb=Nb+112|0;C=D+96|0;B=D+88|0;z=D+80|0;y=D+72|0;q=D+64|0;p=D+56|0;m=D+48|0;l=D+40|0;k=D+32|0;j=D+24|0;i=D+16|0;g=D;if((c[b+25628>>2]|0)==(e|0)?(c[b+29544>>2]|0)==0:0)if(!(c[b+29572>>2]|0))n=1;else{c[g>>2]=200432;c[g+4>>2]=199033;c[g+8>>2]=1685;mx(0,0,214689,g);ba()}else n=0;A=e+4|0;h=ZE(A)|0;g=e+21808|0;c[g>>2]=h;h=ey(A)|0;a:do if(h>>>0<=9){i=h>>>0>4;c[e+844>>2]=i&1;i=a[171055+(i?h+-5|0:h)>>0]|0;u=i&255;v=e+836|0;c[v>>2]=u;u=u&3;s=e+840|0;c[s>>2]=u;r=f+48|0;if(!((u|0)==1|(c[r>>2]|0)!=5)){mx(c[b+4>>2]|0,16,200482,j);g=-1094995529;break}h=qp(A)|0;c[e+27776>>2]=h;if(h>>>0>255){g=c[b+4>>2]|0;c[k>>2]=h;mx(g,16,200521,k);g=-1094995529;break}g=c[b+27164+(h<<2)>>2]|0;if(!g){g=c[b+4>>2]|0;c[l>>2]=h;mx(g,16,200545,l);g=-1094995529;break}u=c[g+4>>2]|0;g=c[u>>2]|0;h=c[b+27036+(g<<2)>>2]|0;if(!h){C=c[b+4>>2]|0;c[m>>2]=g;mx(C,16,200577,m);g=-1094995529;break}m=c[h+4>>2]|0;j=m+20|0;g=Yz(A,c[j>>2]|0)|0;h=e+34732|0;c[h>>2]=g;if(!n?(o=c[b+28228>>2]|0,(o|0)!=(g|0)):0){C=c[b+4>>2]|0;c[p>>2]=o;c[p+4>>2]=g;mx(C,16,200609,p);g=-1094995529;break}c[e+21832>>2]=0;if(!(c[m+64>>2]|0)){if(i<<24>>24==3&(c[m+72>>2]|0)==0){mx(c[b+4>>2]|0,16,200641,q);g=-1;break}if(NL(A)|0)l=(NL(A)|0)+1|0;else l=3}else l=3;c[e+21824>>2]=l;c[e+21828>>2]=(l|0)!=3&1;i=(l|0)==3;g=c[h>>2]|0;if(i)h=c[j>>2]|0;else{h=(c[j>>2]|0)+1|0;g=g<<1|1}c[e+34752>>2]=g;c[e+34756>>2]=1<<h;if((c[r>>2]|0)==5)ZE(A)|0;h=m+24|0;g=c[h>>2]|0;if(!g){r=Yz(A,c[m+28>>2]|0)|0;c[e+34736>>2]=r;if(i&(c[u+8>>2]|0)==1){r=pp(A)|0;c[e+34740>>2]=r}g=c[h>>2]|0}if(((g|0)==1?(c[m+32>>2]|0)==0:0)?(r=pp(A)|0,c[e+34744>>2]=r,i&(c[u+8>>2]|0)==1):0){r=pp(A)|0;c[e+34748>>2]=r}g=e+21836|0;c[g>>2]=0;if(c[u+60>>2]|0){r=qp(A)|0;c[g>>2]=r}g=c[s>>2]|0;if((g|0)==3){g=NL(A)|0;c[e+21844>>2]=g;g=c[s>>2]|0}i=e+23404|0;k=b+4|0;g=bo(e+23412|0,i,A,u,g,l,c[k>>2]|0)|0;if((g|0)>=0){if((c[s>>2]|0)!=1?(t=Gn(e,c[k>>2]|0)|0,(t|0)<0):0){c[i>>2]=0;c[e+23408>>2]=0;g=t;break}h=e+880|0;c[h>>2]=0;g=0;while(1){if((g|0)==2)break;c[e+896+(g<<2)>>2]=0;c[e+904+(g<<2)>>2]=0;g=g+1|0}if((c[u+28>>2]|0)!=0?(c[s>>2]|0)==2:0){w=2;g=51}else g=49;if(((g|0)==49?(c[u+32>>2]|0)==1:0)?(c[s>>2]|0)==3:0){w=3;g=51}if((g|0)==51?(x=Ee(A,m,i,w,h,l,c[k>>2]|0)|0,(x|0)<0):0){g=x;break}c[e+34728>>2]=0;do if(c[f+68>>2]|0){if((wi(e,A,f,c[k>>2]|0)|0)>=0)break;if(c[(c[k>>2]|0)+688>>2]&8|0){g=-1094995529;break a}}while(0);do if((c[s>>2]|0)!=1){if(!(c[u+4>>2]|0))break;g=ey(A)|0;if(g>>>0>2){C=c[k>>2]|0;c[y>>2]=g;mx(C,16,200711,y);g=-1094995529;break a}else{c[e+33928>>2]=g;break}}while(0);c[e+864>>2]=0;g=c[u+36>>2]|0;g=(pp(A)|0)+g|0;if(g>>>0>(((c[m+1184>>2]|0)*6|0)+3|0)>>>0){C=c[k>>2]|0;c[z>>2]=g;mx(C,16,200739,z);g=-1094995529;break}c[e+848>>2]=g;c[e+852>>2]=d[u+548+g>>0];c[e+856>>2]=d[u+636+g>>0];g=c[v>>2]|0;if((g|0)==6){NL(A)|0;g=c[v>>2]|0}if((g+-5|0)>>>0<2)pp(A)|0;h=e+868|0;c[h>>2]=1;j=e+872|0;c[j>>2]=0;i=e+876|0;c[i>>2]=0;if(!(c[u+52>>2]|0)){g=0;break}g=ey(A)|0;if(g>>>0>2){C=c[k>>2]|0;c[B>>2]=g;mx(C,16,200759,B);g=-1094995529;break}B=(g|0)==2?2:g^1;c[h>>2]=B;if(!B){g=0;break}h=pp(A)|0;g=pp(A)|0;if((h+6|0)>>>0>12|(g+6|0)>>>0>12){B=c[k>>2]|0;c[C>>2]=h;c[C+4>>2]=g;mx(B,16,200798,C);g=-1094995529;break}else{c[j>>2]=h<<1;c[i>>2]=g<<1;g=0;break}}}else{C=c[b+4>>2]|0;g=c[g>>2]|0;c[i>>2]=h;c[i+4>>2]=g;mx(C,16,200451,i);g=-1094995529}while(0);Nb=D;return g|0}function qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[284148]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0<f>>>0)return;if((c[284149]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[284146]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[284144]=c[284144]&~(1<<d);i=h;b=g;break}else{c[a+12>>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){a=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=1136880+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[284145]=c[284145]&~(1<<b);i=h;b=g;break}}else{i=f+16|0;c[((c[i>>2]|0)==(h|0)?i:f+20|0)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[284150]|0)==(j|0)){j=(c[284147]|0)+b|0;c[284147]=j;c[284150]=i;c[i+4>>2]=j|1;if((i|0)!=(c[284149]|0))return;c[284149]=0;c[284146]=0;return}if((c[284149]|0)==(j|0)){j=(c[284146]|0)+b|0;c[284146]=j;c[284149]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[284144]=c[284144]&~(1<<d);break}else{c[b+12>>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){d=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=1136880+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[284145]=c[284145]&~(1<<a);break}}else{e=g+16|0;c[((c[e>>2]|0)==(j|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[284149]|0)){c[284146]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=1136616+(a<<1<<2)|0;b=c[284144]|0;a=1<<a;if(!(b&a)){c[284144]=b|a;a=d;b=d+8|0}else{b=d+8|0;a=c[b>>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)e=31;else{h=(a+1048320|0)>>>16&8;j=a<<h;g=(j+520192|0)>>>16&4;j=j<<g;e=(j+245760|0)>>>16&2;e=14-(g|h|e)+(j<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;a=1136880+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[284145]|0;d=1<<e;a:do if(!(b&d)){c[284145]=b|d;c[a>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i}else{a=c[a>>2]|0;b:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break b}else{e=e<<1;a=b}}c[d>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break a}while(0);h=a+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=a;c[i+24>>2]=0}while(0);j=(c[284152]|0)+-1|0;c[284152]=j;if(j|0)return;a=1137032;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[284152]=-1;return}function rd(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;r=8-g|0;q=8-h|0;s=H(q,r)|0;q=H(q,g)|0;r=H(r,h)|0;h=H(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;r=((d[b>>0]|0)+1+(((H(s,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[b>>0]=r;r=b+1|0;q=((d[r>>0]|0)+1+(((H(s,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+2|0;q=((d[r>>0]|0)+1+(((H(s,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+3|0;q=((d[r>>0]|0)+1+(((H(s,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+4|0;q=((d[r>>0]|0)+1+(((H(s,d[c+4>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+5|0;q=((d[r>>0]|0)+1+(((H(s,d[c+5>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+6|0;q=((d[r>>0]|0)+1+(((H(s,d[c+6>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+7|0;q=((d[r>>0]|0)+1+(((H(s,d[c+7>>0]|0)|0)+32|0)>>>6)|0)>>>1&255;a[r>>0]=q;b=b+e|0;g=g+1|0;c=c+e|0}}else{h=(r|0)==0?1:e;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=H(s,d[c>>0]|0)|0;r=((d[b>>0]|0)+1+((r+32+(H(p,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=r;r=b+1|0;q=H(s,d[c+1>>0]|0)|0;q=((d[r>>0]|0)+1+((q+32+(H(p,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+2|0;q=H(s,d[c+2>>0]|0)|0;q=((d[r>>0]|0)+1+((q+32+(H(p,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+3|0;q=H(s,d[c+3>>0]|0)|0;q=((d[r>>0]|0)+1+((q+32+(H(p,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+4|0;q=H(s,d[c+4>>0]|0)|0;q=((d[r>>0]|0)+1+((q+32+(H(p,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+5|0;q=H(s,d[c+5>>0]|0)|0;q=((d[r>>0]|0)+1+((q+32+(H(p,d[c+m>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+6|0;q=H(s,d[c+6>>0]|0)|0;q=((d[r>>0]|0)+1+((q+32+(H(p,d[c+n>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[r>>0]=q;r=b+7|0;q=H(s,d[c+7>>0]|0)|0;q=((d[r>>0]|0)+1+((q+32+(H(p,d[c+o>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[r>>0]=q;b=b+e|0;g=g+1|0;c=c+e|0}}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=H(s,d[c>>0]|0)|0;v=c+1|0;z=H(q,d[v>>0]|0)|0;t=c+e|0;u=H(r,d[t>>0]|0)|0;x=c+i|0;u=((d[b>>0]|0)+1+((y+32+z+u+(H(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[b>>0]=u;u=b+1|0;v=H(s,d[v>>0]|0)|0;z=c+2|0;y=H(q,d[z>>0]|0)|0;x=H(r,d[x>>0]|0)|0;w=c+j|0;x=((d[u>>0]|0)+1+((v+32+y+x+(H(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[u>>0]=x;u=b+2|0;z=H(s,d[z>>0]|0)|0;x=c+3|0;y=H(q,d[x>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+k|0;w=((d[u>>0]|0)+1+((z+32+y+w+(H(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[u>>0]=w;u=b+3|0;x=H(s,d[x>>0]|0)|0;w=c+4|0;y=H(q,d[w>>0]|0)|0;v=H(r,d[v>>0]|0)|0;z=c+l|0;v=((d[u>>0]|0)+1+((x+32+y+v+(H(h,d[z>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[u>>0]=v;u=b+4|0;w=H(s,d[w>>0]|0)|0;v=c+5|0;y=H(q,d[v>>0]|0)|0;z=H(r,d[z>>0]|0)|0;x=c+m|0;z=((d[u>>0]|0)+1+((w+32+y+z+(H(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[u>>0]=z;u=b+5|0;v=H(s,d[v>>0]|0)|0;z=c+6|0;y=H(q,d[z>>0]|0)|0;x=H(r,d[x>>0]|0)|0;w=c+n|0;x=((d[u>>0]|0)+1+((v+32+y+x+(H(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[u>>0]=x;u=b+6|0;z=H(s,d[z>>0]|0)|0;x=c+7|0;y=H(q,d[x>>0]|0)|0;w=H(r,d[w>>0]|0)|0;v=c+o|0;w=((d[u>>0]|0)+1+((z+32+y+w+(H(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[u>>0]=w;u=b+7|0;x=H(s,d[x>>0]|0)|0;w=H(q,d[c+8>>0]|0)|0;v=H(r,d[v>>0]|0)|0;v=((d[u>>0]|0)+1+((x+32+w+v+(H(h,d[c+p>>0]|0)|0)|0)>>>6)|0)>>>1&255;a[u>>0]=v;b=b+e|0;g=g+1|0;c=t}}while(0);return}function sd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Nb;Nb=Nb+16|0;l=s;q=c[a+60>>2]|0;r=c[b+60>>2]|0;k=q+25680|0;a:do if((a|0)!=(b|0)){j=(c[k>>2]|0)!=0;do if(j){if((((((((c[q+25656>>2]|0)==(c[r+25656>>2]|0)?(c[q+25660>>2]|0)==(c[r+25660>>2]|0):0)?(c[q+26996>>2]|0)==(c[r+26996>>2]|0):0)?(c[q+26992>>2]|0)==(c[r+26992>>2]|0):0)?(d=c[q+28200>>2]|0,d|0):0)?(e=c[r+28200>>2]|0,(c[d+1184>>2]|0)==(c[e+1184>>2]|0)):0)?(c[d+12>>2]|0)==(c[e+12>>2]|0):0)?(c[d+128>>2]|0)==(c[e+128>>2]|0):0){g=0;break}g=1}else g=0;while(0);h=q+25960|0;i=r+25960|0;Bk(h|0,i|0,384)|0;a=0;while(1){if(a>>>0>=32)break;b=q+27036+(a<<2)|0;nT(b);d=c[r+27036+(a<<2)>>2]|0;if(d|0?(n=rI(d)|0,c[b>>2]=n,(n|0)==0):0){a=-12;break a}a=a+1|0}a=0;while(1){if(a>>>0>=256)break;b=q+27164+(a<<2)|0;nT(b);d=c[r+27164+(a<<2)>>2]|0;if(d|0?(n=rI(d)|0,c[b>>2]=n,(n|0)==0):0){a=-12;break a}a=a+1|0}b=q+28188|0;nT(b);e=q+28192|0;nT(e);d=q+28196|0;c[d>>2]=0;f=q+28200|0;c[f>>2]=0;a=c[r+28188>>2]|0;if(a|0){a=rI(a)|0;c[b>>2]=a;if(!a){a=-12;break}c[d>>2]=c[a+4>>2]}a=c[r+28192>>2]|0;if(a|0){a=rI(a)|0;c[e>>2]=a;if(!a){a=-12;break}c[f>>2]=c[a+4>>2]}if(j&(g|0)==0)a=0;else{c[q+25656>>2]=c[r+25656>>2];c[q+25660>>2]=c[r+25660>>2];c[q+26992>>2]=c[r+26992>>2];c[q+26996>>2]=c[r+26996>>2];c[q+27004>>2]=c[r+27004>>2];c[q+27e3>>2]=c[r+27e3>>2];c[q+26352>>2]=c[r+26352>>2];if((c[k>>2]|0)==0?(c[r+25680>>2]|0)==0:0)a=0;else{a=hf(q)|0;if((a|0)<0){mx(c[q+4>>2]|0,16,198811,l);break}}Bk(h|0,i|0,384)|0}n=c[r+4>>2]|0;f=c[q+4>>2]|0;c[f+136>>2]=c[n+136>>2];c[f+132>>2]=c[n+132>>2];c[f+124>>2]=c[n+124>>2];c[f+128>>2]=c[n+128>>2];c[q+29648>>2]=c[r+29648>>2];c[q+29652>>2]=c[r+29652>>2];c[q+25676>>2]=c[r+25676>>2];c[q+26368>>2]=c[r+26368>>2];c[q+26364>>2]=c[r+26364>>2];c[q+26360>>2]=c[r+26360>>2];f=r+25672|0;n=q+25672|0;c[n>>2]=c[f>>2];b=0;while(1){if(b>>>0>=36)break;d=q+696+(b*656|0)|0;Tw(q,d);e=r+696+(b*656|0)|0;if(c[(c[e>>2]|0)+248>>2]|0?(m=gg(q,d,e)|0,(m|0)<0):0){a=m;break a}b=b+1|0}b=c[r+24312>>2]|0;if((b|0)!=0?(o=r+696|0,b>>>0>=o>>>0&b>>>0<(r+24312|0)>>>0):0)b=q+696+(((b-o|0)/656|0)*656|0)|0;else b=0;m=q+24312|0;c[m>>2]=b;b=q+24316|0;Tw(q,b);d=r+24316|0;if(c[(c[d>>2]|0)+248>>2]|0?(p=gg(q,b,d)|0,(p|0)<0):0){a=p;break}c[q+29656>>2]=c[r+29656>>2];c[q+25688>>2]=c[r+25688>>2];c[n>>2]=c[f>>2];c[q+27020>>2]=c[r+27020>>2];c[q+27024>>2]=c[r+27024>>2];c[q+29696>>2]=c[r+29696>>2];b=q+28208|0;j=b;k=r+28208|0;l=j+44|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));d=q+28332|0;e=r+28332|0;j=d;k=e;l=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));f=q+28460|0;g=r+28460|0;j=f;k=g;l=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));h=q+28588|0;i=r+28588|0;j=h;k=i;l=j+72|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=q+28660|0;k=r+28660|0;l=j+64|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[q+28724>>2]=c[r+28724>>2];c[q+28728>>2]=c[r+28728>>2];Bk(q+28732|0,r+28732|0,792)|0;c[q+29524>>2]=c[r+29524>>2];c[q+29528>>2]=c[r+29528>>2];c[q+29532>>2]=c[r+29532>>2];c[q+29536>>2]=c[r+29536>>2];c[q+29540>>2]=c[r+29540>>2];dx(d,e,32,q,r);dx(f,g,32,q,r);dx(h,i,18,q,r);c[q+29560>>2]=c[r+29560>>2];if(c[m>>2]|0){if(!(c[n>>2]|0)){a=cd(q)|0;c[q+28232>>2]=c[q+28212>>2];c[q+28236>>2]=c[b>>2]}c[q+28244>>2]=c[q+28240>>2];c[q+28248>>2]=c[q+28228>>2];c[q+29556>>2]=c[r+29556>>2]}else a=0}else a=0;while(0);Nb=s;return a|0}
|
|
function rc(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;na=Nb;Nb=Nb+80|0;ga=na+56|0;aa=na+48|0;q=na+40|0;r=na+32|0;n=na+24|0;p=na+16|0;ia=na+72|0;Z=na;_=na+68|0;U=na+64|0;ha=f+28200|0;da=c[ha>>2]|0;ja=f+28196|0;m=c[(c[ja>>2]|0)+64>>2]|0;k=da+12|0;ba=((c[k>>2]|0)+-1|0)>>>0<2;ka=c[f+25652>>2]|0;ea=g+21788|0;h=c[ea>>2]|0;fa=g+21792|0;i=c[fa>>2]|0;X=f+27e3|0;ma=(H(c[X>>2]|0,i)|0)+h|0;la=g+21796|0;c[la>>2]=ma;$=g+840|0;W=f+26360|0;if((c[$>>2]|0)!=1){if(!((i&1|0)==0|(c[W>>2]|0)==0)?(c[g+21648>>2]|0)!=0:0)h=c[g+21652>>2]|0;else h=Ml(f,g,h,i)|0;if(h){if((c[W>>2]|0?(c[fa>>2]&1|0)==0:0)?(c[(c[f+24364>>2]|0)+(ma<<2)>>2]=2048,la=Ml(f,g,c[ea>>2]|0,(c[fa>>2]|0)+1|0)|0,c[g+21652>>2]=la,(la|0)==0):0){la=hA(f,g)|0;c[g+21828>>2]=la;c[g+21832>>2]=la}Xc(f,g);b[(c[f+26376>>2]|0)+(ma<<1)>>1]=0;a[(c[f+26380>>2]|0)+ma>>0]=0;c[g+864>>2]=0;h=0}else ca=12}else ca=12;a:do if((ca|0)==12){if(c[W>>2]|0?(c[fa>>2]&1|0)==0:0){Y=hA(f,g)|0;c[g+21828>>2]=Y;c[g+21832>>2]=Y}c[g+21648>>2]=0;V=g+21828|0;ph(f,g,0-(c[V>>2]|0)|0);b:do switch(c[$>>2]|0){case 3:{j=g+32856|0;c:do if(!(Vu(j,28-(((c[g+21740>>2]|0)+511|0)>>>8&1)+(((c[g+21732>>2]|0)+511|0)>>>8&1^1)+(g+32904)|0)|0)){c[ia>>2]=0;h=0}else{if(!(Vu(j,g+32934|0)|0)){h=(Vu(j,g+32936|0)|0)+1|0;c[ia>>2]=h;break}i=(Vu(j,g+32935|0)|0)<<3;h=g+32936|0;i=((Vu(j,h)|0)<<2)+i|0;i=i+((Vu(j,h)|0)<<1)|0;i=i+(Vu(j,h)|0)|0;if((i|0)<8){h=i+3|0;c[ia>>2]=h;break}switch(i|0){case 13:{h=Mq(g,32,0)|0;c[ia>>2]=h;ca=36;break b}case 14:{c[ia>>2]=11;h=11;break c}case 15:{c[ia>>2]=22;h=22;break c}default:{h=(i<<1)+-4+(Vu(j,h)|0)|0;c[ia>>2]=h;break c}}}while(0);i=a[19040+(h<<2)+2>>0]|0;h=e[19040+(h<<2)>>1]|0;c[ia>>2]=h;Y=0;break}case 2:{h=g+32856|0;if(Vu(h,g+32918|0)|0){h=Mq(g,17,0)|0;c[ia>>2]=h;ca=36;break b}if(!(Vu(h,g+32919|0)|0))h=(Vu(h,g+32920|0)|0)*3|0;else h=2-(Vu(h,g+32921|0)|0)|0;i=a[18992+(h<<2)+2>>0]|0;h=e[18992+(h<<2)>>1]|0;c[ia>>2]=h;Y=0;break}default:{h=Mq(g,3,1)|0;c[ia>>2]=h;if(h|0?(c[g+836>>2]|0)==5:0){h=h+-1|0;c[ia>>2]=h;ca=36}else ca=36}}while(0);if((ca|0)==36){Y=d[18880+(h<<2)+3>>0]|0;c[g+21660>>2]=d[18880+(h<<2)+2>>0];h=e[18880+(h<<2)>>1]|0;c[ia>>2]=h;i=0}if(c[V>>2]|0){h=h|128;c[ia>>2]=h}b[(c[f+26356>>2]|0)+(ma<<1)>>1]=c[g+832>>2];if(h&4|0){i=(H(c[da+1184>>2]|0,e[162472+(c[k>>2]<<1)>>1]|0)|0)>>3;j=g+32856|0;h=c[g+32872>>2]|0;k=c[j>>2]|0;h=(k&1|0)==0?h:h+-1|0;h=(k&511|0)==0?h:h+-1|0;k=c[g+32876>>2]|0;if((k-h|0)<(i|0)){h=-1;break}c[g+27780>>2]=h;h=h+i|0;h=zv(j,h,k-h|0)|0;if((h|0)<0)break;b[(c[f+26376>>2]|0)+(ma<<1)>>1]=-2065;a[(c[f+26380>>2]|0)+ma>>0]=0;a[(c[f+24340>>2]|0)+ma>>0]=0;k=(c[f+25956>>2]|0)+(ma*48|0)|0;l=k+48|0;do{a[k>>0]=16;k=k+1|0}while((k|0)<(l|0));c[(c[f+24364>>2]|0)+(ma<<2)>>2]=c[ia>>2];c[g+864>>2]=0;h=0;break}zc(f,g,h);d:do if(!(h&7)){if(i<<24>>24==4){e:do if((c[$>>2]|0)==3){h=0;while(1){if((h|0)==4)break;ca=(yu(g)|0)&65535;c[Z+(h<<2)>>2]=d[19136+(ca<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[19136+(ca<<2)>>1]|0;h=h+1|0}if((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256){xN(f,g,ia);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;h=0;while(1){if((h|0)==4)break e;ca=(d[88688+(h<<2)>>0]|0)+(g+28512)|0;T=((e[g+28552+(h<<1)>>1]|0)>>>1&255)*257&65535;b[ca>>1]=T;b[ca+8>>1]=T;h=h+1|0}}}else{h=0;while(1){if((h|0)==4)break e;ca=(XI(g)|0)&65535;c[Z+(h<<2)>>2]=d[19024+(ca<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[19024+(ca<<2)>>1]|0;h=h+1|0}}while(0);T=g+23412|0;o=g+21832|0;n=0;f:while(1){h=c[T>>2]|0;if(n>>>0>=h>>>0){ca=83;break}k=4096<<(n<<1);l=g+23404+(n<<2)|0;j=0;while(1){if(j>>>0>=4)break;h=e[g+28552+(j<<1)>>1]|0;if(!(h&256)){if(k&h){i=c[l>>2]<<c[o>>2];if(i>>>0>1){h=Zr(g,n,j<<2)|0;if(h>>>0>=i>>>0){ca=79;break f}}else h=0}else h=-1;S=h&255;ca=d[88688+(j<<2)>>0]|0;a[ca+9+(g+28272+(n*40|0))>>0]=S;a[ca+8+(g+28272+(n*40|0))>>0]=S;a[ca+1+(g+28272+(n*40|0))>>0]=S}j=j+1|0}n=n+1|0}do if((ca|0)==79){g=c[f+4>>2]|0;c[p>>2]=h;c[p+4>>2]=i;mx(g,16,201419,p);h=-1}else if((ca|0)==83){if(!m)m=0;else{S=(c[(c[ha>>2]|0)+72>>2]|0)==0;m=g+28552|0;m=(((S?24117616:7340144)&c[m>>2]|0)==0?((S?24117616:7340144)&c[m+4>>2]|0)==0:0)&1}O=f+24312|0;P=g+21740|0;Q=g+21720|0;R=f+26344|0;S=f+26352|0;N=0;g:while(1){if(N>>>0>=h>>>0){ca=131;break}K=N<<1;G=4096<<K;I=g+28272+(N*40|0)+11|0;J=g+27952+(N*160|0)+40|0;K=12288<<K;L=g+27952+(N*160|0)+42|0;F=0;while(1){if(F>>>0>=4)break;M=F<<2;h=d[88688+M>>0]|0;a[g+28272+(N*40|0)+h>>0]=a[h+1+(g+28272+(N*40|0))>>0]|0;i=e[g+28552+(F<<1)>>1]|0;h:do if(!(i&256)){if(!(G&i)){c[g+27952+(N*160|0)+(h<<2)>>2]=0;c[g+27952+(N*160|0)+(h<<2)+4>>2]=0;c[g+27952+(N*160|0)+(h<<2)+32>>2]=0;c[g+27952+(N*160|0)+(h<<2)+36>>2]=0;ca=127;break}B=(i&24|0)==0?1:2;C=c[Z+(F<<2)>>2]|0;D=(i&8|0)==0;E=(i&16|0)==0;x=(i&32|0)==0;w=0;while(1){if((w|0)>=(C|0))break h;h=88688+((H(w,B)|0)+M)|0;h=a[h>>0]|0;y=h&255;z=g+27952+(N*160|0)+(y<<2)|0;A=g+28352+(N*80|0)+(y<<1)|0;o=a[g+28272+(N*40|0)+y>>0]|0;p=o<<24>>24;u=y+-8|0;q=a[g+28272+(N*40|0)+u>>0]|0;v=y+-1|0;r=a[g+28272+(N*40|0)+v>>0]|0;s=g+27952+(N*160|0)+(v<<2)|0;t=g+27952+(N*160|0)+(u<<2)|0;i=u+B|0;j=a[g+28272+(N*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((y&7|0)==4&((h&255)>19&(j&(c[W>>2]|0)!=0))){if((a[I>>0]|0)==-2){ca=102;break}n=c[(c[O>>2]|0)+48>>2]|0;c[J>>2]=0;l=(c[P>>2]&128|0)==0;if(!(c[V>>2]|0)){if(l){ca=102;break}l=c[X>>2]|0;h=l+(c[Q>>2]|0)|0;i=(c[fa>>2]<<1&2)+(y>>>5)|0;n=n+((H(i>>>2,l)|0)+h<<2)|0;if(!(c[n>>2]&K)){l=J;k=-1;break}k=c[O>>2]|0;n=c[k+36+(N<<2)>>2]|0;l=(c[(c[R>>2]|0)+(h<<2)>>2]|0)+3+(H(c[S>>2]|0,i)|0)|0;b[J>>1]=b[n+(l<<2)>>1]|0;b[L>>1]=b[n+(l<<2)+2>>1]<<1;l=J;k=a[(c[k+68+(N<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!l){ca=102;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=y>>>2;if(!(c[n+(h<<2)>>2]&K)){l=J;k=-1;break}k=c[O>>2]|0;n=c[k+36+(N<<2)>>2]|0;l=(c[(c[R>>2]|0)+(h<<2)>>2]|0)+3+(H(c[S>>2]|0,i&3)|0)|0;b[J>>1]=b[n+(l<<2)>>1]|0;b[L>>1]=(b[n+(l<<2)+2>>1]|0)/2|0;l=J;k=a[(c[k+68+(N<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ca=102;while(0);do if((ca|0)==102){ca=0;if(j){k=y+-9|0;l=g+27952+(N*160|0)+(k<<2)|0;k=a[g+28272+(N*40|0)+k>>0]|0;break}else{l=g+27952+(N*160|0)+(i<<2)|0;break}}while(0);j=q<<24>>24==o<<24>>24;i=r<<24>>24==o<<24>>24;h=(i&1)+(j&1)+((k|0)==(p|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[s>>1]|0;if(r<<24>>24!=-2&(q<<24>>24==-2&(k|0)==-2)){i=b[g+27952+(N*160|0)+(v<<2)+2>>1]|0;break}else{h=GM(h,b[t>>1]|0,b[l>>1]|0)|0;i=GM(b[g+27952+(N*160|0)+(v<<2)+2>>1]|0,b[g+27952+(N*160|0)+(u<<2)+2>>1]|0,b[l+2>>1]|0)|0;break}}if(i){i=b[g+27952+(N*160|0)+(v<<2)+2>>1]|0;h=b[s>>1]|0;break}if(j){i=b[g+27952+(N*160|0)+(u<<2)+2>>1]|0;h=b[t>>1]|0;break}else{i=b[l+2>>1]|0;h=b[l>>1]|0;break}}else{h=GM(b[s>>1]|0,b[t>>1]|0,b[l>>1]|0)|0;i=GM(b[g+27952+(N*160|0)+(v<<2)+2>>1]|0,b[g+27952+(N*160|0)+(u<<2)+2>>1]|0,b[l+2>>1]|0)|0}while(0);t=(d[g+28352+(N*80|0)+(u<<1)+1>>0]|0)+(d[g+28352+(N*80|0)+(v<<1)+1>>0]|0)|0;u=Gl(g,40,(d[g+28352+(N*80|0)+(u<<1)>>0]|0)+(d[g+28352+(N*80|0)+(v<<1)>>0]|0)|0,_)|0;v=Gl(g,47,t,U)|0;h=u+h|0;i=v+i|0;if((u|0)==-2147483648|(v|0)==-2147483648){ca=125;break g}do if(D){if(!E){k=h&65535;b[z+4>>1]=k;h=i&65535;b[z+6>>1]=h;i=c[_>>2]&255;a[A+2>>0]=i;j=c[U>>2]&255;a[A+3>>0]=j;break}if(x){k=h&65535;h=i&65535;i=c[_>>2]&255;j=c[U>>2]&255;break}else{k=h&65535;b[z+32>>1]=k;h=i&65535;b[z+34>>1]=h;i=c[_>>2]&255;a[A+16>>0]=i;j=c[U>>2]&255;a[A+17>>0]=j;break}}else{k=h&65535;b[z+36>>1]=k;b[z+32>>1]=k;b[z+4>>1]=k;h=i&65535;b[z+38>>1]=h;b[z+34>>1]=h;b[z+6>>1]=h;i=c[_>>2]&255;a[A+18>>0]=i;a[A+16>>0]=i;a[A+2>>0]=i;j=c[U>>2]&255;a[A+19>>0]=j;a[A+17>>0]=j;a[A+3>>0]=j}while(0);b[z>>1]=k;b[g+27952+(N*160|0)+(y<<2)+2>>1]=h;a[A>>0]=i;a[g+28352+(N*80|0)+(y<<1)+1>>0]=j;w=w+1|0}}else ca=127;while(0);if((ca|0)==127){ca=0;c[g+28352+(N*80|0)+(h<<1)>>2]=0;c[g+28352+(N*80|0)+(h<<1)+16>>2]=0}F=F+1|0}N=N+1|0;h=c[T>>2]|0}if((ca|0)==125){h=-1094995529;break}else if((ca|0)==131)break d}while(0);break a}if(h&256|0){xN(f,g,ia);c[g+28376>>2]=0;c[g+28380>>2]=0;c[g+28392>>2]=0;c[g+28396>>2]=0;c[g+28408>>2]=0;c[g+28412>>2]=0;c[g+28424>>2]=0;c[g+28428>>2]=0;c[g+28456>>2]=0;c[g+28460>>2]=0;c[g+28472>>2]=0;c[g+28476>>2]=0;c[g+28488>>2]=0;c[g+28492>>2]=0;c[g+28504>>2]=0;c[g+28508>>2]=0;m=c[da+72>>2]&m;break}if(h&8|0){t=g+23412|0;k=c[ia>>2]|0;l=g+21832|0;j=0;while(1){h=c[t>>2]|0;if(j>>>0>=h>>>0)break;if(k&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<<c[l>>2];if(i>>>0>1){h=Zr(g,j,0)|0;if(h>>>0>=i>>>0){ca=141;break}}else h=0;X=H(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=X;c[g+28272+(j*40|0)+20>>2]=X;c[g+28272+(j*40|0)+28>>2]=X;c[g+28272+(j*40|0)+36>>2]=X}j=j+1|0}if((ca|0)==141){g=c[f+4>>2]|0;c[n>>2]=h;c[n+4>>2]=i;mx(g,16,201419,n);h=-1;break a}s=0;while(1){if(s>>>0>=h>>>0)break d;if(c[ia>>2]&4096<<(s<<1)){i=a[g+28272+(s*40|0)+12>>0]|0;n=a[g+28272+(s*40|0)+4>>0]|0;o=a[g+28272+(s*40|0)+11>>0]|0;p=g+27952+(s*160|0)+44|0;r=g+27952+(s*160|0)+16|0;h=a[g+28272+(s*40|0)+8>>0]|0;if(h<<24>>24==-2){q=g+27952+(s*160|0)+12|0;l=a[g+28272+(s*40|0)+3>>0]|0}else{q=g+27952+(s*160|0)+32|0;l=h<<24>>24}j=n<<24>>24==i<<24>>24;k=o<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((l|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[p>>1]|0;if(o<<24>>24!=-2&(n<<24>>24==-2&(l|0)==-2)){k=b[g+27952+(s*160|0)+46>>1]|0;break}else{h=GM(h,b[r>>1]|0,b[q>>1]|0)|0;k=GM(b[g+27952+(s*160|0)+46>>1]|0,b[g+27952+(s*160|0)+18>>1]|0,b[q+2>>1]|0)|0;break}}if(k){k=b[g+27952+(s*160|0)+46>>1]|0;h=b[p>>1]|0;break}if(j){k=b[g+27952+(s*160|0)+18>>1]|0;h=b[r>>1]|0;break}else{k=b[q+2>>1]|0;h=b[q>>1]|0;break}}else{h=GM(b[p>>1]|0,b[r>>1]|0,b[q>>1]|0)|0;k=GM(b[g+27952+(s*160|0)+46>>1]|0,b[g+27952+(s*160|0)+18>>1]|0,b[q+2>>1]|0)|0}while(0);j=(d[g+28352+(s*80|0)+9>>0]|0)+(d[g+28352+(s*80|0)+23>>0]|0)|0;i=Gl(g,40,(d[g+28352+(s*80|0)+8>>0]|0)+(d[g+28352+(s*80|0)+22>>0]|0)|0,Z)|0;j=Gl(g,47,j,_)|0;if((i|0)==-2147483648|(j|0)==-2147483648)break;X=(c[_>>2]<<8&65280|c[Z>>2]&255)*65537|0;c[g+28352+(s*80|0)+24>>2]=X;c[g+28352+(s*80|0)+28>>2]=X;c[g+28352+(s*80|0)+40>>2]=X;c[g+28352+(s*80|0)+44>>2]=X;c[g+28352+(s*80|0)+56>>2]=X;c[g+28352+(s*80|0)+60>>2]=X;c[g+28352+(s*80|0)+72>>2]=X;c[g+28352+(s*80|0)+76>>2]=X;h=j+k<<16|i+h&65535;c[g+27952+(s*160|0)+48>>2]=h;c[g+27952+(s*160|0)+52>>2]=h;c[g+27952+(s*160|0)+56>>2]=h;c[g+27952+(s*160|0)+60>>2]=h;c[g+27952+(s*160|0)+80>>2]=h;c[g+27952+(s*160|0)+84>>2]=h;c[g+27952+(s*160|0)+88>>2]=h;c[g+27952+(s*160|0)+92>>2]=h;c[g+27952+(s*160|0)+112>>2]=h;c[g+27952+(s*160|0)+116>>2]=h;c[g+27952+(s*160|0)+120>>2]=h;c[g+27952+(s*160|0)+124>>2]=h;c[g+27952+(s*160|0)+144>>2]=h;c[g+27952+(s*160|0)+148>>2]=h;c[g+27952+(s*160|0)+152>>2]=h;c[g+27952+(s*160|0)+156>>2]=h;h=c[t>>2]|0}s=s+1|0}h=-1094995529;break a}S=g+23412|0;o=c[ia>>2]|0;p=g+21832|0;if(h&16|0){n=0;i:while(1){h=c[S>>2]|0;if(n>>>0>=h>>>0)break;k=n<<1;l=g+23404+(n<<2)|0;j=0;while(1){if(j>>>0>=2)break;if(!(o&4096<<j+k))h=-1;else{i=c[l>>2]<<c[p>>2];if(i>>>0>1){h=Zr(g,n,j<<3)|0;if(h>>>0>=i>>>0){ca=174;break i}}else h=0;h=H(h,16843009)|0}U=(j<<4|12)+(g+28272+(n*40|0))|0;c[U>>2]=h;c[U+8>>2]=h;j=j+1|0}n=n+1|0}if((ca|0)==174){g=c[f+4>>2]|0;c[r>>2]=h;c[r+4>>2]=i;mx(g,16,201419,r);h=-1;break a}N=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26344|0;R=f+26352|0;M=0;j:while(1){if(M>>>0>=h>>>0)break d;z=M<<1;A=g+28272+(M*40|0)+4|0;B=g+28272+(M*40|0)+27|0;C=g+27952+(M*160|0)+16|0;D=g+27952+(M*160|0)+18|0;E=g+28272+(M*40|0)+11|0;F=g+27952+(M*160|0)+108|0;G=g+27952+(M*160|0)+110|0;I=g+27952+(M*160|0)+40|0;J=12288<<z;K=g+27952+(M*160|0)+42|0;y=0;while(1){if(y>>>0>=2)break;if(!(c[ia>>2]&4096<<y+z)){U=y<<4|12;c[g+28352+(M*80|0)+(U<<1)>>2]=0;c[g+28352+(M*80|0)+(U<<1)+4>>2]=0;c[g+28352+(M*80|0)+(U<<1)+16>>2]=0;c[g+28352+(M*80|0)+(U<<1)+20>>2]=0;T=g+27952+(M*160|0)+(U<<2)|0;U=g+27952+(M*160|0)+(U<<2)+32|0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0}else{x=y<<3;L=y<<4|12;p=a[g+28272+(M*40|0)+L>>0]|0;q=p<<24>>24;do if(!y){if((a[A>>0]|0)!=p<<24>>24){ca=187;break}k=b[D>>1]|0;j=b[C>>1]|0}else{if((a[B>>0]|0)!=p<<24>>24){ca=187;break}k=b[G>>1]|0;j=b[F>>1]|0}while(0);do if((ca|0)==187){ca=0;l=a[88688+x>>0]|0;n=l&255;r=n+-8|0;s=a[g+28272+(M*40|0)+r>>0]|0;t=n+-1|0;u=a[g+28272+(M*40|0)+t>>0]|0;v=g+27952+(M*160|0)+(t<<2)|0;w=g+27952+(M*160|0)+(r<<2)|0;h=n+-4|0;i=a[g+28272+(M*40|0)+h>>0]|0;k=i<<24>>24;i=i<<24>>24==-2;do if((n&7|0)==4&((l&255)>19&(i&(c[W>>2]|0)!=0))){if((a[E>>0]|0)==-2){ca=196;break}o=c[(c[N>>2]|0)+48>>2]|0;c[I>>2]=0;j=(c[O>>2]&128|0)==0;if(!(c[V>>2]|0)){if(j){ca=196;break}U=c[X>>2]|0;i=U+(c[P>>2]|0)|0;h=(c[fa>>2]<<1&2)+(n>>>5)|0;U=o+((H(h>>>2,U)|0)+i<<2)|0;if(!(c[U>>2]&J)){l=I;k=-1;break}k=c[N>>2]|0;U=c[k+36+(M<<2)>>2]|0;l=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h)|0)|0;b[I>>1]=b[U+(l<<2)>>1]|0;b[K>>1]=b[U+(l<<2)+2>>1]<<1;l=I;k=a[(c[k+68+(M<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!j){ca=196;break}i=c[g+21720+(((l&255)>35&1)<<2)>>2]|0;h=n>>>2;if(!(c[o+(i<<2)>>2]&J)){l=I;k=-1;break}k=c[N>>2]|0;U=c[k+36+(M<<2)>>2]|0;l=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h&3)|0)|0;b[I>>1]=b[U+(l<<2)>>1]|0;b[K>>1]=(b[U+(l<<2)+2>>1]|0)/2|0;l=I;k=a[(c[k+68+(M<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ca=196;while(0);do if((ca|0)==196){ca=0;if(i){k=n+-9|0;l=g+27952+(M*160|0)+(k<<2)|0;k=a[g+28272+(M*40|0)+k>>0]|0;break}else{l=g+27952+(M*160|0)+(h<<2)|0;break}}while(0);j=s<<24>>24==p<<24>>24;i=u<<24>>24==p<<24>>24;h=(i&1)+(j&1)+((k|0)==(q|0)&1)|0;if(h>>>0>1){j=GM(b[v>>1]|0,b[w>>1]|0,b[l>>1]|0)|0;k=GM(b[g+27952+(M*160|0)+(t<<2)+2>>1]|0,b[g+27952+(M*160|0)+(r<<2)+2>>1]|0,b[l+2>>1]|0)|0;break}if((h|0)!=1){j=b[v>>1]|0;if(u<<24>>24!=-2&(s<<24>>24==-2&(k|0)==-2)){k=b[g+27952+(M*160|0)+(t<<2)+2>>1]|0;break}else{j=GM(j,b[w>>1]|0,b[l>>1]|0)|0;k=GM(b[g+27952+(M*160|0)+(t<<2)+2>>1]|0,b[g+27952+(M*160|0)+(r<<2)+2>>1]|0,b[l+2>>1]|0)|0;break}}if(i){k=b[g+27952+(M*160|0)+(t<<2)+2>>1]|0;j=b[v>>1]|0;break}if(j){k=b[g+27952+(M*160|0)+(r<<2)+2>>1]|0;j=b[w>>1]|0;break}else{k=b[l+2>>1]|0;j=b[l>>1]|0;break}}while(0);U=d[88688+x>>0]|0;h=U+-1|0;U=U+-8|0;i=(d[g+28352+(M*80|0)+(U<<1)+1>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)+1>>0]|0)|0;h=Gl(g,40,(d[g+28352+(M*80|0)+(U<<1)>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)>>0]|0)|0,Z)|0;i=Gl(g,47,i,_)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break j;U=(c[_>>2]<<8&65280|c[Z>>2]&255)*65537|0;c[g+28352+(M*80|0)+(L<<1)>>2]=U;c[g+28352+(M*80|0)+(L<<1)+4>>2]=U;c[g+28352+(M*80|0)+(L<<1)+16>>2]=U;c[g+28352+(M*80|0)+(L<<1)+20>>2]=U;U=i+k<<16|h+j&65535;c[g+27952+(M*160|0)+(L<<2)>>2]=U;c[g+27952+(M*160|0)+(L<<2)+4>>2]=U;c[g+27952+(M*160|0)+(L<<2)+8>>2]=U;c[g+27952+(M*160|0)+(L<<2)+12>>2]=U;c[g+27952+(M*160|0)+(L<<2)+32>>2]=U;c[g+27952+(M*160|0)+(L<<2)+36>>2]=U;c[g+27952+(M*160|0)+(L<<2)+40>>2]=U;c[g+27952+(M*160|0)+(L<<2)+44>>2]=U}y=y+1|0}M=M+1|0;h=c[S>>2]|0}h=-1094995529;break a}n=0;k:while(1){h=c[S>>2]|0;if(n>>>0>=h>>>0)break;k=n<<1;l=g+23404+(n<<2)|0;j=0;while(1){if(j>>>0>=2)break;if(!(o&4096<<j+k))h=-1;else{i=c[l>>2]<<c[p>>2];if(i>>>0>1){h=Zr(g,n,j<<2)|0;if(h>>>0>=i>>>0){ca=223;break k}}else h=0;h=h*257&65535}U=(j<<1)+12+(g+28272+(n*40|0))|0;b[U>>1]=h;b[U+8>>1]=h;b[U+16>>1]=h;b[U+24>>1]=h;j=j+1|0}n=n+1|0}if((ca|0)==223){g=c[f+4>>2]|0;c[q>>2]=h;c[q+4>>2]=i;mx(g,16,201419,q);h=-1;break a}N=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26344|0;R=f+26352|0;M=0;l:while(1){if(M>>>0>=h>>>0)break d;z=M<<1;A=g+28272+(M*40|0)+11|0;B=g+28272+(M*40|0)+8|0;C=g+27952+(M*160|0)+44|0;D=g+27952+(M*160|0)+46|0;E=g+27952+(M*160|0)+20|0;F=g+28272+(M*40|0)+5|0;G=g+27952+(M*160|0)+32|0;I=g+27952+(M*160|0)+40|0;J=12288<<z;K=g+27952+(M*160|0)+42|0;y=0;while(1){if(y>>>0>=2)break;if(!(c[ia>>2]&4096<<y+z)){U=(y<<1)+12|0;c[g+28352+(M*80|0)+(U<<1)>>2]=0;c[g+28352+(M*80|0)+(U<<1)+16>>2]=0;c[g+28352+(M*80|0)+(U<<1)+32>>2]=0;c[g+28352+(M*80|0)+(U<<1)+48>>2]=0;c[g+27952+(M*160|0)+(U<<2)>>2]=0;c[g+27952+(M*160|0)+(U<<2)+4>>2]=0;c[g+27952+(M*160|0)+(U<<2)+32>>2]=0;c[g+27952+(M*160|0)+(U<<2)+36>>2]=0;c[g+27952+(M*160|0)+(U<<2)+64>>2]=0;c[g+27952+(M*160|0)+(U<<2)+68>>2]=0;c[g+27952+(M*160|0)+(U<<2)+96>>2]=0;c[g+27952+(M*160|0)+(U<<2)+100>>2]=0}else{x=y<<2;L=(y<<1)+12|0;p=a[g+28272+(M*40|0)+L>>0]|0;v=p<<24>>24;do if(!y)if((a[A>>0]|0)==p<<24>>24){k=b[D>>1]|0;j=b[C>>1]|0}else ca=238;else{h=a[B>>0]|0;if(h<<24>>24==-2){i=E;h=a[F>>0]|0}else i=G;if(h<<24>>24!=p<<24>>24){ca=238;break}k=b[i+2>>1]|0;j=b[i>>1]|0}while(0);do if((ca|0)==238){ca=0;h=a[88688+x>>0]|0;n=h&255;q=n+-8|0;r=a[g+28272+(M*40|0)+q>>0]|0;s=n+-1|0;t=a[g+28272+(M*40|0)+s>>0]|0;u=g+27952+(M*160|0)+(s<<2)|0;w=g+27952+(M*160|0)+(q<<2)|0;i=n+-6|0;j=a[g+28272+(M*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((n&7|0)==4&((h&255)>19&(j&(c[W>>2]|0)!=0))){if((a[A>>0]|0)==-2){ca=247;break}o=c[(c[N>>2]|0)+48>>2]|0;c[I>>2]=0;l=(c[O>>2]&128|0)==0;if(!(c[V>>2]|0)){if(l){ca=247;break}U=c[X>>2]|0;i=U+(c[P>>2]|0)|0;h=(c[fa>>2]<<1&2)+(n>>>5)|0;U=o+((H(h>>>2,U)|0)+i<<2)|0;if(!(c[U>>2]&J)){l=I;k=-1;break}k=c[N>>2]|0;U=c[k+36+(M<<2)>>2]|0;l=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h)|0)|0;b[I>>1]=b[U+(l<<2)>>1]|0;b[K>>1]=b[U+(l<<2)+2>>1]<<1;l=I;k=a[(c[k+68+(M<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!l){ca=247;break}i=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;h=n>>>2;if(!(c[o+(i<<2)>>2]&J)){l=I;k=-1;break}k=c[N>>2]|0;U=c[k+36+(M<<2)>>2]|0;l=(c[(c[Q>>2]|0)+(i<<2)>>2]|0)+3+(H(c[R>>2]|0,h&3)|0)|0;b[I>>1]=b[U+(l<<2)>>1]|0;b[K>>1]=(b[U+(l<<2)+2>>1]|0)/2|0;l=I;k=a[(c[k+68+(M<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ca=247;while(0);do if((ca|0)==247){ca=0;if(j){k=n+-9|0;l=g+27952+(M*160|0)+(k<<2)|0;k=a[g+28272+(M*40|0)+k>>0]|0;break}else{l=g+27952+(M*160|0)+(i<<2)|0;break}}while(0);j=r<<24>>24==p<<24>>24;i=t<<24>>24==p<<24>>24;h=(i&1)+(j&1)+((k|0)==(v|0)&1)|0;if(h>>>0>1){j=GM(b[u>>1]|0,b[w>>1]|0,b[l>>1]|0)|0;k=GM(b[g+27952+(M*160|0)+(s<<2)+2>>1]|0,b[g+27952+(M*160|0)+(q<<2)+2>>1]|0,b[l+2>>1]|0)|0;break}if((h|0)!=1){j=b[u>>1]|0;if(t<<24>>24!=-2&(r<<24>>24==-2&(k|0)==-2)){k=b[g+27952+(M*160|0)+(s<<2)+2>>1]|0;break}else{j=GM(j,b[w>>1]|0,b[l>>1]|0)|0;k=GM(b[g+27952+(M*160|0)+(s<<2)+2>>1]|0,b[g+27952+(M*160|0)+(q<<2)+2>>1]|0,b[l+2>>1]|0)|0;break}}if(i){k=b[g+27952+(M*160|0)+(s<<2)+2>>1]|0;j=b[u>>1]|0;break}if(j){k=b[g+27952+(M*160|0)+(q<<2)+2>>1]|0;j=b[w>>1]|0;break}else{k=b[l+2>>1]|0;j=b[l>>1]|0;break}}while(0);U=d[88688+x>>0]|0;h=U+-1|0;U=U+-8|0;i=(d[g+28352+(M*80|0)+(U<<1)+1>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)+1>>0]|0)|0;h=Gl(g,40,(d[g+28352+(M*80|0)+(U<<1)>>0]|0)+(d[g+28352+(M*80|0)+(h<<1)>>0]|0)|0,Z)|0;i=Gl(g,47,i,_)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break l;U=(c[_>>2]<<8&65280|c[Z>>2]&255)*65537|0;c[g+28352+(M*80|0)+(L<<1)>>2]=U;c[g+28352+(M*80|0)+(L<<1)+16>>2]=U;c[g+28352+(M*80|0)+(L<<1)+32>>2]=U;c[g+28352+(M*80|0)+(L<<1)+48>>2]=U;U=i+k<<16|h+j&65535;c[g+27952+(M*160|0)+(L<<2)>>2]=U;c[g+27952+(M*160|0)+(L<<2)+4>>2]=U;c[g+27952+(M*160|0)+(L<<2)+32>>2]=U;c[g+27952+(M*160|0)+(L<<2)+36>>2]=U;c[g+27952+(M*160|0)+(L<<2)+64>>2]=U;c[g+27952+(M*160|0)+(L<<2)+68>>2]=U;c[g+27952+(M*160|0)+(L<<2)+96>>2]=U;c[g+27952+(M*160|0)+(L<<2)+100>>2]=U}y=y+1|0}M=M+1|0;h=c[S>>2]|0}h=-1094995529;break a}else{if(!(h&1)){Z=g+21660|0;_=or(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[Z>>2]|0,0)|0;c[Z>>2]=_;if((_|0)<0){h=-1;break a}}else{m:do if((m|0)!=0?(Vu(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)!=0:0){c[ia>>2]=h|16777216;h=0;while(1){if(h>>>0>=16)break m;_=d[88688+h>>0]|0;Z=a[_+-1+(g+21664)>>0]|0;X=a[_+-8+(g+21664)>>0]|0;Z=(Z|0)>(X|0)?X:Z;_=g+21664+_|0;Z=(YE(g,(Z|0)<0?2:Z)|0)*257&65535;b[_>>1]=Z;b[_+8>>1]=Z;h=h+4|0}}else ca=46;while(0);n:do if((ca|0)==46){h=0;while(1){if((h|0)==16)break n;_=d[88688+h>>0]|0;Z=a[_+-1+(g+21664)>>0]|0;X=a[_+-8+(g+21664)>>0]|0;Z=(Z|0)>(X|0)?X:Z;Z=(YE(g,(Z|0)<0?2:Z)|0)&255;a[g+21664+_>>0]=Z;h=h+1|0}}while(0);_=(c[g+21704>>2]|0)+(c[(c[f+26348>>2]|0)+(c[la>>2]<<2)>>2]|0)|0;c[_>>2]=c[g+21700>>2];a[_+4>>0]=a[g+21695>>0]|0;a[_+5>>0]=a[g+21687>>0]|0;a[_+6>>0]=a[g+21679>>0]|0;if((wn(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<0){h=-1;break a}}if(!ba){c[g+21656>>2]=6;break}h=Nu(f,g)|0;a[(c[f+26380>>2]|0)+ma>>0]=h;h=or(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,h,1)|0;if((h|0)<0){h=-1;break a}c[g+21656>>2]=h}while(0);if(c[ia>>2]&120|0){a[(c[f+26380>>2]|0)+ma>>0]=0;k=c[ia>>2]|0;h=c[f+26352>>2]|0;i=(H(h<<2,c[fa>>2]|0)|0)+(c[ea>>2]<<2)|0;l=c[la>>2]<<2;if(!(k&12288)){_=(c[f+24384>>2]|0)+l|0;b[_>>1]=-1;b[_+2>>1]=-1}else{j=(c[f+24352>>2]|0)+(i<<2)|0;Z=g+28e3|0;_=c[Z+4>>2]|0;W=j;c[W>>2]=c[Z>>2];c[W+4>>2]=_;W=g+28008|0;_=c[W+4>>2]|0;Z=j+8|0;c[Z>>2]=c[W>>2];c[Z+4>>2]=_;Z=g+28032|0;_=c[Z+4>>2]|0;W=j+(h<<2)|0;X=W;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28040|0;_=c[X+4>>2]|0;W=W+8|0;c[W>>2]=c[X>>2];c[W+4>>2]=_;W=g+28064|0;_=c[W+4>>2]|0;X=j+(h<<1<<2)|0;Z=X;c[Z>>2]=c[W>>2];c[Z+4>>2]=_;Z=g+28072|0;_=c[Z+4>>2]|0;X=X+8|0;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28096|0;_=c[X+4>>2]|0;j=j+(h*3<<2)|0;Z=j;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28104|0;_=c[Z+4>>2]|0;j=j+8|0;c[j>>2]=c[Z>>2];c[j+4>>2]=_;j=(c[g+32848>>2]|0)+(c[(c[f+26348>>2]|0)+(c[la>>2]<<2)>>2]<<1)|0;if(!(k&2048)){X=g+28424|0;Z=c[X+4>>2]|0;_=j;c[_>>2]=c[X>>2];c[_+4>>2]=Z;_=j+6|0;b[_+6>>1]=b[g+28382>>1]|0;b[_+4>>1]=b[g+28398>>1]|0;b[_+2>>1]=b[g+28414>>1]|0}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}_=(c[f+24384>>2]|0)+l|0;a[_>>0]=a[g+28284>>0]|0;a[_+1>>0]=a[g+28286>>0]|0;a[_+2>>0]=a[g+28300>>0]|0;a[_+3>>0]=a[g+28302>>0]|0}if(k&49152|0){Z=(c[f+24356>>2]|0)+(i<<2)|0;W=g+28160|0;_=c[W+4>>2]|0;V=Z;c[V>>2]=c[W>>2];c[V+4>>2]=_;V=g+28168|0;_=c[V+4>>2]|0;W=Z+8|0;c[W>>2]=c[V>>2];c[W+4>>2]=_;W=g+28192|0;_=c[W+4>>2]|0;V=Z+(h<<2)|0;X=V;c[X>>2]=c[W>>2];c[X+4>>2]=_;X=g+28200|0;_=c[X+4>>2]|0;V=V+8|0;c[V>>2]=c[X>>2];c[V+4>>2]=_;V=g+28224|0;_=c[V+4>>2]|0;X=Z+(h<<1<<2)|0;W=X;c[W>>2]=c[V>>2];c[W+4>>2]=_;W=g+28232|0;_=c[W+4>>2]|0;X=X+8|0;c[X>>2]=c[W>>2];c[X+4>>2]=_;X=g+28256|0;_=c[X+4>>2]|0;h=Z+(h*3<<2)|0;Z=h;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28264|0;_=c[Z+4>>2]|0;h=h+8|0;c[h>>2]=c[Z>>2];c[h+4>>2]=_;h=(c[g+32852>>2]|0)+(c[(c[f+26348>>2]|0)+(c[la>>2]<<2)>>2]<<1)|0;if(!(k&2048)){X=g+28504|0;Z=c[X+4>>2]|0;_=h;c[_>>2]=c[X>>2];c[_+4>>2]=Z;_=h+6|0;b[_+6>>1]=b[g+28462>>1]|0;b[_+4>>1]=b[g+28478>>1]|0;b[_+2>>1]=b[g+28494>>1]|0}else{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}_=(c[f+24388>>2]|0)+l|0;a[_>>0]=a[g+28324>>0]|0;a[_+1>>0]=a[g+28326>>0]|0;a[_+2>>0]=a[g+28340>>0]|0;a[_+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[$>>2]|0)!=3)){$=(c[f+26392>>2]|0)+(c[la>>2]<<2)|0;a[$+1>>0]=(e[g+28554>>1]|0)>>>1;a[$+2>>0]=(e[g+28556>>1]|0)>>>1;a[$+3>>0]=(e[g+28558>>1]|0)>>>1}}if(!(c[ia>>2]&2)){h=_w(g)|0;if(ba)u=(dy(g)|0)<<4|h;else u=h}else if(Y>>>0>15&(ba^1)){mx(c[f+4>>2]|0,16,201439,aa);h=-1094995529;break}else u=Y;c[g+21856>>2]=u;b[(c[f+26376>>2]|0)+(ma<<1)>>1]=u;t=(u&15|0)==0;if(!((m|0)==0|t)?(c[ia>>2]&7|0)==0:0){ba=(Vu(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)<<24;c[ia>>2]=c[ia>>2]|ba}k=c[ia>>2]|0;do if(!((k&16777216|0)==0?1:(c[(c[ha>>2]|0)+12>>2]|0)!=3))if((c[f+29696>>2]|0)>>>0<151){i=(k&7|0)==0;j=i?0:64;h=0;while(1){if((h|0)==2)break;ba=c[g+21740+(h<<2)>>2]|0;if((ba|0)!=0&(ba&16777216|0)==0){ba=h<<4;a[ba+99+(g+27824)>>0]=j;a[ba+91+(g+27824)>>0]=j;a[ba+59+(g+27824)>>0]=j;a[ba+51+(g+27824)>>0]=j;a[ba+19+(g+27824)>>0]=j;a[(ba|11)+(g+27824)>>0]=j}h=h+1|0}ba=c[g+21732>>2]|0;h=i?0:1077952576;if(!((ba|0)!=0&(ba&16777216|0)==0))break;c[g+27828>>2]=h;c[g+27868>>2]=h;c[g+27908>>2]=h;break}else{h=0;while(1){if((h|0)==2)break;i=c[g+21740+(h<<2)>>2]|0;if((i|0)!=0&(i&16777216|0)==0){aa=i<<4&64;ba=h<<4;a[ba+99+(g+27824)>>0]=aa;a[ba+91+(g+27824)>>0]=aa;a[ba+59+(g+27824)>>0]=aa;a[ba+51+(g+27824)>>0]=aa;a[ba+19+(g+27824)>>0]=aa;a[(ba|11)+(g+27824)>>0]=aa}h=h+1|0}ba=c[g+21732>>2]|0;h=(ba&4|0)==0?0:1077952576;if(!((ba|0)!=0&(ba&16777216|0)==0))break;c[g+27828>>2]=h;c[g+27868>>2]=h;c[g+27908>>2]=h;break}while(0);c[(c[f+24364>>2]|0)+(ma<<2)>>2]=k;if((u|0)==0?(c[ia>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;c[g+864>>2]=0;h=g+848|0}else ca=307;o:do if((ca|0)==307){v=g+32856|0;k=g+864|0;if(!(Vu(v,((c[k>>2]|0)==0?60:61)+(g+32904)|0)|0)){c[k>>2]=0;j=g+848|0;h=j;j=c[j>>2]|0}else{l=(c[da+1184>>2]|0)*6|0;m=l+3|0;j=m<<1;h=62;i=1;while(1){if(!(Vu(v,g+32904+h|0)|0))break;if((i|0)>=(j|0)){ca=439;break}h=63;i=i+1|0}if((ca|0)==439){h=c[f+4>>2]|0;g=c[fa>>2]|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=g;mx(h,16,201452,ga);h=-1;break a}h=(i+1|0)>>>1;i=(i&1|0)==0?0-h|0:h;c[k>>2]=i;h=g+848|0;i=(c[h>>2]|0)+i|0;if(i>>>0>m>>>0){fa=(i|0)<0;j=l+4|0;ga=i-j|0;i=i+j|0;j=fa?i:ga;i=fa?i:ga}else j=i;c[h>>2]=i;ga=c[ja>>2]|0;c[g+852>>2]=d[ga+548+j>>0];c[g+856>>2]=d[ga+636+j>>0]}i=c[ia>>2]|0;ga=(i&128|0)==0;r=(j|0)!=0;s=ga?(r?f+26412|0:f+26700|0):r?f+26556|0:f+26844|0;r=ga?(r?f+26428|0:f+26716|0):r?f+26572|0:f+26860|0;p:do if(!(i&2)){q=(i&7|0)==0?3:0;p=(i&16777216|0)==0;o=0;while(1){if((o|0)==4)break p;q:do if(!(1<<o&u)){ga=(d[88688+(o<<2)>>0]|0)+(g+27824)|0;b[ga>>1]=0;b[ga+8>>1]=0}else{if(!p){i=o<<2;k=g+28560+(o<<6<<ka<<1)|0;l=(c[(c[ja>>2]|0)+173812+(q<<2)>>2]|0)+(j<<8)|0;do if((c[(c[ha>>2]|0)+12>>2]|0)==3){m=d[88688+i>>0]|0;ga=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(Vu(v,(((a[m+-8+(g+27824)>>0]|0)==0?ga:ga|2)|1012)+(g+32904)|0)|0)break;ga=g+27824+m|0;b[ga>>1]=0;b[ga+8>>1]=0;break q}while(0);Kd(f,g,k,5,i,r,l,64);break}k=(c[(c[ja>>2]|0)+173788+(q<<2)>>2]|0)+(j<<6)|0;l=o<<2;i=0;while(1){if((i|0)==4)break q;m=i+l|0;n=d[88688+m>>0]|0;ga=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,((a[n+-8+(g+27824)>>0]|0)==0?ga:ga|2)+93+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Kd(f,g,g+28560+(m<<4<<ka<<1)|0,2,m,s,k,16);i=i+1|0}}while(0);o=o+1|0}}else{i=g+31632|0;k=i;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if(!(Vu(v,((c[g+21860>>2]|0)>>>7&2|(c[g+21864>>2]|0)>>>8&1)+85+(g+32904)|0)|0))a[g+27824>>0]=0;else je(f,g,i,0,48,s,16);if(t){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;break}j=(c[(c[ja>>2]|0)+173788>>2]|0)+(j<<6)|0;k=s+1|0;i=0;while(1){if((i|0)==16)break p;l=d[88688+i>>0]|0;ga=(a[l+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,((a[l+-8+(g+27824)>>0]|0)==0?ga:ga|2)+89+(g+32904)|0)|0))a[g+27824+l>>0]=0;else Kd(f,g,g+28560+(i<<4<<ka<<1)|0,1,i,k,j,15);i=i+1|0}}while(0);j=c[(c[ha>>2]|0)+12>>2]|0;if((j|0)!=3){i=(u&48|0)!=0;if((j|0)!=2){r:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break r;l=i+49|0;ga=64<<i;ha=(c[j>>2]&ga|0)!=0&1;if(!(Vu(v,((c[k>>2]&ga|0)==0?ha:ha|2)+97+(g+32904)|0)|0))a[(d[88688+l>>0]|0)+(g+27824)>>0]=0;else je(f,g,g+28560+((i<<8)+256<<ka<<1)|0,3,l,171060,4);i=i+1|0}}while(0);if(!(u&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}m=s+1|0;i=0;while(1){if((i|0)==2)break o;n=i+1|0;o=(c[(c[ja>>2]|0)+173788+(((c[ia>>2]&7|0)==0?3:0)+n<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;j=(i<<4)+16|0;i=0;while(1){if((i|0)==4)break;k=j+i|0;l=d[88688+k>>0]|0;ha=(a[l+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,((a[l+-8+(g+27824)>>0]|0)==0?ha:ha|2)+101+(g+32904)|0)|0))a[g+27824+l>>0]=0;else Kd(f,g,g+28560+(k<<4<<ka<<1)|0,4,k,m,o,15);i=i+1|0}i=n}}s:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break s;l=i+49|0;ga=64<<i;ha=(c[j>>2]&ga|0)!=0&1;if(!(Vu(v,((c[k>>2]&ga|0)==0?ha:ha|2)+97+(g+32904)|0)|0))a[(d[88688+l>>0]|0)+(g+27824)>>0]=0;else qe(f,g,g+28560+((i<<8)+256<<ka<<1)|0,l);i=i+1|0}}while(0);if(!(u&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}u=16<<ka;q=s+1|0;r=u<<2;i=0;while(1){if((i|0)==2)break o;s=(i<<4)+16|0;t=i+1|0;m=(c[(c[ja>>2]|0)+173788+(((c[ia>>2]&7|0)==0?3:0)+t<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;i=g+28560+(s<<4<<ka<<1)|0;j=0;while(1){if((j|0)==2)break;n=(j<<3)+s|0;k=0;l=i;while(1){if((k|0)==4)break;o=n+k|0;p=d[88688+o>>0]|0;ha=(a[p+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,((a[p+-8+(g+27824)>>0]|0)==0?ha:ha|2)+101+(g+32904)|0)|0))a[g+27824+p>>0]=0;else Kd(f,g,l,4,o,q,m,15);k=k+1|0;l=l+(u<<1)|0}i=i+(r<<1)|0;j=j+1|0}i=t}}i=c[ia>>2]|0;q=c[g+852>>2]|0;t:do if(!(i&2)){p=(i&7|0)==0?4:1;o=(i&16777216|0)==0;n=0;while(1){if((n|0)==4)break t;u:do if(!(1<<n&u)){ha=(d[88688+((n<<2)+16)>>0]|0)+(g+27824)|0;b[ha>>1]=0;b[ha+8>>1]=0}else{if(!o){i=(n<<2)+16|0;j=c[(c[ja>>2]|0)+173812+(p<<2)>>2]|0;k=d[88688+i>>0]|0;ha=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,(((a[k+-8+(g+27824)>>0]|0)==0?ha:ha|2)|1016)+(g+32904)|0)|0)){ha=g+27824+k|0;b[ha>>1]=0;b[ha+8>>1]=0;break}else{Kd(f,g,g+28560+(i<<4<<ka<<1)|0,9,i,r,j+(q<<8)|0,64);break}}j=(c[(c[ja>>2]|0)+173788+(p<<2)>>2]|0)+(q<<6)|0;k=(n<<2)+16|0;i=0;while(1){if((i|0)==4)break u;l=k+i|0;m=d[88688+l>>0]|0;ha=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,(((a[m+-8+(g+27824)>>0]|0)==0?ha:ha|2)|468)+(g+32904)|0)|0))a[g+27824+m>>0]=0;else Kd(f,g,g+28560+(l<<4<<ka<<1)|0,8,l,s,j,16);i=i+1|0}}while(0);n=n+1|0}}else{i=g+31696|0;k=i;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if(!(Vu(v,((c[g+21864>>2]|0)>>>9&1|(c[g+21860>>2]|0)>>>8&2|460)+(g+32904)|0)|0))a[g+27864>>0]=0;else je(f,g,i,6,49,s,16);if(t){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}j=(c[(c[ja>>2]|0)+173792>>2]|0)+(q<<6)|0;k=s+1|0;i=0;while(1){if((i|0)==16)break t;l=i+16|0;m=d[88688+l>>0]|0;ha=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,(((a[m+-8+(g+27824)>>0]|0)==0?ha:ha|2)|464)+(g+32904)|0)|0))a[g+27824+m>>0]=0;else Kd(f,g,g+28560+(l<<4<<ka<<1)|0,7,l,k,j,15);i=i+1|0}}while(0);i=c[ia>>2]|0;q=c[g+856>>2]|0;if(i&2|0){i=g+31760|0;k=i;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if(!(Vu(v,((c[g+21864>>2]|0)>>>10&1|(c[g+21860>>2]|0)>>>9&2|472)+(g+32904)|0)|0))a[g+27904>>0]=0;else je(f,g,i,10,50,s,16);if(t){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}m=(c[(c[ja>>2]|0)+173796>>2]|0)+(q<<6)|0;j=s+1|0;i=0;while(1){if((i|0)==16)break o;k=i+32|0;l=d[88688+k>>0]|0;ja=(a[l+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,(((a[l+-8+(g+27824)>>0]|0)==0?ja:ja|2)|476)+(g+32904)|0)|0))a[g+27824+l>>0]=0;else Kd(f,g,g+28560+(k<<4<<ka<<1)|0,11,k,j,m,15);i=i+1|0}}p=(i&7|0)==0?5:2;o=(i&16777216|0)==0;n=0;while(1){if((n|0)==4)break o;v:do if(!(1<<n&u)){ia=(d[88688+((n<<2)+32)>>0]|0)+(g+27824)|0;b[ia>>1]=0;b[ia+8>>1]=0}else{if(!o){i=(n<<2)+32|0;j=c[(c[ja>>2]|0)+173812+(p<<2)>>2]|0;k=d[88688+i>>0]|0;ia=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,(((a[k+-8+(g+27824)>>0]|0)==0?ia:ia|2)|1020)+(g+32904)|0)|0)){ia=g+27824+k|0;b[ia>>1]=0;b[ia+8>>1]=0;break}else{Kd(f,g,g+28560+(i<<4<<ka<<1)|0,13,i,r,j+(q<<8)|0,64);break}}j=(c[(c[ja>>2]|0)+173788+(p<<2)>>2]|0)+(q<<6)|0;k=(n<<2)+32|0;i=0;while(1){if((i|0)==4)break v;l=k+i|0;m=d[88688+l>>0]|0;ia=(a[m+-1+(g+27824)>>0]|0)!=0&1;if(!(Vu(v,(((a[m+-8+(g+27824)>>0]|0)==0?ia:ia|2)|480)+(g+32904)|0)|0))a[g+27824+m>>0]=0;else Kd(f,g,g+28560+(l<<4<<ka<<1)|0,12,l,s,j,16);i=i+1|0}}while(0);n=n+1|0}}while(0);a[(c[f+24340>>2]|0)+ma>>0]=c[h>>2];h=c[la>>2]|0;i=c[f+25956>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25668>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);Nb=na;return h|0}function sc(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0;ma=Nb;Nb=Nb+208|0;ea=ma+184|0;Z=ma+176|0;aa=ma+160|0;$=ma+144|0;s=ma+136|0;r=ma+128|0;q=ma+120|0;t=ma+112|0;o=ma+96|0;p=ma+80|0;n=ma+72|0;k=ma+56|0;i=ma+48|0;ga=ma+196|0;T=ma+32|0;U=ma;ja=f+28196|0;m=c[(c[ja>>2]|0)+64>>2]|0;fa=f+28200|0;_=((c[(c[fa>>2]|0)+12>>2]|0)+-1|0)>>>0<2;ia=c[f+25652>>2]|0;ca=g+21788|0;da=g+21792|0;X=f+27e3|0;la=(H(c[X>>2]|0,c[da>>2]|0)|0)+(c[ca>>2]|0)|0;ka=g+21796|0;c[ka>>2]=la;l=g+840|0;a:do if((c[l>>2]|0)!=1){j=g+21816|0;h=c[j>>2]|0;do if((h|0)==-1){h=cH(g+4|0)|0;if(h>>>0>(c[f+27004>>2]|0)>>>0){g=c[f+4>>2]|0;c[i>>2]=h;mx(g,16,196461,i);h=-1094995529;break a}else{c[j>>2]=h;break}}while(0);i=h+-1|0;c[j>>2]=i;if(h){if(c[f+26360>>2]|0?(c[da>>2]&1|i|0)==0:0){la=RN(g+4|0)|0;c[g+21828>>2]=la;c[g+21832>>2]=la}_c(f,g);h=0}else ba=11}else ba=11;while(0);b:do if((ba|0)==11){W=f+26360|0;if(c[W>>2]|0?(c[da>>2]&1|0)==0:0){ha=RN(g+4|0)|0;c[g+21828>>2]=ha;c[g+21832>>2]=ha}c[g+21648>>2]=0;ha=g+4|0;i=sq(ha)|0;c[ga>>2]=i;c:do switch(c[l>>2]|0){case 3:if(i>>>0<23){Y=a[19040+(i<<2)+2>>0]|0;h=e[19040+(i<<2)>>1]|0;c[ga>>2]=h;i=Y;Y=0;break c}else{h=i+-23|0;c[ga>>2]=h;ba=23;break c}case 2:if(i>>>0<5){Y=a[18992+(i<<2)+2>>0]|0;h=e[18992+(i<<2)>>1]|0;c[ga>>2]=h;i=Y;Y=0;break c}else{h=i+-5|0;c[ga>>2]=h;ba=23;break c}default:{h=i+-1|0;if(i|0?(c[g+836>>2]|0)==5:0){c[ga>>2]=h;ba=23}else{h=i;ba=23}}}while(0);do if((ba|0)==23)if(h>>>0>25){f=c[f+4>>2]|0;ka=(AE(c[g+836>>2]|0)|0)<<24>>24;la=c[ca>>2]|0;g=c[da>>2]|0;c[k>>2]=h;c[k+4>>2]=ka;c[k+8>>2]=la;c[k+12>>2]=g;mx(f,16,196488,k);h=-1;break b}else{Y=d[18880+(h<<2)+3>>0]|0;c[g+21660>>2]=d[18880+(h<<2)+2>>0];h=e[18880+(h<<2)>>1]|0;c[ga>>2]=h;i=0;break}while(0);V=g+21828|0;if(c[V>>2]|0){h=h|128;c[ga>>2]=h}b[(c[f+26356>>2]|0)+(la<<1)>>1]=c[g+832>>2];if(h&4|0){h=c[fa>>2]|0;h=H(c[h+1184>>2]|0,e[162472+(c[h+12>>2]<<1)>>1]|0)|0;ka=VO(ha)|0;c[g+27780>>2]=ka;if((NS(ha)|0)<(h|0)){mx(c[f+4>>2]|0,16,196531,n);h=-1094995529;break}else{CS(ha,h);a[(c[f+24340>>2]|0)+la>>0]=0;k=(c[f+25956>>2]|0)+(la*48|0)|0;l=k+48|0;do{a[k>>0]=16;k=k+1|0}while((k|0)<(l|0));c[(c[f+24364>>2]|0)+(la<<2)>>2]=c[ga>>2];h=0;break}}qh(f,g,h);Cc(f,g,h);d:do if(!(h&7)){if(i<<24>>24==4){e:do if((c[l>>2]|0)==3){h=0;while(1){if(h>>>0>=4)break;j=cE(ha)|0;i=g+28552+(h<<1)|0;b[i>>1]=j;j=j&65535;if(j>>>0>12){ba=57;break}c[T+(h<<2)>>2]=d[19136+(j<<2)+2>>0];b[i>>1]=b[19136+(j<<2)>>1]|0;h=h+1|0}if((ba|0)==57){g=c[f+4>>2]|0;la=c[ca>>2]|0;f=c[da>>2]|0;c[p>>2]=j;c[p+4>>2]=la;c[p+8>>2]=f;mx(g,16,196572,p);break}if(!((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256))ba=65;else{xN(f,g,ga);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;ba=65}}else{h=0;while(1){if(h>>>0>=4){ba=65;break e}j=cE(ha)|0;i=g+28552+(h<<1)|0;b[i>>1]=j;j=j&65535;if(j>>>0>3)break;c[T+(h<<2)>>2]=d[19024+(j<<2)+2>>0];b[i>>1]=b[19024+(j<<2)>>1]|0;h=h+1|0}g=c[f+4>>2]|0;la=c[ca>>2]|0;f=c[da>>2]|0;c[o>>2]=j;c[o+4>>2]=la;c[o+8>>2]=f;mx(g,16,196612,o)}while(0);do if((ba|0)==65){S=g+23412|0;n=g+21832|0;l=0;f:while(1){h=c[S>>2]|0;if(l>>>0>=h>>>0)break;if(!(c[ga>>2]&512))k=c[g+23404+(l<<2)>>2]<<c[n>>2];else k=1;j=4096<<(l<<1);i=0;while(1){if(i>>>0>=4)break;h=e[g+28552+(i<<1)>>1]|0;if(!(h&256)){g:do if(!(j&h))h=-1;else switch(k|0){case 1:{h=0;break g}case 2:{h=(RN(ha)|0)^1;break g}default:{h=cE(ha)|0;if(h>>>0<k>>>0)break g;else{ba=78;break f}}}while(0);c[U+(l<<4)+(i<<2)>>2]=h}i=i+1|0}l=l+1|0}if((ba|0)==78){g=c[f+4>>2]|0;c[t>>2]=h;mx(g,16,196652,t);break}if(!m)m=0;else{R=(c[(c[fa>>2]|0)+72>>2]|0)==0;m=g+28552|0;m=(((R?24117616:7340144)&c[m>>2]|0)==0?((R?24117616:7340144)&c[m+4>>2]|0)==0:0)&1}N=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26344|0;R=f+26352|0;M=0;while(1){if(M>>>0>=h>>>0)break;J=M<<1;F=4096<<J;G=g+28272+(M*40|0)+11|0;I=g+27952+(M*160|0)+40|0;J=12288<<J;K=g+27952+(M*160|0)+42|0;E=0;while(1){if((E|0)==4)break;h=g+28552+(E<<1)|0;h:do if(!(b[h>>1]&256)){D=c[U+(M<<4)+(E<<2)>>2]&255;L=E<<2;i=d[88688+L>>0]|0;a[i+9+(g+28272+(M*40|0))>>0]=D;a[i+8+(g+28272+(M*40|0))>>0]=D;a[i+1+(g+28272+(M*40|0))>>0]=D;a[g+28272+(M*40|0)+i>>0]=D;h=e[h>>1]|0;if(!(F&h)){c[g+27952+(M*160|0)+(i<<2)+36>>2]=0;c[g+27952+(M*160|0)+(i<<2)+32>>2]=0;c[g+27952+(M*160|0)+(i<<2)+4>>2]=0;c[g+27952+(M*160|0)+(i<<2)>>2]=0;break}A=(h&24|0)==0?1:2;B=c[T+(E<<2)>>2]|0;C=(h&8|0)==0;D=(h&16|0)==0;x=(h&32|0)==0;w=0;while(1){if((w|0)>=(B|0))break h;h=88688+((H(w,A)|0)+L)|0;h=a[h>>0]|0;y=h&255;z=g+27952+(M*160|0)+(y<<2)|0;o=a[g+28272+(M*40|0)+y>>0]|0;p=o<<24>>24;q=y+-8|0;r=a[g+28272+(M*40|0)+q>>0]|0;s=y+-1|0;t=a[g+28272+(M*40|0)+s>>0]|0;u=g+27952+(M*160|0)+(s<<2)|0;v=g+27952+(M*160|0)+(q<<2)|0;i=q+A|0;j=a[g+28272+(M*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((y&7|0)==4&((h&255)>19&(j&(c[W>>2]|0)!=0))){if((a[G>>0]|0)==-2){ba=100;break}n=c[(c[N>>2]|0)+48>>2]|0;c[I>>2]=0;l=(c[O>>2]&128|0)==0;if(!(c[V>>2]|0)){if(l){ba=100;break}l=c[X>>2]|0;h=l+(c[P>>2]|0)|0;i=(c[da>>2]<<1&2)+(y>>>5)|0;n=n+((H(i>>>2,l)|0)+h<<2)|0;if(!(c[n>>2]&J)){l=I;k=-1;break}k=c[N>>2]|0;n=c[k+36+(M<<2)>>2]|0;l=(c[(c[Q>>2]|0)+(h<<2)>>2]|0)+3+(H(c[R>>2]|0,i)|0)|0;b[I>>1]=b[n+(l<<2)>>1]|0;b[K>>1]=b[n+(l<<2)+2>>1]<<1;l=I;k=a[(c[k+68+(M<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!l){ba=100;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=y>>>2;if(!(c[n+(h<<2)>>2]&J)){l=I;k=-1;break}k=c[N>>2]|0;n=c[k+36+(M<<2)>>2]|0;l=(c[(c[Q>>2]|0)+(h<<2)>>2]|0)+3+(H(c[R>>2]|0,i&3)|0)|0;b[I>>1]=b[n+(l<<2)>>1]|0;b[K>>1]=(b[n+(l<<2)+2>>1]|0)/2|0;l=I;k=a[(c[k+68+(M<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ba=100;while(0);do if((ba|0)==100){ba=0;if(j){k=y+-9|0;l=g+27952+(M*160|0)+(k<<2)|0;k=a[g+28272+(M*40|0)+k>>0]|0;break}else{l=g+27952+(M*160|0)+(i<<2)|0;break}}while(0);j=r<<24>>24==o<<24>>24;i=t<<24>>24==o<<24>>24;h=(i&1)+(j&1)+((k|0)==(p|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[u>>1]|0;if(t<<24>>24!=-2&(r<<24>>24==-2&(k|0)==-2)){i=b[g+27952+(M*160|0)+(s<<2)+2>>1]|0;break}else{h=GM(h,b[v>>1]|0,b[l>>1]|0)|0;i=GM(b[g+27952+(M*160|0)+(s<<2)+2>>1]|0,b[g+27952+(M*160|0)+(q<<2)+2>>1]|0,b[l+2>>1]|0)|0;break}}if(i){i=b[g+27952+(M*160|0)+(s<<2)+2>>1]|0;h=b[u>>1]|0;break}if(j){i=b[g+27952+(M*160|0)+(q<<2)+2>>1]|0;h=b[v>>1]|0;break}else{i=b[l+2>>1]|0;h=b[l>>1]|0;break}}else{h=GM(b[u>>1]|0,b[v>>1]|0,b[l>>1]|0)|0;i=GM(b[g+27952+(M*160|0)+(s<<2)+2>>1]|0,b[g+27952+(M*160|0)+(q<<2)+2>>1]|0,b[l+2>>1]|0)|0}while(0);v=(Hq(ha)|0)+h|0;h=(Hq(ha)|0)+i|0;i=v&65535;do if(C){if(!D){b[z+4>>1]=i;h=h&65535;b[z+6>>1]=h;break}if(x){h=h&65535;break}else{b[z+32>>1]=i;h=h&65535;b[z+34>>1]=h;break}}else{b[z+36>>1]=i;b[z+32>>1]=i;b[z+4>>1]=i;h=h&65535;b[z+38>>1]=h;b[z+34>>1]=h;b[z+6>>1]=h}while(0);b[z>>1]=i;b[g+27952+(M*160|0)+(y<<2)+2>>1]=h;w=w+1|0}}else{L=d[88688+(E<<2)>>0]|0;a[g+28272+(M*40|0)+L>>0]=a[L+1+(g+28272+(M*40|0))>>0]|0}while(0);E=E+1|0}M=M+1|0;h=c[S>>2]|0}h=-1094995529;break d}while(0);h=-1;break b}if(h&256|0){xN(f,g,ga);m=c[(c[fa>>2]|0)+72>>2]&m;h=-1094995529;break}if(h&8|0){t=g+23412|0;u=c[ga>>2]|0;k=g+21832|0;j=0;i:while(1){h=c[t>>2]|0;if(j>>>0>=h>>>0)break;if(u&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<<c[k>>2];switch(i|0){case 1:{h=0;break}case 2:{h=(RN(ha)|0)^1;break}default:{h=cE(ha)|0;if(h>>>0>=i>>>0){ba=138;break i}}}X=H(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=X;c[g+28272+(j*40|0)+20>>2]=X;c[g+28272+(j*40|0)+28>>2]=X;c[g+28272+(j*40|0)+36>>2]=X}j=j+1|0}if((ba|0)==138){g=c[f+4>>2]|0;c[q>>2]=h;mx(g,16,196652,q);h=-1;break b}s=0;while(1){if(s>>>0>=h>>>0){h=-1094995529;break d}if(u&4096<<(s<<1)){i=a[g+28272+(s*40|0)+12>>0]|0;n=a[g+28272+(s*40|0)+4>>0]|0;o=a[g+28272+(s*40|0)+11>>0]|0;p=g+27952+(s*160|0)+44|0;r=g+27952+(s*160|0)+16|0;h=a[g+28272+(s*40|0)+8>>0]|0;if(h<<24>>24==-2){q=g+27952+(s*160|0)+12|0;l=a[g+28272+(s*40|0)+3>>0]|0}else{q=g+27952+(s*160|0)+32|0;l=h<<24>>24}j=n<<24>>24==i<<24>>24;k=o<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((l|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[p>>1]|0;if(o<<24>>24!=-2&(n<<24>>24==-2&(l|0)==-2)){i=b[g+27952+(s*160|0)+46>>1]|0;break}else{h=GM(h,b[r>>1]|0,b[q>>1]|0)|0;i=GM(b[g+27952+(s*160|0)+46>>1]|0,b[g+27952+(s*160|0)+18>>1]|0,b[q+2>>1]|0)|0;break}}if(k){i=b[g+27952+(s*160|0)+46>>1]|0;h=b[p>>1]|0;break}if(j){i=b[g+27952+(s*160|0)+18>>1]|0;h=b[r>>1]|0;break}else{i=b[q+2>>1]|0;h=b[q>>1]|0;break}}else{h=GM(b[p>>1]|0,b[r>>1]|0,b[q>>1]|0)|0;i=GM(b[g+27952+(s*160|0)+46>>1]|0,b[g+27952+(s*160|0)+18>>1]|0,b[q+2>>1]|0)|0}while(0);h=(Hq(ha)|0)+h|0;h=(Hq(ha)|0)+i<<16|h&65535;c[g+27952+(s*160|0)+48>>2]=h;c[g+27952+(s*160|0)+52>>2]=h;c[g+27952+(s*160|0)+56>>2]=h;c[g+27952+(s*160|0)+60>>2]=h;c[g+27952+(s*160|0)+80>>2]=h;c[g+27952+(s*160|0)+84>>2]=h;c[g+27952+(s*160|0)+88>>2]=h;c[g+27952+(s*160|0)+92>>2]=h;c[g+27952+(s*160|0)+112>>2]=h;c[g+27952+(s*160|0)+116>>2]=h;c[g+27952+(s*160|0)+120>>2]=h;c[g+27952+(s*160|0)+124>>2]=h;c[g+27952+(s*160|0)+144>>2]=h;c[g+27952+(s*160|0)+148>>2]=h;c[g+27952+(s*160|0)+152>>2]=h;c[g+27952+(s*160|0)+156>>2]=h;h=c[t>>2]|0}s=s+1|0}}R=g+23412|0;S=c[ga>>2]|0;o=g+21832|0;if(h&16|0){n=0;j:while(1){h=c[R>>2]|0;if(n>>>0>=h>>>0)break;k=n<<1;l=g+23404+(n<<2)|0;j=0;while(1){if(j>>>0>=2)break;k:do if(!(S&4096<<j+k))h=255;else{i=c[l>>2]<<c[o>>2];switch(i|0){case 1:{h=0;break k}case 2:{h=(RN(ha)|0)^1;break k}default:{h=cE(ha)|0;if(h>>>0<i>>>0)break k;else{ba=168;break j}}}}while(0);U=(j<<4|12)+(g+28272+(n*40|0))|0;T=H(h,16843009)|0;c[U>>2]=T;c[U+8>>2]=T;j=j+1|0}n=n+1|0}if((ba|0)==168){g=c[f+4>>2]|0;c[r>>2]=h;mx(g,16,196652,r);h=-1;break b}M=f+24312|0;N=g+21740|0;O=g+21720|0;P=f+26344|0;Q=f+26352|0;L=0;while(1){if(L>>>0>=h>>>0){h=-1094995529;break d}z=L<<1;A=g+28272+(L*40|0)+4|0;B=g+28272+(L*40|0)+27|0;C=g+27952+(L*160|0)+16|0;D=g+27952+(L*160|0)+18|0;E=g+28272+(L*40|0)+11|0;F=g+27952+(L*160|0)+108|0;G=g+27952+(L*160|0)+110|0;I=g+27952+(L*160|0)+40|0;J=12288<<z;K=g+27952+(L*160|0)+42|0;y=0;while(1){if((y|0)==2)break;if(!(S&4096<<y+z)){i=0;h=y<<4|12}else{i=y<<3;h=y<<4|12;q=a[g+28272+(L*40|0)+h>>0]|0;r=q<<24>>24;do if(!y){if((a[A>>0]|0)!=q<<24>>24){ba=182;break}j=b[D>>1]|0;i=b[C>>1]|0}else{if((a[B>>0]|0)!=q<<24>>24){ba=182;break}j=b[G>>1]|0;i=b[F>>1]|0}while(0);do if((ba|0)==182){ba=0;i=a[88688+i>>0]|0;o=i&255;s=o+-8|0;t=a[g+28272+(L*40|0)+s>>0]|0;u=o+-1|0;v=a[g+28272+(L*40|0)+u>>0]|0;w=g+27952+(L*160|0)+(u<<2)|0;x=g+27952+(L*160|0)+(s<<2)|0;j=o+-4|0;k=a[g+28272+(L*40|0)+j>>0]|0;l=k<<24>>24;k=k<<24>>24==-2;do if((o&7|0)==4&((i&255)>19&(k&(c[W>>2]|0)!=0))){if((a[E>>0]|0)==-2){ba=191;break}p=c[(c[M>>2]|0)+48>>2]|0;c[I>>2]=0;n=(c[N>>2]&128|0)==0;if(!(c[V>>2]|0)){if(n){ba=191;break}U=c[X>>2]|0;j=U+(c[O>>2]|0)|0;i=(c[da>>2]<<1&2)+(o>>>5)|0;U=p+((H(i>>>2,U)|0)+j<<2)|0;if(!(c[U>>2]&J)){n=I;l=-1;break}l=c[M>>2]|0;U=c[l+36+(L<<2)>>2]|0;n=(c[(c[P>>2]|0)+(j<<2)>>2]|0)+3+(H(c[Q>>2]|0,i)|0)|0;b[I>>1]=b[U+(n<<2)>>1]|0;b[K>>1]=b[U+(n<<2)+2>>1]<<1;n=I;l=a[(c[l+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!n){ba=191;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=o>>>2;if(!(c[p+(j<<2)>>2]&J)){n=I;l=-1;break}l=c[M>>2]|0;U=c[l+36+(L<<2)>>2]|0;n=(c[(c[P>>2]|0)+(j<<2)>>2]|0)+3+(H(c[Q>>2]|0,i&3)|0)|0;b[I>>1]=b[U+(n<<2)>>1]|0;b[K>>1]=(b[U+(n<<2)+2>>1]|0)/2|0;n=I;l=a[(c[l+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else ba=191;while(0);do if((ba|0)==191){ba=0;if(k){l=o+-9|0;n=g+27952+(L*160|0)+(l<<2)|0;l=a[g+28272+(L*40|0)+l>>0]|0;break}else{n=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=t<<24>>24==q<<24>>24;j=v<<24>>24==q<<24>>24;i=(j&1)+(k&1)+((l|0)==(r|0)&1)|0;if(i>>>0>1){i=GM(b[w>>1]|0,b[x>>1]|0,b[n>>1]|0)|0;j=GM(b[g+27952+(L*160|0)+(u<<2)+2>>1]|0,b[g+27952+(L*160|0)+(s<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}if((i|0)!=1){i=b[w>>1]|0;if(v<<24>>24!=-2&(t<<24>>24==-2&(l|0)==-2)){j=b[g+27952+(L*160|0)+(u<<2)+2>>1]|0;break}else{i=GM(i,b[x>>1]|0,b[n>>1]|0)|0;j=GM(b[g+27952+(L*160|0)+(u<<2)+2>>1]|0,b[g+27952+(L*160|0)+(s<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(j){j=b[g+27952+(L*160|0)+(u<<2)+2>>1]|0;i=b[w>>1]|0;break}if(k){j=b[g+27952+(L*160|0)+(s<<2)+2>>1]|0;i=b[x>>1]|0;break}else{j=b[n+2>>1]|0;i=b[n>>1]|0;break}}while(0);i=(Hq(ha)|0)+i|0;i=(Hq(ha)|0)+j<<16|i&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+8>>2]=i;c[g+27952+(L*160|0)+(h<<2)+12>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+40>>2]=i;c[g+27952+(L*160|0)+(h<<2)+44>>2]=i;y=y+1|0}L=L+1|0;h=c[R>>2]|0}}n=0;l:while(1){h=c[R>>2]|0;if(n>>>0>=h>>>0)break;k=n<<1;l=g+23404+(n<<2)|0;j=0;while(1){if(j>>>0>=2)break;m:do if(!(S&4096<<j+k))h=255;else{i=c[l>>2]<<c[o>>2];switch(i|0){case 1:{h=0;break m}case 2:{h=(RN(ha)|0)^1;break m}default:{h=cE(ha)|0;if(h>>>0<i>>>0)break m;else{ba=215;break l}}}}while(0);U=(j<<1)+12+(g+28272+(n*40|0))|0;T=h*257&65535;b[U>>1]=T;b[U+8>>1]=T;b[U+16>>1]=T;b[U+24>>1]=T;j=j+1|0}n=n+1|0}if((ba|0)==215){g=c[f+4>>2]|0;c[s>>2]=h;mx(g,16,196652,s);h=-1;break b}M=f+24312|0;N=g+21740|0;O=g+21720|0;P=f+26344|0;Q=f+26352|0;L=0;while(1){if(L>>>0>=h>>>0){h=-1094995529;break d}z=L<<1;A=g+28272+(L*40|0)+11|0;B=g+28272+(L*40|0)+8|0;C=g+27952+(L*160|0)+44|0;D=g+27952+(L*160|0)+46|0;E=g+27952+(L*160|0)+20|0;F=g+28272+(L*40|0)+5|0;G=g+27952+(L*160|0)+32|0;I=g+27952+(L*160|0)+40|0;J=12288<<z;K=g+27952+(L*160|0)+42|0;y=0;while(1){if((y|0)==2)break;if(!(S&4096<<y+z)){i=0;h=(y<<1)+12|0}else{j=y<<2;h=(y<<1)+12|0;v=a[g+28272+(L*40|0)+h>>0]|0;x=v<<24>>24;do if(!y)if((a[A>>0]|0)==v<<24>>24){j=b[D>>1]|0;i=b[C>>1]|0}else ba=231;else{i=a[B>>0]|0;if(i<<24>>24==-2){k=E;i=a[F>>0]|0}else k=G;if(i<<24>>24!=v<<24>>24){ba=231;break}j=b[k+2>>1]|0;i=b[k>>1]|0}while(0);do if((ba|0)==231){ba=0;i=a[88688+j>>0]|0;o=i&255;q=o+-8|0;r=a[g+28272+(L*40|0)+q>>0]|0;s=o+-1|0;t=a[g+28272+(L*40|0)+s>>0]|0;u=g+27952+(L*160|0)+(s<<2)|0;w=g+27952+(L*160|0)+(q<<2)|0;j=o+-6|0;k=a[g+28272+(L*40|0)+j>>0]|0;l=k<<24>>24;k=k<<24>>24==-2;do if((o&7|0)==4&((i&255)>19&(k&(c[W>>2]|0)!=0))){if((a[A>>0]|0)==-2){ba=240;break}p=c[(c[M>>2]|0)+48>>2]|0;c[I>>2]=0;n=(c[N>>2]&128|0)==0;if(!(c[V>>2]|0)){if(n){ba=240;break}U=c[X>>2]|0;j=U+(c[O>>2]|0)|0;i=(c[da>>2]<<1&2)+(o>>>5)|0;U=p+((H(i>>>2,U)|0)+j<<2)|0;if(!(c[U>>2]&J)){n=I;l=-1;break}l=c[M>>2]|0;U=c[l+36+(L<<2)>>2]|0;n=(c[(c[P>>2]|0)+(j<<2)>>2]|0)+3+(H(c[Q>>2]|0,i)|0)|0;b[I>>1]=b[U+(n<<2)>>1]|0;b[K>>1]=b[U+(n<<2)+2>>1]<<1;n=I;l=a[(c[l+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!n){ba=240;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=o>>>2;if(!(c[p+(j<<2)>>2]&J)){n=I;l=-1;break}l=c[M>>2]|0;U=c[l+36+(L<<2)>>2]|0;n=(c[(c[P>>2]|0)+(j<<2)>>2]|0)+3+(H(c[Q>>2]|0,i&3)|0)|0;b[I>>1]=b[U+(n<<2)>>1]|0;b[K>>1]=(b[U+(n<<2)+2>>1]|0)/2|0;n=I;l=a[(c[l+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else ba=240;while(0);do if((ba|0)==240){ba=0;if(k){l=o+-9|0;n=g+27952+(L*160|0)+(l<<2)|0;l=a[g+28272+(L*40|0)+l>>0]|0;break}else{n=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=r<<24>>24==v<<24>>24;j=t<<24>>24==v<<24>>24;i=(j&1)+(k&1)+((l|0)==(x|0)&1)|0;if(i>>>0>1){i=GM(b[u>>1]|0,b[w>>1]|0,b[n>>1]|0)|0;j=GM(b[g+27952+(L*160|0)+(s<<2)+2>>1]|0,b[g+27952+(L*160|0)+(q<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}if((i|0)!=1){i=b[u>>1]|0;if(t<<24>>24!=-2&(r<<24>>24==-2&(l|0)==-2)){j=b[g+27952+(L*160|0)+(s<<2)+2>>1]|0;break}else{i=GM(i,b[w>>1]|0,b[n>>1]|0)|0;j=GM(b[g+27952+(L*160|0)+(s<<2)+2>>1]|0,b[g+27952+(L*160|0)+(q<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(j){j=b[g+27952+(L*160|0)+(s<<2)+2>>1]|0;i=b[u>>1]|0;break}if(k){j=b[g+27952+(L*160|0)+(q<<2)+2>>1]|0;i=b[w>>1]|0;break}else{j=b[n+2>>1]|0;i=b[n>>1]|0;break}}while(0);i=(Hq(ha)|0)+i|0;i=(Hq(ha)|0)+j<<16|i&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+64>>2]=i;c[g+27952+(L*160|0)+(h<<2)+68>>2]=i;c[g+27952+(L*160|0)+(h<<2)+96>>2]=i;c[g+27952+(L*160|0)+(h<<2)+100>>2]=i;y=y+1|0}L=L+1|0;h=c[R>>2]|0}}else{if(!(h&1)){W=g+21660|0;X=or(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[W>>2]|0,0)|0;c[W>>2]=X;if((X|0)<0){h=-1;break b}else h=-1094995529}else{if((m|0)!=0?(RN(ha)|0)!=0:0){c[ga>>2]=h|16777216;j=4}else j=1;k=(j|0)==4;i=0;while(1){if(i>>>0>=16)break;l=d[88688+i>>0]|0;h=a[l+-1+(g+21664)>>0]|0;X=a[l+-8+(g+21664)>>0]|0;h=(h|0)>(X|0)?X:h;h=(h|0)<0?2:h;if(!(RN(ha)|0)){X=SG(ha,3)|0;h=X+((X|0)>=(h|0)&1)|0}if(k){X=g+21664+l|0;W=h*257&65535;b[X>>1]=W;b[X+8>>1]=W}else a[g+21664+l>>0]=h;i=i+j|0}X=(c[g+21704>>2]|0)+(c[(c[f+26348>>2]|0)+(c[ka>>2]<<2)>>2]|0)|0;c[X>>2]=c[g+21700>>2];a[X+4>>0]=a[g+21695>>0]|0;a[X+5>>0]=a[g+21687>>0]|0;a[X+6>>0]=a[g+21679>>0]|0;X=wn(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0;h=X>>31|-1094995529;if((X|0)<=-1)break b}if(!_){c[g+21656>>2]=6;break}W=c[f+4>>2]|0;X=c[g+21760>>2]|0;i=c[g+21768>>2]|0;i=or(W,X,i,cE(ha)|0,1)|0;if((i|0)<0){h=-1;break b}c[g+21656>>2]=i}while(0);i=c[ga>>2]|0;if(i&120|0){j=c[f+26352>>2]|0;k=(H(j<<2,c[da>>2]|0)|0)+(c[ca>>2]<<2)|0;l=c[ka>>2]<<2;if(!(i&12288)){X=(c[f+24384>>2]|0)+l|0;b[X>>1]=-1;b[X+2>>1]=-1}else{X=(c[f+24352>>2]|0)+(k<<2)|0;V=g+28e3|0;W=c[V+4>>2]|0;T=X;c[T>>2]=c[V>>2];c[T+4>>2]=W;T=g+28008|0;W=c[T+4>>2]|0;V=X+8|0;c[V>>2]=c[T>>2];c[V+4>>2]=W;V=g+28032|0;W=c[V+4>>2]|0;T=X+(j<<2)|0;U=T;c[U>>2]=c[V>>2];c[U+4>>2]=W;U=g+28040|0;W=c[U+4>>2]|0;T=T+8|0;c[T>>2]=c[U>>2];c[T+4>>2]=W;T=g+28064|0;W=c[T+4>>2]|0;U=X+(j<<1<<2)|0;V=U;c[V>>2]=c[T>>2];c[V+4>>2]=W;V=g+28072|0;W=c[V+4>>2]|0;U=U+8|0;c[U>>2]=c[V>>2];c[U+4>>2]=W;U=g+28096|0;W=c[U+4>>2]|0;X=X+(j*3<<2)|0;V=X;c[V>>2]=c[U>>2];c[V+4>>2]=W;V=g+28104|0;W=c[V+4>>2]|0;X=X+8|0;c[X>>2]=c[V>>2];c[X+4>>2]=W;X=(c[f+24384>>2]|0)+l|0;a[X>>0]=a[g+28284>>0]|0;a[X+1>>0]=a[g+28286>>0]|0;a[X+2>>0]=a[g+28300>>0]|0;a[X+3>>0]=a[g+28302>>0]|0}if(i&49152|0){X=(c[f+24356>>2]|0)+(k<<2)|0;V=g+28160|0;W=c[V+4>>2]|0;T=X;c[T>>2]=c[V>>2];c[T+4>>2]=W;T=g+28168|0;W=c[T+4>>2]|0;V=X+8|0;c[V>>2]=c[T>>2];c[V+4>>2]=W;V=g+28192|0;W=c[V+4>>2]|0;T=X+(j<<2)|0;U=T;c[U>>2]=c[V>>2];c[U+4>>2]=W;U=g+28200|0;W=c[U+4>>2]|0;T=T+8|0;c[T>>2]=c[U>>2];c[T+4>>2]=W;T=g+28224|0;W=c[T+4>>2]|0;U=X+(j<<1<<2)|0;V=U;c[V>>2]=c[T>>2];c[V+4>>2]=W;V=g+28232|0;W=c[V+4>>2]|0;U=U+8|0;c[U>>2]=c[V>>2];c[U+4>>2]=W;U=g+28256|0;W=c[U+4>>2]|0;X=X+(j*3<<2)|0;V=X;c[V>>2]=c[U>>2];c[V+4>>2]=W;V=g+28264|0;W=c[V+4>>2]|0;X=X+8|0;c[X>>2]=c[V>>2];c[X+4>>2]=W;X=(c[f+24388>>2]|0)+l|0;a[X>>0]=a[g+28324>>0]|0;a[X+1>>0]=a[g+28326>>0]|0;a[X+2>>0]=a[g+28340>>0]|0;a[X+3>>0]=a[g+28342>>0]|0}}i=c[ga>>2]|0;if(i&2)if(Y>>>0>15&(_^1)){mx(c[f+4>>2]|0,16,201439,Z);h=-1094995529;break}else w=Y;else{k=sq(ha)|0;do if(_){if(k>>>0>47){h=c[f+4>>2]|0;f=c[ca>>2]|0;g=c[da>>2]|0;c[$>>2]=k;c[$+4>>2]=f;c[$+8>>2]=g;mx(h,16,196669,$);h=-1;break b}i=c[ga>>2]|0;if(!(i&1)){j=i;i=18832+k|0;break}else{j=i;i=18784+k|0;break}}else{if(k>>>0>15){h=c[f+4>>2]|0;f=c[ca>>2]|0;g=c[da>>2]|0;c[aa>>2]=k;c[aa+4>>2]=f;c[aa+8>>2]=g;mx(h,16,196669,aa);h=-1;break b}i=c[ga>>2]|0;if(!(i&1)){j=i;i=75840+k|0;break}else{j=i;i=75824+k|0;break}}while(0);w=d[i>>0]|0;i=j}u=(w&15|0)==0;if((i&7|0)==0&(((m|0)==0|u)^1)){i=(RN(ha)|0)<<24;i=c[ga>>2]|i;c[ga>>2]=i}r=f+26376|0;b[(c[r>>2]|0)+(la<<1)>>1]=w;c[g+21856>>2]=w&65535;c[(c[f+24364>>2]|0)+(la<<2)>>2]=i;if((w|0)==0?(c[ga>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=g+848|0}else ba=282;n:do if((ba|0)==282){i=(c[(c[fa>>2]|0)+1184>>2]|0)*6|0;k=i+3|0;l=Hq(ha)|0;x=g+848|0;j=(c[x>>2]|0)+l|0;c[x>>2]=j;if(j>>>0>k>>>0){i=((j|0)<0?i+4|0:-4-i|0)+j|0;c[x>>2]=i;if(i>>>0>k>>>0){h=c[f+4>>2]|0;f=c[ca>>2]|0;g=c[da>>2]|0;c[ea>>2]=l;c[ea+4>>2]=f;c[ea+8>>2]=g;mx(h,16,196698,ea);c[x>>2]=k;h=-1;break b}else j=i}i=c[ja>>2]|0;q=g+852|0;c[q>>2]=d[i+548+j>>0];s=g+856|0;c[s>>2]=d[i+636+j>>0];i=c[ga>>2]|0;ea=(i&128|0)==0;t=(j|0)!=0;v=ea?(t?f+26412|0:f+26700|0):t?f+26556|0:f+26844|0;t=ea?(t?f+26492|0:f+26780|0):t?f+26636|0:f+26924|0;o:do if(!(i&2)){p=(i&7|0)==0?3:0;o=(i&16777216|0)==0;i=0;n=0;while(1){if(n>>>0>=4)break;p:do if(1<<n&w)if(o){m=n<<2;l=0;while(1){if(l>>>0>=4)break p;k=l+m|0;if((Ic(f,g,ha,g+28560+(k<<4<<ia<<1)|0,k,v,(c[(c[ja>>2]|0)+173788+(p<<2)>>2]|0)+(j<<6)|0,16)|0)<0){h=-1;break b}l=l+1|0;i=d[(d[88688+k>>0]|0)+(g+27824)>>0]<<n|i}}else{l=g+28560+(n<<6<<ia<<1)|0;m=n<<2;k=0;while(1){if(k>>>0>=4)break;if((Ic(f,g,ha,l,k+m|0,t+(k<<4)|0,(c[(c[ja>>2]|0)+173812+(p<<2)>>2]|0)+(j<<8)|0,16)|0)>-1)k=k+1|0;else{h=-1;break b}}da=(d[88688+m>>0]|0)+(g+27824)|0;ea=(d[da+8>>0]|0)+(d[da+1>>0]|0)+(d[da+9>>0]|0)+(d[da>>0]|0)&255;a[da>>0]=ea;i=(ea<<24>>24!=0&1)<<n|i;break}else{ea=(d[88688+(n<<2)>>0]|0)+(g+27824)|0;a[ea+9>>0]=0;a[ea+8>>0]=0;a[ea+1>>0]=0;a[ea>>0]=0}while(0);n=n+1|0}if((i|0)<0){h=-1;break b}}else{i=g+31632|0;k=i;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if((Ic(f,g,ha,i,48,v,0,16)|0)<0){h=-1;break b}if(u){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;i=0;break}l=v+1|0;k=0;while(1){if(k>>>0>=4){i=15;break o}m=k<<2;i=0;while(1){if(i>>>0>=4)break;ea=i+m|0;if((Ic(f,g,ha,g+28560+(ea<<4<<ia<<1)|0,ea,l,(c[(c[ja>>2]|0)+173788>>2]|0)+(j<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break b}}k=k+1|0}}while(0);r=(c[r>>2]|0)+(la<<1)|0;b[r>>1]=i<<12|e[r>>1];r=c[(c[fa>>2]|0)+12>>2]|0;if((r|0)!=3){q:do if(w&48|0){j=r<<2;i=0;while(1){if(i>>>0>=2)break q;if((Ic(f,g,ha,g+28560+((i<<8)+256<<ia<<1)|0,i+49|0,(c[(c[fa>>2]|0)+12>>2]|0)==2?171064:171060,0,j)|0)<0){h=-1;break b}else i=i+1|0}}while(0);if(!(w&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=x;break}p=v+1|0;q=16<<ia;i=0;while(1){if(i>>>0>=2){h=x;break n}n=i+1|0;o=(c[(c[ja>>2]|0)+173788+(((c[ga>>2]&7|0)==0?3:0)+n<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;m=(i<<4)+16|0;i=g+28560+(m<<4<<ia<<1)|0;l=0;while(1){if((l|0)>=(r|0))break;k=(l<<3)+m|0;j=0;while(1){if(j>>>0>=4)break;fa=Ic(f,g,ha,i,k+j|0,p,o,15)|0;h=(fa|0)<0?-1:h;if((fa|0)<=-1)break b;j=j+1|0;i=i+(q<<1)|0}l=l+1|0}i=n}}h=c[ga>>2]|0;o=c[q>>2]|0;r:do if(!(h&2)){n=(h&7|0)==0?4:1;m=(h&16777216|0)==0;h=0;l=0;while(1){if(l>>>0>=4)break;s:do if(1<<l&w)if(m){k=(l<<2)+16|0;j=0;while(1){if(j>>>0>=4)break s;i=k+j|0;if((Ic(f,g,ha,g+28560+(i<<4<<ia<<1)|0,i,v,(c[(c[ja>>2]|0)+173788+(n<<2)>>2]|0)+(o<<6)|0,16)|0)<0){h=-1;break b}j=j+1|0;h=d[(d[88688+i>>0]|0)+(g+27824)>>0]<<l|h}}else{j=g+28560+((l<<6)+256<<ia<<1)|0;k=(l<<2)+16|0;i=0;while(1){if(i>>>0>=4)break;if((Ic(f,g,ha,j,i+k|0,t+(i<<4)|0,(c[(c[ja>>2]|0)+173812+(n<<2)>>2]|0)+(o<<8)|0,16)|0)>-1)i=i+1|0;else{h=-1;break b}}ea=(d[88688+k>>0]|0)+(g+27824)|0;fa=(d[ea+8>>0]|0)+(d[ea+1>>0]|0)+(d[ea+9>>0]|0)+(d[ea>>0]|0)&255;a[ea>>0]=fa;h=(fa<<24>>24!=0&1)<<l|h;break}else{fa=(d[88688+((l<<2)+16)>>0]|0)+(g+27824)|0;a[fa+9>>0]=0;a[fa+8>>0]=0;a[fa+1>>0]=0;a[fa>>0]=0}while(0);l=l+1|0}if((h|0)<0){h=-1;break b}}else{h=g+31696|0;k=h;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if((Ic(f,g,ha,h,49,v,0,16)|0)<0){h=-1;break b}if(u){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}j=v+1|0;i=0;while(1){if(i>>>0>=4)break r;k=(i<<2)+16|0;h=0;while(1){if(h>>>0>=4)break;fa=k+h|0;if((Ic(f,g,ha,g+28560+(fa<<4<<ia<<1)|0,fa,j,(c[(c[ja>>2]|0)+173792>>2]|0)+(o<<6)|0,15)|0)>-1)h=h+1|0;else{h=-1;break b}}i=i+1|0}}while(0);h=c[ga>>2]|0;o=c[s>>2]|0;if(h&2|0){h=g+31760|0;k=h;l=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));if((Ic(f,g,ha,h,50,v,0,16)|0)<0){h=-1;break b}if(u){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=x;break}j=v+1|0;i=0;while(1){if(i>>>0>=4){h=x;break n}k=(i<<2)+32|0;h=0;while(1){if(h>>>0>=4)break;ga=k+h|0;if((Ic(f,g,ha,g+28560+(ga<<4<<ia<<1)|0,ga,j,(c[(c[ja>>2]|0)+173796>>2]|0)+(o<<6)|0,15)|0)>-1)h=h+1|0;else{h=-1;break b}}i=i+1|0}}n=(h&7|0)==0?5:2;m=(h&16777216|0)==0;h=0;l=0;while(1){if(l>>>0>=4)break;t:do if(1<<l&w)if(m){k=(l<<2)+32|0;j=0;while(1){if(j>>>0>=4)break t;i=k+j|0;if((Ic(f,g,ha,g+28560+(i<<4<<ia<<1)|0,i,v,(c[(c[ja>>2]|0)+173788+(n<<2)>>2]|0)+(o<<6)|0,16)|0)<0){h=-1;break b}j=j+1|0;h=d[(d[88688+i>>0]|0)+(g+27824)>>0]<<l|h}}else{j=g+28560+((l<<6)+512<<ia<<1)|0;k=(l<<2)+32|0;i=0;while(1){if(i>>>0>=4)break;if((Ic(f,g,ha,j,i+k|0,t+(i<<4)|0,(c[(c[ja>>2]|0)+173812+(n<<2)>>2]|0)+(o<<8)|0,16)|0)>-1)i=i+1|0;else{h=-1;break b}}fa=(d[88688+k>>0]|0)+(g+27824)|0;ga=(d[fa+8>>0]|0)+(d[fa+1>>0]|0)+(d[fa+9>>0]|0)+(d[fa>>0]|0)&255;a[fa>>0]=ga;h=(ga<<24>>24!=0&1)<<l|h;break}else{ga=(d[88688+((l<<2)+32)>>0]|0)+(g+27824)|0;a[ga+9>>0]=0;a[ga+8>>0]=0;a[ga+1>>0]=0;a[ga>>0]=0}while(0);l=l+1|0}if((h|0)<0){h=-1;break b}else h=x}while(0);a[(c[f+24340>>2]|0)+la>>0]=c[h>>2];h=c[ka>>2]|0;i=c[f+25956>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25668>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);Nb=ma;return h|0}function tc(e,f,g,h,i,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;va=Nb;Nb=Nb+80|0;ta=va+72|0;o=va;r=c[e+96>>2]|0;do if((r|0)!=0?(n=c[e+28196>>2]|0,(c[n+724>>2]|0)==0):0){ga=c[e+25652>>2]|0;sa=c[e+28200>>2]|0;u=c[sa+12>>2]|0;na=(u|0)!=0;pa=(u|0)==3;u=(u|0)==2;V=c[f+21796>>2]|0;s=c[f+21740>>2]|0;la=c[f+21732>>2]|0;sa=H(c[sa+1184>>2]|0,-6)|0;sa=sa+100|0;ra=sa+(c[f+872>>2]|0)|0;sa=sa+(c[f+876>>2]|0)|0;t=c[(c[e+24364>>2]|0)+(V<<2)>>2]|0;ma=c[e+24340>>2]|0;oa=a[ma+V>>0]|0;V=a[ma+(V+-1)>>0]|0;ma=a[ma+(c[f+21712>>2]|0)>>0]|0;qa=d[n+548+oa>>0]|0;ka=oa+1|0;v=ka+V>>1;ka=ka+ma>>1;h=qa+1|0;V=(h+(d[n+548+V>>0]|0)|0)>>>1;ma=(h+(d[n+548+ma>>0]|0)|0)>>>1;if(t&7|0){r=(c[e+26364>>2]|0)==3?162480:162488;f=(s|0)!=0;if(f?(p=v+ra|0,q=v+sa|0,!(p>>>0<68|q>>>0<68)):0)ic[c[e+64>>2]&255](i,l,d[89488+p>>0]|0,d[89328+q>>0]|0);o=(t&16777216|0)!=0;p=ra+oa|0;q=d[89488+p>>0]|0;n=sa+oa|0;h=d[89328+n>>0]|0;n=p>>>0<68|n>>>0<68;if(o){if(!n){jq(ta|0,a[89648+(p<<2)+3>>0]|0,4)|0;kc[c[e+52>>2]&127](i+(8<<ga)|0,l,q,h,ta)}do if(la|0?(w=ka+ra|0,x=d[89488+w>>0]|0,oa=ka+sa|0,y=d[89328+oa>>0]|0,!(w>>>0<68|oa>>>0<68)):0){g=b[r>>1]|0;if(g<<16>>16>3){ic[c[e+60>>2]&255](i,l,x,y);break}else{a[ta>>0]=a[(g<<16>>16)+(89648+(w<<2))>>0]|0;a[ta+1>>0]=a[(b[r+2>>1]|0)+(89648+(w<<2))>>0]|0;a[ta+2>>0]=a[(b[r+4>>1]|0)+(89648+(w<<2))>>0]|0;a[ta+3>>0]=a[(b[r+6>>1]|0)+(89648+(w<<2))>>0]|0;kc[c[e+48>>2]&127](i,l,x,y,ta);break}}while(0);if(!n){jq(ta|0,a[89648+(p<<2)+3>>0]|0,4)|0;kc[c[e+48>>2]&127](i+(l<<3)|0,l,q,h,ta)}}else{if(!n){ja=a[89648+(p<<2)+3>>0]|0;oa=e+52|0;jq(ta|0,ja|0,4)|0;kc[c[oa>>2]&127](i+(4<<ga)|0,l,q,h,ta);jq(ta|0,ja|0,4)|0;kc[c[oa>>2]&127](i+(8<<ga)|0,l,q,h,ta);jq(ta|0,ja|0,4)|0;kc[c[oa>>2]&127](i+(12<<ga)|0,l,q,h,ta)}do if(la|0?(z=ka+ra|0,A=d[89488+z>>0]|0,oa=ka+sa|0,B=d[89328+oa>>0]|0,!(z>>>0<68|oa>>>0<68)):0){g=b[r>>1]|0;if(g<<16>>16>3){ic[c[e+60>>2]&255](i,l,A,B);break}else{a[ta>>0]=a[(g<<16>>16)+(89648+(z<<2))>>0]|0;a[ta+1>>0]=a[(b[r+2>>1]|0)+(89648+(z<<2))>>0]|0;a[ta+2>>0]=a[(b[r+4>>1]|0)+(89648+(z<<2))>>0]|0;a[ta+3>>0]=a[(b[r+6>>1]|0)+(89648+(z<<2))>>0]|0;kc[c[e+48>>2]&127](i,l,A,B,ta);break}}while(0);if(!n){ka=a[89648+(p<<2)+3>>0]|0;oa=e+48|0;jq(ta|0,ka|0,4)|0;kc[c[oa>>2]&127](i+(l<<2)|0,l,q,h,ta);jq(ta|0,ka|0,4)|0;kc[c[oa>>2]&127](i+(l<<3)|0,l,q,h,ta);jq(ta|0,ka|0,4)|0;kc[c[oa>>2]&127](i+(l*12|0)|0,l,q,h,ta)}}if(!na)break;if(pa){if(f?(pa=V+ra|0,C=d[89488+pa>>0]|0,m=V+sa|0,D=d[89328+m>>0]|0,!(pa>>>0<68|m>>>0<68)):0){m=e+64|0;ic[c[m>>2]&255](j,l,C,D);ic[c[m>>2]&255](k,l,C,D)}if(o){g=8<<ga;o=ra+qa|0;p=d[89488+o>>0]|0;n=sa+qa|0;h=d[89328+n>>0]|0;n=o>>>0<68|n>>>0<68;if(!n){qa=a[89648+(o<<2)+3>>0]|0;m=e+52|0;jq(ta|0,qa|0,4)|0;kc[c[m>>2]&127](j+g|0,l,p,h,ta);jq(ta|0,qa|0,4)|0;kc[c[m>>2]&127](k+g|0,l,p,h,ta)}do if(la|0?(J=ma+ra|0,K=d[89488+J>>0]|0,sa=ma+sa|0,L=d[89328+sa>>0]|0,!(J>>>0<68|sa>>>0<68)):0){g=b[r>>1]|0;if(g<<16>>16>3){sa=e+60|0;ic[c[sa>>2]&255](j,l,K,L);ic[c[sa>>2]&255](k,l,K,L);break}else{na=a[(g<<16>>16)+(89648+(J<<2))>>0]|0;a[ta>>0]=na;oa=a[(b[r+2>>1]|0)+(89648+(J<<2))>>0]|0;i=ta+1|0;a[i>>0]=oa;pa=a[(b[r+4>>1]|0)+(89648+(J<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;m=a[(b[r+6>>1]|0)+(89648+(J<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=m;sa=e+48|0;kc[c[sa>>2]&127](j,l,K,L,ta);a[ta>>0]=na;a[i>>0]=oa;a[qa>>0]=pa;a[ra>>0]=m;kc[c[sa>>2]&127](k,l,K,L,ta);break}}while(0);g=l<<3;if(n)break;sa=a[89648+(o<<2)+3>>0]|0;e=e+48|0;jq(ta|0,sa|0,4)|0;kc[c[e>>2]&127](j+g|0,l,p,h,ta);jq(ta|0,sa|0,4)|0;kc[c[e>>2]&127](k+g|0,l,p,h,ta);break}else{g=4<<ga;o=ra+qa|0;p=d[89488+o>>0]|0;n=sa+qa|0;h=d[89328+n>>0]|0;n=o>>>0<68|n>>>0<68;if(!n){pa=a[89648+(o<<2)+3>>0]|0;qa=e+52|0;jq(ta|0,pa|0,4)|0;kc[c[qa>>2]&127](j+g|0,l,p,h,ta);jq(ta|0,pa|0,4)|0;kc[c[qa>>2]&127](k+g|0,l,p,h,ta);m=8<<ga;jq(ta|0,pa|0,4)|0;kc[c[qa>>2]&127](j+m|0,l,p,h,ta);jq(ta|0,pa|0,4)|0;kc[c[qa>>2]&127](k+m|0,l,p,h,ta);m=12<<ga;jq(ta|0,pa|0,4)|0;kc[c[qa>>2]&127](j+m|0,l,p,h,ta);jq(ta|0,pa|0,4)|0;kc[c[qa>>2]&127](k+m|0,l,p,h,ta)}do if(la|0?(M=ma+ra|0,N=d[89488+M>>0]|0,sa=ma+sa|0,O=d[89328+sa>>0]|0,!(M>>>0<68|sa>>>0<68)):0){g=b[r>>1]|0;if(g<<16>>16>3){sa=e+60|0;ic[c[sa>>2]&255](j,l,N,O);ic[c[sa>>2]&255](k,l,N,O);break}else{na=a[(g<<16>>16)+(89648+(M<<2))>>0]|0;a[ta>>0]=na;oa=a[(b[r+2>>1]|0)+(89648+(M<<2))>>0]|0;i=ta+1|0;a[i>>0]=oa;pa=a[(b[r+4>>1]|0)+(89648+(M<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;m=a[(b[r+6>>1]|0)+(89648+(M<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=m;sa=e+48|0;kc[c[sa>>2]&127](j,l,N,O,ta);a[ta>>0]=na;a[i>>0]=oa;a[qa>>0]=pa;a[ra>>0]=m;kc[c[sa>>2]&127](k,l,N,O,ta);break}}while(0);g=l<<2;if(n)break;ra=a[89648+(o<<2)+3>>0]|0;sa=e+48|0;jq(ta|0,ra|0,4)|0;kc[c[sa>>2]&127](j+g|0,l,p,h,ta);jq(ta|0,ra|0,4)|0;kc[c[sa>>2]&127](k+g|0,l,p,h,ta);e=l<<3;jq(ta|0,ra|0,4)|0;kc[c[sa>>2]&127](j+e|0,l,p,h,ta);jq(ta|0,ra|0,4)|0;kc[c[sa>>2]&127](k+e|0,l,p,h,ta);e=l*12|0;jq(ta|0,ra|0,4)|0;kc[c[sa>>2]&127](j+e|0,l,p,h,ta);jq(ta|0,ra|0,4)|0;kc[c[sa>>2]&127](k+e|0,l,p,h,ta);break}}if(u){if(f?(pa=V+ra|0,E=d[89488+pa>>0]|0,l=V+sa|0,F=d[89328+l>>0]|0,!(pa>>>0<68|l>>>0<68)):0){l=e+88|0;ic[c[l>>2]&255](j,m,E,F);ic[c[l>>2]&255](k,m,E,F)}g=4<<ga;o=ra+qa|0;p=d[89488+o>>0]|0;n=sa+qa|0;h=d[89328+n>>0]|0;n=o>>>0<68|n>>>0<68;if(!n){qa=(d[89648+(o<<2)+3>>0]|0)+1&255;l=e+76|0;jq(ta|0,qa|0,4)|0;kc[c[l>>2]&127](j+g|0,m,p,h,ta);jq(ta|0,qa|0,4)|0;kc[c[l>>2]&127](k+g|0,m,p,h,ta)}do if(la|0?(P=ma+ra|0,Q=d[89488+P>>0]|0,sa=ma+sa|0,R=d[89328+sa>>0]|0,!(P>>>0<68|sa>>>0<68)):0){g=b[r>>1]|0;if(g<<16>>16>3){sa=e+84|0;ic[c[sa>>2]&255](j,m,Q,R);ic[c[sa>>2]&255](k,m,Q,R);break}else{na=(d[(g<<16>>16)+(89648+(P<<2))>>0]|0)+1&255;a[ta>>0]=na;oa=(d[(b[r+2>>1]|0)+(89648+(P<<2))>>0]|0)+1&255;i=ta+1|0;a[i>>0]=oa;pa=(d[(b[r+4>>1]|0)+(89648+(P<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[r+6>>1]|0)+(89648+(P<<2))>>0]|0)+1&255;l=ta+3|0;a[l>>0]=ra;sa=e+72|0;kc[c[sa>>2]&127](j,m,Q,R,ta);a[ta>>0]=na;a[i>>0]=oa;a[qa>>0]=pa;a[l>>0]=ra;kc[c[sa>>2]&127](k,m,Q,R,ta);break}}while(0);g=m<<2;if(n)break;l=(d[89648+(o<<2)+3>>0]|0)+1&255;sa=e+72|0;jq(ta|0,l|0,4)|0;kc[c[sa>>2]&127](j+g|0,m,p,h,ta);jq(ta|0,l|0,4)|0;kc[c[sa>>2]&127](k+g|0,m,p,h,ta);e=m<<3;jq(ta|0,l|0,4)|0;kc[c[sa>>2]&127](j+e|0,m,p,h,ta);jq(ta|0,l|0,4)|0;kc[c[sa>>2]&127](k+e|0,m,p,h,ta);e=m*12|0;jq(ta|0,l|0,4)|0;kc[c[sa>>2]&127](j+e|0,m,p,h,ta);jq(ta|0,l|0,4)|0;kc[c[sa>>2]&127](k+e|0,m,p,h,ta);break}else{if(f?(pa=V+ra|0,G=d[89488+pa>>0]|0,l=V+sa|0,I=d[89328+l>>0]|0,!(pa>>>0<68|l>>>0<68)):0){l=e+88|0;ic[c[l>>2]&255](j,m,G,I);ic[c[l>>2]&255](k,m,G,I)}g=4<<ga;o=ra+qa|0;p=d[89488+o>>0]|0;n=sa+qa|0;h=d[89328+n>>0]|0;n=o>>>0<68|n>>>0<68;if(!n){qa=(d[89648+(o<<2)+3>>0]|0)+1&255;l=e+76|0;jq(ta|0,qa|0,4)|0;kc[c[l>>2]&127](j+g|0,m,p,h,ta);jq(ta|0,qa|0,4)|0;kc[c[l>>2]&127](k+g|0,m,p,h,ta)}do if(la|0?(S=ma+ra|0,T=d[89488+S>>0]|0,sa=ma+sa|0,U=d[89328+sa>>0]|0,!(S>>>0<68|sa>>>0<68)):0){g=b[r>>1]|0;if(g<<16>>16>3){sa=e+84|0;ic[c[sa>>2]&255](j,m,T,U);ic[c[sa>>2]&255](k,m,T,U);break}else{na=(d[(g<<16>>16)+(89648+(S<<2))>>0]|0)+1&255;a[ta>>0]=na;oa=(d[(b[r+2>>1]|0)+(89648+(S<<2))>>0]|0)+1&255;i=ta+1|0;a[i>>0]=oa;pa=(d[(b[r+4>>1]|0)+(89648+(S<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[r+6>>1]|0)+(89648+(S<<2))>>0]|0)+1&255;l=ta+3|0;a[l>>0]=ra;sa=e+72|0;kc[c[sa>>2]&127](j,m,T,U,ta);a[ta>>0]=na;a[i>>0]=oa;a[qa>>0]=pa;a[l>>0]=ra;kc[c[sa>>2]&127](k,m,T,U,ta);break}}while(0);g=m<<2;if(n)break;sa=(d[89648+(o<<2)+3>>0]|0)+1&255;e=e+72|0;jq(ta|0,sa|0,4)|0;kc[c[e>>2]&127](j+g|0,m,p,h,ta);jq(ta|0,sa|0,4)|0;kc[c[e>>2]&127](k+g|0,m,p,h,ta);break}}h=(o|8)+-1&-16;u=h;q=(t&16777216|0)!=0;g=c[f+21856>>2]|0;if(q?!(pa|(g&7|0)!=7):0){p=h;c[p>>2]=131074;c[p+4>>2]=131074;p=u+16|0;c[p>>2]=131074;c[p+4>>2]=131074;p=u+32|0;c[p>>2]=131074;c[p+4>>2]=131074;p=u+48|0;c[p>>2]=131074;c[p+4>>2]=131074;p=4}else{U=0-((t*5|0)>>>5&1)&3|t>>4;p=4-(0-(t>>>3&(g&15|0)==0)&3)|0;qc[r&3](u,f+27824|0,f+28272|0,f+27952|0,(c[f+23412>>2]|0)==2&1,p,(t>>24)+1|0,0-((s*5|0)>>>5&1&U>>>1)&3,U,(c[e+26364>>2]|0)!=3&1)}if(s&7|0){U=h;c[U>>2]=262148;c[U+4>>2]=262148}if(la&7|0){T=(c[e+26364>>2]|0)==3;U=u+32|0;c[U>>2]=T?262148:196611;c[U+4>>2]=T?262148:196611}do if(s|0?(U=h,!((c[U>>2]|0)==0&(c[U+4>>2]|0)==0)):0){n=v+ra|0;o=d[89488+n>>0]|0;U=v+sa|0;g=d[89328+U>>0]|0;do if(!(n>>>0<68|U>>>0<68)){h=b[u>>1]|0;if(h<<16>>16>3){ic[c[e+64>>2]&255](i,l,o,g);break}else{a[ta>>0]=a[(h<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+2>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+4>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+6>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+52>>2]&127](i,l,o,g,ta);break}}while(0);if(na){n=V+ra|0;o=d[89488+n>>0]|0;g=V+sa|0;h=d[89328+g>>0]|0;g=n>>>0<68|g>>>0<68;if(pa){if(g)break;g=b[u>>1]|0;if(g<<16>>16>3)ic[c[e+64>>2]&255](j,l,o,h);else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+2>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+4>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+6>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+52>>2]&127](j,l,o,h,ta)}g=b[u>>1]|0;if(g<<16>>16>3){ic[c[e+64>>2]&255](k,l,o,h);break}else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+2>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+4>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+6>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+52>>2]&127](k,l,o,h,ta);break}}else{if(g)break;g=b[u>>1]|0;if(g<<16>>16>3)ic[c[e+88>>2]&255](j,m,o,h);else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+2>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+4>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+6>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+76>>2]&127](j,m,o,h,ta)}g=b[u>>1]|0;if(g<<16>>16>3){ic[c[e+88>>2]&255](k,m,o,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+2>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+4>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+6>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+76>>2]&127](k,m,o,h,ta);break}}}}while(0);do if((p|0)==1){if(la|0?(_=u+32|0,qa=_,oa=c[qa>>2]|0,W=oa&65535,!((oa|0)==0&(c[qa+4>>2]|0)==0)):0){h=ka+ra|0;n=d[89488+h>>0]|0;qa=ka+sa|0;g=d[89328+qa>>0]|0;do if(!(h>>>0<68|qa>>>0<68))if(W<<16>>16>3){ic[c[e+60>>2]&255](i,l,n,g);break}else{a[ta>>0]=a[(W<<16>>16)+(89648+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e+48>>2]&127](i,l,n,g,ta);break}while(0);if(na){n=ma+ra|0;o=d[89488+n>>0]|0;g=ma+sa|0;h=d[89328+g>>0]|0;g=n>>>0<68|g>>>0<68;if(pa){if(g)break;g=b[_>>1]|0;if(g<<16>>16>3)ic[c[e+60>>2]&255](j,l,o,h);else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](j,l,o,h,ta)}g=b[_>>1]|0;if(g<<16>>16>3){ic[c[e+60>>2]&255](k,l,o,h);break}else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](k,l,o,h,ta);break}}else{if(g)break;g=b[_>>1]|0;if(g<<16>>16>3)ic[c[e+84>>2]&255](j,m,o,h);else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+72>>2]&127](j,m,o,h,ta)}g=b[_>>1]|0;if(g<<16>>16>3){ic[c[e+84>>2]&255](k,m,o,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+72>>2]&127](k,m,o,h,ta);break}}}}}else{if(q){q=u+16|0;ja=q;o=c[ja>>2]|0;do if(!((o|0)==0&(c[ja+4>>2]|0)==0)){g=1<<ga;p=g<<3;h=ra+oa|0;n=sa+oa|0;if(!(h>>>0<68|n>>>0<68)){ja=d[89328+n>>0]|0;ia=d[89488+h>>0]|0;a[ta>>0]=a[(o<<16>>16)+(89648+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[u+18>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[u+20>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[u+22>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e+52>>2]&127](i+p|0,l,ia,ja,ta)}if(na)if(pa){g=ra+qa|0;h=d[89488+g>>0]|0;ja=sa+qa|0;n=d[89328+ja>>0]|0;if(g>>>0<68|ja>>>0<68)break;a[ta>>0]=a[(b[q>>1]|0)+(89648+(g<<2))>>0]|0;da=u+18|0;ea=ta+1|0;a[ea>>0]=a[(b[da>>1]|0)+(89648+(g<<2))>>0]|0;fa=u+20|0;ga=ta+2|0;a[ga>>0]=a[(b[fa>>1]|0)+(89648+(g<<2))>>0]|0;ha=u+22|0;ia=ta+3|0;a[ia>>0]=a[(b[ha>>1]|0)+(89648+(g<<2))>>0]|0;ja=e+52|0;kc[c[ja>>2]&127](j+p|0,l,h,n,ta);a[ta>>0]=a[(b[q>>1]|0)+(89648+(g<<2))>>0]|0;a[ea>>0]=a[(b[da>>1]|0)+(89648+(g<<2))>>0]|0;a[ga>>0]=a[(b[fa>>1]|0)+(89648+(g<<2))>>0]|0;a[ia>>0]=a[(b[ha>>1]|0)+(89648+(g<<2))>>0]|0;kc[c[ja>>2]&127](k+p|0,l,h,n,ta);break}else{g=g<<2;h=ra+qa|0;n=d[89488+h>>0]|0;ja=sa+qa|0;o=d[89328+ja>>0]|0;if(h>>>0<68|ja>>>0<68)break;a[ta>>0]=(d[(b[q>>1]|0)+(89648+(h<<2))>>0]|0)+1;da=u+18|0;ea=ta+1|0;a[ea>>0]=(d[(b[da>>1]|0)+(89648+(h<<2))>>0]|0)+1;fa=u+20|0;ga=ta+2|0;a[ga>>0]=(d[(b[fa>>1]|0)+(89648+(h<<2))>>0]|0)+1;ha=u+22|0;ia=ta+3|0;a[ia>>0]=(d[(b[ha>>1]|0)+(89648+(h<<2))>>0]|0)+1;ja=e+76|0;kc[c[ja>>2]&127](j+g|0,m,n,o,ta);a[ta>>0]=(d[(b[q>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ea>>0]=(d[(b[da>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ga>>0]=(d[(b[fa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ia>>0]=(d[(b[ha>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[ja>>2]&127](k+g|0,m,n,o,ta);break}}while(0);do if(la|0?(aa=u+32|0,la=aa,ja=c[la>>2]|0,$=ja&65535,!((ja|0)==0&(c[la+4>>2]|0)==0)):0){h=ka+ra|0;n=d[89488+h>>0]|0;la=ka+sa|0;g=d[89328+la>>0]|0;do if(!(h>>>0<68|la>>>0<68))if($<<16>>16>3){ic[c[e+60>>2]&255](i,l,n,g);break}else{a[ta>>0]=a[($<<16>>16)+(89648+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e+48>>2]&127](i,l,n,g,ta);break}while(0);if(na){n=ma+ra|0;o=d[89488+n>>0]|0;g=ma+sa|0;h=d[89328+g>>0]|0;g=n>>>0<68|g>>>0<68;if(pa){if(g)break;g=b[aa>>1]|0;if(g<<16>>16>3)ic[c[e+60>>2]&255](j,l,o,h);else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](j,l,o,h,ta)}g=b[aa>>1]|0;if(g<<16>>16>3){ic[c[e+60>>2]&255](k,l,o,h);break}else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](k,l,o,h,ta);break}}else{if(g)break;g=b[aa>>1]|0;if(g<<16>>16>3)ic[c[e+84>>2]&255](j,m,o,h);else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+72>>2]&127](j,m,o,h,ta)}g=b[aa>>1]|0;if(g<<16>>16>3){ic[c[e+84>>2]&255](k,m,o,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+72>>2]&127](k,m,o,h,ta);break}}}}while(0);p=u+48|0;ma=p;h=c[ma>>2]|0;if((h|0)==0&(c[ma+4>>2]|0)==0)break;o=l<<3;n=ra+oa|0;g=sa+oa|0;if(!(n>>>0<68|g>>>0<68)){oa=d[89328+g>>0]|0;ma=d[89488+n>>0]|0;a[ta>>0]=a[(h<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+50>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+52>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+54>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](i+o|0,l,ma,oa,ta)}if(!na)break;if(pa){h=ra+qa|0;n=d[89488+h>>0]|0;sa=sa+qa|0;g=d[89328+sa>>0]|0;if(h>>>0<68|sa>>>0<68)break;a[ta>>0]=a[(b[p>>1]|0)+(89648+(h<<2))>>0]|0;i=u+50|0;pa=ta+1|0;a[pa>>0]=a[(b[i>>1]|0)+(89648+(h<<2))>>0]|0;qa=u+52|0;m=ta+2|0;a[m>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;ra=u+54|0;sa=ta+3|0;a[sa>>0]=a[(b[ra>>1]|0)+(89648+(h<<2))>>0]|0;e=e+48|0;kc[c[e>>2]&127](j+o|0,l,n,g,ta);a[ta>>0]=a[(b[p>>1]|0)+(89648+(h<<2))>>0]|0;a[pa>>0]=a[(b[i>>1]|0)+(89648+(h<<2))>>0]|0;a[m>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;a[sa>>0]=a[(b[ra>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e>>2]&127](k+o|0,l,n,g,ta);break}else{o=m<<2;h=ra+qa|0;n=d[89488+h>>0]|0;sa=sa+qa|0;g=d[89328+sa>>0]|0;if(h>>>0<68|sa>>>0<68)break;a[ta>>0]=(d[(b[p>>1]|0)+(89648+(h<<2))>>0]|0)+1;i=u+50|0;pa=ta+1|0;a[pa>>0]=(d[(b[i>>1]|0)+(89648+(h<<2))>>0]|0)+1;qa=u+52|0;ra=ta+2|0;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;l=u+54|0;sa=ta+3|0;a[sa>>0]=(d[(b[l>>1]|0)+(89648+(h<<2))>>0]|0)+1;e=e+72|0;kc[c[e>>2]&127](j+o|0,m,n,g,ta);a[ta>>0]=(d[(b[p>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[pa>>0]=(d[(b[i>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[sa>>0]=(d[(b[l>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[e>>2]&127](k+o|0,m,n,g,ta);break}}g=u+8|0;aa=g;h=c[aa>>2]|0;if(!((h|0)==0&(c[aa+4>>2]|0)==0)){n=4<<ga;o=ra+oa|0;p=sa+oa|0;if(!(o>>>0<68|p>>>0<68)){aa=d[89328+p>>0]|0;$=d[89488+o>>0]|0;a[ta>>0]=a[(h<<16>>16)+(89648+(o<<2))>>0]|0;a[ta+1>>0]=a[(b[u+10>>1]|0)+(89648+(o<<2))>>0]|0;a[ta+2>>0]=a[(b[u+12>>1]|0)+(89648+(o<<2))>>0]|0;a[ta+3>>0]=a[(b[u+14>>1]|0)+(89648+(o<<2))>>0]|0;kc[c[e+52>>2]&127](i+n|0,l,$,aa,ta)}if(pa?(X=ra+qa|0,Y=d[89488+X>>0]|0,aa=sa+qa|0,Z=d[89328+aa>>0]|0,!(X>>>0<68|aa>>>0<68)):0){a[ta>>0]=a[(b[g>>1]|0)+(89648+(X<<2))>>0]|0;T=u+10|0;U=ta+1|0;a[U>>0]=a[(b[T>>1]|0)+(89648+(X<<2))>>0]|0;V=u+12|0;W=ta+2|0;a[W>>0]=a[(b[V>>1]|0)+(89648+(X<<2))>>0]|0;_=u+14|0;$=ta+3|0;a[$>>0]=a[(b[_>>1]|0)+(89648+(X<<2))>>0]|0;aa=e+52|0;kc[c[aa>>2]&127](j+n|0,l,Y,Z,ta);a[ta>>0]=a[(b[g>>1]|0)+(89648+(X<<2))>>0]|0;a[U>>0]=a[(b[T>>1]|0)+(89648+(X<<2))>>0]|0;a[W>>0]=a[(b[V>>1]|0)+(89648+(X<<2))>>0]|0;a[$>>0]=a[(b[_>>1]|0)+(89648+(X<<2))>>0]|0;kc[c[aa>>2]&127](k+n|0,l,Y,Z,ta)}}q=u+16|0;aa=q;g=c[aa>>2]|0;do if(!((g|0)==0&(c[aa+4>>2]|0)==0)){h=1<<ga;p=h<<3;n=ra+oa|0;o=sa+oa|0;if(!(n>>>0<68|o>>>0<68)){aa=d[89328+o>>0]|0;$=d[89488+n>>0]|0;a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+18>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+20>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+22>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+52>>2]&127](i+p|0,l,$,aa,ta)}if(na)if(pa){g=ra+qa|0;h=d[89488+g>>0]|0;aa=sa+qa|0;n=d[89328+aa>>0]|0;if(g>>>0<68|aa>>>0<68)break;a[ta>>0]=a[(b[q>>1]|0)+(89648+(g<<2))>>0]|0;W=u+18|0;X=ta+1|0;a[X>>0]=a[(b[W>>1]|0)+(89648+(g<<2))>>0]|0;Y=u+20|0;Z=ta+2|0;a[Z>>0]=a[(b[Y>>1]|0)+(89648+(g<<2))>>0]|0;_=u+22|0;$=ta+3|0;a[$>>0]=a[(b[_>>1]|0)+(89648+(g<<2))>>0]|0;aa=e+52|0;kc[c[aa>>2]&127](j+p|0,l,h,n,ta);a[ta>>0]=a[(b[q>>1]|0)+(89648+(g<<2))>>0]|0;a[X>>0]=a[(b[W>>1]|0)+(89648+(g<<2))>>0]|0;a[Z>>0]=a[(b[Y>>1]|0)+(89648+(g<<2))>>0]|0;a[$>>0]=a[(b[_>>1]|0)+(89648+(g<<2))>>0]|0;kc[c[aa>>2]&127](k+p|0,l,h,n,ta);break}else{g=h<<2;h=ra+qa|0;n=d[89488+h>>0]|0;aa=sa+qa|0;o=d[89328+aa>>0]|0;if(h>>>0<68|aa>>>0<68)break;a[ta>>0]=(d[(b[q>>1]|0)+(89648+(h<<2))>>0]|0)+1;W=u+18|0;X=ta+1|0;a[X>>0]=(d[(b[W>>1]|0)+(89648+(h<<2))>>0]|0)+1;Y=u+20|0;Z=ta+2|0;a[Z>>0]=(d[(b[Y>>1]|0)+(89648+(h<<2))>>0]|0)+1;_=u+22|0;$=ta+3|0;a[$>>0]=(d[(b[_>>1]|0)+(89648+(h<<2))>>0]|0)+1;aa=e+76|0;kc[c[aa>>2]&127](j+g|0,m,n,o,ta);a[ta>>0]=(d[(b[q>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[X>>0]=(d[(b[W>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[Z>>0]=(d[(b[Y>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[$>>0]=(d[(b[_>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[aa>>2]&127](k+g|0,m,n,o,ta);break}}while(0);o=u+24|0;aa=o;p=c[aa>>2]|0;if(!((p|0)==0&(c[aa+4>>2]|0)==0)){g=12<<ga;h=ra+oa|0;n=sa+oa|0;if(!(h>>>0<68|n>>>0<68)){ga=d[89328+n>>0]|0;aa=d[89488+h>>0]|0;a[ta>>0]=a[(p<<16>>16)+(89648+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[u+26>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[u+28>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[u+30>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e+52>>2]&127](i+g|0,l,aa,ga,ta)}if(pa?(ba=ra+qa|0,ca=d[89488+ba>>0]|0,ga=sa+qa|0,da=d[89328+ga>>0]|0,!(ba>>>0<68|ga>>>0<68)):0){a[ta>>0]=a[(b[o>>1]|0)+(89648+(ba<<2))>>0]|0;X=u+26|0;Y=ta+1|0;a[Y>>0]=a[(b[X>>1]|0)+(89648+(ba<<2))>>0]|0;Z=u+28|0;_=ta+2|0;a[_>>0]=a[(b[Z>>1]|0)+(89648+(ba<<2))>>0]|0;$=u+30|0;aa=ta+3|0;a[aa>>0]=a[(b[$>>1]|0)+(89648+(ba<<2))>>0]|0;ga=e+52|0;kc[c[ga>>2]&127](j+g|0,l,ca,da,ta);a[ta>>0]=a[(b[o>>1]|0)+(89648+(ba<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(89648+(ba<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(89648+(ba<<2))>>0]|0;a[aa>>0]=a[(b[$>>1]|0)+(89648+(ba<<2))>>0]|0;kc[c[ga>>2]&127](k+g|0,l,ca,da,ta)}}do if(la|0?(fa=u+32|0,la=fa,ga=c[la>>2]|0,ea=ga&65535,!((ga|0)==0&(c[la+4>>2]|0)==0)):0){h=ka+ra|0;n=d[89488+h>>0]|0;la=ka+sa|0;g=d[89328+la>>0]|0;do if(!(h>>>0<68|la>>>0<68))if(ea<<16>>16>3){ic[c[e+60>>2]&255](i,l,n,g);break}else{a[ta>>0]=a[(ea<<16>>16)+(89648+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e+48>>2]&127](i,l,n,g,ta);break}while(0);if(na){n=ma+ra|0;o=d[89488+n>>0]|0;g=ma+sa|0;h=d[89328+g>>0]|0;g=n>>>0<68|g>>>0<68;if(pa){if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)ic[c[e+60>>2]&255](j,l,o,h);else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](j,l,o,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){ic[c[e+60>>2]&255](k,l,o,h);break}else{a[ta>>0]=a[(g<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](k,l,o,h,ta);break}}else{if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)ic[c[e+84>>2]&255](j,m,o,h);else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+72>>2]&127](j,m,o,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){ic[c[e+84>>2]&255](k,m,o,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(89648+(n<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[u+34>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[u+36>>1]|0)+(89648+(n<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[u+38>>1]|0)+(89648+(n<<2))>>0]|0)+1;kc[c[e+72>>2]&127](k,m,o,h,ta);break}}}}while(0);g=u+40|0;ma=g;h=c[ma>>2]|0;if(!((h|0)==0&(c[ma+4>>2]|0)==0)){n=l<<2;o=ra+oa|0;p=sa+oa|0;if(!(o>>>0<68|p>>>0<68)){ma=d[89328+p>>0]|0;la=d[89488+o>>0]|0;a[ta>>0]=a[(h<<16>>16)+(89648+(o<<2))>>0]|0;a[ta+1>>0]=a[(b[u+42>>1]|0)+(89648+(o<<2))>>0]|0;a[ta+2>>0]=a[(b[u+44>>1]|0)+(89648+(o<<2))>>0]|0;a[ta+3>>0]=a[(b[u+46>>1]|0)+(89648+(o<<2))>>0]|0;kc[c[e+48>>2]&127](i+n|0,l,la,ma,ta)}if(pa?(ha=ra+qa|0,ia=d[89488+ha>>0]|0,ma=sa+qa|0,ja=d[89328+ma>>0]|0,!(ha>>>0<68|ma>>>0<68)):0){a[ta>>0]=a[(b[g>>1]|0)+(89648+(ha<<2))>>0]|0;da=u+42|0;ea=ta+1|0;a[ea>>0]=a[(b[da>>1]|0)+(89648+(ha<<2))>>0]|0;fa=u+44|0;ga=ta+2|0;a[ga>>0]=a[(b[fa>>1]|0)+(89648+(ha<<2))>>0]|0;ka=u+46|0;la=ta+3|0;a[la>>0]=a[(b[ka>>1]|0)+(89648+(ha<<2))>>0]|0;ma=e+48|0;kc[c[ma>>2]&127](j+n|0,l,ia,ja,ta);a[ta>>0]=a[(b[g>>1]|0)+(89648+(ha<<2))>>0]|0;a[ea>>0]=a[(b[da>>1]|0)+(89648+(ha<<2))>>0]|0;a[ga>>0]=a[(b[fa>>1]|0)+(89648+(ha<<2))>>0]|0;a[la>>0]=a[(b[ka>>1]|0)+(89648+(ha<<2))>>0]|0;kc[c[ma>>2]&127](k+n|0,l,ia,ja,ta)}}p=u+48|0;ma=p;g=c[ma>>2]|0;do if(!((g|0)==0&(c[ma+4>>2]|0)==0)){o=l<<3;h=ra+oa|0;n=sa+oa|0;if(!(h>>>0<68|n>>>0<68)){ma=d[89328+n>>0]|0;la=d[89488+h>>0]|0;a[ta>>0]=a[(g<<16>>16)+(89648+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[u+50>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[u+52>>1]|0)+(89648+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[u+54>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e+48>>2]&127](i+o|0,l,la,ma,ta)}if(na)if(pa){g=ra+qa|0;h=d[89488+g>>0]|0;m=sa+qa|0;n=d[89328+m>>0]|0;if(g>>>0<68|m>>>0<68)break;a[ta>>0]=a[(b[p>>1]|0)+(89648+(g<<2))>>0]|0;ia=u+50|0;ja=ta+1|0;a[ja>>0]=a[(b[ia>>1]|0)+(89648+(g<<2))>>0]|0;ka=u+52|0;la=ta+2|0;a[la>>0]=a[(b[ka>>1]|0)+(89648+(g<<2))>>0]|0;ma=u+54|0;na=ta+3|0;a[na>>0]=a[(b[ma>>1]|0)+(89648+(g<<2))>>0]|0;m=e+48|0;kc[c[m>>2]&127](j+o|0,l,h,n,ta);a[ta>>0]=a[(b[p>>1]|0)+(89648+(g<<2))>>0]|0;a[ja>>0]=a[(b[ia>>1]|0)+(89648+(g<<2))>>0]|0;a[la>>0]=a[(b[ka>>1]|0)+(89648+(g<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(89648+(g<<2))>>0]|0;kc[c[m>>2]&127](k+o|0,l,h,n,ta);break}else{g=m<<2;h=ra+qa|0;n=d[89488+h>>0]|0;na=sa+qa|0;o=d[89328+na>>0]|0;if(h>>>0<68|na>>>0<68)break;a[ta>>0]=(d[(b[p>>1]|0)+(89648+(h<<2))>>0]|0)+1;ha=u+50|0;ia=ta+1|0;a[ia>>0]=(d[(b[ha>>1]|0)+(89648+(h<<2))>>0]|0)+1;ja=u+52|0;ka=ta+2|0;a[ka>>0]=(d[(b[ja>>1]|0)+(89648+(h<<2))>>0]|0)+1;la=u+54|0;ma=ta+3|0;a[ma>>0]=(d[(b[la>>1]|0)+(89648+(h<<2))>>0]|0)+1;na=e+72|0;kc[c[na>>2]&127](j+g|0,m,n,o,ta);a[ta>>0]=(d[(b[p>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ia>>0]=(d[(b[ha>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ka>>0]=(d[(b[ja>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ma>>0]=(d[(b[la>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[na>>2]&127](k+g|0,m,n,o,ta);break}}while(0);o=u+56|0;m=o;h=c[m>>2]|0;if(!((h|0)==0&(c[m+4>>2]|0)==0)){p=l*12|0;n=ra+oa|0;g=sa+oa|0;if(!(n>>>0<68|g>>>0<68)){m=d[89328+g>>0]|0;oa=d[89488+n>>0]|0;a[ta>>0]=a[(h<<16>>16)+(89648+(n<<2))>>0]|0;a[ta+1>>0]=a[(b[u+58>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+2>>0]=a[(b[u+60>>1]|0)+(89648+(n<<2))>>0]|0;a[ta+3>>0]=a[(b[u+62>>1]|0)+(89648+(n<<2))>>0]|0;kc[c[e+48>>2]&127](i+p|0,l,oa,m,ta)}if(pa){h=ra+qa|0;n=d[89488+h>>0]|0;sa=sa+qa|0;g=d[89328+sa>>0]|0;if(h>>>0<68|sa>>>0<68)break;a[ta>>0]=a[(b[o>>1]|0)+(89648+(h<<2))>>0]|0;i=u+58|0;pa=ta+1|0;a[pa>>0]=a[(b[i>>1]|0)+(89648+(h<<2))>>0]|0;qa=u+60|0;m=ta+2|0;a[m>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;ra=u+62|0;sa=ta+3|0;a[sa>>0]=a[(b[ra>>1]|0)+(89648+(h<<2))>>0]|0;e=e+48|0;kc[c[e>>2]&127](j+p|0,l,n,g,ta);a[ta>>0]=a[(b[o>>1]|0)+(89648+(h<<2))>>0]|0;a[pa>>0]=a[(b[i>>1]|0)+(89648+(h<<2))>>0]|0;a[m>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;a[sa>>0]=a[(b[ra>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[e>>2]&127](k+p|0,l,n,g,ta)}}}while(0)}else ua=3;while(0);if((ua|0)==3)uc(e,f,g,h,i,j,k,l,m);Nb=va;return}function uc(f,g,h,i,j,k,l,m,n){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0;Qa=Nb;Nb=Nb+32|0;Oa=Qa+24|0;A=Qa;La=f+27e3|0;Ca=(H(c[La>>2]|0,i)|0)+h|0;Da=f+24364|0;Ea=c[(c[Da>>2]|0)+(Ca<<2)>>2]|0;Fa=(Ea>>>6&2^2)+2|0;Ga=f+28200|0;Ja=c[Ga>>2]|0;Ha=(c[Ja+12>>2]|0)!=0;Ja=(H(c[Ja+1184>>2]|0,-6)|0)+48|0;Ia=(c[g+872>>2]|0)+52+Ja|0;Ja=(c[g+876>>2]|0)+52+Ja|0;Ka=f+26360|0;Ba=g+21740|0;if((c[Ka>>2]|0)!=0?(Aa=c[Ba>>2]|0,!((Aa|0)==0|((Aa^Ea)&128|0)==0)):0){h=(A|8)+-1&-16;z=h;a:do if(!(Ea&7)){v=c[g+21828>>2]|0;r=i&1;s=(v|0)!=0;h=f+28196|0;t=f+25956|0;u=f+26376|0;q=0;while(1){if((q|0)==8){o=v;break a}p=s?q>>>2:q&1;o=c[g+21720+(p<<2)>>2]|0;p=c[g+21740+(p<<2)>>2]|0;if(!(p&7)){if((p&16777216|0)==0?1:(c[(c[h>>2]|0)+4>>2]|0)!=0)o=d[(d[90272+(v<<4)+(r<<3)+q>>0]|0)+((c[t>>2]|0)+(o*48|0))>>0]|0;else o=(((s?q&2:r)|0)==0?8192:32768)&e[(c[u>>2]|0)+(o<<1)>>1];o=(o|d[(q>>>1<<3)+12+(g+27824)>>0]|0)==0?1:2}else o=4;b[z+(q<<1)>>1]=o;q=q+1|0}}else{c[h>>2]=262148;c[h+4>>2]=262148;h=z+8|0;c[h>>2]=262148;c[h+4>>2]=262148;h=f+28196|0;o=c[g+21828>>2]|0}while(0);y=c[f+24340>>2]|0;za=a[y+Ca>>0]|0;x=a[y+(c[g+21720>>2]|0)>>0]|0;y=a[y+(c[g+21724>>2]|0)>>0]|0;t=za+1|0;Aa=c[h>>2]|0;w=(d[Aa+548+za>>0]|0)+1|0;za=(d[Aa+636+za>>0]|0)+1|0;h=t+x>>1;u=(w+(d[Aa+548+x>>0]|0)|0)>>>1;x=(za+(d[Aa+636+x>>0]|0)|0)>>>1;t=t+y>>1;w=(w+(d[Aa+548+y>>0]|0)|0)>>>1;y=(za+(d[Aa+636+y>>0]|0)|0)>>>1;do if(!o){s=m<<1;p=h+Ia|0;q=d[89488+p>>0]|0;Aa=h+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](j,s,q,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(p<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+8>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+12>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[f+56>>2]&127](j,s,q,h,Oa);break}}while(0);p=j+m|0;v=z+2|0;q=t+Ia|0;r=d[89488+q>>0]|0;Aa=t+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](p,s,r,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(q<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+6>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0;kc[c[f+56>>2]&127](p,s,r,h,Oa);break}}while(0);if(Ha){s=n<<1;p=u+Ia|0;q=d[89488+p>>0]|0;h=u+Ja|0;o=d[89328+h>>0]|0;h=p>>>0<68|h>>>0<68;if((c[(c[Ga>>2]|0)+12>>2]|0)==3){do if(!h){h=b[z>>1]|0;if(h<<16>>16>3){ic[c[f+68>>2]&255](k,s,q,o);break}else{a[Oa>>0]=a[(h<<16>>16)+(89648+(p<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+8>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+12>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[f+56>>2]&127](k,s,q,o,Oa);break}}while(0);p=k+n|0;q=w+Ia|0;r=d[89488+q>>0]|0;Aa=w+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](p,s,r,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(q<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+6>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0;kc[c[f+56>>2]&127](p,s,r,h,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;Aa=x+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](l,s,q,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(p<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+8>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+12>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[f+56>>2]&127](l,s,q,h,Oa);break}}while(0);p=l+n|0;q=y+Ia|0;r=d[89488+q>>0]|0;Aa=y+Ja|0;o=d[89328+Aa>>0]|0;if(q>>>0<68|Aa>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){ic[c[f+68>>2]&255](p,s,r,o);break}else{a[Oa>>0]=a[(h<<16>>16)+(89648+(q<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+6>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0;kc[c[f+56>>2]&127](p,s,r,o,Oa);break}}else{do if(!h){h=b[z>>1]|0;if(h<<16>>16>3){ic[c[f+92>>2]&255](k,s,q,o);break}else{a[Oa>>0]=(d[(h<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+8>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+12>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[f+80>>2]&127](k,s,q,o,Oa);break}}while(0);p=k+n|0;q=w+Ia|0;r=d[89488+q>>0]|0;Aa=w+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){ic[c[f+92>>2]&255](p,s,r,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(q<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+6>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[f+80>>2]&127](p,s,r,h,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;Aa=x+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+92>>2]&255](l,s,q,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+8>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+12>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[f+80>>2]&127](l,s,q,h,Oa);break}}while(0);p=l+n|0;q=y+Ia|0;r=d[89488+q>>0]|0;Aa=y+Ja|0;o=d[89328+Aa>>0]|0;if(q>>>0<68|Aa>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){ic[c[f+92>>2]&255](p,s,r,o);break}else{a[Oa>>0]=(d[(h<<16>>16)+(89648+(q<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+6>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[f+80>>2]&127](p,s,r,o,Oa);break}}}}else{p=h+Ia|0;q=d[89488+p>>0]|0;Aa=h+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](j,m,q,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(p<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+2>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+6>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[f+56>>2]&127](j,m,q,h,Oa);break}}while(0);p=j+(m<<3)|0;v=z+8|0;q=t+Ia|0;r=d[89488+q>>0]|0;Aa=t+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](p,m,r,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(q<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+12>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0;kc[c[f+56>>2]&127](p,m,r,h,Oa);break}}while(0);if(Ha){h=c[(c[Ga>>2]|0)+12>>2]|0;if((h|0)==3){p=u+Ia|0;q=d[89488+p>>0]|0;Aa=u+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](k,n,q,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(p<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+2>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+6>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[f+56>>2]&127](k,n,q,h,Oa);break}}while(0);s=n<<3;p=k+s|0;q=w+Ia|0;r=d[89488+q>>0]|0;Aa=w+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](p,n,r,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(q<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+12>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0;kc[c[f+56>>2]&127](p,n,r,h,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;Aa=x+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+68>>2]&255](l,n,q,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(p<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+2>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+6>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[f+56>>2]&127](l,n,q,h,Oa);break}}while(0);p=l+s|0;q=y+Ia|0;r=d[89488+q>>0]|0;Aa=y+Ja|0;o=d[89328+Aa>>0]|0;if(q>>>0<68|Aa>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){ic[c[f+68>>2]&255](p,n,r,o);break}else{a[Oa>>0]=a[(h<<16>>16)+(89648+(q<<2))>>0]|0;a[Oa+1>>0]=a[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+2>>0]=a[(b[z+12>>1]|0)+(89648+(q<<2))>>0]|0;a[Oa+3>>0]=a[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0;kc[c[f+56>>2]&127](p,n,r,o,Oa);break}}p=(h|0)==2;q=u+Ia|0;r=d[89488+q>>0]|0;Aa=u+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+92>>2]&255](k,n,r,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(q<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+2>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+4>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+6>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[f+80>>2]&127](k,n,r,h,Oa);break}}while(0);if(p){s=n<<3;p=k+s|0;q=w+Ia|0;r=d[89488+q>>0]|0;Aa=w+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){ic[c[f+92>>2]&255](p,n,r,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(q<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+12>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[f+80>>2]&127](p,n,r,h,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;Aa=x+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+92>>2]&255](l,n,q,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+2>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+6>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[f+80>>2]&127](l,n,q,h,Oa);break}}while(0);p=l+s|0;q=y+Ia|0;r=d[89488+q>>0]|0;Aa=y+Ja|0;o=d[89328+Aa>>0]|0;if(q>>>0<68|Aa>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){ic[c[f+92>>2]&255](p,n,r,o);break}else{a[Oa>>0]=(d[(h<<16>>16)+(89648+(q<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+12>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[f+80>>2]&127](p,n,r,o,Oa);break}}else{s=n<<2;p=k+s|0;q=w+Ia|0;r=d[89488+q>>0]|0;Aa=w+Ja|0;h=d[89328+Aa>>0]|0;do if(!(q>>>0<68|Aa>>>0<68)){o=b[v>>1]|0;if(o<<16>>16>3){ic[c[f+92>>2]&255](p,n,r,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(q<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+12>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[f+80>>2]&127](p,n,r,h,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;Aa=x+Ja|0;h=d[89328+Aa>>0]|0;do if(!(p>>>0<68|Aa>>>0<68)){o=b[z>>1]|0;if(o<<16>>16>3){ic[c[f+92>>2]&255](l,n,q,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+2>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+4>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+6>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[f+80>>2]&127](l,n,q,h,Oa);break}}while(0);p=l+s|0;q=y+Ia|0;r=d[89488+q>>0]|0;Aa=y+Ja|0;o=d[89328+Aa>>0]|0;if(q>>>0<68|Aa>>>0<68)break;h=b[v>>1]|0;if(h<<16>>16>3){ic[c[f+92>>2]&255](p,n,r,o);break}else{a[Oa>>0]=(d[(h<<16>>16)+(89648+(q<<2))>>0]|0)+1;a[Oa+1>>0]=(d[(b[z+10>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+2>>0]=(d[(b[z+12>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[Oa+3>>0]=(d[(b[z+14>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[f+80>>2]&127](p,n,r,o,Oa);break}}}}while(0);ca=1}else ca=0;da=Ca+-1|0;ea=g+21732|0;fa=Ea>>>3&7;ga=g+21712|0;ha=g+21856|0;ma=(A|8)+-1&-16;ia=ma;ja=Ea&16777216;ka=(Ea&7|0)==0;la=f+24340|0;na=f+25652|0;oa=ia+6|0;pa=ia+4|0;qa=ia+2|0;ra=Oa+1|0;sa=Oa+2|0;ta=Oa+3|0;ua=f+52|0;va=f+48|0;wa=g+852|0;xa=m<<2;ya=g+856|0;za=f+72|0;Aa=f+76|0;Z=(i&1|0)==0;_=Ea&128^128;U=(A|8)+-1&-16;$=U;aa=m<<1;ba=n<<1;G=(A|8)+-1&-16;E=G;F=f+28196|0;I=f+25956|0;J=f+26376|0;K=g+27836|0;L=g+27837|0;M=E+2|0;N=E+4|0;O=E+6|0;P=g+27838|0;Q=g+27839|0;R=$+2|0;S=$+4|0;T=$+6|0;V=f+26364|0;W=f+64|0;X=f+60|0;Y=f+88|0;i=f+84|0;z=0;while(1){if((z|0)==2)break;A=(z|0)==0;B=c[(c[Ga>>2]|0)+12>>2]|0;f=(B|0)==3;B=(B|0)==2;if(A)w=da;else w=c[ga>>2]|0;o=c[(A?Ba:ea)>>2]|0;D=a[90304+(z<<3)+fa>>0]|0;C=D&255;if(D<<24>>24==3)D=(c[ha>>2]&15|0)==0?1:4;else D=4;p=32>>>z|8;y=p&Ea;b:do if(!(ca&A|(o|0)==0)){q=c[Ka>>2]|0;if(!((o&_|0)==0|Z&((z|0)==1&(q|0)!=0)^1)){u=Ca-(c[La>>2]<<1)|0;v=0;while(1){if((v|0)==2)break b;h=c[(c[Da>>2]|0)+(u<<2)>>2]|0;c:do if(!((h|Ea)&7)){if((h&16777216|0)==0?1:(c[(c[F>>2]|0)+4>>2]|0)!=0){o=(c[I>>2]|0)+(u*48|0)+12|0;h=0;while(1){if((h|0)==4)break c;b[E+(h<<1)>>1]=(a[o+h>>0]|a[h+12+(g+27824)>>0])<<24>>24==0?1:2;h=h+1|0}}o=(c[J>>2]|0)+(u<<1)|0;if((b[o>>1]&16384)==0?(a[K>>0]|0)==0:0)h=1;else h=2;b[E>>1]=h;if((b[o>>1]&16384)==0?(a[L>>0]|0)==0:0)h=1;else h=2;b[M>>1]=h;if((b[o>>1]|0)>=0?(a[P>>0]|0)==0:0)h=1;else h=2;b[N>>1]=h;if((b[o>>1]|0)>=0?(a[Q>>0]|0)==0:0)h=1;else h=2;b[O>>1]=h}else{x=G;c[x>>2]=196611;c[x+4>>2]=196611}while(0);p=c[la>>2]|0;h=a[p+u>>0]|0;p=(a[p+Ca>>0]|0)+1+h>>1;o=p+Ia|0;p=p+Ja|0;if(!(o>>>0<68|p>>>0<68)){h=d[89328+p>>0]|0;x=d[89488+o>>0]|0;w=j+(H(v,m)|0)|0;a[Oa>>0]=a[(b[E>>1]|0)+(89648+(o<<2))>>0]|0;a[ra>>0]=a[(b[M>>1]|0)+(89648+(o<<2))>>0]|0;a[sa>>0]=a[(b[N>>1]|0)+(89648+(o<<2))>>0]|0;a[ta>>0]=a[(b[O>>1]|0)+(89648+(o<<2))>>0]|0;kc[c[va>>2]&127](w,aa,x,h,Oa);h=a[(c[la>>2]|0)+u>>0]|0}s=c[F>>2]|0;o=(c[wa>>2]|0)+1+(d[s+548+h>>0]|0)>>1;s=(c[ya>>2]|0)+1+(d[s+636+h>>0]|0)>>1;do if(Ha){t=H(v,n)|0;p=k+t|0;q=o+Ia|0;r=d[89488+q>>0]|0;o=o+Ja|0;h=d[89328+o>>0]|0;o=q>>>0<68|o>>>0<68;if(f){if(!o){a[Oa>>0]=a[(b[E>>1]|0)+(89648+(q<<2))>>0]|0;a[ra>>0]=a[(b[M>>1]|0)+(89648+(q<<2))>>0]|0;a[sa>>0]=a[(b[N>>1]|0)+(89648+(q<<2))>>0]|0;a[ta>>0]=a[(b[O>>1]|0)+(89648+(q<<2))>>0]|0;kc[c[va>>2]&127](p,ba,r,h,Oa)}o=s+Ia|0;h=s+Ja|0;if(o>>>0<68|h>>>0<68)break;x=d[89328+h>>0]|0;w=d[89488+o>>0]|0;a[Oa>>0]=a[(b[E>>1]|0)+(89648+(o<<2))>>0]|0;a[ra>>0]=a[(b[M>>1]|0)+(89648+(o<<2))>>0]|0;a[sa>>0]=a[(b[N>>1]|0)+(89648+(o<<2))>>0]|0;a[ta>>0]=a[(b[O>>1]|0)+(89648+(o<<2))>>0]|0;kc[c[va>>2]&127](l+t|0,ba,w,x,Oa);break}else{if(!o){a[Oa>>0]=(d[(b[E>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[ra>>0]=(d[(b[M>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[sa>>0]=(d[(b[N>>1]|0)+(89648+(q<<2))>>0]|0)+1;a[ta>>0]=(d[(b[O>>1]|0)+(89648+(q<<2))>>0]|0)+1;kc[c[za>>2]&127](p,ba,r,h,Oa)}o=s+Ia|0;h=s+Ja|0;if(o>>>0<68|h>>>0<68)break;x=d[89328+h>>0]|0;w=d[89488+o>>0]|0;a[Oa>>0]=(d[(b[E>>1]|0)+(89648+(o<<2))>>0]|0)+1;a[ra>>0]=(d[(b[M>>1]|0)+(89648+(o<<2))>>0]|0)+1;a[sa>>0]=(d[(b[N>>1]|0)+(89648+(o<<2))>>0]|0)+1;a[ta>>0]=(d[(b[O>>1]|0)+(89648+(o<<2))>>0]|0)+1;kc[c[za>>2]&127](l+t|0,ba,w,x,Oa);break}}while(0);u=(c[La>>2]|0)+u|0;v=v+1|0}}h=o|Ea;d:do if(!(h&7)){h=(z|0)!=0;if(!((q|0)==0|h^1)?((o^Ea)&128|0)!=0:0){s=U;c[s>>2]=65537;c[s+4>>2]=65537;s=0}else if((y|0)==0|(o&p|0)==0)s=1;else{s=(sk(g,12,h?4:11,Fa)|0)&65535;b[T>>1]=s;b[S>>1]=s;b[R>>1]=s;b[$>>1]=s;s=0}q=h?8:1;p=0;while(1){if((p|0)==4)break d;h=(A?p<<3:p)+12|0;o=h-q|0;r=$+(p<<1)|0;if(!((a[g+27824+o>>0]|a[g+27824+h>>0])<<24>>24)){if(s){h=(sk(g,h,o,Fa)|0)&65535;Pa=170}}else{h=2;Pa=170}if((Pa|0)==170){Pa=0;b[r>>1]=h}p=p+1|0}}else{x=U;c[x>>2]=196611;c[x+4>>2]=196611;do if(h&128|0)if(!(c[Ka>>2]|0))if(A&(c[V>>2]|0)!=3)break;else break d;else if(A)break;else break d;while(0);x=U;c[x>>2]=262148;c[x+4>>2]=262148}while(0);r=b[$>>1]|0;s=r<<16>>16;t=b[R>>1]|0;u=b[S>>1]|0;v=b[T>>1]|0;do if((t+s+u|0)!=(0-v|0)){q=c[la>>2]|0;x=a[q+w>>0]|0;q=(a[q+Ca>>0]|0)+1+x>>1;h=c[F>>2]|0;w=(c[wa>>2]|0)+1+(d[h+548+x>>0]|0)>>1;x=(c[ya>>2]|0)+1+(d[h+636+x>>0]|0)>>1;h=q+Ia|0;o=d[89488+h>>0]|0;q=q+Ja|0;p=d[89328+q>>0]|0;q=h>>>0<68|q>>>0<68;if(A){do if(!q)if(r<<16>>16>3){ic[c[W>>2]&255](j,m,o,p);break}else{a[Oa>>0]=a[89648+(h<<2)+s>>0]|0;a[ra>>0]=a[89648+(h<<2)+t>>0]|0;a[sa>>0]=a[89648+(h<<2)+u>>0]|0;a[ta>>0]=a[89648+(h<<2)+v>>0]|0;kc[c[ua>>2]&127](j,m,o,p,Oa);break}while(0);if(!Ha)break;p=w+Ia|0;q=d[89488+p>>0]|0;h=w+Ja|0;o=d[89328+h>>0]|0;h=p>>>0<68|h>>>0<68;if(f){do if(!h){h=b[$>>1]|0;if(h<<16>>16>3){ic[c[W>>2]&255](k,n,q,o);break}else{a[Oa>>0]=a[(h<<16>>16)+(89648+(p<<2))>>0]|0;a[ra>>0]=a[(b[R>>1]|0)+(89648+(p<<2))>>0]|0;a[sa>>0]=a[(b[S>>1]|0)+(89648+(p<<2))>>0]|0;a[ta>>0]=a[(b[T>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[ua>>2]&127](k,n,q,o,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;x=x+Ja|0;h=d[89328+x>>0]|0;if(p>>>0<68|x>>>0<68)break;o=b[$>>1]|0;if(o<<16>>16>3){ic[c[W>>2]&255](l,n,q,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(p<<2))>>0]|0;a[ra>>0]=a[(b[R>>1]|0)+(89648+(p<<2))>>0]|0;a[sa>>0]=a[(b[S>>1]|0)+(89648+(p<<2))>>0]|0;a[ta>>0]=a[(b[T>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[ua>>2]&127](l,n,q,h,Oa);break}}else{do if(!h){h=b[$>>1]|0;if(h<<16>>16>3){ic[c[Y>>2]&255](k,n,q,o);break}else{a[Oa>>0]=(d[(h<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[ra>>0]=(d[(b[R>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[sa>>0]=(d[(b[S>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[ta>>0]=(d[(b[T>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[Aa>>2]&127](k,n,q,o,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;x=x+Ja|0;h=d[89328+x>>0]|0;if(p>>>0<68|x>>>0<68)break;o=b[$>>1]|0;if(o<<16>>16>3){ic[c[Y>>2]&255](l,n,q,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[ra>>0]=(d[(b[R>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[sa>>0]=(d[(b[S>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[ta>>0]=(d[(b[T>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[Aa>>2]&127](l,n,q,h,Oa);break}}}else{do if(!q)if(r<<16>>16>3){ic[c[X>>2]&255](j,m,o,p);break}else{a[Oa>>0]=a[89648+(h<<2)+s>>0]|0;a[ra>>0]=a[89648+(h<<2)+t>>0]|0;a[sa>>0]=a[89648+(h<<2)+u>>0]|0;a[ta>>0]=a[89648+(h<<2)+v>>0]|0;kc[c[va>>2]&127](j,m,o,p,Oa);break}while(0);if(!Ha)break;p=w+Ia|0;q=d[89488+p>>0]|0;h=w+Ja|0;o=d[89328+h>>0]|0;h=p>>>0<68|h>>>0<68;if(f){do if(!h){h=b[$>>1]|0;if(h<<16>>16>3){ic[c[X>>2]&255](k,n,q,o);break}else{a[Oa>>0]=a[(h<<16>>16)+(89648+(p<<2))>>0]|0;a[ra>>0]=a[(b[R>>1]|0)+(89648+(p<<2))>>0]|0;a[sa>>0]=a[(b[S>>1]|0)+(89648+(p<<2))>>0]|0;a[ta>>0]=a[(b[T>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[va>>2]&127](k,n,q,o,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;x=x+Ja|0;h=d[89328+x>>0]|0;if(p>>>0<68|x>>>0<68)break;o=b[$>>1]|0;if(o<<16>>16>3){ic[c[X>>2]&255](l,n,q,h);break}else{a[Oa>>0]=a[(o<<16>>16)+(89648+(p<<2))>>0]|0;a[ra>>0]=a[(b[R>>1]|0)+(89648+(p<<2))>>0]|0;a[sa>>0]=a[(b[S>>1]|0)+(89648+(p<<2))>>0]|0;a[ta>>0]=a[(b[T>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[va>>2]&127](l,n,q,h,Oa);break}}else{do if(!h){h=b[$>>1]|0;if(h<<16>>16>3){ic[c[i>>2]&255](k,n,q,o);break}else{a[Oa>>0]=(d[(h<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[ra>>0]=(d[(b[R>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[sa>>0]=(d[(b[S>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[ta>>0]=(d[(b[T>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[za>>2]&127](k,n,q,o,Oa);break}}while(0);p=x+Ia|0;q=d[89488+p>>0]|0;x=x+Ja|0;h=d[89328+x>>0]|0;if(p>>>0<68|x>>>0<68)break;o=b[$>>1]|0;if(o<<16>>16>3){ic[c[i>>2]&255](l,n,q,h);break}else{a[Oa>>0]=(d[(o<<16>>16)+(89648+(p<<2))>>0]|0)+1;a[ra>>0]=(d[(b[R>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[sa>>0]=(d[(b[S>>1]|0)+(89648+(p<<2))>>0]|0)+1;a[ta>>0]=(d[(b[T>>1]|0)+(89648+(p<<2))>>0]|0)+1;kc[c[za>>2]&127](l,n,q,h,Oa);break}}}}while(0)}while(0);w=A|B^1;u=(y|0)==0;v=A?1:8;t=1;while(1){if(t>>>0>=D>>>0)break;s=(ja&t<<24|0)==0;do if(!(w&(s^1))){if(ka){if(!(t&C))if(u)p=1;else{p=(H(t,v)|0)+12|0;p=(sk(g,p,p-v|0,Fa)|0)&65535;b[oa>>1]=p;b[pa>>1]=p;b[qa>>1]=p;b[ia>>1]=p;p=0}else{p=ma;c[p>>2]=0;c[p+4>>2]=0;p=0}q=0;while(1){if((q|0)==4)break;h=(A?t:q)+12+((A?q:t)<<3)|0;o=h-v|0;r=ia+(q<<1)|0;if(!((a[g+27824+o>>0]|a[g+27824+h>>0])<<24>>24)){if(p){h=(sk(g,h,o,Fa)|0)&65535;Pa=233}}else{h=2;Pa=233}if((Pa|0)==233){Pa=0;b[r>>1]=h}q=q+1|0}if(((b[qa>>1]|0)+(b[ia>>1]|0)+(b[pa>>1]|0)|0)==(0-(b[oa>>1]|0)|0))break}else{y=ma;c[y>>2]=196611;c[y+4>>2]=196611}h=a[(c[la>>2]|0)+Ca>>0]|0;if(A){p=t<<2;o=Ia+h|0;h=Ja+h|0;if(!(o>>>0<68|h>>>0<68)){y=d[89328+h>>0]|0;x=d[89488+o>>0]|0;s=j+(p<<c[na>>2])|0;a[Oa>>0]=a[(b[ia>>1]|0)+(89648+(o<<2))>>0]|0;a[ra>>0]=a[(b[qa>>1]|0)+(89648+(o<<2))>>0]|0;a[sa>>0]=a[(b[pa>>1]|0)+(89648+(o<<2))>>0]|0;a[ta>>0]=a[(b[oa>>1]|0)+(89648+(o<<2))>>0]|0;kc[c[ua>>2]&127](s,m,x,y,Oa)}if(!Ha)break;if(f){o=c[wa>>2]|0;h=o+Ia|0;o=o+Ja|0;if(!(h>>>0<68|o>>>0<68)){y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;s=k+(p<<c[na>>2])|0;a[Oa>>0]=a[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0;a[ra>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;a[sa>>0]=a[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0;a[ta>>0]=a[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[ua>>2]&127](s,n,x,y,Oa)}o=c[ya>>2]|0;h=o+Ia|0;o=o+Ja|0;if(h>>>0<68|o>>>0<68)break;y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;s=l+(p<<c[na>>2])|0;a[Oa>>0]=a[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0;a[ra>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;a[sa>>0]=a[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0;a[ta>>0]=a[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[ua>>2]&127](s,n,x,y,Oa);break}if(t&1|0)break;p=t<<1;o=c[wa>>2]|0;h=o+Ia|0;o=o+Ja|0;if(!(h>>>0<68|o>>>0<68)){y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;s=k+(p<<c[na>>2])|0;a[Oa>>0]=(d[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[sa>>0]=(d[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ta>>0]=(d[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[Aa>>2]&127](s,n,x,y,Oa)}o=c[ya>>2]|0;h=o+Ia|0;o=o+Ja|0;if(h>>>0<68|o>>>0<68)break;y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;s=l+(p<<c[na>>2])|0;a[Oa>>0]=(d[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[sa>>0]=(d[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ta>>0]=(d[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[Aa>>2]&127](s,n,x,y,Oa);break}if(B){if(s?(Ma=Ia+h|0,Na=Ja+h|0,!(Ma>>>0<68|Na>>>0<68)):0){y=d[89328+Na>>0]|0;x=d[89488+Ma>>0]|0;s=j+(H(xa,t)|0)|0;a[Oa>>0]=a[(b[ia>>1]|0)+(89648+(Ma<<2))>>0]|0;a[ra>>0]=a[(b[qa>>1]|0)+(89648+(Ma<<2))>>0]|0;a[sa>>0]=a[(b[pa>>1]|0)+(89648+(Ma<<2))>>0]|0;a[ta>>0]=a[(b[oa>>1]|0)+(89648+(Ma<<2))>>0]|0;kc[c[va>>2]&127](s,m,x,y,Oa)}if(!Ha)break;p=H(t<<2,n)|0;o=c[wa>>2]|0;h=o+Ia|0;o=o+Ja|0;if(!(h>>>0<68|o>>>0<68)){y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;a[Oa>>0]=(d[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[sa>>0]=(d[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ta>>0]=(d[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[za>>2]&127](k+p|0,n,x,y,Oa)}o=c[ya>>2]|0;h=o+Ia|0;o=o+Ja|0;if(h>>>0<68|o>>>0<68)break;y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;a[Oa>>0]=(d[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[sa>>0]=(d[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ta>>0]=(d[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[za>>2]&127](l+p|0,n,x,y,Oa);break}o=t<<2;p=Ia+h|0;h=Ja+h|0;if(!(p>>>0<68|h>>>0<68)){y=d[89328+h>>0]|0;x=d[89488+p>>0]|0;s=j+(H(o,m)|0)|0;a[Oa>>0]=a[(b[ia>>1]|0)+(89648+(p<<2))>>0]|0;a[ra>>0]=a[(b[qa>>1]|0)+(89648+(p<<2))>>0]|0;a[sa>>0]=a[(b[pa>>1]|0)+(89648+(p<<2))>>0]|0;a[ta>>0]=a[(b[oa>>1]|0)+(89648+(p<<2))>>0]|0;kc[c[va>>2]&127](s,m,x,y,Oa)}if(Ha){if(f){p=H(o,n)|0;o=c[wa>>2]|0;h=o+Ia|0;o=o+Ja|0;if(!(h>>>0<68|o>>>0<68)){y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;a[Oa>>0]=a[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0;a[ra>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;a[sa>>0]=a[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0;a[ta>>0]=a[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[va>>2]&127](k+p|0,n,x,y,Oa)}o=c[ya>>2]|0;h=o+Ia|0;o=o+Ja|0;if(h>>>0<68|o>>>0<68)break;y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;a[Oa>>0]=a[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0;a[ra>>0]=a[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0;a[sa>>0]=a[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0;a[ta>>0]=a[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0;kc[c[va>>2]&127](l+p|0,n,x,y,Oa);break}if(!(t&1)){p=H(t<<1,n)|0;o=c[wa>>2]|0;h=o+Ia|0;o=o+Ja|0;if(!(h>>>0<68|o>>>0<68)){y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;a[Oa>>0]=(d[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[sa>>0]=(d[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ta>>0]=(d[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[za>>2]&127](k+p|0,n,x,y,Oa)}o=c[ya>>2]|0;h=o+Ia|0;o=o+Ja|0;if(!(h>>>0<68|o>>>0<68)){y=d[89328+o>>0]|0;x=d[89488+h>>0]|0;a[Oa>>0]=(d[(b[ia>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[sa>>0]=(d[(b[pa>>1]|0)+(89648+(h<<2))>>0]|0)+1;a[ta>>0]=(d[(b[oa>>1]|0)+(89648+(h<<2))>>0]|0)+1;kc[c[za>>2]&127](l+p|0,n,x,y,Oa)}}}}while(0);t=t+1|0}z=z+1|0}Nb=Qa;return}function vc(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=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,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;ja=Nb;Nb=Nb+48|0;_=ja+20|0;Y=ja;ia=ja+8|0;ca=g+21788|0;k=c[ca>>2]|0;aa=g+21792|0;o=c[aa>>2]|0;$=g+21796|0;l=c[$>>2]|0;ea=c[(c[f+24364>>2]|0)+(l<<2)>>2]|0;n=f+25960|0;X=g+848|0;if(!(c[X>>2]|0))fa=(c[(c[f+28200>>2]|0)+16>>2]|0)!=0&1;else fa=0;i=f+24316|0;ha=f+25652|0;m=g+21772|0;j=f+12|0;h=0;while(1){if((h|0)==3)break;W=c[ha>>2]|0;Z=c[m>>2]|0;V=(c[(c[i>>2]|0)+(h<<2)>>2]|0)+((H(Z,o)|0)+(k<<W)<<4)|0;c[ia+(h<<2)>>2]=V;W=V+(H(c[ca>>2]<<2&12,Z)|0)+(64<<W)|0;hc[c[j>>2]&1023](W,Z,4);h=h+1|0}j=g+23412|0;a[(c[f+26372>>2]|0)+l>>0]=c[j>>2];Z=g+21828|0;q=c[Z>>2]|0;h=c[m>>2]|0;a:do if(q){p=h<<1;c[g+21784>>2]=p;c[g+21780>>2]=p;n=f+26152|0;b:do if(o&1|0){i=H(h,-15)|0;h=0;while(1){if((h|0)==3)break b;W=ia+(h<<2)|0;c[W>>2]=(c[W>>2]|0)+i;h=h+1|0}}while(0);if(c[f+26360>>2]|0){m=(ea&8|0)==0;j=c[j>>2]|0;i=0;while(1){if(i>>>0>=j>>>0)break a;c:do if(12288<<(i<<1)&ea|0){if(!m){V=g+28272+(i*40|0)+12|0;W=H((a[V>>0]|0)+16^c[aa>>2]&1,16843009)|0;c[V>>2]=W;c[g+28272+(i*40|0)+20>>2]=W;c[g+28272+(i*40|0)+28>>2]=W;c[g+28272+(i*40|0)+36>>2]=W;break}h=0;while(1){if(h>>>0>=16)break c;k=(d[88688+h>>0]|0)+(g+28272+(i*40|0))|0;l=a[k>>0]|0;if(l<<24>>24>-1){W=(c[aa>>2]&1^(l<<24>>24)+16)*257&65535;b[k>>1]=W;b[k+8>>1]=W}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21784>>2]=h;c[g+21780>>2]=h;p=h}while(0);d:do if(!(ea&4)){e:do if(ea&7){U=g+868|0;i=c[U>>2]|0;f:do if(i|0){j=c[ia>>2]|0;k=c[ia+4>>2]|0;l=c[ia+8>>2]|0;y=c[ha>>2]|0;do if(c[f+26360>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(h){h=1;break}else break f;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){s=(c[g+832>>2]|0)==(e[(c[f+26356>>2]|0)+((c[$>>2]|0)+-1-(c[f+27e3>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;u=c[ca>>2]|0}else{u=c[ca>>2]|0;s=(u|0)>0;i=(c[aa>>2]|0)>((q|0)!=0|0)&1}w=0-(p+1+y)|0;q=j+w|0;v=k+w|0;w=l+w|0;x=g+27796+(h<<2)|0;t=c[x>>2]|0;r=u+-1|0;k=t+(u*96|0)|0;if(i|0){l=(y|0)==0;do if(s){h=(8<<y)+(t+(r*96|0))|0;W=h;V=c[W>>2]|0;W=c[W+4>>2]|0;i=q+(-7<<y)|0;S=i;T=c[S+4>>2]|0;da=h;c[da>>2]=c[S>>2];c[da+4>>2]=T;da=i;c[da>>2]=V;c[da+4>>2]=W;if(l){h=k;j=q+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;da=58;break}else{V=h+8|0;l=V;j=c[l>>2]|0;l=c[l+4>>2]|0;h=i+8|0;W=h;da=c[W+4>>2]|0;i=V;c[i>>2]=c[W>>2];c[i+4>>2]=da;c[h>>2]=j;c[h+4>>2]=l;h=k;l=1<<y;j=l;l=q+l|0;i=c[h>>2]|0;h=c[h+4>>2]|0;da=57;break}}else{h=k;i=c[h>>2]|0;h=c[h+4>>2]|0;j=1<<y;m=q+j|0;if(l){j=m;da=58}else{l=m;da=57}}while(0);if((da|0)==57){T=l;da=c[T+4>>2]|0;W=k;c[W>>2]=c[T>>2];c[W+4>>2]=da;W=l;c[W>>2]=i;c[W+4>>2]=h;W=t+(u*96|0)+8|0;l=W;da=c[l>>2]|0;l=c[l+4>>2]|0;k=q+j+8|0;T=k;V=c[T+4>>2]|0;c[W>>2]=c[T>>2];c[W+4>>2]=V;c[k>>2]=da;c[k+4>>2]=l;k=1;l=j}else if((da|0)==58){da=j;l=c[da+4>>2]|0;c[k>>2]=c[da>>2];c[k+4>>2]=l;k=j;c[k>>2]=i;c[k+4>>2]=h;k=0;l=1}h=(8<<y)+(t+(u*96|0))|0;W=h;V=c[W>>2]|0;W=c[W+4>>2]|0;m=9<<y;i=q+m|0;S=i;T=c[S+4>>2]|0;da=h;c[da>>2]=c[S>>2];c[da+4>>2]=T;da=i;c[da>>2]=V;c[da+4>>2]=W;if(k){T=h+8|0;W=T;V=c[W>>2]|0;W=c[W+4>>2]|0;da=i+8|0;R=da;S=c[R+4>>2]|0;c[T>>2]=c[R>>2];c[T+4>>2]=S;c[da>>2]=V;c[da+4>>2]=W}h=(c[ca>>2]|0)+1|0;o=f+26996|0;if((h|0)<(c[o>>2]|0)?(da=(c[x>>2]|0)+(h*96|0)|0,W=da,V=c[W>>2]|0,W=c[W+4>>2]|0,z=q+(17<<y)|0,S=z,T=c[S+4>>2]|0,da,c[da>>2]=c[S>>2],c[da+4>>2]=T,da=z,c[da>>2]=V,c[da+4>>2]=W,k):0){T=(c[x>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;W=T;V=c[W>>2]|0;W=c[W+4>>2]|0;da=z+8|0;R=da;S=c[R+4>>2]|0;c[T>>2]=c[R>>2];c[T+4>>2]=S;c[da>>2]=V;c[da+4>>2]=W}if(s){h=(24<<y)+(t+(r*96|0))|0;W=h;V=c[W>>2]|0;W=c[W+4>>2]|0;j=-7<<y;i=v+j|0;S=i;T=c[S+4>>2]|0;da=h;c[da>>2]=c[S>>2];c[da+4>>2]=T;da=i;c[da>>2]=V;c[da+4>>2]=W;if(k){T=h+8|0;W=T;V=c[W>>2]|0;W=c[W+4>>2]|0;da=i+8|0;R=da;S=c[R+4>>2]|0;c[T>>2]=c[R>>2];c[T+4>>2]=S;c[da>>2]=V;c[da+4>>2]=W}i=(40<<y)+(t+(r*96|0))|0;W=i;V=c[W>>2]|0;W=c[W+4>>2]|0;h=w+j|0;S=h;T=c[S+4>>2]|0;da=i;c[da>>2]=c[S>>2];c[da+4>>2]=T;da=h;c[da>>2]=V;c[da+4>>2]=W;if(k){T=i+8|0;W=T;V=c[W>>2]|0;W=c[W+4>>2]|0;da=h+8|0;R=da;S=c[R+4>>2]|0;c[T>>2]=c[R>>2];c[T+4>>2]=S;c[da>>2]=V;c[da+4>>2]=W;da=70}else da=71}else if(k)da=70;else da=71;if((da|0)==70){T=(16<<y)+(t+(u*96|0))|0;V=T;R=c[V>>2]|0;V=c[V+4>>2]|0;k=v+l|0;Q=k;S=c[Q+4>>2]|0;W=T;c[W>>2]=c[Q>>2];c[W+4>>2]=S;W=k;c[W>>2]=R;c[W+4>>2]=V;T=T+8|0;W=T;V=c[W>>2]|0;W=c[W+4>>2]|0;k=k+8|0;R=k;S=c[R+4>>2]|0;c[T>>2]=c[R>>2];c[T+4>>2]=S;c[k>>2]=V;c[k+4>>2]=W;k=1}else if((da|0)==71){T=(16<<y)+(t+(u*96|0))|0;W=T;V=c[W>>2]|0;W=c[W+4>>2]|0;k=v+l|0;R=k;S=c[R+4>>2]|0;c[T>>2]=c[R>>2];c[T+4>>2]=S;c[k>>2]=V;c[k+4>>2]=W;k=0}h=(24<<y)+(t+(u*96|0))|0;V=h;T=c[V>>2]|0;V=c[V+4>>2]|0;i=v+m|0;R=i;S=c[R+4>>2]|0;W=h;c[W>>2]=c[R>>2];c[W+4>>2]=S;W=i;c[W>>2]=T;c[W+4>>2]=V;if(k){W=h+8|0;T=W;Q=c[T>>2]|0;T=c[T+4>>2]|0;S=i+8|0;R=S;P=c[R+4>>2]|0;c[W>>2]=c[R>>2];c[W+4>>2]=P;c[S>>2]=Q;c[S+4>>2]=T;S=(32<<y)+(t+(u*96|0))|0;T=S;Q=c[T>>2]|0;T=c[T+4>>2]|0;W=w+l|0;P=W;R=c[P+4>>2]|0;V=S;c[V>>2]=c[P>>2];c[V+4>>2]=R;V=W;c[V>>2]=Q;c[V+4>>2]=T;S=S+8|0;V=S;T=c[V>>2]|0;V=c[V+4>>2]|0;W=W+8|0;Q=W;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[W>>2]=T;c[W+4>>2]=V}else{S=(32<<y)+(t+(u*96|0))|0;V=S;T=c[V>>2]|0;V=c[V+4>>2]|0;W=w+l|0;Q=W;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[W>>2]=T;c[W+4>>2]=V}i=(40<<y)+(t+(u*96|0))|0;V=i;T=c[V>>2]|0;V=c[V+4>>2]|0;h=w+m|0;R=h;S=c[R+4>>2]|0;W=i;c[W>>2]=c[R>>2];c[W+4>>2]=S;W=h;c[W>>2]=T;c[W+4>>2]=V;if(k){S=i+8|0;V=S;T=c[V>>2]|0;V=c[V+4>>2]|0;W=h+8|0;Q=W;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[W>>2]=T;c[W+4>>2]=V}h=(c[ca>>2]|0)+1|0;if((h|0)<(c[o>>2]|0)){i=16<<y;W=(c[x>>2]|0)+(h*96|0)+i|0;V=W;T=c[V>>2]|0;V=c[V+4>>2]|0;j=17<<y;h=v+j|0;R=h;S=c[R+4>>2]|0;c[W>>2]=c[R>>2];c[W+4>>2]=S;W=h;c[W>>2]=T;c[W+4>>2]=V;if(k){S=(c[x>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;V=S;T=c[V>>2]|0;V=c[V+4>>2]|0;W=h+8|0;Q=W;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[W>>2]=T;c[W+4>>2]=V}i=32<<y;W=(c[x>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i|0;V=W;T=c[V>>2]|0;V=c[V+4>>2]|0;h=w+j|0;R=h;S=c[R+4>>2]|0;c[W>>2]=c[R>>2];c[W+4>>2]=S;W=h;c[W>>2]=T;c[W+4>>2]=V;if(k){S=(c[x>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;V=S;T=c[V>>2]|0;V=c[V+4>>2]|0;W=h+8|0;Q=W;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[W>>2]=T;c[W+4>>2]=V}}}}while(0);h=ea&1;y=(h|0)==0;E=g+21660|0;V=ea&16777216;z=(V|0)==0;A=(fa|0)!=0;B=(fa|0)==0;C=f+132|0;I=f+28196|0;F=f+144|0;G=f+28200|0;J=g+21764|0;K=0-p|0;L=3-p|0;N=3-((p|0)/2|0)|0;D=g+28560|0;O=f+108|0;P=f+100|0;W=f+140|0;Q=g+21756|0;R=f+29696|0;S=f+112|0;T=f+104|0;x=0;while(1){if((x|0)==3)break;w=c[ha>>2]|0;t=c[ia+(x<<2)>>2]|0;i=c[((x|0)==0?X:g+852+(x+-1<<2)|0)>>2]|0;u=x<<4;v=n+(u<<2)|0;g:do if(y){fc[c[f+25872+(c[E>>2]<<2)>>2]&255](t,p);if(a[(d[88688+(x+48)>>0]|0)+(g+27824)>>0]|0){if(B){hc[c[C>>2]&1023](g+28560+(x<<8<<w<<1)|0,g+31632+(x<<6)|0,c[(c[(c[I>>2]|0)+173788+(x<<2)>>2]|0)+(i<<6)>>2]|0);break}m=g+28560+(x<<8<<w<<1)|0;j=(w|0)==0;k=g+31632+(x<<6)|0;i=0;while(1){if((i|0)==16)break g;l=d[76096+i>>0]|0;if(j)b[m+(l<<1)>>1]=b[g+31632+(x<<6)+(i<<1)>>1]|0;else c[m+(l<<2)>>2]=c[k+(i<<2)>>2];i=i+1|0}}}else{if(!z){if(A){l=c[W>>2]|0;k=l}else{k=c[T>>2]|0;l=c[S>>2]|0}o=x<<8;q=(w|0)==0;m=0;while(1){if(m>>>0>=16)break g;r=t+(c[v+(m<<2)>>2]|0)|0;s=a[(d[88688+m>>0]|0)+(g+21664)>>0]|0;i=s<<24>>24;do if(A?(s<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)if((c[R>>2]|0)>>>0<151){hc[c[f+25916+(i<<2)>>2]&1023](r,g+28560+((m<<4)+o<<w<<1)|0,p);break}else{kc[c[f+25924+(i<<2)>>2]&127](r,g+28560+((m<<4)+o<<w<<1)|0,c[Q>>2]<<m&32768,c[J>>2]<<m&16384,p);break}else da=96;while(0);h:do if((da|0)==96){da=0;s=a[(d[88688+(m+u)>>0]|0)+(g+27824)>>0]|0;ic[c[f+25780+(i<<2)>>2]&255](r,c[Q>>2]<<m&32768,c[J>>2]<<m&16384,p);i:do switch(s<<24>>24){case 0:break h;case 1:{i=(m<<4)+o|0;if(q)j=e[g+28560+(i<<1)>>1]|0;else j=c[D+(i<<2)>>2]|0;if(!j)break i;hc[l&1023](r,g+28560+(i<<w<<1)|0,p);break h}default:i=(m<<4)+o|0}while(0);hc[k&1023](r,g+28560+(i<<w<<1)|0,p)}while(0);m=m+4|0}}if(A){l=c[F>>2]|0;k=l}else{k=c[P>>2]|0;l=c[O>>2]|0}o=x<<8;q=(w|0)==0;r=4<<w;m=0;while(1){if((m|0)==16)break g;s=t+(c[v+(m<<2)>>2]|0)|0;i=a[(d[88688+m>>0]|0)+(g+21664)>>0]|0;j=i<<24>>24;if(A?(i<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)hc[c[f+25908+(j<<2)>>2]&1023](s,g+28560+((m<<4)+o<<w<<1)|0,p);else{do if((i|4)<<24>>24==7){if(c[J>>2]&32768>>>m|0){i=s+r+K|0;break}if(q){i=H(d[s+L>>0]|0,16843009)|0;c[_>>2]=i;i=_;break}else{la=oK(e[s+(N<<1)>>1]|0,0,65537,65537)|0;ka=M()|0;i=Y;c[i>>2]=la;c[i+4>>2]=ka;i=Y;break}}else i=0;while(0);hc[c[f+25720+(j<<2)>>2]&1023](s,i,p);j:do switch(a[(d[88688+(m+u)>>0]|0)+(g+27824)>>0]|0){case 0:break;case 1:{i=(m<<4)+o|0;if(q)j=e[g+28560+(i<<1)>>1]|0;else j=c[D+(i<<2)>>2]|0;if(!j){da=126;break j}hc[l&1023](s,g+28560+(i<<w<<1)|0,p);break}default:{i=(m<<4)+o|0;da=126}}while(0);if((da|0)==126){da=0;hc[k&1023](s,g+28560+(i<<w<<1)|0,p)}}m=m+1|0}}while(0);x=x+1|0}j=c[U>>2]|0;if(j){k=c[ia>>2]|0;l=c[ia+4>>2]|0;o=c[ia+8>>2]|0;z=c[ha>>2]|0;do if(c[f+26360>>2]|0){i=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(i){m=1;break}else{j=V;i=W;break e}else{m=(i^1)&1;break}}else m=1;while(0);if((j|0)==2){t=(c[g+832>>2]|0)==(e[(c[f+26356>>2]|0)+((c[$>>2]|0)+-1-(c[f+27e3>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;v=c[ca>>2]|0}else{v=c[ca>>2]|0;t=(v|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}x=0-(p+1+z)|0;r=k+x|0;w=l+x|0;x=o+x|0;y=g+27796+(m<<2)|0;u=c[y>>2]|0;s=v+-1|0;k=u+(v*96|0)|0;if(i){m=(z|0)==0;do if(t){i=(8<<z)+(u+(s*96|0))|0;ka=i;da=c[ka>>2]|0;ka=c[ka+4>>2]|0;j=r+(-7<<z)|0;$=j;aa=c[$+4>>2]|0;la=i;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=j;c[la>>2]=da;c[la+4>>2]=ka;if(m){i=k;k=r+1|0;j=c[i>>2]|0;i=c[i+4>>2]|0;da=154;break}else{aa=i+8|0;l=aa;da=c[l>>2]|0;l=c[l+4>>2]|0;i=j+8|0;ka=i;la=c[ka+4>>2]|0;j=aa;c[j>>2]=c[ka>>2];c[j+4>>2]=la;c[i>>2]=da;c[i+4>>2]=l;i=k;k=1<<z;j=k;k=r+k|0;l=c[i>>2]|0;i=c[i+4>>2]|0;da=153;break}}else{i=k;l=c[i>>2]|0;i=c[i+4>>2]|0;j=1<<z;k=r+j|0;if(m){j=l;da=154}else da=153}while(0);if((da|0)==153){la=k;c[la>>2]=l;c[la+4>>2]=i;la=u+(v*96|0)+8|0;l=c[la+4>>2]|0;m=r+j+8|0;c[m>>2]=c[la>>2];c[m+4>>2]=l;m=j;l=1}else if((da|0)==154){m=k;c[m>>2]=j;c[m+4>>2]=i;m=1;l=0}i=(8<<z)+(u+(v*96|0))|0;ka=i;da=c[ka>>2]|0;ka=c[ka+4>>2]|0;o=9<<z;j=r+o|0;$=j;aa=c[$+4>>2]|0;la=i;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=j;c[la>>2]=da;c[la+4>>2]=ka;if(l){aa=i+8|0;ka=aa;da=c[ka>>2]|0;ka=c[ka+4>>2]|0;la=j+8|0;_=la;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[la>>2]=da;c[la+4>>2]=ka}i=(c[ca>>2]|0)+1|0;q=f+26996|0;if((i|0)<(c[q>>2]|0)?(la=(c[y>>2]|0)+(i*96|0)|0,ka=la,da=c[ka>>2]|0,ka=c[ka+4>>2]|0,ba=r+(17<<z)|0,$=ba,aa=c[$+4>>2]|0,la,c[la>>2]=c[$>>2],c[la+4>>2]=aa,la=ba,c[la>>2]=da,c[la+4>>2]=ka,l):0){_=(c[y>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;ka=_;da=c[ka>>2]|0;ka=c[ka+4>>2]|0;la=ba+8|0;$=la;aa=c[$+4>>2]|0;ba=_;c[ba>>2]=c[$>>2];c[ba+4>>2]=aa;c[la>>2]=da;c[la+4>>2]=ka}if(t){i=(24<<z)+(u+(s*96|0))|0;ka=i;da=c[ka>>2]|0;ka=c[ka+4>>2]|0;k=-7<<z;j=w+k|0;aa=j;ba=c[aa+4>>2]|0;la=i;c[la>>2]=c[aa>>2];c[la+4>>2]=ba;la=j;c[la>>2]=da;c[la+4>>2]=ka;if(l){ba=i+8|0;ka=ba;da=c[ka>>2]|0;ka=c[ka+4>>2]|0;la=j+8|0;$=la;aa=c[$+4>>2]|0;c[ba>>2]=c[$>>2];c[ba+4>>2]=aa;c[la>>2]=da;c[la+4>>2]=ka}j=(40<<z)+(u+(s*96|0))|0;ka=j;da=c[ka>>2]|0;ka=c[ka+4>>2]|0;i=x+k|0;aa=i;ba=c[aa+4>>2]|0;la=j;c[la>>2]=c[aa>>2];c[la+4>>2]=ba;la=i;c[la>>2]=da;c[la+4>>2]=ka;if(l){ba=j+8|0;la=ba;ka=c[la>>2]|0;la=c[la+4>>2]|0;da=i+8|0;$=da;aa=c[$+4>>2]|0;c[ba>>2]=c[$>>2];c[ba+4>>2]=aa;c[da>>2]=ka;c[da+4>>2]=la;da=166}else da=167}else if(l)da=166;else da=167;if((da|0)==166){j=(16<<z)+(u+(v*96|0))|0;ka=j;la=c[ka+4>>2]|0;i=w+m|0;l=i;c[l>>2]=c[ka>>2];c[l+4>>2]=la;i=i+8|0;j=j+8|0;l=1}else if((da|0)==167){i=w+m|0;j=(16<<z)+(u+(v*96|0))|0;l=0}ba=j;ka=c[ba+4>>2]|0;c[i>>2]=c[ba>>2];c[i+4>>2]=ka;i=(24<<z)+(u+(v*96|0))|0;ka=i;ba=c[ka>>2]|0;ka=c[ka+4>>2]|0;j=w+o|0;$=j;aa=c[$+4>>2]|0;la=i;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=j;c[la>>2]=ba;c[la+4>>2]=ka;if(l){i=i+8|0;ba=i;ka=c[ba>>2]|0;ba=c[ba+4>>2]|0;j=j+8|0;aa=j;la=c[aa+4>>2]|0;c[i>>2]=c[aa>>2];c[i+4>>2]=la;c[j>>2]=ka;c[j+4>>2]=ba;j=(32<<z)+(u+(v*96|0))|0;ba=j;ka=c[ba+4>>2]|0;i=x+m|0;la=i;c[la>>2]=c[ba>>2];c[la+4>>2]=ka;i=i+8|0;j=j+8|0}else{i=x+m|0;j=(32<<z)+(u+(v*96|0))|0}ba=j;ka=c[ba+4>>2]|0;j=i;c[j>>2]=c[ba>>2];c[j+4>>2]=ka;j=(40<<z)+(u+(v*96|0))|0;ka=j;ba=c[ka>>2]|0;ka=c[ka+4>>2]|0;i=x+o|0;$=i;aa=c[$+4>>2]|0;la=j;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=i;c[la>>2]=ba;c[la+4>>2]=ka;if(l){aa=j+8|0;ka=aa;ba=c[ka>>2]|0;ka=c[ka+4>>2]|0;la=i+8|0;_=la;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[la>>2]=ba;c[la+4>>2]=ka}i=(c[ca>>2]|0)+1|0;if((i|0)<(c[q>>2]|0)){j=16<<z;la=(c[y>>2]|0)+(i*96|0)+j|0;ka=la;ba=c[ka>>2]|0;ka=c[ka+4>>2]|0;k=17<<z;i=w+k|0;$=i;aa=c[$+4>>2]|0;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=i;c[la>>2]=ba;c[la+4>>2]=ka;if(l){aa=(c[y>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;ka=aa;ba=c[ka>>2]|0;ka=c[ka+4>>2]|0;la=i+8|0;_=la;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[la>>2]=ba;c[la+4>>2]=ka}j=32<<z;la=(c[y>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j|0;ka=la;ba=c[ka>>2]|0;ka=c[ka+4>>2]|0;i=x+k|0;$=i;aa=c[$+4>>2]|0;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=i;c[la>>2]=ba;c[la+4>>2]=ka;if(l){aa=(c[y>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;la=aa;ka=c[la>>2]|0;la=c[la+4>>2]|0;j=i+8|0;ba=j;ca=c[ba+4>>2]|0;i=aa;c[i>>2]=c[ba>>2];c[i+4>>2]=ca;c[j>>2]=ka;c[j+4>>2]=la;j=V;i=W}else{j=V;i=W}}else{j=V;i=W}}else{j=V;i=W}}else{j=V;i=W}}else{$d(f,g,c[ia>>2]|0,c[ia+4>>2]|0,c[ia+8>>2]|0,f+184|0,f+152|0,f+440|0,f+168|0,f+16|0,f+32|0);j=ea&16777216;G=f+28200|0;i=f+140|0;F=f+144|0;E=g+21660|0;D=g+28560|0;h=ea&1}while(0);C=(h|0)==0;A=(ea&2|0)==0;B=g+21856|0;x=(fa|0)==0;y=f+128|0;z=(j|0)==0;o=(j|0)!=0;w=o?4:1;o=o?i:F;q=f+116|0;r=f+120|0;m=0;while(1){if((m|0)==3)break d;s=c[ha>>2]|0;t=c[ia+(m<<2)>>2]|0;u=m<<4;v=n+(u<<2)|0;k:do if(C){if(A){if(!(c[B>>2]&15))break;if(x)if(z){kc[c[q>>2]&127](t,v,g+28560+(m<<8<<s<<1)|0,p,(m*40|0)+(g+27824)|0);break}else{kc[c[r>>2]&127](t,v,g+28560+(m<<8<<s<<1)|0,p,(m*40|0)+(g+27824)|0);break}i=c[o>>2]|0;j=m<<8;h=0;while(1){if(h>>>0>=16)break k;if(a[(d[88688+(h+u)>>0]|0)+(g+27824)>>0]|0)hc[i&1023](t+(c[v+(h<<2)>>2]|0)|0,g+28560+((h<<4)+j<<s<<1)|0,p);h=h+w|0}}if(x){kc[c[y>>2]&127](t,v,g+28560+(m<<8<<s<<1)|0,p,(m*40|0)+(g+27824)|0);break}if((c[(c[G>>2]|0)+4>>2]|0)==244?(ga=c[E>>2]|0,(ga+-1|0)>>>0<2):0){ic[c[f+25944+(ga<<2)>>2]&255](t,v,g+28560+(m<<8<<s<<1)|0,p);break}j=m<<8;k=(s|0)==0;h=0;while(1){if((h|0)==16)break k;l=(h<<4)+j|0;if(!(a[(d[88688+(h+u)>>0]|0)+(g+27824)>>0]|0)){if(k)i=e[g+28560+(l<<1)>>1]|0;else i=c[D+(l<<2)>>2]|0;if(i|0)da=194}else da=194;if((da|0)==194){da=0;hc[c[F>>2]&1023](t+(c[v+(h<<2)>>2]|0)|0,g+28560+(l<<s<<1)|0,p)}h=h+1|0}}while(0);m=m+1|0}}else{if(!(c[ha>>2]|0)){j=g+27780|0;i=0;while(1){if((i|0)==3)break d;k=ia+(i<<2)|0;l=i<<8;h=0;while(1){if((h|0)==16)break;m=(c[k>>2]|0)+(H(h,p)|0)|0;n=(c[j>>2]|0)+l+(h<<4)|0;o=m+16|0;do{a[m>>0]=a[n>>0]|0;m=m+1|0;n=n+1|0}while((m|0)<(o|0));h=h+1|0}i=i+1|0}}m=c[(c[f+28200>>2]|0)+1184>>2]|0;HI(_,c[g+27780>>2]|0,m*768|0);j=0;while(1){if((j|0)==3)break;k=ia+(j<<2)|0;i=0;while(1){if((i|0)==16)break;l=(c[k>>2]|0)+(H(i,p)|0)|0;h=0;while(1){if((h|0)==16)break;la=(Yz(_,m)|0)&65535;b[l+(h<<1)>>1]=la;h=h+1|0}i=i+1|0}j=j+1|0}}while(0);Nb=ja;return}function wc(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=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;Y=Nb;Nb=Nb+32|0;X=Y+8|0;A=Y;F=g+21788|0;i=c[F>>2]|0;D=g+21792|0;k=c[D>>2]|0;C=g+21796|0;j=c[C>>2]|0;I=c[(c[f+24364>>2]|0)+(j<<2)>>2]|0;y=g+848|0;T=f+28200|0;h=c[T>>2]|0;if(!(c[y>>2]|0))P=(c[h+16>>2]|0)!=0;else P=0;u=16>>>(c[f+25668>>2]|0);U=(c[h+12>>2]|0)==2;S=c[f+24316>>2]|0;V=f+25652|0;t=c[V>>2]|0;B=i<<t;W=g+21772|0;l=c[W>>2]|0;m=(c[S>>2]|0)+((H(l,k)|0)+B<<4)|0;B=B<<3;h=g+21776|0;o=H(H(u,k)|0,c[h>>2]|0)|0;n=(c[S+4>>2]|0)+B+o|0;o=(c[S+8>>2]|0)+B+o|0;B=f+12|0;t=m+(H(l,i<<2&12)|0)+(64<<t)|0;hc[c[B>>2]&1023](t,l,4);l=n+(H(c[F>>2]&7,c[h>>2]|0)|0)|0;hc[c[B>>2]&1023](l+(64<<c[V>>2])|0,o-n|0,2);l=g+23412|0;a[(c[f+26372>>2]|0)+j>>0]=c[l>>2];B=g+21828|0;t=c[B>>2]|0;i=c[W>>2]|0;a:do if(t){q=i<<1;c[g+21780>>2]=q;p=c[h>>2]|0;r=p<<1;c[g+21784>>2]=r;s=f+26152|0;S=(k&1|0)==0;W=m+(H(i,-15)|0)|0;p=H(1-u|0,p)|0;o=S?o:o+p|0;p=S?n:n+p|0;n=S?m:W;if(!(c[f+26360>>2]|0)){L=q;W=r;R=s;K=n;S=p}else{m=(I&8|0)==0;j=c[l>>2]|0;i=0;while(1){if(i>>>0>=j>>>0){L=q;W=r;R=s;K=n;S=p;break a}b:do if(12288<<(i<<1)&I|0){if(!m){S=g+28272+(i*40|0)+12|0;W=H((a[S>>0]|0)+16^c[D>>2]&1,16843009)|0;c[S>>2]=W;c[g+28272+(i*40|0)+20>>2]=W;c[g+28272+(i*40|0)+28>>2]=W;c[g+28272+(i*40|0)+36>>2]=W;break}h=0;while(1){if(h>>>0>=16)break b;k=(d[88688+h>>0]|0)+(g+28272+(i*40|0))|0;l=a[k>>0]|0;if(l<<24>>24>-1){W=(c[D>>2]&1^(l<<24>>24)+16)*257&65535;b[k>>1]=W;b[k+8>>1]=W}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21780>>2]=i;W=c[h>>2]|0;c[g+21784>>2]=W;L=i;R=f+25960|0;K=m;S=n}while(0);c:do if(!(I&4)){G=(I&7|0)!=0;d:do if(G){z=g+868|0;i=c[z>>2]|0;e:do if(i|0){w=c[V>>2]|0;do if(c[f+26360>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[D>>2]&1)if(h){h=1;break}else break e;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){q=(c[g+832>>2]|0)==(e[(c[f+26356>>2]|0)+((c[C>>2]|0)+-1-(c[f+27e3>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;u=c[F>>2]|0}else{u=c[F>>2]|0;q=(u|0)>0;i=(c[D>>2]|0)>((t|0)!=0|0)&1}p=K+(0-(L+1+w))|0;v=0-(W+1+w)|0;s=S+v|0;v=o+v|0;n=g+27796+(h<<2)|0;t=c[n>>2]|0;r=u+-1|0;k=t+(u*96|0)|0;if(i|0){l=(w|0)==0;do if(q){h=(8<<w)+(t+(r*96|0))|0;m=h;j=c[m>>2]|0;m=c[m+4>>2]|0;i=p+(-7<<w)|0;_=i;Z=c[_+4>>2]|0;Q=h;c[Q>>2]=c[_>>2];c[Q+4>>2]=Z;Q=i;c[Q>>2]=j;c[Q+4>>2]=m;if(l){h=k;j=p+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;Q=71;break}else{Z=h+8|0;l=Z;j=c[l>>2]|0;l=c[l+4>>2]|0;h=i+8|0;_=h;Q=c[_+4>>2]|0;i=Z;c[i>>2]=c[_>>2];c[i+4>>2]=Q;c[h>>2]=j;c[h+4>>2]=l;h=k;l=1<<w;j=l;l=p+l|0;i=c[h>>2]|0;h=c[h+4>>2]|0;Q=70;break}}else{h=k;i=c[h>>2]|0;h=c[h+4>>2]|0;j=1<<w;m=p+j|0;if(l){j=m;Q=71}else{l=m;Q=70}}while(0);if((Q|0)==70){Z=l;_=c[Z+4>>2]|0;m=k;c[m>>2]=c[Z>>2];c[m+4>>2]=_;m=l;c[m>>2]=i;c[m+4>>2]=h;m=t+(u*96|0)+8|0;_=m;Z=c[_>>2]|0;_=c[_+4>>2]|0;j=p+j+8|0;k=j;l=c[k+4>>2]|0;c[m>>2]=c[k>>2];c[m+4>>2]=l;c[j>>2]=Z;c[j+4>>2]=_;j=1}else if((Q|0)==71){m=j;Z=c[m+4>>2]|0;_=k;c[_>>2]=c[m>>2];c[_+4>>2]=Z;c[j>>2]=i;c[j+4>>2]=h;j=0}h=(8<<w)+(t+(u*96|0))|0;Z=h;m=c[Z>>2]|0;Z=c[Z+4>>2]|0;i=p+(9<<w)|0;k=i;l=c[k+4>>2]|0;_=h;c[_>>2]=c[k>>2];c[_+4>>2]=l;_=i;c[_>>2]=m;c[_+4>>2]=Z;if(j){l=h+8|0;Z=l;m=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=i+8|0;i=_;k=c[i+4>>2]|0;c[l>>2]=c[i>>2];c[l+4>>2]=k;c[_>>2]=m;c[_+4>>2]=Z}h=(c[F>>2]|0)+1|0;if((h|0)<(c[f+26996>>2]|0)?(_=(c[n>>2]|0)+(h*96|0)|0,Z=_,m=c[Z>>2]|0,Z=c[Z+4>>2]|0,x=p+(17<<w)|0,l=x,p=c[l+4>>2]|0,_,c[_>>2]=c[l>>2],c[_+4>>2]=p,_=x,c[_>>2]=m,c[_+4>>2]=Z,j):0){l=(c[n>>2]|0)+(((c[F>>2]|0)+1|0)*96|0)+8|0;Z=l;p=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=x+8|0;m=_;n=c[m+4>>2]|0;x=l;c[x>>2]=c[m>>2];c[x+4>>2]=n;c[_>>2]=p;c[_+4>>2]=Z}l=16<<w;if(q){h=t+(r*96|0)+l|0;Z=h;x=c[Z>>2]|0;Z=c[Z+4>>2]|0;k=-7<<w;i=s+k|0;p=i;q=c[p+4>>2]|0;_=h;c[_>>2]=c[p>>2];c[_+4>>2]=q;_=i;c[_>>2]=x;c[_+4>>2]=Z;if(j){q=h+8|0;Z=q;x=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=i+8|0;n=_;p=c[n+4>>2]|0;c[q>>2]=c[n>>2];c[q+4>>2]=p;c[_>>2]=x;c[_+4>>2]=Z}i=(24<<w)+(t+(r*96|0))|0;Z=i;x=c[Z>>2]|0;Z=c[Z+4>>2]|0;h=v+k|0;q=h;r=c[q+4>>2]|0;_=i;c[_>>2]=c[q>>2];c[_+4>>2]=r;_=h;c[_>>2]=x;c[_+4>>2]=Z;if(j){x=i+8|0;_=x;Z=c[_>>2]|0;_=c[_+4>>2]|0;j=h+8|0;q=j;r=c[q+4>>2]|0;c[x>>2]=c[q>>2];c[x+4>>2]=r;c[j>>2]=Z;c[j+4>>2]=_;j=1}else j=0}i=t+(u*96|0)+l|0;Z=i;x=c[Z>>2]|0;Z=c[Z+4>>2]|0;h=s+1+w|0;r=h;s=c[r+4>>2]|0;_=i;c[_>>2]=c[r>>2];c[_+4>>2]=s;_=h;c[_>>2]=x;c[_+4>>2]=Z;if(j){s=i+8|0;Z=s;x=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=h+8|0;q=_;r=c[q+4>>2]|0;c[s>>2]=c[q>>2];c[s+4>>2]=r;c[_>>2]=x;c[_+4>>2]=Z}i=(24<<w)+(t+(u*96|0))|0;Z=i;x=c[Z>>2]|0;Z=c[Z+4>>2]|0;h=v+1+w|0;v=h;w=c[v+4>>2]|0;_=i;c[_>>2]=c[v>>2];c[_+4>>2]=w;_=h;c[_>>2]=x;c[_+4>>2]=Z;if(j){w=i+8|0;Z=w;x=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=h+8|0;u=_;v=c[u+4>>2]|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;c[_>>2]=x;c[_+4>>2]=Z}}}while(0);w=g+21656|0;fc[c[f+25828+(c[w>>2]<<2)>>2]&255](S,W);fc[c[f+25828+(c[w>>2]<<2)>>2]&255](o,W);w=c[V>>2]|0;h=c[y>>2]|0;f:do if(!(I&1)){fc[c[f+25872+(c[g+21660>>2]<<2)>>2]&255](K,L);if(a[g+27824>>0]|0){if(!P){hc[c[f+132>>2]&1023](g+28560|0,g+31632|0,c[(c[(c[f+28196>>2]|0)+173788>>2]|0)+(h<<6)>>2]|0);break}l=g+28560|0;i=(w|0)==0;j=g+31632|0;h=0;while(1){if((h|0)==16)break f;k=d[76096+h>>0]|0;if(i)b[g+28560+(k<<1)>>1]=b[g+31632+(h<<1)>>1]|0;else c[l+(k<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}}}else{if(I&16777216|0){if(P){k=c[f+140>>2]|0;j=k}else{j=c[f+104>>2]|0;k=c[f+112>>2]|0}m=g+21756|0;n=g+21764|0;p=f+29696|0;q=(w|0)==0;r=g+28560|0;l=0;while(1){if(l>>>0>=16)break f;s=K+(c[R+(l<<2)>>2]|0)|0;h=d[88688+l>>0]|0;_=a[g+21664+h>>0]|0;i=_<<24>>24;do if(P?(_<<24>>24<2?(c[(c[T>>2]|0)+4>>2]|0)==244:0):0)if((c[p>>2]|0)>>>0<151){hc[c[f+25916+(i<<2)>>2]&1023](s,g+28560+(l<<4<<w<<1)|0,L);break}else{kc[c[f+25924+(i<<2)>>2]&127](s,g+28560+(l<<4<<w<<1)|0,c[m>>2]<<l&32768,c[n>>2]<<l&16384,L);break}else Q=98;while(0);g:do if((Q|0)==98){Q=0;_=a[g+27824+h>>0]|0;ic[c[f+25780+(i<<2)>>2]&255](s,c[m>>2]<<l&32768,c[n>>2]<<l&16384,L);switch(_<<24>>24){case 0:break g;case 1:{h=l<<4;if(q)i=e[g+28560+(h<<1)>>1]|0;else i=c[r+(h<<2)>>2]|0;if(i){hc[k&1023](s,g+28560+(h<<w<<1)|0,L);break g}break}default:h=l<<4}hc[j&1023](s,g+28560+(h<<w<<1)|0,L)}while(0);l=l+4|0}}if(P){l=c[f+144>>2]|0;k=l}else{k=c[f+100>>2]|0;l=c[f+108>>2]|0}n=g+21764|0;p=(w|0)==0;q=4<<w;r=0-L|0;s=3-L|0;t=3-((L|0)/2|0)|0;u=g+28560|0;m=0;while(1){if((m|0)==16)break f;v=K+(c[R+(m<<2)>>2]|0)|0;i=d[88688+m>>0]|0;h=a[g+21664+i>>0]|0;j=h<<24>>24;if(P?(h<<24>>24<2?(c[(c[T>>2]|0)+4>>2]|0)==244:0):0)hc[c[f+25908+(j<<2)>>2]&1023](v,g+28560+(m<<4<<w<<1)|0,L);else{do if((h|4)<<24>>24==7){if(c[n>>2]&32768>>>m|0){h=v+q+r|0;break}if(p){h=H(d[v+s>>0]|0,16843009)|0;c[X>>2]=h;h=X;break}else{Z=oK(e[v+(t<<1)>>1]|0,0,65537,65537)|0;_=M()|0;h=A;c[h>>2]=Z;c[h+4>>2]=_;h=A;break}}else h=0;while(0);hc[c[f+25720+(j<<2)>>2]&1023](v,h,L);switch(a[g+27824+i>>0]|0){case 0:break;case 1:{h=m<<4;if(p)i=e[g+28560+(h<<1)>>1]|0;else i=c[u+(h<<2)>>2]|0;if(!i)Q=128;else hc[l&1023](v,g+28560+(h<<w<<1)|0,L);break}default:{h=m<<4;Q=128}}if((Q|0)==128){Q=0;hc[k&1023](v,g+28560+(h<<w<<1)|0,L)}}m=m+1|0}}while(0);i=c[z>>2]|0;if(i|0){v=c[V>>2]|0;do if(c[f+26360>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[D>>2]&1)if(h){j=1;break}else break d;else{j=(h^1)&1;break}}else j=1;while(0);if((i|0)==2){p=(c[g+832>>2]|0)==(e[(c[f+26356>>2]|0)+((c[C>>2]|0)+-1-(c[f+27e3>>2]|0)<<1)>>1]|0);h=c[g+21732>>2]|0;t=c[F>>2]|0}else{t=c[F>>2]|0;p=(t|0)>0;h=(c[D>>2]|0)>((c[B>>2]|0)!=0|0)&1}n=K+(0-(L+1+v))|0;u=0-(W+1+v)|0;r=S+u|0;u=o+u|0;m=g+27796+(j<<2)|0;s=c[m>>2]|0;q=t+-1|0;j=s+(t*96|0)|0;if(h|0){l=(v|0)==0;do if(p){h=(8<<v)+(s+(q*96|0))|0;Z=h;Q=c[Z>>2]|0;Z=c[Z+4>>2]|0;i=n+(-7<<v)|0;C=i;D=c[C+4>>2]|0;_=h;c[_>>2]=c[C>>2];c[_+4>>2]=D;_=i;c[_>>2]=Q;c[_+4>>2]=Z;if(l){h=j;j=n+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;Q=155;break}else{D=h+8|0;k=D;Q=c[k>>2]|0;k=c[k+4>>2]|0;h=i+8|0;Z=h;_=c[Z+4>>2]|0;i=D;c[i>>2]=c[Z>>2];c[i+4>>2]=_;c[h>>2]=Q;c[h+4>>2]=k;h=j;j=1<<v;i=j;j=n+j|0;k=c[h>>2]|0;h=c[h+4>>2]|0;Q=154;break}}else{h=j;k=c[h>>2]|0;h=c[h+4>>2]|0;i=1<<v;j=n+i|0;if(l){i=k;Q=155}else Q=154}while(0);if((Q|0)==154){Z=j;c[Z>>2]=k;c[Z+4>>2]=h;Z=s+(t*96|0)+8|0;_=c[Z+4>>2]|0;j=n+i+8|0;c[j>>2]=c[Z>>2];c[j+4>>2]=_;j=1}else if((Q|0)==155){c[j>>2]=i;c[j+4>>2]=h;j=0}h=(8<<v)+(s+(t*96|0))|0;Z=h;D=c[Z>>2]|0;Z=c[Z+4>>2]|0;i=n+(9<<v)|0;B=i;C=c[B+4>>2]|0;_=h;c[_>>2]=c[B>>2];c[_+4>>2]=C;_=i;c[_>>2]=D;c[_+4>>2]=Z;if(j){C=h+8|0;Z=C;D=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=i+8|0;A=_;B=c[A+4>>2]|0;c[C>>2]=c[A>>2];c[C+4>>2]=B;c[_>>2]=D;c[_+4>>2]=Z}h=(c[F>>2]|0)+1|0;if((h|0)<(c[f+26996>>2]|0)?(_=(c[m>>2]|0)+(h*96|0)|0,Z=_,D=c[Z>>2]|0,Z=c[Z+4>>2]|0,E=n+(17<<v)|0,B=E,C=c[B+4>>2]|0,_,c[_>>2]=c[B>>2],c[_+4>>2]=C,_=E,c[_>>2]=D,c[_+4>>2]=Z,j):0){B=(c[m>>2]|0)+(((c[F>>2]|0)+1|0)*96|0)+8|0;Z=B;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=E+8|0;C=_;D=c[C+4>>2]|0;E=B;c[E>>2]=c[C>>2];c[E+4>>2]=D;c[_>>2]=F;c[_+4>>2]=Z}l=16<<v;if(p){h=s+(q*96|0)+l|0;Z=h;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;k=-7<<v;i=r+k|0;D=i;E=c[D+4>>2]|0;_=h;c[_>>2]=c[D>>2];c[_+4>>2]=E;_=i;c[_>>2]=F;c[_+4>>2]=Z;if(j){E=h+8|0;Z=E;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=i+8|0;C=_;D=c[C+4>>2]|0;c[E>>2]=c[C>>2];c[E+4>>2]=D;c[_>>2]=F;c[_+4>>2]=Z}i=(24<<v)+(s+(q*96|0))|0;Z=i;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;h=u+k|0;D=h;E=c[D+4>>2]|0;_=i;c[_>>2]=c[D>>2];c[_+4>>2]=E;_=h;c[_>>2]=F;c[_+4>>2]=Z;if(j){F=i+8|0;_=F;Z=c[_>>2]|0;_=c[_+4>>2]|0;j=h+8|0;D=j;E=c[D+4>>2]|0;c[F>>2]=c[D>>2];c[F+4>>2]=E;c[j>>2]=Z;c[j+4>>2]=_;j=1}else j=0}i=s+(t*96|0)+l|0;Z=i;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;h=r+1+v|0;D=h;E=c[D+4>>2]|0;_=i;c[_>>2]=c[D>>2];c[_+4>>2]=E;_=h;c[_>>2]=F;c[_+4>>2]=Z;if(j){E=i+8|0;Z=E;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=h+8|0;C=_;D=c[C+4>>2]|0;c[E>>2]=c[C>>2];c[E+4>>2]=D;c[_>>2]=F;c[_+4>>2]=Z}i=(24<<v)+(s+(t*96|0))|0;Z=i;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;h=u+1+v|0;D=h;E=c[D+4>>2]|0;_=i;c[_>>2]=c[D>>2];c[_+4>>2]=E;_=h;c[_>>2]=F;c[_+4>>2]=Z;if(j){E=i+8|0;Z=E;F=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=h+8|0;C=_;D=c[C+4>>2]|0;c[E>>2]=c[C>>2];c[E+4>>2]=D;c[_>>2]=F;c[_+4>>2]=Z}}}}else{h=f+184|0;i=f+152|0;j=f+440|0;k=f+168|0;l=f+16|0;m=f+32|0;if(U){Vd(f,g,K,S,o,h,i,j,k,l,m);break}else{Wd(f,g,K,S,o,h,i,j,k,l,m);break}}while(0);n=c[V>>2]|0;h:do if(!(I&1)){if(!(I&2)){if(!(c[g+21856>>2]&15))break;h=I&16777216;if(!P)if(!h){kc[c[f+116>>2]&127](K,R,g+28560|0,L,g+27824|0);break}else{kc[c[f+120>>2]&127](K,R,g+28560|0,L,g+27824|0);break}j=(h|0)!=0;i=j?4:1;j=c[(j?f+140|0:f+144|0)>>2]|0;h=0;while(1){if(h>>>0>=16)break h;if(a[(d[88688+h>>0]|0)+(g+27824)>>0]|0)hc[j&1023](K+(c[R+(h<<2)>>2]|0)|0,g+28560+(h<<4<<n<<1)|0,L);h=h+i|0}}if(!P){kc[c[f+128>>2]&127](K,R,g+28560|0,L,g+27824|0);break}if((c[(c[T>>2]|0)+4>>2]|0)==244?(J=c[g+21660>>2]|0,(J+-1|0)>>>0<2):0){ic[c[f+25944+(J<<2)>>2]&255](K,R,g+28560|0,L);break}j=(n|0)==0;k=f+144|0;l=g+28560|0;i=0;while(1){if((i|0)==16)break h;m=i<<4;if(!(a[(d[88688+i>>0]|0)+(g+27824)>>0]|0)){if(j)h=e[g+28560+(m<<1)>>1]|0;else h=c[l+(m<<2)>>2]|0;if(h|0)Q=186}else Q=186;if((Q|0)==186){Q=0;hc[c[k>>2]&1023](K+(c[R+(i<<2)>>2]|0)|0,g+28560+(m<<n<<1)|0,L)}i=i+1|0}}while(0);if(c[g+21856>>2]&48|0){c[X>>2]=S;h=X+4|0;c[h>>2]=o;i:do if(P){if((G?(c[(c[T>>2]|0)+4>>2]|0)==244:0)?(N=g+21656|0,O=c[N>>2]|0,(O+-1|0)>>>0<2):0){ic[c[f+25932+(O<<2)>>2]&255](S,R+64|0,g+28560+(256<<c[V>>2]<<1)|0,W);ic[c[f+25932+(c[N>>2]<<2)>>2]&255](c[h>>2]|0,R+128|0,g+28560+(512<<c[V>>2]<<1)|0,W);break}p=c[f+144>>2]|0;q=g+28560|0;o=1;while(1){if((o|0)==3)break i;j=o<<4;m=j|4;r=X+(o+-1<<2)|0;i=j;while(1){if(i>>>0>=m>>>0)break;k=c[V>>2]|0;l=i<<4;if(!(a[(d[88688+i>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(l<<1)>>1]|0;else h=c[q+(l<<2)>>2]|0;if(h|0)Q=214}else Q=214;if((Q|0)==214){Q=0;hc[p&1023]((c[r>>2]|0)+(c[R+(i<<2)>>2]|0)|0,g+28560+(l<<k<<1)|0,W)}i=i+1|0}j:do if(U){n=j|8;i=m;while(1){if(i>>>0>=n>>>0)break j;j=i+4|0;k=c[V>>2]|0;l=i<<4;if(!(a[(d[88688+j>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(l<<1)>>1]|0;else h=c[q+(l<<2)>>2]|0;if(h|0)Q=224}else Q=224;if((Q|0)==224){Q=0;hc[p&1023]((c[r>>2]|0)+(c[R+(j<<2)>>2]|0)|0,g+28560+(l<<k<<1)|0,W)}i=i+1|0}}while(0);o=o+1|0}}else{h=c[g+852>>2]|0;if(U){h=h+3|0;i=(c[g+856>>2]|0)+3|0}else i=c[g+856>>2]|0;if(a[g+27864>>0]|0)fc[c[f+136>>2]&255](g+28560+(256<<c[V>>2]<<1)|0,c[(c[(c[f+28196>>2]|0)+173788+((G?1:4)<<2)>>2]|0)+(h<<6)>>2]|0);if(a[g+27904>>0]|0)fc[c[f+136>>2]&255](g+28560+(512<<c[V>>2]<<1)|0,c[(c[(c[f+28196>>2]|0)+173788+((G?2:5)<<2)>>2]|0)+(i<<6)>>2]|0);kc[c[f+124>>2]&127](X,R,g+28560|0,W,g+27824|0)}while(0)}}else{h=c[T>>2]|0;m=c[h+1184>>2]|0;if(!(c[V>>2]|0)){i=g+27780|0;h=0;while(1){if((h|0)==16)break;j=K+(H(h,L)|0)|0;k=(c[i>>2]|0)+(h<<4)|0;l=j+16|0;do{a[j>>0]=a[k>>0]|0;j=j+1|0;k=k+1|0}while((j|0)<(l|0));h=h+1|0}if(!(c[(c[T>>2]|0)+12>>2]|0)){i=1<<m+-1&255;h=0;while(1){if((h|0)==8)break c;_=H(h,W)|0;jq(S+_|0,i|0,8)|0;jq(o+_|0,i|0,8)|0;h=h+1|0}}else{i=(c[i>>2]|0)+256|0;j=i+(u<<3)|0;h=0;while(1){if((h|0)>=(u|0))break c;_=H(h,W)|0;Z=h<<3;X=i+Z|0;U=X;U=d[U>>0]|d[U+1>>0]<<8|d[U+2>>0]<<16|d[U+3>>0]<<24;X=X+4|0;X=d[X>>0]|d[X+1>>0]<<8|d[X+2>>0]<<16|d[X+3>>0]<<24;g=S+_|0;V=g;a[V>>0]=U;a[V+1>>0]=U>>8;a[V+2>>0]=U>>16;a[V+3>>0]=U>>24;g=g+4|0;a[g>>0]=X;a[g+1>>0]=X>>8;a[g+2>>0]=X>>16;a[g+3>>0]=X>>24;Z=j+Z|0;g=Z;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;Z=Z+4|0;Z=d[Z>>0]|d[Z+1>>0]<<8|d[Z+2>>0]<<16|d[Z+3>>0]<<24;_=o+_|0;X=_;a[X>>0]=g;a[X+1>>0]=g>>8;a[X+2>>0]=g>>16;a[X+3>>0]=g>>24;_=_+4|0;a[_>>0]=Z;a[_+1>>0]=Z>>8;a[_+2>>0]=Z>>16;a[_+3>>0]=Z>>24;h=h+1|0}}}HI(X,c[g+27780>>2]|0,H(m,e[162472+(c[h+12>>2]<<1)>>1]|0)|0);i=0;while(1){if((i|0)==16)break;j=K+(H(i,L)|0)|0;h=0;while(1){if((h|0)==16)break;_=(Yz(X,m)|0)&65535;b[j+(h<<1)>>1]=_;h=h+1|0}i=i+1|0}k:do if(!(c[(c[T>>2]|0)+12>>2]|0)){j=1<<m+-1&65535;i=0;while(1){if((i|0)>=(u|0))break k;l=H(i,W)|0;k=S+l|0;l=o+l|0;h=0;while(1){if((h|0)==8)break;b[l+(h<<1)>>1]=j;b[k+(h<<1)>>1]=j;h=h+1|0}i=i+1|0}}else{i=0;while(1){if((i|0)>=(u|0))break;j=S+(H(i,W)|0)|0;h=0;while(1){if((h|0)==8)break;_=(Yz(X,m)|0)&65535;b[j+(h<<1)>>1]=_;h=h+1|0}i=i+1|0}i=0;while(1){if((i|0)>=(u|0))break k;j=o+(H(i,W)|0)|0;h=0;while(1){if((h|0)==8)break;_=(Yz(X,m)|0)&65535;b[j+(h<<1)>>1]=_;h=h+1|0}i=i+1|0}}while(0)}while(0);Nb=Y;return}function xc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=Nb;Nb=Nb+16|0;n=w;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=c[284144]|0;d=m>>>a;if(d&3|0){b=(d&1^1)+a|0;a=1136616+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[284144]=m&~(1<<b);else{c[g+12>>2]=a;c[d>>2]=g}v=b<<3;c[e+4>>2]=v|3;v=e+v+4|0;c[v>>2]=c[v>>2]|1;v=f;Nb=w;return v|0}l=c[284146]|0;if(k>>>0>l>>>0){if(d|0){b=2<<a;b=d<<a&(b|0-b);b=(b&0-b)+-1|0;i=b>>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=1136616+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=m&~(1<<e);c[284144]=a}else{c[d+12>>2]=b;c[a>>2]=d;a=m}v=e<<3;h=v-k|0;c[g+4>>2]=k|3;f=g+k|0;c[f+4>>2]=h|1;c[g+v>>2]=h;if(l|0){e=c[284149]|0;b=l>>>3;d=1136616+(b<<1<<2)|0;b=1<<b;if(!(a&b)){c[284144]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[284146]=h;c[284149]=f;v=i;Nb=w;return v|0}g=c[284145]|0;if(g){d=(g&0-g)+-1|0;f=d>>>12&16;d=d>>>f;e=d>>>5&8;d=d>>>e;h=d>>>2&4;d=d>>>h;i=d>>>1&2;d=d>>>i;j=d>>>1&1;j=c[1136880+((e|f|h|i|j)+(d>>>j)<<2)>>2]|0;d=j;i=j;j=(c[j+4>>2]&-8)-k|0;while(1){a=c[d+16>>2]|0;if(!a){a=c[d+20>>2]|0;if(!a)break}h=(c[a+4>>2]&-8)-k|0;f=h>>>0<j>>>0;d=a;i=f?a:i;j=f?h:j}h=i+k|0;if(h>>>0>i>>>0){f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[i+28>>2]|0;a=1136880+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[284145]=g&~(1<<b);break}}else{v=f+16|0;c[((c[v>>2]|0)==(i|0)?v:f+20|0)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[i+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(j>>>0<16){v=j+k|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}else{c[i+4>>2]=k|3;c[h+4>>2]=j|1;c[h+j>>2]=j;if(l|0){e=c[284149]|0;b=l>>>3;d=1136616+(b<<1<<2)|0;b=1<<b;if(!(b&m)){c[284144]=b|m;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[284146]=j;c[284149]=h}v=i+8|0;Nb=w;return v|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;e=c[284145]|0;if(e){f=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{m=(a+1048320|0)>>>16&8;q=a<<m;i=(q+520192|0)>>>16&4;q=q<<i;j=(q+245760|0)>>>16&2;j=14-(i|m|j)+(q<<j>>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;d=c[1136880+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;q=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(c[d+4>>2]&-8)-k|0;if(h>>>0<f>>>0)if(!h){a=d;f=0;q=65;break a}else{a=d;f=h}q=c[d+20>>2]|0;d=c[d+16+(i>>>31<<2)>>2]|0;g=(q|0)==0|(q|0)==(d|0)?g:q;if(!d){d=g;q=61;break}else i=i<<1}}while(0);if((q|0)==61){if((d|0)==0&(a|0)==0){a=2<<j;a=(a|0-a)&e;if(!a){m=k;break}m=(a&0-a)+-1|0;h=m>>>12&16;m=m>>>h;g=m>>>5&8;m=m>>>g;i=m>>>2&4;m=m>>>i;j=m>>>1&2;m=m>>>j;d=m>>>1&1;a=0;d=c[1136880+((g|h|i|j|d)+(m>>>d)<<2)>>2]|0}if(!d){i=a;h=f}else q=65}if((q|0)==65){g=d;while(1){m=(c[g+4>>2]&-8)-k|0;d=m>>>0<f>>>0;f=d?m:f;a=d?g:a;d=c[g+16>>2]|0;if(!d)d=c[g+20>>2]|0;if(!d){i=a;h=f;break}else g=d}}if(((i|0)!=0?h>>>0<((c[284146]|0)-k|0)>>>0:0)?(l=i+k|0,l>>>0>i>>>0):0){g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){f=b+20|0;d=c[f>>2]|0;if(!d){f=b+16|0;d=c[f>>2]|0;if(!d)break;else{b=d;a=f}}else{b=d;a=f}}c[a>>2]=0}else{v=c[i+8>>2]|0;c[v+12>>2]=b;c[b+8>>2]=v}while(0);do if(g){a=c[i+28>>2]|0;d=1136880+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<<a);c[284145]=e;break}}else{v=g+16|0;c[((c[v>>2]|0)==(i|0)?v:g+20|0)>>2]=b;if(!b)break}c[b+24>>2]=g;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);b:do if(h>>>0<16){v=h+k|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}else{c[i+4>>2]=k|3;c[l+4>>2]=h|1;c[l+h>>2]=h;b=h>>>3;if(h>>>0<256){d=1136616+(b<<1<<2)|0;a=c[284144]|0;b=1<<b;if(!(a&b)){c[284144]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=l;c[b+12>>2]=l;c[l+8>>2]=b;c[l+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{u=(b+1048320|0)>>>16&8;v=b<<u;t=(v+520192|0)>>>16&4;v=v<<t;d=(v+245760|0)>>>16&2;d=14-(t|u|d)+(v<<d>>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=1136880+(d<<2)|0;c[l+28>>2]=d;a=l+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<<d;if(!(e&a)){c[284145]=e|a;c[b>>2]=l;c[l+24>>2]=b;c[l+12>>2]=l;c[l+8>>2]=l;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(h|0)){e=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{e=e<<1;b=a}}c[d>>2]=l;c[l+24>>2]=b;c[l+12>>2]=l;c[l+8>>2]=l;break b}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=l;c[u>>2]=l;c[l+8>>2]=v;c[l+12>>2]=b;c[l+24>>2]=0}while(0);v=i+8|0;Nb=w;return v|0}else m=k}else m=k}else m=-1;while(0);d=c[284146]|0;if(d>>>0>=m>>>0){b=d-m|0;a=c[284149]|0;if(b>>>0>15){v=a+m|0;c[284149]=v;c[284146]=b;c[v+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=m|3}else{c[284146]=0;c[284149]=0;c[a+4>>2]=d|3;v=a+d+4|0;c[v>>2]=c[v>>2]|1}v=a+8|0;Nb=w;return v|0}h=c[284147]|0;if(h>>>0>m>>>0){t=h-m|0;c[284147]=t;v=c[284150]|0;u=v+m|0;c[284150]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;Nb=w;return v|0}if(!(c[284262]|0)){c[284264]=4096;c[284263]=4096;c[284265]=-1;c[284266]=-1;c[284267]=0;c[284255]=0;c[284262]=n&-16^1431655768;a=4096}else a=c[284264]|0;i=m+48|0;j=m+47|0;g=a+j|0;f=0-a|0;k=g&f;if(k>>>0<=m>>>0){v=0;Nb=w;return v|0}a=c[284254]|0;if(a|0?(l=c[284252]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){v=0;Nb=w;return v|0}d:do if(!(c[284255]&4)){d=c[284150]|0;e:do if(d){e=1137024;while(1){n=c[e>>2]|0;if(n>>>0<=d>>>0?(n+(c[e+4>>2]|0)|0)>>>0>d>>>0:0)break;a=c[e+8>>2]|0;if(!a){q=128;break e}else e=a}b=g-h&f;if(b>>>0<2147483647){a=Pz(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[e+4>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;q=145;break d}}else{e=a;q=136}}else b=0}else q=128;while(0);do if((q|0)==128){d=Pz(0)|0;if((d|0)!=(-1|0)?(b=d,o=c[284263]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=c[284252]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){n=c[284254]|0;if(n|0?p>>>0<=o>>>0|p>>>0>n>>>0:0){b=0;break}a=Pz(b|0)|0;if((a|0)==(d|0)){h=b;g=d;q=145;break d}else{e=a;q=136}}else b=0}while(0);do if((q|0)==136){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;q=145;break d}a=c[284264]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;q=145;break d}if((Pz(a|0)|0)==(-1|0)){Pz(d|0)|0;b=0;break}else{h=a+b|0;g=e;q=145;break d}}while(0);c[284255]=c[284255]|4;q=143}else{b=0;q=143}while(0);if(((q|0)==143?k>>>0<2147483647:0)?(t=Pz(k|0)|0,p=Pz(0)|0,r=p-t|0,s=r>>>0>(m+40|0)>>>0,!((t|0)==(-1|0)|s^1|t>>>0<p>>>0&((t|0)!=(-1|0)&(p|0)!=(-1|0))^1)):0){h=s?r:b;g=t;q=145}if((q|0)==145){b=(c[284252]|0)+h|0;c[284252]=b;if(b>>>0>(c[284253]|0)>>>0)c[284253]=b;j=c[284150]|0;f:do if(j){b=1137024;while(1){a=c[b>>2]|0;d=c[b+4>>2]|0;if((g|0)==(a+d|0)){q=154;break}e=c[b+8>>2]|0;if(!e)break;else b=e}if(((q|0)==154?(u=b+4|0,(c[b+12>>2]&8|0)==0):0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[u>>2]=d+h;v=(c[284147]|0)+h|0;t=j+8|0;t=(t&7|0)==0?0:0-t&7;u=j+t|0;t=v-t|0;c[284150]=u;c[284147]=t;c[u+4>>2]=t|1;c[j+v+4>>2]=40;c[284151]=c[284266];break}if(g>>>0<(c[284148]|0)>>>0)c[284148]=g;d=g+h|0;b=1137024;while(1){if((c[b>>2]|0)==(d|0)){q=162;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((q|0)==162?(c[b+12>>2]&8|0)==0:0){c[b>>2]=g;l=b+4|0;c[l>>2]=(c[l>>2]|0)+h;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;c[l+4>>2]=m|3;g:do if((j|0)==(b|0)){v=(c[284147]|0)+i|0;c[284147]=v;c[284150]=k;c[k+4>>2]=v|1}else{if((c[284149]|0)==(b|0)){v=(c[284146]|0)+i|0;c[284146]=v;c[284149]=k;c[k+4>>2]=v|1;c[k+v>>2]=v;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;h:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[284144]=c[284144]&~(1<<e);break}else{c[a+12>>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{v=c[b+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);if(!g)break;d=c[b+28>>2]|0;e=1136880+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){v=g+16|0;c[((c[v>>2]|0)==(b|0)?v:g+20|0)>>2]=a;if(!a)break h}else{c[e>>2]=a;if(a|0)break;c[284145]=c[284145]&~(1<<d);break h}while(0);c[a+24>>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=1136616+(b<<1<<2)|0;a=c[284144]|0;b=1<<b;if(!(a&b)){c[284144]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}u=(b+1048320|0)>>>16&8;v=b<<u;t=(v+520192|0)>>>16&4;v=v<<t;e=(v+245760|0)>>>16&2;e=14-(t|u|e)+(v<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=1136880+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[284145]|0;d=1<<e;if(!(a&d)){c[284145]=a|d;c[b>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break}b=c[b>>2]|0;i:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break i}else{e=e<<1;b=a}}c[d>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=k;c[u>>2]=k;c[k+8>>2]=v;c[k+12>>2]=b;c[k+24>>2]=0}while(0);v=l+8|0;Nb=w;return v|0}b=1137024;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(v=a+(c[b+4>>2]|0)|0,v>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=v+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0<f>>>0?j:a;b=a+8|0;d=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;t=d-t|0;c[284150]=u;c[284147]=t;c[u+4>>2]=t|1;c[g+d+4>>2]=40;c[284151]=c[284266];d=a+4|0;c[d>>2]=27;c[b>>2]=c[284256];c[b+4>>2]=c[284257];c[b+8>>2]=c[284258];c[b+12>>2]=c[284259];c[284256]=g;c[284257]=h;c[284259]=0;c[284258]=b;b=a+24|0;do{u=b;b=b+4|0;c[b>>2]=7}while((u+8|0)>>>0<v>>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=1136616+(b<<1<<2)|0;a=c[284144]|0;b=1<<b;if(!(a&b)){c[284144]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{u=(b+1048320|0)>>>16&8;v=b<<u;t=(v+520192|0)>>>16&4;v=v<<t;e=(v+245760|0)>>>16&2;e=14-(t|u|e)+(v<<e>>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=1136880+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[284145]|0;a=1<<e;if(!(b&a)){c[284145]=b|a;c[d>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}b=c[d>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{e=e<<1;b=a}}c[d>>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=j;c[u>>2]=j;c[j+8>>2]=v;c[j+12>>2]=b;c[j+24>>2]=0}}else{v=c[284148]|0;if((v|0)==0|g>>>0<v>>>0)c[284148]=g;c[284256]=g;c[284257]=h;c[284259]=0;c[284153]=c[284262];c[284152]=-1;c[284157]=1136616;c[284156]=1136616;c[284159]=1136624;c[284158]=1136624;c[284161]=1136632;c[284160]=1136632;c[284163]=1136640;c[284162]=1136640;c[284165]=1136648;c[284164]=1136648;c[284167]=1136656;c[284166]=1136656;c[284169]=1136664;c[284168]=1136664;c[284171]=1136672;c[284170]=1136672;c[284173]=1136680;c[284172]=1136680;c[284175]=1136688;c[284174]=1136688;c[284177]=1136696;c[284176]=1136696;c[284179]=1136704;c[284178]=1136704;c[284181]=1136712;c[284180]=1136712;c[284183]=1136720;c[284182]=1136720;c[284185]=1136728;c[284184]=1136728;c[284187]=1136736;c[284186]=1136736;c[284189]=1136744;c[284188]=1136744;c[284191]=1136752;c[284190]=1136752;c[284193]=1136760;c[284192]=1136760;c[284195]=1136768;c[284194]=1136768;c[284197]=1136776;c[284196]=1136776;c[284199]=1136784;c[284198]=1136784;c[284201]=1136792;c[284200]=1136792;c[284203]=1136800;c[284202]=1136800;c[284205]=1136808;c[284204]=1136808;c[284207]=1136816;c[284206]=1136816;c[284209]=1136824;c[284208]=1136824;c[284211]=1136832;c[284210]=1136832;c[284213]=1136840;c[284212]=1136840;c[284215]=1136848;c[284214]=1136848;c[284217]=1136856;c[284216]=1136856;c[284219]=1136864;c[284218]=1136864;v=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;t=v-t|0;c[284150]=u;c[284147]=t;c[u+4>>2]=t|1;c[g+v+4>>2]=40;c[284151]=c[284266]}while(0);b=c[284147]|0;if(b>>>0>m>>>0){t=b-m|0;c[284147]=t;v=c[284150]|0;u=v+m|0;c[284150]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;Nb=w;return v|0}}v=PV()|0;c[v>>2]=12;v=0;Nb=w;return v|0}function yc(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=Nb;Nb=Nb+864|0;Z=ia;Y=ia+848|0;da=ia+808|0;X=ia+800|0;W=ia+792|0;V=ia+784|0;U=ia+768|0;R=ia+760|0;Q=ia+752|0;P=ia+744|0;O=ia+728|0;L=ia+712|0;K=ia+704|0;J=ia+696|0;I=ia+688|0;H=ia+672|0;G=ia+664|0;E=ia+656|0;C=ia+648|0;B=ia+640|0;z=ia+632|0;y=ia+624|0;x=ia+616|0;w=ia+608|0;s=ia+600|0;r=ia+592|0;q=ia+584|0;p=ia+576|0;o=ia+560|0;ca=ia+552|0;n=ia+544|0;m=ia+536|0;l=ia+528|0;j=ia+520|0;i=ia+512|0;ha=ia+832|0;_=ia+840|0;$=ia+824|0;c[ha>>2]=0;do if(!(wU(a)|0)){ga=a+12|0;g=c[ga>>2]|0;h=(g|0)==0;if(!b)if(h){mx(a,16,185491,i);f=-22;break}else ea=g;else if(h|(g|0)==(b|0))ea=b;else{f=c[b>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=f;mx(a,16,185529,j);f=-22;break}if((c[a+104>>2]|0)>>>0<=268435423){fa=(e|0)!=0;if(fa)wI(ha,c[e>>2]|0,0)|0;b=Cq(a,ea)|0;if((b|0)>=0){T=rR(116)|0;aa=a+64|0;c[aa>>2]=T;a:do if(!T)f=-12;else{T=rR(88)|0;c[(c[aa>>2]|0)+16>>2]=T;b:do if(((((((T|0)!=0?(T=BP()|0,c[(c[aa>>2]|0)+12>>2]=T,(T|0)!=0):0)?(T=BP()|0,c[(c[aa>>2]|0)+100>>2]=T,(T|0)!=0):0)?(T=BP()|0,c[(c[aa>>2]|0)+76>>2]=T,(T|0)!=0):0)?(T=jT()|0,c[(c[aa>>2]|0)+68>>2]=T,(T|0)!=0):0)?(T=jT()|0,c[(c[aa>>2]|0)+24>>2]=T,(T|0)!=0):0)?(T=jT()|0,k=c[aa>>2]|0,c[k+40>>2]=T,(T|0)!=0):0){c[k+108>>2]=1;S=ea+52|0;b=c[S>>2]|0;T=a+60|0;do if((b|0)>0){if(!(c[T>>2]|0)){g=rR(b)|0;c[T>>2]=g;if(!g){f=-12;break a}b=ea+44|0;h=c[b>>2]|0;if(!h)break;c[g>>2]=h;sU(g)}else b=ea+44|0;if(c[b>>2]|0?(f=_T(c[T>>2]|0,ha)|0,(f|0)<0):0)break b}else c[T>>2]=0;while(0);f=_T(a,ha)|0;if((f|0)>=0){b=a+960|0;g=c[b>>2]|0;do if(g|0){if((pq(c[ea>>2]|0,g,44)|0)>=1)break;f=c[b>>2]|0;c[l>>2]=c[ea>>2];c[l+4>>2]=f;mx(a,16,185605,l);f=-22;break b}while(0);i=a+132|0;b=c[i>>2]|0;c:do if(!b)N=38;else{g=c[a+136>>2]|0;if(!g){N=38;break}do if(c[a+124>>2]|0){if(!(c[a+128>>2]|0))break;switch(c[a+48>>2]|0){case 190:case 93:case 28:{N=44;break c}default:{}}}while(0);f=jy(a,b,g)|0;N=41}while(0);do if((N|0)==38){g=c[a+124>>2]|0;if(!g){N=43;break}h=c[a+128>>2]|0;if(!h){N=43;break}f=jy(a,g,h)|0;N=41}while(0);if((N|0)==41){if((f|0)<0)break;b=c[i>>2]|0;N=43}do if((N|0)==43){if(b|0){N=44;break}g=c[a+136>>2]|0;if(g|0){b=0;N=48;break}b=a+124|0;if(c[b>>2]|0){b=0;g=0;N=48;break}if(!(c[a+128>>2]|0))t=b;else{b=0;g=0;N=48}}while(0);if((N|0)==44){g=c[a+136>>2]|0;N=48}do if((N|0)==48){h=a+992|0;F=h;i=a+124|0;if((un(b,g,c[F>>2]|0,c[F+4>>2]|0,-1,0,a)|0)>=0?(F=h,(un(c[i>>2]|0,c[a+128>>2]|0,c[F>>2]|0,c[F+4>>2]|0,-1,0,a)|0)>=0):0){t=i;break}mx(a,24,185639,m);jy(a,0,0)|0;t=i}while(0);b=c[t>>2]|0;do if((b|0)>0){g=c[a+128>>2]|0;if((g|0)<=0)break;h=a+228|0;c[Z>>2]=c[h>>2];c[Z+4>>2]=c[h+4>>2];if((Lv(b,g,Z)|0)>=0)break;F=a+232|0;D=c[F>>2]|0;c[n>>2]=c[h>>2];c[n+4>>2]=D;mx(a,24,185677,n);c[a+228>>2]=0;c[F>>2]=1}while(0);if(wO(ea)|0)zM(a+848|0);D=a+420|0;if((c[D>>2]|0)>>>0>64){f=-22;break}c[ga>>2]=ea;F=a+8|0;h=c[F>>2]|0;do if((h|0)==-1)N=61;else{if((h|0)==(c[ea+8>>2]|0)){N=61;break}g=a+48|0;l=g;g=c[g>>2]|0;b=h}while(0);do if((N|0)==61){b=a+48|0;g=c[b>>2]|0;if(g|0){l=b;b=h;break}A=c[ea+8>>2]|0;c[F>>2]=A;g=c[ea+12>>2]|0;c[b>>2]=g;l=b;b=A}while(0);i=ea+12|0;do if((g|0)==(c[i>>2]|0)){if(!((b|0)==4?1:(b|0)==(c[ea+8>>2]|0)))break;c[a+432>>2]=0;h=IL(g)|0;A=a+900|0;c[A>>2]=h;h=c[ga>>2]|0;do if(c[h+16>>2]&512|0){if((c[a+672>>2]|0)<=-2)break;b=(UM(ea)|0)==0;b=b?185735:185743;da=c[ea>>2]|0;c[o>>2]=b;c[o+4>>2]=da;c[o+8>>2]=-2;mx(a,16,185751,o);da=(UM(ea)|0)==0;f=c[i>>2]|0;if(da)f=KU(f)|0;else f=JU(f)|0;if(c[f+16>>2]&512|0){f=-733130664;break b}f=c[f>>2]|0;c[p>>2]=b;c[p+4>>2]=f;mx(a,16,185861,p);f=-733130664;break b}while(0);do if((c[F>>2]|0)==1){g=a+108|0;b=a+112|0;if(c[g>>2]|0?c[b>>2]|0:0)break;c[g>>2]=1;c[b>>2]=c[a+416>>2]}while(0);if(UM(h)|0){Ev(ea)|0;if(fa)f=c[e>>2]|0;else f=0;f=fe(a,f)|0;Cq(a,ea)|0;if((f|0)<0)break b}if(!((c[(c[aa>>2]|0)+52>>2]|0)!=0?(c[a+808>>2]&1|0)!=0:0)){f=CJ(a)|0;if((f|0)<0)break b}b=c[ga>>2]|0;g=d[b+40>>0]|0;h=a+792|0;if((c[h>>2]|0)>>>0>g>>>0){c[q>>2]=g;mx(a,24,185910,q);b=c[ga>>2]|0;c[h>>2]=d[b+40>>0]}if(c[a+684>>2]|0){mx(a,24,185971,r);b=c[ga>>2]|0}d:do if(UM(b)|0){r=BP()|0;c[a+796>>2]=r;if(!r){f=-12;break b}m=a+108|0;do if((c[m>>2]|0)>=1){n=a+112|0;if((c[n>>2]|0)<1)break;g=c[ga>>2]|0;b=c[g+32>>2]|0;e:do if(!b)j=g;else{k=a+424|0;j=0;while(1){h=c[b+(j<<2)>>2]|0;if((h|0)==-1)break;i=c[k>>2]|0;if((i|0)==(h|0)){j=g;break e}if((c[D>>2]|0)==1){s=XO(i)|0;s=(s|0)==(XO(c[(c[(c[ga>>2]|0)+32>>2]|0)+(j<<2)>>2]|0)|0);u=c[ga>>2]|0;v=c[u+32>>2]|0;if(s){N=100;break}else{g=u;b=v}}j=j+1|0}if((N|0)==100?(v=v+(j<<2)|0,c[k>>2]=c[v>>2],(c[v>>2]|0)!=-1):0){j=u;break}c[w>>2]=c[k>>2];MM(Z,128,186074,w)|0;f=dU(HT(c[k>>2]|0)|0,Z)|0;c[x>>2]=f;mx(a,16,186077,x);f=-22;break b}while(0);g=c[j+24>>2]|0;f:do if(g|0){h=a+144|0;b=0;while(1){i=c[g+(b<<2)>>2]|0;if((i|0)==-1)break;if((c[h>>2]|0)==(i|0)){N=109;break}else b=b+1|0}if((N|0)==109){switch(i|0){case 14:case 34:case 13:case 315:case 12:break;default:break f}c[a+400>>2]=2;break}switch(c[l>>2]|0){case 10:case 8:{if((c[a+672>>2]|0)<0)break f;break}default:{}}c[y>>2]=c[h>>2];MM(Z,128,186074,y)|0;f=dU(rQ(c[h>>2]|0)|0,Z)|0;c[z>>2]=f;mx(a,16,186133,z);f=-22;break b}while(0);h=c[j+28>>2]|0;g=c[a+416>>2]|0;g:do if(h|0){b=0;while(1){i=c[h+(b<<2)>>2]|0;if(!i)break;if((g|0)==(i|0))break g;else b=b+1|0}c[B>>2]=g;mx(a,16,186188,B);f=-22;break b}while(0);if((g|0)<0){c[C>>2]=g;mx(a,16,186188,C);f=-22;break b}i=c[j+36>>2]|0;l=a+448|0;h:do if(i|0){k=l;j=c[k>>2]|0;k=c[k+4>>2]|0;if((j|0)==0&(k|0)==0){mx(a,24,186231,E);break}b=0;while(1){h=i+(b<<3)|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==0&(h|0)==0)break;if((j|0)==(g|0)&(k|0)==(h|0))break h;else b=b+1|0}iJ(Z,512,-1,j,k);c[G>>2]=Z;mx(a,16,186261,G);f=-22;break b}while(0);h=l;g=c[h>>2]|0;h=c[h+4>>2]|0;b=c[D>>2]|0;do if(!((g|0)==0&(h|0)==0)){g=px(g,h)|0;if(!b){c[D>>2]=g;b=g;break}if((g|0)==(c[D>>2]|0)){b=g;break}f=l;iJ(Z,512,-1,c[f>>2]|0,c[f+4>>2]|0);f=c[D>>2]|0;c[H>>2]=Z;c[H+4>>2]=g;c[H+8>>2]=f;mx(a,16,186309,H);f=-22;break b}while(0);if((b|0)<0){c[I>>2]=b;mx(a,16,186394,I);f=-22;break b}b=c[F>>2]|0;i:do if(!b){b=MT(c[a+144>>2]|0)|0;h=a+788|0;i=c[h>>2]|0;do if((i|0)>=0){if((i|0)<=8)break;b=b+32|0;g=c[b>>2]|0;if((g|0)<9)N=137}else{g=b+32|0;b=g;g=c[g>>2]|0;N=137}while(0);if((N|0)==137){c[J>>2]=i;c[J+4>>2]=g;mx(a,24,186444,J);c[h>>2]=c[b>>2]}do if((c[t>>2]|0)>=1){if((c[a+128>>2]|0)<1)break;b=c[F>>2]|0;break i}while(0);mx(a,16,186523,K);f=-22;break b}while(0);do if(b>>>0<2){g=a+72|0;b=c[g>>2]|0;g=c[g+4>>2]|0;K=kP(b|0,g|0,-1,-1)|0;J=M()|0;if(!(J>>>0<0|(J|0)==0&K>>>0<999))break;K=L;c[K>>2]=b;c[K+4>>2]=g;K=L+8|0;c[K>>2]=b;c[K+4>>2]=g;mx(a,24,186543,L)}while(0);b=a+560|0;if(!(c[b>>2]|0)){L=c[a+512>>2]|0;L=oK(L|0,((L|0)<0)<<31>>31|0,3,0)|0;L=Eu(L|0,M()|0,4,0)|0;M()|0;c[b>>2]=L}g=c[a+116>>2]|0;do if(g|0){b=c[m>>2]|0;if(!b)break;if((g|0)<=(2147483647/(b|0)|0|0))break;da=c[n>>2]|0;c[O>>2]=g;c[O+4>>2]=b;c[O+8>>2]=da;mx(a,16,186596,O);break b}while(0);f=c[a+976>>2]|0;if(!f)break d;f=c[f+4>>2]|0;if((c[f+36>>2]|0)!=(c[a+144>>2]|0)){mx(a,16,186649,P);f=-22;break b}h=a+888|0;g=c[h>>2]|0;b=f+40|0;f=c[b>>2]|0;do if((g|0)!=-1){if((g|0)==(f|0)){f=g;break}da=rQ(g)|0;f=rQ(c[b>>2]|0)|0;c[Q>>2]=da;c[Q+4>>2]=f;mx(a,16,186714,Q);f=-22;break b}while(0);c[h>>2]=f;break d}while(0);mx(a,16,186040,s);f=-22;break b}while(0);Q=a+904|0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0;Q=a+928|0;c[Q>>2]=0;c[Q+4>>2]=-2147483648;Q=a+920|0;c[Q>>2]=0;c[Q+4>>2]=-2147483648;do if(c[a+92>>2]&8192|0){if(c[(c[A>>2]|0)+4>>2]|0)break;mx(a,24,186795,R)}while(0);f=c[ga>>2]|0;b=c[f+76>>2]|0;do if(b){if(c[a+808>>2]&1|0?(c[(c[aa>>2]|0)+52>>2]|0)==0:0)break;f=Wb[b&31](a)|0;if((f|0)<0)break b;f=c[ga>>2]|0}while(0);if(UM(f)|0)c[a+120>>2]=c[a+876>>2];do if(wO(f)|0){f=a+72|0;R=f;if((c[R>>2]|0)==0&(c[R+4>>2]|0)==0){P=rr(a)|0;Q=M()|0;R=f;c[R>>2]=P;c[R+4>>2]=Q}g=a+448|0;b=g;f=c[b>>2]|0;b=c[b+4>>2]|0;do if((f|0)==0&(b|0)==0)N=176;else{f=px(f,b)|0;b=c[D>>2]|0;if(!b){c[D>>2]=f;break}if((f|0)==(b|0))break;N=g;iJ(Z,512,-1,c[N>>2]|0,c[N+4>>2]|0);N=c[D>>2]|0;c[U>>2]=Z;c[U+4>>2]=f;c[U+8>>2]=N;mx(a,24,186858,U);N=g;c[N>>2]=0;c[N+4>>2]=0;N=176}while(0);if((N|0)==176)f=c[D>>2]|0;if(f>>>0>64){f=-22;break b}j:do if(c[a+936>>2]|0){if((c[F>>2]|0)!=3){mx(a,16,186978,V);f=-22;break b}f=c[A>>2]|0;if(c[f+16>>2]&65536|0){c[W>>2]=c[f+8>>2];mx(a,24,187038,W);c[a+940>>2]=-1;break}f=a+940|0;switch(c[f>>2]|0){case 0:{c[f>>2]=1;break}case 1:break;default:break j}mx(a,16,187112,X);f=-38;break b}while(0);f=a+880|0;if((c[f>>2]|0)<=0)break;if((c[a+884>>2]|0)<=0)break;c[$>>2]=c[a+116>>2];c[$+4>>2]=1;c[Y>>2]=c[f>>2];c[Y+4>>2]=c[f+4>>2];c[Z>>2]=c[$>>2];c[Z+4>>2]=c[$+4>>2];cv(_,Y,Z);Z=c[_>>2]|0;$=a+108|0;c[$>>2]=c[_+4>>2];c[$+4>>2]=Z}while(0);if((c[S>>2]|0)<=0){f=0;break a}f=c[T>>2]|0;if(!f){f=0;break a}b=c[ea+44>>2]|0;if(!b){f=0;break a}if((c[f>>2]|0)==(b|0)){f=0;break a}c[da>>2]=187212;c[da+4>>2]=185289;c[da+8>>2]=1103;mx(0,0,214689,da);ba()}while(0);mx(a,16,185706,ca);f=-22}}else f=-12;while(0);b=c[ga>>2]|0;if(b|0?c[b+112>>2]&2|0:0)Wb[c[b+92>>2]&31](a)|0;if(c[ea+44>>2]|0?c[ea+52>>2]|0:0)CE(c[a+60>>2]|0);CE(a);iQ(a+796|0);HC(ha);zM(a+60|0);b=c[aa>>2]|0;if(b|0){iQ(b+12|0);iQ((c[aa>>2]|0)+100|0);iQ((c[aa>>2]|0)+76|0);fQ((c[aa>>2]|0)+68|0);fQ((c[aa>>2]|0)+40|0);fQ((c[aa>>2]|0)+24|0);zM((c[aa>>2]|0)+16|0)}zM(aa);c[ga>>2]=0}while(0);Ev(ea)|0;if(fa){HC(e);c[e>>2]=c[ha>>2]}}else f=b}else f=-22}else f=0;while(0);Nb=ia;return f|0}function zc(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0;Ga=Nb;Nb=Nb+16|0;wa=Ga+8|0;xa=Ga;ya=c[g+21748>>2]|0;Ea=c[g+21708>>2]|0;na=c[g+21712>>2]|0;oa=c[g+21716>>2]|0;pa=c[g+21720>>2]|0;c[wa>>2]=pa;qa=c[g+21724>>2]|0;c[wa+4>>2]=qa;ra=c[g+21728>>2]|0;sa=c[g+21732>>2]|0;ta=c[g+21736>>2]|0;ua=c[g+21740>>2]|0;c[xa>>2]=ua;va=c[g+21744>>2]|0;c[xa+4>>2]=va;if(!(h&2048)){t=(h&7|0)!=0;a:do if(t){p=(c[(c[f+28196>>2]|0)+56>>2]|0)==0?-1:7;k=g+21768|0;c[k>>2]=65535;i=g+21760|0;c[i>>2]=65535;m=g+21756|0;c[m>>2]=65535;n=g+21764|0;c[n>>2]=61162;o=(p&sa|0)!=0;if(o){i=65535;l=60138}else{c[m>>2]=46079;c[i>>2]=13311;c[n>>2]=9962;i=46079;l=8938}j=h&128;do if((j|0)==(ua&128|0)){if(!(p&ua)){i=i&57183;c[m>>2]=i;c[k>>2]=24415}}else{if(!j){if(!((p&ua|0)==0?1:(c[(c[f+24364>>2]|0)+((c[f+27e3>>2]|0)+pa<<2)>>2]&p|0)==0))break;i=i&57183;c[m>>2]=i;c[k>>2]=24415;break}if(!(p&ua)){i=i&57343;c[m>>2]=i;c[k>>2]=24575;j=24415}else j=65375;if(!(p&va)){i=i&65375;c[m>>2]=i;c[k>>2]=j}}while(0);if(!(p&ra))c[m>>2]=i&32767;if(!(p&ta))c[n>>2]=l;if(h&1|0){if(!(sa&1)){jq(g+21668|0,(o?2:-1)|0,4)|0;l=g+21704|0;m=f+26348|0}else{l=g+21704|0;m=f+26348|0;c[g+21668>>2]=c[(c[l>>2]|0)+(c[(c[m>>2]|0)+(na<<2)>>2]|0)>>2]}k=0;while(1){if((k|0)==2)break a;i=c[xa+(k<<2)>>2]|0;if(!(i&1)){i=(i&p|0)==0?-1:2;j=k<<4;a[j+19+(g+21664)>>0]=i;j=j|11}else{ma=(c[l>>2]|0)+(c[(c[m>>2]|0)+(c[wa+(k<<2)>>2]<<2)>>2]|0)|0;i=k<<1;j=k<<4;a[(j|11)+(g+21664)>>0]=a[ma+(6-(d[ya+i>>0]|0))>>0]|0;i=a[ma+(6-(d[ya+(i|1)>>0]|0))>>0]|0;j=j+19|0}a[g+21664+j>>0]=i;k=k+1|0}}}while(0);s=(sa|0)!=0;do if(s){i=f+25956|0;j=c[i>>2]|0;c[g+27828>>2]=c[j+(na*48|0)+12>>2];if(!(c[f+25668>>2]|0)){c[g+27868>>2]=c[j+(na*48|0)+28>>2];c[g+27908>>2]=c[j+(na*48|0)+44>>2];break}else{c[g+27868>>2]=c[j+(na*48|0)+20>>2];c[g+27908>>2]=c[j+(na*48|0)+36>>2];break}}else{i=t?1077952576:0;c[g+27828>>2]=i;c[g+27868>>2]=i;c[g+27908>>2]=i;i=f+25956|0}while(0);q=t?64:0;r=f+28200|0;p=0;while(1){if((p|0)==2)break;b:do if(!(c[xa+(p<<2)>>2]|0)){j=p<<4;a[j+99+(g+27824)>>0]=q;a[j+91+(g+27824)>>0]=q;a[j+59+(g+27824)>>0]=q;a[j+51+(g+27824)>>0]=q;a[j+19+(g+27824)>>0]=q;k=q;j=j|11}else{j=c[i>>2]|0;k=c[wa+(p<<2)>>2]|0;l=p<<1;m=ya+(l+8)|0;o=p<<4;a[(o|11)+(g+27824)>>0]=a[(d[m>>0]|0)+(j+(k*48|0))>>0]|0;n=ya+(l+9)|0;a[o+19+(g+27824)>>0]=a[(d[n>>0]|0)+(j+(k*48|0))>>0]|0;switch(c[(c[r>>2]|0)+12>>2]|0){case 3:{a[o+51+(g+27824)>>0]=a[(d[m>>0]|0)+16+(j+(k*48|0))>>0]|0;a[o+59+(g+27824)>>0]=a[(d[n>>0]|0)+16+(j+(k*48|0))>>0]|0;a[o+91+(g+27824)>>0]=a[(d[m>>0]|0)+32+(j+(k*48|0))>>0]|0;k=a[(d[n>>0]|0)+32+(j+(k*48|0))>>0]|0;j=o+99|0;break b}case 2:{a[o+51+(g+27824)>>0]=a[(d[m>>0]|0)+14+(j+(k*48|0))>>0]|0;a[o+59+(g+27824)>>0]=a[(d[n>>0]|0)+14+(j+(k*48|0))>>0]|0;a[o+91+(g+27824)>>0]=a[(d[m>>0]|0)+30+(j+(k*48|0))>>0]|0;k=a[(d[n>>0]|0)+30+(j+(k*48|0))>>0]|0;j=o+99|0;break b}default:{ma=p<<3;a[ma+51+(g+27824)>>0]=a[(d[ya+(l+12)>>0]|0)+(j+(k*48|0))>>0]|0;k=a[(d[ya+(l+13)>>0]|0)+(j+(k*48|0))>>0]|0;j=ma+91|0;break b}}}while(0);a[g+27824+j>>0]=k;p=p+1|0}if(s)i=e[(c[f+26376>>2]|0)+(na<<1)>>1]|0;else i=t?1999:15;c[g+21860>>2]=i;if(!ua)i=t?1999:15;else{i=c[f+26376>>2]|0;ma=e[i+(pa<<1)>>1]|0;i=ma>>>(a[ya>>0]&-2&255)&2|ma&2032|(e[i+(qa<<1)>>1]|0)>>>(a[ya+2>>0]&-2&255)<<2&8}c[g+21864>>2]=i}if(!(h&120)){if(h&256|0?c[g+21844>>2]|0:0)u=53}else u=53;c:do if((u|0)==53){x=c[f+26352>>2]|0;y=f+26344|0;z=x*3|0;B=na<<2;A=B|2;B=B|3;C=(h&80|0)==0;D=(sa|0)==0?-16843010:-1;E=(ua|0)==0?-2:-1;F=pa<<2|1;G=(ta|0)==0?-2:-1;I=oa<<2|2;J=(h&2304|0)==0;K=(ra|0)==0?-2:-1;L=g+21752|0;M=x<<1;N=x+3|0;O=Ea<<2;P=f+26360|0;Q=f+26348|0;R=g+21828|0;S=(ra&128|0)!=0;T=ya+1|0;U=g+840|0;V=ya+2|0;W=ya+3|0;X=(sa&128|0)==0;Y=g+28524|0;Z=f+26392|0;_=g+28532|0;$=g+28548|0;aa=g+28540|0;ba=(sa&256|0)==0;ca=(ta&128|0)==0;da=(sa&64|0)==0;ea=g+28516|0;fa=(ua&128|0)==0;ga=g+28518|0;ha=g+28523|0;ia=(va&128|0)==0;ja=g+28539|0;ka=qa<<2|1;w=c[g+23412>>2]|0;la=(ua&320|0)==64;u=(ua&256|0)==0?4:-128;ma=(va&320|0)==64;v=(va&256|0)==0?4:-128;t=0;while(1){if(t>>>0>=w>>>0)break c;n=g+28272+(t*40|0)+12|0;p=c[f+24384+(t<<2)>>2]|0;o=g+27952+(t*160|0)+48|0;q=c[f+24352+(t<<2)>>2]|0;s=12288<<(t<<1);do if(s&h|0){r=(s&sa|0)!=0;if(r){k=(c[(c[y>>2]|0)+(na<<2)>>2]|0)+z|0;j=q+(k<<2)|0;m=c[j+4>>2]|0;l=g+27952+(t*160|0)+16|0;c[l>>2]=c[j>>2];c[l+4>>2]=m;k=q+(k<<2)+8|0;l=c[k+4>>2]|0;m=g+27952+(t*160|0)+24|0;c[m>>2]=c[k>>2];c[m+4>>2]=l;m=a[p+A>>0]|0;a[g+28272+(t*40|0)+5>>0]=m;a[g+28272+(t*40|0)+4>>0]=m;m=a[p+B>>0]|0;a[g+28272+(t*40|0)+7>>0]=m;a[g+28272+(t*40|0)+6>>0]=m}else{m=g+27952+(t*160|0)+16|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[g+28272+(t*40|0)+4>>2]=D}d:do if(C){if(!(s&ua)){c[g+27952+(t*160|0)+44>>2]=0;i=E}else{i=q+((c[(c[y>>2]|0)+(pa<<2)>>2]|0)+3+(H(x,d[ya>>0]|0)|0)<<2)|0;c[g+27952+(t*160|0)+44>>2]=c[i>>2];i=a[p+(F+(a[ya>>0]&-2&255))>>0]|0}a[g+28272+(t*40|0)+11>>0]=i}else{m=0;while(1){if((m|0)==2)break d;j=m<<1;k=m<<4;i=k+-1|0;l=c[xa+(m<<2)>>2]|0;if(!(l&s)){c[o+(i<<2)>>2]=0;k=k|7;c[o+(k<<2)>>2]=0;j=(l|0)==0?-2:-1;a[n+k>>0]=j}else{Ha=c[wa+(m<<2)>>2]|0;Ja=(c[(c[y>>2]|0)+(Ha<<2)>>2]|0)+3|0;Ha=Ha<<2|1;Ia=ya+j|0;l=q+((H(x,d[Ia>>0]|0)|0)+Ja<<2)|0;c[o+(i<<2)>>2]=c[l>>2];j=ya+(j|1)|0;Ja=q+((H(x,d[j>>0]|0)|0)+Ja<<2)|0;l=k|7;c[o+(l<<2)>>2]=c[Ja>>2];a[n+i>>0]=a[p+(Ha+(a[Ia>>0]&-2&255))>>0]|0;j=a[p+(Ha+(a[j>>0]&-2&255))>>0]|0;i=l}a[n+i>>0]=j;m=m+1|0}}while(0);if(!(s&ta)){c[g+27952+(t*160|0)+32>>2]=0;i=G}else{c[g+27952+(t*160|0)+32>>2]=c[q+((c[(c[y>>2]|0)+(oa<<2)>>2]|0)+z<<2)>>2];i=a[p+I>>0]|0}m=g+28272+(t*40|0)+8|0;a[m>>0]=i;l=g+28272+(t*40|0)+6|0;if((a[l>>0]|i)<<24>>24<0){if(!(s&ra)){c[g+27952+(t*160|0)+12>>2]=0;i=K}else{i=c[L>>2]|0;c[g+27952+(t*160|0)+12>>2]=c[q+(N+(c[(c[y>>2]|0)+(Ea<<2)>>2]|0)+(i&M)<<2)>>2];i=a[p+(O|i&2|1)>>0]|0}a[g+28272+(t*40|0)+3>>0]=i}if(J){k=c[g+32848+(t<<2)>>2]|0;a[g+28272+(t*40|0)+30>>0]=-2;a[g+28272+(t*40|0)+14>>0]=-2;c[g+27952+(t*160|0)+56>>2]=0;c[g+27952+(t*160|0)+120>>2]=0;if(r){j=k+(c[(c[Q>>2]|0)+(na<<2)>>2]<<1)|0;i=c[j>>2]|0;j=c[j+4>>2]|0}else{i=0;j=0}Ja=g+28352+(t*80|0)+8|0;c[Ja>>2]=i;c[Ja+4>>2]=j;if(!(s&ua)){b[g+28352+(t*80|0)+22>>1]=0;i=0}else{i=(c[(c[Q>>2]|0)+(pa<<2)>>2]|0)+6|0;b[g+28352+(t*80|0)+22>>1]=b[k+(i-(d[ya>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[T>>0]|0)<<1)>>1]|0}b[g+28352+(t*80|0)+38>>1]=i;if(!(s&va)){b[g+28352+(t*80|0)+54>>1]=0;i=0}else{i=(c[(c[Q>>2]|0)+(qa<<2)>>2]|0)+6|0;b[g+28352+(t*80|0)+54>>1]=b[k+(i-(d[V>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[W>>0]|0)<<1)>>1]|0}b[g+28352+(t*80|0)+70>>1]=i;b[g+28352+(t*80|0)+28>>1]=0;b[g+28352+(t*80|0)+60>>1]=0;if((c[U>>2]|0)==3){j=c[Z>>2]|0;c[Y>>2]=67372036;c[_>>2]=67372036;c[aa>>2]=67372036;c[$>>2]=67372036;do if(ba)if(da){c[ea>>2]=67372036;break}else{a[ea>>0]=a[j+A>>0]|0;a[ga>>0]=a[j+B>>0]|0;break}else c[ea>>2]=-2139062144;while(0);if(la)i=a[j+(F+(a[ya>>0]&-2&255))>>0]|0;else i=u;a[ha>>0]=i;if(ma)i=a[j+(ka+(a[V>>0]&-2&255))>>0]|0;else i=v;a[ja>>0]=i}if(!(c[P>>2]|0))break}else if(!(c[P>>2]|0))break;if(!(c[R>>2]|0)){if(S?(Ca=g+28272+(t*40|0)+3|0,Da=a[Ca>>0]|0,Da<<24>>24>-1):0){a[Ca>>0]=Da<<24>>24>>1;Ja=g+27952+(t*160|0)+14|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+7|0;a[Ja>>0]=d[Ja>>0]<<1}do if(!X){i=g+28272+(t*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24>>1;Ja=g+27952+(t*160|0)+18|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+9|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24>>1;Ja=g+27952+(t*160|0)+22|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+11|0;a[Ja>>0]=d[Ja>>0]<<1}i=a[l>>0]|0;if(i<<24>>24>-1){a[l>>0]=i<<24>>24>>1;Ja=g+27952+(t*160|0)+26|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+13|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24>>1;Ja=g+27952+(t*160|0)+30|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+15|0;a[Ja>>0]=d[Ja>>0]<<1}while(0);if(!ca?(Fa=a[m>>0]|0,Fa<<24>>24>-1):0){a[m>>0]=Fa<<24>>24>>1;Ja=g+27952+(t*160|0)+34|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+17|0;a[Ja>>0]=d[Ja>>0]<<1}do if(!fa){i=g+28272+(t*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24>>1;Ja=g+27952+(t*160|0)+46|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+23|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24>>1;Ja=g+27952+(t*160|0)+78|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+39|0;a[Ja>>0]=d[Ja>>0]<<1}while(0);if(ia)break;i=g+28272+(t*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24>>1;Ja=g+27952+(t*160|0)+110|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+55|0;a[Ja>>0]=d[Ja>>0]<<1}i=g+28272+(t*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24>>1;Ja=g+27952+(t*160|0)+142|0;b[Ja>>1]=b[Ja>>1]<<1;Ja=g+28352+(t*80|0)+71|0;a[Ja>>0]=d[Ja>>0]<<1;break}else{if(!S?(za=g+28272+(t*40|0)+3|0,Aa=a[za>>0]|0,Aa<<24>>24>-1):0){a[za>>0]=Aa<<24>>24<<1;Ja=g+27952+(t*160|0)+14|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+7|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}do if(X){i=g+28272+(t*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+18|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+9|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+22|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+11|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=a[l>>0]|0;if(i<<24>>24>-1){a[l>>0]=i<<24>>24<<1;Ja=g+27952+(t*160|0)+26|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+13|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+30|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+15|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}while(0);if(ca?(Ba=a[m>>0]|0,Ba<<24>>24>-1):0){a[m>>0]=Ba<<24>>24<<1;Ja=g+27952+(t*160|0)+34|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+17|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}do if(fa){i=g+28272+(t*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+46|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+23|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+78|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+39|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}while(0);if(!ia)break;i=g+28272+(t*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+110|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+55|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1}i=g+28272+(t*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ja=g+27952+(t*160|0)+142|0;b[Ja>>1]=(b[Ja>>1]|0)/2|0;Ja=g+28352+(t*80|0)+71|0;a[Ja>>0]=(d[Ja>>0]|0)>>>1;break}}while(0);t=t+1|0}}while(0);c[g+21840>>2]=(ua>>>24&1)+(sa>>>24&1);Nb=Ga;return}function Ac(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0;M=Nb;Nb=Nb+1632|0;L=M+1624|0;D=M+1616|0;A=M+1608|0;z=M+1600|0;x=M+1584|0;n=M+1576|0;i=M+1568|0;w=M+1536|0;I=M+1024|0;K=M+512|0;F=M;j=c[g>>2]|0;a:do if((j|0)<64e3){if((j|0)<32e3){if((j|0)<22050)switch(j|0){case 16e3:{i=51472;G=8;break a}default:{G=7;break a}}switch(j|0){case 22050:{i=51488;G=8;break a}case 24e3:{i=51504;G=8;break a}default:{G=7;break a}}}if((j|0)<44100){switch(j|0){case 32e3:break;default:{G=7;break a}}i=51520;G=8;break}if((j|0)<48e3)switch(j|0){case 44100:{G=5;break a}default:{G=7;break a}}else switch(j|0){case 48e3:{G=5;break a}default:{G=7;break a}}}else{b:do if((j|0)<128e3){if((j|0)<88200)switch(j|0){case 64e3:{G=5;break a}default:{G=7;break a}}if((j|0)<96e3)switch(j|0){case 88200:break b;default:{G=7;break a}}else switch(j|0){case 96e3:break b;default:{G=7;break a}}}else{if((j|0)<176400)switch(j|0){case 128e3:break b;default:{G=7;break a}}if((j|0)<192e3)switch(j|0){case 176400:break b;default:{G=7;break a}}else switch(j|0){case 192e3:break b;default:{G=7;break a}}}while(0);i=51552;G=8}while(0);if((G|0)==5){i=51536;G=8}else if((G|0)==7){g=c[f+4>>2]|0;c[i>>2]=j;mx(g,16,190821,i);i=-1}c:do if((G|0)==8){u=(j|0)<32e3?3e3:(j|0)<64e3?4e3:5e3;C=j>>>1;m=(((u<<8)+C|0)>>>0)/(j>>>0)|0;i=((((u<<7)+C|0)>>>0)/(j>>>0)|0)+(a[i+(d[h>>0]|0)>>0]|0)|0;C=g+52|0;c[C>>2]=i;u=h+1|0;k=a[u>>0]|0;l=k&255;d:do if((k&255)<14){t=g+60|0;c[t>>2]=m;sy(w,m,64,13);c[I>>2]=w;c[I+4>>2]=w+24;i=1;while(1){if(!i)break;i=i+-1|0;k=c[I+(i<<3)>>2]|0;j=c[I+(i<<3)+4>>2]|0;while(1){if(k>>>0>=j>>>0)break;p=j+-2|0;if(k>>>0>=p>>>0){G=42;break}m=j+-4|0;n=k+2|0;r=j;s=k;q=k+(r-s>>2<<1)|0;if((vS(k,j)|0)<=0)if((vS(k,q)|0)>0){l=q;G=17}else l=1;else{l=(vS(j,q)|0)>0;l=l?q:j;G=17}if((G|0)==17){G=0;E=b[l>>1]|0;b[l>>1]=b[k>>1]|0;b[k>>1]=E;l=0}if((vS(q,j)|0)>0){l=b[j>>1]|0;b[j>>1]=b[q>>1]|0;b[q>>1]=l;l=0}if((k|0)==(m|0))break;o=b[q>>1]|0;b[q>>1]=b[p>>1]|0;b[p>>1]=o;o=m;while(1){if(n>>>0>o>>>0)break;while(1){if(n>>>0>o>>>0)break;if((vS(n,p)|0)>=0)break;n=n+2|0}m=o;while(1){if(n>>>0>m>>>0)break;if((vS(m,p)|0)<=0){G=31;break}m=m+-2|0}if((G|0)==31){G=0;E=b[m>>1]|0;b[m>>1]=b[n>>1]|0;b[n>>1]=E;m=m+-2|0;n=n+2|0}o=m}E=b[n>>1]|0;b[n>>1]=b[p>>1]|0;b[p>>1]=E;if(l|0?(q|0)==(n|0)|(q|0)==(n+-2|0):0){l=k;while(1){if(l>>>0>=j>>>0)break;m=l+2|0;if((vS(l,m)|0)<1)l=m;else break}if((l|0)==(j|0))break}E=n;if((r-E|0)<(E-s|0)){c[I+(i<<3)>>2]=k;c[I+(i<<3)+4>>2]=o;k=n+2|0}else{c[I+(i<<3)>>2]=n+2;c[I+(i<<3)+4>>2]=j;j=o}i=i+1|0}if((G|0)==42?(G=0,(vS(k,j)|0)>0):0){E=b[j>>1]|0;b[j>>1]=b[k>>1]|0;b[k>>1]=E}}j=d[u>>0]|0;i=0;while(1){if((i|0)==(j|0))break;c[t>>2]=(c[t>>2]|0)+(b[w+(i<<1)>>1]|0);i=i+1|0}B=t;i=c[t>>2]|0;j=c[g>>2]|0}else switch(k<<24>>24){case 14:{i=i<<1;B=g+60|0;c[B>>2]=i;break d}case 15:{i=i*3|0;B=g+60|0;c[B>>2]=i;break d}default:{i=c[f+4>>2]|0;c[n>>2]=l;mx(i,16,190858,n);i=-1;break c}}while(0);k=i>>>0<64?i:64;c[B>>2]=k;if((j|0)>=32001)if((j|0)!=44100)if((j|0)>47999)y=32;else{c[x>>2]=214810;c[x+4>>2]=190438;c[x+8>>2]=326;mx(0,0,214689,x);ba()}else y=35;else y=48;l=c[C>>2]|0;i=k-l|0;if(i>>>0>y>>>0){g=c[f+4>>2]|0;c[z>>2]=i;mx(g,16,190884,z);i=-1;break}j=a[h+3>>0]|0;if(!(j<<24>>24)){L=a[h+4>>0]|0;k=(L&255)+1|0;L=(i+(L+1&2)|0)>>>k<<1;i=g+92|0;c[i>>2]=L;if(EC(c[f+4>>2]|0,L,d[g+22>>0]|0)|0){i=-1;break}l=c[i>>2]|0;j=k&65535;m=l+1|0;i=1;while(1){if((i|0)==(m|0))break;b[g+310128+(i<<1)>>1]=j;i=i+1|0}i=c[C>>2]|0;k=(c[B>>2]|0)-i-(H(l,k)|0)|0;if((k|0)>=0){j=g+310128+(l<<1)|0;if(k|0)b[j>>1]=(b[j>>1]|0)+1<<16>>16}else{f=g+310130|0;b[f>>1]=(b[f>>1]|0)+-1<<16>>16;f=g+310132|0;b[f>>1]=(e[f>>1]|0)-((k|0)!=-1&1)}b[g+310128>>1]=i;j=1;while(1){if((j|0)==(m|0)){i=0;break c}L=g+310128+(j<<1)|0;f=(i&65535)+(e[L>>1]|0)|0;b[L>>1]=f;j=j+1|0;i=f}}w=(k*49|0)>>>0>(l*110|0)>>>0;i=w?l<<1:k;z=g+56|0;c[z>>2]=i;v=+(7-(j&255)|0);t=uV(+rb(+(+(i>>>0)/+(l>>>0)))*v)|0;E=t<<1;e:do if((t|0)<1){g=c[f+4>>2]|0;c[A>>2]=E;mx(g,16,190930,A)}else{b[I>>1]=0;A=I+2|0;sy(A,l,i,E);c[K>>2]=A;c[K+4>>2]=A+(E<<1)+-2;i=1;while(1){if(!i)break;i=i+-1|0;k=c[K+(i<<3)>>2]|0;j=c[K+(i<<3)+4>>2]|0;while(1){if(k>>>0>=j>>>0)break;p=j+-2|0;if(k>>>0>=p>>>0){G=107;break}m=j+-4|0;n=k+2|0;r=j;s=k;q=k+(r-s>>2<<1)|0;if((vS(k,j)|0)<=0)if((vS(k,q)|0)>0){l=q;G=82}else l=1;else{l=(vS(j,q)|0)>0;l=l?q:j;G=82}if((G|0)==82){G=0;A=b[l>>1]|0;b[l>>1]=b[k>>1]|0;b[k>>1]=A;l=0}if((vS(q,j)|0)>0){l=b[j>>1]|0;b[j>>1]=b[q>>1]|0;b[q>>1]=l;l=0}if((k|0)==(m|0))break;o=b[q>>1]|0;b[q>>1]=b[p>>1]|0;b[p>>1]=o;o=m;while(1){if(n>>>0>o>>>0)break;while(1){if(n>>>0>o>>>0)break;if((vS(n,p)|0)>=0)break;n=n+2|0}m=o;while(1){if(n>>>0>m>>>0)break;if((vS(m,p)|0)<=0){G=96;break}m=m+-2|0}if((G|0)==96){G=0;A=b[m>>1]|0;b[m>>1]=b[n>>1]|0;b[n>>1]=A;m=m+-2|0;n=n+2|0}o=m}A=b[n>>1]|0;b[n>>1]=b[p>>1]|0;b[p>>1]=A;if(l|0?(q|0)==(n|0)|(q|0)==(n+-2|0):0){l=k;while(1){if(l>>>0>=j>>>0)break;m=l+2|0;if((vS(l,m)|0)<1)l=m;else break}if((l|0)==(j|0))break}A=n;if((r-A|0)<(A-s|0)){c[K+(i<<3)>>2]=k;c[K+(i<<3)+4>>2]=o;k=n+2|0}else{c[K+(i<<3)>>2]=n+2;c[K+(i<<3)+4>>2]=j;j=o}i=i+1|0}if((G|0)==107?(G=0,(vS(k,j)|0)>0):0){A=b[j>>1]|0;b[j>>1]=b[k>>1]|0;b[k>>1]=A}}u=b[I+(E<<1)>>1]|0;l=c[C>>2]|0;b[I>>1]=l;i=1;while(1){if((i|0)>(E|0))break;j=I+(i<<1)|0;C=b[j>>1]|0;k=C<<16>>16;if(C<<16>>16<1){G=114;break}C=(l&65535)+k|0;b[j>>1]=C;i=i+1|0;l=C}if((G|0)==114){g=c[f+4>>2]|0;c[D>>2]=i;c[D+4>>2]=k;mx(g,16,190955,D);break}do if(w){v=((a[h+4>>0]|0)==0?1.0:.7692307829856873)*v;D=c[B>>2]|0;C=c[z>>2]|0;w=uV(v*+rb(+(+(D>>>0)/+(C>>>0))))|0;x=w<<1;y=K+2|0;sy(y,C,D,x);if((XJ(y,x)|0)<(u|0)){c[F>>2]=y;i=y+(x<<1)+-2|0;c[F+4>>2]=i;j=1;while(1){if(!j)break;j=j+-1|0;t=c[F+(j<<3)+4>>2]|0;k=c[F+(j<<3)>>2]|0;f:while(1){if(k>>>0>=t>>>0)break;p=t+-2|0;if(k>>>0>=p>>>0){G=152;break}l=t+-4|0;n=k+2|0;r=t;s=k;q=k+(r-s>>2<<1)|0;if((vS(k,t)|0)<=0)if((vS(k,q)|0)>0){m=q;G=127}else m=1;else{m=(vS(t,q)|0)>0;m=m?q:t;G=127}if((G|0)==127){G=0;D=b[m>>1]|0;b[m>>1]=b[k>>1]|0;b[k>>1]=D;m=0}if((vS(q,t)|0)>0){m=b[t>>1]|0;b[t>>1]=b[q>>1]|0;b[q>>1]=m;m=0}if((k|0)==(l|0))break;o=b[q>>1]|0;b[q>>1]=b[p>>1]|0;b[p>>1]=o;o=n;while(1){if(o>>>0>l>>>0)break;n=o;while(1){if(n>>>0>l>>>0)break;if((vS(n,p)|0)>=0)break;n=n+2|0}while(1){if(n>>>0>l>>>0)break;if((vS(l,p)|0)<=0){G=141;break}l=l+-2|0}if((G|0)==141){G=0;D=b[l>>1]|0;b[l>>1]=b[n>>1]|0;b[n>>1]=D;n=n+2|0;l=l+-2|0}o=n}D=b[o>>1]|0;b[o>>1]=b[p>>1]|0;b[p>>1]=D;do if(m|0){if(!((q|0)==(o|0)|(q|0)==(o+-2|0)))break;m=k;while(1){if(m>>>0>=t>>>0)break;n=m+2|0;if((vS(m,n)|0)<1)m=n;else break}if((m|0)==(t|0))break f}while(0);D=o;if((r-D|0)<(D-s|0)){c[F+(j<<3)>>2]=k;c[F+(j<<3)+4>>2]=l;l=t;k=o+2|0}else{c[F+(j<<3)>>2]=o+2;c[F+(j<<3)+4>>2]=t}t=l;j=j+1|0}if((G|0)==152?(G=0,(vS(k,t)|0)>0):0){D=b[t>>1]|0;b[t>>1]=b[k>>1]|0;b[k>>1]=D}}B=b[y>>1]|0;A=B<<16>>16;C=u-A|0;D=K+(x<<1)|0;h=b[D>>1]|0;A=(h<<16>>16)-A>>1;C=(C|0)>(A|0)?A:C;b[y>>1]=C+(B&65535);b[D>>1]=(h&65535)-C}else i=y+(x<<1)+-2|0;c[F>>2]=y;c[F+4>>2]=i;i=1;while(1){if(!i)break;i=i+-1|0;s=c[F+(i<<3)+4>>2]|0;j=c[F+(i<<3)>>2]|0;g:while(1){if(j>>>0>=s>>>0)break;o=s+-2|0;if(j>>>0>=o>>>0){G=190;break}k=s+-4|0;m=j+2|0;q=s;r=j;p=j+(q-r>>2<<1)|0;if((vS(j,s)|0)<=0)if((vS(j,p)|0)>0){l=p;G=165}else l=1;else{l=(vS(s,p)|0)>0;l=l?p:s;G=165}if((G|0)==165){G=0;D=b[l>>1]|0;b[l>>1]=b[j>>1]|0;b[j>>1]=D;l=0}if((vS(p,s)|0)>0){l=b[s>>1]|0;b[s>>1]=b[p>>1]|0;b[p>>1]=l;l=0}if((j|0)==(k|0))break;n=b[p>>1]|0;b[p>>1]=b[o>>1]|0;b[o>>1]=n;n=m;while(1){if(n>>>0>k>>>0)break;m=n;while(1){if(m>>>0>k>>>0)break;if((vS(m,o)|0)>=0)break;m=m+2|0}while(1){if(m>>>0>k>>>0)break;if((vS(k,o)|0)<=0){G=179;break}k=k+-2|0}if((G|0)==179){G=0;D=b[k>>1]|0;b[k>>1]=b[m>>1]|0;b[m>>1]=D;m=m+2|0;k=k+-2|0}n=m}D=b[n>>1]|0;b[n>>1]=b[o>>1]|0;b[o>>1]=D;do if(l|0){if(!((p|0)==(n|0)|(p|0)==(n+-2|0)))break;l=j;while(1){if(l>>>0>=s>>>0)break;m=l+2|0;if((vS(l,m)|0)<1)l=m;else break}if((l|0)==(s|0))break g}while(0);D=n;if((q-D|0)<(D-r|0)){c[F+(i<<3)>>2]=j;c[F+(i<<3)+4>>2]=k;k=s;j=n+2|0}else{c[F+(i<<3)>>2]=n+2;c[F+(i<<3)+4>>2]=s}s=k;i=i+1|0}if((G|0)==190?(G=0,(vS(j,s)|0)>0):0){D=b[s>>1]|0;b[s>>1]=b[j>>1]|0;b[j>>1]=D}}j=c[z>>2]|0;b[K>>1]=j;k=1;while(1){if((k|0)>(x|0)){G=199;break}i=K+(k<<1)|0;G=b[i>>1]|0;l=G<<16>>16;if(G<<16>>16<1){G=197;break}G=(j&65535)+l|0;b[i>>1]=G;k=k+1|0;j=G}if((G|0)==197){g=c[f+4>>2]|0;c[L>>2]=k;c[L+4>>2]=l;mx(g,16,190977,L)}else if((G|0)==199?(L=x+E|0,c[g+92>>2]=L,J=E|1,(EC(c[f+4>>2]|0,L,d[g+22>>0]|0)|0)==0):0){Bk(g+310128|0,I|0,J<<1|0)|0;Bk(g+310128+(J<<1)|0,y|0,w<<2|0)|0;break}break e}else{c[g+92>>2]=E;if(EC(c[f+4>>2]|0,E,d[g+22>>0]|0)|0)break e;Bk(g+310128|0,I|0,t<<2|2|0)|0}while(0);i=0;break c}while(0);i=-1}while(0);Nb=M;return i|0}function Bc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=Nb;Nb=Nb+16|0;f=i;switch(d|0){case 9:{if((b|0)!=70){h=(b|0)==140;d=(b|0)==180|h;switch(b|0){case 140:case 180:{f=130;g=129;break}default:{f=45;g=44}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=30;c[a+12>>2]=(b|0)==24?31:32;c[a+16>>2]=33;c[a+20>>2]=34;c[a+24>>2]=35;c[a+28>>2]=d?36:37;c[a+32>>2]=38;d=a+36|0;switch(b|0){case 140:case 180:{c[d>>2]=41;c[a+48>>2]=42;c[a+52>>2]=43;c[a+40>>2]=44;c[a+56>>2]=45;break}default:{c[d>>2]=39;c[a+40>>2]=40}}if(!h)c[a+44>>2]=46}else{c[a>>2]=44;c[a+4>>2]=45;c[a+8>>2]=30;c[a+12>>2]=47;c[a+16>>2]=33;c[a+20>>2]=34;c[a+24>>2]=35;c[a+28>>2]=48;c[a+32>>2]=49;c[a+36>>2]=39;c[a+40>>2]=40;c[a+44>>2]=46;c[a+48>>2]=50;c[a+52>>2]=51;c[a+56>>2]=52}c[a+60>>2]=45;c[a+64>>2]=46;c[a+68>>2]=47;c[a+72>>2]=48;c[a+76>>2]=49;c[a+80>>2]=50;c[a+84>>2]=51;c[a+88>>2]=52;c[a+92>>2]=53;c[a+96>>2]=54;c[a+100>>2]=55;c[a+104>>2]=56;g=(e|0)<2;d=a+108|0;c[a+116>>2]=g?17:18;c[a+112>>2]=g?19:20;a:do switch(b|0){case 140:case 180:{c[a+120>>2]=23;break}default:{f=a+120|0;if(g){c[f>>2]=21;break a}else{c[f>>2]=22;break a}}}while(0);b:do switch(b|0){case 70:case 140:case 180:{c[d>>2]=38;c[a+124>>2]=39;c[a+128>>2]=40;switch(b|0){case 140:case 180:break;default:break b}c[a+136>>2]=41;c[a+140>>2]=42;break}default:if(g){c[d>>2]=24;c[a+124>>2]=25;c[a+128>>2]=26;c[a+136>>2]=27;c[a+140>>2]=28;c[a+144>>2]=29;c[a+148>>2]=30;break b}else{c[d>>2]=31;c[a+124>>2]=32;c[a+128>>2]=33;c[a+136>>2]=34;c[a+140>>2]=35;c[a+144>>2]=36;c[a+148>>2]=37;break b}}while(0);c[a+132>>2]=g?43:44;c[a+152>>2]=45;c[a+160>>2]=46;c[a+156>>2]=47;switch(b|0){case 24:{c[a+164>>2]=48;break}case 70:{c[a+164>>2]=49;break}case 140:case 180:{c[a+164>>2]=50;c[a+180>>2]=51;c[a+184>>2]=52;break}default:c[a+164>>2]=53}c[a+168>>2]=54;c[a+172>>2]=55;c[a+176>>2]=56;c[a+188>>2]=53;c[a+192>>2]=54;c[a+196>>2]=55;c[a+200>>2]=56;c[a+204>>2]=104;c[a+208>>2]=105;f=126;h=125;e=g?57:58;d=g?59:60;break}case 10:{if((b|0)!=70){h=(b|0)==140;d=(b|0)==180|h;switch(b|0){case 140:case 180:{f=130;g=129;break}default:{f=69;g=68}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=57;c[a+12>>2]=(b|0)==24?31:58;c[a+16>>2]=59;c[a+20>>2]=60;c[a+24>>2]=61;c[a+28>>2]=d?36:62;c[a+32>>2]=63;d=a+36|0;switch(b|0){case 140:case 180:{c[d>>2]=41;c[a+48>>2]=66;c[a+52>>2]=67;c[a+40>>2]=68;c[a+56>>2]=69;break}default:{c[d>>2]=64;c[a+40>>2]=65}}if(!h)c[a+44>>2]=70}else{c[a>>2]=68;c[a+4>>2]=69;c[a+8>>2]=57;c[a+12>>2]=47;c[a+16>>2]=59;c[a+20>>2]=60;c[a+24>>2]=61;c[a+28>>2]=48;c[a+32>>2]=49;c[a+36>>2]=64;c[a+40>>2]=65;c[a+44>>2]=70;c[a+48>>2]=50;c[a+52>>2]=51;c[a+56>>2]=52}c[a+60>>2]=61;c[a+64>>2]=62;c[a+68>>2]=63;c[a+72>>2]=64;c[a+76>>2]=65;c[a+80>>2]=66;c[a+84>>2]=67;c[a+88>>2]=68;c[a+92>>2]=69;c[a+96>>2]=70;c[a+100>>2]=71;c[a+104>>2]=72;g=(e|0)<2;d=a+108|0;c[a+116>>2]=g?57:58;c[a+112>>2]=g?59:60;c:do switch(b|0){case 140:case 180:{c[a+120>>2]=23;break}default:{f=a+120|0;if(g){c[f>>2]=61;break c}else{c[f>>2]=62;break c}}}while(0);d:do switch(b|0){case 70:case 140:case 180:{c[d>>2]=38;c[a+124>>2]=39;c[a+128>>2]=40;switch(b|0){case 140:case 180:break;default:break d}c[a+136>>2]=77;c[a+140>>2]=78;break}default:if(g){c[d>>2]=63;c[a+124>>2]=64;c[a+128>>2]=65;c[a+136>>2]=66;c[a+140>>2]=67;c[a+144>>2]=68;c[a+148>>2]=69;break d}else{c[d>>2]=70;c[a+124>>2]=71;c[a+128>>2]=72;c[a+136>>2]=73;c[a+140>>2]=74;c[a+144>>2]=75;c[a+148>>2]=76;break d}}while(0);c[a+132>>2]=g?79:80;c[a+152>>2]=81;c[a+160>>2]=82;c[a+156>>2]=83;switch(b|0){case 24:{c[a+164>>2]=48;break}case 70:{c[a+164>>2]=49;break}case 140:case 180:{c[a+164>>2]=50;c[a+180>>2]=84;c[a+184>>2]=85;break}default:c[a+164>>2]=86}c[a+168>>2]=87;c[a+172>>2]=88;c[a+176>>2]=89;c[a+188>>2]=71;c[a+192>>2]=72;c[a+196>>2]=73;c[a+200>>2]=74;c[a+204>>2]=106;c[a+208>>2]=107;f=128;h=127;e=g?73:74;d=g?75:76;break}case 12:{if((b|0)!=70){h=(b|0)==140;d=(b|0)==180|h;switch(b|0){case 140:case 180:{f=130;g=129;break}default:{f=87;g=86}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=75;c[a+12>>2]=(b|0)==24?31:76;c[a+16>>2]=77;c[a+20>>2]=78;c[a+24>>2]=79;c[a+28>>2]=d?36:80;c[a+32>>2]=81;d=a+36|0;switch(b|0){case 140:case 180:{c[d>>2]=41;c[a+48>>2]=84;c[a+52>>2]=85;c[a+40>>2]=86;c[a+56>>2]=87;break}default:{c[d>>2]=82;c[a+40>>2]=83}}if(!h)c[a+44>>2]=88}else{c[a>>2]=86;c[a+4>>2]=87;c[a+8>>2]=75;c[a+12>>2]=47;c[a+16>>2]=77;c[a+20>>2]=78;c[a+24>>2]=79;c[a+28>>2]=48;c[a+32>>2]=49;c[a+36>>2]=82;c[a+40>>2]=83;c[a+44>>2]=88;c[a+48>>2]=50;c[a+52>>2]=51;c[a+56>>2]=52}c[a+60>>2]=77;c[a+64>>2]=78;c[a+68>>2]=79;c[a+72>>2]=80;c[a+76>>2]=81;c[a+80>>2]=82;c[a+84>>2]=83;c[a+88>>2]=84;c[a+92>>2]=85;c[a+96>>2]=86;c[a+100>>2]=87;c[a+104>>2]=88;g=(e|0)<2;d=a+108|0;c[a+116>>2]=g?90:91;c[a+112>>2]=g?92:93;e:do switch(b|0){case 140:case 180:{c[a+120>>2]=23;break}default:{f=a+120|0;if(g){c[f>>2]=94;break e}else{c[f>>2]=95;break e}}}while(0);f:do switch(b|0){case 70:case 140:case 180:{c[d>>2]=38;c[a+124>>2]=39;c[a+128>>2]=40;switch(b|0){case 140:case 180:break;default:break f}c[a+136>>2]=110;c[a+140>>2]=111;break}default:if(g){c[d>>2]=96;c[a+124>>2]=97;c[a+128>>2]=98;c[a+136>>2]=99;c[a+140>>2]=100;c[a+144>>2]=101;c[a+148>>2]=102;break f}else{c[d>>2]=103;c[a+124>>2]=104;c[a+128>>2]=105;c[a+136>>2]=106;c[a+140>>2]=107;c[a+144>>2]=108;c[a+148>>2]=109;break f}}while(0);c[a+132>>2]=g?112:113;c[a+152>>2]=114;c[a+160>>2]=115;c[a+156>>2]=116;switch(b|0){case 24:{c[a+164>>2]=48;break}case 70:{c[a+164>>2]=49;break}case 140:case 180:{c[a+164>>2]=50;c[a+180>>2]=117;c[a+184>>2]=118;break}default:c[a+164>>2]=119}c[a+168>>2]=120;c[a+172>>2]=121;c[a+176>>2]=122;c[a+188>>2]=89;c[a+192>>2]=90;c[a+196>>2]=91;c[a+200>>2]=92;c[a+204>>2]=108;c[a+208>>2]=109;f=130;h=129;e=g?89:90;d=g?91:92;break}case 14:{if((b|0)!=70){h=(b|0)==140;d=(b|0)==180|h;switch(b|0){case 140:case 180:{f=130;g=129;break}default:{f=105;g=104}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=93;c[a+12>>2]=(b|0)==24?31:94;c[a+16>>2]=95;c[a+20>>2]=96;c[a+24>>2]=97;c[a+28>>2]=d?36:98;c[a+32>>2]=99;d=a+36|0;switch(b|0){case 140:case 180:{c[d>>2]=41;c[a+48>>2]=102;c[a+52>>2]=103;c[a+40>>2]=104;c[a+56>>2]=105;break}default:{c[d>>2]=100;c[a+40>>2]=101}}if(!h)c[a+44>>2]=106}else{c[a>>2]=104;c[a+4>>2]=105;c[a+8>>2]=93;c[a+12>>2]=47;c[a+16>>2]=95;c[a+20>>2]=96;c[a+24>>2]=97;c[a+28>>2]=48;c[a+32>>2]=49;c[a+36>>2]=100;c[a+40>>2]=101;c[a+44>>2]=106;c[a+48>>2]=50;c[a+52>>2]=51;c[a+56>>2]=52}c[a+60>>2]=93;c[a+64>>2]=94;c[a+68>>2]=95;c[a+72>>2]=96;c[a+76>>2]=97;c[a+80>>2]=98;c[a+84>>2]=99;c[a+88>>2]=100;c[a+92>>2]=101;c[a+96>>2]=102;c[a+100>>2]=103;c[a+104>>2]=104;g=(e|0)<2;d=a+108|0;c[a+116>>2]=g?123:124;c[a+112>>2]=g?125:126;g:do switch(b|0){case 140:case 180:{c[a+120>>2]=23;break}default:{f=a+120|0;if(g){c[f>>2]=127;break g}else{c[f>>2]=128;break g}}}while(0);h:do switch(b|0){case 70:case 140:case 180:{c[d>>2]=38;c[a+124>>2]=39;c[a+128>>2]=40;switch(b|0){case 140:case 180:break;default:break h}c[a+136>>2]=143;c[a+140>>2]=144;break}default:if(g){c[d>>2]=129;c[a+124>>2]=130;c[a+128>>2]=131;c[a+136>>2]=132;c[a+140>>2]=133;c[a+144>>2]=134;c[a+148>>2]=135;break h}else{c[d>>2]=136;c[a+124>>2]=137;c[a+128>>2]=138;c[a+136>>2]=139;c[a+140>>2]=140;c[a+144>>2]=141;c[a+148>>2]=142;break h}}while(0);c[a+132>>2]=g?145:146;c[a+152>>2]=147;c[a+160>>2]=148;c[a+156>>2]=149;switch(b|0){case 24:{c[a+164>>2]=48;break}case 70:{c[a+164>>2]=49;break}case 140:case 180:{c[a+164>>2]=50;c[a+180>>2]=150;c[a+184>>2]=151;break}default:c[a+164>>2]=152}c[a+168>>2]=153;c[a+172>>2]=154;c[a+176>>2]=155;c[a+188>>2]=107;c[a+192>>2]=108;c[a+196>>2]=109;c[a+200>>2]=110;c[a+204>>2]=110;c[a+208>>2]=111;f=132;h=131;e=g?105:106;d=g?107:108;break}default:{if((d|0)>=9){c[f>>2]=200871;c[f+4>>2]=200884;c[f+8>>2]=590;mx(0,0,214689,f);ba()}if((b|0)!=70){h=(b|0)==140;d=(b|0)==180|h;switch(b|0){case 140:case 180:{f=130;g=129;break}default:{f=123;g=122}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=111;c[a+12>>2]=(b|0)==24?31:112;c[a+16>>2]=113;c[a+20>>2]=114;c[a+24>>2]=115;c[a+28>>2]=d?36:116;c[a+32>>2]=117;d=a+36|0;switch(b|0){case 140:case 180:{c[d>>2]=41;c[a+48>>2]=120;c[a+52>>2]=121;c[a+40>>2]=122;c[a+56>>2]=123;break}default:{c[d>>2]=118;c[a+40>>2]=119}}if(!h)c[a+44>>2]=124}else{c[a>>2]=122;c[a+4>>2]=123;c[a+8>>2]=111;c[a+12>>2]=47;c[a+16>>2]=113;c[a+20>>2]=114;c[a+24>>2]=115;c[a+28>>2]=48;c[a+32>>2]=49;c[a+36>>2]=118;c[a+40>>2]=119;c[a+44>>2]=124;c[a+48>>2]=50;c[a+52>>2]=51;c[a+56>>2]=52}c[a+60>>2]=109;c[a+64>>2]=110;c[a+68>>2]=111;c[a+72>>2]=112;c[a+76>>2]=113;c[a+80>>2]=114;c[a+84>>2]=115;c[a+88>>2]=116;c[a+92>>2]=117;c[a+96>>2]=118;c[a+100>>2]=119;c[a+104>>2]=120;g=(e|0)<2;d=a+108|0;c[a+116>>2]=g?156:157;c[a+112>>2]=g?158:159;i:do switch(b|0){case 140:case 180:{c[a+120>>2]=23;break}default:{f=a+120|0;if(g){c[f>>2]=160;break i}else{c[f>>2]=161;break i}}}while(0);j:do switch(b|0){case 70:case 140:case 180:{c[d>>2]=38;c[a+124>>2]=39;c[a+128>>2]=40;switch(b|0){case 140:case 180:break;default:break j}c[a+136>>2]=176;c[a+140>>2]=177;break}default:if(g){c[d>>2]=162;c[a+124>>2]=163;c[a+128>>2]=164;c[a+136>>2]=165;c[a+140>>2]=166;c[a+144>>2]=167;c[a+148>>2]=168;break j}else{c[d>>2]=169;c[a+124>>2]=170;c[a+128>>2]=171;c[a+136>>2]=172;c[a+140>>2]=173;c[a+144>>2]=174;c[a+148>>2]=175;break j}}while(0);c[a+132>>2]=g?178:179;c[a+152>>2]=180;c[a+160>>2]=181;c[a+156>>2]=182;switch(b|0){case 24:{c[a+164>>2]=48;break}case 70:{c[a+164>>2]=49;break}case 140:case 180:{c[a+164>>2]=50;c[a+180>>2]=183;c[a+184>>2]=184;break}default:c[a+164>>2]=185}c[a+168>>2]=186;c[a+172>>2]=187;c[a+176>>2]=188;c[a+188>>2]=125;c[a+192>>2]=126;c[a+196>>2]=127;c[a+200>>2]=128;c[a+204>>2]=112;c[a+208>>2]=113;f=134;h=133;e=g?121:122;d=g?123:124}}c[a+220>>2]=e;c[a+216>>2]=d;c[a+232>>2]=h;c[a+228>>2]=f;Nb=i;return}function Cc(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ha=Nb;Nb=Nb+16|0;Z=ha+8|0;_=ha;ca=c[f+21748>>2]|0;ga=c[f+21708>>2]|0;S=c[f+21712>>2]|0;T=c[f+21716>>2]|0;U=c[f+21720>>2]|0;c[Z>>2]=U;c[Z+4>>2]=c[f+21724>>2];V=c[f+21728>>2]|0;W=c[f+21732>>2]|0;X=c[f+21736>>2]|0;Y=c[f+21740>>2]|0;c[_>>2]=Y;r=c[f+21744>>2]|0;c[_+4>>2]=r;a:do if(!(g&2048)){b:do if(g&7|0){o=(c[(c[e+28196>>2]|0)+56>>2]|0)==0?-1:7;j=f+21768|0;c[j>>2]=65535;h=f+21760|0;c[h>>2]=65535;l=f+21756|0;c[l>>2]=65535;m=f+21764|0;c[m>>2]=61162;n=(o&W|0)!=0;if(n){h=65535;k=60138}else{c[l>>2]=46079;c[h>>2]=13311;c[m>>2]=9962;h=46079;k=8938}i=g&128;do if((i|0)==(Y&128|0)){if(!(o&Y)){h=h&57183;c[l>>2]=h;c[j>>2]=24415}}else{if(!i){if(!((o&Y|0)==0?1:(c[(c[e+24364>>2]|0)+((c[e+27e3>>2]|0)+U<<2)>>2]&o|0)==0))break;h=h&57183;c[l>>2]=h;c[j>>2]=24415;break}if(!(o&Y)){h=h&57343;c[l>>2]=h;c[j>>2]=24575;i=24415}else i=65375;if(!(o&r)){h=h&65375;c[l>>2]=h;c[j>>2]=i}}while(0);if(!(o&V))c[l>>2]=h&32767;if(!(o&X))c[m>>2]=k;if(g&1|0){if(!(W&1)){jq(f+21668|0,(n?2:-1)|0,4)|0;k=f+21704|0;l=e+26348|0}else{k=f+21704|0;l=e+26348|0;c[f+21668>>2]=c[(c[k>>2]|0)+(c[(c[l>>2]|0)+(S<<2)>>2]|0)>>2]}j=0;while(1){if((j|0)==2)break b;h=c[_+(j<<2)>>2]|0;if(!(h&1)){h=(h&o|0)==0?-1:2;i=j<<4;a[i+19+(f+21664)>>0]=h;i=i|11}else{R=(c[k>>2]|0)+(c[(c[l>>2]|0)+(c[Z+(j<<2)>>2]<<2)>>2]|0)|0;h=j<<1;i=j<<4;a[(i|11)+(f+21664)>>0]=a[R+(6-(d[ca+h>>0]|0))>>0]|0;h=a[R+(6-(d[ca+(h|1)>>0]|0))>>0]|0;i=i+19|0}a[f+21664+i>>0]=h;j=j+1|0}}}while(0);do if(W){h=e+25956|0;i=c[h>>2]|0;c[f+27828>>2]=c[i+(S*48|0)+12>>2];if(!(c[e+25668>>2]|0)){c[f+27868>>2]=c[i+(S*48|0)+28>>2];c[f+27908>>2]=c[i+(S*48|0)+44>>2];break}else{c[f+27868>>2]=c[i+(S*48|0)+20>>2];c[f+27908>>2]=c[i+(S*48|0)+36>>2];break}}else{c[f+27828>>2]=1077952576;c[f+27868>>2]=1077952576;c[f+27908>>2]=1077952576;h=e+25956|0}while(0);p=e+28200|0;o=0;while(1){if((o|0)==2)break a;c:do if(!(c[_+(o<<2)>>2]|0)){i=o<<4;a[i+99+(f+27824)>>0]=64;a[i+91+(f+27824)>>0]=64;a[i+59+(f+27824)>>0]=64;a[i+51+(f+27824)>>0]=64;a[i+19+(f+27824)>>0]=64;j=64;i=i|11}else{i=c[h>>2]|0;j=c[Z+(o<<2)>>2]|0;k=o<<1;l=ca+(k+8)|0;n=o<<4;a[(n|11)+(f+27824)>>0]=a[(d[l>>0]|0)+(i+(j*48|0))>>0]|0;m=ca+(k+9)|0;a[n+19+(f+27824)>>0]=a[(d[m>>0]|0)+(i+(j*48|0))>>0]|0;switch(c[(c[p>>2]|0)+12>>2]|0){case 3:{a[n+51+(f+27824)>>0]=a[(d[l>>0]|0)+16+(i+(j*48|0))>>0]|0;a[n+59+(f+27824)>>0]=a[(d[m>>0]|0)+16+(i+(j*48|0))>>0]|0;a[n+91+(f+27824)>>0]=a[(d[l>>0]|0)+32+(i+(j*48|0))>>0]|0;j=a[(d[m>>0]|0)+32+(i+(j*48|0))>>0]|0;i=n+99|0;break c}case 2:{a[n+51+(f+27824)>>0]=a[(d[l>>0]|0)+14+(i+(j*48|0))>>0]|0;a[n+59+(f+27824)>>0]=a[(d[m>>0]|0)+14+(i+(j*48|0))>>0]|0;a[n+91+(f+27824)>>0]=a[(d[l>>0]|0)+30+(i+(j*48|0))>>0]|0;j=a[(d[m>>0]|0)+30+(i+(j*48|0))>>0]|0;i=n+99|0;break c}default:{R=o<<3;a[R+51+(f+27824)>>0]=a[(d[ca+(k+12)>>0]|0)+(i+(j*48|0))>>0]|0;j=a[(d[ca+(k+13)>>0]|0)+(i+(j*48|0))>>0]|0;i=R+91|0;break c}}}while(0);a[f+27824+i>>0]=j;o=o+1|0}}while(0);if(!(g&120)){if(g&256|0?c[f+21844>>2]|0:0)q=46}else q=46;d:do if((q|0)==46){u=c[e+26352>>2]|0;v=(W|0)==0?-16843010:-1;w=(g&80|0)==0;x=e+26344|0;y=u*3|0;A=S<<2;z=A|2;A=A|3;B=(Y|0)==0?-2:-1;C=U<<2|1;D=(X|0)==0?-2:-1;E=T<<2|2;F=(g&2304|0)==0;G=(V|0)==0?-2:-1;I=f+21752|0;J=u<<1;K=u+3|0;L=ga<<2;M=e+26360|0;N=f+21828|0;O=(V&128|0)!=0;P=(W&128|0)==0;Q=(X&128|0)==0;R=(Y&128|0)==0;t=(r&128|0)==0;s=c[f+23412>>2]|0;r=0;while(1){if(r>>>0>=s>>>0)break d;m=f+28272+(r*40|0)+12|0;o=c[e+24384+(r<<2)>>2]|0;n=f+27952+(r*160|0)+48|0;p=c[e+24352+(r<<2)>>2]|0;q=12288<<(r<<1);do if(q&g|0){if(!(q&W)){l=f+27952+(r*160|0)+16|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[f+28272+(r*40|0)+4>>2]=v}else{j=(c[(c[x>>2]|0)+(S<<2)>>2]|0)+y|0;i=p+(j<<2)|0;l=c[i+4>>2]|0;k=f+27952+(r*160|0)+16|0;c[k>>2]=c[i>>2];c[k+4>>2]=l;j=p+(j<<2)+8|0;k=c[j+4>>2]|0;l=f+27952+(r*160|0)+24|0;c[l>>2]=c[j>>2];c[l+4>>2]=k;l=a[o+z>>0]|0;a[f+28272+(r*40|0)+5>>0]=l;a[f+28272+(r*40|0)+4>>0]=l;l=a[o+A>>0]|0;a[f+28272+(r*40|0)+7>>0]=l;a[f+28272+(r*40|0)+6>>0]=l}e:do if(w){if(!(q&Y)){c[f+27952+(r*160|0)+44>>2]=0;h=B}else{h=p+((c[(c[x>>2]|0)+(U<<2)>>2]|0)+3+(H(u,d[ca>>0]|0)|0)<<2)|0;c[f+27952+(r*160|0)+44>>2]=c[h>>2];h=a[o+(C+(a[ca>>0]&-2&255))>>0]|0}a[f+28272+(r*40|0)+11>>0]=h}else{l=0;while(1){if((l|0)==2)break e;i=l<<1;j=l<<4;h=j+-1|0;k=c[_+(l<<2)>>2]|0;if(!(k&q)){c[n+(h<<2)>>2]=0;j=j|7;c[n+(j<<2)>>2]=0;i=(k|0)==0?-2:-1;a[m+j>>0]=i}else{ia=c[Z+(l<<2)>>2]|0;ka=(c[(c[x>>2]|0)+(ia<<2)>>2]|0)+3|0;ia=ia<<2|1;ja=ca+i|0;k=p+((H(u,d[ja>>0]|0)|0)+ka<<2)|0;c[n+(h<<2)>>2]=c[k>>2];i=ca+(i|1)|0;ka=p+((H(u,d[i>>0]|0)|0)+ka<<2)|0;k=j|7;c[n+(k<<2)>>2]=c[ka>>2];a[m+h>>0]=a[o+(ia+(a[ja>>0]&-2&255))>>0]|0;i=a[o+(ia+(a[i>>0]&-2&255))>>0]|0;h=k}a[m+h>>0]=i;l=l+1|0}}while(0);if(!(q&X)){c[f+27952+(r*160|0)+32>>2]=0;h=D}else{c[f+27952+(r*160|0)+32>>2]=c[p+((c[(c[x>>2]|0)+(T<<2)>>2]|0)+y<<2)>>2];h=a[o+E>>0]|0}k=f+28272+(r*40|0)+8|0;a[k>>0]=h;j=f+28272+(r*40|0)+6|0;if((a[j>>0]|h)<<24>>24<0){if(!(q&V)){c[f+27952+(r*160|0)+12>>2]=0;h=G}else{h=c[I>>2]|0;c[f+27952+(r*160|0)+12>>2]=c[p+(K+(c[(c[x>>2]|0)+(ga<<2)>>2]|0)+(h&J)<<2)>>2];h=a[o+(L|h&2|1)>>0]|0}a[f+28272+(r*40|0)+3>>0]=h}if(F){a[f+28272+(r*40|0)+30>>0]=-2;a[f+28272+(r*40|0)+14>>0]=-2;c[f+27952+(r*160|0)+56>>2]=0;c[f+27952+(r*160|0)+120>>2]=0;if(!(c[M>>2]|0))break}else if(!(c[M>>2]|0))break;if(!(c[N>>2]|0)){if(O?(da=f+28272+(r*40|0)+3|0,ea=a[da>>0]|0,ea<<24>>24>-1):0){a[da>>0]=ea<<24>>24>>1;ka=f+27952+(r*160|0)+14|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+7|0;a[ka>>0]=d[ka>>0]<<1}do if(!P){h=f+28272+(r*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24>>1;ka=f+27952+(r*160|0)+18|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+9|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24>>1;ka=f+27952+(r*160|0)+22|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+11|0;a[ka>>0]=d[ka>>0]<<1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=h<<24>>24>>1;ka=f+27952+(r*160|0)+26|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+13|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24>>1;ka=f+27952+(r*160|0)+30|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+15|0;a[ka>>0]=d[ka>>0]<<1}while(0);if(!Q?(fa=a[k>>0]|0,fa<<24>>24>-1):0){a[k>>0]=fa<<24>>24>>1;ka=f+27952+(r*160|0)+34|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+17|0;a[ka>>0]=d[ka>>0]<<1}do if(!R){h=f+28272+(r*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24>>1;ka=f+27952+(r*160|0)+46|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+23|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24>>1;ka=f+27952+(r*160|0)+78|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+39|0;a[ka>>0]=d[ka>>0]<<1}while(0);if(t)break;h=f+28272+(r*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24>>1;ka=f+27952+(r*160|0)+110|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+55|0;a[ka>>0]=d[ka>>0]<<1}h=f+28272+(r*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24>>1;ka=f+27952+(r*160|0)+142|0;b[ka>>1]=b[ka>>1]<<1;ka=f+28352+(r*80|0)+71|0;a[ka>>0]=d[ka>>0]<<1;break}else{if(!O?($=f+28272+(r*40|0)+3|0,aa=a[$>>0]|0,aa<<24>>24>-1):0){a[$>>0]=aa<<24>>24<<1;ka=f+27952+(r*160|0)+14|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+7|0;a[ka>>0]=(d[ka>>0]|0)>>>1}do if(P){h=f+28272+(r*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+18|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+9|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+22|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+11|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=h<<24>>24<<1;ka=f+27952+(r*160|0)+26|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+13|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+30|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+15|0;a[ka>>0]=(d[ka>>0]|0)>>>1}while(0);if(Q?(ba=a[k>>0]|0,ba<<24>>24>-1):0){a[k>>0]=ba<<24>>24<<1;ka=f+27952+(r*160|0)+34|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+17|0;a[ka>>0]=(d[ka>>0]|0)>>>1}do if(R){h=f+28272+(r*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+46|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+23|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+78|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+39|0;a[ka>>0]=(d[ka>>0]|0)>>>1}while(0);if(!t)break;h=f+28272+(r*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+110|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+55|0;a[ka>>0]=(d[ka>>0]|0)>>>1}h=f+28272+(r*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;ka=f+27952+(r*160|0)+142|0;b[ka>>1]=(b[ka>>1]|0)/2|0;ka=f+28352+(r*80|0)+71|0;a[ka>>0]=(d[ka>>0]|0)>>>1;break}}while(0);r=r+1|0}}while(0);c[f+21840>>2]=(Y>>>24&1)+(W>>>24&1);Nb=ha;return}function Dc(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;_=Nb;Nb=Nb+80|0;B=_+64|0;w=_+48|0;v=_+40|0;u=_+32|0;t=_+24|0;s=_+16|0;p=_+8|0;n=_;S=f+568|0;q=c[S>>2]|0;V=f+560|0;r=c[V>>2]|0;o=c[f>>2]|0;a:do if((((c[o+676>>2]|0?(m=f+572|0,c[m>>2]|0):0)?(c[o+792>>2]|0)==0:0)?RE(f)|0:0)?(U=f+556|0,i=c[U>>2]|0,j=i*3|0,k=(c[o+336>>2]|0)+(c[o+332>>2]|0)|0,(c[m>>2]|0)!=(H(k,j)|0)):0){g=f+672|0;C=c[g>>2]|0;W=C+32|0;Z=f+580|0;l=r+-1|0;X=f+564|0;h=0;while(1){if((h|0)>=(i|0))break;Q=(c[Z>>2]|0)+((H(c[X>>2]|0,l)|0)+h)|0;if((a[Q>>0]|0)!=127)break;h=h+1|0}if((((h|0)==(i|0)?(c[o+48>>2]|0)==2:0)?(c[o+128>>2]|0)+15&16|0:0)?(c[m>>2]|0)==(H(k+1|0,j)|0):0){mx(o,48,195531,n);break}A=f+704|0;h=c[A>>2]|0;do if(h|0){if(((c[h+68>>2]|0)==(c[C+68>>2]|0)?(c[h+72>>2]|0)==(c[C+72>>2]|0):0)?(c[h+80>>2]|0)==(c[C+80>>2]|0):0)break;mx(o,24,195560,p);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[A+16>>2]=0;c[A+20>>2]=0;c[A+24>>2]=0;c[A+28>>2]=0}while(0);z=f+736|0;h=c[z>>2]|0;do if(h|0){Q=c[g>>2]|0;if(((c[h+68>>2]|0)==(c[Q+68>>2]|0)?(c[h+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[h+80>>2]|0)==(c[Q+80>>2]|0):0)break;mx(c[f>>2]|0,24,195610,s);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0}while(0);if(!((c[f+680>>2]|0)!=0?(c[f+688>>2]|0)!=0:0))T=27;b:do if((T|0)==27){mx(c[f>>2]|0,16,195656,t);i=(H(q<<3,r)|0)+16|0;h=0;while(1){if(h>>>0>=2)break b;j=cP(H(c[X>>2]<<2,c[V>>2]|0)|0)|0;k=f+768+(h<<2)|0;c[k>>2]=j;j=cP(i)|0;c[f+776+(h<<2)>>2]=j;k=c[k>>2]|0;if((j|0)==0|(k|0)==0)break;c[f+688+(h<<2)>>2]=c[k+4>>2];c[f+680+(h<<2)>>2]=(c[j+4>>2]|0)+16;h=h+1|0}g=0;while(1){if((g|0)==2)break a;nT(f+768+(g<<2)|0);nT(f+776+(g<<2)|0);c[f+688+(g<<2)>>2]=0;c[f+680+(g<<2)>>2]=0;g=g+1|0}}while(0);c:do if(c[(c[f>>2]|0)+680>>2]&1024|0){h=0;while(1){if((h|0)>=(c[V>>2]|0))break c;i=0;while(1){if((i|0)>=(c[U>>2]|0))break;P=(c[Z>>2]|0)+((H(c[X>>2]|0,h)|0)+i)|0;Q=c[f>>2]|0;c[u>>2]=d[P>>0];mx(Q,48,195683,u);i=i+1|0}mx(c[f>>2]|0,48,214486,v);h=h+1|0}}while(0);P=f+552|0;Q=f+548|0;l=1;while(1){if((l|0)==4)break;n=9<<l;o=1<<l;i=0;h=c[P>>2]|0;while(1){m=h+-1|0;if((h|0)<=0)break;j=(c[Z>>2]|0)+(c[(c[Q>>2]|0)+(m<<2)>>2]|0)|0;k=d[j>>0]|0;h=(n&k|0)==0?i:1;if(!h)a[j>>0]=o|k;i=(k&1|0)==0?h:0;h=m}l=l+1|0}O=f+792|0;d:do if(c[O>>2]|0){i=0;h=c[P>>2]|0;while(1){m=h+-1|0;if((h|0)<=0)break d;j=(c[Z>>2]|0)+(c[(c[Q>>2]|0)+(m<<2)>>2]|0)|0;k=a[j>>0]|0;l=k&255;h=(l&98|0)==0?((l&16|0)==0?i:0):1;if(!h)a[j>>0]=k|2;i=(l&1|0)==0?h:0;h=m}}while(0);e:do if(c[(c[f>>2]|0)+688>>2]&8|0){h=1;k=(c[P>>2]|0)+-2|0;while(1){if((k|0)<((c[U>>2]|0)+100|0))break e;N=c[Q>>2]|0;M=c[Z>>2]|0;i=M+(c[N+(k<<2)>>2]|0)|0;j=a[i>>0]|0;L=j&255;h=(L&1|0)==0?h:1;if((h|0)==0|((L&112|0)==0|(j<<24>>24==127?1:(a[M+(c[N+(k+1<<2)>>2]|0)>>0]|0)!=127))^1){a[i>>0]=j|14;h=0}k=k+-1|0}}while(0);N=f+600|0;h=9999999;l=1;while(1){if((l|0)==4)break;m=1<<l;n=72688+(l+-1<<2)|0;i=c[P>>2]|0;while(1){k=i+-1|0;if((i|0)<=0)break;M=c[(c[Q>>2]|0)+(k<<2)>>2]|0;i=(c[Z>>2]|0)+M|0;j=d[i>>0]|0;L=c[N>>2]|0;if(!((L|0)!=0?(a[L+M>>0]|0)!=0:0))h=h+1|0;h=(m&j|0)==0?h:0;do if(!(c[O>>2]|0)){if((h|0)>=50)break;a[i>>0]=m|j}else{if((h|0)>=(c[n>>2]|0))break;a[i>>0]=m|j}while(0);h=(j&1|0)==0?h:9999999;i=k}l=l+1|0}h=0;l=0;while(1){j=c[P>>2]|0;if((l|0)>=(j|0))break;i=(c[Z>>2]|0)+(c[(c[Q>>2]|0)+(l<<2)>>2]|0)|0;j=d[i>>0]|0;k=j&14;if(!(j&1)){a[i>>0]=h|j;h=k|h}else h=k;l=l+1|0}f:do if(!(c[O>>2]|0)){i=0;h=j;while(1){if((i|0)>=(h|0))break f;h=(c[Z>>2]|0)+(c[(c[Q>>2]|0)+(i<<2)>>2]|0)|0;M=d[h>>0]|0;a[h>>0]=(M&14|0)==0?M:M|14;i=i+1|0;h=c[P>>2]|0}}else h=j;while(0);i=0;j=0;k=0;l=0;while(1){if((l|0)>=(h|0))break;M=d[(c[Z>>2]|0)+(c[(c[Q>>2]|0)+(l<<2)>>2]|0)>>0]|0;i=(M>>>2&1)+i|0;j=(M>>>3&1)+j|0;k=(M>>>1&1)+k|0;l=l+1|0}M=c[f>>2]|0;L=(AE(c[(c[g>>2]|0)+88>>2]|0)|0)<<24>>24;c[w>>2]=i;c[w+4>>2]=k;c[w+8>>2]=j;c[w+12>>2]=L;mx(M,32,195688,w);i=(kh(f)|0)==0;i=i?12296:1;M=f+696|0;j=0;while(1){h=c[P>>2]|0;if((j|0)>=(h|0))break;h=c[(c[Q>>2]|0)+(j<<2)>>2]|0;if((a[(c[Z>>2]|0)+h>>0]&12)==12)c[(c[M>>2]|0)+(h<<2)>>2]=i;j=j+1|0}L=c[A>>2]|0;if(!((L|0)!=0?(c[L>>2]|0)!=0:0))T=94;g:do if((T|0)==94){L=c[z>>2]|0;if(L|0?c[L>>2]|0:0)break;j=0;while(1){if((j|0)>=(h|0))break g;i=(c[M>>2]|0)+(c[(c[Q>>2]|0)+(j<<2)>>2]<<2)|0;if(!(c[i>>2]&7)){c[i>>2]=1;h=c[P>>2]|0}j=j+1|0}}while(0);u=f+608|0;v=f+612|0;w=f+800|0;x=f+804|0;y=f+608|0;o=0;while(1){h=c[V>>2]|0;if((o|0)>=(h|0))break;n=o<<1;m=0;while(1){if((m|0)>=(c[U>>2]|0))break;i=(H(c[X>>2]|0,o)|0)+m|0;j=c[(c[M>>2]|0)+(i<<2)>>2]|0;h=c[A>>2]|0;if(!h){h=1;l=2}else{l=(c[h>>2]|0)!=0;h=(l^1)&1;l=l?1:2}L=d[(c[Z>>2]|0)+i>>0]|0;if(!((L&2|0)==0|(L&8|j&7|0)!=0)){h:do if(!(j&64)){L=c[f+680+(h<<2)>>2]|0;h=(H(n,c[S>>2]|0)|0)+(m<<1)|0;c[u>>2]=b[L+(h<<2)>>1];c[v>>2]=b[L+(h<<2)+2>>1];h=0}else{j=c[S>>2]|0;k=(H(j,o)|0)+m<<1;i=f+680+(h<<2)|0;h=0;while(1){if((h|0)==4){h=1;break h}K=c[i>>2]|0;L=(h&1|k)+(H(h>>>1,j)|0)|0;c[f+608+(h<<3)>>2]=b[K+(L<<2)>>1];c[f+608+(h<<3)+4>>2]=b[K+(L<<2)+2>>1];h=h+1|0}}while(0);pc[c[w>>2]&1](c[x>>2]|0,0,l,h,y,m,o,0,0)}m=m+1|0}o=o+1|0}i:do if((c[(c[g>>2]|0)+88>>2]|0)==3){o=f+784|0;p=f+640|0;q=f+644|0;r=f+786|0;s=f+740|0;t=f+744|0;n=0;j:while(1){if((n|0)>=(h|0)){R=h;break i}m=n<<1;l=0;while(1){if((l|0)>=(c[U>>2]|0))break;k=(H(m,c[S>>2]|0)|0)+(l<<1)|0;L=(H(c[X>>2]|0,n)|0)+l|0;if(!((a[(c[Z>>2]|0)+L>>0]&10)!=10?1:(c[(c[M>>2]|0)+(L<<2)>>2]&7|0)!=0)){L=c[A>>2]|0;if((L|0)!=0?(c[L>>2]|0)!=0:0)h=3;else h=2;L=c[z>>2]|0;if(!((L|0)!=0?(c[L>>2]|0)!=0:0))h=h&1;i=b[o>>1]|0;if(!(i<<16>>16)){c[u>>2]=0;c[v>>2]=0;c[p>>2]=0;i=0}else{i=i&65535;j=e[r>>1]|0;if((c[(c[f>>2]|0)+48>>2]|0)==28)break j;js(c[s>>2]|0,n,0);L=c[t>>2]|0;J=b[L+(k<<2)>>1]|0;K=(H(J,j)|0)/(i|0)|0;c[u>>2]=K;L=b[L+(k<<2)+2>>1]|0;K=(H(L,j)|0)/(i|0)|0;c[v>>2]=K;K=j-i|0;J=(H(K,J)|0)/(i|0)|0;c[p>>2]=J;i=(H(K,L)|0)/(i|0)|0}c[q>>2]=i;pc[c[w>>2]&1](c[x>>2]|0,0,h,0,y,l,n,0,0)}l=l+1|0}n=n+1|0;h=c[V>>2]|0}c[B>>2]=195739;c[B+4>>2]=195778;c[B+8>>2]=1216;mx(0,0,214689,B);ba()}else{Fc(f);R=c[V>>2]|0}while(0);L=C+36|0;K=C+40|0;B=f+588|0;C=f+592|0;D=f+596|0;y=0;while(1){if((y|0)>=(R|0))break;E=y<<4;F=y<<3;A=c[U>>2]|0;z=0;while(1){if((z|0)>=(A|0))break;G=(H(c[X>>2]|0,y)|0)+z|0;if(!((c[(c[M>>2]|0)+(G<<2)>>2]&7|0)!=0?(c[O>>2]|0)!=0:0))T=143;do if((T|0)==143){T=0;x=c[g>>2]|0;l=c[W>>2]|0;m=(c[x>>2]|0)+(z<<4)+(H(E,l)|0)|0;n=c[x+4>>2]|0;v=z<<3;I=c[L>>2]|0;o=H(I,F)|0;x=c[x+8>>2]|0;J=c[K>>2]|0;w=H(J,F)|0;p=c[S>>2]|0;q=(c[B>>2]|0)+((H(p,y)|0)+z<<1<<1)|0;j=0;while(1){if((j|0)==4)break;r=j<<3&8;s=j>>>1;t=s<<3;k=0;h=0;while(1){if((k|0)==8)break;u=(H(k+t|0,l)|0)+r|0;i=0;while(1){if((i|0)==8)break;$=h+(d[m+(u+i)>>0]|0)|0;i=i+1|0;h=$}k=k+1|0}$=q+((H(s,p)|0)+(j&1)<<1)|0;b[$>>1]=(h+4|0)>>>3;j=j+1|0}o=n+v+o|0;n=x+v+w|0;if(!x)break;h=0;i=0;k=0;while(1){if((k|0)==8)break;l=H(k,I)|0;m=H(k,J)|0;j=0;while(1){if((j|0)==8)break;$=i+(d[o+(j+l)>>0]|0)|0;x=h+(d[n+(j+m)>>0]|0)|0;j=j+1|0;h=x;i=$}k=k+1|0}b[(c[C>>2]|0)+(G<<1)>>1]=(i+4|0)>>>3;b[(c[D>>2]|0)+(G<<1)>>1]=(h+4|0)>>>3}while(0);z=z+1|0}y=y+1|0}oe(f,c[B>>2]|0,c[U>>2]<<1,R<<1,c[S>>2]|0,1);oe(f,c[C>>2]|0,c[U>>2]|0,c[V>>2]|0,c[X>>2]|0,0);oe(f,c[D>>2]|0,c[U>>2]|0,c[V>>2]|0,c[X>>2]|0,0);Un(c[B>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[S>>2]|0);l=0;while(1){h=c[V>>2]|0;if((l|0)>=(h|0))break;i=l<<4;j=l<<3;h=0;while(1){if((h|0)>=(c[U>>2]|0))break;k=(H(c[X>>2]|0,l)|0)+h|0;do if(!(c[(c[M>>2]|0)+(k<<2)>>2]&120)){if(!(a[(c[Z>>2]|0)+k>>0]&2))break;T=c[g>>2]|0;R=(c[T>>2]|0)+(h<<4)+(H(i,c[W>>2]|0)|0)|0;$=h<<3;S=(c[T+4>>2]|0)+$+(H(c[L>>2]|0,j)|0)|0;T=c[T+8>>2]|0;$=T+$+(H(c[K>>2]|0,j)|0)|0;T=(T|0)==0;Sj(f,R,T?0:S,T?0:$,h,l)}while(0);h=h+1|0}l=l+1|0}if(c[(c[f>>2]|0)+676>>2]&2|0?(uf(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,h<<1,c[W>>2]|0,1),nf(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[W>>2]|0,1),Y=c[g>>2]|0,c[Y+8>>2]|0):0){uf(f,c[Y+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[L>>2]|0,0);uf(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);nf(f,c[(c[g>>2]|0)+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[L>>2]|0,0);nf(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0)}j=f+604|0;i=0;while(1){if((i|0)>=(c[P>>2]|0))break;k=c[(c[Q>>2]|0)+(i<<2)>>2]|0;h=c[N>>2]|0;do if(h|0){if((a[(c[Z>>2]|0)+k>>0]&14)==0?1:(c[(c[g>>2]|0)+88>>2]|0)==3)break;a[h+k>>0]=0}while(0);h=c[j>>2]|0;if(h|0)a[h+k>>0]=1;i=i+1|0}h=0;while(1){if((h|0)==2)break;nT(f+768+(h<<2)|0);nT(f+776+(h<<2)|0);c[f+688+(h<<2)>>2]=0;c[f+680+(h<<2)>>2]=0;h=h+1|0}h=g+96|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}while(0);Nb=_;return}
|
|
function HB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);An(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function IB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b,32,c);Vh(g,b+(0-(c<<1))+2|0,c);gI(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function JB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0;g=Nb;Nb=Nb+64|0;e=g;f=e;h=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+48>>2]=c[a+32>>2];c[e+12>>2]=b;c[e+36>>2]=d;i=+Sc(e,a);Nb=g;return +i}function KB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);Dn(f,g+16|0,8);nh(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function LB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);QH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function MB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);RH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);SH(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);Bn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function PB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+288|0;g=d+208|0;f=d+32|0;e=d;_s(g,b+(0-(c<<1))|0,c);Dn(f,g+16|0,8);nh(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function QB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;uE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);QH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function RB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;vE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);RH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function SB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;wE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);SH(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function TB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b,8,c);Xt(g,b+(0-(c<<1))+1|0,c);jh(e,g+16|0,8,8);qq(a,f,e,c,8,8,8);Nb=d;return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+16|0;e=d;lA(g,b+(0-(c<<1))|0,c);jo(f,g+8|0,4);Ih(e,d+32|0,b,4,c);Tv(a,f,e,c,4);Nb=d;return}function VB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;eq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))+2|0,c);Fr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function WB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;hq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))+2|0,c);Gr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;iq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))+2|0,c);Hr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+64|0;f=d+104|0;e=d+96|0;mA(g,b+(0-(c<<1))|0,c);Jr(f,g+8|0,4);Cl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function ZB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b,16,c);yo(g,b+(0-(c<<1))+1|0,c);mI(e,g+32|0,16);jN(a,f,e,c,16);Nb=d;return}function _B(a){a=a|0;var b=0;b=0;while(1){if((b|0)==32)break;nT(a+(b<<2)|0);b=b+1|0}b=0;while(1){if((b|0)==256)break;nT(a+128+(b<<2)|0);b=b+1|0}nT(a+1156|0);nT(a+1152|0);c[a+1160>>2]=0;c[a+1164>>2]=0;return}function $B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b,8,c);Xt(g,b+(0-(c<<1))+1|0,c);jh(e,g+16|0,8,8);$o(a,f,e,c,8,8,8);Nb=d;return}function aC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+160|0;g=d+112|0;f=d+16|0;e=d;lA(g,b+(0-(c<<1))|0,c);jo(f,g+8|0,4);Ih(e,d+32|0,b,4,c);dv(a,f,e,c,4);Nb=d;return}function bC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b,16,c);yo(g,b+(0-(c<<1))+1|0,c);mI(e,g+32|0,16);lN(a,f,e,c,16);Nb=d;return}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);Dn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function dC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[b+36>>2]|0;f=c[e+636>>2]|0;if(c[(c[a+4>>2]|0)+808>>2]&1|0){a=c[a+26992>>2]<<4>>f;d=d<<4>>f;js(e+4|0,(d|0)<(a|0)?d:a+-1|0,(f|0?(c[b+24>>2]|0)!=1:0)&1)}return}function eC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))+2|0,c);Dn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);xn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function gC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);An(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);Bn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function iC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+64|0;g=d+36|0;f=d+32|0;e=d+28|0;OI(g,b+(0-(c<<1))|0,c);Ds(f,g+4|0,2);em(e,d,b,2,c);Fx(a,f,e,c,2);Nb=d;return}function jC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);gI(e,g+64|0,32);eN(a,f,e,c,32);Nb=d;return}function kC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);xn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);An(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function mC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);Bn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function nC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1696|0;g=d+1024|0;f=d+512|0;e=d;QE(f,b,32,c);Vh(g,b+(0-(c<<1))|0,c);gI(e,g+64|0,32);gN(a,f,e,c,32);Nb=d;return}function oC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=Nm(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0<d>>>0?f:d;Bk(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function pC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b+c|0,4,c);lA(g,b+(0-(c<<1))+1|0,c);jo(e,g+8|0,4);Tv(a,f,e,c,4);Nb=d;return}function qC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;nq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))+2|0,c);Jr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function rC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b+c|0,4,c);lA(g,b+(0-(c<<1))+1|0,c);jo(e,g+8|0,4);dv(a,f,e,c,4);Nb=d;return}function sC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;do if(!a)d=0;else{a=c[a>>2]|0;e=(b|0)==0;if((e&(a|0)!=0?(f=c[a+8>>2]|0,f|0):0)?c[f>>2]|0:0){d=f;break}if(!e?(d=b+48|0,c[d>>2]|0):0)break;d=0}while(0);return d|0}function tC(a,b,c,d,e,f,g,h,i,j,k,l,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;i=i|0;j=j|0;k=+k;l=+l;m=m|0;n=n|0;return bc[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0,j|0,+k,+l,m|0,n|0)|0}function uC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b,8,c);Xt(g,b+(0-(c<<1))|0,c);jh(e,g+16|0,8,8);qq(a,f,e,c,8,8,8);Nb=d;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;eq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))|0,c);Fr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function wC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;hq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))|0,c);Gr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function xC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;iq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))|0,c);Hr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b,16,c);yo(g,b+(0-(c<<1))|0,c);mI(e,g+32|0,16);jN(a,f,e,c,16);Nb=d;return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+240|0;g=d+128|0;f=d+64|0;e=d;Xg(f,b,8,c);Xt(g,b+(0-(c<<1))|0,c);jh(e,g+16|0,8,8);$o(a,f,e,c,8,8,8);Nb=d;return}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+848|0;g=d+512|0;f=d+256|0;e=d;dF(f,b,16,c);yo(g,b+(0-(c<<1))|0,c);mI(e,g+32|0,16);lN(a,f,e,c,16);Nb=d;return}function BC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);Dn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+32|0;g=d+8|0;f=d+4|0;e=d;Rq(f,b+c|0,2,c);OI(g,b+(0-(c<<1))+1|0,c);Ds(e,g+4|0,2);Fx(a,f,e,c,2);Nb=d;return}function DC(a){a=a|0;c[a>>2]=26;c[a+4>>2]=1;c[a+8>>2]=27;c[a+12>>2]=28;c[a+16>>2]=189;c[a+20>>2]=190;c[a+24>>2]=691;c[a+28>>2]=191;c[a+32>>2]=1;c[a+36>>2]=116;c[a+40>>2]=37;c[a+44>>2]=38;c[a+48>>2]=39;c[a+52>>2]=40;return}function EC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;f=g+8|0;e=g;if((b|0)>=1)if((d|0)<(b|0))a=0;else{c[f>>2]=d;mx(a,16,191021,f);a=-1}else{c[e>>2]=b;mx(a,16,190999,e);a=-1}Nb=g;return a|0}function FC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b+c|0,8,c);_s(g,b+(0-(c<<1))|0,c);Dn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function GC(){var a=0,b=0,d=0,e=0;b=Nb;Nb=Nb+16|0;a=b;Ia(a|0,0)|0;e=c[a>>2]|0;e=oK(e|0,((e|0)<0)<<31>>31|0,1e6,0)|0;d=M()|0;a=c[a+4>>2]|0;a=kP(e|0,d|0,a|0,((a|0)<0)<<31>>31|0)|0;L(M()|0);Nb=b;return a|0}function HC(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(b|0){d=b+4|0;while(1){f=c[b>>2]|0;e=f+-1|0;c[b>>2]=e;if(!f)break;zM((c[d>>2]|0)+(e<<3)|0);zM((c[d>>2]|0)+(c[b>>2]<<3)+4|0)}zM(d)}zM(a);return}function IC(a,b,d,e,g){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;g=c[g>>2]|0;f[a>>2]=+f[b+((d&15)<<2)>>2]*(c[h>>2]=g^e>>>1<<31,+f[h>>2]);f[a+4>>2]=+f[b+((d>>>4&15)<<2)>>2]*(c[h>>2]=g^e<<31,+f[h>>2]);return a+8|0}function JC(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=UT((d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24)>>>(g&7),b)|0;b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function KC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);xn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function LC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);An(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function MC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);Bn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function NC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b+c|0,4,c);lA(g,b+(0-(c<<1))|0,c);jo(e,g+8|0,4);Tv(a,f,e,c,4);Nb=d;return}function OC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;nq(f,b+c|0,4,c);mA(g,b+(0-(c<<1))|0,c);Jr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function PC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);xn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function QC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);An(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function RC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);Bn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function SC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b+c|0,4,c);lA(g,b+(0-(c<<1))|0,c);jo(e,g+8|0,4);dv(a,f,e,c,4);Nb=d;return}function TC(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=H(((d[a+-1>>0]|0)+2+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function UC(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b>>2]|0;b=c[b+4>>2]|0;e=a+28|0;Za(3,e|0);lJ(33984,c[e>>2]|0);lJ(33985,c[a+32>>2]|0);lJ(33986,c[a+36>>2]|0);jJ(164745)|0;c[a+44>>2]=d;c[a+48>>2]=b;return}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;eq(f,b,4,c);mA(g,b+(0-(c<<1))+2|0,c);Fr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function WC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;hq(f,b,4,c);mA(g,b+(0-(c<<1))+2|0,c);Gr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function XC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;iq(f,b,4,c);mA(g,b+(0-(c<<1))+2|0,c);Hr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function YC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+32|0;g=d+8|0;f=d+4|0;e=d;Rq(f,b+c|0,2,c);OI(g,b+(0-(c<<1))|0,c);Ds(e,g+4|0,2);Fx(a,f,e,c,2);Nb=d;return}function ZC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);Dn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function _C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b,8,c);_s(g,b+(0-(c<<1))+2|0,c);Dn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function $C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);xn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function aD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);An(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function bD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);Bn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function cD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;nl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);xn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function dD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;sl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);An(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function eD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;tl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);Bn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function fD(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=(e|0)==0;h=0;while(1){if((h|0)>=(f|0))break;i=d+(H(h,g)|0)|0;i=Yb[b&15](a,i)|0;if(!j)c[e+(h<<2)>>2]=i;h=h+1|0}return 0}function gD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b,4,c);lA(g,b+(0-(c<<1))+1|0,c);jo(e,g+8|0,4);Tv(a,f,e,c,4);Nb=d;return}function hD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;nq(f,b,4,c);mA(g,b+(0-(c<<1))+2|0,c);Jr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function iD(a){a=a|0;var b=0,e=0,f=0,g=0;b=c[a>>2]|0;if(!b)a=31;else{e=(b|0)>-1?b:0-b|0;g=e>>>0>65535;e=g?e>>>16:e;g=g?16:0;f=(e&65280|0)==0;e=30-(f?g:g|8)-(d[91680+(f?e:e>>>8)>>0]|0)|0;c[a>>2]=b<<e;a=e}return a|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b,4,c);lA(g,b+(0-(c<<1))+1|0,c);jo(e,g+8|0,4);dv(a,f,e,c,4);Nb=d;return}function kD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;eq(f,b,4,c);mA(g,b+(0-(c<<1))|0,c);Fr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function lD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;hq(f,b,4,c);mA(g,b+(0-(c<<1))|0,c);Gr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;iq(f,b,4,c);mA(g,b+(0-(c<<1))|0,c);Hr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function nD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;f=g;if(d>>>0<=2147483615?(e=rR(d+32|0)|0,c[f>>2]=e,(e|0)!=0):0){if(($p(a,b,e,d)|0)<0){zM(f);e=0}}else e=0;Nb=g;return e|0}function oD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);Dn(e,g+16|0,8);dr(a,f,e,c,8);Nb=d;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+32|0;g=d+8|0;f=d+4|0;e=d;Rq(f,b,2,c);OI(g,b+(0-(c<<1))+1|0,c);Ds(e,g+4|0,2);Fx(a,f,e,c,2);Nb=d;return}function qD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+144|0;g=d+64|0;f=d+32|0;e=d;vl(f,b,8,c);_s(g,b+(0-(c<<1))|0,c);Dn(e,g+16|0,8);Hp(a,f,e,c,8);Nb=d;return}function rD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b,4,c);lA(g,b+(0-(c<<1))|0,c);jo(e,g+8|0,4);Tv(a,f,e,c,4);Nb=d;return}function sD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;f=d+40|0;e=d+32|0;nq(f,b,4,c);mA(g,b+(0-(c<<1))|0,c);Jr(e,g+8|0,4);Gv(a,f,e,c,4);Nb=d;return}function tD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+80|0;g=d+32|0;f=d+16|0;e=d;dm(f,b,4,c);lA(g,b+(0-(c<<1))|0,c);jo(e,g+8|0,4);dv(a,f,e,c,4);Nb=d;return}function uD(a,c,d,e,f,g,h){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=(d|0))break;b[a+(i<<1)>>1]=b[c+(f<<1)>>1]|0;j=kP(e|0,f|0,g|0,h|0)|0;i=i+1|0;e=j;f=M()|0}return}function vD(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=(c|0))break;g[a+(i<<3)>>3]=+g[b+(e<<3)>>3];j=kP(d|0,e|0,f|0,h|0)|0;i=i+1|0;d=j;e=M()|0}return}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+32|0;g=d+8|0;f=d+4|0;e=d;Rq(f,b,2,c);OI(g,b+(0-(c<<1))|0,c);Ds(e,g+4|0,2);Fx(a,f,e,c,2);Nb=d;return}function xD(a){a=a|0;var b=0,d=0;b=0;while(1){if(b>>>0>=28){b=0;a=0;break}if((c[90320+(b<<4)+4>>2]|0)==(a|0)){d=4;break}b=b+1|0}if((d|0)==4){a=90320+(b<<4)+8|0;b=c[a+4>>2]|0;a=c[a>>2]|0}L(b|0);return a|0}function yD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+f[d>>2];f[a>>2]=e*+f[b+((c&3)<<2)>>2];f[a+4>>2]=e*+f[b+((c>>>2&3)<<2)>>2];f[a+8>>2]=e*+f[b+((c>>>4&3)<<2)>>2];f[a+12>>2]=e*+f[b+((c>>>6&3)<<2)>>2];return a+16|0}function zD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=0;while(1){if((e|0)>=(d|0))break;g=c+(e<<2)|0;f[a+(e<<3)>>2]=+f[b+(e<<3)>>2]*+f[g>>2];f[a+(e<<3)+4>>2]=+f[b+(e<<3)+4>>2]*+f[g>>2];e=e+1|0}return}function AD(){var a=0;a=1;while(1){if((a|0)==320)break;c[32+(a+320<<2)>>2]=c[32+(320-a<<2)>>2];a=a+1|0}f[392]=-+f[392];f[520]=-+f[520];a=0;while(1){if((a|0)==320)break;c[284704+(a<<2)>>2]=c[32+(a<<1<<2)>>2];a=a+1|0}return}function BD(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=(d|0))break;c[a+(i<<2)>>2]=c[b+(f<<2)>>2];j=kP(e|0,f|0,g|0,h|0)|0;i=i+1|0;e=j;f=M()|0}return}function CD(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=0;while(1){e=g+1|0;if(e>>>0>=d>>>0)break;f=a[c>>0]|0;if(!(f<<24>>24))break;a[b>>0]=f;g=e;b=b+1|0;c=c+1|0}if(g>>>0<d>>>0)a[b>>0]=0;return (wu(c)|0)+g|0}function DD(a,b){a=a|0;b=b|0;var d=0;if(a){d=H(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=xc(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;jq(a|0,0,d|0)|0;return a|0}function ED(a){a=a|0;a=rR(40)|0;if(!a)a=0;else{c[a>>2]=141;c[a+4>>2]=1;c[a+12>>2]=2;c[a+8>>2]=3;c[a+16>>2]=4;c[a+20>>2]=120;c[a+24>>2]=121;c[a+28>>2]=142;c[a+32>>2]=697;c[a+36>>2]=1}return a|0}function FD(a,b){a=a|0;b=b|0;var d=0,e=0;a:do if(!(c[a+272>>2]|0))c[b>>2]=c[a>>2];else{e=c[a+260>>2]|0;d=0;while(1){if((d|0)>=(e|0))break a;c[b+(d<<2)>>2]=c[a+(d<<2)>>2];d=d+1|0}}while(0);return}function GD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=Nb;Nb=Nb+16|0;e=f;c[e>>2]=0;d=eE(e,b)|0;if((d|0)>=0){Zw(a);d=c[e>>2]|0;c[a>>2]=d;c[a+24>>2]=c[d+4>>2];c[a+28>>2]=b;d=0}Nb=f;return d|0}function HD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;e=g;if(b){d=uu(d,b)|0;if((d|0)<0)f=3}else{d=-22;f=3}if((f|0)==3){c[e>>2]=b;mx(a,16,204888,e)}Nb=g;return d|0}function ID(a){a=a|0;var b=0;a:do if(!a)b=0;else{b=1136344;while(1){b=c[b>>2]|0;if(!b){b=0;break a}if(UM(b)|0?(hz(a,c[b>>2]|0)|0)==0:0)break a;b=b+56|0}}while(0);return b|0}function JD(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=FI(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c,e)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;return ((e|0)!=0&((c|0)!=0&(f|0)==0)?-12:0)|0}function KD(a,b){a=a|0;b=b|0;b=b+-1|0;while(1){if((b|0)>=672)break;f[a+(b<<5)+16>>2]=0.0;f[a+(b<<5)+20>>2]=0.0;f[a+(b<<5)>>2]=0.0;f[a+(b<<5)+4>>2]=0.0;f[a+(b<<5)+8>>2]=1.0;f[a+(b<<5)+12>>2]=1.0;b=b+30|0}return}function LD(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=H(e,b)|0;g=H(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=g;e=e+1|0}return}function MD(a){a=a|0;var b=0,d=0,e=0,f=0;f=(a|0)==0;a=(c[40477]|0)==(a|0);b=0;while(1)if((b|0)!=0|f|a)break;else b=1;d=c[40477]|0;e=(d|0)!=0;a=f&(b|0)==0^1;while(1)if(a|e)break;else a=1;return (a?0:d)|0}function ND(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;f=g;e=ZE(b)|0;if(e>>>0>65535){c[f>>2]=e;mx(d,16,170721,f);a=-1094995529}else{c[a>>2]=e;yO(b,4);a=0}Nb=g;return a|0}function OD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=0;while(1){if((d|0)==64)break;g=b+(d<<2)|0;e=c+(63-d<<2)|0;f[a+(d<<2)>>2]=+f[g>>2]-+f[e>>2];f[a+(127-d<<2)>>2]=+f[g>>2]+ +f[e>>2];d=d+1|0}return}function PD(a){a=a|0;var b=0,d=0;b=Nb;Nb=Nb+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=hH(d,32)|0;Nb=b;return a|0}function QD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=536944641;c[f+4>>2]=536944641;e=e+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+1|0}return}function RD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=134285313;c[f+4>>2]=134285313;e=e+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+1|0}return}function SD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=536879104;c[f+4>>2]=536879104;e=e+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0}return}function TD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=134219776;c[f+4>>2]=134219776;e=e+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0}return}function UD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=536813567;c[f+4>>2]=536813567;e=e+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+1|0}return}function VD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=134154239;c[f+4>>2]=134154239;e=e+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+1|0}return}function WD(a,b){a=a|0;b=b|0;var d=0;d=(NL(b)|0)==0;c[a>>2]=d&1;if(d){d=NL(b)|0;c[a+8>>2]=d;d=NL(b)|0;c[a+12>>2]=d;d=Yz(b,16)|0;c[a+4>>2]=d;ZE(b)|0;YU(b)}return}function XD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=H(e,f)|0;d=a>>>16;a=(c>>>16)+(H(e,d)|0)|0;e=b>>>16;b=H(e,f)|0;return (L((a>>>16)+(H(e,d)|0)+(((a&65535)+b|0)>>>16)|0),a+b<<16|c&65535|0)|0}function YD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=33620481;c[f+4>>2]=33620481;e=e+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+1|0}return}function ZD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=33554944;c[f+4>>2]=33554944;e=e+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0}return}function _D(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=33489407;c[f+4>>2]=33489407;e=e+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+1|0}return}function $D(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=16843009;c[f+4>>2]=16843009;e=e+8|0;c[e>>2]=16843009;c[e+4>>2]=16843009;b=b+1|0}return}function aE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=16777472;c[f+4>>2]=16777472;e=e+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0}return}function bE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((H(b,d)|0)<<1)|0;f=e;c[f>>2]=16711935;c[f+4>>2]=16711935;e=e+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+1|0}return}function cE(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[72704+a>>0]|0);return d[73216+a>>0]|0|0}function dE(a){a=a|0;var b=0,d=0;b=Nb;Nb=Nb+32|0;d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=oI(d,32)|0;Nb=b;return a|0}function eE(b,d){b=b|0;d=d|0;var e=0;if(d>>>0<=2147483614){e=Wl(b,d+32|0)|0;if((e|0)>=0){e=(c[(c[b>>2]|0)+4>>2]|0)+d|0;b=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));e=0}}else e=-22;return e|0}function fE(a,b){a=+a;b=+b;var d=0,e=0;g[h>>3]=a;e=c[h>>2]|0;d=c[h+4>>2]|0;g[h>>3]=b;d=c[h+4>>2]&-2147483648|d&2147483647;c[h>>2]=e;c[h+4>>2]=d;return +(+g[h>>3])}function gE(a){a=+a;var b=0,d=0;g[h>>3]=a;b=c[h+4>>2]|0;d=b&2146435072;if(!(d>>>0>1126170624|(d|0)==1126170624&0>0)){b=(b|0)<0;a=b?a+-4503599627370496.0+4503599627370496.0:a+4503599627370496.0+-4503599627370496.0;if(a==0.0)a=b?-0.0:0.0}return +a}function hE(a,b,e){a=a|0;b=b|0;e=e|0;b=H(((d[a+(0-e)>>0]|0)+2+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function iE(a,b){a=a|0;b=b|0;b=(b+-9|0)>>>0<8;c[a>>2]=b?21:22;c[a+4>>2]=b?23:24;c[a+8>>2]=b?25:26;c[a+12>>2]=b?27:28;c[a+16>>2]=b?29:30;c[a+20>>2]=b?31:32;c[a+24>>2]=b?33:34;c[a+28>>2]=b?35:36;return}function jE(a){a=a|0;var b=0;b=0;while(1){if(b>>>0>=356){b=-1;break}if((b+-130|0)>>>0>=165){if(!(hz(c[94176+(b*152|0)>>2]|0,a)|0))break;if(jt(a,c[94176+(b*152|0)+144>>2]|0)|0)break}b=b+1|0}return b|0}function kE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=Nb;Nb=Nb+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}Nb=e;return a|0}function lE(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=d<<16>>16;e=(c<<16>>16)+-1|0;d=0;c=0;while(1){if((d|0)==124)break;g=((b[a+(d<<1)>>1]|0)-f>>e)+1>>1;g=(g|0)<6?g:6;d=d+1|0;c=((g|0)>0?g:0)+c|0}return c|0}function mE(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=Nb;Nb=Nb+128|0;f=g;ic[c[a+2964>>2]&255](f,b,d,e);ec[c[a+2032>>2]&31](f);f=Wb[c[a+2372>>2]&31](f)|0;Nb=g;return f|0}function nE(a){a=a|0;var b=0;b=0;while(1){if((b|0)==672)break;f[a+(b<<5)+16>>2]=0.0;f[a+(b<<5)+20>>2]=0.0;f[a+(b<<5)>>2]=0.0;f[a+(b<<5)+4>>2]=0.0;f[a+(b<<5)+8>>2]=1.0;f[a+(b<<5)+12>>2]=1.0;b=b+1|0}return}function oE(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==4)break;g=IT(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;c[a>>2]=g;f=f+1|0;a=a+e|0;b=b+e|0}return}function pE(){var a=0,b=0;b=Nb;Nb=Nb+16|0;a=b;do if((bL(a,209485)|0)!=4)if((bL(a,209498)|0)==4){a=c[a>>2]|0;break}else{a=jl()|0;break}else a=c[a>>2]|0;while(0);Nb=b;return a|0}function qE(a,b){a=a|0;b=b|0;var d=0;d=Nb;Nb=Nb+16|0;switch(c[a+4>>2]|0){case 66:case 77:case 88:{if(!(c[a+1196>>2]&7))a=1;else{mx(b,40,170546,d);a=0}break}default:a=1}Nb=d;return a|0}function rE(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;e=oR(b)|0;b=wu(e)|0;if(b>>>0>=d>>>0){b=d+-1|0;if(!d)b=34;else{Bk(c|0,e|0,b|0)|0;a[c+b>>0]=0;b=34}}else{Bk(c|0,e|0,b+1|0)|0;b=0}return b|0}function sE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=536879104;c[e+4>>2]=536879104;e=a+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0;a=a+(d<<1)|0}return}function tE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=134219776;c[e+4>>2]=134219776;e=a+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0;a=a+(d<<1)|0}return}function uE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;og(a,b,c,d);og(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;og(a,b,c,d);og(a+16|0,b+16|0,c,d);return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rg(a,b,c,d);rg(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;rg(a,b,c,d);rg(a+16|0,b+16|0,c,d);return}function wE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;sg(a,b,c,d);sg(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;sg(a,b,c,d);sg(a+16|0,b+16|0,c,d);return}function xE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ff(a,b,c,d);Ff(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;Ff(a,b,c,d);Ff(a+16|0,b+16|0,c,d);return}function yE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Hf(a,b,c,d);Hf(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;Hf(a,b,c,d);Hf(a+16|0,b+16|0,c,d);return}function zE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;If(a,b,c,d);If(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;If(a,b,c,d);If(a+16|0,b+16|0,c,d);return}function AE(a){a=a|0;switch(a|0){case 1:{a=73;break}case 2:{a=80;break}case 3:{a=66;break}case 4:{a=83;break}case 5:{a=105;break}case 6:{a=112;break}case 7:{a=98;break}default:a=63}return a|0}function BE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0;d=0;while(1){if((d|0)>=(c|0))break;i=a+(d<<2)|0;h=+f[i>>2];e=b+(d<<2)|0;g=+f[e>>2];f[i>>2]=h+g;f[e>>2]=h-g;d=d+1|0}return}function CE(a){a=a|0;var b=0;b=0;while(1){b=sC(a,b)|0;if(!b)break;switch(c[b+12>>2]|0){case 7:case 5:{zM(a+(c[b+8>>2]|0)|0);break}case 8:{HC(a+(c[b+8>>2]|0)|0);break}default:{}}}return}function DE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+288|0;e=c[a+292>>2]|0;d=0;while(1){if((d|0)>=(e|0)){a=0;break}a=c[(c[f>>2]|0)+(d<<2)>>2]|0;if((c[a>>2]|0)==(b|0))break;else d=d+1|0}return a|0}function EE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);wg(e,f,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function FE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);zg(e,f,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);Ag(e,f,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function HE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=33554944;c[e+4>>2]=33554944;e=a+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0;a=a+(d<<1)|0}return}function IE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);wg(e,f,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function JE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);zg(e,f,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);Ag(e,f,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function LE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+16|0;g=(e|0)==1?1008:e;c[b>>2]=f;c[b+4>>2]=0;e=g>>>0<1008?g:1008;c[b+8>>2]=e;c[b+12>>2]=g;a[f>>0]=0;if(e>>>0<d>>>0)ir(b,d+-1|0)|0;return}function ME(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=16777472;c[e+4>>2]=16777472;e=a+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0;a=a+(d<<1)|0}return}function NE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;og(f,b+c|0,16,c);Ge(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function OE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;rg(f,b+c|0,16,c);He(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function PE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);Cg(e,f,16,16);il(a,f,e,c,16,16,8);Nb=d;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;tg(a,b,c,d);tg(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;tg(a,b,c,d);tg(a+16|0,b+16|0,c,d);return}function RE(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;e=c[b+704>>2]|0;if(!((e|0)!=0?(c[e+32>>2]|0)!=0:0))d=3;if(((d|0)==3?(c[(c[b+12>>2]|0)+16>>2]&128|0)==0:0)?c[a+672>>2]|0:0)return (c[a+700>>2]|0)==0|0;return 0}function SE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;og(f,b+c|0,16,c);Ge(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function TE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;rg(f,b+c|0,16,c);He(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+336|0;g=d+128|0;e=d;f=g+32|0;Tn(g,b+(0-(c<<1))|0,c);Cg(e,f,16,16);Jj(a,f,e,c,16,16,8);Nb=d;return}function VE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Nf(a,b,c,d);Nf(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;Nf(a,b,c,d);Nf(a+16|0,b+16|0,c,d);return}function WE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;sg(f,b+c|0,16,c);_d(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function XE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;sg(f,b+c|0,16,c);_d(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function YE(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+32856|0;if(!(Vu(c,a+32972|0)|0)){a=a+32973|0;d=Vu(c,a)|0;d=((Vu(c,a)|0)<<1)+d|0;c=d+((Vu(c,a)|0)<<2)|0;b=c+((c|0)>=(b|0)&1)|0}return b|0}function ZE(a){a=a|0;var b=0,c=0,e=0;e=PD(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[91680+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;JK(a,b);return (hH(a,b+1|0)|0)+-1|0}function _E(b,d,e){b=b|0;d=d|0;e=e|0;if(e>>>0<=4294967263){if(!(us(b,d,e+32|0)|0)){b=(c[b>>2]|0)+e|0;d=b+32|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0))}}else{zM(b);c[d>>2]=0}return}function $E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;tg(f,b+c|0,16,c);le(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function aF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);QH(e,f,32);eN(a,f,e,c,32);Nb=d;return}function bF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);RH(e,f,32);eN(a,f,e,c,32);Nb=d;return}function cF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);SH(e,f,32);eN(a,f,e,c,32);Nb=d;return}function dF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Xg(a,b,c,d);Xg(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;Xg(a,b,c,d);Xg(a+8|0,b+8|0,c,d);return}function eF(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Bk(b,c,d)|0;return b|0}function fF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;tg(f,b+c|0,16,c);le(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function gF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);QH(e,f,32);gN(a,f,e,c,32);Nb=d;return}function hF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);RH(e,f,32);gN(a,f,e,c,32);Nb=d;return}function iF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);SH(e,f,32);gN(a,f,e,c,32);Nb=d;return}function jF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Uf(a,b,c,d);Uf(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;Uf(a,b,c,d);Uf(a+8|0,b+8|0,c,d);return}function kF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+176|0;g=d+64|0;e=d;f=g+16|0;Xt(g,b+(0-(c<<1))|0,c);jh(e,f,8,8);qq(a,f,e,c,8,8,8);Nb=d;return}function lF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0;d=0;while(1){if((d|0)>=(c|0))break;h=+f[b+(d<<3)>>2];g=+f[b+(d<<3)+4>>2];e=a+(d<<2)|0;f[e>>2]=+f[e>>2]+(h*h+g*g);d=d+1|0}return}function mF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+176|0;g=d+64|0;e=d;f=g+16|0;Xt(g,b+(0-(c<<1))|0,c);jh(e,f,8,8);$o(a,f,e,c,8,8,8);Nb=d;return}function nF(a){a=a|0;var b=0,d=0;a:do if(!a)b=0;else{d=0;while(1){b=c[161696+(d<<2)>>2]|0;if(d|0){b=0;break a}if(!(hz(c[b>>2]|0,a)|0))break;else d=1}}while(0);return b|0}function oF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;uE(f,b+c|0,32,c);ky(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;vE(f,b+c|0,32,c);ly(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function qF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;wE(f,b+c|0,32,c);my(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function rF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);gI(e,f,32);eN(a,f,e,c,32);Nb=d;return}function sF(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;b=c[c[a+24312>>2]>>2]|0;if((c[b+68>>2]|0)==(c[d+68>>2]|0)?(c[b+72>>2]|0)==(c[d+72>>2]|0):0)b=(c[b+80>>2]|0)!=(c[d+80>>2]|0)&1;else b=1;return b|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0;a:while(1){while(1){if((b|0)<33)break a;c=b>>>1;if((c|0)>(a|0))b=c;else break}d=(b*3|0)/4|0;a=a-((a|0)<(d|0)?c:d)|0;b=b>>>2}return (a|0)>15|0}function uF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;uE(f,b+c|0,32,c);ky(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function vF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;vE(f,b+c|0,32,c);ly(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function wF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;wE(f,b+c|0,32,c);my(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function xF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+1184|0;g=d+512|0;e=d;f=g+64|0;Vh(g,b+(0-(c<<1))|0,c);gI(e,f,32);gN(a,f,e,c,32);Nb=d;return}function yF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);wg(e,f+32|0,16,16);il(a,f+48|0,e,c,16,16,8);Nb=d;return}function zF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);zg(e,f+32|0,16,16);il(a,f+48|0,e,c,16,16,8);Nb=d;return}function AF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);Ag(e,f+32|0,16,16);il(a,f+48|0,e,c,16,16,8);Nb=d;return}function BF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+592|0;g=d+256|0;e=d;f=g+32|0;yo(g,b+(0-(c<<1))|0,c);mI(e,f,16);jN(a,f,e,c,16);Nb=d;return}function CF(b){b=b|0;var d=0,e=0;if(!(UU(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((UU(a[e>>0]|0)|0)!=0)}return d|0}function DF(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;f=c[e+(f<<2)>>2]|0;e=0;while(1){if((e|0)>=(g|0))break;h=((H(f,b[d+(e<<1)>>1]|0)|0)+16384|0)>>>15&65535;b[a+(e<<1)>>1]=h;e=e+1|0}return}function EF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);wg(e,f+32|0,16,16);Jj(a,f+48|0,e,c,16,16,8);Nb=d;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);zg(e,f+32|0,16,16);Jj(a,f+48|0,e,c,16,16,8);Nb=d;return}function GF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);Ag(e,f+32|0,16,16);Jj(a,f+48|0,e,c,16,16,8);Nb=d;return}function HF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+592|0;g=d+256|0;e=d;f=g+32|0;yo(g,b+(0-(c<<1))|0,c);mI(e,f,16);lN(a,f,e,c,16);Nb=d;return}function IF(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=(e|0)==0;g=0;while(1){if((g|0)>=(f|0))break;i=_b[b&7](a,d,g,0)|0;if(!h)c[e+(g<<2)>>2]=i;g=g+1|0}return 0}function JF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;og(f,b,16,c);Ge(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function KF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;rg(f,b,16,c);He(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function LF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);Cg(e,f+32|0,16,16);il(a,f+48|0,e,c,16,16,8);Nb=d;return}function MF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;QE(f,b+c|0,32,c);yy(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function NF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;og(f,b,16,c);Ge(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function OF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1088|0;f=d+128|0;e=d;rg(f,b,16,c);He(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function PF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+128|0;e=d;Tn(f,b+(0-(c<<1))|0,c);Cg(e,f+32|0,16,16);Jj(a,f+48|0,e,c,16,16,8);Nb=d;return}function QF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;QE(f,b+c|0,32,c);yy(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function RF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+64|0;e=d;Xg(f,b+c|0,8,c);se(e,d+128|0,b,8,8,c);qq(a,f,e,c,8,8,8);Nb=d;return}function SF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;sg(f,b,16,c);_d(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function TF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+256|0;e=d;dF(f,b+c|0,16,c);My(e,d+512|0,b,16,c);jN(a,f,e,c,16);Nb=d;return}function UF(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+6444|0;if((c[e>>2]|0)>>>0<b>>>0){a=a+6440|0;d=hv(c[a>>2]|0,b)|0;if(!d)a=-1;else{c[a>>2]=d;c[e>>2]=b;a=0}}else a=0;return a|0}function VF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+64|0;e=d;Xg(f,b+c|0,8,c);se(e,d+128|0,b,8,8,c);$o(a,f,e,c,8,8,8);Nb=d;return}function WF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;sg(f,b,16,c);_d(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function XF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+256|0;e=d;dF(f,b+c|0,16,c);My(e,d+512|0,b,16,c);lN(a,f,e,c,16);Nb=d;return}function YF(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[158208+(b&15)>>0]|0|f;b=GN(b|0,c|0,4)|0;c=M()|0}while(!((b|0)==0&(c|0)==0));return e|0}function ZF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);xn(e,f,8);dr(a,f,e,c,8);Nb=d;return}function _F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);An(e,f,8);dr(a,f,e,c,8);Nb=d;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);Bn(e,f,8);dr(a,f,e,c,8);Nb=d;return}function aG(a){a=a|0;var b=0,c=0,e=0;e=PD(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[91680+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;JK(a,b);hH(a,b+1|0)|0;return}function bG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);xn(e,f,8);Hp(a,f,e,c,8);Nb=d;return}function cG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);An(e,f,8);Hp(a,f,e,c,8);Nb=d;return}function dG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);Bn(e,f,8);Hp(a,f,e,c,8);Nb=d;return}function eG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;tg(f,b,16,c);le(e,d+256|0,b,16,16,c);il(a,f,e,c,16,16,8);Nb=d;return}function fG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);QH(e,f+64|0,32);eN(a,f+96|0,e,c,32);Nb=d;return}function gG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);RH(e,f+64|0,32);eN(a,f+96|0,e,c,32);Nb=d;return}function hG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);SH(e,f+64|0,32);eN(a,f+96|0,e,c,32);Nb=d;return}function iG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+672|0;f=d+128|0;e=d;tg(f,b,16,c);le(e,d+256|0,b,16,16,c);Jj(a,f,e,c,16,16,8);Nb=d;return}function jG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);QH(e,f+64|0,32);gN(a,f+96|0,e,c,32);Nb=d;return}function kG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);RH(e,f+64|0,32);gN(a,f+96|0,e,c,32);Nb=d;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);SH(e,f+64|0,32);gN(a,f+96|0,e,c,32);Nb=d;return}function mG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+176|0;f=d+64|0;e=d;Xt(f,b+(0-(c<<1))|0,c);jh(e,f+16|0,8,8);qq(a,f+24|0,e,c,8,8,8);Nb=d;return}function nG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);Dn(e,f,8);dr(a,f,e,c,8);Nb=d;return}function oG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;e=d+32|0;f=g+8|0;mA(g,b+(0-(c<<1))|0,c);Fr(e,f,4);Gv(a,f,e,c,4);Nb=d;return}function pG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;e=d+32|0;f=g+8|0;mA(g,b+(0-(c<<1))|0,c);Gr(e,f,4);Gv(a,f,e,c,4);Nb=d;return}function qG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;e=d+32|0;f=g+8|0;mA(g,b+(0-(c<<1))|0,c);Hr(e,f,4);Gv(a,f,e,c,4);Nb=d;return}function rG(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;if(!d){a[b+10>>0]=0;d=4}else d=9;while(1){if((d|0)<=-1)break;f=a[c+d>>0]|0;e=d<<1;a[b+e>>0]=f;a[b+(e|1)>>0]=f;d=d+-1|0}return}function sG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+176|0;f=d+64|0;e=d;Xt(f,b+(0-(c<<1))|0,c);jh(e,f+16|0,8,8);$o(a,f+24|0,e,c,8,8,8);Nb=d;return}function tG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+112|0;g=d+32|0;e=d;f=g+16|0;_s(g,b+(0-(c<<1))|0,c);Dn(e,f,8);Hp(a,f,e,c,8);Nb=d;return}function uG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=b+4|0;e=c[f>>2]|0;g=-6-e|0;e=(g>>>0<d>>>0?g:d)+e|0;c[f>>2]=e;f=c[b+8>>2]|0;d=f+-1|0;if(f|0)a[(c[b>>2]|0)+(e>>>0>d>>>0?d:e)>>0]=0;return}function vG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+128|0;f=d+120|0;e=d+112|0;eq(f,b+c|0,4,c);hm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function wG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+128|0;f=d+120|0;e=d+112|0;hq(f,b+c|0,4,c);lm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function xG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;uE(f,b,32,c);ky(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;vE(f,b,32,c);ly(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function zG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;wE(f,b,32,c);my(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function AG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);gI(e,f+64|0,32);eN(a,f+96|0,e,c,32);Nb=d;return}function BG(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=0;e=0;while(1){if((d|0)>=(c|0))break;f=a[b+(d*3|0)+2>>0]|0;f=(f<<24>>24!=0&f<<24>>24!=5?((a[b+(d*3|0)>>0]|0)==1?2:1):0)+e|0;d=d+1|0;e=f}return e|0}function CG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;uE(f,b,32,c);ky(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function DG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+3712|0;f=d+512|0;e=d;vE(f,b,32,c);ly(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function EG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;wE(f,b,32,c);my(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function FG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+512|0;e=d;Vh(f,b+(0-(c<<1))|0,c);gI(e,f+64|0,32);gN(a,f+96|0,e,c,32);Nb=d;return}function GG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+64|0;g=d+16|0;e=d;f=g+8|0;lA(g,b+(0-(c<<1))|0,c);jo(e,f,4);Tv(a,f,e,c,4);Nb=d;return}function HG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+48|0;g=d;e=d+32|0;f=g+8|0;mA(g,b+(0-(c<<1))|0,c);Jr(e,f,4);Gv(a,f,e,c,4);Nb=d;return}function IG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+592|0;f=d+256|0;e=d;yo(f,b+(0-(c<<1))|0,c);mI(e,f+32|0,16);jN(a,f+48|0,e,c,16);Nb=d;return}function JG(a,b){a=a|0;b=b|0;var d=0;b=c[a+12>>2]|0;JV(b)|0;d=b+28|0;c[a+16>>2]=c[d>>2];c[d>>2]=a;JV(b)|0;d=b+32|0;a=c[d>>2]|0;c[d>>2]=a+-1;if((a|0)==1)Zu(b);return}function KG(b,c,e){b=b|0;c=c|0;e=e|0;if(c>>>0<2)b=-1;else{a[e>>0]=(d[b>>0]|0)>>>3;c=b+1|0;a[e+1>>0]=(d[c>>0]|0)>>>7|a[b>>0]<<1&14;a[e+2>>0]=(d[c>>0]|0)>>>3&15;b=2}return b|0}function LG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;switch(b|0){case 8:{a=Yl(a,c,d,e)|0;break}case 9:{a=bg(a,c,d,e)|0;break}case 18:{a=0;break}default:a=-1}return a|0}function MG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+64|0;g=d+16|0;e=d;f=g+8|0;lA(g,b+(0-(c<<1))|0,c);jo(e,f,4);dv(a,f,e,c,4);Nb=d;return}function NG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+592|0;f=d+256|0;e=d;yo(f,b+(0-(c<<1))|0,c);mI(e,f+32|0,16);lN(a,f+48|0,e,c,16);Nb=d;return}function OG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;nl(f,b+c|0,8,c);vi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function PG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;sl(f,b+c|0,8,c);yi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function QG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;tl(f,b+c|0,8,c);Ug(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function RG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Nb;Nb=Nb+32|0;g=d+4|0;e=d;f=g+4|0;OI(g,b+(0-(c<<1))|0,c);Ds(e,f,2);Fx(a,f,e,c,2);Nb=d;return}function SG(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function TG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;nl(f,b+c|0,8,c);vi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function UG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;sl(f,b+c|0,8,c);yi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function VG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;tl(f,b+c|0,8,c);Ug(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function WG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+80|0;f=d+64|0;e=d+56|0;iq(f,b+c|0,4,c);fl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function XG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;QE(f,b,32,c);yy(e,d+1024|0,b,32,c);eN(a,f,e,c,32);Nb=d;return}function YG(a){a=a|0;var b=0,d=0,e=0;b=a;yS(c[b+100>>2]|0);fR(c[b+76>>2]|0);qd(c[b+80>>2]|0);d=b+104|0;e=c[d>>2]|0;if(e|0){EH(e);c[d>>2]=0}qd(c[b+40>>2]|0);qd(a);return 0}function ZG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+2368|0;f=d+512|0;e=d;QE(f,b,32,c);yy(e,d+1024|0,b,32,c);gN(a,f,e,c,32);Nb=d;return}function _G(a){a=a|0;var b=0,c=0;b=0;while(1){if((b|0)==64)break;c=a+(b<<2)|0;f[c>>2]=+f[c>>2]+ +f[a+(b+64<<2)>>2]+ +f[a+(b+128<<2)>>2]+ +f[a+(b+192<<2)>>2]+ +f[a+(b+256<<2)>>2];b=b+1|0}return}function $G(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+64|0;e=d;Xg(f,b,8,c);se(e,d+128|0,b,8,8,c);qq(a,f,e,c,8,8,8);Nb=d;return}function aH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+256|0;e=d;dF(f,b,16,c);My(e,d+512|0,b,16,c);jN(a,f,e,c,16);Nb=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==16)break;g=a+(H(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function cH(a){a=a|0;var b=0,c=0,e=0;e=dE(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[91680+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;CS(a,b);return (oI(a,b+1|0)|0)+-1|0}function dH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+336|0;f=d+64|0;e=d;Xg(f,b,8,c);se(e,d+128|0,b,8,8,c);$o(a,f,e,c,8,8,8);Nb=d;return}function eH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+1184|0;f=d+256|0;e=d;dF(f,b,16,c);My(e,d+512|0,b,16,c);lN(a,f,e,c,16);Nb=d;return}function fH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;vl(f,b+c|0,8,c);nh(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function gH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+16|0;e=d;dm(f,b+c|0,4,c);Ih(e,d+32|0,b,4,c);Tv(a,f,e,c,4);Nb=d;return}function hH(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Yz(a,b)|0;break}else{b=b+-16|0;c=(Yz(a,16)|0)<<b;a=c|(Yz(a,b)|0);break}else a=0;while(0);return a|0}function iH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;vl(f,b+c|0,8,c);nh(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function jH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+16|0;e=d;dm(f,b+c|0,4,c);Ih(e,d+32|0,b,4,c);dv(a,f,e,c,4);Nb=d;return}function kH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);xn(e,f+16|0,8);dr(a,f+24|0,e,c,8);Nb=d;return}function lH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);An(e,f+16|0,8);dr(a,f+24|0,e,c,8);Nb=d;return}function mH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);Bn(e,f+16|0,8);dr(a,f+24|0,e,c,8);Nb=d;return}function nH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+80|0;f=d+64|0;e=d+56|0;nq(f,b+c|0,4,c);Cl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function oH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+48|0;f=d+32|0;e=d+28|0;Rq(f,b+c|0,2,c);em(e,d,b,2,c);Fx(a,f,e,c,2);Nb=d;return}function pH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==8)break;g=a+(H(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function qH(a,b){a=a|0;b=b|0;var d=0;do if(a){d=rR(24)|0;if(!d){FV(a);d=0;break}else{c[d>>2]=a;c[d+12>>2]=a+b;fP(d);break}}else d=0;while(0);return d|0}function rH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);xn(e,f+16|0,8);Hp(a,f+24|0,e,c,8);Nb=d;return}function sH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);An(e,f+16|0,8);Hp(a,f+24|0,e,c,8);Nb=d;return}function tH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);Bn(e,f+16|0,8);Hp(a,f+24|0,e,c,8);Nb=d;return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);Dn(e,f+16|0,8);dr(a,f+24|0,e,c,8);Nb=d;return}function vH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+48|0;f=d;e=d+32|0;mA(f,b+(0-(c<<1))|0,c);Fr(e,f+8|0,4);Gv(a,f+12|0,e,c,4);Nb=d;return}function wH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+48|0;f=d;e=d+32|0;mA(f,b+(0-(c<<1))|0,c);Gr(e,f+8|0,4);Gv(a,f+12|0,e,c,4);Nb=d;return}function xH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+48|0;f=d;e=d+32|0;mA(f,b+(0-(c<<1))|0,c);Hr(e,f+8|0,4);Gv(a,f+12|0,e,c,4);Nb=d;return}function yH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+32|0;e=d;_s(f,b+(0-(c<<1))|0,c);Dn(e,f+16|0,8);Hp(a,f+24|0,e,c,8);Nb=d;return}function zH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+128|0;f=d+120|0;e=d+112|0;eq(f,b,4,c);hm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function AH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+128|0;f=d+120|0;e=d+112|0;hq(f,b,4,c);lm(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function BH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+64|0;f=d+16|0;e=d;lA(f,b+(0-(c<<1))|0,c);jo(e,f+8|0,4);Tv(a,f+12|0,e,c,4);Nb=d;return}function CH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+48|0;f=d;e=d+32|0;mA(f,b+(0-(c<<1))|0,c);Jr(e,f+8|0,4);Gv(a,f+12|0,e,c,4);Nb=d;return}function DH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+64|0;f=d+16|0;e=d;lA(f,b+(0-(c<<1))|0,c);jo(e,f+8|0,4);dv(a,f+12|0,e,c,4);Nb=d;return}function EH(a){a=a|0;var b=0,d=0;if(a|0){if(c[a>>2]|0){d=a+4|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;XS((c[a>>2]|0)+(b<<2)|0);b=b+1|0}zM(a)}FV(a)}return}function FH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;nl(f,b,8,c);vi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function GH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;sl(f,b,8,c);yi(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;tl(f,b,8,c);Ug(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function IH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;nl(f,b,8,c);vi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function JH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+352|0;f=d+32|0;e=d;sl(f,b,8,c);yi(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function KH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;tl(f,b,8,c);Ug(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function LH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+80|0;f=d+64|0;e=d+56|0;iq(f,b,4,c);fl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function MH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+32|0;f=d+4|0;e=d;OI(f,b+(0-(c<<1))|0,c);Ds(e,f+4|0,2);Fx(a,f+6|0,e,c,2);Nb=d;return}function NH(a){a=a|0;var b=0;if((c[a+8>>2]|0)>0){b=(c[a+4>>2]|0)+16|0;a=(c[a>>2]|0)+16|0;a=iP(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;M()|0}else a=0;return a|0}function OH(a,b){a=a|0;b=b|0;var d=0;d=a+40|0;AP(c[d>>2]|0);if(b){a=Cn(c[d>>2]|0,b)|0;if(!a){c[(c[d>>2]|0)+28>>2]=c[b+28>>2];a=0}}else a=0;return a|0}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Nb;Nb=Nb+16|0;e=f;if(b){d=Vg(d,b,-1,a)|0;if((d|0)<0){c[e>>2]=b;mx(a,16,204591,e)}}else d=0;Nb=f;return d|0}function QH(a,b,c){a=a|0;b=b|0;c=c|0;wg(a,b,c,32);wg(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;wg(a,b+256|0,c,32);wg(a+16|0,b+272|0,c,32);return}function RH(a,b,c){a=a|0;b=b|0;c=c|0;zg(a,b,c,32);zg(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;zg(a,b+256|0,c,32);zg(a+16|0,b+272|0,c,32);return}function SH(a,b,c){a=a|0;b=b|0;c=c|0;Ag(a,b,c,32);Ag(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;Ag(a,b+256|0,c,32);Ag(a+16|0,b+272|0,c,32);return}function TH(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,b,c,32);Of(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;Of(a,b+256|0,c,32);Of(a+16|0,b+272|0,c,32);return}function UH(a,b,c){a=a|0;b=b|0;c=c|0;Qf(a,b,c,32);Qf(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;Qf(a,b+256|0,c,32);Qf(a+16|0,b+272|0,c,32);return}function VH(a,b,c){a=a|0;b=b|0;c=c|0;Rf(a,b,c,32);Rf(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;Rf(a,b+256|0,c,32);Rf(a+16|0,b+272|0,c,32);return}function WH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;vl(f,b,8,c);nh(e,d+64|0,b,8,c);dr(a,f,e,c,8);Nb=d;return}function XH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+16|0;e=d;dm(f,b,4,c);Ih(e,d+32|0,b,4,c);Tv(a,f,e,c,4);Nb=d;return}function YH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483391;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function ZH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+208|0;f=d+32|0;e=d;vl(f,b,8,c);nh(e,d+64|0,b,8,c);Hp(a,f,e,c,8);Nb=d;return}function _H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+112|0;f=d+16|0;e=d;dm(f,b,4,c);Ih(e,d+32|0,b,4,c);dv(a,f,e,c,4);Nb=d;return}function $H(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+4|0;e=(c[d>>2]|0)+b|0;c[d>>2]=e;f=c[a+12>>2]|0;if(e>>>0>=f>>>0)c[d>>2]=e+((c[a>>2]|0)-f);f=a+16|0;c[f>>2]=(c[f>>2]|0)+b;return}function aI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+80|0;f=d+64|0;e=d+56|0;nq(f,b,4,c);Cl(e,d,b,4,c);Gv(a,f,e,c,4);Nb=d;return}function bI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=Nb;Nb=Nb+48|0;f=d+32|0;e=d+28|0;Rq(f,b,2,c);em(e,d,b,2,c);Fx(a,f,e,c,2);Nb=d;return}function cI(a){a=a|0;var b=0,d=0,e=0;e=Nb;Nb=Nb+16|0;d=e;b=Ax(a)|0;c[d>>2]=b;if(b){a=vs(b,a,194,0,0)|0;if(!a){zM(d);a=0}}else a=0;Nb=e;return a|0}function dI(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;switch(b|0){case 66:{d=512;e=3;break}case 244:case 122:case 110:{d=2048;e=3;break}default:{}}if((e|0)==3)b=c[a+1196>>2]<<8&d|b;return b|0}function eI(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+8|0;g=0;a=b;while(1){if((g|0)==32)break;kc[c[h>>2]&127](d+(g<<3)|0,a,e,32,f);g=g+1|0;a=a+8|0}return}function fI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=a+28460+(b<<2)|0;e=c[b>>2]|0;if(e|0?vx(a,e,d)|0:0){c[(c[b>>2]|0)+100>>2]=0;c[b>>2]=0;d=a+29536|0;c[d>>2]=(c[d>>2]|0)+-1}return}function gI(a,b,c){a=a|0;b=b|0;c=c|0;Cg(a,b,c,32);Cg(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;Cg(a,b+256|0,c,32);Cg(a+16|0,b+272|0,c,32);return}function hI(a,b,c){a=a|0;b=b|0;c=c|0;Tf(a,b,c,32);Tf(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;Tf(a,b+256|0,c,32);Tf(a+16|0,b+272|0,c,32);return}function iI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Nb;Nb=Nb+144|0;f=e;jq(f|0,0,144)|0;c[f+32>>2]=10;c[f+44>>2]=a;c[f+76>>2]=-1;c[f+84>>2]=a;d=Ec(f,b,d)|0;Nb=e;return d|0}function jI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=H(e,b)|0;g=H(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function kI(a){a=a|0;var b=0,d=0;d=Nb;Nb=Nb+16|0;b=d;c[b>>2]=a;if(a|0){kI(c[a+20>>2]|0);kI(c[a+24>>2]|0);kI(c[a+28>>2]|0);zM(a+32|0);zM(b)}Nb=d;return}function lI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=0;while(1){if((g|0)>=(e|0))break;f[a+(g<<2)>>2]=+f[b+(g<<2)>>2]*+f[c+(g<<2)>>2]+ +f[d+(g<<2)>>2];g=g+1|0}return}function mI(a,b,c){a=a|0;b=b|0;c=c|0;jh(a,b,c,16);jh(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;jh(a,b+128|0,c,16);jh(a+8|0,b+136|0,c,16);return}function nI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==8)break;f=H(e,b)|0;g=H(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function oI(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=SG(a,b)|0;break}else{b=b+-16|0;c=(SG(a,16)|0)<<b;a=c|(SG(a,b)|0);break}else a=0;while(0);return a|0}function pI(a){a=a|0;var b=0,d=0;d=a+8|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;zM((c[a>>2]|0)+(b*72|0)|0);zM((c[a>>2]|0)+(b*72|0)+64|0);b=b+1|0}zM(a);c[d>>2]=0;return}function qI(a,b,c){a=a|0;b=b|0;c=c|0;ag(a,b,c,16);ag(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;ag(a,b+128|0,c,16);ag(a+8|0,b+136|0,c,16);return}function rI(a){a=a|0;var b=0;b=rR(12)|0;if(!b)b=0;else{c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];a=(c[a>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+1}return b|0}function sI(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;qc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function tI(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==32)break;e=63-(d<<1)|0;c[a+(d<<2)>>2]=c[b+(e<<2)>>2];c[a+(63-d<<2)>>2]=c[b+(e+-1<<2)>>2]^-2147483648;d=d+1|0}return}function uI(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=d<<1;c[a>>2]=b;if(!(d&32767)){VM(a);b=c[a>>2]|0}d=c[a+4>>2]<<17;if((b|0)<(d|0))b=0;else{c[a>>2]=b-d;b=1}return b|0}function vI(a,b){a=a|0;b=b|0;if((((!((a&7|0)==0&0==0)?(DO(a&3,0)|0)!=0:0)?(DO(a&1536,0)|0)!=0:0)?(DO(a&48,0)|0)!=0:0)?(DO(a&192,0)|0)!=0:0)a=(px(a,b)|0)<64&1;else a=0;return a|0}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=0;do{f=Yn(b,1137073,f,2)|0;if(!f){e=0;break}e=Jf(a,c[f>>2]|0,c[f+4>>2]|0,d)|0}while((e|0)>=0);return e|0}function xI(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){FJ(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function yI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=c+(d+-1<<2)|0;c=0;while(1){if((c|0)>=(d|0))break;f[a+(c<<2)>>2]=+f[b+(c<<2)>>2]*+f[e+(0-c<<2)>>2];c=c+1|0}return}function zI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=Nb;Nb=Nb+16|0;g=f;c[g>>2]=-1;e=(Ym(a+d|0,a+e+1|0,g)|0)-a+-1|0;Nb=f;return ((e|0)>(b|0)?b:e)|0}function AI(a){a=a|0;var b=0;kt(a);c[a+28244>>2]=0;c[a+28248>>2]=0;c[a+28232>>2]=65536;c[a+28236>>2]=0;b=0;while(1){if((b|0)==16)break;c[a+28660+(b<<2)>>2]=-2147483648;b=b+1|0}return}function BI(a){a=a|0;var b=0,d=0;d=c[a+64>>2]|0;b=d+36|0;d=d+32|0;a=0;while(1){if((a|0)>=(c[b>>2]|0))break;fv((c[d>>2]|0)+(a<<2)|0);a=a+1|0}zM(d);c[b>>2]=0;return}function CI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function DI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function EI(a,b){a=a|0;b=b|0;var d=0,e=0;e=Nb;Nb=Nb+16|0;d=e;if(!((Ac(a,b,b+20|0)|0)>-1?(Li(a,b)|0)>=0:0)){mx(c[a+4>>2]|0,16,190601,d);UK(b)}Nb=e;return}function FI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Nb;Nb=Nb+16|0;f=g;if(!((BK(d,b,f)|0)==0?(e=eP(a,c[f>>2]|0)|0,(e|0)!=0):0)){FV(a);e=0}Nb=g;return e|0}function GI(a){a=a|0;var b=0,d=0;d=a+256|0;b=c[d>>2]|0;c[a+((b&63)<<2)>>2]=(c[a+((b+9&63)<<2)>>2]|0)+(c[a+((b+40&63)<<2)>>2]|0);b=c[d>>2]|0;c[d>>2]=b+1;return c[a+((b&63)<<2)>>2]|0}function HI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483391;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return}function II(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+28332+(b<<2)|0;c[d>>2]=0;f=a+29540|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if(e|0)eF(d|0,a+28332+(b+1<<2)|0,e-b<<2|0)|0;return}function JI(a,b){a=a|0;b=b|0;var d=0;while(1){a=c[b>>2]|0;if((a|0)==-1){b=-1;break}if(!(iT(a)|0)){d=4;break}b=b+4|0}if((d|0)==4)b=c[b>>2]|0;return b|0}function KI(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2122219135;c[a+4>>2]=-2122219135;c[a+8>>2]=-2122219135;c[a+12>>2]=-2122219135;a=a+b|0;d=d+1|0}return}function LI(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;c[a+8>>2]=-2139062144;c[a+12>>2]=-2139062144;a=a+b|0;d=d+1|0}return}function MI(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){nK(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function NI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d+8|0;h=c[f>>2]|0;g=a[h>>0]|0;g=(g<<24>>24==43&1)-(g<<24>>24==45&1)|0;c[e>>2]=g;c[f>>2]=h+(g&1);return kd(b,d)|0}function OI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8;a[b>>0]=g;a[b+1>>0]=g>>8;f=f+1|0;c=c+e|0;b=b+2|0}return}function PI(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=GN(b|0,c|0,3)|0;c=M()|0}while(!((b|0)==0&(c|0)==0));return d|0}function QI(a){a=a|0;var b=0;b=c[a+60>>2]|0;if(c[c[a+64>>2]>>2]|0){jq(b|0,0,46304)|0;a=Jk(a,b)|0;if((a|0)>=0){c[b+25680>>2]=0;a=0}}else a=0;return a|0}function RI(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=2139062143;c[a+4>>2]=2139062143;c[a+8>>2]=2139062143;c[a+12>>2]=2139062143;a=a+b|0;d=d+1|0}return}function SI(a){a=a|0;switch(a|0){case 69649:{a=2;break}case 69648:{a=3;break}case 69638:case 69645:case 69632:case 69633:case 69647:{a=4;break}default:a=Ch(a)|0}return a|0}function TI(a){a=a|0;var b=0,e=0,f=0;f=c[a>>2]|0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9)+-65535<<7-(d[78800+((f+-1^f)>>>15)>>0]|0))+f;c[b>>2]=e+2;return}function UI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0;f=+g[c+(d<<3)>>3];c=0;while(1){if((c|0)>=(e|0))break;g[a+(c<<3)>>3]=f*+g[b+(c<<3)>>3];c=c+1|0}return}function VI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0;g=+f[c+(d<<2)>>2];c=0;while(1){if((c|0)>=(e|0))break;f[a+(c<<2)>>2]=g*+f[b+(c<<2)>>2];c=c+1|0}return}function WI(a){a=a|0;var b=0,d=0;d=a+24|0;b=Zb[c[a+16>>2]&15](c[a+20>>2]|0,c[d>>2]|0,4096)|0;ka(13,a|0,c[c[d>>2]>>2]|0,4096,b|0,+(+f[a+8>>2]))|0;return}function XI(a){a=a|0;var b=0;b=a+32856|0;if(!(Vu(b,a+32925|0)|0))if(!(Vu(b,a+32926|0)|0))a=1;else{a=(Vu(b,a+32927|0)|0)==0;a=a?3:2}else a=0;return a|0}function YI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Nb;Nb=Nb+16|0;d=Qi(a,b,d)|0;if((d|0)<0){mx(a,16,167852,e);c[b+72>>2]=0;c[b+68>>2]=0}Nb=e;return d|0}function ZI(a){a=a|0;c[a+40>>2]=-1;c[a+12>>2]=0;c[a+16>>2]=-1;c[a>>2]=0;c[a+44>>2]=0;c[a+176>>2]=0;c[a+204>>2]=0;c[a+20>>2]=0;c[a+28>>2]=0;zM(a+32|0);return}function _I(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,g=0;e=0;while(1){if((e|0)>=(d|0))break;g=a+(e<<2)|0;f[g>>2]=+f[g>>2]+ +f[b+(e<<2)>>2]*c;e=e+1|0}return}function $I(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0;e=0;while(1){if((e|0)>=(d|0))break;f=a+(e<<3)|0;g[f>>3]=+g[f>>3]+ +g[b+(e<<3)>>3]*c;e=e+1|0}return}function aJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Bk(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function bJ(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0;d=3.141592653589793/(+(b|0)*2.0);c=0;while(1){if((c|0)>=(b|0))break;e=+y(+(d*(+(c|0)+.5)));f[a+(c<<2)>>2]=e;c=c+1|0}return}function cJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0;d=0;e=0.0;while(1){if((d|0)>=(c|0))break;g=e+ +f[a+(d<<2)>>2]*+f[b+(d<<2)>>2];d=d+1|0;e=g}return +e}function dJ(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;pc[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function eJ(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function fJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=GN(c^a|0,d^b|0,1)|0;d=iP(c|a|0,d|b|0,e&2147450879|0,(M()|0)&2147450879|0)|0;L(M()|0);return d|0}function gJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Pu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function hJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;sv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}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;f=Nb;Nb=Nb+1024|0;g=f;uO(g,a,b);Tm(g,c,d,e);Nb=f;return}function jJ(a){a=a|0;var b=0,d=0,e=0;e=Nb;Nb=Nb+16|0;d=e;b=$a()|0;if(!b)a=1;else{c[d>>2]=a;c[d+4>>2]=b;EN(164088,d)|0;a=0}Nb=e;return a|0}function kJ(a){a=a|0;var b=0,d=0;b=1;while(1){if(b>>>0>=64)break;d=a+(b<<2)|0;c[d>>2]=c[d>>2]^-2147483648;d=a+(b+2<<2)|0;c[d>>2]=c[d>>2]^-2147483648;b=b+4|0}return}function lJ(a,b){a=a|0;b=b|0;Ja(a|0);Ma(3553,b|0);jb(3553,10241,9729.0);jb(3553,10240,9729.0);jb(3553,10242,33071.0);jb(3553,10243,33071.0);jJ(164759)|0;return}function mJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Pu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function nJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;sv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function oJ(a){a=a|0;var b=0,d=0;d=a+44|0;b=a+40|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;zM((c[b>>2]|0)+(a*12|0)|0);a=a+1|0}zM(b);c[d>>2]=0;return}function pJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Ws(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function qJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Jt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function rJ(a,b){a=a|0;b=b|0;var d=0,e=0;e=Nb;Nb=Nb+16|0;d=e;a=Gw(a,d)|0;if((a|0)>=0){tJ(b,c[d>>2]|0);fQ(d);a=0}Nb=e;return a|0}function sJ(a){a=a|0;var b=0;b=0;while(1){if((b|0)==8)break;Fi(a+(b<<3<<1)|0);b=b+1|0}b=0;while(1){if((b|0)==8)break;$i(a+(b<<1)|0);b=b+1|0}return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=b;e=a+72|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));Zw(b);c[b+24>>2]=0;c[b+28>>2]=0;return}function uJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Ws(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function vJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Jt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function wJ(a){a=a|0;var b=0,d=0;d=a+292|0;b=a+288|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;VP((c[b>>2]|0)+(a<<2)|0);a=a+1|0}c[d>>2]=0;zM(b);return}function xJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Nb;Nb=Nb+16|0;f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=NP(R(3,f|0)|0)|0;Nb=e;return d|0}function yJ(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;g=b[a+27952+(g*160|0)+(d[88688+c>>0]<<2)+2>>1]|0;g=f+e+(g>>2)+((g&3|0)==0?0:3)|0;return ((g|0)>0?g:0)|0}function zJ(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);if(e>>>0<(c[a+20>>2]|0)>>>0)c[b>>2]=e+2;return}function AJ(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0,f=0.0;e=b+-2|0;d=+g[a+(b+-1<<3)>>3];while(1){if((e|0)<=-1)break;f=d*c+ +g[a+(e<<3)>>3];e=e+-1|0;d=f}return +d}function BJ(){var b=0,d=0;d=Nb;Nb=Nb+16|0;b=d;if(!(a[1137072]|0)){a[1137072]=1;c[b>>2]=163652;EN(163671,b)|0}b=DD(1,1072)|0;ha(5,b|0)|0;Nb=d;return b|0}function CJ(a){a=a|0;var b=0;xp(a);b=c[a+808>>2]|0;if(!(b&2))if(!(b&1))a=0;else a=Se(a)|0;else a=im(a)|0;return a|0}function DJ(a,b){a=a|0;b=b|0;var d=0;d=rR(56)|0;if(!d)d=0;else{RU(d,0)|0;c[d+36>>2]=a;c[d+44>>2]=(b|0)==0?28:b;c[d+32>>2]=1}return d|0}function EJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=d+32+(d>>>4)|0;e=e>>>0>d>>>0?e:d;if((c[b>>2]|0)>>>0<=d>>>0){a=eP(a,e)|0;c[b>>2]=(a|0)==0?0:e}return a|0}function FJ(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<<b;b=c[a>>2]<<b;c[a>>2]=b;if(!(b&65535))VM(a);return}function GJ(a){a=a|0;var b=0,d=0;b=a+6472|0;d=a+6728|0;if((c[d>>2]|0)!=4?(c[a+6464>>2]|0)!=0:0)a=0;else{Bk(a+6208|0,b|0,264)|0;a=1}c[d>>2]=0;return a|0}function HJ(a){a=a|0;var b=0,e=0;e=Nb;Nb=Nb+16|0;b=e;if((nv(a)|0)==0?(Zb[c[a+32>>2]&15](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;Nb=e;return a|0}function IJ(a){a=a|0;var b=0,d=0;b=a+64|0;JV(b)|0;d=a+140|0;a=a+92|0;while(1){if(!(c[d>>2]|0))break;zb(a|0,b|0)|0}c[d>>2]=1;JV(b)|0;return}function JJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=Nb;Nb=Nb+16|0;qQ(b,24,c,d);mx(b,24,204094,e);if(a|0)mx(b,24,204270,e+8|0);Nb=e;return}function KJ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>(c|0)){e=0;break}if((b[a+(e<<1)>>1]|0)==d<<16>>16){e=1;break}else e=e+1|0}return e|0}function LJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=Nb;Nb=Nb+16|0;f=g|0;Le(a,b,d,e,f)|0;Nb=g;return (L(c[f+4>>2]|0),c[f>>2]|0)|0}function MJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(d|0))break;f[a+(e<<2)>>2]=+f[b+(e<<2)>>2]*+f[c+(e<<2)>>2];e=e+1|0}return}function NJ(){uz(160604);uz(161500);uz(160768);uz(160940);uz(161068);uz(161196);uz(161324);zN(161456);zN(160560);return}function OJ(a){a=a|0;var b=0;if(c[a+12>>2]|0){b=ha(9,a|0)|0;f[a+8>>2]=1.0;a=a+24|0;if(c[a>>2]|0)iQ(a)}else b=-1;return b|0}function PJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);wg(a,e+32|0,c,16);Nb=d;return}function QJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);zg(a,e+32|0,c,16);Nb=d;return}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);Ag(a,e+32|0,c,16);Nb=d;return}function SJ(a,b,c){a=a|0;b=b|0;c=c|0;Qm(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,d[a+((c*3|0)+-1)>>0]|0,d[a+((c<<2)+-1)>>0]|0);return}function TJ(a,b){a=a|0;b=b|0;var d=0;d=0;do{d=OT(d)|0;if(!d){d=0;break}}while(!((c[d+8>>2]|0)==(a|0)?(c[d+12>>2]|0)==(b|0):0));return d|0}function UJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);Of(a,e+32|0,c,16);Nb=d;return}function VJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);Qf(a,e+32|0,c,16);Nb=d;return}function WJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);Rf(a,e+32|0,c,16);Nb=d;return}function XJ(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;d=b[a>>1]|0;e=1;while(1){if((e|0)>=(c|0))break;f=b[a+(e<<1)>>1]|0;d=(d|0)<(f|0)?d:f;e=e+1|0}return d|0}function YJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);QH(a,e+64|0,c);Nb=d;return}function ZJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);RH(a,e+64|0,c);Nb=d;return}function _J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);SH(a,e+64|0,c);Nb=d;return}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);TH(a,e+64|0,c);Nb=d;return}function aK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);UH(a,e+64|0,c);Nb=d;return}function bK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);VH(a,e+64|0,c);Nb=d;return}function cK(a,b){a=a|0;b=b|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;a=ev(a,72,e)|0;gt(a,c[e>>2]|0,b+344|0)|0;Nb=d;return}function dK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);Cg(a,e+32|0,c,16);Nb=d;return}function eK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+26364|0;a=c[e>>2]|0;c[d>>2]=a;if((c[e>>2]|0)!=3){if(!(b&1))c[d>>2]=a^3;b=b>>1}return b|0}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+208|0;e=d;Tn(e,b+(0-(c<<1))|0,c);Tf(a,e+32|0,c,16);Nb=d;return}function gK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+112|0;e=d;Xt(e,b+(0-(c<<1))|0,c);jh(a,e+16|0,c,8);Nb=d;return}function hK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);gI(a,e+64|0,c);Nb=d;return}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+336|0;e=d;yo(e,b+(0-(c<<1))|0,c);mI(a,e+32|0,c);Nb=d;return}function jK(a){a=a|0;var b=0,d=0;b=Nb;Nb=Nb+32|0;d=b;c[d>>2]=a;c[d+4>>2]=21523;c[d+8>>2]=b+16;a=(NP(T(54,d|0)|0)|0)==0&1;Nb=b;return a|0}function kK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+112|0;e=d;Xt(e,b+(0-(c<<1))|0,c);ag(a,e+16|0,c,8);Nb=d;return}function lK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+672|0;e=d;Vh(e,b+(0-(c<<1))|0,c);hI(a,e+64|0,c);Nb=d;return}function mK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+336|0;e=d;yo(e,b+(0-(c<<1))|0,c);qI(a,e+32|0,c);Nb=d;return}function nK(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<<b;b=c[a>>2]<<b;c[a>>2]=b;if(!(b&65535))zJ(a);return}function oK(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=XD(e,f)|0;a=M()|0;return (L((H(b,f)|0)+(H(d,e)|0)+a|a&0|0),c|0|0)|0}function pK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;og(e,b,16,c);il(a,b+2|0,e,c,c,16,8);Nb=d;return}function qK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;rg(e,b,16,c);il(a,b+2|0,e,c,c,16,8);Nb=d;return}function rK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;sg(e,b,16,c);il(a,b+2|0,e,c,c,16,8);Nb=d;return}function sK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);xn(a,e+16|0,c);Nb=d;return}function tK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);An(a,e+16|0,c);Nb=d;return}function uK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);Bn(a,e+16|0,c);Nb=d;return}function vK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;og(e,b,16,c);Jj(a,b+2|0,e,c,c,16,8);Nb=d;return}function wK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;rg(e,b,16,c);Jj(a,b+2|0,e,c,c,16,8);Nb=d;return}function xK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;sg(e,b,16,c);Jj(a,b+2|0,e,c,c,16,8);Nb=d;return}function yK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);Ll(a,e+16|0,c);Nb=d;return}function zK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);Sl(a,e+16|0,c);Nb=d;return}function AK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);Tl(a,e+16|0,c);Nb=d;return}function BK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=H(b,a)|0;if((a|0)!=0&(b|a)>>>0>65535?((e>>>0)/(a>>>0)|0|0)!=(b|0):0)a=-22;else{c[d>>2]=e;a=0}return a|0}function CK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;mA(e,b+(0-(c<<1))|0,c);Fr(a,e+8|0,c);Nb=d;return}function DK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;mA(e,b+(0-(c<<1))|0,c);Gr(a,e+8|0,c);Nb=d;return}function EK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;mA(e,b+(0-(c<<1))|0,c);Hr(a,e+8|0,c);Nb=d;return}function FK(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;e=d[a+((c*3|0)+-1)>>0]|0;Qm(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,e,e);return}function GK(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+44|0;a=a+40|0;d=b+1024|0;if((c[e>>2]|0)>>>0<b>>>0){b=hv(c[a>>2]|0,d)|0;c[a>>2]=b;c[e>>2]=d}return}function HK(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){nj(b)|0;zM(b+100|0);zM(b+848|0);zM(b+304|0);zM(b+308|0);zM(b+520|0);zM(a)}return}function IK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(c[b+640>>2]&d|0?(Sv(a,b),(d|0)!=3):0){lx(a,d);d=a+32|0;c[d>>2]=(c[d>>2]<<1)+e}return}function JK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function KK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;tg(e,b,16,c);il(a,b+2|0,e,c,c,16,8);Nb=d;return}function LK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);Dn(a,e+16|0,c);Nb=d;return}function MK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;tg(e,b,16,c);Jj(a,b+2|0,e,c,c,16,8);Nb=d;return}function NK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+80|0;e=d;_s(e,b+(0-(c<<1))|0,c);Xl(a,e+16|0,c);Nb=d;return}function OK(a){a=a|0;var b=0,d=0;d=a+4|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;fP(c[(c[a>>2]|0)+(b<<2)>>2]|0);b=b+1|0}c[a+8>>2]=0;return}function PK(a,b){a=a|0;b=b|0;var d=0;c[a+276>>2]=b;d=bQ(b)|0;c[a+264>>2]=d;b=aQ(b)|0;c[a+272>>2]=(c[a+260>>2]|0)==1?1:b;return}function QK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+48|0;e=d;lA(e,b+(0-(c<<1))|0,c);jo(a,e+8|0,c);Nb=d;return}function RK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;mA(e,b+(0-(c<<1))|0,c);Jr(a,e+8|0,c);Nb=d;return}function SK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;OI(e,b+(0-(c<<1))|0,c);Ds(a,e+4|0,c);Nb=d;return}function TK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+48|0;e=d;lA(e,b+(0-(c<<1))|0,c);rm(a,e+8|0,c);Nb=d;return}function UK(a){a=a|0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+76>>2]=32;c[a+84>>2]=0;c[a+102632>>2]=-1;c[a+14664>>2]=-1;a=a+20|0;c[a>>2]=-1;b[a+4>>1]=65535;return}function VK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;uE(e,b,32,c);eN(a,b+2|0,e,c,c);Nb=d;return}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;vE(e,b,32,c);eN(a,b+2|0,e,c,c);Nb=d;return}function XK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;wE(e,b,32,c);eN(a,b+2|0,e,c,c);Nb=d;return}function YK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=rR(40)|0;if(!e)e=0;else{c[e>>2]=a;g[e+8>>3]=1.0;c[e+20>>2]=b;c[e+24>>2]=d}return e|0}function ZK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;uE(e,b,32,c);gN(a,b+2|0,e,c,c);Nb=d;return}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;vE(e,b,32,c);gN(a,b+2|0,e,c,c);Nb=d;return}function $K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;wE(e,b,32,c);gN(a,b+2|0,e,c,c);Nb=d;return}function aL(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>20|0}function bL(a,b){a=a|0;b=b|0;var c=0;c=Nb;Nb=Nb+16|0;b=uv(b,0,c)|0;if((b|0)==-1)b=-1;else{a=xJ(b,a,4)|0;BM(b)|0;b=a}Nb=c;return b|0}function cL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+64|0;e=d;Xg(e,b,8,c);qq(a,b+1|0,e,c,c,8,8);Nb=d;return}function dL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+64|0;e=d;Xg(e,b,8,c);$o(a,b+1|0,e,c,c,8,8);Nb=d;return}function eL(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;oc[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;QE(e,b,32,c);eN(a,b+2|0,e,c,c);Nb=d;return}function gL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+256|0;e=d;dF(e,b,16,c);jN(a,b+1|0,e,c,c);Nb=d;return}function hL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;QE(e,b,32,c);gN(a,b+2|0,e,c,c);Nb=d;return}function iL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+256|0;e=d;dF(e,b,16,c);lN(a,b+1|0,e,c,c);Nb=d;return}function jL(a,b,e){a=a|0;b=b|0;e=e|0;a=MT(a)|0;if(!a)a=-38;else{c[b>>2]=d[a+5>>0];c[e>>2]=d[a+6>>0];a=0}return a|0}function kL(a,c,e){a=a|0;c=c|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;b[a>>1]=d[c>>0]|d[c+1>>0]<<8;f=f+1|0;c=c+e|0;a=a+e|0}return}function lL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;og(e,b,16,c);il(a,b,e,c,c,16,8);Nb=d;return}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;rg(e,b,16,c);il(a,b,e,c,c,16,8);Nb=d;return}function nL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;sg(e,b,16,c);il(a,b,e,c,c,16,8);Nb=d;return}function oL(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(H(d,b)|0)|0;c[e>>2]=-2122219135;c[e+4>>2]=-2122219135;d=d+1|0}return}function pL(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(H(d,b)|0)|0;c[e>>2]=-2139062144;c[e+4>>2]=-2139062144;d=d+1|0}return}function qL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;og(e,b,16,c);Jj(a,b,e,c,c,16,8);Nb=d;return}function rL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;rg(e,b,16,c);Jj(a,b,e,c,c,16,8);Nb=d;return}function sL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;sg(e,b,16,c);Jj(a,b,e,c,c,16,8);Nb=d;return}function tL(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (IS(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>31|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;nl(e,b,8,c);dr(a,b+2|0,e,c,c);Nb=d;return}function vL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;sl(e,b,8,c);dr(a,b+2|0,e,c,c);Nb=d;return}function wL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;tl(e,b,8,c);dr(a,b+2|0,e,c,c);Nb=d;return}function xL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;eq(e,b,4,c);Gv(a,b+2|0,e,c,c);Nb=d;return}function yL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;hq(e,b,4,c);Gv(a,b+2|0,e,c,c);Nb=d;return}function zL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;iq(e,b,4,c);Gv(a,b+2|0,e,c,c);Nb=d;return}function AL(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a=c[a>>2]|0;if(c[a+29656>>2]|0)Yg((c[a+25628>>2]|0)+24|0,b,d,e,f,g);return}function BL(a,b){a=a|0;b=b|0;var d=0,e=0;if(!((((b|0)==0?(e=c[a+12>>2]|0,(e|0)!=0):0)?(c[e+44>>2]|0)!=0:0)?(d=c[a+60>>2]|0,(d|0)!=0):0))d=0;return d|0}function CL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;nl(e,b,8,c);Hp(a,b+2|0,e,c,c);Nb=d;return}function DL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;sl(e,b,8,c);Hp(a,b+2|0,e,c,c);Nb=d;return}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;tl(e,b,8,c);Hp(a,b+2|0,e,c,c);Nb=d;return}function FL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;tg(e,b,16,c);il(a,b,e,c,c,16,8);Nb=d;return}function GL(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(H(d,b)|0)|0;c[e>>2]=2139062143;c[e+4>>2]=2139062143;d=d+1|0}return}function HL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+128|0;e=d;tg(e,b,16,c);Jj(a,b,e,c,c,16,8);Nb=d;return}function IL(a){a=a|0;var b=0,d=0;d=0;while(1){if(d>>>0>=434){b=0;break}b=60528+(d*28|0)|0;if((c[b>>2]|0)==(a|0))break;else d=d+1|0}return b|0}function JL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;vl(e,b,8,c);dr(a,b+2|0,e,c,c);Nb=d;return}function KL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;dm(e,b,4,c);Tv(a,b+1|0,e,c,c);Nb=d;return}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;nq(e,b,4,c);Gv(a,b+2|0,e,c,c);Nb=d;return}function ML(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;Rq(e,b,2,c);Fx(a,b+1|0,e,c,c);Nb=d;return}function NL(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function OL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;vl(e,b,8,c);Hp(a,b+2|0,e,c,c);Nb=d;return}function PL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;dm(e,b,4,c);dv(a,b+1|0,e,c,c);Nb=d;return}function QL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;uE(e,b,32,c);eN(a,b,e,c,c);Nb=d;return}function RL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;vE(e,b,32,c);eN(a,b,e,c,c);Nb=d;return}function SL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;wE(e,b,32,c);eN(a,b,e,c,c);Nb=d;return}function TL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+16|0;b=Bj(a,b,c)|0;if((b|0)<0)mx(a,16,185080,d);Nb=d;return b|0}function UL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;uE(e,b,32,c);gN(a,b,e,c,c);Nb=d;return}function VL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;vE(e,b,32,c);gN(a,b,e,c,c);Nb=d;return}function WL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;wE(e,b,32,c);gN(a,b,e,c,c);Nb=d;return}function XL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+f[d>>2];f[a>>2]=e*+f[b+((c&15)<<2)>>2];f[a+4>>2]=e*+f[b+((c>>>4&15)<<2)>>2];return a+8|0}function YL(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;i=i|0;mc[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function ZL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+64|0;e=d;Xg(e,b,8,c);qq(a,b,e,c,c,8,8);Nb=d;return}function _L(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;b=b+1|0;a=a+e|0}return}function $L(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+64|0;e=d;Xg(e,b,8,c);$o(a,b,e,c,c,8,8);Nb=d;return}function aM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;QE(e,b,32,c);eN(a,b,e,c,c);Nb=d;return}function bM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+256|0;e=d;dF(e,b,16,c);jN(a,b,e,c,c);Nb=d;return}function cM(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+248|0;do{if(c[e>>2]|0){d=0;break}d=Nc(a,b)|0}while((d|0)>=0);return d|0}function dM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+512|0;e=d;QE(e,b,32,c);gN(a,b,e,c,c);Nb=d;return}function eM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+256|0;e=d;dF(e,b,16,c);lN(a,b,e,c,c);Nb=d;return}function fM(){var a=0,b=0,d=0;d=Nb;Nb=Nb+16|0;b=d;a=Db(84)|0;if(!(c[284111]|0)){c[b>>2]=a;mx(0,48,202234,b);c[284111]=1}Nb=d;return a|0}function gM(a){a=a|0;var b=0,d=0;if((a|0?(b=c[a>>2]|0,b|0):0)?(c[a>>2]=0,d=b+32|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a|0)==1):0)Zu(b);return}function hM(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0;e=0;while(1){if((e|0)>=(d|0))break;f[a+(e<<2)>>2]=+f[b+(e<<2)>>2]*c;e=e+1|0}return}function iM(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0;e=0;while(1){if((e|0)>=(d|0))break;g[a+(e<<3)>>3]=+g[b+(e<<3)>>3]*c;e=e+1|0}return}function jM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;nl(e,b,8,c);dr(a,b,e,c,c);Nb=d;return}function kM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;sl(e,b,8,c);dr(a,b,e,c,c);Nb=d;return}function lM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;tl(e,b,8,c);dr(a,b,e,c,c);Nb=d;return}function mM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;eq(e,b,4,c);Gv(a,b,e,c,c);Nb=d;return}function nM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;hq(e,b,4,c);Gv(a,b,e,c,c);Nb=d;return}function oM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;iq(e,b,4,c);Gv(a,b,e,c,c);Nb=d;return}function pM(a){a=a|0;var b=0;b=0;while(1){if(b>>>0>=36){b=-1094995529;break}if(!(c[(c[a+696+(b*656|0)>>2]|0)+248>>2]|0))break;b=b+1|0}return b|0}function qM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;nl(e,b,8,c);Hp(a,b,e,c,c);Nb=d;return}function rM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;sl(e,b,8,c);Hp(a,b,e,c,c);Nb=d;return}function sM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;tl(e,b,8,c);Hp(a,b,e,c,c);Nb=d;return}function tM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;vl(e,b,8,c);dr(a,b,e,c,c);Nb=d;return}function uM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;dm(e,b,4,c);Tv(a,b,e,c,c);Nb=d;return}function vM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;nq(e,b,4,c);Gv(a,b,e,c,c);Nb=d;return}function wM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;Rq(e,b,2,c);Fx(a,b,e,c,c);Nb=d;return}function xM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+32|0;e=d;vl(e,b,8,c);Hp(a,b,e,c,c);Nb=d;return}function yM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;dm(e,b,4,c);dv(a,b,e,c,c);Nb=d;return}function zM(b){b=b|0;var c=0;c=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;FV(c);return}function AM(a){a=a|0;c[a>>2]=693;c[a+4>>2]=138;c[a+8>>2]=117;c[a+12>>2]=139;c[a+16>>2]=140;c[a+20>>2]=1;c[a+24>>2]=118;c[a+28>>2]=119;return}function BM(a){a=a|0;var b=0,d=0;b=Nb;Nb=Nb+16|0;d=b;a=LV(a)|0;c[d>>2]=a;a=U(6,d|0)|0;a=NP((a|0)==-4?0:a)|0;Nb=b;return a|0}function CM(a,b,c,d,e,f,g,h,i,j,k,l,m){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;j=+j;k=+k;l=l|0;m=m|0;K(12);return 0}function DM(a){a=a|0;var c=0,d=0,e=0;c=0;d=0;while(1){if((c|0)==64)break;e=b[a+(c<<1)>>1]|0;c=c+1|0;d=((e|0)>-1?e:0-e|0)+d|0}return d|0}function EM(a){a=a|0;var b=0,d=0;b=Nb;Nb=Nb+16|0;d=b;a=LV(c[a+60>>2]|0)|0;c[d>>2]=a;a=NP(U(6,d|0)|0)|0;Nb=b;return a|0}function FM(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 cc[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function GM(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function HM(a){a=a|0;var b=0;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)<6)a=-87;else return ((a+-65&255)<6?b+-55|0:-1)|0;else a=-48;return a+b|0}function IM(a,b){a=a|0;b=b|0;var d=0;d=(b|0)==0?0:512;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d|8;c[a+4>>2]=b+(d>>>3);c[a+8>>2]=0;return}function JM(a,b){a=a|0;b=b|0;var d=0;d=(b|0)==0?0:56;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d>>>3);c[a+8>>2]=0;return}function KM(a){a=a|0;var b=0;b=a;c[b>>2]=0;c[b+4>>2]=0;c[a+72>>2]=271733878;c[a+76>>2]=-1732584194;c[a+80>>2]=-271733879;c[a+84>>2]=1732584193;return}function LM(b){b=b|0;var c=0,d=0,e=0,f=0;e=wu(b)|0;c=0;d=0;while(1){if((c|0)>=(e|0))break;f=d+(a[b+c>>0]|0)|0;c=c+1|0;d=f}return d|0}function MM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=Nb;Nb=Nb+16|0;g=f;c[g>>2]=e;e=gr(a,b,d,g)|0;Nb=f;return e|0}function NM(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;nc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function OM(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){sT(b+24|0);zM(b+16|0);zM(b+20|0);zM(b+96|0);zM(b+92|0);zM(a)}return}function PM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Nb;Nb=Nb+16|0;f=e;c[f>>2]=d;JJ(0,a,b,f);Nb=e;return}function QM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=wu(a)|0;if((d+1|0)>>>0<c>>>0)a=CD(a+d|0,b,c-d|0)|0;else a=wu(b)|0;return a+d|0}function RM(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b|0?(Yu(b),d=c[b+13448>>2]|0,d|0):0)ec[c[d+4>>2]&31](b+13444|0);zM(a);return}function SM(a){a=a|0;var b=0,c=0;c=(a^85)&255;a=c>>>4&7;b=c<<1&30;if(!a)a=b<<3|8;else a=(b|33)<<a+2;return ((c&128|0)==0?0-a|0:a)|0}function TM(a,b){a=a|0;b=b|0;var d=0;d=Yz(a,4)|0;c[b>>2]=d;if((d|0)==15)a=Yz(a,24)|0;else a=c[76400+(d<<2)>>2]|0;return a|0}function UM(a){a=a|0;if(a)if((c[a+80>>2]|0)==0?(c[a+84>>2]|0)==0:0)a=(c[a+96>>2]|0)!=0&1;else a=1;else a=0;return a|0}function VM(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);c[b>>2]=e+2;return}function WM(a,b){a=a|0;b=b|0;b=d[88688+b>>0]|0;b=(d[b+-8+(a+27824)>>0]|0)+(d[b+-1+(a+27824)>>0]|0)|0;return (b>>>0<64?(b+1|0)>>>1:b)&31|0}function XM(a,b){a=a|0;b=b|0;var d=0;d=xc(6448)|0;if(!d)d=0;else{jq(d|0,0,6448)|0;c[d+6432>>2]=a;c[d+6436>>2]=b}return d|0}function YM(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L(b>>c|0);return a>>>c|(b&(1<<c)-1)<<32-c}L(((b|0)<0?-1:0)|0);return b>>c-32|0}function ZM(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;g[a>>3]=c;g[b>>3]=d*d+(e*e-c+e*2.0*d);return}function _M(a,b,d){a=a|0;b=b|0;d=d|0;b=c[a+(0-d)>>2]|0;c[a>>2]=b;c[a+d>>2]=b;c[a+(d<<1)>>2]=b;c[a+(d*3|0)>>2]=b;return}function $M(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;jc[a&1](b|0,c|0,d|0,e|0,+f,g|0,h|0)}function aN(a){a=+a;a=+XT(+a);L((+u(a)>=1.0?(a>0.0?~~+I(+t(a/4294967296.0),4294967295.0)>>>0:~~+G((a-+(~~a>>>0))/4294967296.0)>>>0):0)|0);return ~~a>>>0|0}function bN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Nb;Nb=Nb+16|0;f=e;c[f>>2]=d;JJ(1,a,b,f);Nb=e;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2122219135;c[a+d>>2]=-2122219135;c[a+(d<<1)>>2]=-2122219135;c[a+(d*3|0)>>2]=-2122219135;return}function dN(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2139062144;c[a+d>>2]=-2139062144;c[a+(d<<1)>>2]=-2139062144;c[a+(d*3|0)>>2]=-2139062144;return}function eN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;il(a,b,c,d,e,32,16);il(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function fN(a){a=+a;a=+gE(a);L((+u(a)>=1.0?(a>0.0?~~+I(+t(a/4294967296.0),4294967295.0)>>>0:~~+G((a-+(~~a>>>0))/4294967296.0)>>>0):0)|0);return ~~a>>>0|0}function gN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Jj(a,b,c,d,e,32,16);Jj(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function hN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Nb;Nb=Nb+96|0;e=d;KM(e);_n(e,b,c);Ls(e,a);Nb=d;return}function iN(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=2139062143;c[a+d>>2]=2139062143;c[a+(d<<1)>>2]=2139062143;c[a+(d*3|0)>>2]=2139062143;return}function jN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;qq(a,b,c,d,e,16,16);qq(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function kN(b,c){b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(c|0))break;if(!(a[b+d>>0]|0))break;d=d+1|0}return d|0}function lN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$o(a,b,c,d,e,16,16);$o(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function mN(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=0?(2147483647/(c>>>0)|0)>>>0>b>>>0:0)a=eP(a,H(c,b)|0)|0;else a=0;return a|0}function nN(a,b){a=a|0;b=+b;var d=0;d=a+152|0;f[d>>2]=+f[d>>2]-b;d=a+184|0;f[d>>2]=+f[d>>2]-b;c[a+192>>2]=1;return}function oN(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 ac[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function pN(a){a=a|0;var b=0;b=0;while(1){if(b>>>0>=12){b=-1;break}if(!(hz(148784+(b*20|0)|0,a)|0))break;b=b+1|0}return b|0}function qN(a,b){a=a|0;b=b|0;Bk(a|0,b|0,400)|0;if((c[b+64>>2]|0)==(b|0))c[a+64>>2]=a;jq(b|0,0,400)|0;Iq(b);return}function rN(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[(c[(c[a+64>>2]|0)+20>>2]|0)+8>>2]=b;return kv(a,0,d,e,f,0)|0}function sN(a){a=a|0;var b=0,c=0;if((a|0)!=0?(c=(wu(a)|0)+1|0,b=eP(0,c)|0,(b|0)!=0):0)Bk(b|0,a|0,c|0)|0;else b=0;return b|0}function tN(a){a=a|0;var b=0;a=c[a>>2]|0;b=a+1664|0;c[b>>2]=0;c[b+4>>2]=-2147483648;c[a+1672>>2]=2147483647;Td(a+1208|0,8,1);return 0}function uN(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L(b<<c|(a&(1<<c)-1<<32-c)>>>32-c|0);return a<<c}L(a<<c-32|0);return 0}function vN(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24))break;if((c&255)<8|(c+-14&255)<18)a[b>>0]=63;b=b+1|0}return}function wN(){var a=0,b=0;a=0;while(1){if((a|0)==512)break;b=a+-256|0;b=H(b,b)|0;c[1078592+(a<<2)>>2]=b;a=a+1|0}return}function xN(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[b+21844>>2]|0))ad(a,b,d);else Mc(a,b,d);return}function yN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Nb;Nb=Nb+16|0;f=e;c[f>>2]=d;d=eT(a,b,f)|0;Nb=e;return d|0}function zN(a){a=a|0;var b=0,d=0;b=a+40|0;do{d=c[284084]|0;c[b>>2]=d}while((d|0)!=(YP(d,a)|0));return}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;return Xb[a&1](b|0,+c,d|0,e|0,f|0,g|0)|0}function BN(a,b){a=a|0;b=b|0;var d=0;d=c[(c[a>>2]|0)+24>>2]|0;if(!d)a=0;else a=Yb[d&15](a,b)|0;return a|0}function CN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Nb;Nb=Nb+16|0;f=e;c[f>>2]=d;d=iI(a,b,f)|0;Nb=e;return d|0}function DN(a){a=a|0;var b=0;b=Ax(1016)|0;if(b){if((Ki(b,a)|0)<0){FV(b);b=0}}else b=0;return b|0}function EN(a,b){a=a|0;b=b|0;var d=0,e=0;d=Nb;Nb=Nb+16|0;e=d;c[e>>2]=b;b=eT(c[40554]|0,a,e)|0;Nb=d;return b|0}function FN(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;lc[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function GN(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L(b>>>c|0);return a>>>c|(b&(1<<c)-1)<<32-c}L(0);return b>>>c-32|0}function HN(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=Re(a,b,c,d,e,f,5)|0;L(M()|0);return f|0}function IN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+832|0;Ge(a,d,b,c,16,c);Nb=d;return}function JN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+832|0;He(a,d,b,c,16,c);Nb=d;return}function KN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+416|0;_d(a,d,b,c,16,c);Nb=d;return}function LN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+832|0;ue(a,d,b,c,16,c);Nb=d;return}function MN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+832|0;ve(a,d,b,c,16,c);Nb=d;return}function NN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+416|0;Ld(a,d,b,c,16,c);Nb=d;return}function ON(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+2688|0;ky(a,d,b,c,c);Nb=d;return}function PN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+2688|0;ly(a,d,b,c,c);Nb=d;return}function QN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+1344|0;my(a,d,b,c,c);Nb=d;return}function RN(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function SN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+2688|0;py(a,d,b,c,c);Nb=d;return}function TN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+2688|0;qy(a,d,b,c,c);Nb=d;return}function UN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+1344|0;ry(a,d,b,c,c);Nb=d;return}function VN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+416|0;le(a,d,b,c,16,c);Nb=d;return}function WN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+416|0;Rd(a,d,b,c,16,c);Nb=d;return}function XN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+208|0;se(a,d,b,c,8,c);Nb=d;return}function YN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+1344|0;yy(a,d,b,c,c);Nb=d;return}function ZN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+208|0;Zd(a,d,b,c,8,c);Nb=d;return}function _N(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+1344|0;zy(a,d,b,c,c);Nb=d;return}function $N(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Ax(H(b,a)|0)|0;else a=0;return a|0}function aO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+288|0;vi(a,d,b,c,c);Nb=d;return}function bO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+288|0;yi(a,d,b,c,c);Nb=d;return}function cO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+144|0;Ug(a,d,b,c,c);Nb=d;return}function dO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+112|0;hm(a,d,b,c,c);Nb=d;return}function eO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+112|0;lm(a,d,b,c,c);Nb=d;return}function fO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+672|0;My(a,d,b,c,c);Nb=d;return}function gO(a){a=a|0;var b=0,d=0;if(!(((a|0)!=0?(d=c[a+12>>2]|0,(d|0)!=0):0)?(b=c[d>>2]|0,(b|0)!=0):0))b=184328;return b|0}function hO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+288|0;zh(a,d,b,c,c);Nb=d;return}function iO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+288|0;Ah(a,d,b,c,c);Nb=d;return}function jO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+144|0;lg(a,d,b,c,c);Nb=d;return}function kO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+672|0;Ny(a,d,b,c,c);Nb=d;return}function lO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+64|0;fl(a,d,b,c,c);Nb=d;return}function mO(a,b){a=a|0;b=b|0;if((c[(c[a+28200>>2]|0)+12>>2]|0)==3)vc(a,b);else wc(a,b);return}function nO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+144|0;nh(a,d,b,c,c);Nb=d;return}function oO(){var a=0,b=0;a=Nb;Nb=Nb+16|0;b=a;VU();WU(-8);c[b>>2]=162675;EN(162496,b)|0;Nb=a;return 0}function pO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+144|0;Ng(a,d,b,c,c);Nb=d;return}function qO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+80|0;Ih(a,d,b,c,c);Nb=d;return}function rO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+64|0;Cl(a,d,b,c,c);Nb=d;return}function sO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+32|0;em(a,d,b,c,c);Nb=d;return}function tO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Nb;Nb=Nb+80|0;$g(a,d,b,c,c);Nb=d;return}function uO(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=d;c[b+4>>2]=0;c[b+8>>2]=e;c[b+12>>2]=e;a[d>>0]=0;return}function vO(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=(c[b>>2]|0)+(8-1)&~(8-1);d=+g[e>>3];c[b>>2]=e+8;g[a>>3]=d;return}function wO(a){a=a|0;if(a)if(!(c[a+88>>2]|0))a=(c[a+104>>2]|0)!=0&1;else a=1;else a=0;return a|0}function xO(a,b){a=a|0;b=b|0;return (d[a+(b+1)>>0]|0)<<16|(d[a+b>>0]|0)<<24|(d[a+(b+2)>>0]|0)<<8|(d[a+(b+3)>>0]|0)|0}function yO(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function zO(a,b){a=a|0;b=b|0;if(!b)b=0;else b=nm(c[b>>2]|0,c[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function AO(a){a=a|0;var b=0,c=0;b=(wu(a)|0)+1|0;c=xc(b)|0;if(!c)a=0;else a=Bk(c|0,a|0,b|0)|0;return a|0}function BO(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=rR(H(b,a)|0)|0;else a=0;return a|0}function CO(b,c){b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)==17)break;a[c+d>>0]=0;a[b+d>>0]=0;d=d+1|0}return}function DO(a,b){a=a|0;b=b|0;var c=0;c=kP(a|0,b|0,-1,-1)|0;return ((a|0)==0&(b|0)==0|((c&a|0)!=0|((M()|0)&b|0)!=0))&1|0}function EO(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 $b[a&63](b|0,c|0,d|0,e|0,f|0)|0}function FO(a,b){a=a|0;b=b|0;CQ(a,b);a=a+(b<<2)|0;Dy(a,0,b);Dy(a+8|0,0,b);return}function GO(a,b){a=a|0;b=b|0;CQ(a,b);a=a+(b<<2)|0;Ey(a,0,b);Ey(a+8|0,0,b);return}function HO(a,b){a=a|0;b=b|0;CQ(a,b);a=a+(b<<2)|0;cz(a,0,b);cz(a+8|0,0,b);return}function IO(a,b){a=a|0;b=b|0;var c=0;if((a|0)!=0?(c=Ax(b)|0,(c|0)!=0):0)Bk(c|0,a|0,b|0)|0;else c=0;return c|0}function JO(a,b,d){a=a|0;b=b|0;d=d|0;c[a+192>>2]=0;c[a>>2]=b;c[a+4>>2]=d;pr(a);UQ(a);return 0}function KO(a,b){a=a|0;b=b|0;if((b|0)==0?(c[(c[a+4>>2]|0)+8>>2]|0)!=0:0)a=c[a+12>>2]|0;else a=0;return a|0}function LO(a,b){a=a|0;b=b|0;op(a,b);a=a+(b<<2)|0;Dy(a,0,b);Dy(a+8|0,0,b);return}function MO(a,b){a=a|0;b=b|0;op(a,b);a=a+(b<<2)|0;Ey(a,0,b);Ey(a+8|0,0,b);return}function NO(a,b){a=a|0;b=b|0;op(a,b);a=a+(b<<2)|0;cz(a,0,b);cz(a+8|0,0,b);return}function OO(a){a=a|0;if(!(c[(c[a>>2]|0)+20>>2]&1))a=(c[(c[a>>2]|0)+8>>2]|0)==1&1;else a=0;return a|0}function PO(a,b){a=a|0;b=b|0;CQ(a,b);a=a+(b<<2)|0;fz(a,0,b);fz(a+8|0,0,b);return}function QO(a,b){a=a|0;b=b|0;DQ(a,b);a=a+(b<<2)|0;dN(a,0,b);dN(a+4|0,0,b);return}function RO(a){a=a|0;if(a>>>0<=11){if(3040>>>a&1)a=c[148784+(a*20|0)+16>>2]|0}else a=-1;return a|0}function SO(a,b){a=a|0;b=b|0;op(a,b);a=a+(b<<2)|0;fz(a,0,b);fz(a+8|0,0,b);return}function TO(a,b){a=a|0;b=b|0;as(a,b);a=a+(b<<2)|0;dN(a,0,b);dN(a+4|0,0,b);return}function UO(a){a=a|0;switch(a|0){case 12:{a=0;break}case 13:{a=4;break}case 14:{a=5;break}default:{}}return a|0}function VO(a){a=a|0;var b=0;b=0-(SU(a)|0)&7;if(b|0)CS(a,b);return (c[a>>2]|0)+(c[a+8>>2]>>3)|0}function WO(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function XO(a){a=a|0;if(a>>>0<=11){if(!(3040>>>a&1))a=c[148784+(a*20|0)+16>>2]|0}else a=-1;return a|0}function YO(a,b){a=a|0;b=b|0;if((2147483647/(b>>>0)|0)>>>0>a>>>0)a=rR(H(b,a)|0)|0;else a=0;return a|0}function ZO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;K(27)}function _O(a,b){a=a|0;b=b|0;if((2147483647/(b>>>0)|0)>>>0>a>>>0)a=Ax(H(b,a)|0)|0;else a=0;return a|0}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;kc[a&127](b|0,c|0,d|0,e|0,f|0)}function aP(a,b){a=a|0;b=b|0;a=c[a+28>>2]|0;if(!a)a=0;else a=Wb[a&31](b)|0;return a|0}function bP(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+2|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function cP(a){a=a|0;var b=0;b=cI(a)|0;if(!b)b=0;else jq(c[b+4>>2]|0,0,a|0)|0;return b|0}function dP(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function eP(a,b){a=a|0;b=b|0;if((2147483647+-32|0)>>>0<b>>>0)a=0;else a=hv(a,((b|0)==0&1)+b|0)|0;return a|0}function fP(a){a=a|0;var b=0;b=c[a>>2]|0;c[a+4>>2]=b;c[a+8>>2]=b;c[a+16>>2]=0;c[a+20>>2]=0;return}function gP(a){a=a|0;c[a+6744>>2]=14;c[a+6748>>2]=15;c[a+6752>>2]=43;c[a+6756>>2]=44;c[a+6760>>2]=16;return}function hP(a,b){a=a|0;b=b|0;if(a>>>0<9){b=xc(b)|0;return b|0}else{b=ml(a,b)|0;return b|0}return 0}function iP(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 (L(d|0),a-c>>>0|0)|0}function jP(a){a=a|0;if(!(c[a+808>>2]&1))Ov(a);else Hg(a,c[a+800>>2]|0);return}function kP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (L(b+d+(c>>>0<a>>>0|0)>>>0|0),c|0)|0}function lP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[a>>2]|0;if((e|0)==(b|0))c[a>>2]=d;return e|0}function mP(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;L(c[h+4>>2]|0);return b|0}function nP(a,b){a=a|0;b=b|0;CQ(a,b);Dy(a,0,b);Dy(a+8|0,0,b);return}function oP(a,b){a=a|0;b=b|0;CQ(a,b);Ey(a,0,b);Ey(a+8|0,0,b);return}function pP(a,b){a=a|0;b=b|0;CQ(a,b);cz(a,0,b);cz(a+8|0,0,b);return}function qP(a,b){a=a|0;b=b|0;if((c[a>>2]|0)==324508639)return 0;dc[b&31]();c[a>>2]=324508639;return 0}function rP(a,b){a=a|0;b=b|0;op(a,b);Dy(a,0,b);Dy(a+8|0,0,b);return}function sP(a,b){a=a|0;b=b|0;op(a,b);Ey(a,0,b);Ey(a+8|0,0,b);return}function tP(a,b){a=a|0;b=b|0;op(a,b);cz(a,0,b);cz(a+8|0,0,b);return}function uP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return _b[a&7](b|0,c|0,d|0,e|0)|0}function vP(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;K(26)}function wP(a,b){a=a|0;b=b|0;CQ(a,b);fz(a,0,b);fz(a+8|0,0,b);return}function xP(a,b){a=a|0;b=b|0;DQ(a,b);dN(a,0,b);dN(a+4|0,0,b);return}function yP(a,b){a=a|0;b=b|0;op(a,b);fz(a,0,b);fz(a+8|0,0,b);return}function zP(a,b){a=a|0;b=b|0;as(a,b);dN(a,0,b);dN(a+4|0,0,b);return}function AP(a){a=a|0;oJ(a);nT(a);Zw(a);c[a+24>>2]=0;c[a+28>>2]=0;return}function BP(){var a=0;a=rR(400)|0;if(!a)a=0;else{c[a+64>>2]=0;Iq(a)}return a|0}function CP(a){a=a|0;var b=0;b=~a&255;a=(b<<3&120|132)<<(b>>>4&7);return ((b&128|0)==0?a+-132|0:132-a|0)|0}function DP(){var a=0;a=DD(1,28)|0;ha(7,a|0)|0;f[a+8>>2]=1.0;c[a+4>>2]=4096;return a|0}function EP(a,b){a=a|0;b=b|0;var d=0;d=DD(1,196)|0;c[d>>2]=a;c[d+4>>2]=b;Ej(d);return d|0}function FP(a){a=a|0;a=c[a+12>>2]|0;if((a|0)!=0?(c[a+88>>2]|0)!=0:0)a=6;else a=5;return a|0}function GP(a,b){a=a|0;b=b|0;return (d[a+(b+1)>>0]|0)<<8|(d[a+b>>0]|0)<<16|(d[a+(b+2)>>0]|0)|0}function HP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ic[a&255](b|0,c|0,d|0,e|0)}function IP(a,b,c){a=a|0;b=b|0;c=c|0;ur(a,b,c,16);ur(a+16|0,b+16|0,c,16);return}function JP(a,b,c){a=a|0;b=b|0;c=c|0;vp(a,b,c,16);vp(a+16|0,b+16|0,c,16);return}function KP(a,b,c){a=a|0;b=b|0;c=c|0;xx(a,b,c,16);xx(a+8|0,b+8|0,c,16);return}function LP(a,b,c){a=a|0;b=b|0;c=c|0;xv(a,b,c,16);xv(a+8|0,b+8|0,c,16);return}function MP(a){a=a|0;var b=0;b=Yz(a,5)|0;if((b|0)==31)b=(Yz(a,6)|0)+32|0;return b|0}function NP(a){a=a|0;var b=0;if(a>>>0>4294963200){b=PV()|0;c[b>>2]=0-a;a=-1}return a|0}function OP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return un(a,b,-1,2147483647,-1,c,d)|0}function PP(a,b){a=a|0;b=b|0;a=bp(a,b)|0;if((a|0)<0)AP(b);return a|0}function QP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;gc[a&7](b|0,c|0,+d,e|0)}function RP(a){a=a|0;Va(3,a+28|0);jJ(164703)|0;c[a+44>>2]=0;c[a+48>>2]=0;return}function SP(){var a=0;a=rR(136)|0;if(!a)a=0;else ew(a);return a|0}function TP(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(25)}function UP(a){a=a|0;var b=0;b=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return 0}function VP(a){a=a|0;var b=0;b=c[a>>2]|0;nT(b+16|0);HC(b+12|0);zM(a);return}function WP(a){a=a|0;zM(a+62608|0);zM(a+62612|0);zM(a+62620|0);zM(a+62616|0);return}function XP(a,b,c){a=a|0;b=b|0;c=c|0;c=av(a,b,c,0,-2147483648)|0;L(M()|0);return c|0}function YP(a,b){a=a|0;b=b|0;var d=0;d=c[284084]|0;if((d|0)==(a|0))c[284084]=b;return d|0}function ZP(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){ew(b);zM(a)}return}function _P(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Hw(a,b,1.0,1,c,d,e)|0}function $P(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;h=h|0;K(23)}function aQ(a){a=a|0;if(a>>>0>11)a=0;else a=c[148784+(a*20|0)+12>>2]|0;return a|0}function bQ(a){a=a|0;if(a>>>0>11)a=0;else a=c[148784+(a*20|0)+8>>2]>>3;return a|0}function cQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Am(a,b,c,d,12,30,204635)|0}function dQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Am(a,b,c,d,356,29,204752)|0}function eQ(a,b){a=a|0;b=b|0;b=b-(SU(a)|0)&7;if(b|0)yO(a,b);return}function fQ(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){AP(b);zM(a)}return}function gQ(a,b){a=a|0;b=b|0;a=IS(a|0)|0;b=IS(b|0)|0;L(a|0);return b|0}function hQ(a,b){a=a|0;b=b|0;c[a>>2]=1;b=Yz(b,8)|0;c[a+4>>2]=b;return}function iQ(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){rv(b);zM(a)}return}function jQ(a){a=a|0;c[a>>2]=3;c[a+4>>2]=102;c[a+8>>2]=6;c[a+12>>2]=103;return}function kQ(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(13);return 0}function lQ(a){a=a|0;a=c[a>>2]|0;zM(a);ZI(a+1388|0);_B(a+40|0);return}function mQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ok(a,b,c,d,e,0)|0}function nQ(a,b){a=a|0;b=b|0;zM(b);a=sN(a)|0;c[b>>2]=a;return ((a|0)==0?-12:0)|0}function oQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Zb[a&15](b|0,c|0,d|0)|0}function pQ(a){a=a|0;if((a+-1|0)>>>0>429496728)a=0;else a=Ax(a<<2)|0;return a|0}function qQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(143)Si(a,b,c,d);return}function rQ(a){a=a|0;if(a>>>0<356)a=c[94176+(a*152|0)>>2]|0;else a=0;return a|0}function sQ(a,b){a=a|0;b=b|0;return Yb[c[(c[a+4>>2]|0)+20>>2]&15](a,b)|0}function tQ(a){a=a|0;if(a>>>0<23)a=c[148288+(a<<2)>>2]|0;else a=0;return a|0}function uQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Vb[a&1](b|0,c|0,d|0)}function vQ(b,c){b=b|0;c=c|0;b=sp(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function wQ(a,b){a=a|0;b=b|0;var c=0;c=wu(a)|0;return ((DA(a,1,c,b)|0)!=(c|0))<<31>>31|0}function xQ(a,b){a=a|0;b=b|0;return qH($N(a,b)|0,H(b,a)|0)|0}function yQ(a){a=a|0;if(a>>>0<19)a=c[148384+(a<<2)>>2]|0;else a=0;return a|0}function zQ(){var a=0;a=rR(83192)|0;if(a|0){c[a>>2]=162136;sU(a)}return a|0}function AQ(a,b,c){a=a|0;b=b|0;c=c|0;return sr(a,b,cI(c)|0)|0}function BQ(a,b,c){a=a|0;b=b|0;c=c|0;c=av(a,b,c,-2147483648,0)|0;M()|0;return c|0}function CQ(a,b){a=a|0;b=b|0;op(a,b);op(a+(b<<3)|0,b);return}function DQ(a,b){a=a|0;b=b|0;as(a,b);as(a+(b<<3)|0,b);return}function EQ(a,b){a=a|0;b=b|0;SD(a,b);SD(a+(b<<3)|0,b);return}function FQ(a,b){a=a|0;b=b|0;TD(a,b);TD(a+(b<<3)|0,b);return}function GQ(a,b){a=a|0;b=b|0;ZD(a,b);ZD(a+(b<<3)|0,b);return}function HQ(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))xo(b,d,a)|0;return}function IQ(a){a=a|0;Wb[c[(c[(c[a+64>>2]|0)+20>>2]|0)+12>>2]&31](a)|0;return}function JQ(b,d,e){b=b|0;d=d|0;e=e|0;a[e+252>>0]=(c[d>>2]|0)!=0&1;return 0}function KQ(a,b,d){a=a|0;b=b|0;d=d|0;ha(1,c[d+100>>2]|0)|0;return 0}function LQ(a){a=a|0;if(a>>>0>6100804)a=0;else a=rR(a*352|0)|0;return a|0}function MQ(a){a=a|0;if(a>>>0<15)a=c[148464+(a<<2)>>2]|0;else a=0;return a|0}function NQ(a,b,c){a=a|0;b=b|0;c=c|0;return YH(a,b,c>>>0>268435455?-8:c<<3)|0}function OQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hc[a&1023](b|0,c|0,d|0)}function PQ(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(24)}function QQ(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){zM(b+4|0);zM(a)}return}function RQ(a,b){a=a|0;b=b|0;aE(a,b);aE(a+(b<<3)|0,b);return}function SQ(a,b){a=a|0;b=b|0;pL(a,b);pL(a+(b<<3)|0,b);return}function TQ(a,b){a=a|0;b=b|0;ec[c[80432+((c[a>>2]|0)+-2<<2)>>2]&31](b);return}function UQ(a){a=a|0;La(34962,c[a+124>>2]|0);Na(34962,64,a+128|0,35044);return}function VQ(a){a=a|0;var b=0;b=0-(SU(a)|0)&7;if(b|0)yO(a,b);return}function WQ(a){a=a|0;if(a>>>0>35)a=0;else a=c[90768+(a<<3)>>2]|0;return a|0}function XQ(a){a=a|0;if(a>>>0>268435454)a=0;else a=Ax(a<<3)|0;return a|0}function YQ(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;K(20)}function ZQ(a){a=a|0;pR(a);QR(a+524288|0);QR(a+786432|0);Ve(a,557024,16384);return}function _Q(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return xf(a,b,c,d)|0}function $Q(a){a=a|0;if(a>>>0>536870910)a=0;else a=Ax(a<<2)|0;return a|0}function aR(a){a=a|0;if(a>>>0>178956969)a=0;else a=Ax(a*12|0)|0;return a|0}function bR(a){a=a|0;var b=0;b=Nb;Nb=Nb+a|0;Nb=Nb+15&-16;return b|0}function cR(a,b,c){a=a|0;b=b|0;c=c|0;uE(a,b,c,c);return}function dR(a,b,c){a=a|0;b=b|0;c=c|0;vE(a,b,c,c);return}function eR(a,b,c){a=a|0;b=b|0;c=c|0;wE(a,b,c,c);return}function fR(a){a=a|0;var b=0;b=c[a+6440>>2]|0;if(b|0)qd(b);qd(a);return}function gR(a,b,d){a=a|0;b=b|0;d=d|0;Bk(c[a>>2]|0,c[b>>2]|0,d<<3|0)|0;return}function hR(a,b,d){a=a|0;b=b|0;d=d|0;Bk(c[a>>2]|0,c[b>>2]|0,d<<2|0)|0;return}function iR(a,b,d){a=a|0;b=b|0;d=d|0;Bk(c[a>>2]|0,c[b>>2]|0,d<<1|0)|0;return}function jR(a,b,c){a=a|0;b=b|0;c=c|0;xE(a,b,c,c);return}function kR(a,b,c){a=a|0;b=b|0;c=c|0;yE(a,b,c,c);return}function lR(a,b,c){a=a|0;b=b|0;c=c|0;zE(a,b,c,c);return}function mR(a,b){a=a|0;b=b|0;if(!a)a=0;else a=To(a,b,0)|0;return a|0}function nR(a,b,c){a=a|0;b=b|0;c=c|0;c=av(a,b,c,-1,0)|0;M()|0;return c|0}function oR(a){a=a|0;var b=0;b=(zV()|0)+188|0;return pv(a,c[b>>2]|0)|0}function pR(a){a=a|0;QR(a);gS(a+262144|0);gS(a+393216|0);Ve(a,425952,8192);return}function qR(a){a=a|0;if(a>>>0>536870910)a=0;else a=rR(a<<2)|0;return a|0}function rR(a){a=a|0;var b=0;b=Ax(a)|0;if(b|0)jq(b|0,0,a|0)|0;return b|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;og(a,b,c,c);return}function tR(a,b,c){a=a|0;b=b|0;c=c|0;rg(a,b,c,c);return}function uR(a,b,c){a=a|0;b=b|0;c=c|0;sg(a,b,c,c);return}function vR(a,b,c){a=a|0;b=b|0;c=c|0;nl(a,b,c,c);return}function wR(a,b,c){a=a|0;b=b|0;c=c|0;sl(a,b,c,c);return}function xR(a,b,c){a=a|0;b=b|0;c=c|0;tl(a,b,c,c);return}function yR(a,b,c){a=a|0;b=b|0;c=c|0;eq(a,b,c,c);return}function zR(a,b,c){a=a|0;b=b|0;c=c|0;hq(a,b,c,c);return}function AR(a,b,c){a=a|0;b=b|0;c=c|0;iq(a,b,c,c);return}function BR(a,b,c){a=a|0;b=b|0;c=c|0;QE(a,b,c,c);return}function CR(a,b,c){a=a|0;b=b|0;c=c|0;dF(a,b,c,c);return}function DR(a,b){a=a|0;b=b|0;a=(a|0)==0?1:a;return ((a+10|0)>(b|0)?b:a)|0}function ER(a){a=a|0;var b=0;b=Yz(a,16)|0;return b<<16|(Yz(a,16)|0)|0}function FR(a,b){a=a|0;b=b|0;return ((c[a+4>>2]|0)>>>1)-((c[b+4>>2]|0)>>>1)|0}function GR(a,b,c){a=a|0;b=b|0;c=c|0;Ff(a,b,c,c);return}function HR(a,b,c){a=a|0;b=b|0;c=c|0;Hf(a,b,c,c);return}function IR(a,b,c){a=a|0;b=b|0;c=c|0;If(a,b,c,c);return}function JR(a,b,c){a=a|0;b=b|0;c=c|0;dk(a,b,c,c);return}function KR(a,b,c){a=a|0;b=b|0;c=c|0;hk(a,b,c,c);return}function LR(a,b,c){a=a|0;b=b|0;c=c|0;ik(a,b,c,c);return}function MR(a,b,c){a=a|0;b=b|0;c=c|0;VE(a,b,c,c);return}function NR(a,b,c){a=a|0;b=b|0;c=c|0;jF(a,b,c,c);return}function OR(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return +Tb[a&0](b|0,+c,+d)}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;K(11);return 0}function QR(a){a=a|0;gS(a);jS(a+131072|0);jS(a+196608|0);Ve(a,360416,4096);return}function RR(a){a=a|0;var b=0;b=c[284089]|0;c[284089]=b+a;return b+a|0}function SR(a,b,c){a=a|0;b=b|0;c=c|0;tg(a,b,c,c);return}function TR(a,b,c){a=a|0;b=b|0;c=c|0;Xg(a,b,c,c);return}function UR(a,b,c){a=a|0;b=b|0;c=c|0;vl(a,b,c,c);return}function VR(a,b,c){a=a|0;b=b|0;c=c|0;dm(a,b,c,c);return}function WR(a,b,c){a=a|0;b=b|0;c=c|0;nq(a,b,c,c);return}function XR(a,b,c){a=a|0;b=b|0;c=c|0;Rq(a,b,c,c);return}function YR(a,b,c){a=a|0;b=b|0;c=c|0;Nf(a,b,c,c);return}function ZR(a,b,c){a=a|0;b=b|0;c=c|0;Uf(a,b,c,c);return}function _R(a,b,c){a=a|0;b=b|0;c=c|0;lk(a,b,c,c);return}function $R(a,b,c){a=a|0;b=b|0;c=c|0;Dk(a,b,c,c);return}function aS(a,b,d){a=a|0;b=b|0;d=d|0;Bk(c[a>>2]|0,c[b>>2]|0,d|0)|0;return}function bS(a,b,c){a=a|0;b=b|0;c=c|0;ia(6,a|0,b|0,c|0)|0;return}function cS(a,b){a=a|0;b=b|0;ts(a,b);zr(a,0,b);return}function dS(a,b){a=a|0;b=b|0;ov(a,b);Bw(a,0,b);return}function eS(a,b){a=a|0;b=b|0;ch(a,b);Mu(a,0,b);return}function fS(a,b){a=a|0;b=b|0;Pj(a,b);hE(a,0,b);return}function gS(a){a=a|0;jS(a);tS(a+65536|0);tS(a+98304|0);Ve(a,327648,2048);return}function hS(a,b){a=a|0;b=b|0;c[a+4>>2]=692;c[a>>2]=(b|0)<9?1:2;return}function iS(a,b){a=a|0;b=+b;b=b>0.0?b:0.0;f[a+8>>2]=b>1.0?1.0:b;return}function jS(a){a=a|0;tS(a);AS(a+32768|0);AS(a+49152|0);Ve(a,311264,1024);return}function kS(a){a=a|0;qP(80224+(a<<3)+4|0,c[80224+(a<<3)>>2]|0)|0;return}function lS(a){a=+a;var b=0;b=GC()|0;return +((+(b>>>0)+4294967296.0*+(M()|0))*1.0e-06)}function mS(){var a=0;a=c[40500]|0;if((a|0)==-1){c[40500]=0;a=0}return a|0}function nS(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;K(6);return 0}function oS(a,b){a=a|0;b=b|0;var c=0;c=IS(a|0)|0;return ((b|0)==0?a:c)|0}function pS(a,b){a=a|0;b=b|0;Bp(a,b);zr(a,0,b);return}function qS(a,b){a=a|0;b=b|0;Gs(a,b);Bw(a,0,b);return}function rS(a,b){a=a|0;b=b|0;Jm(a,b);Mu(a,0,b);return}function sS(a,b){a=a|0;b=b|0;Ap(a,b);hE(a,0,b);return}function tS(a){a=a|0;AS(a);FS(a+16384|0);FS(a+24576|0);Ve(a,303072,512);return}function uS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Le(a,b,c,d,0)|0}function vS(a,c){a=a|0;c=c|0;return (b[a>>1]|0)-(b[c>>1]|0)|0}function wS(a){a=a|0;a=c[a+60>>2]|0;rU(a+292|0);zM(a+288|0);return 0}function xS(a){a=+a;return +(+E(+(a+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function yS(a){a=a|0;OJ(a)|0;ha(8,a|0)|0;qd(a);return}function zS(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function AS(a){a=a|0;FS(a);KS(a+8192|0);KS(a+12288|0);Ve(a,298976,256);return}function BS(a,b){a=a|0;b=b|0;c[a>>2]=(c[a>>2]|0)+b;return}function CS(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function DS(a){a=a|0;a=c[a>>2]|0;c[a+44>>2]=7;c[a+48>>2]=2;return 0}function ES(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L(0);return 0}function FS(a){a=a|0;KS(a);US(a+4096|0);US(a+6144|0);Ve(a,296928,128);return}function GS(a){a=a|0;return (c[a+4>>2]|0)>>>0<(c[a+8>>2]|0)>>>0|0}function HS(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(22)}function IS(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function JS(a,b,c){a=a|0;b=b|0;c=c|0;return Yb[a&15](b|0,c|0)|0}function KS(a){a=a|0;US(a);fT(a+2048|0);fT(a+3072|0);Ve(a,295904,64);return}function LS(a,b,c){a=a|0;b=b|0;c=c|0;ur(a,b,c,8);return}function MS(a,b,c){a=a|0;b=b|0;c=c|0;xx(a,b,c,8);return}function NS(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(SU(a)|0)|0}function OS(a,b,c){a=a|0;b=b|0;c=c|0;vp(a,b,c,8);return}function PS(a,b,c){a=a|0;b=b|0;c=c|0;xv(a,b,c,8);return}function QS(a){a=a|0;if(!a)a=0;else a=c[a>>2]|0;return a|0}function RS(a,b,c){a=a|0;b=b|0;c=c|0;IP(a,b,c);return}function SS(a,b,c){a=a|0;b=b|0;c=c|0;KP(a,b,c);return}function TS(a){a=a|0;RP(a);c[a+192>>2]=0;c[a+20>>2]=0;return}function US(a){a=a|0;fT(a);lT(a+1024|0);lT(a+1536|0);Ve(a,295392,32);return}function VS(a,b,c){a=a|0;b=b|0;c=c|0;JP(a,b,c);return}function WS(a,b,c){a=a|0;b=b|0;c=c|0;LP(a,b,c);return}function XS(a){a=a|0;if(a|0){aU(c[a>>2]|0);c[a>>2]=0}return}function YS(a){a=a|0;bJ(c[43392+(a<<2)>>2]|0,1<<a);return}function ZS(a,b,c){a=a|0;b=b|0;c=c|0;return +Ub[a&1](b|0,c|0)}function _S(a,b,c){a=a|0;b=b|0;c=c|0;Sw(a,b,c);return}function $S(a,b,c){a=a|0;b=b|0;c=c|0;CI(a,b,c);return}function aT(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function bT(a,b,c){a=a|0;b=b|0;c=c|0;kL(a,b,c);return}function cT(a,b,c){a=a|0;b=b|0;c=c|0;gv(a,b,c);return}function dT(a,b,c){a=a|0;b=b|0;c=c|0;oE(a,b,c);return}function eT(a,b,c){a=a|0;b=b|0;c=c|0;return kl(a,b,c,1,198)|0}function fT(a){a=a|0;lT(a);mT(a+512|0);mT(a+768|0);Ve(a,295136,16);return}function gT(a,b,c){a=a|0;b=b|0;c=c|0;Ir(a,b,c,1);return}function hT(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;K(10);return 0}function iT(a){a=a|0;a=(MT(a)|0)+8|0;return c[a>>2]&8|0}function jT(){var a=0;a=rR(72)|0;if(a|0)AP(a);return a|0}function kT(a,b,c){a=a|0;b=b|0;c=c|0;Ir(a,b,c,0);return}function lT(a){a=a|0;mT(a);vT(a+256|0);vT(a+384|0);Ve(a,295008,8);return}function mT(a){a=a|0;vT(a);Yj(a+128|0);Yj(a+192|0);Ve(a,294944,4);return}function nT(a){a=a|0;if(a|0?c[a>>2]|0:0)fu(a,0);return}function oT(a,b,c){a=a|0;b=b|0;c=c|0;fc[a&255](b|0,c|0)}function pT(a,b,c){a=a|0;b=b|0;c=+c;return +Sb[a&0](b|0,+c)}function qT(a,b){a=a|0;b=b|0;vj(a,b,1,0);return}function rT(a,b){a=a|0;b=b|0;vj(a,b,0,1);return}function sT(a){a=a|0;zM(a+8|0);zM(a+64|0);zM(a+12|0);return}function tT(a){a=a|0;rU(a+390884|0);rU(a+390816|0);return}function uT(){if(!(c[284087]|0)){c[284087]=1;wN()}return}function vT(a){a=a|0;Yj(a);Tr(a+64|0);Tr(a+96|0);Ve(a,294912,2);return}function wT(a,b){a=a|0;b=b|0;vj(a,b,0,0);return}function xT(a,b){a=a|0;b=b|0;return sz(a,c[b>>2]|0)|0}function yT(a){a=a|0;return (c[a+12>>2]|0)-(c[a+8>>2]|0)|0}function zT(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;K(21)}function AT(a,b){a=a|0;b=b|0;ak(a,b);return}function BT(a,b){a=a|0;b=b|0;ek(a,b);return}function CT(a,b){a=a|0;b=b|0;fk(a,b);return}function DT(a){a=a|0;FV(c[a+256>>2]|0);jq(a|0,0,280)|0;return}function ET(a,b){a=a|0;b=b|0;Xu(b,a,64)|0;return a|0}function FT(a,b){a=a|0;b=b|0;return ((b|0)>0?a<<b:a>>0-b)|0}function GT(a,b){a=a|0;b=b|0;jk(a,b);return}function HT(a){a=a|0;return (a>>>0>11?0:148784+(a*20|0)|0)|0}function IT(a,b){a=a|0;b=b|0;return (b|a)-((b^a)>>>1&2139062143)|0}function JT(a,b,c){a=a|0;b=b|0;c=c|0;return oC(a,b,c)|0}function KT(a,b){a=a|0;b=b|0;nT(a+128+(b<<2)|0);return}function LT(a,b){a=a|0;b=+b;iS(c[a+100>>2]|0,b);return 0}function MT(a){a=a|0;return (a>>>0>355?0:94176+(a*152|0)|0)|0}function NT(a,b){a=a|0;b=b|0;return Ce(a,b)|0}function OT(a){a=a|0;return c[((a|0)==0?1136360:a+20|0)>>2]|0}function PT(a){a=a|0;return (c[a+20>>2]|0)-(c[a+16>>2]|0)|0}function QT(a){a=+a;var b=0;b=JV(32)|0;a=+gE(a);return ~~a|0}function RT(a,b){a=a|0;b=b|0;return Fe(a,b,1)|0}function ST(a){a=a|0;return c[((a|0)==0?1136344:a+56|0)>>2]|0}function TT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;K(9);return 0}function UT(a,b){a=a|0;b=b|0;b=32-b|0;return a<<b>>>b|0}function VT(a){a=a|0;zM((c[a+60>>2]|0)+512|0);return 0}function WT(a){a=a|0;return (a?31-(J(a^a-1)|0)|0:32)|0}function XT(a){a=+a;return a-+t(a)!=.5?+gU(a):+gU(a/2.0)*2.0}function YT(a,b){a=a|0;b=b|0;nT(a+(b<<2)|0);return}function ZT(a,b){a=a|0;b=b|0;return Wb[a&31](b|0)|0}function _T(a,b){a=a|0;b=b|0;return Tp(a,b,0)|0}function $T(a){a=a|0;return c[(c[a>>2]|0)+8>>2]|0}function aU(a){a=a|0;if(a|0){zM(a);FV(a)}return}function bU(a){a=a|0;return ((a+-97|0)>>>0<26?a^32:a)|0}function cU(a,b){a=a|0;b=b|0;Nb=a;Ob=b}function dU(a,b){a=a|0;b=b|0;return ((a|0)==0?b:a)|0}function eU(a){a=a|0;return qH(Ax(a)|0,a)|0}function fU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;K(19)}function gU(a){a=+a;return a>=0.0?+t(a+.5):+G(a-.5)}function hU(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function iU(a,b){a=a|0;b=+b;return +Rb[a&15](+b)}function jU(a){a=a|0;return (c[a+12800>>2]|0)!=0|0}function kU(a){a=a|0;return ((a+-65|0)>>>0<26?a^32:a)|0}function lU(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;K(17)}function mU(a,b){a=a|0;b=b|0;ec[a&31](b|0)}function nU(a,b){a=a|0;b=b|0;Fp(a,b)|0;return a|0}function oU(a){a=a|0;return c[a+900>>2]|0}function pU(a,b){a=a|0;b=b|0;FV(b);return}function qU(a,b){a=a|0;b=b|0;return zO(a,b)|0}function rU(a){a=a|0;zM(a+24|0);sT(a);return}function sU(a){a=a|0;Ue(a,0,0);return}function tU(a){a=a|0;return c[c[a>>2]>>2]|0}function uU(a,b,c){a=a|0;b=b|0;c=c|0;K(4);return 0.0}function vU(a,b){a=a|0;b=b|0;return +(+eu(a,b,1))}function wU(a){a=a|0;return (c[a+64>>2]|0)!=0|0}function xU(a,b,c){a=a|0;b=b|0;c=c|0;K(8);return 0}function yU(a){a=a|0;return (a&255)<<8|a>>8&255|0}function zU(a,b){a=a|0;b=b|0;c[a+8>>2]=b;return 0}function AU(a,b){a=a|0;b=b|0;c[a+4>>2]=b;return 0}function BU(a){a=a|0;c[a>>2]=2147483647;return}function CU(a){a=a|0;AM(a+134036|0);return}function DU(a,b,c){a=a|0;b=b|0;c=c|0;return}function EU(a){a=a|0;zM(c[a>>2]|0);return}function FU(){N(1136572);return}function GU(a){a=a|0;return eJ(a,24)|0}function HU(a,b,c){a=a|0;b=+b;c=+c;K(2);return 0.0}function IU(a,b){a=a|0;b=b|0;c[a>>2]=b;return 0}function JU(a){a=a|0;return tv(a,1)|0}function KU(a){a=a|0;return tv(a,0)|0}function LU(a,b){a=+a;b=+b;return +(+fE(a,b))}function MU(a,b){a=+a;b=b|0;return +(+mu(a,b))}function NU(a,b,c){a=a|0;b=b|0;c=c|0;K(18)}function OU(a){a=a|0;zM(a);return}function PU(){zs(835552,25,255);return}function QU(){zs(819168,24,213);return}function RU(a,b){a=a|0;b=b|0;return 0}function SU(a){a=a|0;return c[a+8>>2]|0}function TU(a){a=a|0;WO(a);return}function UU(a){a=a|0;return (a+-48|0)>>>0<10|0}function VU(){qP(1136328,15)|0;return}function WU(a){a=a|0;c[40512]=a;return}function XU(a,b){a=+a;b=+b;return +(+jf(a,b))}function YU(a){a=a|0;yO(a,1);return}function ZU(a,b){a=a|0;b=b|0;K(3);return 0.0}function _U(a,b){a=a|0;b=b|0;K(7);return 0}function $U(){Iw(17);return}function aV(a,b){a=a|0;b=+b;K(1);return 0.0}function bV(a){a=a|0;Yu(a);return}function cV(){Iw(16);return}function dV(){Iw(15);return}function eV(){Iw(14);return}function fV(a){a=a|0;dc[a&31]()}function gV(a){a=a|0;return tL(a)|0}function hV(){Iw(13);return}function iV(){Iw(12);return}function jV(){Iw(11);return}function kV(){Iw(10);return}function lV(){Iw(9);return}function mV(){Iw(8);return}function nV(){Iw(7);return}function oV(a){a=a|0;return 214332}function pV(){Iw(6);return}function qV(){Iw(5);return}function rV(){Iw(4);return}function sV(){return Ax(4096)|0}function tV(a,b){a=a|0;b=b|0;K(16)}function uV(a){a=+a;return ~~+XT(+a)|0}function vV(a){a=+a;return +Ea(+a)}function wV(a){a=+a;return +ea(+a)}function xV(a){a=+a;return +da(+a)}function yV(a){a=+a;return +ca(+a)}function zV(){return VV()|0}function AV(a){a=+a;return +Eb(+a)}function BV(a){a=+a;return +Cb(+a)}function CV(a){a=+a;return +ub(+a)}function DV(a){a=+a;return +Da(+a)}function EV(a){a=+a;return +ga(+a)}function FV(a){a=a|0;qd(a);return}function GV(a){a=a|0;Nb=a}function HV(a){a=a|0;qd(a);return 0}function IV(a){a=a|0;K(5);return 0}function JV(a){a=a|0;return 0}function KV(a){a=+a;K(0);return 0.0}function LV(a){a=a|0;return a|0}function MV(a){a=a|0;return}function NV(a){a=a|0;return 1}function OV(){return 162856}function PV(){return 1136548}function QV(){return Nb|0}function RV(a){a=a|0;K(15)}function SV(){return 1136568}function TV(){return 1136564}function UV(){return 1136572}function VV(){return 162220}function WV(){return 1136556}function XV(){return 162675}function YV(){K(14)}
|
|
|
|
// EMSCRIPTEN_END_FUNCS
|
|
var Rb=[KV,Av,Hv,qu,BV,EV,AV,wV,xV,yV,DV,CV,vV,lS,KV,KV];var Sb=[aV];var Tb=[HU];var Ub=[ZU,Nx];var Vb=[uU,cJ];var Wb=[IV,tN,QI,pk,Fs,tU,Tu,wS,gO,uy,FP,Hs,Vm,VT,DS,vh,tu,MD,oV,go,EM,JV,cP,Nj,SM,CP,hh,DM,cI,Dv,pN,Qt];var Xb=[nS,Tc];var Yb=[_U,sd,BL,KO,rJ,Dl,kN,JI,cq,dd,xT,_U,_U,_U,_U,_U];var Zb=[xU,kp,pt,rp,fm,aJ,Ew,KQ,JQ,Fu,JT,xU,xU,xU,xU,xU];var _b=[TT,cg,Ro,jd,$c,sn,yv,ES];var $b=[hT,IF,ft,Ip,pj,ih,Lg,Gf,Wo,Sm,$l,mk,Bx,Cf,yx,Xf,wy,mE,xy,Rw,Mk,bq,Su,by,uq,vA,xi,Zz,Kl,$v,bw,tr,wr,nw,qw,Lr,Or,fo,ho,ig,qj,rN,tj,Oj,Fg,bh,Hk,rl,Gk,ql,hT,hT,hT,hT,hT,hT,hT,hT,hT,hT,hT,hT,hT,hT];var ac=[PR,Ne,Zf,ce,ri,fD,Qj,kv];var bc=[CM,ye];var cc=[kQ,md];var dc=[YV,rV,qV,pV,nV,mV,lV,kV,jV,iV,hV,eV,dV,cV,$U,NJ,zi,bi,YV,YV,YV,YV,YV,YV,YV,YV,YV,YV,YV,YV,YV,YV];var ec=[RV,lQ,Uv,EU,cw,Tr,Yj,vT,mT,lT,fT,US,KS,FS,AS,tS,jS,gS,QR,pR,ZQ,QQ,Ks,vy,WI,IQ,_G,kJ,pu,RV,RV,RV];var fc=[tV,Ou,to,Ou,to,Ou,to,Ou,to,ou,Vn,Iu,vg,ug,Eg,pm,Xk,Xv,Vv,zx,wx,Yi,Uh,Qp,Jm,op,Bp,pS,rS,SO,yP,ch,CQ,ts,cS,eS,PO,wP,fs,Ix,Ry,bE,$D,aE,RQ,br,Oq,_u,qT,rT,vk,Ow,_x,GT,Ss,st,Nw,Xv,Vv,zx,wx,Vi,Sh,Jm,op,Bp,pS,rS,NO,tP,ch,CQ,ts,cS,eS,HO,pP,_D,YD,ZD,GQ,br,Oq,_u,Mw,Kw,CT,Ss,st,Lw,Xv,Vv,zx,wx,Ui,Rh,Jm,op,Bp,pS,rS,MO,sP,ch,CQ,ts,cS,eS,GO,oP,VD,RD,TD,FQ,br,Oq,_u,Aw,ww,BT,Ss,st,yw,Xv,Vv,zx,wx,Ti,Ph,Jm,op,Bp,pS,rS,LO,rP,ch,CQ,ts,cS,eS,FO,nP,UD,QD,SD,EQ,br,Oq,_u,zw,vw,AT,Ss,st,xw,pH,bH,nI,jI,Mj,Bi,Ap,as,Gs,qS,sS,TO,zP,Pj,DQ,ov,dS,fS,QO,xP,GL,oL,pL,SQ,Uu,Jx,LD,RI,KI,wT,ax,Ux,LI,Sx,tI,cl,Fq,TQ,pU,JG,Ek,Pi,vO,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV,tV];var gc=[lU,_I,hM,$I,iM,lU,lU,lU];var hc=[NU,St,Du,fq,Wp,Xj,af,Yw,Fw,Hl,Wj,_e,Vw,Dw,Hl,Vj,Ze,Uw,Cw,Hl,Tj,Ye,Pw,tw,Hl,qk,cf,Dx,Cx,pl,zr,Nq,qn,wm,Rl,Ql,tn,Rm,Fo,vu,Mu,zu,gz,ez,qx,Kr,fz,Ak,SJ,wk,xm,_l,FK,Ws,Pu,Zo,vr,zr,qn,wm,Rl,Ql,Rm,Fo,vu,Mu,dz,bz,qx,Kr,cz,Ws,Pu,Zo,vr,zr,qn,wm,Rl,Ql,Rm,Fo,vu,Mu,Gy,Cy,qx,Kr,Ey,Ws,Pu,Zo,vr,zr,qn,wm,Rl,Ql,Rm,Fo,vu,Mu,Fy,By,qx,Kr,Dy,Ws,Pu,Zo,vr,Bw,vo,Hn,cn,gn,co,Cp,TC,hE,iN,cN,_M,Xx,dN,Jt,sv,cp,ar,$u,lt,SS,bM,CR,gL,BF,yC,aH,ZB,iK,gA,fO,Fz,IG,cB,TF,CA,MS,ZL,TR,cL,kF,uC,$G,TB,gK,Tz,XN,yz,mG,UA,RF,wA,$S,uM,VR,KL,GG,rD,XH,gD,QK,UB,qO,mB,BH,NC,gH,pC,bT,wM,XR,ML,RG,wD,bI,pD,SK,iC,sO,DB,MH,YC,oH,CC,WS,eM,NR,iL,HF,AC,eH,bC,mK,iA,kO,Jz,NG,lB,XF,IA,PS,$L,ZR,dL,mF,zC,dH,$B,kK,bA,ZN,Dz,sG,dB,VF,EA,dT,yM,$R,PL,MG,tD,_H,jD,TK,aC,tO,sB,DH,SC,jH,rC,RS,aM,BR,fL,rF,jC,XG,EB,hK,Xz,YN,zz,AG,QA,MF,kA,LS,FL,SR,KK,PE,zB,eG,SA,dK,iz,VN,Zy,LF,jA,$E,Nz,_S,tM,UR,JL,nG,oD,WH,ZC,LK,KB,nO,YA,uH,BC,fH,cC,aT,vM,WR,LL,HG,sD,aI,hD,RK,YB,rO,qB,CH,OC,nH,qC,VS,dM,MR,hL,xF,nC,ZG,IB,lK,fA,_N,Ez,FG,RA,QF,oA,OS,HL,YR,MK,UE,FB,iG,TA,fK,nz,WN,_y,PF,nA,fF,Oz,cT,xM,_R,OL,tG,qD,ZH,_C,NK,PB,pO,hB,yH,FC,iH,eC,RS,SL,eR,XK,cF,NB,zG,bB,_J,Iz,QN,lz,hG,rA,qF,Wz,LS,nL,uR,rK,GE,XA,SF,zA,RJ,$y,KN,Oy,AF,Sz,WE,xz,_S,lM,xR,wL,$F,bD,HH,MC,uK,pB,cO,LA,mH,hC,QG,CB,aT,oM,AR,zL,qG,mD,LH,XC,EK,xB,lO,PA,xH,xC,WG,XB,VS,WL,lR,$K,iF,SB,EG,kB,bK,Mz,UN,qz,lG,uA,wF,eA,OS,sL,IR,xK,KE,gB,WF,HA,WJ,az,NN,Py,GF,aA,XE,Cz,cT,sM,LR,EL,dG,eD,KH,RC,AK,vB,jO,OA,tH,mC,VG,OB,RS,RL,dR,WK,bF,MB,yG,aB,ZJ,Hz,PN,kz,gG,qA,pF,Vz,LS,mL,tR,qK,FE,WA,KF,yA,QJ,Wy,JN,Iy,zF,Rz,OE,wz,_S,kM,wR,vL,_F,aD,GH,LC,tK,oB,bO,KA,lH,gC,PG,BB,aT,nM,zR,yL,pG,lD,AH,WC,DK,_A,eO,BA,wH,wC,wG,WB,VS,VL,kR,_K,hF,RB,DG,jB,aK,Lz,TN,pz,kG,tA,vF,dA,OS,rL,HR,wK,JE,fB,OF,GA,VJ,Yy,MN,Ly,FF,$z,TE,Bz,cT,rM,KR,DL,cG,dD,JH,QC,zK,uB,iO,NA,sH,lC,UG,HB,RS,QL,cR,VK,aF,LB,xG,$A,YJ,Gz,ON,jz,fG,pA,oF,Uz,LS,lL,sR,pK,EE,VA,JF,xA,PJ,Vy,IN,Hy,yF,Qz,NE,vz,_S,jM,vR,uL,ZF,$C,FH,KC,sK,nB,aO,JA,kH,fC,OG,AB,aT,mM,yR,xL,oG,kD,zH,VC,CK,ZA,dO,AA,vH,vC,vG,VB,VS,UL,jR,ZK,gF,QB,CG,iB,$J,Kz,SN,oz,jG,sA,uF,cA,OS,qL,GR,vK,IE,eB,NF,FA,UJ,Xy,LN,Ky,EF,_z,SE,Az,cT,qM,JR,CL,bG,cD,IH,PC,yK,tB,hO,MA,rH,kC,TG,GB,OD,DU,lF,Tx,wl,ai,BE,aS,iR,hR,gR,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU,NU];var ic=[fU,di,kj,ej,Xq,es,Yr,Sr,es,ci,hj,dj,Wq,ds,Xr,Rr,ds,gi,mj,jj,Vq,cs,Wr,Qr,cs,fi,lj,ij,Uq,bs,Vr,Pr,bs,Ei,uj,sj,Mr,Qs,Os,Ms,Qs,xk,Lx,Bg,Dq,$k,yg,Eh,Yd,Sd,Od,Qd,ae,Oe,an,gm,ME,uJ,Vx,mJ,Px,$k,yg,Eh,Yd,Sd,Od,Qd,ae,Oe,an,gm,HE,uJ,Vx,mJ,Px,$k,yg,Eh,Yd,Sd,Od,Qd,ae,Oe,an,gm,tE,uJ,Vx,mJ,Px,$k,yg,Eh,Yd,Sd,Od,Qd,ae,Oe,an,gm,sE,uJ,Vx,mJ,Px,Cm,nk,Ni,re,ne,ge,me,we,pf,So,po,_L,vJ,Wx,nJ,Qx,pJ,gJ,pJ,gJ,pJ,gJ,pJ,gJ,qJ,hJ,Lj,hg,ck,zD,oy,ny,MJ,yI,Si,ao,xl,Zm,Ok,Pp,Rn,Op,On,yh,Vf,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU,fU];var jc=[YQ,cr];var kc=[zT,Pt,ys,gs,Cr,Dr,En,Cs,Dt,Ys,_r,$r,$n,Bs,Xs,cu,Ar,Br,oq,Jo,dp,Mi,cu,Kt,Sn,Mo,gp,Oi,Lt,Mt,Wn,wo,Oo,Ct,Ho,Io,_o,du,au,ht,pn,rw,Nh,ni,ki,sm,Om,Lm,hn,Om,$t,Wt,et,mn,mw,Lh,mi,ii,qm,Km,Fm,dn,Km,_t,Vt,dt,ln,lw,Kh,li,hi,om,Hm,Em,bn,Hm,Zt,Ut,ct,kn,kw,Jh,ji,ei,jm,Dm,Bm,$m,Dm,It,Gt,bt,fn,jw,_h,Ci,Ai,en,yn,vn,Pn,yn,ke,Yk,Xh,bj,Xh,bj,Xh,bj,Xh,bj,ui,oj,aq,fw,Uy,Dp,ep,Rk,jv,lI,DF,rB,VI,UI,Wv,zT];var lc=[HS,Tg,Zl,Bq,Wu,Qg,Vl,zq,Ru,Pg,Ul,yq,Qu,Jg,Il,xq,Lu,mh,Gm,jr,Bv,Ed,Id,rf,Df,pi,Ji,yl,am,od,rd,Ke,Qe,lh,Bh,Kk,ll,Tt,ut,Rt,tt,mr,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS,HS];var mc=[$P,zl];var nc=[PQ,rx,Yv,yB,wB,Eq,uD,BD,BD,vD,PQ,PQ,PQ,PQ,PQ,PQ];var oc=[TP,mf,fj,uo,qs,lf,_i,ro,ns,kf,Zi,qo,ms,ef,Wi,no,hs,vf,Ij,Qo,Rs,TP,TP,TP,TP,TP,TP,TP,TP,TP,TP,TP];var pc=[vP,Kj];var qc=[ZO,Wh,Mh,ZO];return{___divdi3:Eu,___em_js__get_do_str:OV,___emscripten_environ_constructor:FU,___errno_location:PV,___muldi3:oK,___remdi3:Js,___udivdi3:uS,___uremdi3:LJ,__get_daylight:TV,__get_environ:UV,__get_timezone:SV,__get_tzname:WV,_bc:BJ,_bd:HV,_be:Sg,_bi:rk,_bitshift64Ashr:YM,_bitshift64Lshr:GN,_bitshift64Shl:uN,_emscripten_replace_memory:Qb,_free:qd,_i64Add:kP,_i64Subtract:iP,_llvm_bswap_i16:yU,_llvm_bswap_i32:IS,_llvm_rint_f64:XT,_llvm_round_f64:gU,_main:oO,_malloc:xc,_memalign:hP,_memcpy:Bk,_memmove:eF,_memset:jq,_nb:AU,_nc:Vo,_nd:YG,_ne:LT,_ng:XV,_ni:Ig,_nk:zU,_nm:IU,_np:Up,_nr:pw,_ns:hp,_nv:Aj,_pthread_cond_broadcast:JV,_rintf:XT,_sbrk:Pz,dynCall_dd:iU,dynCall_did:pT,dynCall_didd:OR,dynCall_dii:ZS,dynCall_diii:uQ,dynCall_ii:ZT,dynCall_iidiiii:AN,dynCall_iii:JS,dynCall_iiii:oQ,dynCall_iiiii:uP,dynCall_iiiiii:EO,dynCall_iiiiiii:oN,dynCall_iiiiiiidiiddii:tC,dynCall_iiiiiiii:FM,dynCall_v:fV,dynCall_vi:mU,dynCall_vii:oT,dynCall_viidi:QP,dynCall_viii:OQ,dynCall_viiii:HP,dynCall_viiiidii:$M,dynCall_viiiii:$O,dynCall_viiiiii:FN,dynCall_viiiiiidi:YL,dynCall_viiiiiii:NM,dynCall_viiiiiiii:eL,dynCall_viiiiiiiii:dJ,dynCall_viiiiiiiiii:sI,establishStackSpace:cU,stackAlloc:bR,stackRestore:GV,stackSave:QV}})
|
|
|
|
|
|
// EMSCRIPTEN_END_ASM
|
|
(asmGlobalArg,asmLibraryArg,buffer);var ___divdi3=Module["___divdi3"]=asm["___divdi3"];var ___em_js__get_do_str=Module["___em_js__get_do_str"]=asm["___em_js__get_do_str"];var ___emscripten_environ_constructor=Module["___emscripten_environ_constructor"]=asm["___emscripten_environ_constructor"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___remdi3=Module["___remdi3"]=asm["___remdi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var __get_daylight=Module["__get_daylight"]=asm["__get_daylight"];var __get_environ=Module["__get_environ"]=asm["__get_environ"];var __get_timezone=Module["__get_timezone"]=asm["__get_timezone"];var __get_tzname=Module["__get_tzname"]=asm["__get_tzname"];var _bc=Module["_bc"]=asm["_bc"];var _bd=Module["_bd"]=asm["_bd"];var _be=Module["_be"]=asm["_be"];var _bi=Module["_bi"]=asm["_bi"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i16=Module["_llvm_bswap_i16"]=asm["_llvm_bswap_i16"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _llvm_rint_f64=Module["_llvm_rint_f64"]=asm["_llvm_rint_f64"];var _llvm_round_f64=Module["_llvm_round_f64"]=asm["_llvm_round_f64"];var _main=Module["_main"]=asm["_main"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memalign=Module["_memalign"]=asm["_memalign"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _nb=Module["_nb"]=asm["_nb"];var _nc=Module["_nc"]=asm["_nc"];var _nd=Module["_nd"]=asm["_nd"];var _ne=Module["_ne"]=asm["_ne"];var _ng=Module["_ng"]=asm["_ng"];var _ni=Module["_ni"]=asm["_ni"];var _nk=Module["_nk"]=asm["_nk"];var _nm=Module["_nm"]=asm["_nm"];var _np=Module["_np"]=asm["_np"];var _nr=Module["_nr"]=asm["_nr"];var _ns=Module["_ns"]=asm["_ns"];var _nv=Module["_nv"]=asm["_nv"];var _pthread_cond_broadcast=Module["_pthread_cond_broadcast"]=asm["_pthread_cond_broadcast"];var _rintf=Module["_rintf"]=asm["_rintf"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_dd=Module["dynCall_dd"]=asm["dynCall_dd"];var dynCall_did=Module["dynCall_did"]=asm["dynCall_did"];var dynCall_didd=Module["dynCall_didd"]=asm["dynCall_didd"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iidiiii=Module["dynCall_iidiiii"]=asm["dynCall_iidiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiidiiddii=Module["dynCall_iiiiiiidiiddii"]=asm["dynCall_iiiiiiidiiddii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiidii=Module["dynCall_viiiidii"]=asm["dynCall_viiiidii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){memoryInitializer=locateFile(memoryInitializer)}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=readBinary(memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")};var doBrowserLoad=function(){readAsync(memoryInitializer,applyMemoryInitializer,function(){throw"could not load memory initializer "+memoryInitializer})};var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){var useRequest=function(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)};if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i<argc;i++){HEAP32[(argv>>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=Module["_main"](argc,argv);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){noExitRuntime=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);quit_(1,e)}}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&noExitRuntime&&status===0){return}if(noExitRuntime){}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}quit_(status,new ExitStatus(status))}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;noExitRuntime=true;run();"use strict";var _createClass=function(){function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}}();function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var libnp={nc:cwrap("nc","number",["number"]),nd:cwrap("nd","number"),ns:cwrap("ns","number",["number","string","string"]),np:cwrap("np","number",["number"]),ni:cwrap("ni","number",["number","array","number"]),ng:cwrap("ng","string"),nv:cwrap("nv","number",["number","string","number"]),nm:cwrap("nm","number",["number","number"]),nb:cwrap("nb","number",["number","number"]),nk:cwrap("nk","number",["number","number"]),ne:cwrap("ne","number",["number","number"]),nr:cwrap("nr","number",["number","number","number"])},libnb={bc:cwrap("bc","number",["number"]),bd:cwrap("bd","number",["number"]),be:cwrap("be","number",["number","number","number"]),bi:cwrap("bi","number",["number","array","number"])},A_G711A=0,NodePlayer=function(){function e(){_classCallCheck(this,e);var n=_possibleConstructorReturn(this,(e.__proto__||Object.getPrototypeOf(e)).call(this));return n.isMobile=/(iPhone | iPad | iPod | iOS | Android)/i.test(navigator.userAgent)?1:0,n.ctx=libnp.nc(n.isMobile),n.version=libnp.ng(),n.isStart=!1,n.isMSE=!1,n.hasAudio=!0,n.volume=1,n.loader=new flvjs.WebLoader,n.loader.on("data",function(e){var t=new Uint8Array(e);0<libnp.ni(n.ctx,t,t.length)&&n.stop()}),n.loader.on("start",function(){n.emit("start")}),n.loader.on("close",function(){n.stop()}),n.loader.on("error",function(e){n.emit("error",e),n.stop()}),NP[n.ctx].emit=n.emit.bind(n),n}return _inherits(e,flvjs.EventEmitter),_createClass(e,[{key:"setView",value:function(e){if(!this.isMSE)return this.ve=document.getElementById(e),libnp.nv(this.ctx,e,window.devicePixelRatio||1,screen.width/document.documentElement.clientWidth*window.devicePixelRatio||1);var t=document.getElementById(e),n=document.createElement("video"),r=t.parentNode;n.id=e,300!=t.width&&150!=t.height&&(n.width=t.width,n.height=t.height),n.style.cssText=t.style.cssText,r.replaceChild(n,t),this.ve=n}},{key:"resizeView",value:function(e,t){this.isMSE||libnp.nr(this.ctx,e,t)}},{key:"setScaleMode",value:function(e){return libnp.nm(this.ctx,e)}},{key:"setBufferTime",value:function(e){return libnp.nb(this.ctx,e)}},{key:"skipLoopFilter",value:function(e){return libnp.nk(this.ctx,e)}},{key:"setVolume",value:function(e){this.volume=e,this.isMSE?this.flvPlayer&&(this.flvPlayer.volume=e):libnp.ne(this.ctx,e)}},{key:"enableAudio",value:function(e){this.hasAudio=e,this.setVolume(this.hasAudio?1:0)}},{key:"launchIntoFullscreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():e.msRequestFullscreen&&e.msRequestFullscreen()}},{key:"fullscreen",value:function(){this.launchIntoFullscreen(this.ve)}},{key:"start",value:function(e){var t=this;if(this.isMSE){if(this.flvPlayer)return;var n={type:"flv",url:e};this.hasAudio||(n.hasAudio=!1),this.flvPlayer=flvjs.createPlayer(n),this.flvPlayer.attachMediaElement(this.ve),this.flvPlayer.on(flvjs.Events.ERROR,function(e){t.emit("error",e),t.stop()}),this.flvPlayer.on(flvjs.Events.LOADING_COMPLETE,function(){t.stop()}),this.flvPlayer.on(flvjs.Events.MEDIA_INFO,function(){t.isStart||(t.isStart=!0,t.emit("start"))}),this.flvPlayer.load(),this.flvPlayer.play()}else{if("string"!=typeof e)return void NP_ERROR("url invalid parameter");if(this.isStart)return void NP_DEBUG("The instance has started, ignore it");this.url=e,NP_LOG("call start play url:",this.url),0==libnp.ns(this.ctx,e)&&(this.setVolume(this.volume),this.enableAudio(this.hasAudio),this.loader.start(e),this.isStart=!0)}}},{key:"stop",value:function(){if(this.isMSE)this.flvPlayer&&(this.flvPlayer.detachMediaElement(),this.flvPlayer.unload(),this.flvPlayer.destroy(),this.flvPlayer=null,this.emit("stop"),this.isStart=!1);else{if(!this.isStart)return void NP_DEBUG("The instance has not started yet, ignore it");NP_LOG("call stop play url:",this.url),this.isStart=!1,this.loader.stop(),libnp.np(this.ctx),this.emit("stop")}}},{key:"useMSE",value:function(){this.isMSE=flvjs.isSupported(),NP_LOG("use MSE:",this.isMSE?"YES":"NO"),this.isMSE&&(this.flvPlayer=null,flvjs.LoggingControl.enableAll=!1,flvjs.LoggingControl.addLogListener(function(e,t){NP_LOG(e+t)}))}}],[{key:"debug",value:function(e){logType=e?LOG_TYPES.NP_TYPE_NORMAL:LOG_TYPES.NP_TYPE_NONE}}]),e}();"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=NodePlayer),exports.NodePlayer=NodePlayer):Module.NodePlayer=NodePlayer,"function"==typeof define&&define.amd&&define([],function(){return NodePlayer});var NodePublisher=function(){function e(){_classCallCheck(this,e);var t=_possibleConstructorReturn(this,(e.__proto__||Object.getPrototypeOf(e)).call(this));return navigator.mediaDevices?navigator.mediaDevices.getUserMedia({audio:!0}).then(function(e){t.stream=e,t.emit("open")}).catch(function(e){t.emit("error","The following gUM error occured: "+e)}):t.emit("error","getUserMedia not supported on your browser!"),t.ctx=libnb.bc(),t.isStart=!1,t}return _inherits(e,flvjs.EventEmitter),_createClass(e,[{key:"start",value:function(e){if(!this.isStart){var t=new WebSocket(e,"POST");t.binaryType="arraybuffer",t.onopen=function(){if(this.emit("start"),null!=this.stream){var e=new AudioContext,t=e.createMediaStreamSource(this.stream),n=(e.createScriptProcessor||e.createJavaScriptNode).apply(e,[1024,1,1]);libnb.be(this.ctx,A_G711A,e.sampleRate,1),t.connect(n),n.connect(e.destination),n.onaudioprocess=function(e){var t=new Uint8Array(e.inputBuffer.getChannelData(0).buffer);libnb.bi(this.ctx,t,4096)}.bind(this),this.source=t,this.recorder=n}this.isStart=!0}.bind(this),t.onclose=function(){this.stop()}.bind(this),t.onerror=function(e){this.emit("error",e),this.stop()}.bind(this),this.ws=t,NB[this.ctx].ws=t}}},{key:"stop",value:function(){this.ws&&this.ws.close(),this.isStart&&(this.isStart=!1,null!=this.stream&&(this.source.disconnect(),this.recorder.disconnect()),this.emit("stop"))}}]),e}();"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=NodePublisher),exports.NodePublisher=NodePublisher):Module.NodePublisher=NodePublisher,"function"==typeof define&&define.amd&&define([],function(){return NodePublisher});
|
|
|