cesium
Version:
CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin.
25 lines • 753 kB
JavaScript
/**
* Cesium - https://github.com/AnalyticalGraphicsInc/cesium
*
* Copyright 2011-2017 Cesium Contributors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* Columbus View (Pat. Pend.)
*
* Portions licensed separately.
* See https://github.com/AnalyticalGraphicsInc/cesium/blob/master/LICENSE.md for full licensing details.
*/
var DracoDecoderModule=function(e){function r(e){if("string"!=typeof e)return!1;const r=e.split(".");return!(r.length<2||r.length>3)&&(1==r[0]&&r[1]>=0&&r[1]<=3||!(0!=r[0]||r[1]>10))}function i(e){n(!kr);var r=dr;return dr=dr+e+15&-16,r}function t(e){n(mr);var r=cr[mr>>2],i=r+e+15&-16;if(cr[mr>>2]=i,i>=Fr){if(!p())return cr[mr>>2]=r,0}return r}function A(e,r){return r||(r=wr),e=Math.ceil(e/r)*r}function f(e){switch(e){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("*"===e[e.length-1])return 4;if("i"===e[0]){var r=parseInt(e.substr(1));return n(r%8==0),r/8}return 0}}function n(e,r){e||pe("Assertion failed: "+r)}function o(e,r,i,t){switch(i=i||"i8","*"===i.charAt(i.length-1)&&(i="i32"),i){case"i1":case"i8":nr[e>>0]=r;break;case"i16":ar[e>>1]=r;break;case"i32":cr[e>>2]=r;break;case"i64":tempI64=[r>>>0,(tempDouble=r,+Qr(tempDouble)>=1?tempDouble>0?(0|Sr(+Cr(tempDouble/4294967296),4294967295))>>>0:~~+jr((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],cr[e>>2]=tempI64[0],cr[e+4>>2]=tempI64[1];break;case"float":lr[e>>2]=r;break;case"double":_r[e>>3]=r;break;default:pe("invalid type for setValue: "+i)}}function a(e,r){if(0===r||!e)return"";for(var i,t=0,A=0;;){if(i=or[e+A>>0],t|=i,0==i&&!r)break;if(A++,r&&A==r)break}r||(r=A);var f="";if(t<128){for(var n;r>0;)n=String.fromCharCode.apply(String,or.subarray(e,e+Math.min(r,1024))),f=f?f+n:n,e+=1024,r-=1024;return f}return c(e)}function u(e,r){for(var i=r;e[i];)++i;if(i-r>16&&e.subarray&&Wr)return Wr.decode(e.subarray(r,i));for(var t,A,f,n,o,a,u="";;){if(!(t=e[r++]))return u;if(128&t)if(A=63&e[r++],192!=(224&t))if(f=63&e[r++],224==(240&t)?t=(15&t)<<12|A<<6|f:(n=63&e[r++],240==(248&t)?t=(7&t)<<18|A<<12|f<<6|n:(o=63&e[r++],248==(252&t)?t=(3&t)<<24|A<<18|f<<12|n<<6|o:(a=63&e[r++],t=(1&t)<<30|A<<24|f<<18|n<<12|o<<6|a))),t<65536)u+=String.fromCharCode(t);else{var c=t-65536;u+=String.fromCharCode(55296|c>>10,56320|1023&c)}else u+=String.fromCharCode((31&t)<<6|A);else u+=String.fromCharCode(t)}}function c(e){return u(or,e)}function b(e,r,i,t){if(!(t>0))return 0;for(var A=i,f=i+t-1,n=0;n<e.length;++n){var o=e.charCodeAt(n);if(o>=55296&&o<=57343&&(o=65536+((1023&o)<<10)|1023&e.charCodeAt(++n)),o<=127){if(i>=f)break;r[i++]=o}else if(o<=2047){if(i+1>=f)break;r[i++]=192|o>>6,r[i++]=128|63&o}else if(o<=65535){if(i+2>=f)break;r[i++]=224|o>>12,r[i++]=128|o>>6&63,r[i++]=128|63&o}else if(o<=2097151){if(i+3>=f)break;r[i++]=240|o>>18,r[i++]=128|o>>12&63,r[i++]=128|o>>6&63,r[i++]=128|63&o}else if(o<=67108863){if(i+4>=f)break;r[i++]=248|o>>24,r[i++]=128|o>>18&63,r[i++]=128|o>>12&63,r[i++]=128|o>>6&63,r[i++]=128|63&o}else{if(i+5>=f)break;r[i++]=252|o>>30,r[i++]=128|o>>24&63,r[i++]=128|o>>18&63,r[i++]=128|o>>12&63,r[i++]=128|o>>6&63,r[i++]=128|63&o}}return r[i]=0,i-A}function l(e){for(var r=0,i=0;i<e.length;++i){var t=e.charCodeAt(i);t>=55296&&t<=57343&&(t=65536+((1023&t)<<10)|1023&e.charCodeAt(++i)),t<=127?++r:r+=t<=2047?2:t<=65535?3:t<=2097151?4:t<=67108863?5:6}return r}function _(e,r){return e%r>0&&(e+=r-e%r),e}function s(e){Pe.buffer=fr=e}function d(){Pe.HEAP8=nr=new Int8Array(fr),Pe.HEAP16=ar=new Int16Array(fr),Pe.HEAP32=cr=new Int32Array(fr),Pe.HEAPU8=or=new Uint8Array(fr),Pe.HEAPU16=ur=new Uint16Array(fr),Pe.HEAPU32=br=new Uint32Array(fr),Pe.HEAPF32=lr=new Float32Array(fr),Pe.HEAPF64=_r=new Float64Array(fr)}function k(){pe("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+Fr+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function p(){var e=Pe.usingWasm?Gr:Zr,r=2147483648-e;if(cr[mr>>2]>r)return!1;var i=Fr;for(Fr=Math.max(Fr,Tr);Fr<cr[mr>>2];)Fr=Fr<=536870912?_(2*Fr,e):Math.min(_((3*Fr+2147483648)/4,e),r);var t=Pe.reallocBuffer(Fr);return t&&t.byteLength==Fr?(s(t),d(),!0):(Fr=i,!1)}function h(){return Fr}function v(e){for(;e.length>0;){var r=e.shift();if("function"!=typeof r){var i=r.func;"number"==typeof i?void 0===r.arg?Pe.dynCall_v(i):Pe.dynCall_vi(i,r.arg):i(void 0===r.arg?null:r.arg)}else r()}}function y(){if(Pe.preRun)for("function"==typeof Pe.preRun&&(Pe.preRun=[Pe.preRun]);Pe.preRun.length;)N(Pe.preRun.shift());v(Br)}function m(){Jr||(Jr=!0,v(Yr))}function w(){v(Dr)}function R(){v(gr),Or=!0}function E(){if(Pe.postRun)for("function"==typeof Pe.postRun&&(Pe.postRun=[Pe.postRun]);Pe.postRun.length;)W(Pe.postRun.shift());v(Mr)}function N(e){Br.unshift(e)}function V(e){Dr.unshift(e)}function W(e){Mr.unshift(e)}function G(e){if(Xr--,Pe.monitorRunDependencies&&Pe.monitorRunDependencies(Xr),0==Xr&&(null!==zr&&(clearInterval(zr),zr=null),Hr)){var r=Hr;Hr=null,r()}}function Z(e){return String.prototype.startsWith?e.startsWith(xr):0===e.indexOf(xr)}function T(e){return WA(e)}function U(){return!!U.uncaught_exception}function I(e){var r=Kr.infos[e];return r&&!r.caught&&(r.caught=!0,U.uncaught_exception--),r&&(r.rethrown=!1),Kr.caught.push(e),Kr.addRef(Kr.deAdjust(e)),e}function F(){throw Rr=!0,"Pure virtual function called!"}function B(e){throw Kr.last||(Kr.last=e),e+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function Y(){var e=Kr.last;if(!e)return 0|(GA(0),0);var r=Kr.infos[e],i=r.type;if(!i)return 0|(GA(0),e);var t=Array.prototype.slice.call(arguments);Pe.___cxa_is_pointer_type(i);Y.buffer||(Y.buffer=WA(4)),cr[Y.buffer>>2]=e,e=Y.buffer;for(var A=0;A<t.length;A++)if(t[A]&&Pe.___cxa_can_catch(t[A],i,e))return e=cr[e>>2],r.adjusted=e,0|(GA(t[A]),e);return e=cr[e>>2],0|(GA(i),e)}function D(e,r,i){throw Kr.infos[e]={ptr:e,adjusted:e,type:r,destructor:i,refcount:0,caught:!1,rethrown:!1},Kr.last=e,"uncaught_exception"in U?U.uncaught_exception++:U.uncaught_exception=1,e+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function g(){}function M(e,r){$r.varargs=r;try{var i=$r.getStreamFromFD(),t=($r.get(),$r.get()),A=$r.get(),f=$r.get(),n=t;return FS.llseek(i,n,f),cr[A>>2]=i.position,i.getdents&&0===n&&0===f&&(i.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||pe(e),-e.errno}}function J(){var e=Pe._fflush;e&&e(0);var r=O.printChar;if(r){var i=O.buffers;i[1].length&&r(1,10),i[2].length&&r(2,10)}}function O(e,r){$r.varargs=r;try{var i=$r.get(),t=$r.get(),A=$r.get(),f=0;O.buffers||(O.buffers=[null,[],[]],O.printChar=function(e,r){var i=O.buffers[e];n(i),0===r||10===r?((1===e?Pe.print:Pe.printErr)(u(i,0)),i.length=0):i.push(r)});for(var o=0;o<A;o++){for(var a=cr[t+8*o>>2],c=cr[t+(8*o+4)>>2],b=0;b<c;b++)O.printChar(i,or[a+b]);f+=c}return f}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||pe(e),-e.errno}}function Q(e,r){$r.varargs=r;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||pe(e),-e.errno}}function j(e,r){$r.varargs=r;try{var i=$r.getStreamFromFD();return FS.close(i),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||pe(e),-e.errno}}function C(){Pe.abort()}function S(){pe("trap!")}function X(e,r,i){return or.set(or.subarray(r,r+i),e),e}function z(e){return ri[e]||0}function H(e,r){return 0==e?ti.EINVAL:(cr[e>>2]=ii,ri[ii]=0,ii++,0)}function P(e,r){P.seen||(P.seen={}),e in P.seen||(Pe.dynCall_v(r),P.seen[e]=1)}function x(e,r){return e in ri?(ri[e]=r,0):ti.EINVAL}function L(e){return Pe.___errno_location&&(cr[Pe.___errno_location()>>2]=e),e}function K(e,r,i){var t=i>0?i:l(e)+1,A=new Array(t),f=b(e,A,0,A.length);return r&&(A.length=f),A}function q(e){for(var r=[],i=0;i<e.length;i++){var t=e[i];t>255&&(Ai&&n(!1,"Character code "+t+" ("+String.fromCharCode(t)+") at offset "+i+" not in 0x00-0xFF."),t&=255),r.push(String.fromCharCode(t))}return r.join("")}function $(e){if("boolean"==typeof rr&&rr){var r;try{r=Buffer.from(e,"base64")}catch(i){r=new Buffer(e,"base64")}return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}try{for(var i=fi(e),t=new Uint8Array(i.length),A=0;A<i.length;++A)t[A]=i.charCodeAt(A);return t}catch(e){throw new Error("Converting base64 string to bytes failed.")}}function ee(e){if(Z(e))return $(e.slice(xr.length))}function re(e,r){try{return Pe.dynCall_ii(e,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function ie(e,r,i){try{return Pe.dynCall_iii(e,r,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function te(e,r,i,t){try{return Pe.dynCall_iiii(e,r,i,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function Ae(e,r,i,t,A,f,n){try{return Pe.dynCall_iiiiiii(e,r,i,t,A,f,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function fe(e){try{Pe.dynCall_v(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function ne(e,r){try{Pe.dynCall_vi(e,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function oe(e,r,i){try{Pe.dynCall_vii(e,r,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function ae(e,r,i,t){try{Pe.dynCall_viii(e,r,i,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function ue(e,r,i,t,A){try{Pe.dynCall_viiii(e,r,i,t,A)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function ce(e,r,i,t,A,f){try{Pe.dynCall_viiiii(e,r,i,t,A,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function be(e,r,i,t,A,f,n){try{Pe.dynCall_viiiiii(e,r,i,t,A,f,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Pe.setThrew(1,0)}}function le(){Pe.readAsync(Pr,UA,function(){throw"could not load memory initializer "+Pr})}function _e(){var e=Pe.memoryInitializerRequest,r=e.response;if(200!==e.status&&0!==e.status){var i=ee(Pe.memoryInitializerRequestURL);if(!i)return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+Pr),void le();r=i.buffer}UA(r)}function se(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function de(e){function r(){Pe.calledRun||(Pe.calledRun=!0,Rr||(m(),w(),Pe.onRuntimeInitialized&&Pe.onRuntimeInitialized(),E()))}e=e||Pe.arguments,Xr>0||(y(),Xr>0||Pe.calledRun||(Pe.setStatus?(Pe.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Pe.setStatus("")},1),r()},1)):r()))}function ke(e,r){r&&Pe.noExitRuntime&&0===e||(Pe.noExitRuntime||(Rr=!0,Er=e,hr=FA,R(),Pe.onExit&&Pe.onExit(e)),rr&&process.exit(e),Pe.quit(e,new se(e)))}function pe(e){throw Pe.onAbort&&Pe.onAbort(e),void 0!==e?(Pe.print(e),Pe.printErr(e),e=JSON.stringify(e)):e="",Rr=!0,Er=1,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}function he(){}function ve(e){return(e||he).__cache__}function ye(e,r){var i=ve(r),t=i[e];return t||(t=Object.create((r||he).prototype),t.ptr=e,i[e]=t)}function me(e,r){return ye(e.ptr,r)}function we(e){if(!e.__destroy__)throw"Error: Cannot destroy object. (Did you create it yourself?)";e.__destroy__(),delete ve(e.__class__)[e.ptr]}function Re(e,r){return e.ptr===r.ptr}function Ee(e){return e.ptr}function Ne(e){return e.__class__}function Ve(e){if("string"==typeof e){var r=K(e),i=BA.alloc(r,nr);return BA.copy(r,nr,i),i}return e}function We(e){if("object"==typeof e){var r=BA.alloc(e,nr);return BA.copy(e,nr,r),r}return e}function Ge(){throw"cannot construct a Status, no constructor in IDL"}function Ze(){this.ptr=ut(),ve(Ze)[this.ptr]=this}function Te(){this.ptr=qt(),ve(Te)[this.ptr]=this}function Ue(){this.ptr=pt(),ve(Ue)[this.ptr]=this}function Ie(){this.ptr=_t(),ve(Ie)[this.ptr]=this}function Fe(){this.ptr=oi(),ve(Fe)[this.ptr]=this}function Be(){this.ptr=jt(),ve(Be)[this.ptr]=this}function Ye(){this.ptr=pi(),ve(Ye)[this.ptr]=this}function De(){this.ptr=bi(),ve(De)[this.ptr]=this}function ge(){this.ptr=ft(),ve(ge)[this.ptr]=this}function Me(){this.ptr=Dt(),ve(Me)[this.ptr]=this}function Je(){this.ptr=Ki(),ve(Je)[this.ptr]=this}function Oe(){this.ptr=Hi(),ve(Oe)[this.ptr]=this}function Qe(){this.ptr=mt(),ve(Qe)[this.ptr]=this}function je(){this.ptr=yi(),ve(je)[this.ptr]=this}function Ce(){this.ptr=Ni(),ve(Ce)[this.ptr]=this}function Se(){this.ptr=Rt(),ve(Se)[this.ptr]=this}function Xe(){throw"cannot construct a VoidPtr, no constructor in IDL"}function ze(){this.ptr=rt(),ve(ze)[this.ptr]=this}function He(){this.ptr=Jt(),ve(He)[this.ptr]=this}e=e||{};var Pe=void 0!==e?e:{},xe=!1,Le=!1;Pe.onRuntimeInitialized=function(){xe=!0,Le&&"function"==typeof Pe.onModuleLoaded&&Pe.onModuleLoaded(Pe)},Pe.onModuleParsed=function(){Le=!0,xe&&"function"==typeof Pe.onModuleLoaded&&Pe.onModuleLoaded(Pe)},Pe.isVersionSupported=r;var Ke,qe={};for(Ke in Pe)Pe.hasOwnProperty(Ke)&&(qe[Ke]=Pe[Ke]);Pe.arguments=[],Pe.thisProgram="./this.program",Pe.quit=function(e,r){throw r},Pe.preRun=[],Pe.postRun=[];var $e=!1,er=!1,rr=!1,ir=!1;if(Pe.ENVIRONMENT)if("WEB"===Pe.ENVIRONMENT)$e=!0;else if("WORKER"===Pe.ENVIRONMENT)er=!0;else if("NODE"===Pe.ENVIRONMENT)rr=!0;else{if("SHELL"!==Pe.ENVIRONMENT)throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");ir=!0}else $e="object"==typeof window,er="function"==typeof importScripts,rr="object"==typeof process&&"function"==typeof require&&!$e&&!er,ir=!$e&&!rr&&!er;if(rr){var tr,Ar;Pe.read=function(e,r){var i;return i=ee(e),i||(tr||(tr=require("fs")),Ar||(Ar=require("path")),e=Ar.normalize(e),i=tr.readFileSync(e)),r?i:i.toString()},Pe.readBinary=function(e){var r=Pe.read(e,!0);return r.buffer||(r=new Uint8Array(r)),n(r.buffer),r},process.argv.length>1&&(Pe.thisProgram=process.argv[1].replace(/\\/g,"/")),Pe.arguments=process.argv.slice(2),process.on("uncaughtException",function(e){if(!(e instanceof se))throw e}),process.on("unhandledRejection",function(e,r){process.exit(1)}),Pe.inspect=function(){return"[Emscripten Module object]"}}else ir?("undefined"!=typeof read&&(Pe.read=function(e){var r=ee(e);return r?q(r):read(e)}),Pe.readBinary=function(e){var r;return(r=ee(e))?r:"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(r=read(e,"binary"),n("object"==typeof r),r)},"undefined"!=typeof scriptArgs?Pe.arguments=scriptArgs:void 0!==arguments&&(Pe.arguments=arguments),"function"==typeof quit&&(Pe.quit=function(e,r){quit(e)})):($e||er)&&(Pe.read=function(e){try{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.send(null),r.responseText}catch(r){var i=ee(e);if(i)return q(i);throw r}},er&&(Pe.readBinary=function(e){try{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}catch(r){var i=ee(e);if(i)return i;throw r}}),Pe.readAsync=function(e,r,i){var t=new XMLHttpRequest;t.open("GET",e,!0),t.responseType="arraybuffer",t.onload=function(){if(200==t.status||0==t.status&&t.response)return void r(t.response);var A=ee(e);if(A)return void r(A.buffer);i()},t.onerror=i,t.send(null)},Pe.setWindowTitle=function(e){document.title=e});Pe.print="undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null,Pe.printErr="undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||Pe.print,Pe.print=Pe.print,Pe.printErr=Pe.printErr;for(Ke in qe)qe.hasOwnProperty(Ke)&&(Pe[Ke]=qe[Ke]);qe=void 0;var fr,nr,or,ar,ur,cr,br,lr,_r,sr,dr,kr,pr,hr,vr,yr,mr,wr=16,Rr=(new Array(0),0),Er=0,Nr=2,Vr=4,Wr="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,Gr=("undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le"),65536),Zr=16777216,Tr=16777216;sr=dr=pr=hr=vr=yr=mr=0,kr=!1,Pe.reallocBuffer||(Pe.reallocBuffer=function(e){var r;try{if(ArrayBuffer.transfer)r=ArrayBuffer.transfer(fr,e);else{var i=nr;r=new ArrayBuffer(e);new Int8Array(r).set(i)}}catch(e){return!1}return!!VA(r)&&r});var Ur;try{Ur=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),Ur(new ArrayBuffer(4))}catch(e){Ur=function(e){return e.byteLength}}var Ir=Pe.TOTAL_STACK||5242880,Fr=Pe.TOTAL_MEMORY||16777216;if(Fr<Ir&&Pe.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+Fr+"! (TOTAL_STACK="+Ir+")"),Pe.buffer?fr=Pe.buffer:(fr=new ArrayBuffer(Fr),Pe.buffer=fr),d(),cr[0]=1668509029,ar[1]=25459,115!==or[2]||99!==or[3])throw"Runtime error: expected the system to be little-endian!";var Br=[],Yr=[],Dr=[],gr=[],Mr=[],Jr=!1,Or=!1,Qr=Math.abs,jr=(Math.cos,Math.sin,Math.tan,Math.acos,Math.asin,Math.atan,Math.atan2,Math.exp,Math.log,Math.sqrt,Math.ceil),Cr=Math.floor,Sr=(Math.pow,Math.imul,Math.fround,Math.round,Math.min),Xr=(Math.max,Math.clz32,Math.trunc,0),zr=null,Hr=null;Pe.preloadedImages={},Pe.preloadedAudios={};var Pr=null,xr="data:application/octet-stream;base64,";sr=8,dr=sr+18080,Yr.push(),
Pr="data:application/octet-stream;base64,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SQAAAE8AAABTAAAAWQAAAGEAAABlAAAAZwAAAGsAAABtAAAAcQAAAHkAAAB/AAAAgwAAAIkAAACLAAAAjwAAAJUAAACXAAAAnQAAAKMAAACnAAAAqQAAAK0AAACzAAAAtQAAALsAAAC/AAAAwQAAAMUAAADHAAAA0QAAAAIAAAAAAAAAIAQAAGAAAABhAAAAYgAAAGMAAAATAAAAAQAAAAEAAAADAAAAAAAAAEgEAABgAAAAZAAAAGIAAABjAAAAEwAAAAIAAAACAAAABAAAAAAAAABYBAAAZQAAAGYAAABuAAAAAAAAAGgEAABlAAAAZwAAAG4AAABONWRyYWNvMjhBdHRyaWJ1dGVPY3RhaGVkcm9uVHJhbnNmb3JtRQBONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAE41ZHJhY28zMEF0dHJpYnV0ZVF1YW50aXphdGlvblRyYW5zZm9ybUUATjVkcmFjbzE3QXR0cmlidXRlc0RlY29kZXJFAE41ZHJhY28yNkF0dHJpYnV0ZXNEZWNvZGVySW50ZXJmYWNlRQBLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlcjogY29tcHJlc3Npb24gbGV2ZWwgJWkgbm90IHN1cHBvcnRlZC4KAE1ldGhvZCBub3Qgc3VwcG9ydGVkLiAKAFZlcnNpb24gbm90IHN1cHBvcnRlZC4gCgBONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlckUATjVkcmFjbzI2U2VxdWVudGlhbEF0dHJpYnV0ZURlY29kZXJFAE41ZHJhY28zN1NlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyc0NvbnRyb2xsZXJFAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzM3UHJlZGljdGlvblNjaGVtZVR5cGVkRGVjb2RlckludGVyZmFjZUlpaUVFAE41ZHJhY28zMlByZWRpY3Rpb25TY2hlbWVEZWNvZGVySW50ZXJmYWNlRQBONWRyYWNvMjVQcmVkaWN0aW9uU2NoZW1lSW50ZXJmYWNlRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0RlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDBNZXNoUHJlZGljdGlvblNjaGVtZVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzMzU2VxdWVudGlhbEludGVnZXJBdHRyaWJ1dGVEZWNvZGVyRQBONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI4UHJlZGljdGlvblNjaGVtZURlbHRhRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzMyU2VxdWVudGlhbE5vcm1hbEF0dHJpYnV0ZURlY29kZXJFAE41ZHJhY28zOFNlcXVlbnRpYWxRdWFudGl6YXRpb25BdHRyaWJ1dGVEZWNvZGVyRQBVbnN1cHBvcnRlZCBlbmNvZGluZyBtZXRob2QuAElucHV0IGlzIG5vdCBhIG1lc2guAElucHV0IGlzIG5vdCBhIHBvaW50IGNsb3VkLgBza2lwX2F0dHJpYnV0ZV90cmFuc2Zvcm0ATjVkcmFjbzExTWVzaERlY29kZXJFAE41ZHJhY28yMk1lc2hFZGdlQnJlYWtlckRlY29kZXJFAE41ZHJhY28yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjBFZGdlQnJlYWtlclRyYXZlcnNlcklOU18yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzNfRUVOU18xOUVkZ2VCcmVha2VyT2JzZXJ2ZXJFRUVFRQBONWRyYWNvMTVQb2ludHNTZXF1ZW5jZXJFAE41ZHJhY28yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzExQ29ybmVyVGFibGVFRUUATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18yNVByZWRpY3Rpb25EZWdyZWVUcmF2ZXJzZXJJTlNfMjlDb3JuZXJUYWJsZVRyYXZlcnNhbFByb2Nlc3NvcklOU18xMUNvcm5lclRhYmxlRUVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzNfRUVFRUVFAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjBFZGdlQnJlYWtlclRyYXZlcnNlcklOU18yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzExQ29ybmVyVGFibGVFRUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTM19FRU5TXzE5RWRnZUJyZWFrZXJPYnNlcnZlckVFRUVFAE41ZHJhY28yNk1lc2hFZGdlQnJlYWtlckRlY29kZXJJbXBsSU5TXzMxTWVzaEVkZ2VCcmVha2VyVHJhdmVyc2FsRGVjb2RlckVFRQBONWRyYWNvMzVNZXNoRWRnZUJyZWFrZXJEZWNvZGVySW1wbEludGVyZmFjZUUATjVkcmFjbzI2TWVzaEVkZ2VCcmVha2VyRGVjb2RlckltcGxJTlNfNDFNZXNoRWRnZUJyZWFrZXJUcmF2ZXJzYWxQcmVkaWN0aXZlRGVjb2RlckVFRQBONWRyYWNvMjZNZXNoRWRnZUJyZWFrZXJEZWNvZGVySW1wbElOU18zOE1lc2hFZGdlQnJlYWtlclRyYXZlcnNhbFZhbGVuY2VEZWNvZGVyRUVFAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUATjVkcmFjbzIxTWVzaFNlcXVlbnRpYWxEZWNvZGVyRQBONWRyYWNvMTdQb2ludENsb3VkRGVjb2RlckUARmFpbGVkIHRvIHBhcnNlIERyYWNvIGhlYWRlci4ARFJBQ08ATm90IGEgRHJhY28gZmlsZS4ARmFpbGVkIHRvIGRlY29kZSBtZXRhZGF0YS4AVXNpbmcgaW5jb21wYXRpYmxlIGRlY29kZXIgZm9yIHRoZSBpbnB1dCBnZW9tZXRyeS4AVW5rbm93biBtYWpvciB2ZXJzaW9uLgBVbmtub3duIG1pbm9yIHZlcnNpb24uAEZhaWxlZCB0byBpbml0aWFsaXplIHRoZSBkZWNvZGVyLgBGYWlsZWQgdG8gZGVjb2RlIGdlb21ldHJ5IGRhdGEuAEZhaWxlZCB0byBkZWNvZGUgcG9pbnQgYXR0cmlidXRlcy4ATjVkcmFjbzIzUG9pbnRDbG91ZEtkVHJlZURlY29kZXJFAE41ZHJhY28yN1BvaW50Q2xvdWRTZXF1ZW50aWFsRGVjb2RlckUATjVkcmFjbzRNZXNoRQBONWRyYWNvMTBQb2ludENsb3VkRQBGbG9hdFBvaW50c1RyZWVEZWNvZGVyOiBjb21wcmVzc2lvbiBsZXZlbCAlaSBub3Qgc3VwcG9ydGVkLgoAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQARAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAoAAAAACgAAAAAJCwAAAAAACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAC0rICAgMFgweAAobnVsbCkALTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AACVkAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQAU3QxMWxvZ2ljX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9F";var Lr=dr;dr+=16;var Kr={last:0,caught:[],infos:{},deAdjust:function(e){if(!e||Kr.infos[e])return e;for(var r in Kr.infos){if(Kr.infos[r].adjusted===e)return r}return e},addRef:function(e){if(e){Kr.infos[e].refcount++}},decRef:function(e){if(e){var r=Kr.infos[e];n(r.refcount>0),r.refcount--,0!==r.refcount||r.rethrown||(r.destructor&&Pe.dynCall_vi(r.destructor,e),delete Kr.infos[e],___cxa_free_exception(e))}},clearRef:function(e){if(e){Kr.infos[e].refcount=0}}},qr=function(e,r,A,a){var u,c;"number"==typeof e?(u=!0,c=e):(u=!1,c=e.length);var b,l="string"==typeof r?r:null;if(b=A==Vr?a:["function"==typeof WA?WA:i,ZA,i,t][void 0===A?Nr:A](Math.max(c,l?1:r.length)),u){var _;for(a=b,n(0==(3&b)),_=b+(-4&c);a<_;a+=4)cr[a>>2]=0;for(_=b+c;a<_;)nr[a++>>0]=0;return b}if("i8"===l)return e.subarray||e.slice?or.set(e,b):or.set(new Uint8Array(e),b),b;for(var s,d,k,p=0;p<c;){var h=e[p];s=l||r[p],0!==s?("i64"==s&&(s="i32"),o(b+p,h,s),k!==s&&(d=f(s),k=s),p+=d):p++}return b}([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",Nr),$r={varargs:0,get:function(e){return $r.varargs+=4,cr[$r.varargs-4>>2]},getStr:function(){return a($r.get())},get64:function(){var e=$r.get(),r=$r.get();return n(e>=0?0===r:-1===r),e},getZero:function(){n(0===$r.get())}},ei=Cr,ri={},ii=1,ti={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};mr=i(4),pr=hr=A(dr),vr=pr+Ir,yr=A(vr),cr[mr>>2]=yr,kr=!0;var Ai=!1,fi="function"==typeof atob?atob:function(e){var r,i,t,A,f,n,o,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",u="",c=0;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{A=a.indexOf(e.charAt(c++)),f=a.indexOf(e.charAt(c++)),n=a.indexOf(e.charAt(c++)),o=a.indexOf(e.charAt(c++)),r=A<<2|f>>4,i=(15&f)<<4|n>>2,t=(3&n)<<6|o,u+=String.fromCharCode(r),64!==n&&(u+=String.fromCharCode(i)),64!==o&&(u+=String.fromCharCode(t))}while(c<e.length);return u};Pe.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0,byteLength:Ur},Pe.asmLibraryArg={abort:pe,assert:n,enlargeMemory:p,getTotalMemory:h,abortOnCannotGrowMemory:k,invoke_ii:re,invoke_iii:ie,invoke_iiii:te,invoke_iiiiiii:Ae,invoke_v:fe,invoke_vi:ne,invoke_vii:oe,invoke_viii:ae,invoke_viiii:ue,invoke_viiiii:ce,invoke_viiiiii:be,__ZSt18uncaught_exceptionv:U,___cxa_allocate_exception:T,___cxa_begin_catch:I,___cxa_find_matching_catch:Y,___cxa_pure_virtual:F,___cxa_throw:D,___gxx_personality_v0:g,___resumeException:B,___setErrNo:L,___syscall140:M,___syscall146:O,___syscall54:Q,___syscall6:j,_abort:C,_emscripten_memcpy_big:X,_llvm_floor_f64:ei,_llvm_trap:S,_pthread_getspecific:z,_pthread_key_create:H,_pthread_once:P,_pthread_setspecific:x,flush_NO_FILESYSTEM:J,DYNAMICTOP_PTR:mr,tempDoublePtr:Lr,ABORT:Rr,STACKTOP:hr,STACK_MAX:vr,cttz_i8:qr};var ni=function(e,r,i){"almost asm";function t(e){return!(16777215&D_(e)||D_(e)<=16777215||D_(e)>2147483648)&&(m_=new y_(e),R_=new w_(e),N_=new E_(e),W_=new V_(e),Z_=new G_(e),U_=new T_(e),F_=new I_(e),Y_=new B_(e),i=e,!0)}function A(e,r){e|=0,r|=0;var i=0,t=0,A=0,f=0,n=0,o=0,a=0,u=0,c=0,b=0,l=0,_=0,s=0,d=0,k=0,p=0,h=0,v=0,y=0,m=0,w=0,R=0,E=0,N=0,V=0,W=0,G=0;if(i=J_,J_=J_+48|0,t=i+32|0,A=i+28|0,f=i+16|0,n=i,o=e+16|0,0|(a=0|N_[o>>2])){u=0|N_[r>>2],c=o,b=a;e:for(;;){for(a=b;;){if((0|N_[a+16>>2])>=(0|u))break;if(!(l=0|N_[a+4>>2])){_=c;break e}a=l}if(!(b=0|N_[a>>2])){_=a;break}c=a}if((0|_)!=(0|o)?(0|u)>=(0|N_[_+16>>2]):0)return s=_,d=s+20|0,J_=i,0|d}if(Ob(f),N_[n>>2]=N_[r>>2],r=n+4|0,N_[n+8>>2]=0,_=n+12|0,N_[_>>2]=0,u=n+8|0,N_[r>>2]=u,c=0|N_[f>>2],b=f+4|0,(0|c)!=(0|b))for(l=u,k=c;;){if(c=k+16|0,N_[A>>2]=l,N_[t>>2]=N_[A>>2],si(r,t,c,c),c=0|N_[k+4>>2]){for(h=c;;){if(!(a=0|N_[h>>2]))break;h=a}v=h}else if(p=k+8|0,h=0|N_[p>>2],(0|N_[h>>2])==(0|k))v=h;else{h=p;do{p=0|N_[h>>2],h=p+8|0,y=0|N_[h>>2]}while((0|N_[y>>2])!=(0|p));v=y}if((0|v)==(0|b))break;k=v}v=e+12|0,k=0|N_[o>>2];do{if(k){for(t=0|N_[n>>2],A=e+16|0,l=k;;){if(c=0|N_[l+16>>2],(0|t)<(0|c)){if(!(a=0|N_[l>>2])){m=23;break}w=l,R=a}else{if((0|c)>=(0|t)){m=27;break}if(E=l+4|0,!(c=0|N_[E>>2])){m=26;break}w=E,R=c}A=w,l=R}if(23==(0|m)){N=l,V=l;break}if(26==(0|m)){N=l,V=E;break}if(27==(0|m)){N=l,V=A;break}}else N=o,V=o}while(0);return o=0|N_[V>>2],o?G=o:(m=0|eu(32),N_[m+16>>2]=N_[n>>2],E=m+20|0,N_[E>>2]=N_[r>>2],R=m+24|0,w=0|N_[n+8>>2],N_[R>>2]=w,k=0|N_[_>>2],N_[m+28>>2]=k,k?(N_[w+8>>2]=R,N_[r>>2]=u,N_[u>>2]=0,N_[_>>2]=0):N_[E>>2]=R,N_[m>>2]=0,N_[m+4>>2]=0,N_[m+8>>2]=N,N_[V>>2]=m,N=0|N_[N_[v>>2]>>2],N?(N_[v>>2]=N,W=0|N_[V>>2]):W=m,oe(0|N_[e+16>>2],W),W=e+20|0,N_[W>>2]=1+(0|N_[W>>2]),G=m),Pf(n+4|0,0|N_[u>>2]),Pf(f,0|N_[b>>2]),s=G,d=s+20|0,J_=i,0|d}function f(e,r){e|=0,r|=0;var i=0,t=0,A=0,f=0,n=0,o=0,a=0,u=0,c=0,b=0,l=0,_=0,s=0,d=0,k=0,p=0;if(i=0|m_[r+11>>0],t=i<<24>>24<0,A=t?0|N_[r>>2]:r,(f=t?0|N_[r+4>>2]:255&i)>>>0>3){for(i=A,r=f,t=f;;){if(n=0|x_(W_[i>>0]|W_[i+1>>0]<<8|W_[i+2>>0]<<16|W_[i+3>>0]<<24,1540483477),r=(0|x_(n>>>24^n,1540483477))^(0|x_(r,1540483477)),(t=t+-4|0)>>>0<=3)break;i=i+4|0}i=f+-4|0,t=-4&i,o=i-t|0,a=A+(t+4)|0,u=r}else o=f,a=A,u=f;switch(0|o){case 3:c=W_[a+2>>0]<<16^u,b=6;break;case 2:c=u,b=6;break;case 1:l=u,b=7;break;default:_=u}if(6==(0|b)&&(l=W_[a+1>>0]<<8^c,b=7),7==(0|b)&&(_=0|x_(l^W_[a>>0],1540483477)),a=0|x_(_>>>13^_,1540483477),_=a>>>15^a,!(a=0|N_[e+4>>2]))return 0|(s=0);if(l=a+-1|0,c=0==(l&a|0),d=c?_&l:_>>>0<a>>>0?_:(_>>>0)%(a>>>0)|0,!(u=0|N_[(0|N_[e>>2])+(d<<2)>>2]))return 0|(s=0);if(!(e=0|N_[u>>2]))return 0|(s=0);if(u=0==(0|f),c){c=e;e:for(;;){if(o=0|N_[c+4>>2],!((r=(0|_)==(0|o))|(o&l|0)==(0|d))){s=0,b=40;break}do{if(r?(o=c+8|0,t=0|m_[o+11>>0],i=t<<24>>24<0,n=255&t,(0|(i?0|N_[c+12>>2]:n))==(0|f)):0){if(t=0|N_[o>>2],k=i?t:o,i){if(u){s=c,b=40;break e}if(0|no(k,A,f))break;s=c,b=40;break e}if(u){s=c,b=40;break e}if((0|m_[A>>0])==(255&t)<<24>>24){t=o,o=n,n=A;do{if(o=o+-1|0,t=t+1|0,!o){s=c,b=40;break e}n=n+1|0}while((0|m_[t>>0])==(0|m_[n>>0]))}}}while(0);if(!(c=0|N_[c>>2])){s=0,b=40;break}}if(40==(0|b))return 0|s}else p=e;e:for(;;){e=0|N_[p+4>>2];do{if((0|_)==(0|e)){if(c=p+8|0,l=0|m_[c+11>>0],r=l<<24>>24<0,n=255&l,(0|(r?0|N_[p+12>>2]:n))==(0|f)){if(l=0|N_[c>>2],t=r?l:c,r){if(u){s=p,b=40;break e}if(0|no(t,A,f))break;s=p,b=40;break e}if(u){s=p,b=40;break e}if((0|m_[A>>0])==(255&l)<<24>>24){l=c,c=n,n=A;do{if(c=c+-1|0,l=l+1|0,!c){s=p,b=40;break e}n=n+1|0}while((0|m_[l>>0])==(0|m_[n>>0]))}}}else if((0|(e>>>0<a>>>0?e:(e>>>0)%(a>>>0)|0))!=(0|d)){s=0,b=40;break e}}while(0);if(!(p=0|N_[p>>2])){s=0,b=40;break}}return 40==(0|b)?0|s:0}function n(e,r){e|=0,r|=0;var i=0,t=0,A=0,f=0,n=0,o=0,a=0,u=0,c=0,b=0,l=0,_=0,s=0,d=0,k=0,p=0;if(i=0|m_[r+11>>0],t=i<<24>>24<0,A=t?0|N_[r>>2]:r,(f=t?0|N_[r+4>>2]:255&i)>>>0>3){for(i=A,r=f,t=f;;){if(n=0|x_(W_[i>>0]|W_[i+1>>0]<<8|W_[i+2>>0]<<16|W_[i+3>>0]<<24,1540483477),r=(0|x_(n>>>24^n,1540483477))^(0|x_(r,1540483477)),(t=t+-4|0)>>>0<=3)break;i=i+4|0}i=f+-4|0,t=-4&i,o=i-t|0,a=A+(t+4)|0,u=r}else o=f,a=A,u=f;switch(0|o){case 3:c=W_[a+2>>0]<<16^u,b=6;break;case 2:c=u,b=6;break;case 1:l=u,b=7;break;default:_=u}if(6==(0|b)&&(l=W_[a+1>>0]<<8^c,b=7),7==(0|b)&&(_=0|x_(l^W_[a>>0],1540483477)),a=0|x_(_>>>13^_,1540483477),_=a>>>15^a,!(a=0|N_[e+4>>2]))return 0|(s=0);if(l=a+-1|0,c=0==(l&a|0),d=c?_&l:_>>>0<a>>>0?_:(_>>>0)%(a>>>0)|0,!(u=0|N_[(0|N_[e>>2])+(d<<2)>>2]))return 0|(s=0);if(!(e=0|N_[u>>2]))return 0|(s=0);if(u=0==(0|f),c){c=e;e:for(;;){if(o=0|N_[c+4>>2],!((r=(0|o)==(0|_))|(o&l|0)==(0|d))){s=0,b=40;break}do{if(r?(o=c+8|0,t=0|m_[o+11>>0],i=t<<24>>24<0,n=255&t,(0|(i?0|N_[c+12>>2]:n))==(0|f)):0){if(t=0|N_[o>>2],k=i?t:o,i){if(u){s=c,b=40;break e}if(0|no(k,A,f))break;s=c,b=40;break e}if(u){s=c,b=40;break e}if((0|m_[A>>0])==(255&t)<<24>>24){t=o,o=n,n=A;do{if(o=o+-1|0,t=t+1|0,!o){s=c,b=40;break e}n=n+1|0}while((0|m_[t>>0])==(0|m_[n>>0]))}}}while(0);if(!(c=0|N_[c>>2])){s=0,b=40;break}}if(40==(0|b))return 0|s}else p=e;e:for(;;){e=0|N_[p+4>>2];do{if((0|e)==(0|_)){if(c=p+8|0,l=0|m_[c+11>>0],r=l<<24>>24<0,n=255&l,(0|(r?0|N_[p+12>>2]:n))==(0|f)){if(l=0|N_[c>>2],t=r?l:c,r){if(u){s=p,b=40;break e}if(0|no(t,A,f))break;s=p,b=40;break e}if(u){s=p,b=40;break e}if((0|m_[A>>0])==(255&l)<<24>>24){l=c,c=n,n=A;do{if(c=c+-1|0,l=l+1|0,!c){s=p,b=40;break e}n=n+1|0}while((0|m_[l>>0])==(0|m_[n>>0]))}}
}else if((0|(e>>>0<a>>>0?e:(e>>>0)%(a>>>0)|0))!=(0|d)){s=0,b=40;break e}}while(0);if(!(p=0|N_[p>>2])){s=0,b=40;break}}return 40==(0|b)?0|s:0}function o(e,r,i,t,A){e|=0,r|=0,i|=0,t|=0,A|=0;var f=0,n=0,o=0,a=0,u=0,c=0,b=0,l=0,_=0,s=0,d=0,k=0,p