@loaders.gl/potree 4.3.1 → 4.4.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dist.dev.js +101 -45
- package/dist/dist.min.js +13 -13
- package/dist/index.cjs +10 -13
- package/dist/index.cjs.map +2 -2
- package/dist/lib/potree-node-source.d.ts +7 -16
- package/dist/lib/potree-node-source.d.ts.map +1 -1
- package/dist/lib/potree-node-source.js +5 -11
- package/dist/potree-hierarchy-chunk-loader.js +1 -1
- package/dist/potree-loader.js +1 -1
- package/dist/potree-source.d.ts +9 -6
- package/dist/potree-source.d.ts.map +1 -1
- package/dist/potree-source.js +4 -2
- package/package.json +6 -6
- package/src/lib/potree-node-source.ts +8 -21
- package/src/potree-source.ts +13 -6
package/dist/dist.min.js
CHANGED
|
@@ -4,26 +4,26 @@
|
|
|
4
4
|
else if (typeof define === 'function' && define.amd) define([], factory);
|
|
5
5
|
else if (typeof exports === 'object') exports['loaders'] = factory();
|
|
6
6
|
else root['loaders'] = factory();})(globalThis, function () {
|
|
7
|
-
"use strict";var __exports__=(()=>{var uv=Object.create;var Un=Object.defineProperty;var lv=Object.getOwnPropertyDescriptor;var cv=Object.getOwnPropertyNames;var sv=Object.getPrototypeOf,hv=Object.prototype.hasOwnProperty;var Oe=(R,w)=>()=>(w||R((w={exports:{}}).exports,w),w.exports),mv=(R,w)=>{for(var M in w)Un(R,M,{get:w[M],enumerable:!0})},gn=(R,w,M,z)=>{if(w&&typeof w=="object"||typeof w=="function")for(let j of cv(w))!hv.call(R,j)&&j!==M&&Un(R,j,{get:()=>w[j],enumerable:!(z=lv(w,j))||z.enumerable});return R},Tn=(R,w,M)=>(gn(R,w,"default"),M&&gn(M,w,"default")),$A=(R,w,M)=>(M=R!=null?uv(sv(R)):{},gn(w||!R||!R.__esModule?Un(M,"default",{value:R,enumerable:!0}):M,R)),pv=R=>gn(Un({},"__esModule",{value:!0}),R);var Ie=Oe((Ty,qA)=>{qA.exports=globalThis.loaders});var Pe=Oe(()=>{});var of=Oe(()=>{});var Or={};mv(Or,{PotreeBinLoader:()=>rf,PotreeHierarchyChunkLoader:()=>Nn,PotreeLoader:()=>Gn,PotreeSource:()=>mf});Tn(Or,$A(Ie(),1));var vv="4.3.0",Gn={dataType:null,batchType:null,name:"potree metadata",id:"potree",module:"potree",version:vv,extensions:["js"],mimeTypes:["application/json"],testText:R=>R.indexOf("octreeDir")>=0,parse:R=>JSON.parse(new TextDecoder().decode(R)),parseTextSync:R=>JSON.parse(R),options:{potree:{}}};function He(R){let w=yv(R);return Zv(w)}function yv(R,w=0){let M=new DataView(R),z=[],j={};w=KA(M,w,j),z.push(j);let S=[j];for(;z.length>0;){let H=z.shift(),P=1;for(let Q=0;Q<8;Q++){if(H&&H.header.childMask&P){let t0={};w=KA(M,w,t0),t0.name=H.name+Q,z.push(t0),S.push(t0),H.header.childCount++}P=P*2}if(w===M.byteLength)break}return S}function KA(R,w,M){return M.header=M.header||{},M.header.childMask=R.getUint8(w),M.header.childCount=0,M.pointCount=R.getUint32(w+1,!0),M.name="",w+=5,w}function Zv(R,w={}){w={...{spacing:100},...w};let z=R[0],j={};for(let S of R){let{name:H}=S,P=parseInt(H.charAt(H.length-1),10),Q=H.substring(0,H.length-1),t0=j[Q],$=H.length-1;S.level=$,S.hasChildren=Boolean(S.header.childCount),S.children=[],S.childrenByIndex=new Array(8).fill(null),S.spacing=(w?.spacing||0)/Math.pow(2,$),t0&&(t0.children.push(S),t0.childrenByIndex[P]=S),j[H]=S}return z}var Rv="4.3.0",Nn={dataType:null,batchType:null,name:"potree Hierarchy Chunk",id:"potree-hrc",module:"potree",version:Rv,extensions:["hrc"],mimeTypes:["application/octet-stream"],parse:async(R,w)=>He(R),parseSync:(R,w)=>He(R),options:{potree:{}},binary:!0};function bA(R,w,M,z){return null}var rf={dataType:null,batchType:null,name:"potree Binary Point Attributes",id:"potree",extensions:["bin"],mimeTypes:["application/octet-stream"],parseSync:Vv,binary:!0,options:{}};function Vv(R,w){let M={};return bA(R,0,w,M),M}var zn=$A(Ie(),1);var Fv="",nf={};function ae(R){for(let w in nf)if(R.startsWith(w)){let M=nf[w];R=R.replace(w,M)}return!R.startsWith("http://")&&!R.startsWith("https://")&&(R=`${Fv}${R}`),R}var Cr=class{fetch;loadOptions;_needsRefresh=!0;props;constructor(w){this.props={...w},this.loadOptions={...w.loadOptions},this.fetch=wv(this.loadOptions)}setProps(w){this.props=Object.assign(this.props,w),this.setNeedsRefresh()}setNeedsRefresh(){this._needsRefresh=!0}getNeedsRefresh(w=!0){let M=this._needsRefresh;return w&&(this._needsRefresh=!1),M}};function wv(R){let w=R?.fetch;if(w&&typeof w=="function")return(z,j)=>w(z,j);let M=R?.fetch;return M&&typeof M!="function"?z=>fetch(z,M):z=>fetch(z)}var kv="4.3.0",ef={dataType:null,batchType:null,name:"LAS",id:"las",module:"las",version:kv,worker:!0,extensions:["las","laz"],mimeTypes:["application/octet-stream"],text:!0,binary:!0,tests:["LAS"],options:{las:{shape:"mesh",fp64:!1,skip:1,colorDepth:8}}};function tf(R){switch(R.constructor){case Int8Array:return"int8";case Uint8Array:case Uint8ClampedArray:return"uint8";case Int16Array:return"int16";case Uint16Array:return"uint16";case Int32Array:return"int32";case Uint32Array:return"uint32";case Float32Array:return"float32";case Float64Array:return"float64";default:return"null"}}function Qe(R){let w=1/0,M=1/0,z=1/0,j=-1/0,S=-1/0,H=-1/0,P=R.POSITION?R.POSITION.value:[],Q=P&&P.length;for(let t0=0;t0<Q;t0+=3){let $=P[t0],R0=P[t0+1],g0=P[t0+2];w=$<w?$:w,M=R0<M?R0:M,z=g0<z?g0:z,j=$>j?$:j,S=R0>S?R0:S,H=g0>H?g0:H}return[[w,M,z],[j,S,H]]}function De(R,w={}){return{fields:Wv(R),metadata:w}}function Af(R,w,M){let z=tf(w.value),j=M||ff(w);return{name:R,type:{type:"fixed-size-list",listSize:w.size,children:[{name:"value",type:z}]},nullable:!1,metadata:j}}function Wv(R){let w=[];for(let M in R){let z=R[M];w.push(Af(M,z))}return w}function ff(R){let w={};return"byteOffset"in R&&(w.byteOffset=R.byteOffset.toString(10)),"byteStride"in R&&(w.byteStride=R.byteStride.toString(10)),"normalized"in R&&(w.normalized=R.normalized.toString()),w}function Le(){var R=typeof R<"u"?R:{},w={},M;for(M in R)R.hasOwnProperty(M)&&(w[M]=R[M]);var z=[],j="./this.program",S=function(m,p){throw p},H=!1,P=!1,Q=!1,t0=!1;H=typeof window=="object",P=typeof importScripts=="function",Q=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",t0=!H&&!Q&&!P;var $="";function R0(m){return R.locateFile?R.locateFile(m,$):$+m}var g0,Ir,a2,Jn,hr,mr;Q?(P?$=Pe().dirname($)+"/":$=(typeof __dirname<"u"?__dirname:"")+"/",g0=function(p,V){var l=Z2(p);return l?V?l:l.toString():(hr||(hr=of()),mr||(mr=Pe()),p=mr.normalize(p),hr.readFileSync(p,V?null:"utf8"))},a2=function(p){var V=g0(p,!0);return V.buffer||(V=new Uint8Array(V)),P2(V.buffer),V},process.argv.length>1&&(j=process.argv[1].replace(/\\/g,"/")),z=process.argv.slice(2),typeof module<"u"&&(module.exports=R),process.on("uncaughtException",function(m){if(!(m instanceof s1))throw m}),process.on("unhandledRejection",U2),S=function(m){process.exit(m)},R.inspect=function(){return"[Emscripten Module object]"}):t0?(typeof read<"u"&&(g0=function(p){var V=Z2(p);return V?Tt(V):read(p)}),a2=function(p){var V;return V=Z2(p),V||(typeof readbuffer=="function"?new Uint8Array(readbuffer(p)):(V=read(p,"binary"),P2(typeof V=="object"),V))},typeof scriptArgs<"u"?z=scriptArgs:typeof arguments<"u"&&(z=arguments),typeof quit=="function"&&(S=function(m){quit(m)}),typeof print<"u"&&(typeof console>"u"&&(console={}),console.log=print,console.warn=console.error=typeof printErr<"u"?printErr:print)):(H||P)&&(P?$=self.location.href:document.currentScript&&($=document.currentScript.src),$.indexOf("blob:")!==0?$=$.substr(0,$.lastIndexOf("/")+1):$="",g0=function(p){try{var V=new XMLHttpRequest;return V.open("GET",p,!1),V.send(null),V.responseText}catch(g){var l=Z2(p);if(l)return Tt(l);throw g}},P&&(a2=function(p){try{var V=new XMLHttpRequest;return V.open("GET",p,!1),V.responseType="arraybuffer",V.send(null),new Uint8Array(V.response)}catch(g){var l=Z2(p);if(l)return l;throw g}}),Ir=function(p,V,l){var g=new XMLHttpRequest;g.open("GET",p,!0),g.responseType="arraybuffer",g.onload=function(){if(g.status==200||g.status==0&&g.response){V(g.response);return}var Z=Z2(p);if(Z){V(Z.buffer);return}l()},g.onerror=l,g.send(null)},Jn=function(m){document.title=m});var Yn=R.print||console.log.bind(console),Hr=R.printErr||console.warn.bind(console);for(M in w)w.hasOwnProperty(M)&&(R[M]=w[M]);w=null,R.arguments&&(z=R.arguments),R.thisProgram&&(j=R.thisProgram),R.quit&&(S=R.quit);var A2=16;function Q2(m){var p=N0[En>>2],V=p+m+15&-16;return N0[En>>2]=V,p}function p2(m){switch(m){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(m[m.length-1]==="*")return 4;if(m[0]==="i"){var p=Number(m.substr(1));return P2(p%8===0,"getNativeTypeSize invalid bits "+p+", type "+m),p/8}else return 0}}}function D2(m){D2.shown||(D2.shown={}),D2.shown[m]||(D2.shown[m]=1,Hr(m))}var rt=1,Gv=new Array(0),Nv={};function Mv(m,p,V){return V&&V.length?R["dynCall_"+m].apply(null,[p].concat(V)):R["dynCall_"+m].call(null,p)}var nt=0,pf=function(m){nt=m},vf=function(){return nt},et=8,yf;R.wasmBinary&&(yf=R.wasmBinary);var tt;R.noExitRuntime&&(tt=R.noExitRuntime);function zv(m,p,V,l){switch(V=V||"i8",V.charAt(V.length-1)==="*"&&(V="i32"),V){case"i1":v2[m>>0]=p;break;case"i8":v2[m>>0]=p;break;case"i16":d2[m>>1]=p;break;case"i32":N0[m>>2]=p;break;case"i64":Sn=[p>>>0,(L2=p,+Sf(L2)>=1?L2>0?(If(+Of(L2/4294967296),4294967295)|0)>>>0:~~+Cf((L2-+(~~L2>>>0))/4294967296)>>>0:0)],N0[m>>2]=Sn[0],N0[m+4>>2]=Sn[1];break;case"float":_n[m>>2]=p;break;case"double":xn[m>>3]=p;break;default:U2("invalid type for setValue: "+V)}}var it=!1,Zf=0;function P2(m,p){m||U2("Assertion failed: "+p)}function Rf(m){var p=R["_"+m];return P2(p,"Cannot call unknown function "+m+", make sure it is exported"),p}function Bv(m,p,V,l,g){var n={string:function(K){var h0=0;if(K!=null&&K!==0){var W0=(K.length<<2)+1;h0=Gt(W0),ot(K,h0,W0)}return h0},array:function(K){var h0=Gt(K.length);return Tf(K,h0),h0}};function Z(K){return p==="string"?ft(K):p==="boolean"?Boolean(K):K}var T=Rf(m),Y=[],J=0;if(l)for(var d=0;d<l.length;d++){var b=n[V[d]];b?(J===0&&(J=l1()),Y[d]=b(l[d])):Y[d]=l[d]}var A0=T.apply(null,Y);return A0=Z(A0),J!==0&&u1(J),A0}var Jv=3,At=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function Vf(m,p,V){for(var l=p+V,g=p;m[g]&&!(g>=l);)++g;if(g-p>16&&m.subarray&&At)return At.decode(m.subarray(p,g));for(var n="";p<g;){var Z=m[p++];if(!(Z&128)){n+=String.fromCharCode(Z);continue}var T=m[p++]&63;if((Z&224)==192){n+=String.fromCharCode((Z&31)<<6|T);continue}var Y=m[p++]&63;if((Z&240)==224?Z=(Z&15)<<12|T<<6|Y:Z=(Z&7)<<18|T<<12|Y<<6|m[p++]&63,Z<65536)n+=String.fromCharCode(Z);else{var J=Z-65536;n+=String.fromCharCode(55296|J>>10,56320|J&1023)}}return n}function ft(m,p){return m?Vf(U0,m,p):""}function Ff(m,p,V,l){if(!(l>0))return 0;for(var g=V,n=V+l-1,Z=0;Z<m.length;++Z){var T=m.charCodeAt(Z);if(T>=55296&&T<=57343){var Y=m.charCodeAt(++Z);T=65536+((T&1023)<<10)|Y&1023}if(T<=127){if(V>=n)break;p[V++]=T}else if(T<=2047){if(V+1>=n)break;p[V++]=192|T>>6,p[V++]=128|T&63}else if(T<=65535){if(V+2>=n)break;p[V++]=224|T>>12,p[V++]=128|T>>6&63,p[V++]=128|T&63}else{if(V+3>=n)break;p[V++]=240|T>>18,p[V++]=128|T>>12&63,p[V++]=128|T>>6&63,p[V++]=128|T&63}}return p[V]=0,V-g}function ot(m,p,V){return Ff(m,U0,p,V)}function wf(m){for(var p=0,V=0;V<m.length;++V){var l=m.charCodeAt(V);l>=55296&&l<=57343&&(l=65536+((l&1023)<<10)|m.charCodeAt(++V)&1023),l<=127?++p:l<=2047?p+=2:l<=65535?p+=3:p+=4}return p}var ut=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function kf(m,p){for(var V=m,l=V>>1,g=l+p/2;!(l>=g)&&ar[l];)++l;if(V=l<<1,V-m>32&&ut)return ut.decode(U0.subarray(m,V));for(var n=0,Z="";;){var T=d2[m+n*2>>1];if(T==0||n==p/2)return Z;++n,Z+=String.fromCharCode(T)}}function Wf(m,p,V){if(V===void 0&&(V=2147483647),V<2)return 0;V-=2;for(var l=p,g=V<m.length*2?V/2:m.length,n=0;n<g;++n){var Z=m.charCodeAt(n);d2[p>>1]=Z,p+=2}return d2[p>>1]=0,p-l}function Xf(m){return m.length*2}function df(m,p){for(var V=0,l="";!(V>=p/4);){var g=N0[m+V*4>>2];if(g==0)break;if(++V,g>=65536){var n=g-65536;l+=String.fromCharCode(55296|n>>10,56320|n&1023)}else l+=String.fromCharCode(g)}return l}function gf(m,p,V){if(V===void 0&&(V=2147483647),V<4)return 0;for(var l=p,g=l+V-4,n=0;n<m.length;++n){var Z=m.charCodeAt(n);if(Z>=55296&&Z<=57343){var T=m.charCodeAt(++n);Z=65536+((Z&1023)<<10)|T&1023}if(N0[p>>2]=Z,p+=4,p+4>g)break}return N0[p>>2]=0,p-l}function Uf(m){for(var p=0,V=0;V<m.length;++V){var l=m.charCodeAt(V);l>=55296&&l<=57343&&++V,p+=4}return p}function Tf(m,p){v2.set(m,p)}function Yv(m,p,V){for(var l=0;l<m.length;++l)v2[p++>>0]=m.charCodeAt(l);V||(v2[p>>0]=0)}var X2,v2,U0,d2,ar,N0,f2,_n,xn;function Gf(m){X2=m,R.HEAP8=v2=new Int8Array(m),R.HEAP16=d2=new Int16Array(m),R.HEAP32=N0=new Int32Array(m),R.HEAPU8=U0=new Uint8Array(m),R.HEAPU16=ar=new Uint16Array(m),R.HEAPU32=f2=new Uint32Array(m),R.HEAPF32=_n=new Float32Array(m),R.HEAPF64=xn=new Float64Array(m)}var _v=22384,Nf=5265264,En=22176,lt=R.INITIAL_MEMORY||167772160;R.buffer?X2=R.buffer:X2=new ArrayBuffer(lt),lt=X2.byteLength,Gf(X2),N0[En>>2]=Nf;function Qr(m){for(;m.length>0;){var p=m.shift();if(typeof p=="function"){p(R);continue}var V=p.func;typeof V=="number"?p.arg===void 0?R.dynCall_v(V):R.dynCall_vi(V,p.arg):V(p.arg===void 0?null:p.arg)}}var ct=[],st=[],Mf=[],ht=[],zf=!1,Bf=!1;function Jf(){if(R.preRun)for(typeof R.preRun=="function"&&(R.preRun=[R.preRun]);R.preRun.length;)Ef(R.preRun.shift());Qr(ct)}function Yf(){zf=!0,Qr(st)}function _f(){Qr(Mf)}function xv(){Bf=!0}function xf(){if(R.postRun)for(typeof R.postRun=="function"&&(R.postRun=[R.postRun]);R.postRun.length;)jf(R.postRun.shift());Qr(ht)}function Ef(m){ct.unshift(m)}function jf(m){ht.unshift(m)}var Sf=Math.abs,Cf=Math.ceil,Of=Math.floor,If=Math.min,g2=0,jn=null,pr=null;function Hf(m){g2++,R.monitorRunDependencies&&R.monitorRunDependencies(g2)}function af(m){if(g2--,R.monitorRunDependencies&&R.monitorRunDependencies(g2),g2==0&&(jn!==null&&(clearInterval(jn),jn=null),pr)){var p=pr;pr=null,p()}}R.preloadedImages={},R.preloadedAudios={};function U2(m){throw R.onAbort&&R.onAbort(m),m+="",Yn(m),Hr(m),it=!0,Zf=1,m="abort("+m+"). Build with -s ASSERTIONS=1 for more info.",m}var P0=null;function Qf(m,p){return String.prototype.startsWith?m.startsWith(p):m.indexOf(p)===0}var mt="data:application/octet-stream;base64,";function pt(m){return Qf(m,mt)}var Ev="file://",L2,Sn;st.push({func:function(){o1()}}),P0="data:application/octet-stream;base64,AAAAAAAAAAAPDg0MCwoJCA4AAQMGCgoJDQECBAcLCwoMAwQFCAwMCwsGBwgJDQ0MCgoLDA0ODg0JCgsMDQ4PDggJCgsMDQ4PAAECAwQFBgcBAAECAwQFBgIBAAECAwQFAwIBAAECAwQEAwIBAAECAwUEAwIBAAECBgUEAwIBAAEHBgUEAwIBAMgPAAAoDQAAEBAAACAQAADIDwAAUA0AABAQAAAgEAAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAAAAAAAAAAAASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAAAAAADgFgAAmRgAAGAQAAAAAAAA4BYAAEIZAABgEAAAAAAAAOAWAAAqGgAASA8AAAAAAAC4FgAANBsAAOAWAACfGgAAMAoAAAAAAADgFgAAaRsAAEgPAAAAAAAA4BYAAIobAABIDwAAAAAAALgWAAAPHAAA4BYAAHwcAABIDwAAAAAAAOAWAACVHAAASA8AAAAAAADgFgAAHh0AAEgPAAAAAAAA4BYAAHcdAABIDwAAAAAAAOAWAACQHQAASA8AAAAAAADgFgAAQh4AAEgPAAAAAAAA4BYAAIceAABgEAAAAAAAAOAWAACkHwAASA8AAAAAAAC4FgAAZyAAAOAWAADkHwAA8AoAAAAAAADgFgAAjyAAAGAQAAAAAAAAuBYAAMMiAADgFgAAAiIAABgLAAAAAAAA4BYAAOEiAABgEAAAAAAAAOAWAADQJAAAGAsAAAAAAADgFgAAkSUAAGAQAAAAAAAA4BYAAIAnAAAYCwAAAAAAAOAWAAA9KAAAYBAAAAAAAADgFgAAJCoAABgLAAAAAAAA4BYAAOkqAABgEAAAAAAAAOAWAADgLAAA8AoAAAAAAADgFgAAui0AAGAQAAAAAAAA4BYAANsvAADwCgAAAAAAAOAWAADTMAAAYBAAAAAAAADgFgAAMDMAAPAKAAAAAAAA4BYAACQ0AABgEAAAAAAAAOAWAAB5NgAA8AoAAAAAAADgFgAAizcAAGAQAAAAAAAA4BYAABw6AABgEAAAAAAAAOAWAACdOgAAYBAAAAAAAADgFgAAXjsAAPAKAAAAAAAA4BYAALU7AABgEAAAAAAAAOAWAADMPAAAGAsAAAAAAADgFgAATz0AAGAQAAAAAAAA4BYAAL4+AAAYCwAAAAAAAOAWAABBPwAAYBAAAAAAAADgFgAAsEAAABgLAAAAAAAA4BYAADNBAABgEAAAAAAAAOAWAACiQgAAGAsAAAAAAADgFgAAJUMAAGAQAAAAAAAA4BYAAJREAAAYCwAAAAAAAOAWAAAXRQAAYBAAAAAAAADgFgAAhkYAABgLAAAAAAAA4BYAAAlHAABgEAAAAAAAALgWAAB4SAAAiBcAAIBIAAAAAAAAIA0AAIgXAACJSAAAAQAAACANAAC4FgAAqkgAAIgXAAC6SAAAAAAAAEgNAACIFwAAy0gAAAEAAABIDQAAuBYAABhMAAC4FgAAN0wAALgWAABWTAAAuBYAAHVMAAC4FgAAlEwAALgWAACzTAAAuBYAANJMAAC4FgAA8UwAALgWAAAQTQAAuBYAAC9NAAC4FgAATk0AALgWAABtTQAAuBYAAIxNAACkFwAAn00AAAAAAAABAAAA8A0AAAAAAAC4FgAA4U0AAKQXAAAHTgAAAAAAAAEAAADwDQAAAAAAAKQXAABJTgAAAAAAAAEAAADwDQAAAAAAAKQXAACITgAAAAAAAAEAAADwDQAAAAAAAKQXAADHTgAAAAAAAAEAAADwDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALgWAADNTwAA4BYAAC1QAAAADwAAAAAAAOAWAADaTwAAEA8AAAAAAAC4FgAA+08AAOAWAAAIUAAA8A4AAAAAAADgFgAAhlAAAOgOAAAAAAAA4BYAAJNQAADoDgAAAAAAAOAWAACjUAAA6A4AAAAAAADgFgAAtVAAADgPAAAAAAAA4BYAAMZQAAA4DwAAAAAAAOAWAADXUAAAAA8AAAAAAADgFgAA+VAAAHgPAAAAAAAA4BYAAB1RAAAADwAAAAAAAOAWAABCUQAAeA8AAAAAAADgFgAAjlEAAAAPAAAAAAAAbBcAALZRAABsFwAAuFEAAGwXAAC7UQAAbBcAAL1RAABsFwAAv1EAAGwXAADBUQAAbBcAAMNRAABsFwAAxVEAAGwXAADHUQAAbBcAAMlRAABsFwAAy1EAAGwXAADNUQAAbBcAAM9RAABsFwAA0VEAAOAWAADTUQAA8A4AAAAAAADgFgAARlIAAOgOAAAAAAAAuBYAAGJSAACkFwAAe1IAAAAAAAABAAAAWBAAAAAAAADgFgAA9FIAAIgQAAAAAAAA4BYAABdTAACYEAAAAAAAALgWAAAuUwAA4BYAAHBTAACIEAAAAAAAAOAWAACSUwAASA8AAAAAAAAAAAAAAAoAAAEAAAACAAAAAwAAAAEAAAAEAAAAAAAAABAKAAABAAAABQAAAAYAAAACAAAABwAAAAAAAAAgCgAACAAAAAkAAAABAAAAAAAAADgKAAAKAAAACwAAAAIAAAABAAAADAAAAA0AAAACAAAAAwAAAAMAAAAAAAAASAoAAAgAAAAOAAAAAQAAAAAAAABYCgAACAAAAA8AAAABAAAAAAAAAIAKAAAIAAAAEAAAAAEAAAAAAAAAcAoAAAgAAAARAAAAAQAAAAAAAACQCgAACAAAABIAAAABAAAAAAAAAKAKAAAIAAAAEwAAAAEAAAAAAAAAsAoAAAgAAAAUAAAAAQAAAAAAAADACgAACAAAABUAAAABAAAAAAAAANAKAAABAAAAFgAAABcAAAAEAAAAGAAAAAAAAADgCgAACAAAABkAAAABAAAAAAAAAPgKAAAFAAAAGgAAABsAAAAAAAAA8AoAAAEAAAAcAAAAHQAAAAAAAAAICwAAAQAAAB4AAAAfAAAABgAAACAAAAAAAAAAIAsAACEAAAAiAAAABwAAAAgAAAAAAAAAGAsAACMAAAAkAAAABwAAAAkAAAAAAAAAMAsAAAEAAAAlAAAAJgAAAAoAAAAnAAAAAAAAAEALAAAoAAAAKQAAAAcAAAALAAAAAAAAAFALAAABAAAAKgAAACsAAAAMAAAALAAAAAAAAABgCwAALQAAAC4AAAAHAAAADQAAAAAAAABwCwAAAQAAAC8AAAAwAAAADgAAADEAAAAAAAAAgAsAADIAAAAzAAAABwAAAA8AAAAAAAAAkAsAAAEAAAA0AAAANQAAABAAAAA2AAAAAAAAAKALAAARAAAANwAAADgAAAAAAAAAsAsAAAEAAAA5AAAAOgAAABIAAAA7AAAAAAAAAMALAAATAAAAPAAAAD0AAAAAAAAA0AsAAAEAAAA+AAAAPwAAABQAAABAAAAAAAAAAOALAAAVAAAAQQAAAEIAAAAAAAAA8AsAAAEAAABDAAAARAAAABYAAABFAAAAAAAAAAAMAAAXAAAARgAAAEcAAAAAAAAAEAwAAAEAAABIAAAASQAAABgAAABKAAAAAAAAACAMAAABAAAASwAAAEwAAAAZAAAATQAAAAAAAAAwDAAAAQAAAE4AAABPAAAAGgAAAFAAAAAAAAAAQAwAABsAAABRAAAAUgAAAAAAAABQDAAAAQAAAFMAAABUAAAAHAAAAFUAAAAAAAAAYAwAAFYAAABXAAAABwAAAB0AAAAAAAAAcAwAAAEAAABYAAAAWQAAAB4AAABaAAAAAAAAAIAMAABbAAAAXAAAAAcAAAAfAAAAAAAAAJAMAAABAAAAXQAAAF4AAAAgAAAAXwAAAAAAAACgDAAAYAAAAGEAAAAHAAAAIQAAAAAAAACwDAAAAQAAAGIAAABjAAAAIgAAAGQAAAAAAAAAwAwAAGUAAABmAAAABwAAACMAAAAAAAAA0AwAAAEAAABnAAAAaAAAACQAAABpAAAAAAAAAOAMAABqAAAAawAAAAcAAAAlAAAAAAAAAPAMAAABAAAAbAAAAG0AAAAmAAAAbgAAAAAAAAAADQAAbwAAAHAAAAAHAAAAJwAAAAAAAAAQDQAAAQAAAHEAAAByAAAAKAAAAHMAAAAoDQAAyA8AACgNAAAIEAAAEBAAACgNAABQDQAAyA8AAFANAAAgEAAAyA8AAFANAAAIEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwDgAAdAAAAHUAAAB2AAAAdwAAAAIAAAABAAAAAQAAAAEAAAAAAAAAGA8AAHQAAAB4AAAAdgAAAHcAAAACAAAAAgAAAAIAAAACAAAAAAAAACgPAAB5AAAAegAAAAQAAAAAAAAAOA8AAHsAAAB8AAAABQAAAAAAAABIDwAACAAAAH0AAAABAAAAAAAAAFgPAAB7AAAAfgAAAAUAAAAAAAAAaA8AAHsAAAB/AAAABQAAAAAAAAC4DwAAdAAAAIAAAAB2AAAAdwAAAAMAAAAAAAAAiA8AAHQAAACBAAAAdgAAAHcAAAAEAAAAAAAAADgQAAB0AAAAggAAAHYAAAB3AAAAAgAAAAMAAAADAAAAAwAAAAAAAABIEAAAgwAAAIQAAAAGAAAAAAAAAHgQAACFAAAAhgAAAAcAAAABAAAABQAAAAYAAAACAAAAAAAAAKAQAACFAAAAhwAAAAgAAAADAAAABQAAAAYAAAAEAAAA4BcAAAQYAAAAAAAAsBAAAIgAAACJAAAAAQAAAExBU1ppcABvcGVuAGdldFBvaW50AGdldENvdW50AER5bmFtaWNMQVNaaXAAYWRkRmllbGRGbG9hdGluZwBhZGRGaWVsZFNpZ25lZABhZGRGaWVsZFVuc2lnbmVkAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVOU185YWxsb2NhdG9ySVM3X0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFAExBU0YATjZsYXN6aXAxM2ludmFsaWRfbWFnaWNFAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUARmlsZSBtYWdpYyBpcyBub3QgdmFsaWQATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk42bGFzemlwMmlvNnJlYWRlcjEwYmFzaWNfZmlsZUlOUzJfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRTExX3ZhbGlkYXRvcnNFdkVVbFJOUzNfNmhlYWRlckVFX05TXzlhbGxvY2F0b3JJU0JfRUVGdlNBX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONmxhc3ppcDJpbzZoZWFkZXJFRUVFAE42bGFzemlwMjFvbGRfc3R5bGVfY29tcHJlc3Npb25FAE42bGFzemlwMTRub3RfY29tcHJlc3NlZEUAVGhlIGZpbGUgc2VlbXMgdG8gaGF2ZSBvbGQgc3R5bGUgY29tcHJlc3Npb24gd2hpY2ggaXMgbm90IHN1cHBvcnRlZABUaGUgZmlsZSBkb2Vzbid0IHNlZW0gdG8gYmUgY29tcHJlc3NlZABaTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUUxMV92YWxpZGF0b3JzRXZFVWxSTlMwXzZoZWFkZXJFRV8AbGFzemlwIGVuY29kZWQATjZsYXN6aXAxM25vX2xhc3ppcF92bHJFAE42bGFzemlwMjVsYXN6aXBfZm9ybWF0X3Vuc3VwcG9ydGVkRQBPbmx5IExBU3ppcCBQT0lOVFdJU0UgQ0hVTktFRCBkZWNvbXByZXNzb3IgaXMgc3VwcG9ydGVkAE5vIExBU3ppcCBWTFIgd2FzIGZvdW5kIGluIHRoZSBWTFJzIHNlY3Rpb24ATjZsYXN6aXAyMmNodW5rX3RhYmxlX3JlYWRfZXJyb3JFAENodW5rIHRhYmxlIG9mZnNldCA9PSAtMSBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZQBONmxhc3ppcDEzbm90X3N1cHBvcnRlZEUATjZsYXN6aXAyNnVua25vd25fY2h1bmtfdGFibGVfZm9ybWF0RQBjaHVua19zaXplID09IHVpbnQubWF4IGlzIG5vdCBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgBUaGVyZSB3YXMgYSBwcm9ibGVtIHJlYWRpbmcgdGhlIGNodW5rIHRhYmxlAFRoZSBjaHVuayB0YWJsZSB2ZXJzaW9uIG51bWJlciBpcyB1bmtub3duAE42bGFzemlwMTFlbmRfb2ZfZmlsZUUAUmVhY2hlZCBFbmQgb2YgZmlsZQBJbnZhbGlkIG51bWJlciBvZiBzeW1ib2xzAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFTlNfOWFsbG9jYXRvcklTOV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwMTl1bmtub3duX3NjaGVtYV90eXBlRQBUaGUgTEFaIHNjaGVtYSBpcyBub3QgcmVjb2duaXplZABONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMGR5bmFtaWNfZGVjb21wcmVzc29yRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVOU185YWxsb2NhdG9ySVNDX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNDX0VFRUVFRQBONmxhc3ppcDdmb3JtYXRzMTBiYXNlX2ZpZWxkRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF81ZmllbGRJTlMwXzNsYXM3Z3BzdGltZUVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczdncHN0aW1lRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0lfRUVOU185YWxsb2NhdG9ySVNJX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN2dwc3RpbWVFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfNWZpZWxkSU5TMF8zbGFzM3JnYkVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczNyZ2JFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXMzcmdiRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczEwZXh0cmFieXRlc0VOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVNJX0VFTlNfOWFsbG9jYXRvcklTSV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRUVFRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTS19FRU5TXzlhbGxvY2F0b3JJU0tfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNEX0VFRUVOU0JfSU5TQ183Z3BzdGltZUVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU05fRUVOU185YWxsb2NhdG9ySVNOX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMF81ZmllbGRJTlMwXzNsYXM3cG9pbnQxMEVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRF9FRUVFTlNCX0lOU0NfM3JnYkVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU0pfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTTl9FRU5TXzlhbGxvY2F0b3JJU05fRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRU5TRF9JTlNFXzNyZ2JFTlNHX0lTSl9FRUVFRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRU5TQl9JTlNDXzdncHN0aW1lRU5TRV9JU0hfRUVFRU5TQl9JTlNDXzNyZ2JFTlNFX0lTS19FRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRl9FRUVFTlNEX0lOU0VfN2dwc3RpbWVFTlNHX0lTSl9FRUVFTlNEX0lOU0VfM3JnYkVOU0dfSVNNX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU1FfRUVOU185YWxsb2NhdG9ySVNRX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU01fRUVFRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUDEwYnVmX3N0cmVhbU5TXzE0ZGVmYXVsdF9kZWxldGVJUzFfRUVOU185YWxsb2NhdG9ySVMxX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJMTBidWZfc3RyZWFtRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNV9FRU5TXzlhbGxvY2F0b3JJUzVfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM4X0VFTlNfOWFsbG9jYXRvcklTOF9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWlFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWlOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElpRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElpTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJak5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWpFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWpOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElqRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElqTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJakVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJYU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWFFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWFOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElhRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElhTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJYUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJc05TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXNFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXNOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElzRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElzTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJc0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWhFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWhOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEloRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEloTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaEVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJdE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXRFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXROUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEl0RUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEl0TlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJdEVFRUVFRUVFADZMQVNaaXAAUDZMQVNaaXAAUEs2TEFTWmlwAGlpAHYAdmkAdmlpaWkAdmlpaQBpaWkAMTNEeW5hbWljTEFTWmlwAFAxM0R5bmFtaWNMQVNaaXAAUEsxM0R5bmFtaWNMQVNaaXAAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOMTBlbXNjcmlwdGVuM3ZhbEUATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ALgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2MAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIwX19mdW5jdGlvbl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyOV9fcG9pbnRlcl90b19tZW1iZXJfdHlwZV9pbmZvRQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAF9fY3hhX2d1YXJkX2FjcXVpcmUgZGV0ZWN0ZWQgcmVjdXJzaXZlIGluaXRpYWxpemF0aW9uAHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwATlN0M19fMjE3YmFkX2Z1bmN0aW9uX2NhbGxFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQBtdXRleCBsb2NrIGZhaWxlZABiYXNpY19zdHJpbmcAdW5zcGVjaWZpZWQgZ2VuZXJpY19jYXRlZ29yeSBlcnJvcgBVbmtub3duIGVycm9yICVkAGdlbmVyaWMATlN0M19fMjI0X19nZW5lcmljX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJfX2RvX21lc3NhZ2VFAE5TdDNfXzIxNGVycm9yX2NhdGVnb3J5RQB1bnNwZWNpZmllZCBzeXN0ZW1fY2F0ZWdvcnkgZXJyb3IAc3lzdGVtAE5TdDNfXzIyM19fc3lzdGVtX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJzeXN0ZW1fZXJyb3JFADogAHZlY3Rvcg==";var Df=22368;function jv(m){return m}function Sv(m){var p=/\b__Z[\w\d_]+/g;return m.replace(p,function(V){var l=V;return V===l?V:l+" ["+V+"]"})}function Cv(){var m=new Error;if(!m.stack){try{throw new Error}catch(p){m=p}if(!m.stack)return"(no stack trace available)"}return m.stack.toString()}function Pf(m){return Kn(m)}var $2={},Lf=[];function vt(m){if(m){var p=$2[m];p.refcount++}}function yt(m){if(!m||$2[m])return m;for(var p in $2)for(var V=+p,l=$2[V].adjusted,g=l.length,n=0;n<g;n++)if(l[n]===m)return V;return m}function $f(m){var p=$2[m];return p&&!p.caught&&(p.caught=!0,Fr.uncaught_exceptions--),p&&(p.rethrown=!1),Lf.push(m),vt(yt(m)),m}var qf=0;function Kf(m,p,V){throw $2[m]={ptr:m,adjusted:[m],type:p,destructor:V,refcount:0,caught:!1,rethrown:!1},qf=m,"uncaught_exception"in Fr?Fr.uncaught_exceptions++:Fr.uncaught_exceptions=1,m}function bf(){return Fr.uncaught_exceptions}function ro(){}function Cn(m){switch(m){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+m)}}function no(){for(var m=new Array(256),p=0;p<256;++p)m[p]=String.fromCharCode(p);Zt=m}var Zt=void 0;function x0(m){for(var p="",V=m;U0[V];)p+=Zt[U0[V++]];return p}var q2={},K2={},Dr={},eo=48,to=57;function On(m){if(m===void 0)return"_unknown";m=m.replace(/[^a-zA-Z0-9_]/g,"$");var p=m.charCodeAt(0);return p>=eo&&p<=to?"_"+m:m}function In(m,p){return m=On(m),new Function("body","return function "+m+`() {
|
|
7
|
+
"use strict";var __exports__=(()=>{var mv=Object.create;var Or=Object.defineProperty;var pv=Object.getOwnPropertyDescriptor;var vv=Object.getOwnPropertyNames;var yv=Object.getPrototypeOf,Zv=Object.prototype.hasOwnProperty;var Rv=(R,w,T)=>w in R?Or(R,w,{enumerable:!0,configurable:!0,writable:!0,value:T}):R[w]=T;var In=(R,w)=>()=>(w||R((w={exports:{}}).exports,w),w.exports),Vv=(R,w)=>{for(var T in w)Or(R,T,{get:w[T],enumerable:!0})},Ue=(R,w,T,M)=>{if(w&&typeof w=="object"||typeof w=="function")for(let E of vv(w))!Zv.call(R,E)&&E!==T&&Or(R,E,{get:()=>w[E],enumerable:!(M=pv(w,E))||M.enumerable});return R},Te=(R,w,T)=>(Ue(R,w,"default"),T&&Ue(T,w,"default")),KA=(R,w,T)=>(T=R!=null?mv(yv(R)):{},Ue(w||!R||!R.__esModule?Or(T,"default",{value:R,enumerable:!0}):T,R)),Fv=R=>Ue(Or({},"__esModule",{value:!0}),R);var bA=(R,w,T)=>(Rv(R,typeof w!="symbol"?w+"":w,T),T);var an=In((Jy,ro)=>{ro.exports=globalThis.loaders});var Ln=In(()=>{});var so=In(()=>{});var ar={};Vv(ar,{PotreeBinLoader:()=>to,PotreeHierarchyChunkLoader:()=>Ne,PotreeLoader:()=>Ge,PotreeSource:()=>Zo});Te(ar,KA(an(),1));var wv="4.4.0-alpha.0",Ge={dataType:null,batchType:null,name:"potree metadata",id:"potree",module:"potree",version:wv,extensions:["js"],mimeTypes:["application/json"],testText:R=>R.indexOf("octreeDir")>=0,parse:R=>JSON.parse(new TextDecoder().decode(R)),parseTextSync:R=>JSON.parse(R),options:{potree:{}}};function Hn(R){let w=kv(R);return Wv(w)}function kv(R,w=0){let T=new DataView(R),M=[],E={};w=eo(T,w,E),M.push(E);let j=[E];for(;M.length>0;){let a=M.shift(),P=1;for(let Q=0;Q<8;Q++){if(a&&a.header.childMask&P){let t0={};w=eo(T,w,t0),t0.name=a.name+Q,M.push(t0),j.push(t0),a.header.childCount++}P=P*2}if(w===T.byteLength)break}return j}function eo(R,w,T){return T.header=T.header||{},T.header.childMask=R.getUint8(w),T.header.childCount=0,T.pointCount=R.getUint32(w+1,!0),T.name="",w+=5,w}function Wv(R,w={}){w={...{spacing:100},...w};let M=R[0],E={};for(let j of R){let{name:a}=j,P=parseInt(a.charAt(a.length-1),10),Q=a.substring(0,a.length-1),t0=E[Q],$=a.length-1;j.level=$,j.hasChildren=Boolean(j.header.childCount),j.children=[],j.childrenByIndex=new Array(8).fill(null),j.spacing=(w?.spacing||0)/Math.pow(2,$),t0&&(t0.children.push(j),t0.childrenByIndex[P]=j),E[a]=j}return M}var Xv="4.4.0-alpha.0",Ne={dataType:null,batchType:null,name:"potree Hierarchy Chunk",id:"potree-hrc",module:"potree",version:Xv,extensions:["hrc"],mimeTypes:["application/octet-stream"],parse:async(R,w)=>Hn(R),parseSync:(R,w)=>Hn(R),options:{potree:{}},binary:!0};function no(R,w,T,M){return null}var to={dataType:null,batchType:null,name:"potree Binary Point Attributes",id:"potree",extensions:["bin"],mimeTypes:["application/octet-stream"],parseSync:dv,binary:!0,options:{}};function dv(R,w){let T={};return no(R,0,w,T),T}var Me=KA(an(),1);function io(R,w){return Ao(R||{},w)}function Ao(R,w,T=0){if(T>3)return w;let M={...R};for(let[E,j]of Object.entries(w))j&&typeof j=="object"&&!Array.isArray(j)?M[E]=Ao(M[E]||{},w[E],T+1):M[E]=w[E];return M}var gv="",oo={};function Ir(R){for(let w in oo)if(R.startsWith(w)){let T=oo[w];R=R.replace(w,T)}return!R.startsWith("http://")&&!R.startsWith("https://")&&(R=`${gv}${R}`),R}var Qn=class{optionsType;options;data;url;loadOptions;fetch;_needsRefresh=!0;constructor(w,T,M){M?this.options=io({...M,core:Qn.defaultOptions},T):this.options={...T},this.data=w,this.url=typeof w=="string"?Ir(w):"",this.loadOptions={...this.options.core?.loadOptions},this.fetch=Uv(this.loadOptions)}setProps(w){this.options=Object.assign(this.options,w),this.setNeedsRefresh()}setNeedsRefresh(){this._needsRefresh=!0}getNeedsRefresh(w=!0){let T=this._needsRefresh;return w&&(this._needsRefresh=!1),T}},hr=Qn;bA(hr,"defaultOptions",{core:{type:"auto",attributions:[],loadOptions:{},loaders:[]}});function Uv(R){let w=R?.fetch;if(w&&typeof w=="function")return(M,E)=>w(M,E);let T=R?.fetch;return T&&typeof T!="function"?M=>fetch(M,T):M=>fetch(M)}var fo={name:"LAS",id:"las",module:"las",extensions:["las","laz"],mimeTypes:["application/octet-stream"],text:!0,binary:!0,tests:["LAS"]};function uo(R){switch(R.constructor){case Int8Array:return"int8";case Uint8Array:case Uint8ClampedArray:return"uint8";case Int16Array:return"int16";case Uint16Array:return"uint16";case Int32Array:return"int32";case Uint32Array:return"uint32";case Float32Array:return"float32";case Float64Array:return"float64";default:return"null"}}function Dn(R){let w=1/0,T=1/0,M=1/0,E=-1/0,j=-1/0,a=-1/0,P=R.POSITION?R.POSITION.value:[],Q=P&&P.length;for(let t0=0;t0<Q;t0+=3){let $=P[t0],R0=P[t0+1],g0=P[t0+2];w=$<w?$:w,T=R0<T?R0:T,M=g0<M?g0:M,E=$>E?$:E,j=R0>j?R0:j,a=g0>a?g0:a}return[[w,T,M],[E,j,a]]}function Pn(R,w={}){return{fields:Tv(R),metadata:w}}function lo(R,w,T){let M=uo(w.value),E=T||co(w);return{name:R,type:{type:"fixed-size-list",listSize:w.size,children:[{name:"value",type:M}]},nullable:!1,metadata:E}}function Tv(R){let w=[];for(let T in R){let M=R[T];w.push(lo(T,M))}return w}function co(R){let w={};return"byteOffset"in R&&(w.byteOffset=R.byteOffset.toString(10)),"byteStride"in R&&(w.byteStride=R.byteStride.toString(10)),"normalized"in R&&(w.normalized=R.normalized.toString()),w}function $n(){var R=typeof R<"u"?R:{},w={},T;for(T in R)R.hasOwnProperty(T)&&(w[T]=R[T]);var M=[],E="./this.program",j=function(m,p){throw p},a=!1,P=!1,Q=!1,t0=!1;a=typeof window=="object",P=typeof importScripts=="function",Q=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",t0=!a&&!Q&&!P;var $="";function R0(m){return R.locateFile?R.locateFile(m,$):$+m}var g0,Hr,H2,Je,mr,pr;Q?(P?$=Ln().dirname($)+"/":$=(typeof __dirname<"u"?__dirname:"")+"/",g0=function(p,V){var l=Z2(p);return l?V?l:l.toString():(mr||(mr=so()),pr||(pr=Ln()),p=pr.normalize(p),mr.readFileSync(p,V?null:"utf8"))},H2=function(p){var V=g0(p,!0);return V.buffer||(V=new Uint8Array(V)),P2(V.buffer),V},process.argv.length>1&&(E=process.argv[1].replace(/\\/g,"/")),M=process.argv.slice(2),typeof module<"u"&&(module.exports=R),process.on("uncaughtException",function(m){if(!(m instanceof y1))throw m}),process.on("unhandledRejection",U2),j=function(m){process.exit(m)},R.inspect=function(){return"[Emscripten Module object]"}):t0?(typeof read<"u"&&(g0=function(p){var V=Z2(p);return V?Nt(V):read(p)}),H2=function(p){var V;return V=Z2(p),V||(typeof readbuffer=="function"?new Uint8Array(readbuffer(p)):(V=read(p,"binary"),P2(typeof V=="object"),V))},typeof scriptArgs<"u"?M=scriptArgs:typeof arguments<"u"&&(M=arguments),typeof quit=="function"&&(j=function(m){quit(m)}),typeof print<"u"&&(typeof console>"u"&&(console={}),console.log=print,console.warn=console.error=typeof printErr<"u"?printErr:print)):(a||P)&&(P?$=self.location.href:document.currentScript&&($=document.currentScript.src),$.indexOf("blob:")!==0?$=$.substr(0,$.lastIndexOf("/")+1):$="",g0=function(p){try{var V=new XMLHttpRequest;return V.open("GET",p,!1),V.send(null),V.responseText}catch(g){var l=Z2(p);if(l)return Nt(l);throw g}},P&&(H2=function(p){try{var V=new XMLHttpRequest;return V.open("GET",p,!1),V.responseType="arraybuffer",V.send(null),new Uint8Array(V.response)}catch(g){var l=Z2(p);if(l)return l;throw g}}),Hr=function(p,V,l){var g=new XMLHttpRequest;g.open("GET",p,!0),g.responseType="arraybuffer",g.onload=function(){if(g.status==200||g.status==0&&g.response){V(g.response);return}var Z=Z2(p);if(Z){V(Z.buffer);return}l()},g.onerror=l,g.send(null)},Je=function(m){document.title=m});var Ye=R.print||console.log.bind(console),Qr=R.printErr||console.warn.bind(console);for(T in w)w.hasOwnProperty(T)&&(R[T]=w[T]);w=null,R.arguments&&(M=R.arguments),R.thisProgram&&(E=R.thisProgram),R.quit&&(j=R.quit);var A2=16;function Q2(m){var p=N0[Ee>>2],V=p+m+15&-16;return N0[Ee>>2]=V,p}function p2(m){switch(m){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(m[m.length-1]==="*")return 4;if(m[0]==="i"){var p=Number(m.substr(1));return P2(p%8===0,"getNativeTypeSize invalid bits "+p+", type "+m),p/8}else return 0}}}function D2(m){D2.shown||(D2.shown={}),D2.shown[m]||(D2.shown[m]=1,Qr(m))}var nt=1,Yv=new Array(0),xv={};function _v(m,p,V){return V&&V.length?R["dynCall_"+m].apply(null,[p].concat(V)):R["dynCall_"+m].call(null,p)}var tt=0,Ro=function(m){tt=m},Vo=function(){return tt},it=8,Fo;R.wasmBinary&&(Fo=R.wasmBinary);var At;R.noExitRuntime&&(At=R.noExitRuntime);function Ev(m,p,V,l){switch(V=V||"i8",V.charAt(V.length-1)==="*"&&(V="i32"),V){case"i1":v2[m>>0]=p;break;case"i8":v2[m>>0]=p;break;case"i16":d2[m>>1]=p;break;case"i32":N0[m>>2]=p;break;case"i64":je=[p>>>0,(L2=p,+Ho(L2)>=1?L2>0?(Po(+Do(L2/4294967296),4294967295)|0)>>>0:~~+Qo((L2-+(~~L2>>>0))/4294967296)>>>0:0)],N0[m>>2]=je[0],N0[m+4>>2]=je[1];break;case"float":xe[m>>2]=p;break;case"double":_e[m>>3]=p;break;default:U2("invalid type for setValue: "+V)}}var ot=!1,wo=0;function P2(m,p){m||U2("Assertion failed: "+p)}function ko(m){var p=R["_"+m];return P2(p,"Cannot call unknown function "+m+", make sure it is exported"),p}function Sv(m,p,V,l,g){var e={string:function(K){var h0=0;if(K!=null&&K!==0){var W0=(K.length<<2)+1;h0=zt(W0),lt(K,h0,W0)}return h0},array:function(K){var h0=zt(K.length);return Bo(K,h0),h0}};function Z(K){return p==="string"?ut(K):p==="boolean"?Boolean(K):K}var G=ko(m),Y=[],J=0;if(l)for(var d=0;d<l.length;d++){var b=e[V[d]];b?(J===0&&(J=p1()),Y[d]=b(l[d])):Y[d]=l[d]}var A0=G.apply(null,Y);return A0=Z(A0),J!==0&&m1(J),A0}var jv=3,ft=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function Wo(m,p,V){for(var l=p+V,g=p;m[g]&&!(g>=l);)++g;if(g-p>16&&m.subarray&&ft)return ft.decode(m.subarray(p,g));for(var e="";p<g;){var Z=m[p++];if(!(Z&128)){e+=String.fromCharCode(Z);continue}var G=m[p++]&63;if((Z&224)==192){e+=String.fromCharCode((Z&31)<<6|G);continue}var Y=m[p++]&63;if((Z&240)==224?Z=(Z&15)<<12|G<<6|Y:Z=(Z&7)<<18|G<<12|Y<<6|m[p++]&63,Z<65536)e+=String.fromCharCode(Z);else{var J=Z-65536;e+=String.fromCharCode(55296|J>>10,56320|J&1023)}}return e}function ut(m,p){return m?Wo(U0,m,p):""}function Xo(m,p,V,l){if(!(l>0))return 0;for(var g=V,e=V+l-1,Z=0;Z<m.length;++Z){var G=m.charCodeAt(Z);if(G>=55296&&G<=57343){var Y=m.charCodeAt(++Z);G=65536+((G&1023)<<10)|Y&1023}if(G<=127){if(V>=e)break;p[V++]=G}else if(G<=2047){if(V+1>=e)break;p[V++]=192|G>>6,p[V++]=128|G&63}else if(G<=65535){if(V+2>=e)break;p[V++]=224|G>>12,p[V++]=128|G>>6&63,p[V++]=128|G&63}else{if(V+3>=e)break;p[V++]=240|G>>18,p[V++]=128|G>>12&63,p[V++]=128|G>>6&63,p[V++]=128|G&63}}return p[V]=0,V-g}function lt(m,p,V){return Xo(m,U0,p,V)}function go(m){for(var p=0,V=0;V<m.length;++V){var l=m.charCodeAt(V);l>=55296&&l<=57343&&(l=65536+((l&1023)<<10)|m.charCodeAt(++V)&1023),l<=127?++p:l<=2047?p+=2:l<=65535?p+=3:p+=4}return p}var ct=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function Uo(m,p){for(var V=m,l=V>>1,g=l+p/2;!(l>=g)&&Dr[l];)++l;if(V=l<<1,V-m>32&&ct)return ct.decode(U0.subarray(m,V));for(var e=0,Z="";;){var G=d2[m+e*2>>1];if(G==0||e==p/2)return Z;++e,Z+=String.fromCharCode(G)}}function To(m,p,V){if(V===void 0&&(V=2147483647),V<2)return 0;V-=2;for(var l=p,g=V<m.length*2?V/2:m.length,e=0;e<g;++e){var Z=m.charCodeAt(e);d2[p>>1]=Z,p+=2}return d2[p>>1]=0,p-l}function Go(m){return m.length*2}function No(m,p){for(var V=0,l="";!(V>=p/4);){var g=N0[m+V*4>>2];if(g==0)break;if(++V,g>=65536){var e=g-65536;l+=String.fromCharCode(55296|e>>10,56320|e&1023)}else l+=String.fromCharCode(g)}return l}function zo(m,p,V){if(V===void 0&&(V=2147483647),V<4)return 0;for(var l=p,g=l+V-4,e=0;e<m.length;++e){var Z=m.charCodeAt(e);if(Z>=55296&&Z<=57343){var G=m.charCodeAt(++e);Z=65536+((Z&1023)<<10)|G&1023}if(N0[p>>2]=Z,p+=4,p+4>g)break}return N0[p>>2]=0,p-l}function Mo(m){for(var p=0,V=0;V<m.length;++V){var l=m.charCodeAt(V);l>=55296&&l<=57343&&++V,p+=4}return p}function Bo(m,p){v2.set(m,p)}function Cv(m,p,V){for(var l=0;l<m.length;++l)v2[p++>>0]=m.charCodeAt(l);V||(v2[p>>0]=0)}var X2,v2,U0,d2,Dr,N0,o2,xe,_e;function Jo(m){X2=m,R.HEAP8=v2=new Int8Array(m),R.HEAP16=d2=new Int16Array(m),R.HEAP32=N0=new Int32Array(m),R.HEAPU8=U0=new Uint8Array(m),R.HEAPU16=Dr=new Uint16Array(m),R.HEAPU32=o2=new Uint32Array(m),R.HEAPF32=xe=new Float32Array(m),R.HEAPF64=_e=new Float64Array(m)}var Ov=22384,Yo=5265264,Ee=22176,st=R.INITIAL_MEMORY||167772160;R.buffer?X2=R.buffer:X2=new ArrayBuffer(st),st=X2.byteLength,Jo(X2),N0[Ee>>2]=Yo;function Pr(m){for(;m.length>0;){var p=m.shift();if(typeof p=="function"){p(R);continue}var V=p.func;typeof V=="number"?p.arg===void 0?R.dynCall_v(V):R.dynCall_vi(V,p.arg):V(p.arg===void 0?null:p.arg)}}var ht=[],mt=[],xo=[],pt=[],_o=!1,Eo=!1;function So(){if(R.preRun)for(typeof R.preRun=="function"&&(R.preRun=[R.preRun]);R.preRun.length;)Io(R.preRun.shift());Pr(ht)}function jo(){_o=!0,Pr(mt)}function Co(){Pr(xo)}function Iv(){Eo=!0}function Oo(){if(R.postRun)for(typeof R.postRun=="function"&&(R.postRun=[R.postRun]);R.postRun.length;)ao(R.postRun.shift());Pr(pt)}function Io(m){ht.unshift(m)}function ao(m){pt.unshift(m)}var Ho=Math.abs,Qo=Math.ceil,Do=Math.floor,Po=Math.min,g2=0,Se=null,vr=null;function Lo(m){g2++,R.monitorRunDependencies&&R.monitorRunDependencies(g2)}function $o(m){if(g2--,R.monitorRunDependencies&&R.monitorRunDependencies(g2),g2==0&&(Se!==null&&(clearInterval(Se),Se=null),vr)){var p=vr;vr=null,p()}}R.preloadedImages={},R.preloadedAudios={};function U2(m){throw R.onAbort&&R.onAbort(m),m+="",Ye(m),Qr(m),ot=!0,wo=1,m="abort("+m+"). Build with -s ASSERTIONS=1 for more info.",m}var P0=null;function qo(m,p){return String.prototype.startsWith?m.startsWith(p):m.indexOf(p)===0}var vt="data:application/octet-stream;base64,";function yt(m){return qo(m,vt)}var av="file://",L2,je;mt.push({func:function(){h1()}}),P0="data:application/octet-stream;base64,AAAAAAAAAAAPDg0MCwoJCA4AAQMGCgoJDQECBAcLCwoMAwQFCAwMCwsGBwgJDQ0MCgoLDA0ODg0JCgsMDQ4PDggJCgsMDQ4PAAECAwQFBgcBAAECAwQFBgIBAAECAwQFAwIBAAECAwQEAwIBAAECAwUEAwIBAAECBgUEAwIBAAEHBgUEAwIBAMgPAAAoDQAAEBAAACAQAADIDwAAUA0AABAQAAAgEAAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAAAAAAAAAAAASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAAAAAADgFgAAmRgAAGAQAAAAAAAA4BYAAEIZAABgEAAAAAAAAOAWAAAqGgAASA8AAAAAAAC4FgAANBsAAOAWAACfGgAAMAoAAAAAAADgFgAAaRsAAEgPAAAAAAAA4BYAAIobAABIDwAAAAAAALgWAAAPHAAA4BYAAHwcAABIDwAAAAAAAOAWAACVHAAASA8AAAAAAADgFgAAHh0AAEgPAAAAAAAA4BYAAHcdAABIDwAAAAAAAOAWAACQHQAASA8AAAAAAADgFgAAQh4AAEgPAAAAAAAA4BYAAIceAABgEAAAAAAAAOAWAACkHwAASA8AAAAAAAC4FgAAZyAAAOAWAADkHwAA8AoAAAAAAADgFgAAjyAAAGAQAAAAAAAAuBYAAMMiAADgFgAAAiIAABgLAAAAAAAA4BYAAOEiAABgEAAAAAAAAOAWAADQJAAAGAsAAAAAAADgFgAAkSUAAGAQAAAAAAAA4BYAAIAnAAAYCwAAAAAAAOAWAAA9KAAAYBAAAAAAAADgFgAAJCoAABgLAAAAAAAA4BYAAOkqAABgEAAAAAAAAOAWAADgLAAA8AoAAAAAAADgFgAAui0AAGAQAAAAAAAA4BYAANsvAADwCgAAAAAAAOAWAADTMAAAYBAAAAAAAADgFgAAMDMAAPAKAAAAAAAA4BYAACQ0AABgEAAAAAAAAOAWAAB5NgAA8AoAAAAAAADgFgAAizcAAGAQAAAAAAAA4BYAABw6AABgEAAAAAAAAOAWAACdOgAAYBAAAAAAAADgFgAAXjsAAPAKAAAAAAAA4BYAALU7AABgEAAAAAAAAOAWAADMPAAAGAsAAAAAAADgFgAATz0AAGAQAAAAAAAA4BYAAL4+AAAYCwAAAAAAAOAWAABBPwAAYBAAAAAAAADgFgAAsEAAABgLAAAAAAAA4BYAADNBAABgEAAAAAAAAOAWAACiQgAAGAsAAAAAAADgFgAAJUMAAGAQAAAAAAAA4BYAAJREAAAYCwAAAAAAAOAWAAAXRQAAYBAAAAAAAADgFgAAhkYAABgLAAAAAAAA4BYAAAlHAABgEAAAAAAAALgWAAB4SAAAiBcAAIBIAAAAAAAAIA0AAIgXAACJSAAAAQAAACANAAC4FgAAqkgAAIgXAAC6SAAAAAAAAEgNAACIFwAAy0gAAAEAAABIDQAAuBYAABhMAAC4FgAAN0wAALgWAABWTAAAuBYAAHVMAAC4FgAAlEwAALgWAACzTAAAuBYAANJMAAC4FgAA8UwAALgWAAAQTQAAuBYAAC9NAAC4FgAATk0AALgWAABtTQAAuBYAAIxNAACkFwAAn00AAAAAAAABAAAA8A0AAAAAAAC4FgAA4U0AAKQXAAAHTgAAAAAAAAEAAADwDQAAAAAAAKQXAABJTgAAAAAAAAEAAADwDQAAAAAAAKQXAACITgAAAAAAAAEAAADwDQAAAAAAAKQXAADHTgAAAAAAAAEAAADwDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALgWAADNTwAA4BYAAC1QAAAADwAAAAAAAOAWAADaTwAAEA8AAAAAAAC4FgAA+08AAOAWAAAIUAAA8A4AAAAAAADgFgAAhlAAAOgOAAAAAAAA4BYAAJNQAADoDgAAAAAAAOAWAACjUAAA6A4AAAAAAADgFgAAtVAAADgPAAAAAAAA4BYAAMZQAAA4DwAAAAAAAOAWAADXUAAAAA8AAAAAAADgFgAA+VAAAHgPAAAAAAAA4BYAAB1RAAAADwAAAAAAAOAWAABCUQAAeA8AAAAAAADgFgAAjlEAAAAPAAAAAAAAbBcAALZRAABsFwAAuFEAAGwXAAC7UQAAbBcAAL1RAABsFwAAv1EAAGwXAADBUQAAbBcAAMNRAABsFwAAxVEAAGwXAADHUQAAbBcAAMlRAABsFwAAy1EAAGwXAADNUQAAbBcAAM9RAABsFwAA0VEAAOAWAADTUQAA8A4AAAAAAADgFgAARlIAAOgOAAAAAAAAuBYAAGJSAACkFwAAe1IAAAAAAAABAAAAWBAAAAAAAADgFgAA9FIAAIgQAAAAAAAA4BYAABdTAACYEAAAAAAAALgWAAAuUwAA4BYAAHBTAACIEAAAAAAAAOAWAACSUwAASA8AAAAAAAAAAAAAAAoAAAEAAAACAAAAAwAAAAEAAAAEAAAAAAAAABAKAAABAAAABQAAAAYAAAACAAAABwAAAAAAAAAgCgAACAAAAAkAAAABAAAAAAAAADgKAAAKAAAACwAAAAIAAAABAAAADAAAAA0AAAACAAAAAwAAAAMAAAAAAAAASAoAAAgAAAAOAAAAAQAAAAAAAABYCgAACAAAAA8AAAABAAAAAAAAAIAKAAAIAAAAEAAAAAEAAAAAAAAAcAoAAAgAAAARAAAAAQAAAAAAAACQCgAACAAAABIAAAABAAAAAAAAAKAKAAAIAAAAEwAAAAEAAAAAAAAAsAoAAAgAAAAUAAAAAQAAAAAAAADACgAACAAAABUAAAABAAAAAAAAANAKAAABAAAAFgAAABcAAAAEAAAAGAAAAAAAAADgCgAACAAAABkAAAABAAAAAAAAAPgKAAAFAAAAGgAAABsAAAAAAAAA8AoAAAEAAAAcAAAAHQAAAAAAAAAICwAAAQAAAB4AAAAfAAAABgAAACAAAAAAAAAAIAsAACEAAAAiAAAABwAAAAgAAAAAAAAAGAsAACMAAAAkAAAABwAAAAkAAAAAAAAAMAsAAAEAAAAlAAAAJgAAAAoAAAAnAAAAAAAAAEALAAAoAAAAKQAAAAcAAAALAAAAAAAAAFALAAABAAAAKgAAACsAAAAMAAAALAAAAAAAAABgCwAALQAAAC4AAAAHAAAADQAAAAAAAABwCwAAAQAAAC8AAAAwAAAADgAAADEAAAAAAAAAgAsAADIAAAAzAAAABwAAAA8AAAAAAAAAkAsAAAEAAAA0AAAANQAAABAAAAA2AAAAAAAAAKALAAARAAAANwAAADgAAAAAAAAAsAsAAAEAAAA5AAAAOgAAABIAAAA7AAAAAAAAAMALAAATAAAAPAAAAD0AAAAAAAAA0AsAAAEAAAA+AAAAPwAAABQAAABAAAAAAAAAAOALAAAVAAAAQQAAAEIAAAAAAAAA8AsAAAEAAABDAAAARAAAABYAAABFAAAAAAAAAAAMAAAXAAAARgAAAEcAAAAAAAAAEAwAAAEAAABIAAAASQAAABgAAABKAAAAAAAAACAMAAABAAAASwAAAEwAAAAZAAAATQAAAAAAAAAwDAAAAQAAAE4AAABPAAAAGgAAAFAAAAAAAAAAQAwAABsAAABRAAAAUgAAAAAAAABQDAAAAQAAAFMAAABUAAAAHAAAAFUAAAAAAAAAYAwAAFYAAABXAAAABwAAAB0AAAAAAAAAcAwAAAEAAABYAAAAWQAAAB4AAABaAAAAAAAAAIAMAABbAAAAXAAAAAcAAAAfAAAAAAAAAJAMAAABAAAAXQAAAF4AAAAgAAAAXwAAAAAAAACgDAAAYAAAAGEAAAAHAAAAIQAAAAAAAACwDAAAAQAAAGIAAABjAAAAIgAAAGQAAAAAAAAAwAwAAGUAAABmAAAABwAAACMAAAAAAAAA0AwAAAEAAABnAAAAaAAAACQAAABpAAAAAAAAAOAMAABqAAAAawAAAAcAAAAlAAAAAAAAAPAMAAABAAAAbAAAAG0AAAAmAAAAbgAAAAAAAAAADQAAbwAAAHAAAAAHAAAAJwAAAAAAAAAQDQAAAQAAAHEAAAByAAAAKAAAAHMAAAAoDQAAyA8AACgNAAAIEAAAEBAAACgNAABQDQAAyA8AAFANAAAgEAAAyA8AAFANAAAIEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwDgAAdAAAAHUAAAB2AAAAdwAAAAIAAAABAAAAAQAAAAEAAAAAAAAAGA8AAHQAAAB4AAAAdgAAAHcAAAACAAAAAgAAAAIAAAACAAAAAAAAACgPAAB5AAAAegAAAAQAAAAAAAAAOA8AAHsAAAB8AAAABQAAAAAAAABIDwAACAAAAH0AAAABAAAAAAAAAFgPAAB7AAAAfgAAAAUAAAAAAAAAaA8AAHsAAAB/AAAABQAAAAAAAAC4DwAAdAAAAIAAAAB2AAAAdwAAAAMAAAAAAAAAiA8AAHQAAACBAAAAdgAAAHcAAAAEAAAAAAAAADgQAAB0AAAAggAAAHYAAAB3AAAAAgAAAAMAAAADAAAAAwAAAAAAAABIEAAAgwAAAIQAAAAGAAAAAAAAAHgQAACFAAAAhgAAAAcAAAABAAAABQAAAAYAAAACAAAAAAAAAKAQAACFAAAAhwAAAAgAAAADAAAABQAAAAYAAAAEAAAA4BcAAAQYAAAAAAAAsBAAAIgAAACJAAAAAQAAAExBU1ppcABvcGVuAGdldFBvaW50AGdldENvdW50AER5bmFtaWNMQVNaaXAAYWRkRmllbGRGbG9hdGluZwBhZGRGaWVsZFNpZ25lZABhZGRGaWVsZFVuc2lnbmVkAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVOU185YWxsb2NhdG9ySVM3X0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFAExBU0YATjZsYXN6aXAxM2ludmFsaWRfbWFnaWNFAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUARmlsZSBtYWdpYyBpcyBub3QgdmFsaWQATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk42bGFzemlwMmlvNnJlYWRlcjEwYmFzaWNfZmlsZUlOUzJfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRTExX3ZhbGlkYXRvcnNFdkVVbFJOUzNfNmhlYWRlckVFX05TXzlhbGxvY2F0b3JJU0JfRUVGdlNBX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONmxhc3ppcDJpbzZoZWFkZXJFRUVFAE42bGFzemlwMjFvbGRfc3R5bGVfY29tcHJlc3Npb25FAE42bGFzemlwMTRub3RfY29tcHJlc3NlZEUAVGhlIGZpbGUgc2VlbXMgdG8gaGF2ZSBvbGQgc3R5bGUgY29tcHJlc3Npb24gd2hpY2ggaXMgbm90IHN1cHBvcnRlZABUaGUgZmlsZSBkb2Vzbid0IHNlZW0gdG8gYmUgY29tcHJlc3NlZABaTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUUxMV92YWxpZGF0b3JzRXZFVWxSTlMwXzZoZWFkZXJFRV8AbGFzemlwIGVuY29kZWQATjZsYXN6aXAxM25vX2xhc3ppcF92bHJFAE42bGFzemlwMjVsYXN6aXBfZm9ybWF0X3Vuc3VwcG9ydGVkRQBPbmx5IExBU3ppcCBQT0lOVFdJU0UgQ0hVTktFRCBkZWNvbXByZXNzb3IgaXMgc3VwcG9ydGVkAE5vIExBU3ppcCBWTFIgd2FzIGZvdW5kIGluIHRoZSBWTFJzIHNlY3Rpb24ATjZsYXN6aXAyMmNodW5rX3RhYmxlX3JlYWRfZXJyb3JFAENodW5rIHRhYmxlIG9mZnNldCA9PSAtMSBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZQBONmxhc3ppcDEzbm90X3N1cHBvcnRlZEUATjZsYXN6aXAyNnVua25vd25fY2h1bmtfdGFibGVfZm9ybWF0RQBjaHVua19zaXplID09IHVpbnQubWF4IGlzIG5vdCBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgBUaGVyZSB3YXMgYSBwcm9ibGVtIHJlYWRpbmcgdGhlIGNodW5rIHRhYmxlAFRoZSBjaHVuayB0YWJsZSB2ZXJzaW9uIG51bWJlciBpcyB1bmtub3duAE42bGFzemlwMTFlbmRfb2ZfZmlsZUUAUmVhY2hlZCBFbmQgb2YgZmlsZQBJbnZhbGlkIG51bWJlciBvZiBzeW1ib2xzAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFTlNfOWFsbG9jYXRvcklTOV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwMTl1bmtub3duX3NjaGVtYV90eXBlRQBUaGUgTEFaIHNjaGVtYSBpcyBub3QgcmVjb2duaXplZABONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMGR5bmFtaWNfZGVjb21wcmVzc29yRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVOU185YWxsb2NhdG9ySVNDX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNDX0VFRUVFRQBONmxhc3ppcDdmb3JtYXRzMTBiYXNlX2ZpZWxkRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF81ZmllbGRJTlMwXzNsYXM3Z3BzdGltZUVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczdncHN0aW1lRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0lfRUVOU185YWxsb2NhdG9ySVNJX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN2dwc3RpbWVFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfNWZpZWxkSU5TMF8zbGFzM3JnYkVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczNyZ2JFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXMzcmdiRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczEwZXh0cmFieXRlc0VOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVNJX0VFTlNfOWFsbG9jYXRvcklTSV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRUVFRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTS19FRU5TXzlhbGxvY2F0b3JJU0tfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNEX0VFRUVOU0JfSU5TQ183Z3BzdGltZUVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU05fRUVOU185YWxsb2NhdG9ySVNOX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMF81ZmllbGRJTlMwXzNsYXM3cG9pbnQxMEVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRF9FRUVFTlNCX0lOU0NfM3JnYkVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU0pfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTTl9FRU5TXzlhbGxvY2F0b3JJU05fRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRU5TRF9JTlNFXzNyZ2JFTlNHX0lTSl9FRUVFRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRU5TQl9JTlNDXzdncHN0aW1lRU5TRV9JU0hfRUVFRU5TQl9JTlNDXzNyZ2JFTlNFX0lTS19FRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRl9FRUVFTlNEX0lOU0VfN2dwc3RpbWVFTlNHX0lTSl9FRUVFTlNEX0lOU0VfM3JnYkVOU0dfSVNNX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU1FfRUVOU185YWxsb2NhdG9ySVNRX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU01fRUVFRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUDEwYnVmX3N0cmVhbU5TXzE0ZGVmYXVsdF9kZWxldGVJUzFfRUVOU185YWxsb2NhdG9ySVMxX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJMTBidWZfc3RyZWFtRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNV9FRU5TXzlhbGxvY2F0b3JJUzVfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM4X0VFTlNfOWFsbG9jYXRvcklTOF9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWlFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWlOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElpRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElpTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJak5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWpFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWpOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElqRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElqTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJakVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJYU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWFFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWFOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElhRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElhTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJYUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJc05TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXNFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXNOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElzRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElzTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJc0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWhFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWhOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEloRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEloTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaEVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJdE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXRFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXROUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEl0RUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEl0TlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJdEVFRUVFRUVFADZMQVNaaXAAUDZMQVNaaXAAUEs2TEFTWmlwAGlpAHYAdmkAdmlpaWkAdmlpaQBpaWkAMTNEeW5hbWljTEFTWmlwAFAxM0R5bmFtaWNMQVNaaXAAUEsxM0R5bmFtaWNMQVNaaXAAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOMTBlbXNjcmlwdGVuM3ZhbEUATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ALgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2MAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIwX19mdW5jdGlvbl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyOV9fcG9pbnRlcl90b19tZW1iZXJfdHlwZV9pbmZvRQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAF9fY3hhX2d1YXJkX2FjcXVpcmUgZGV0ZWN0ZWQgcmVjdXJzaXZlIGluaXRpYWxpemF0aW9uAHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwATlN0M19fMjE3YmFkX2Z1bmN0aW9uX2NhbGxFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQBtdXRleCBsb2NrIGZhaWxlZABiYXNpY19zdHJpbmcAdW5zcGVjaWZpZWQgZ2VuZXJpY19jYXRlZ29yeSBlcnJvcgBVbmtub3duIGVycm9yICVkAGdlbmVyaWMATlN0M19fMjI0X19nZW5lcmljX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJfX2RvX21lc3NhZ2VFAE5TdDNfXzIxNGVycm9yX2NhdGVnb3J5RQB1bnNwZWNpZmllZCBzeXN0ZW1fY2F0ZWdvcnkgZXJyb3IAc3lzdGVtAE5TdDNfXzIyM19fc3lzdGVtX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJzeXN0ZW1fZXJyb3JFADogAHZlY3Rvcg==";var Ko=22368;function Hv(m){return m}function Qv(m){var p=/\b__Z[\w\d_]+/g;return m.replace(p,function(V){var l=V;return V===l?V:l+" ["+V+"]"})}function Dv(){var m=new Error;if(!m.stack){try{throw new Error}catch(p){m=p}if(!m.stack)return"(no stack trace available)"}return m.stack.toString()}function bo(m){return Ke(m)}var $2={},rf=[];function Zt(m){if(m){var p=$2[m];p.refcount++}}function Rt(m){if(!m||$2[m])return m;for(var p in $2)for(var V=+p,l=$2[V].adjusted,g=l.length,e=0;e<g;e++)if(l[e]===m)return V;return m}function ef(m){var p=$2[m];return p&&!p.caught&&(p.caught=!0,wr.uncaught_exceptions--),p&&(p.rethrown=!1),rf.push(m),Zt(Rt(m)),m}var nf=0;function tf(m,p,V){throw $2[m]={ptr:m,adjusted:[m],type:p,destructor:V,refcount:0,caught:!1,rethrown:!1},nf=m,"uncaught_exception"in wr?wr.uncaught_exceptions++:wr.uncaught_exceptions=1,m}function Af(){return wr.uncaught_exceptions}function of(){}function Ce(m){switch(m){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+m)}}function ff(){for(var m=new Array(256),p=0;p<256;++p)m[p]=String.fromCharCode(p);Vt=m}var Vt=void 0;function _0(m){for(var p="",V=m;U0[V];)p+=Vt[U0[V++]];return p}var q2={},K2={},Lr={},uf=48,lf=57;function Oe(m){if(m===void 0)return"_unknown";m=m.replace(/[^a-zA-Z0-9_]/g,"$");var p=m.charCodeAt(0);return p>=uf&&p<=lf?"_"+m:m}function Ie(m,p){return m=Oe(m),new Function("body","return function "+m+`() {
|
|
8
8
|
"use strict"; return body.apply(this, arguments);
|
|
9
9
|
};
|
|
10
|
-
`)(p)}function
|
|
11
|
-
`+g.replace(/^Error(:[^\n]*)?\n/,""))});return V.prototype=Object.create(m.prototype),V.prototype.constructor=V,V.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},V}var b2=void 0;function i0(m){throw new b2(m)}var
|
|
10
|
+
`)(p)}function ae(m,p){var V=Ie(p,function(l){this.name=p,this.message=l;var g=new Error(l).stack;g!==void 0&&(this.stack=this.toString()+`
|
|
11
|
+
`+g.replace(/^Error(:[^\n]*)?\n/,""))});return V.prototype=Object.create(m.prototype),V.prototype.constructor=V,V.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},V}var b2=void 0;function i0(m){throw new b2(m)}var Ft=void 0;function $r(m){throw new Ft(m)}function yr(m,p,V){m.forEach(function(G){Lr[G]=p});function l(G){var Y=V(G);Y.length!==m.length&&$r("Mismatched type converter count");for(var J=0;J<m.length;++J)f2(m[J],Y[J])}var g=new Array(p.length),e=[],Z=0;p.forEach(function(G,Y){K2.hasOwnProperty(G)?g[Y]=K2[G]:(e.push(G),q2.hasOwnProperty(G)||(q2[G]=[]),q2[G].push(function(){g[Y]=K2[G],++Z,Z===e.length&&l(g)}))}),e.length===0&&l(g)}function f2(m,p,V){if(V=V||{},!("argPackAdvance"in p))throw new TypeError("registerType registeredInstance requires argPackAdvance");var l=p.name;if(m||i0('type "'+l+'" must have a positive integer typeid pointer'),K2.hasOwnProperty(m)){if(V.ignoreDuplicateRegistrations)return;i0("Cannot register type '"+l+"' twice")}if(K2[m]=p,delete Lr[m],q2.hasOwnProperty(m)){var g=q2[m];delete q2[m],g.forEach(function(e){e()})}}function cf(m,p,V,l,g){var e=Ce(V);p=_0(p),f2(m,{name:p,fromWireType:function(Z){return!!Z},toWireType:function(Z,G){return G?l:g},argPackAdvance:8,readValueFromPointer:function(Z){var G;if(V===1)G=v2;else if(V===2)G=d2;else if(V===4)G=N0;else throw new TypeError("Unknown boolean type size: "+p);return this.fromWireType(G[Z>>e])},destructorFunction:null})}function sf(m){if(!(this instanceof y2)||!(m instanceof y2))return!1;for(var p=this.$$.ptrType.registeredClass,V=this.$$.ptr,l=m.$$.ptrType.registeredClass,g=m.$$.ptr;p.baseClass;)V=p.upcast(V),p=p.baseClass;for(;l.baseClass;)g=l.upcast(g),l=l.baseClass;return p===l&&V===g}function hf(m){return{count:m.count,deleteScheduled:m.deleteScheduled,preservePointerOnDelete:m.preservePointerOnDelete,ptr:m.ptr,ptrType:m.ptrType,smartPtr:m.smartPtr,smartPtrType:m.smartPtrType}}function He(m){function p(V){return V.$$.ptrType.registeredClass.name}i0(p(m)+" instance already deleted")}var Qe=!1;function wt(m){}function mf(m){m.smartPtr?m.smartPtrType.rawDestructor(m.smartPtr):m.ptrType.registeredClass.rawDestructor(m.ptr)}function kt(m){m.count.value-=1;var p=m.count.value===0;p&&mf(m)}function Zr(m){return typeof FinalizationGroup>"u"?(Zr=function(p){return p},m):(Qe=new FinalizationGroup(function(p){for(var V=p.next();!V.done;V=p.next()){var l=V.value;l.ptr?kt(l):console.warn("object already deleted: "+l.ptr)}}),Zr=function(p){return Qe.register(p,p.$$,p.$$),p},wt=function(p){Qe.unregister(p.$$)},Zr(m))}function pf(){if(this.$$.ptr||He(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var m=Zr(Object.create(Object.getPrototypeOf(this),{$$:{value:hf(this.$$)}}));return m.$$.count.value+=1,m.$$.deleteScheduled=!1,m}function vf(){this.$$.ptr||He(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&i0("Object already scheduled for deletion"),wt(this),kt(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function yf(){return!this.$$.ptr}var Rr=void 0,Vr=[];function De(){for(;Vr.length;){var m=Vr.pop();m.$$.deleteScheduled=!1,m.delete()}}function Zf(){return this.$$.ptr||He(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&i0("Object already scheduled for deletion"),Vr.push(this),Vr.length===1&&Rr&&Rr(De),this.$$.deleteScheduled=!0,this}function Rf(){y2.prototype.isAliasOf=sf,y2.prototype.clone=pf,y2.prototype.delete=vf,y2.prototype.isDeleted=yf,y2.prototype.deleteLater=Zf}function y2(){}var Wt={};function Xt(m,p,V){if(m[p].overloadTable===void 0){var l=m[p];m[p]=function(){return m[p].overloadTable.hasOwnProperty(arguments.length)||i0("Function '"+V+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+m[p].overloadTable+")!"),m[p].overloadTable[arguments.length].apply(this,arguments)},m[p].overloadTable=[],m[p].overloadTable[l.argCount]=l}}function Vf(m,p,V){R.hasOwnProperty(m)?((V===void 0||R[m].overloadTable!==void 0&&R[m].overloadTable[V]!==void 0)&&i0("Cannot register public name '"+m+"' twice"),Xt(R,m,m),R.hasOwnProperty(V)&&i0("Cannot register multiple overloads of a function with the same number of arguments ("+V+")!"),R[m].overloadTable[V]=p):(R[m]=p,V!==void 0&&(R[m].numArguments=V))}function Ff(m,p,V,l,g,e,Z,G){this.name=m,this.constructor=p,this.instancePrototype=V,this.rawDestructor=l,this.baseClass=g,this.getActualType=e,this.upcast=Z,this.downcast=G,this.pureVirtualFunctions=[]}function Pe(m,p,V){for(;p!==V;)p.upcast||i0("Expected null or instance of "+V.name+", got an instance of "+p.name),m=p.upcast(m),p=p.baseClass;return m}function wf(m,p){if(p===null)return this.isReference&&i0("null is not a valid "+this.name),0;p.$$||i0('Cannot pass "'+T2(p)+'" as a '+this.name),p.$$.ptr||i0("Cannot pass deleted object as a pointer of type "+this.name);var V=p.$$.ptrType.registeredClass,l=Pe(p.$$.ptr,V,this.registeredClass);return l}function kf(m,p){var V;if(p===null)return this.isReference&&i0("null is not a valid "+this.name),this.isSmartPointer?(V=this.rawConstructor(),m!==null&&m.push(this.rawDestructor,V),V):0;p.$$||i0('Cannot pass "'+T2(p)+'" as a '+this.name),p.$$.ptr||i0("Cannot pass deleted object as a pointer of type "+this.name),!this.isConst&&p.$$.ptrType.isConst&&i0("Cannot convert argument of type "+(p.$$.smartPtrType?p.$$.smartPtrType.name:p.$$.ptrType.name)+" to parameter type "+this.name);var l=p.$$.ptrType.registeredClass;if(V=Pe(p.$$.ptr,l,this.registeredClass),this.isSmartPointer)switch(p.$$.smartPtr===void 0&&i0("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:p.$$.smartPtrType===this?V=p.$$.smartPtr:i0("Cannot convert argument of type "+(p.$$.smartPtrType?p.$$.smartPtrType.name:p.$$.ptrType.name)+" to parameter type "+this.name);break;case 1:V=p.$$.smartPtr;break;case 2:if(p.$$.smartPtrType===this)V=p.$$.smartPtr;else{var g=p.clone();V=this.rawShare(V,qe(function(){g.delete()})),m!==null&&m.push(this.rawDestructor,V)}break;default:i0("Unsupporting sharing policy")}return V}function Wf(m,p){if(p===null)return this.isReference&&i0("null is not a valid "+this.name),0;p.$$||i0('Cannot pass "'+T2(p)+'" as a '+this.name),p.$$.ptr||i0("Cannot pass deleted object as a pointer of type "+this.name),p.$$.ptrType.isConst&&i0("Cannot convert argument of type "+p.$$.ptrType.name+" to parameter type "+this.name);var V=p.$$.ptrType.registeredClass,l=Pe(p.$$.ptr,V,this.registeredClass);return l}function qr(m){return this.fromWireType(o2[m>>2])}function Xf(m){return this.rawGetPointee&&(m=this.rawGetPointee(m)),m}function df(m){this.rawDestructor&&this.rawDestructor(m)}function gf(m){m!==null&&m.delete()}function dt(m,p,V){if(p===V)return m;if(V.baseClass===void 0)return null;var l=dt(m,p,V.baseClass);return l===null?null:V.downcast(l)}function Uf(){return Object.keys(Fr).length}function Tf(){var m=[];for(var p in Fr)Fr.hasOwnProperty(p)&&m.push(Fr[p]);return m}function Gf(m){Rr=m,Vr.length&&Rr&&Rr(De)}function Nf(){R.getInheritedInstanceCount=Uf,R.getLiveInheritedInstances=Tf,R.flushPendingDeletes=De,R.setDelayFunction=Gf}var Fr={};function zf(m,p){for(p===void 0&&i0("ptr should not be undefined");m.baseClass;)p=m.upcast(p),m=m.baseClass;return p}function Mf(m,p){return p=zf(m,p),Fr[p]}function Kr(m,p){(!p.ptrType||!p.ptr)&&$r("makeClassHandle requires ptr and ptrType");var V=!!p.smartPtrType,l=!!p.smartPtr;return V!==l&&$r("Both smartPtrType and smartPtr must be specified"),p.count={value:1},Zr(Object.create(m,{$$:{value:p}}))}function Bf(m){var p=this.getPointee(m);if(!p)return this.destructor(m),null;var V=Mf(this.registeredClass,p);if(V!==void 0){if(V.$$.count.value===0)return V.$$.ptr=p,V.$$.smartPtr=m,V.clone();var l=V.clone();return this.destructor(m),l}function g(){return this.isSmartPointer?Kr(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:p,smartPtrType:this,smartPtr:m}):Kr(this.registeredClass.instancePrototype,{ptrType:this,ptr:m})}var e=this.registeredClass.getActualType(p),Z=Wt[e];if(!Z)return g.call(this);var G;this.isConst?G=Z.constPointerType:G=Z.pointerType;var Y=dt(p,this.registeredClass,G.registeredClass);return Y===null?g.call(this):this.isSmartPointer?Kr(G.registeredClass.instancePrototype,{ptrType:G,ptr:Y,smartPtrType:this,smartPtr:m}):Kr(G.registeredClass.instancePrototype,{ptrType:G,ptr:Y})}function Jf(){u2.prototype.getPointee=Xf,u2.prototype.destructor=df,u2.prototype.argPackAdvance=8,u2.prototype.readValueFromPointer=qr,u2.prototype.deleteObject=gf,u2.prototype.fromWireType=Bf}function u2(m,p,V,l,g,e,Z,G,Y,J,d){this.name=m,this.registeredClass=p,this.isReference=V,this.isConst=l,this.isSmartPointer=g,this.pointeeType=e,this.sharingPolicy=Z,this.rawGetPointee=G,this.rawConstructor=Y,this.rawShare=J,this.rawDestructor=d,!g&&p.baseClass===void 0?l?(this.toWireType=wf,this.destructorFunction=null):(this.toWireType=Wf,this.destructorFunction=null):this.toWireType=kf}function Yf(m,p,V){R.hasOwnProperty(m)||$r("Replacing nonexistant public symbol"),R[m].overloadTable!==void 0&&V!==void 0?R[m].overloadTable[V]=p:(R[m]=p,R[m].argCount=V)}function rr(m,p){m=_0(m);function V(e){for(var Z=[],G=1;G<m.length;++G)Z.push("a"+G);var Y="dynCall_"+m+"_"+p,J="return function "+Y+"("+Z.join(", ")+`) {
|
|
12
12
|
`;return J+=" return dynCall(rawFunction"+(Z.length?", ":"")+Z.join(", ")+`);
|
|
13
13
|
`,J+=`};
|
|
14
|
-
`,new Function("dynCall","rawFunction",J)(
|
|
15
|
-
if (arguments.length !== `+(
|
|
16
|
-
throwBindingError('function `+m+" called with ' + arguments.length + ' arguments, expected "+(
|
|
14
|
+
`,new Function("dynCall","rawFunction",J)(e,p)}var l=R["dynCall_"+m],g=V(l);return typeof g!="function"&&i0("unknown function pointer with signature "+m+": "+p),g}var gt=void 0;function xf(m){var p=s1(m),V=_0(p);return R2(p),V}function Le(m,p){var V=[],l={};function g(e){if(!l[e]&&!K2[e]){if(Lr[e]){Lr[e].forEach(g);return}V.push(e),l[e]=!0}}throw p.forEach(g),new gt(m+": "+V.map(xf).join([", "]))}function _f(m,p,V,l,g,e,Z,G,Y,J,d,b,A0){d=_0(d),e=rr(g,e),G&&(G=rr(Z,G)),J&&(J=rr(Y,J)),A0=rr(b,A0);var K=Oe(d);Vf(K,function(){Le("Cannot construct "+d+" due to unbound types",[l])}),yr([m,p,V],l?[l]:[],function(h0){h0=h0[0];var W0,H0;l?(W0=h0.registeredClass,H0=W0.instancePrototype):H0=y2.prototype;var G2=Ie(K,function(){if(Object.getPrototypeOf(this)!==re)throw new b2("Use 'new' to construct "+d);if(L.constructor_body===void 0)throw new b2(d+" has no accessible constructor");var r0=L.constructor_body[arguments.length];if(r0===void 0)throw new b2("Tried to invoke ctor of "+d+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(L.constructor_body).toString()+") parameters instead!");return r0.apply(this,arguments)}),re=Object.create(H0,{constructor:{value:G2}});G2.prototype=re;var L=new Ff(d,G2,re,A0,W0,e,G,J),l2=new u2(d,L,!0,!1,!1),T0=new u2(d+"*",L,!1,!1,!1),f0=new u2(d+" const*",L,!1,!0,!1);return Wt[m]={pointerType:T0,constPointerType:f0},Yf(K,G2),[l2,T0,f0]})}function Ut(m,p){for(var V=[],l=0;l<m;l++)V.push(N0[(p>>2)+l]);return V}function Tt(m){for(;m.length;){var p=m.pop(),V=m.pop();V(p)}}function Ef(m,p,V,l,g,e){P2(p>0);var Z=Ut(p,V);g=rr(l,g);var G=[e],Y=[];yr([],[m],function(J){J=J[0];var d="constructor "+J.name;if(J.registeredClass.constructor_body===void 0&&(J.registeredClass.constructor_body=[]),J.registeredClass.constructor_body[p-1]!==void 0)throw new b2("Cannot register multiple constructors with identical number of parameters ("+(p-1)+") for class '"+J.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return J.registeredClass.constructor_body[p-1]=function(){Le("Cannot construct "+J.name+" due to unbound types",Z)},yr([],Z,function(b){return J.registeredClass.constructor_body[p-1]=function(){arguments.length!==p-1&&i0(d+" called with "+arguments.length+" arguments, expected "+(p-1)),Y.length=0,G.length=p;for(var K=1;K<p;++K)G[K]=b[K].toWireType(Y,arguments[K-1]);var h0=g.apply(null,G);return Tt(Y),b[0].fromWireType(h0)},[]}),[]})}function Sf(m,p){if(!(m instanceof Function))throw new TypeError("new_ called with constructor type "+typeof m+" which is not a function");var V=Ie(m.name||"unknownFunctionName",function(){});V.prototype=m.prototype;var l=new V,g=m.apply(l,p);return g instanceof Object?g:l}function jf(m,p,V,l,g){var e=p.length;e<2&&i0("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var Z=p[1]!==null&&V!==null,G=!1,Y=1;Y<p.length;++Y)if(p[Y]!==null&&p[Y].destructorFunction===void 0){G=!0;break}for(var J=p[0].name!=="void",d="",b="",Y=0;Y<e-2;++Y)d+=(Y!==0?", ":"")+"arg"+Y,b+=(Y!==0?", ":"")+"arg"+Y+"Wired";var A0="return function "+Oe(m)+"("+d+`) {
|
|
15
|
+
if (arguments.length !== `+(e-2)+`) {
|
|
16
|
+
throwBindingError('function `+m+" called with ' + arguments.length + ' arguments, expected "+(e-2)+` args!');
|
|
17
17
|
}
|
|
18
|
-
`;
|
|
19
|
-
`);var K=
|
|
20
|
-
`);for(var Y=0;Y<
|
|
18
|
+
`;G&&(A0+=`var destructors = [];
|
|
19
|
+
`);var K=G?"destructors":"null",h0=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],W0=[i0,l,g,Tt,p[0],p[1]];Z&&(A0+="var thisWired = classParam.toWireType("+K+`, this);
|
|
20
|
+
`);for(var Y=0;Y<e-2;++Y)A0+="var arg"+Y+"Wired = argType"+Y+".toWireType("+K+", arg"+Y+"); // "+p[Y+2].name+`
|
|
21
21
|
`,h0.push("argType"+Y),W0.push(p[Y+2]);if(Z&&(b="thisWired"+(b.length>0?", ":"")+b),A0+=(J?"var rv = ":"")+"invoker(fn"+(b.length>0?", ":"")+b+`);
|
|
22
|
-
`,
|
|
23
|
-
`;else for(var Y=Z?1:2;Y<p.length;++Y){var
|
|
24
|
-
`,h0.push(
|
|
22
|
+
`,G)A0+=`runDestructors(destructors);
|
|
23
|
+
`;else for(var Y=Z?1:2;Y<p.length;++Y){var H0=Y===1?"thisWired":"arg"+(Y-2)+"Wired";p[Y].destructorFunction!==null&&(A0+=H0+"_dtor("+H0+"); // "+p[Y].name+`
|
|
24
|
+
`,h0.push(H0+"_dtor"),W0.push(p[Y].destructorFunction))}J&&(A0+=`var ret = retType.fromWireType(rv);
|
|
25
25
|
return ret;
|
|
26
26
|
`),A0+=`}
|
|
27
|
-
`,h0.push(A0);var G2=Jo(Function,h0).apply(null,W0);return G2}function _o(m,p,V,l,g,n,Z,T){var Y=dt(V,l);p=x0(p),n=rr(g,n),vr([],[m],function(J){J=J[0];var d=J.name+"."+p;T&&J.registeredClass.pureVirtualFunctions.push(p);function b(){Ln("Cannot call "+d+" due to unbound types",Y)}var A0=J.registeredClass.instancePrototype,K=A0[p];return K===void 0||K.overloadTable===void 0&&K.className!==J.name&&K.argCount===V-2?(b.argCount=V-2,b.className=J.name,A0[p]=b):(kt(A0,p,d),A0[p].overloadTable[V-2]=b),vr([],Y,function(h0){var W0=Yo(d,h0,J,n,Z);return A0[p].overloadTable===void 0?(W0.argCount=V-2,A0[p]=W0):A0[p].overloadTable[V-2]=W0,[]}),[]})}var $n=[],L0=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Ut(m){m>4&&--L0[m].refcount===0&&(L0[m]=void 0,$n.push(m))}function xo(){for(var m=0,p=5;p<L0.length;++p)L0[p]!==void 0&&++m;return m}function Eo(){for(var m=5;m<L0.length;++m)if(L0[m]!==void 0)return L0[m];return null}function jo(){R.count_emval_handles=xo,R.get_first_emval=Eo}function qn(m){switch(m){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{var p=$n.length?$n.pop():L0.length;return L0[p]={refcount:1,value:m},p}}}function So(m,p){p=x0(p),o2(m,{name:p,fromWireType:function(V){var l=L0[V].value;return Ut(V),l},toWireType:function(V,l){return qn(l)},argPackAdvance:8,readValueFromPointer:Lr,destructorFunction:null})}function T2(m){if(m===null)return"null";var p=typeof m;return p==="object"||p==="array"||p==="function"?m.toString():""+m}function Co(m,p){switch(p){case 2:return function(V){return this.fromWireType(_n[V>>2])};case 3:return function(V){return this.fromWireType(xn[V>>3])};default:throw new TypeError("Unknown float type: "+m)}}function Oo(m,p,V){var l=Cn(V);p=x0(p),o2(m,{name:p,fromWireType:function(g){return g},toWireType:function(g,n){if(typeof n!="number"&&typeof n!="boolean")throw new TypeError('Cannot convert "'+T2(n)+'" to '+this.name);return n},argPackAdvance:8,readValueFromPointer:Co(p,l),destructorFunction:null})}function Io(m,p,V){switch(p){case 0:return V?function(g){return v2[g]}:function(g){return U0[g]};case 1:return V?function(g){return d2[g>>1]}:function(g){return ar[g>>1]};case 2:return V?function(g){return N0[g>>2]}:function(g){return f2[g>>2]};default:throw new TypeError("Unknown integer type: "+m)}}function Ho(m,p,V,l,g){p=x0(p),g===-1&&(g=4294967295);var n=Cn(V),Z=function(J){return J};if(l===0){var T=32-8*V;Z=function(J){return J<<T>>>T}}var Y=p.indexOf("unsigned")!=-1;o2(m,{name:p,fromWireType:Z,toWireType:function(J,d){if(typeof d!="number"&&typeof d!="boolean")throw new TypeError('Cannot convert "'+T2(d)+'" to '+this.name);if(d<l||d>g)throw new TypeError('Passing a number "'+T2(d)+'" from JS side to C/C++ side to an argument of type "'+p+'", which is outside the valid range ['+l+", "+g+"]!");return Y?d>>>0:d|0},argPackAdvance:8,readValueFromPointer:Io(p,n,l!==0),destructorFunction:null})}function ao(m,p,V){var l=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],g=l[p];function n(Z){Z=Z>>2;var T=f2,Y=T[Z],J=T[Z+1];return new g(X2,J,Y)}V=x0(V),o2(m,{name:V,fromWireType:n,argPackAdvance:8,readValueFromPointer:n},{ignoreDuplicateRegistrations:!0})}function Qo(m,p){p=x0(p);var V=p==="std::string";o2(m,{name:p,fromWireType:function(l){var g=f2[l>>2],n;if(V)for(var Z=l+4,T=0;T<=g;++T){var Y=l+4+T;if(U0[Y]==0||T==g){var J=Y-Z,d=ft(Z,J);n===void 0?n=d:(n+=String.fromCharCode(0),n+=d),Z=Y+1}}else{for(var b=new Array(g),T=0;T<g;++T)b[T]=String.fromCharCode(U0[l+4+T]);n=b.join("")}return R2(l),n},toWireType:function(l,g){g instanceof ArrayBuffer&&(g=new Uint8Array(g));var n,Z=typeof g=="string";Z||g instanceof Uint8Array||g instanceof Uint8ClampedArray||g instanceof Int8Array||i0("Cannot pass non-string to std::string"),V&&Z?n=function(){return wf(g)}:n=function(){return g.length};var T=n(),Y=Kn(4+T+1);if(f2[Y>>2]=T,V&&Z)ot(g,Y+4,T+1);else if(Z)for(var J=0;J<T;++J){var d=g.charCodeAt(J);d>255&&(R2(Y),i0("String has UTF-16 code units that do not fit in 8 bits")),U0[Y+4+J]=d}else for(var J=0;J<T;++J)U0[Y+4+J]=g[J];return l!==null&&l.push(R2,Y),Y},argPackAdvance:8,readValueFromPointer:Lr,destructorFunction:function(l){R2(l)}})}function Do(m,p,V){V=x0(V);var l,g,n,Z,T;p===2?(l=kf,g=Wf,Z=Xf,n=function(){return ar},T=1):p===4&&(l=df,g=gf,Z=Uf,n=function(){return f2},T=2),o2(m,{name:V,fromWireType:function(Y){for(var J=f2[Y>>2],d=n(),b,A0=Y+4,K=0;K<=J;++K){var h0=Y+4+K*p;if(d[h0>>T]==0||K==J){var W0=h0-A0,a0=l(A0,W0);b===void 0?b=a0:(b+=String.fromCharCode(0),b+=a0),A0=h0+p}}return R2(Y),b},toWireType:function(Y,J){typeof J!="string"&&i0("Cannot pass non-string to C++ string type "+V);var d=Z(J),b=Kn(4+d+p);return f2[b>>2]=d>>T,g(J,b+4,d+p),Y!==null&&Y.push(R2,b),b},argPackAdvance:8,readValueFromPointer:Lr,destructorFunction:function(Y){R2(Y)}})}function Po(m,p){p=x0(p),o2(m,{isVoid:!0,name:p,argPackAdvance:0,fromWireType:function(){},toWireType:function(V,l){}})}function Lo(){U2()}function $o(){return U0.length}function qo(m){U2("OOM")}function Ko(m){m=m>>>0,qo(m)}function bo(){U2("trap!")}function r1(m,p,V){U0.copyWithin(m,p,p+V)}no(),b2=R.BindingError=Hn(Error,"BindingError"),Rt=R.InternalError=Hn(Error,"InternalError"),ho(),Go(),Xo(),Xt=R.UnboundTypeError=Hn(Error,"UnboundTypeError"),jo();var n1=!1;function Tt(m){for(var p=[],V=0;V<m.length;V++){var l=m[V];l>255&&(n1&&P2(!1,"Character code "+l+" ("+String.fromCharCode(l)+") at offset "+V+" not in 0x00-0xFF."),l&=255),p.push(String.fromCharCode(l))}return p.join("")}var e1=typeof atob=="function"?atob:function(m){var p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",V="",l,g,n,Z,T,Y,J,d=0;m=m.replace(/[^A-Za-z0-9\+\/\=]/g,"");do Z=p.indexOf(m.charAt(d++)),T=p.indexOf(m.charAt(d++)),Y=p.indexOf(m.charAt(d++)),J=p.indexOf(m.charAt(d++)),l=Z<<2|T>>4,g=(T&15)<<4|Y>>2,n=(Y&3)<<6|J,V=V+String.fromCharCode(l),Y!==64&&(V=V+String.fromCharCode(g)),J!==64&&(V=V+String.fromCharCode(n));while(d<m.length);return V};function t1(m){if(typeof Q=="boolean"&&Q){var p;try{p=Buffer.from(m,"base64")}catch{p=new Buffer(m,"base64")}return new Uint8Array(p.buffer,p.byteOffset,p.byteLength)}try{for(var V=e1(m),l=new Uint8Array(V.length),g=0;g<V.length;++g)l[g]=V.charCodeAt(g);return l}catch{throw new Error("Converting base64 string to bytes failed.")}}function Z2(m){if(pt(m))return t1(m.slice(mt.length))}var i1={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Float32Array,Float64Array},A1={A:r1,B:Ko,C:bo,D:Df,a:U2,b:pf,c:vf,d:Pf,e:$f,f:Kf,g:bf,h:vt,i:yt,j:ro,k:io,l:zo,m:Bo,n:_o,o:So,p:Oo,q:Ho,r:ao,s:Qo,t:Do,u:Po,v:Ut,w:qn,x:Lo,y:T2,z:$o},q=function(m,p,V){var l=new m.Int8Array(V),g=new m.Int16Array(V),n=new m.Int32Array(V),Z=new m.Uint8Array(V),T=new m.Uint16Array(V),Y=new m.Float32Array(V),J=new m.Float64Array(V),d=p.D|0,b=0,A0=0,K=0,h0=0,W0=0,a0=0,G2=0,Kr=0,L=m.Math.imul,l2=m.Math.clz32,T0=p.a,o0=p.b,r0=p.c,u0=p.d,h1=p.e,l0=p.f,m1=p.g,vy=p.h,yy=p.i,Zy=p.j,p1=p.k,Bt=p.l,Jt=p.m,nr=p.n,v1=p.o,Yt=p.p,c2=p.q,E0=p.r,_t=p.s,ne=p.t,y1=p.u,Ry=p.v,Vy=p.w,Z1=p.x,Fy=p.y,R1=p.z,V1=p.A,F1=p.B,xt=p.C,s=22384,wy=5265264,ky=0;function w1(){t5(),i5()}function k1(){W1(0)}function W1(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0;r=s,s=s+16|0,e=r+8|0,t=r,y=x3()|0,f=E3()|0,A=zr()|0,o=S3()|0,u=C3()|0,c=AA()|0,h=yn()|0,v=Zn()|0,i=Zn()|0,Bt(A|0,o|0,u|0,c|0,h|0,9,v|0,y|0,i|0,f|0,6204,fA()|0,138),P3(1),n[t>>2]=5,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],nh(6211,e),n[t>>2]=3,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],oh(6216,e),n[t>>2]=10,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],mh(6225,e),f=kh()|0,i=Wh()|0,y=Br()|0,v=dh()|0,h=gh()|0,c=AA()|0,u=yn()|0,o=Zn()|0,A=Zn()|0,Bt(y|0,v|0,h|0,c|0,u|0,11,o|0,f|0,A|0,i|0,6234,fA()|0,139),Bh(2),n[t>>2]=6,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],Sh(6211,e),n[t>>2]=4,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],Ue(6248,e),n[t>>2]=5,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],Ue(6265,e),n[t>>2]=6,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],Ue(6280,e),n[t>>2]=7,n[t+4>>2]=0,n[e>>2]=n[t>>2],n[e+4>>2]=n[t+4>>2],qh(6216,e),s=r}function X1(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0;i=s,s=s+32|0,o=i+16|0,A=i+8|0,u=i,f=x(20)|0,z1(f,e,t),n[u>>2]=0,n[o>>2]=n[u>>2],J1(A,f,o),e=n[A>>2]|0,n[A>>2]=n[r>>2],n[r>>2]=e,e=A+4|0,t=r+4|0,f=n[e>>2]|0,n[e>>2]=n[t>>2],n[t>>2]=f,ee(A),t=x(352)|0,B1(t,n[r>>2]|0),f=r+8|0,n[u>>2]=0,n[o>>2]=n[u>>2],C1(A,t,o),t=n[A>>2]|0,n[A>>2]=n[f>>2],n[f>>2]=t,f=A+4|0,t=r+12|0,e=n[f>>2]|0,n[f>>2]=n[t>>2],n[t>>2]=e,te(A),s=i}function d1(r,e){r=r|0,e=e|0,Rl(n[r+8>>2]|0,e)}function g1(r){return r=r|0,r=(ks(n[r+8>>2]|0)|0)+107|0,Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24|0}function U1(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0;i=s,s=s+32|0,f=i+16|0,A=i+8|0,o=i,u=x(12)|0,Ws(u,e,t),n[o>>2]=0,n[f>>2]=n[o>>2],gs(A,u,f),u=n[A>>2]|0,n[A>>2]=n[r>>2],n[r>>2]=u,u=A+4|0,t=r+4|0,e=n[u>>2]|0,n[u>>2]=n[t>>2],n[t>>2]=e,Fe(A),t=r+8|0,e=x(12)|0,Xs(e,n[r>>2]|0),n[o>>2]=0,n[f>>2]=n[o>>2],zs(A,e,f),e=n[A>>2]|0,n[A>>2]=n[t>>2],n[t>>2]=e,e=A+4|0,o=r+12|0,u=n[e>>2]|0,n[e>>2]=n[o>>2],n[o>>2]=u,$i(A),ds(A,n[t>>2]|0),t=r+16|0,o=n[A>>2]|0,u=A+4|0,e=n[u>>2]|0,n[A>>2]=0,n[u>>2]=0,n[f>>2]=n[t>>2],n[t>>2]=o,t=r+20|0,n[f+4>>2]=n[t>>2],n[t>>2]=e,Mr(f),Mr(A),s=i}function T1(r,e){r=r|0,e=e|0;var t=0;r=r+16|0,t=n[r>>2]|0;r:do if(t|0)switch(e|0){case 4:{we(t);break r}case 8:{pn(t),pn(n[r>>2]|0);break r}default:break r}while(0)}function G1(r,e){r=r|0,e=e|0;var t=0;t=r+16|0,r=n[t>>2]|0;r:do if(r|0){switch(e|0){case 1:{g8(r);break r}case 2:{U8(r);break r}case 8:{we(r),r=n[t>>2]|0;break}case 4:break;default:break r}we(r)}while(0)}function N1(r,e){r=r|0,e=e|0;var t=0;t=r+16|0,r=n[t>>2]|0;r:do if(r|0){switch(e|0){case 1:{f3(r);break r}case 2:{o3(r);break r}case 8:{pn(r),r=n[t>>2]|0;break}case 4:break;default:break r}pn(r)}while(0)}function M1(r,e){r=r|0,e=e|0,r=n[r+16>>2]|0,r|0&&xr[n[n[r>>2]>>2]&63](r,e)|0}function z1(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,n[r+4>>2]=t,n[r+8>>2]=0,l[r+12>>0]=0,l[r+13>>0]=0,n[r+16>>2]=0}function B1(r,e){r=r|0,e=e|0,n[r>>2]=e,St(r+4|0,e),q1(r+247|0),n[r+288>>2]=0,n[r+292>>2]=0,n[r+296>>2]=0,Ct(r+300|0),e=r+312|0,n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,K1(r+328|0),b1(r)}function J1(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4296,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,Y1(r,i),s=t}function ee(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function Y1(r,e){r=r|0,e=e|0}function Wy(r){r=r|0,h1(r|0)|0,Tm()}function _1(r){r=r|0,Z0(r),_(r)}function x1(r){r=r|0,r=n[r+12>>2]|0,r|0&&_(r)}function E1(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==6407?r+12|0:0)|0}function j1(r){r=r|0,D(r,16)}function D(r,e){r=r|0,e=e|0,S1(r)}function S1(r){r=r|0,_(r)}function C1(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4324,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,O1(r,i),s=t}function te(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function O1(r,e){r=r|0,e=e|0}function I1(r){r=r|0,Z0(r),_(r)}function H1(r){r=r|0,r=n[r+12>>2]|0,r|0&&(D1(r),_(r))}function a1(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==6605?r+12|0:0)|0}function Q1(r){r=r|0,D(r,16)}function D1(r){r=r|0,br(r+320|0),ie(r+312|0),Et(r+300|0),$1(r+288|0),P1(r+247|0),jt(r+4|0)}function br(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function ie(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function Et(r){r=r|0,L1(r)}function P1(r){r=r|0,r=r+34|0,r=Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24,r|0&&_A(r)}function jt(r){r=r|0,rn(n[r+12>>2]|0)}function L1(r){r=r|0;var e=0,t=0;e=n[r>>2]|0,t=e,e|0&&(n[r+4>>2]=t,D(e,(n[r+8>>2]|0)-t|0))}function $1(r){r=r|0;var e=0,t=0;e=n[r>>2]|0,t=e,e|0&&(n[r+4>>2]=t,D(e,(n[r+8>>2]|0)-t|0))}function rn(r){r=r|0,Ye(n[r+-4>>2]|0)}function St(r,e){r=r|0,e=e|0,n[r>>2]=e,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=N2(1048576)|0}function q1(r){r=r|0;var e=0;e=r+32|0,l[e>>0]=0,l[e+1>>0]=0,r=r+34|0,l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0}function Ct(r){r=r|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0}function K1(r){r=r|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,r=r+16|0,n[r>>2]=-1,n[r+4>>2]=-1}function b1(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0;if(o=s,s=s+64|0,A=o+32|0,t=o+56|0,e=o+16|0,f=o,M2(n[r>>2]|0,t,4),lu(A,t,t+4|0),t=er(6693)|0,i=l[A+11>>0]|0,(t|0)==((i<<24>>24<0?n[A+4>>2]|0:i&255)|0)){if(i=(kp(A,0,-1,6693,t)|0)==0,_r(A),i){if(t=n[r>>2]|0,n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,n[A>>2]=n[e>>2],n[A+4>>2]=n[e+4>>2],n[A+8>>2]=n[e+8>>2],n[A+12>>2]=n[e+12>>2],wr(t,A),t=r+20|0,M2(n[r>>2]|0,t,227),nu(r,t),i=eu()|0,e=n[i>>2]|0,i=n[i+4>>2]|0,(e|0)!=(i|0))do tu(A,e),iu(A,t),Ae(A),e=e+24|0;while((e|0)!=(i|0));Au(r),fu(r),ou(n[r>>2]|0),i=n[r>>2]|0,e=(n[r+116>>2]|0)+8|0,t=f,n[t>>2]=0,n[t+4>>2]=0,t=f+8|0,n[t>>2]=e,n[t+4>>2]=0,n[A>>2]=n[f>>2],n[A+4>>2]=n[f+4>>2],n[A+8>>2]=n[f+8>>2],n[A+12>>2]=n[f+12>>2],wr(i,A),uu(r+4|0),s=o;return}}else _r(A);o=u0(8)|0,ru(o),l0(o|0,2592,8)}function N2(r){r=r|0;var e=0;return e=kn(r+68|0)|0,r=e+68&-64,n[r+-4>>2]=e,r|0}function M2(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0;o=r+13|0,l[o>>0]|0?l[r+12>>0]=1:(f=r+4|0,i=n[f>>2]|0,u=r+8|0,A=n[u>>2]|0,c=i-A|0,t=(c|0)<(t|0)?c:t,t&&(I0(e|0,(n[r>>2]|0)+A|0,t|0)|0,A=n[u>>2]|0,i=n[f>>2]|0),c=A+t|0,n[u>>2]=c,n[r+16>>2]=t,(c|0)>=(i|0)&&(l[o>>0]=1))}function ru(r){r=r|0,Q0(r,6791),n[r>>2]=4352}function wr(r,e){r=r|0,e=e|0;var t=0,i=0,A=0;A=e+8|0,e=n[A>>2]|0,A=n[A+4>>2]|0,t=n[r+4>>2]|0,i=((t|0)<0)<<31>>31,(A|0)<(i|0)|(A|0)==(i|0)&e>>>0<t>>>0?n[r+8>>2]=e:l[r+12>>0]=1}function nu(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0;v=e+179|0,l[d>>0]=l[v>>0],l[d+1>>0]=l[v+1>>0],l[d+2>>0]=l[v+2>>0],l[d+3>>0]=l[v+3>>0],l[d+4>>0]=l[v+4>>0],l[d+5>>0]=l[v+5>>0],l[d+6>>0]=l[v+6>>0],l[d+7>>0]=l[v+7>>0],h=+J[d>>3],o=e+187|0,l[d>>0]=l[o>>0],l[d+1>>0]=l[o+1>>0],l[d+2>>0]=l[o+2>>0],l[d+3>>0]=l[o+3>>0],l[d+4>>0]=l[o+4>>0],l[d+5>>0]=l[o+5>>0],l[d+6>>0]=l[o+6>>0],l[d+7>>0]=l[o+7>>0],y=+J[d>>3],r=e+195|0,l[d>>0]=l[r>>0],l[d+1>>0]=l[r+1>>0],l[d+2>>0]=l[r+2>>0],l[d+3>>0]=l[r+3>>0],l[d+4>>0]=l[r+4>>0],l[d+5>>0]=l[r+5>>0],l[d+6>>0]=l[r+6>>0],l[d+7>>0]=l[r+7>>0],f=+J[d>>3],c=e+203|0,l[d>>0]=l[c>>0],l[d+1>>0]=l[c+1>>0],l[d+2>>0]=l[c+2>>0],l[d+3>>0]=l[c+3>>0],l[d+4>>0]=l[c+4>>0],l[d+5>>0]=l[c+5>>0],l[d+6>>0]=l[c+6>>0],l[d+7>>0]=l[c+7>>0],u=+J[d>>3],A=e+211|0,l[d>>0]=l[A>>0],l[d+1>>0]=l[A+1>>0],l[d+2>>0]=l[A+2>>0],l[d+3>>0]=l[A+3>>0],l[d+4>>0]=l[A+4>>0],l[d+5>>0]=l[A+5>>0],l[d+6>>0]=l[A+6>>0],l[d+7>>0]=l[A+7>>0],t=+J[d>>3],e=e+219|0,l[d>>0]=l[e>>0],l[d+1>>0]=l[e+1>>0],l[d+2>>0]=l[e+2>>0],l[d+3>>0]=l[e+3>>0],l[d+4>>0]=l[e+4>>0],l[d+5>>0]=l[e+5>>0],l[d+6>>0]=l[e+6>>0],l[d+7>>0]=l[e+7>>0],i=+J[d>>3],J[d>>3]=y,l[v>>0]=l[d>>0],l[v+1>>0]=l[d+1>>0],l[v+2>>0]=l[d+2>>0],l[v+3>>0]=l[d+3>>0],l[v+4>>0]=l[d+4>>0],l[v+5>>0]=l[d+5>>0],l[v+6>>0]=l[d+6>>0],l[v+7>>0]=l[d+7>>0],J[d>>3]=h,l[c>>0]=l[d>>0],l[c+1>>0]=l[d+1>>0],l[c+2>>0]=l[d+2>>0],l[c+3>>0]=l[d+3>>0],l[c+4>>0]=l[d+4>>0],l[c+5>>0]=l[d+5>>0],l[c+6>>0]=l[d+6>>0],l[c+7>>0]=l[d+7>>0],J[d>>3]=u,l[o>>0]=l[d>>0],l[o+1>>0]=l[d+1>>0],l[o+2>>0]=l[d+2>>0],l[o+3>>0]=l[d+3>>0],l[o+4>>0]=l[d+4>>0],l[o+5>>0]=l[d+5>>0],l[o+6>>0]=l[d+6>>0],l[o+7>>0]=l[d+7>>0],J[d>>3]=f,l[A>>0]=l[d>>0],l[A+1>>0]=l[d+1>>0],l[A+2>>0]=l[d+2>>0],l[A+3>>0]=l[d+3>>0],l[A+4>>0]=l[d+4>>0],l[A+5>>0]=l[d+5>>0],l[A+6>>0]=l[d+6>>0],l[A+7>>0]=l[d+7>>0],J[d>>3]=i,l[r>>0]=l[d>>0],l[r+1>>0]=l[d+1>>0],l[r+2>>0]=l[d+2>>0],l[r+3>>0]=l[d+3>>0],l[r+4>>0]=l[d+4>>0],l[r+5>>0]=l[d+5>>0],l[r+6>>0]=l[d+6>>0],l[r+7>>0]=l[d+7>>0],J[d>>3]=t,l[e>>0]=l[d>>0],l[e+1>>0]=l[d+1>>0],l[e+2>>0]=l[d+2>>0],l[e+3>>0]=l[d+3>>0],l[e+4>>0]=l[d+4>>0],l[e+5>>0]=l[d+5>>0],l[e+6>>0]=l[d+6>>0],l[e+7>>0]=l[d+7>>0]}function eu(){var r=0,e=0,t=0,i=0,A=0,f=0,o=0,u=0;if(A=s,s=s+48|0,t=A+24|0,i=A,r=A+44|0,!(l[21440]|0)&&j2(21440)|0&&(n[5374]=0,n[5375]=0,n[5376]=0,S2(21440)),!(l[21448]|0)&&j2(21448)|0&&S2(21448),(n[5374]|0)==(n[5375]|0)){if(pp(21508),(n[5374]|0)==(n[5375]|0)){l[t>>0]=l[r>>0]|0,su(i,t),r=n[5375]|0;do if(r>>>0>=(n[5376]|0)>>>0)if(r=((r-(n[5374]|0)|0)/24|0)+1|0,e=Zu(21496)|0,e>>>0<r>>>0)d0(21496);else{f=n[5374]|0,u=((n[5376]|0)-f|0)/24|0,o=u<<1,pu(t,u>>>0<e>>>1>>>0?o>>>0<r>>>0?r:o:e,((n[5375]|0)-f|0)/24|0,21504),e=t+8|0,fe(n[e>>2]|0,i),n[e>>2]=(n[e>>2]|0)+24,vu(21496,t),yu(t);break}else hu(t,21496,1),u=t+4|0,fe(n[u>>2]|0,i),n[u>>2]=(n[u>>2]|0)+24,mu(t);while(0);Ae(i)}vp(21508)}return s=A,21496}function tu(r,e){r=r|0,e=e|0;var t=0,i=0;t=e+16|0,i=n[t>>2]|0;do if(i)if((e|0)==(i|0)){i=Ot(r)|0,n[r+16>>2]=i,t=n[t>>2]|0,k2[n[(n[t>>2]|0)+12>>2]&15](t,i);break}else{n[r+16>>2]=Xn[n[(n[i>>2]|0)+8>>2]&15](i)|0;break}else n[r+16>>2]=0;while(0)}function iu(r,e){if(r=r|0,e=e|0,r=n[r+16>>2]|0,!r)e=u0(4)|0,n[e>>2]=0,Bu(e),l0(e|0,4168,131);else{k2[n[(n[r>>2]|0)+24>>2]&15](r,e);return}}function Ae(r){r=r|0;var e=0;e=n[r+16>>2]|0,(r|0)!=(e|0)?e|0&&f0[n[(n[e>>2]|0)+20>>2]&255](e):f0[n[(n[e>>2]|0)+16>>2]&255](e)}function Au(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0;F=s,s=s+96|0,A=F+16|0,v=F,u=F+72|0,f=n[r>>2]|0,c=T[r+114>>1]|0,h=v,n[h>>2]=0,n[h+4>>2]=0,h=v+8|0,n[h>>2]=c,n[h+4>>2]=0,n[A>>2]=n[v>>2],n[A+4>>2]=n[v+4>>2],n[A+8>>2]=n[v+8>>2],n[A+12>>2]=n[v+12>>2],wr(f,A),f=r+120|0;r:do if(n[f>>2]|0){for(o=A+2|0,c=A+16|0,h=A+20|0,v=A+18|0,t=0;;){if(!(nn(n[r>>2]|0)|0)||Ju(n[r>>2]|0)|0)break r;for(M2(n[r>>2]|0,A,54),e=7277,i=o;(l[i>>0]|0)==(l[e>>0]|0);)if(i=i+1|0,(i|0)==(c|0)){y=8;break}else e=e+1|0;if((y|0)==8&&(y=0,(Z[v>>0]|Z[v+1>>0]<<8)<<16>>16==22204))break;if(_u(n[r>>2]|0,(Z[h>>0]|Z[h+1>>0]<<8)&65535,0,1),t=t+1|0,t>>>0>=(n[f>>2]|0)>>>0)break r}v=(Z[h>>0]|Z[h+1>>0]<<8)&65535,y=YA(v)|0,M2(n[r>>2]|0,y,v),Yu(r,y),_(y),y=r+125|0,Eu(u,r+247|0,(Z[y>>0]|Z[y+1>>0]<<8)&65535),ju(r+300|0,u)|0,Et(u),s=F;return}while(0);F=u0(8)|0,xu(F),l0(F|0,2672,8)}function fu(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0;if(y=s,s=s+176|0,A=y+40|0,f=y+24|0,e=y+16|0,i=y,c=y+152|0,h=y+136|0,v=y+56|0,u=n[r>>2]|0,o=r+116|0,F=n[o>>2]|0,t=f,n[t>>2]=0,n[t+4>>2]=0,t=f+8|0,n[t>>2]=F,n[t+4>>2]=0,n[A>>2]=n[f>>2],n[A+4>>2]=n[f+4>>2],n[A+8>>2]=n[f+8>>2],n[A+12>>2]=n[f+12>>2],wr(u,A),u=e,n[u>>2]=0,n[u+4>>2]=0,M2(n[r>>2]|0,e,8),nn(n[r>>2]|0)|0||(F=u0(8)|0,oe(F),l0(F|0,2704,8)),t=e,e=n[t>>2]|0,t=n[t+4>>2]|0,(e|0)==-1&(t|0)==-1&&(F=u0(8)|0,at(F,7488),l0(F|0,2720,8)),F=n[r>>2]|0,u=i,n[u>>2]=0,n[u+4>>2]=0,u=i+8|0,n[u>>2]=e,n[u+4>>2]=t,n[A>>2]=n[i>>2],n[A+4>>2]=n[i+4>>2],n[A+8>>2]=n[i+8>>2],n[A+12>>2]=n[i+12>>2],wr(F,A),nn(n[r>>2]|0)|0||(F=u0(8)|0,oe(F),l0(F|0,2704,8)),M2(n[r>>2]|0,A,8),nn(n[r>>2]|0)|0||(F=u0(8)|0,oe(F),l0(F|0,2704,8)),n[A>>2]|0&&(F=u0(8)|0,qu(F),l0(F|0,2736,8)),f=r+288|0,u=r+292|0,n[u>>2]=n[f>>2],F=r+259|0,(Z[F>>0]|Z[F+1>>0]<<8|Z[F+2>>0]<<16|Z[F+3>>0]<<24|0)==-1&&(F=u0(8)|0,at(F,7606),l0(F|0,2720,8)),i=A+4|0,Ku(f,(n[i>>2]|0)+1|0),F=n[f>>2]|0,n[F>>2]=(n[o>>2]|0)+8,n[F+4>>2]=0,(n[i>>2]|0)>>>0>1){if(St(c,n[r>>2]|0),Qt(h,c),M0(v,32,2,8,0),ue(h),z0(v),!(n[i>>2]|0))f=n[f>>2]|0,t=f;else{t=1;do t>>>0>1?e=n[(n[f>>2]|0)+(t+-1<<3)>>2]|0:e=0,o=X0(v,h,e,1)|0,e=n[f>>2]|0,F=e+(t<<3)|0,n[F>>2]=o,n[F+4>>2]=((o|0)<0)<<31>>31,t=t+1|0;while(t>>>0<=(n[i>>2]|0)>>>0);t=e,f=e}if(e=n[u>>2]|0,e-t>>3>>>0>1){A=e-f>>3,i=f,e=1,t=n[i>>2]|0,i=n[i+4>>2]|0;do F=f+(e<<3)|0,u=F,t=O0(n[u>>2]|0,n[u+4>>2]|0,t|0,i|0)|0,i=r0()|0,n[F>>2]=t,n[F+4>>2]=i,e=e+1|0;while(e>>>0<A>>>0)}B0(v),Dt(h),jt(c)}s=y}function ou(r){r=r|0,l[r+12>>0]=0,l[r+13>>0]=0}function uu(r){r=r|0,n[r+8>>2]=0,n[r+4>>2]=0}function er(r){return r=r|0,Rn(r)|0}function lu(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0;if(o=s,s=s+16|0,A=e,f=o,i=t-A|0,i>>>0>4294967279&&Je(r),i>>>0<11?l[r+11>>0]=i:(c=i+16&-16,u=x(c)|0,n[r>>2]=u,n[r+8>>2]=c|-2147483648,n[r+4>>2]=i,r=u),(e|0)!=(t|0)){for(A=t-A|0,i=r;kr(i,e),e=e+1|0,(e|0)!=(t|0);)i=i+1|0;r=r+A|0}l[f>>0]=0,kr(r,f),s=o}function kr(r,e){r=r|0,e=e|0,l[r>>0]=l[e>>0]|0}function cu(r){r=r|0,Y0(r),_(r)}function su(r,e){r=r|0,e=e|0,n[r>>2]=4372,n[r+16>>2]=r}function hu(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,e=n[e+4>>2]|0,n[r+4>>2]=e,n[r+8>>2]=e+(t*24|0)}function mu(r){r=r|0,n[(n[r>>2]|0)+4>>2]=n[r+4>>2]}function fe(r,e){r=r|0,e=e|0;var t=0,i=0;t=e+16|0,i=n[t>>2]|0;do if(i)if((e|0)==(i|0)){i=Ot(r)|0,n[r+16>>2]=i,t=n[t>>2]|0,k2[n[(n[t>>2]|0)+12>>2]&15](t,i);break}else{n[r+16>>2]=i,n[t>>2]=0;break}else n[r+16>>2]=0;while(0)}function Ot(r){return r=r|0,r|0}function pu(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;A=r+12|0,n[A>>2]=0,n[r+16>>2]=i;do if(e)if(e>>>0>178956970)A=u0(8)|0,h2(A,6723),n[A>>2]=5956,l0(A|0,3928,123);else{i=x(e*24|0)|0;break}else i=0;while(0);n[r>>2]=i,t=i+(t*24|0)|0,n[r+8>>2]=t,n[r+4>>2]=t,n[A>>2]=i+(e*24|0)}function vu(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;if(u=n[r>>2]|0,c=r+4|0,t=n[c>>2]|0,o=e+4|0,(t|0)==(u|0))A=o,f=r,i=n[o>>2]|0,t=u;else{i=n[o>>2]|0;do t=t+-24|0,fe(i+-24|0,t),i=(n[o>>2]|0)+-24|0,n[o>>2]=i;while((t|0)!=(u|0));A=o,f=r,t=n[r>>2]|0}n[f>>2]=i,n[A>>2]=t,u=e+8|0,o=n[c>>2]|0,n[c>>2]=n[u>>2],n[u>>2]=o,u=r+8|0,c=e+12|0,r=n[u>>2]|0,n[u>>2]=n[c>>2],n[c>>2]=r,n[e>>2]=n[A>>2]}function yu(r){r=r|0;var e=0,t=0,i=0,A=0;if(t=n[r+4>>2]|0,i=r+8|0,e=n[i>>2]|0,(e|0)!=(t|0))do A=e+-24|0,n[i>>2]=A,Ae(A),e=n[i>>2]|0;while((e|0)!=(t|0));e=n[r>>2]|0,e|0&&D(e,(n[r+12>>2]|0)-e|0)}function Zu(r){return r=r|0,178956970}function Ru(r){r=r|0,_(r)}function Vu(r){return r=r|0,r=x(8)|0,n[r>>2]=4372,r|0}function Fu(r,e){r=r|0,e=e|0,n[e>>2]=4372}function wu(r){r=r|0}function ku(r){r=r|0,D(r,8)}function Wu(r,e){r=r|0,e=e|0,Uu(r+4|0,e)}function Xu(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==7183?r+4|0:0)|0}function du(r){return r=r|0,2664}function gu(r){r=r|0}function Uu(r,e){r=r|0,e=e|0,Tu(r,e)}function Tu(r,e){r=r|0,e=e|0;var t=0,i=0;if(r=e+104|0,e=Z[r>>0]|0,t=e>>>7,i=e>>>6&1,(t|0)==1&(i|0)!=0&&(i=u0(8)|0,Gu(i),l0(i|0,2632,8)),(t|0)==(i|0))i=u0(8)|0,Nu(i),l0(i|0,2648,8);else{l[r>>0]=e&63;return}}function Gu(r){r=r|0,Q0(r,7076),n[r>>2]=4416}function Nu(r){r=r|0,Q0(r,7144),n[r>>2]=4436}function Mu(r){r=r|0,Y0(r),_(r)}function zu(r){r=r|0,Y0(r),_(r)}function Bu(r){r=r|0,n[r>>2]=6092}function nn(r){r=r|0;var e=0;return e=r+12|0,r=(l[e>>0]|0)==0,l[e>>0]=0,r|0}function Ju(r){return r=r|0,(l[r+13>>0]|0)!=0|0}function Yu(r,e){r=r|0,e=e|0,r=r+247|0,Su(r,e),(Z[r>>0]|Z[r+1>>0]<<8)<<16>>16!=2&&(e=u0(8)|0,It(e),l0(e|0,2688,8))}function _u(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;switch(i|0){case 0:break;case 2:{i=n[r+4>>2]|0,e=O0(O0(e|0,t|0,-1,-1)|0,r0()|0,i|0,((i|0)<0)<<31>>31|0)|0,t=r0()|0;break}case 1:{i=n[r+8>>2]|0,e=O0(i|0,((i|0)<0)<<31>>31|0,e|0,t|0)|0,t=r0()|0;break}default:t=0,e=0}A=n[r+4>>2]|0,f=((A|0)<0)<<31>>31,i=r+12|0,(t|0)<0|((t|0)>(f|0)|(t|0)==(f|0)&e>>>0>=A>>>0)?l[i>>0]=1:(l[i>>0]=0,n[r+8>>2]=e)}function xu(r){r=r|0,Q0(r,7410),n[r>>2]=4476}function Eu(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0,h=0;if(o=s,s=s+16|0,f=o,Ct(r),A=e+32|0,(Z[A>>0]|Z[A+1>>0]<<8)<<16>>16){i=e+34|0,e=0;do c=Z[i>>0]|Z[i+1>>0]<<8|Z[i+2>>0]<<16|Z[i+3>>0]<<24,h=c+(e*6|0)|0,u=c+(e*6|0)+2|0,c=c+(e*6|0)+4|0,Wr(f,(Z[h>>0]|Z[h+1>>0]<<8)&65535,(Z[u>>0]|Z[u+1>>0]<<8)&65535,(Z[c>>0]|Z[c+1>>0]<<8)&65535),Ht(r,f),t=t-((Z[u>>0]|Z[u+1>>0]<<8)&65535)|0,e=e+1|0;while(e>>>0<((Z[A>>0]|Z[A+1>>0]<<8)&65535)>>>0)}(t|0)<0&&(h=u0(8)|0,It(h),l0(h|0,2688,8)),t|0&&(Wr(f,0,t,2),Ht(r,f)),s=o}function ju(r,e){r=r|0,e=e|0;var t=0,i=0;return t=s,s=s+16|0,i=t+1|0,l[i>>0]=l[t>>0]|0,Lu(r,e,i),s=t,r|0}function Su(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;if(i=e+2|0,f=Z[e>>0]|Z[e+1>>0]<<8,l[r>>0]=f,l[r+1>>0]=f>>8,f=r+2|0,i=Z[i>>0]|Z[i+1>>0]<<8,l[f>>0]=i,l[f+1>>0]=i>>8,l[r+4>>0]=l[e+4>>0]|0,f=e+6|0,l[r+5>>0]=l[e+5>>0]|0,i=e+8|0,t=r+6|0,f=Z[f>>0]|Z[f+1>>0]<<8,l[t>>0]=f,l[t+1>>0]=f>>8,t=e+12|0,f=r+8|0,i=Z[i>>0]|Z[i+1>>0]<<8|Z[i+2>>0]<<16|Z[i+3>>0]<<24,l[f>>0]=i,l[f+1>>0]=i>>8,l[f+2>>0]=i>>16,l[f+3>>0]=i>>24,f=r+12|0,t=Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,l[f>>0]=t,l[f+1>>0]=t>>8,l[f+2>>0]=t>>16,l[f+3>>0]=t>>24,f=e+16|0,t=f,t=Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,f=f+4|0,f=Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24,i=r+16|0,o=i,l[o>>0]=t,l[o+1>>0]=t>>8,l[o+2>>0]=t>>16,l[o+3>>0]=t>>24,i=i+4|0,l[i>>0]=f,l[i+1>>0]=f>>8,l[i+2>>0]=f>>16,l[i+3>>0]=f>>24,i=e+32|0,f=e+24|0,o=f,o=Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24,f=f+4|0,f=Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24,t=r+24|0,A=t,l[A>>0]=o,l[A+1>>0]=o>>8,l[A+2>>0]=o>>16,l[A+3>>0]=o>>24,t=t+4|0,l[t>>0]=f,l[t+1>>0]=f>>8,l[t+2>>0]=f>>16,l[t+3>>0]=f>>24,t=e+34|0,f=r+32|0,i=Z[i>>0]|Z[i+1>>0]<<8,l[f>>0]=i,l[f+1>>0]=i>>8,A=r+34|0,r=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24,r?(_A(r),r=Z[f>>0]|Z[f+1>>0]<<8):r=i,i=YA((r&65535)*6|0)|0,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,r<<16>>16&&(r=e+36|0,o=Z[t>>0]|Z[t+1>>0]<<8,l[i>>0]=o,l[i+1>>0]=o>>8,e=e+38|0,o=i+2|0,r=Z[r>>0]|Z[r+1>>0]<<8,l[o>>0]=r,l[o+1>>0]=r>>8,o=i+4|0,e=Z[e>>0]|Z[e+1>>0]<<8,l[o>>0]=e,l[o+1>>0]=e>>8,((Z[f>>0]|Z[f+1>>0]<<8)&65535)>1)){r=1;do e=t,t=t+6|0,o=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24,u=e+8|0,i=o+(r*6|0)|0,c=Z[t>>0]|Z[t+1>>0]<<8,l[i>>0]=c,l[i+1>>0]=c>>8,e=e+10|0,i=o+(r*6|0)+2|0,u=Z[u>>0]|Z[u+1>>0]<<8,l[i>>0]=u,l[i+1>>0]=u>>8,o=o+(r*6|0)+4|0,e=Z[e>>0]|Z[e+1>>0]<<8,l[o>>0]=e,l[o+1>>0]=e>>8,r=r+1|0;while(r>>>0<((Z[f>>0]|Z[f+1>>0]<<8)&65535)>>>0)}}function It(r){r=r|0,Q0(r,7354),n[r>>2]=4456}function Cu(r){r=r|0,Y0(r),_(r)}function Ou(r){r=r|0,Y0(r),_(r)}function Ht(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0;u=s,s=s+32|0,A=u,f=r+4|0,t=n[f>>2]|0,o=r+8|0;do if((t|0)==(n[o>>2]|0))if(t=((t-(n[r>>2]|0)|0)/12|0)+1|0,i=Pu(r)|0,i>>>0<t>>>0)d0(r);else{c=n[r>>2]|0,h=((n[o>>2]|0)-c|0)/12|0,o=h<<1,au(A,h>>>0<i>>>1>>>0?o>>>0<t>>>0?t:o:i,((n[f>>2]|0)-c|0)/12|0,r+8|0),o=A+8|0,f=n[o>>2]|0,n[f>>2]=n[e>>2],n[f+4>>2]=n[e+4>>2],n[f+8>>2]=n[e+8>>2],n[o>>2]=(n[o>>2]|0)+12,Qu(r,A),Du(A);break}else Iu(A,r,1),h=A+4|0,c=n[h>>2]|0,n[c>>2]=n[e>>2],n[c+4>>2]=n[e+4>>2],n[c+8>>2]=n[e+8>>2],n[h>>2]=(n[h>>2]|0)+12,Hu(A);while(0);s=u}function Wr(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0,n[r>>2]=e,n[r+4>>2]=t,n[r+8>>2]=i}function Iu(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,e=n[e+4>>2]|0,n[r+4>>2]=e,n[r+8>>2]=e+(t*12|0)}function Hu(r){r=r|0,n[(n[r>>2]|0)+4>>2]=n[r+4>>2]}function au(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;A=r+12|0,n[A>>2]=0,n[r+16>>2]=i;do if(e)if(e>>>0>357913941)A=u0(8)|0,h2(A,6723),n[A>>2]=5956,l0(A|0,3928,123);else{i=x(e*12|0)|0;break}else i=0;while(0);n[r>>2]=i,t=i+(t*12|0)|0,n[r+8>>2]=t,n[r+4>>2]=t,n[A>>2]=i+(e*12|0)}function Qu(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;i=n[r>>2]|0,o=r+4|0,f=e+4|0,A=(n[o>>2]|0)-i|0,t=(n[f>>2]|0)+(((A|0)/-12|0)*12|0)|0,n[f>>2]=t,(A|0)>0?(_0(t|0,i|0,A|0)|0,i=f,t=n[f>>2]|0):i=f,f=n[r>>2]|0,n[r>>2]=t,n[i>>2]=f,f=e+8|0,A=n[o>>2]|0,n[o>>2]=n[f>>2],n[f>>2]=A,f=r+8|0,o=e+12|0,r=n[f>>2]|0,n[f>>2]=n[o>>2],n[o>>2]=r,n[e>>2]=n[i>>2]}function Du(r){r=r|0;var e=0,t=0,i=0;e=n[r+4>>2]|0,t=r+8|0,i=n[t>>2]|0,(i|0)!=(e|0)&&(n[t>>2]=i+(~(((i+-12-e|0)>>>0)/12|0)*12|0)),e=n[r>>2]|0,e|0&&D(e,(n[r+12>>2]|0)-e|0)}function Pu(r){return r=r|0,357913941}function Lu(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;$u(r),n[r>>2]=n[e>>2],t=e+4|0,n[r+4>>2]=n[t>>2],i=e+8|0,n[r+8>>2]=n[i>>2],n[i>>2]=0,n[t>>2]=0,n[e>>2]=0}function $u(r){r=r|0;var e=0,t=0,i=0,A=0;e=n[r>>2]|0,t=e,e|0&&(i=r+4|0,n[i>>2]=t,A=r+8|0,D(e,(n[A>>2]|0)-t|0),n[A>>2]=0,n[i>>2]=0,n[r>>2]=0)}function oe(r){r=r|0,Q0(r,7660),n[r>>2]=4496}function at(r,e){r=r|0,e=e|0,Q0(r,e),n[r>>2]=4516}function qu(r){r=r|0,Q0(r,7704),n[r>>2]=4536}function Ku(r,e){r=r|0,e=e|0;var t=0,i=0,A=0;t=r+4|0,A=n[r>>2]|0,i=(n[t>>2]|0)-A>>3,i>>>0>=e>>>0?i>>>0>e>>>0&&(n[t>>2]=A+(e<<3)):el(r,e-i|0)}function Qt(r,e){r=r|0,e=e|0,n[r>>2]=e,n[r+4>>2]=0,n[r+8>>2]=-1}function M0(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0;n[r+4>>2]=e,n[r+8>>2]=t,n[r+12>>2]=i,n[r+16>>2]=A,n[r+36>>2]=0,n[r+40>>2]=0,n[r+44>>2]=0,Pt(r+48|0),n[r+68>>2]=0,n[r+72>>2]=0,n[r+76>>2]=0;do if(A){for(i=r+20|0,n[i>>2]=0,n[r+24>>2]=A,t=A,f=0;t=t>>>1,e=f+1|0,t;)f=e;n[i>>2]=(1<<f|0)==(A|0)?f:e,t=A>>>1,n[r+28>>2]=0-t,t=A+-1-t|0}else if(t=r+20|0,(e+-1|0)>>>0<31){n[t>>2]=e,A=1<<e,n[r+24>>2]=A,t=A>>>1,n[r+28>>2]=0-t,t=A+-1-t|0;break}else{n[t>>2]=32,n[r+24>>2]=0,n[r+28>>2]=-2147483648,t=2147483647;break}while(0);n[r+32>>2]=t,n[r>>2]=0}function ue(r){r=r|0;var e=0;e=((Xr(n[r>>2]|0)|0)&255)<<24,e=((Xr(n[r>>2]|0)|0)&255)<<16|e,e=e|((Xr(n[r>>2]|0)|0)&255)<<8,n[r+4>>2]=e|(Xr(n[r>>2]|0)|0)&255}function z0(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,N=0;k=s,s=s+64|0,W=k+44|0,X=k,h=r+36|0,v=r+40|0;r:do if((n[h>>2]|0)==(n[v>>2]|0)){y=r+8|0;n:do if(!(n[y>>2]|0))F=r+20|0;else{for(A=r+20|0,f=r+44|0,o=W+4|0,u=r+44|0,c=W+8|0,i=0;;){if(F0(X,(n[A>>2]|0)+1|0,0,0),e=n[v>>2]|0,e>>>0<(n[f>>2]|0)>>>0)$t(W,h,1),tn(n[o>>2]|0,X),n[o>>2]=(n[o>>2]|0)+44,qt(W);else{if(e=((e-(n[h>>2]|0)|0)/44|0)+1|0,t=ni(h)|0,t>>>0<e>>>0)break;C=n[h>>2]|0,N=((n[f>>2]|0)-C|0)/44|0,B=N<<1,Kt(W,N>>>0<t>>>1>>>0?B>>>0<e>>>0?e:B:t,((n[v>>2]|0)-C|0)/44|0,u),tn(n[c>>2]|0,X),n[c>>2]=(n[c>>2]|0)+44,bt(h,W),ri(W)}if(p0(X),i=i+1|0,i>>>0>=(n[y>>2]|0)>>>0){F=A;break n}}d0(h)}while(0);if(n[F>>2]|0){for(o=r+12|0,u=r+68|0,c=r+72|0,h=r+76|0,v=W+4|0,A=r+76|0,f=W+8|0,i=1;;){if(e=n[o>>2]|0,F0(X,1<<(i>>>0>e>>>0?e:i),0,0),e=n[c>>2]|0,e>>>0<(n[h>>2]|0)>>>0)$t(W,u,1),tn(n[v>>2]|0,X),n[v>>2]=(n[v>>2]|0)+44,qt(W);else{if(e=((e-(n[u>>2]|0)|0)/44|0)+1|0,t=ni(u)|0,t>>>0<e>>>0)break;N=n[u>>2]|0,C=((n[h>>2]|0)-N|0)/44|0,B=C<<1,Kt(W,C>>>0<t>>>1>>>0?B>>>0<e>>>0?e:B:t,((n[c>>2]|0)-N|0)/44|0,A),tn(n[f>>2]|0,X),n[f>>2]=(n[f>>2]|0)+44,bt(u,W),ri(W)}if(p0(X),i=i+1|0,i>>>0>(n[F>>2]|0)>>>0)break r}d0(u)}}while(0);s=k}function X0(r,e,t,i){return r=r|0,e=e|0,t=t|0,i=i|0,t=(yl(r,e,(n[r+36>>2]|0)+(i*44|0)|0)|0)+t|0,e=n[r+24>>2]|0,(t|0)<0?t+e|0:t-(t>>>0<e>>>0?0:e)|0}function B0(r){r=r|0,en(r+68|0),en(r+36|0)}function Dt(r){r=r|0}function bu(r){r=r|0,Y0(r),_(r)}function rl(r){r=r|0,Y0(r),_(r)}function nl(r){r=r|0,Y0(r),_(r)}function el(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0;u=s,s=s+32|0,A=u,f=r+8|0,o=r+4|0,t=n[o>>2]|0;do if((n[f>>2]|0)-t>>3>>>0<e>>>0)if(t=(t-(n[r>>2]|0)>>3)+e|0,i=cl(r)|0,i>>>0<t>>>0)d0(r);else{c=n[r>>2]|0,h=(n[f>>2]|0)-c|0,f=h>>2,il(A,h>>3>>>0<i>>>1>>>0?f>>>0<t>>>0?t:f:i,(n[o>>2]|0)-c>>3,r+8|0),Al(A,e),fl(r,A),ol(A);break}else tl(r,e);while(0);s=u}function tl(r,e){r=r|0,e=e|0;var t=0,i=0,A=0;A=s,s=s+16|0,i=A,ul(i,r,e),r=i+4|0,e=n[r>>2]|0,t=n[i+8>>2]|0,(e|0)!=(t|0)&&(t=t+-8-e|0,O2(e|0,0,t+8&-8|0)|0,n[r>>2]=e+((t>>>3)+1<<3)),ll(i),s=A}function il(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;A=r+12|0,n[A>>2]=0,n[r+16>>2]=i;do if(e)if(e>>>0>536870911)A=u0(8)|0,h2(A,6723),n[A>>2]=5956,l0(A|0,3928,123);else{i=x(e<<3)|0;break}else i=0;while(0);n[r>>2]=i,t=i+(t<<3)|0,n[r+8>>2]=t,n[r+4>>2]=t,n[A>>2]=i+(e<<3)}function Al(r,e){r=r|0,e=e|0;var t=0,i=0;i=s,s=s+16|0,t=i,sl(t,r+8|0,e),r=n[t>>2]|0,e=n[t+4>>2]|0,(r|0)!=(e|0)&&(e=e+-8-r|0,O2(r|0,0,e+8&-8|0)|0,n[t>>2]=r+((e>>>3)+1<<3)),hl(t),s=i}function fl(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;i=n[r>>2]|0,o=r+4|0,f=e+4|0,A=(n[o>>2]|0)-i|0,t=(n[f>>2]|0)+(0-(A>>3)<<3)|0,n[f>>2]=t,(A|0)>0?(_0(t|0,i|0,A|0)|0,i=f,t=n[f>>2]|0):i=f,f=n[r>>2]|0,n[r>>2]=t,n[i>>2]=f,f=e+8|0,A=n[o>>2]|0,n[o>>2]=n[f>>2],n[f>>2]=A,f=r+8|0,o=e+12|0,r=n[f>>2]|0,n[f>>2]=n[o>>2],n[o>>2]=r,n[e>>2]=n[i>>2]}function ol(r){r=r|0;var e=0,t=0,i=0;e=n[r+4>>2]|0,t=r+8|0,i=n[t>>2]|0,(i|0)!=(e|0)&&(n[t>>2]=i+(~((i+-8-e|0)>>>3)<<3)),e=n[r>>2]|0,e|0&&D(e,(n[r+12>>2]|0)-e|0)}function ul(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,e=n[e+4>>2]|0,n[r+4>>2]=e,n[r+8>>2]=e+(t<<3)}function ll(r){r=r|0,n[(n[r>>2]|0)+4>>2]=n[r+4>>2]}function cl(r){return r=r|0,536870911}function sl(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=n[e>>2],n[r+4>>2]=(n[e>>2]|0)+(t<<3),n[r+8>>2]=e}function hl(r){r=r|0,n[n[r+8>>2]>>2]=n[r>>2]}function Pt(r){r=r|0,n[r+12>>2]=1,n[r+16>>2]=2,n[r+8>>2]=4096,n[r+4>>2]=4,n[r>>2]=4}function en(r){r=r|0;var e=0,t=0,i=0;if(t=n[r>>2]|0,t|0){if(i=r+4|0,e=n[i>>2]|0,(e|0)==(t|0))e=t;else{do e=e+-44|0,p0(e);while((e|0)!=(t|0));e=n[r>>2]|0}n[i>>2]=t,D(e,(n[r+8>>2]|0)-e|0)}}function p0(r){r=r|0;var e=0;e=n[r+8>>2]|0,e|0&&rn(e),e=n[r+12>>2]|0,e|0&&rn(e),e=n[r+16>>2]|0,e|0&&rn(e)}function Xr(r){r=r|0;var e=0,t=0;return t=r+4|0,e=n[t>>2]|0,(e|0)>=(n[r+8>>2]|0)&&(Lt(r),e=n[t>>2]|0),r=n[r+12>>2]|0,n[t>>2]=e+1,l[r+e>>0]|0}function Lt(r){r=r|0;var e=0;if(n[r+4>>2]=0,M2(n[r>>2]|0,n[r+12>>2]|0,1048576),e=ml(n[r>>2]|0)|0,n[r+8>>2]=e,!e)e=u0(8)|0,pl(e),l0(e|0,2752,8);else return}function ml(r){return r=r|0,n[r+16>>2]|0}function pl(r){r=r|0,Q0(r,7769),n[r>>2]=4556}function vl(r){r=r|0,Y0(r),_(r)}function F0(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,o=0;if(n[r>>2]=e,l[r+4>>0]=t&1,f=r+8|0,n[f>>2]=0,o=r+12|0,n[o>>2]=0,A=r+16|0,n[A>>2]=0,(e+-2|0)>>>0>2046&&(r=u0(8)|0,Q0(r,7789),l0(r|0,3912,8)),n[r+32>>2]=e+-1,e>>>0>16&(t^1)){for(t=3;1<<t+2>>>0<e>>>0;)t=t+1|0;e=1<<t,n[r+36>>2]=e,n[r+40>>2]=15-t,n[A>>2]=N2((e<<2)+8|0)|0,e=n[r>>2]|0}else n[A>>2]=0,n[r+40>>2]=0,n[r+36>>2]=0;if(n[f>>2]=N2(e<<2)|0,A=N2(n[r>>2]<<2)|0,n[o>>2]=A,n[r+20>>2]=0,e=n[r>>2]|0,t=r+24|0,n[t>>2]=e,e=(e|0)!=0,i){if(e){e=0;do n[A+(e<<2)>>2]=n[i+(e<<2)>>2],e=e+1|0;while(e>>>0<(n[r>>2]|0)>>>0)}}else if(e){e=0;do n[A+(e<<2)>>2]=1,e=e+1|0;while(e>>>0<(n[r>>2]|0)>>>0)}ce(r),i=((n[r>>2]|0)+6|0)>>>1,n[t>>2]=i,n[r+28>>2]=i}function $t(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,e=n[e+4>>2]|0,n[r+4>>2]=e,n[r+8>>2]=e+(t*44|0)}function qt(r){r=r|0,n[(n[r>>2]|0)+4>>2]=n[r+4>>2]}function tn(r,e){r=r|0,e=e|0;var t=0;n[r>>2]=n[e>>2],l[r+4>>0]=l[e+4>>0]|0,t=e+8|0,n[r+8>>2]=n[t>>2],n[r+12>>2]=n[e+12>>2],n[r+16>>2]=n[e+16>>2],n[r+20>>2]=n[e+20>>2],n[r+24>>2]=n[e+24>>2],n[r+28>>2]=n[e+28>>2],n[r+32>>2]=n[e+32>>2],n[r+36>>2]=n[e+36>>2],n[r+40>>2]=n[e+40>>2],n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0}function Kt(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;A=r+12|0,n[A>>2]=0,n[r+16>>2]=i;do if(e)if(e>>>0>97612893)A=u0(8)|0,h2(A,6723),n[A>>2]=5956,l0(A|0,3928,123);else{i=x(e*44|0)|0;break}else i=0;while(0);n[r>>2]=i,t=i+(t*44|0)|0,n[r+8>>2]=t,n[r+4>>2]=t,n[A>>2]=i+(e*44|0)}function bt(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;if(u=n[r>>2]|0,c=r+4|0,t=n[c>>2]|0,o=e+4|0,(t|0)==(u|0))A=o,f=r,i=n[o>>2]|0,t=u;else{i=n[o>>2]|0;do t=t+-44|0,le(i+-44|0,t),i=(n[o>>2]|0)+-44|0,n[o>>2]=i;while((t|0)!=(u|0));A=o,f=r,t=n[r>>2]|0}n[f>>2]=i,n[A>>2]=t,u=e+8|0,o=n[c>>2]|0,n[c>>2]=n[u>>2],n[u>>2]=o,u=r+8|0,c=e+12|0,r=n[u>>2]|0,n[u>>2]=n[c>>2],n[c>>2]=r,n[e>>2]=n[A>>2]}function ri(r){r=r|0;var e=0,t=0,i=0,A=0;if(t=n[r+4>>2]|0,i=r+8|0,e=n[i>>2]|0,(e|0)!=(t|0))do A=e+-44|0,n[i>>2]=A,p0(A),e=n[i>>2]|0;while((e|0)!=(t|0));e=n[r>>2]|0,e|0&&D(e,(n[r+12>>2]|0)-e|0)}function ni(r){return r=r|0,97612893}function le(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;t=n[e>>2]|0,n[r>>2]=t,l[r+4>>0]=l[e+4>>0]|0,n[r+20>>2]=n[e+20>>2],n[r+24>>2]=n[e+24>>2],n[r+28>>2]=n[e+28>>2],n[r+32>>2]=n[e+32>>2],f=r+36|0,n[f>>2]=n[e+36>>2],n[r+40>>2]=n[e+40>>2],t=t<<2,i=N2(t)|0,n[r+8>>2]=i,A=n[r>>2]|0,A|0&&I0(i|0,n[e+8>>2]|0,A<<2|0)|0,t=N2(t)|0,n[r+12>>2]=t,i=n[r>>2]|0,i|0&&I0(t|0,n[e+12>>2]|0,i<<2|0)|0,t=n[f>>2]|0,t?(i=N2((t<<2)+8|0)|0,n[r+16>>2]=i,t=(n[f>>2]<<2)+8|0,t|0&&I0(i|0,n[e+16>>2]|0,t|0)|0):n[r+16>>2]=0}function ce(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0;if(X=r+24|0,A=r+20|0,e=(n[A>>2]|0)+(n[X>>2]|0)|0,n[A>>2]=e,e>>>0>32768)if(n[A>>2]=0,!(n[r>>2]|0))e=0;else{i=n[r+12>>2]|0,t=0;do y=i+(t<<2)|0,e=((n[y>>2]|0)+1|0)>>>1,n[y>>2]=e,e=(n[A>>2]|0)+e|0,n[A>>2]=e,t=t+1|0;while(t>>>0<(n[r>>2]|0)>>>0)}y=2147483648/(e>>>0)|0;do if(!(l[r+4>>0]|0)&&(F=r+36|0,(n[F>>2]|0)!=0)){if(n[r>>2]|0){u=n[r+8>>2]|0,c=n[r+12>>2]|0,h=r+40|0,v=r+16|0,e=0,f=0,o=0;do{if(t=(L(f,y)|0)>>>16,n[u+(o<<2)>>2]=t,f=(n[c+(o<<2)>>2]|0)+f|0,t=t>>>(n[h>>2]|0),e>>>0<t>>>0){i=o+-1|0,A=n[v>>2]|0;do e=e+1|0,n[A+(e<<2)>>2]=i;while((e|0)!=(t|0));e=t}o=o+1|0}while(o>>>0<(n[r>>2]|0)>>>0);if(t=n[v>>2]|0,n[t>>2]=0,e>>>0>(n[F>>2]|0)>>>0){e=r;break}}else t=n[r+16>>2]|0,n[t>>2]=0,e=0;do e=e+1|0,n[t+(e<<2)>>2]=(n[r>>2]|0)+-1;while(e>>>0<=(n[F>>2]|0)>>>0);e=r}else W=7;while(0);if((W|0)==7)if(!(n[r>>2]|0))e=r;else{i=n[r+8>>2]|0,A=n[r+12>>2]|0,e=0,t=0;do n[i+(e<<2)>>2]=(L(t,y)|0)>>>16,t=(n[A+(e<<2)>>2]|0)+t|0,e=e+1|0;while(e>>>0<(n[r>>2]|0)>>>0);e=r}W=((n[X>>2]|0)*5|0)>>>2,F=(n[e>>2]<<3)+48|0,W=W>>>0>F>>>0?F:W,n[X>>2]=W,n[r+28>>2]=W}function yl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;t=w0(e,t)|0,n[r>>2]=t;do if(t){if(t>>>0>=32){t=n[r+28>>2]|0;break}if(i=n[r+12>>2]|0,t>>>0>i>>>0?(i=t-i|0,t=w0(e,(n[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,i=t<<i|(ei(e,i)|0)):i=w0(e,(n[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,t=n[r>>2]|0,(i|0)<(1<<t+-1|0)){t=i+1+(-1<<t)|0;break}else{t=i+1|0;break}}else t=Zl(e,r+48|0)|0;while(0);return t|0}function w0(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;if(F=r+8|0,y=n[F>>2]|0,A=n[e+16>>2]|0,A){if(i=r+4|0,t=n[i>>2]|0,v=y>>>15,n[F>>2]=v,c=(t>>>0)/(v>>>0)|0,u=c>>>(n[e+40>>2]|0),f=n[A+(u<<2)>>2]|0,u=(n[A+(u+1<<2)>>2]|0)+1|0,o=f+1|0,h=n[e+8>>2]|0,u>>>0>o>>>0){A=f,f=u;do o=(f+A|0)>>>1,u=(n[h+(o<<2)>>2]|0)>>>0>c>>>0,A=u?A:o,f=u?o:f,o=A+1|0;while(f>>>0>o>>>0);f=A}A=L(n[h+(f<<2)>>2]|0,v)|0,(f|0)==(n[e+32>>2]|0)?o=y:o=L(n[h+(o<<2)>>2]|0,v)|0}else{h=y>>>15,n[F>>2]=h,u=n[e>>2]|0,v=n[e+8>>2]|0,i=r+4|0,t=n[i>>2]|0,c=u>>>1,A=0,o=y,f=0;do W=L(n[v+(c<<2)>>2]|0,h)|0,y=W>>>0>t>>>0,o=y?W:o,A=y?A:W,f=y?f:c,u=y?c:u,c=(f+u|0)>>>1;while((c|0)!=(f|0))}return n[i>>2]=t-A,W=o-A|0,n[F>>2]=W,W>>>0<16777216&&An(r),F=(n[e+12>>2]|0)+(f<<2)|0,n[F>>2]=(n[F>>2]|0)+1,F=e+28|0,W=(n[F>>2]|0)+-1|0,n[F>>2]=W,W||ce(e),f|0}function ei(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;return e>>>0>19?(t=(se(r)|0)&65535,(ei(r,e+-16|0)|0)<<16|t|0):(i=r+4|0,A=n[i>>2]|0,f=r+8|0,t=(n[f>>2]|0)>>>e,n[f>>2]=t,e=(A>>>0)/(t>>>0)|0,n[i>>2]=A-(L(e,t)|0),t>>>0<16777216&&An(r),e|0)}function Zl(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0;return i=r+8|0,A=n[i>>2]|0,t=L(A>>>13,n[e+8>>2]|0)|0,f=r+4|0,o=n[f>>2]|0,u=o>>>0>=t>>>0,u?(n[f>>2]=o-t,t=A-t|0,n[i>>2]=t):(n[i>>2]=t,o=e+12|0,n[o>>2]=(n[o>>2]|0)+1),t>>>0<16777216&&An(r),o=e+4|0,r=(n[o>>2]|0)+-1|0,n[o>>2]=r,r||ti(e),u&1|0}function An(r){r=r|0;var e=0,t=0,i=0,A=0;e=r+4|0,t=r+8|0,i=n[e>>2]|0;do i=i<<8|(Xr(n[r>>2]|0)|0)&255,n[e>>2]=i,A=n[t>>2]<<8,n[t>>2]=A;while(A>>>0<16777216)}function se(r){r=r|0;var e=0,t=0,i=0,A=0;return t=r+4|0,A=n[t>>2]|0,e=r+8|0,i=(n[e>>2]|0)>>>16,n[e>>2]=i,e=(A>>>0)/(i>>>0)|0,n[t>>2]=A-(L(e,i)|0),An(r),e&65535|0}function ti(r){r=r|0;var e=0,t=0,i=0,A=0,f=0;A=n[r>>2]|0,t=r+16|0,e=(n[t>>2]|0)+A|0,n[t>>2]=e,e>>>0>8192?(i=(e+1|0)>>>1,n[t>>2]=i,f=r+12|0,e=((n[f>>2]|0)+1|0)>>>1,n[f>>2]=e,(e|0)==(i|0)?(e=i+1|0,n[t>>2]=e,t=e,e=i):t=i):(t=e,e=n[r+12>>2]|0),n[r+8>>2]=(L(e,2147483648/(t>>>0)|0)|0)>>>18,f=A*5|0,f=f>>>0>259?64:f>>>2,n[r>>2]=f,n[r+4>>2]=f}function Rl(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0;v=s,s=s+32|0,f=v+16|0,o=v+8|0,u=v,c=r+336|0,i=c,A=r+259|0,!(n[i+4>>2]|0)&&(n[i>>2]|0)==(Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0)?(i=r+320|0,t=n[r+320>>2]|0,h=5):(i=r+320|0,t=n[i>>2]|0,A=t,t|0&&n[r+312>>2]|0||(t=A,h=5)),(h|0)==5&&(h=r+320|0,n[f>>2]=t,n[h>>2]=0,t=r+324|0,n[f+4>>2]=n[t>>2],n[t>>2]=0,br(f),A=r+312|0,n[f>>2]=n[A>>2],n[A>>2]=0,y=r+316|0,n[f+4>>2]=n[y>>2],n[y>>2]=0,ie(f),F=x(12)|0,Qt(F,r+4|0),n[u>>2]=0,n[f>>2]=n[u>>2],Fl(o,F,f),F=n[o>>2]|0,n[o>>2]=n[A>>2],n[A>>2]=F,F=o+4|0,u=n[F>>2]|0,n[F>>2]=n[y>>2],n[y>>2]=u,ie(o),Vl(o,n[A>>2]|0,r+300|0),A=n[o>>2]|0,y=o+4|0,u=n[y>>2]|0,n[o>>2]=0,n[y>>2]=0,n[f>>2]=n[h>>2],n[h>>2]=A,n[f+4>>2]=n[t>>2],n[t>>2]=u,br(f),br(o),t=r+328|0,u=t,u=O0(n[u>>2]|0,n[u+4>>2]|0,1,0)|0,h=r0()|0,n[t>>2]=u,n[t+4>>2]=h,t=c,n[t>>2]=0,n[t+4>>2]=0,t=n[i>>2]|0),xr[n[n[t>>2]>>2]&63](t,e)|0,h=c,h=O0(n[h>>2]|0,n[h+4>>2]|0,1,0)|0,y=r0()|0,F=c,n[F>>2]=h,n[F+4>>2]=y,s=v}function Vl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;o=s,s=s+64|0,i=o+56|0,A=o,f=gl(t)|0,(f|0)==-1&&(o=u0(8)|0,Ul(o),l0(o|0,2784,8)),t=ii(t)|0;r:do if(t)Tl(i,e),Gl(n[i>>2]|0),(f|2|0)==3&&Nl(n[i>>2]|0),(f|1|0)==3&&Ml(n[i>>2]|0),f=n[i>>2]|0,Bl(A,t),zl(f,A),Ai(A),n[r>>2]=n[i>>2],f=i+4|0,n[r+4>>2]=n[f>>2],n[i>>2]=0,n[f>>2]=0,Jl(i);else switch(f|0){case 0:{f=x(4788)|0,_l(f),Yl(r,e,f);break r}case 1:{f=x(5116)|0,El(f),xl(r,e,f);break r}case 2:{f=x(5104)|0,Sl(f),jl(r,e,f);break r}case 3:{f=x(5432)|0,Ol(f),Cl(r,e,f);break r}default:{n[r>>2]=0,n[r+4>>2]=0;break r}}while(0);s=o}function Fl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4576,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,wl(r,i),s=t}function wl(r,e){r=r|0,e=e|0}function kl(r){r=r|0,Z0(r),_(r)}function Wl(r){r=r|0,r=n[r+12>>2]|0,r|0&&(Dt(r),_(r))}function Xl(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==7983?r+12|0:0)|0}function dl(r){r=r|0,D(r,16)}function gl(r){r=r|0;var e=0,t=0;e=(n[r+4>>2]|0)-(n[r>>2]|0)|0;r:do if(e|0&&(t=((e|0)/12|0)+(((ii(r)|0)!=0)<<31>>31)|0,(t|0)!=0)&&(e=n[r>>2]|0,!(Il(e,Hl()|0)|0))){switch(t|0){case 1:{r=0;break r}case 2:{if(dr((n[r>>2]|0)+12|0,fi()|0)|0){r=1;break r}if(dr((n[r>>2]|0)+12|0,oi()|0)|0){r=2;break r}break}case 3:{if(dr((n[r>>2]|0)+12|0,fi()|0)|0&&(t=(n[r>>2]|0)+24|0,dr(t,oi()|0)|0)){r=3;break r}break}default:}r=-1}else r=-1;while(0);return r|0}function Ul(r){r=r|0,Q0(r,8131),n[r>>2]=4604}function ii(r){r=r|0;var e=0,t=0;return e=n[r+4>>2]|0,(e|0)!=(n[r>>2]|0)&&(t=e,(n[t+-12>>2]|0)==0)&&(n[t+-4>>2]|0)==2?r=n[t+-8>>2]|0:r=0,r|0}function Tl(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;t=s,s=s+16|0,i=t+4|0,f=t,A=x(24)|0,Ql(A,e),n[f>>2]=0,n[i>>2]=n[f>>2],Dl(r,A,i),s=t}function Gl(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(4792)|0,ec(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],tc(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function Nl(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(336)|0,Xc(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],dc(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function Ml(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(324)|0,Ic(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],Hc(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function zl(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,o=c+12|0,u=c,i=c+8|0,f=x(64)|0,r4(f,n[r+4>>2]|0,e),A=r+8|0,n[i>>2]=0,n[o>>2]=n[i>>2],n4(u,f,o),f=r+12|0,e=n[f>>2]|0,i=r+16|0;do if(e>>>0>=(n[i>>2]|0)>>>0)if(e=(e-(n[A>>2]|0)>>3)+1|0,t=n2(A)|0,t>>>0<e>>>0)d0(A);else{h=n[A>>2]|0,v=(n[i>>2]|0)-h|0,i=v>>2,K0(o,v>>3>>>0<t>>>1>>>0?i>>>0<e>>>0?e:i:t,(n[f>>2]|0)-h>>3,r+16|0),r=o+8|0,f=n[r>>2]|0,n[f>>2]=n[u>>2],i=u+4|0,n[f+4>>2]=n[i>>2],n[u>>2]=0,n[i>>2]=0,n[r>>2]=f+8,b0(A,o),r2(o);break}else $0(o,A,1),v=o+4|0,h=n[v>>2]|0,n[h>>2]=n[u>>2],r=u+4|0,n[h+4>>2]=n[r>>2],n[u>>2]=0,n[r>>2]=0,n[v>>2]=h+8,q0(o);while(0);G0(u),s=c}function Bl(r,e){r=r|0,e=e|0;var t=0,i=0;t=s,s=s+48|0,i=t,n[r>>2]=e,l[r+4>>0]=0,Oi(r+8|0,e),Oi(r+20|0,e),F0(i,256,0,0),g4(r+32|0,e,i),p0(i),s=t}function Ai(r){r=r|0,G4(r+32|0),Ni(r+20|0),Ni(r+8|0)}function Jl(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function Yl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;i=s,s=s+16|0,A=i+4|0,o=i,f=x(12)|0,N4(f,e,t),n[o>>2]=0,n[A>>2]=n[o>>2],M4(r,f,A),s=i}function _l(r){r=r|0,gr(r),Ve(r+4784|0)}function xl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;i=s,s=s+16|0,A=i+4|0,o=i,f=x(12)|0,S4(f,e,t),n[o>>2]=0,n[A>>2]=n[o>>2],C4(r,f,A),s=i}function El(r){r=r|0,gr(r),K4(r+4784|0)}function jl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;i=s,s=s+16|0,A=i+4|0,o=i,f=x(12)|0,b4(f,e,t),n[o>>2]=0,n[A>>2]=n[o>>2],rs(r,f,A),s=i}function Sl(r){r=r|0,gr(r),Pi(r+4784|0)}function Cl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;i=s,s=s+16|0,A=i+4|0,o=i,f=x(12)|0,ls(f,e,t),n[o>>2]=0,n[A>>2]=n[o>>2],cs(r,f,A),s=i}function Ol(r){r=r|0,gr(r),ws(r+4784|0)}function Il(r,e){return r=r|0,e=e|0,(dr(r,e)|0)^1|0}function Hl(){return!(l[21456]|0)&&j2(21456)|0&&(Wr(21536,6,20,2),S2(21456)),21536}function dr(r,e){return r=r|0,e=e|0,(n[r>>2]|0)==(n[e>>2]|0)&&(n[r+8>>2]|0)==(n[e+8>>2]|0)?r=(n[r+4>>2]|0)==(n[e+4>>2]|0):r=0,r|0}function fi(){return!(l[21464]|0)&&j2(21464)|0&&(Wr(21548,7,8,2),S2(21464)),21548}function oi(){return!(l[21472]|0)&&j2(21472)|0&&(Wr(21560,8,6,2),S2(21472)),21560}function al(r){r=r|0,Y0(r),_(r)}function Ql(r,e){r=r|0,e=e|0,tr(r),n[r>>2]=4624,n[r+4>>2]=e,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,l[r+20>>0]=1}function Dl(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4664,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,ql(r,i),s=t}function tr(r){r=r|0,n[r>>2]=4644}function Pl(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;if(c=s,s=s+16|0,f=c,t=n[r+8>>2]|0,o=n[r+12>>2]|0,(t|0)!=(o|0)){u=f+4|0;do i=n[t>>2]|0,n[f>>2]=i,A=n[t+4>>2]|0,n[u>>2]=A,A|0&&(A=A+4|0,n[A>>2]=(n[A>>2]|0)+1),e=xr[n[(n[i>>2]|0)+12>>2]&63](i,e)|0,G0(f),t=t+8|0;while((t|0)!=(o|0))}return t=r+20|0,l[t>>0]|0&&(l[t>>0]=0,ue(n[r+4>>2]|0)),s=c,e|0}function ui(r){r=r|0,n[r>>2]=4624,li(r+8|0),z2(r)}function Ll(r){r=r|0,ui(r),_(r)}function z2(r){r=r|0}function $l(r){r=r|0,xt()}function G0(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function li(r){r=r|0;var e=0,t=0,i=0;if(t=n[r>>2]|0,t|0){if(i=r+4|0,e=n[i>>2]|0,(e|0)==(t|0))e=t;else{do e=e+-8|0,G0(e);while((e|0)!=(t|0));e=n[r>>2]|0}n[i>>2]=t,D(e,(n[r+8>>2]|0)-e|0)}}function ql(r,e){r=r|0,e=e|0}function Kl(r){r=r|0,Z0(r),_(r)}function bl(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+8>>2]&255](r)}function rc(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==8546?r+12|0:0)|0}function nc(r){r=r|0,D(r,16)}function ec(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=4692,n[r+4>>2]=e,gr(r+8|0)}function tc(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4740,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function $0(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,e=n[e+4>>2]|0,n[r+4>>2]=e,n[r+8>>2]=e+(t<<3)}function q0(r){r=r|0,n[(n[r>>2]|0)+4>>2]=n[r+4>>2]}function K0(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;A=r+12|0,n[A>>2]=0,n[r+16>>2]=i;do if(e)if(e>>>0>536870911)A=u0(8)|0,h2(A,6723),n[A>>2]=5956,l0(A|0,3928,123);else{i=x(e<<3)|0;break}else i=0;while(0);n[r>>2]=i,t=i+(t<<3)|0,n[r+8>>2]=t,n[r+4>>2]=t,n[A>>2]=i+(e<<3)}function b0(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;if(u=n[r>>2]|0,c=r+4|0,t=n[c>>2]|0,o=e+4|0,(t|0)==(u|0))A=o,f=r,i=n[o>>2]|0,t=u;else{i=n[o>>2]|0;do f=t,t=t+-8|0,n[i+-8>>2]=n[t>>2],f=f+-4|0,n[i+-4>>2]=n[f>>2],n[t>>2]=0,n[f>>2]=0,i=(n[o>>2]|0)+-8|0,n[o>>2]=i;while((t|0)!=(u|0));A=o,f=r,t=n[r>>2]|0}n[f>>2]=i,n[A>>2]=t,u=e+8|0,o=n[c>>2]|0,n[c>>2]=n[u>>2],n[u>>2]=o,u=r+8|0,c=e+12|0,r=n[u>>2]|0,n[u>>2]=n[c>>2],n[c>>2]=r,n[e>>2]=n[A>>2]}function r2(r){r=r|0;var e=0,t=0,i=0,A=0;if(t=n[r+4>>2]|0,i=r+8|0,e=n[i>>2]|0,(e|0)!=(t|0))do A=e+-8|0,n[i>>2]=A,G0(A),e=n[i>>2]|0;while((e|0)!=(t|0));e=n[r>>2]|0,e|0&&D(e,(n[r+12>>2]|0)-e|0)}function n2(r){return r=r|0,536870911}function e2(r){r=r|0,n[r>>2]=4716}function gr(r){r=r|0,lc(r),cc(r+3980|0),sc(r+4380|0),l[r+4780>>0]=0,l[r+4781>>0]=0}function ci(r){r=r|0,n[r>>2]=4692,Ur(r+8|0),j0(r)}function ic(r){r=r|0,ci(r),_(r)}function Ac(r,e){return r=r|0,e=e|0,e|0}function fc(r,e){return r=r|0,e=e|0,Tr(r+8|0,n[r+4>>2]|0,e)|0}function j0(r){r=r|0}function oc(r){r=r|0,j0(r),_(r)}function uc(r,e){return r=r|0,e=e|0,e|0}function lc(r){r=r|0;var e=0,t=0;si(r),hi(r+52|0),hi(r+436|0),F0(r+852|0,64,0,0),l[r+3976>>0]=0,e=r+20|0,t=e+32|0;do g[e>>1]=0,e=e+2|0;while((e|0)<(t|0));e=x(44)|0,F0(e,256,0,0),n[r+896>>2]=e,e=x(44)|0,F0(e,256,0,0),n[r+900>>2]=e,e=r+820|0,n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,n[e+16>>2]=0,n[e+20>>2]=0,n[e+24>>2]=0,n[e+28>>2]=0,e=0;do t=x(44)|0,F0(t,256,0,0),n[r+904+(e<<2)>>2]=t,t=x(44)|0,F0(t,256,0,0),n[r+1928+(e<<2)>>2]=t,t=x(44)|0,F0(t,256,0,0),n[r+2952+(e<<2)>>2]=t,e=e+1|0;while(e>>>0<256)}function cc(r){r=r|0,S0(r,16,4,8,0),S0(r+80|0,16,1,8,0),S0(r+160|0,32,2,8,0),S0(r+240|0,32,22,8,0),S0(r+320|0,32,20,8,0)}function sc(r){r=r|0,M0(r,16,4,8,0),M0(r+80|0,16,1,8,0),M0(r+160|0,32,2,8,0),M0(r+240|0,32,22,8,0),M0(r+320|0,32,20,8,0)}function hc(r){r=r|0,C0(r+320|0),C0(r+240|0),C0(r+160|0),C0(r+80|0),C0(r)}function mc(r){r=r|0;var e=0,t=0;e=n[r+896>>2]|0,e|0&&(p0(e),_(e)),e=n[r+900>>2]|0,e|0&&(p0(e),_(e)),t=0;do e=n[r+904+(t<<2)>>2]|0,e|0&&(p0(e),_(e)),e=n[r+1928+(t<<2)>>2]|0,e|0&&(p0(e),_(e)),e=n[r+2952+(t<<2)>>2]|0,e|0&&(p0(e),_(e)),t=t+1|0;while((t|0)!=256);p0(r+852|0)}function si(r){r=r|0;var e=0;l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0,e=r+4|0,l[e>>0]=0,l[e+1>>0]=0,l[e+2>>0]=0,l[e+3>>0]=0,r=r+12|0,e=r,l[e>>0]=0,l[e+1>>0]=0,l[e+2>>0]=0,l[e+3>>0]=0,r=r+4|0,l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0}function hi(r){r=r|0;var e=0;e=r+384|0;do pc(r),r=r+24|0;while((r|0)!=(e|0))}function pc(r){r=r|0,vc(r)}function vc(r){r=r|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,l[r+20>>0]=1}function S0(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0;n[r+4>>2]=e,n[r+8>>2]=t,n[r+12>>2]=i,n[r+16>>2]=A,n[r+36>>2]=0,n[r+40>>2]=0,n[r+44>>2]=0,Pt(r+48|0),n[r+68>>2]=0,n[r+72>>2]=0,n[r+76>>2]=0;do if(A){for(i=r+20|0,n[i>>2]=0,n[r+24>>2]=A,t=A,f=0;t=t>>>1,e=f+1|0,t;)f=e;n[i>>2]=(1<<f|0)==(A|0)?f:e,t=A>>>1,n[r+28>>2]=0-t,t=A+-1-t|0}else if(t=r+20|0,(e+-1|0)>>>0<31){n[t>>2]=e,A=1<<e,n[r+24>>2]=A,t=A>>>1,n[r+28>>2]=0-t,t=A+-1-t|0;break}else{n[t>>2]=32,n[r+24>>2]=0,n[r+28>>2]=-2147483648,t=2147483647;break}while(0);n[r+32>>2]=t,n[r>>2]=0}function C0(r){r=r|0;var e=0,t=0,i=0,A=0,f=0;if(f=r+36|0,t=n[f>>2]|0,i=r+40|0,e=n[i>>2]|0,(e|0)!=(t|0))do e=e+-44|0,p0(e);while((e|0)!=(t|0));if(n[i>>2]=t,i=r+68|0,A=n[i>>2]|0,t=r+72|0,e=n[t>>2]|0,(e|0)!=(A|0))do e=e+-44|0,p0(e);while((e|0)!=(A|0));n[t>>2]=A,en(i),en(f)}function Ur(r){r=r|0,yc(r+4380|0),hc(r+3980|0),mc(r)}function yc(r){r=r|0,B0(r+320|0),B0(r+240|0),B0(r+160|0),B0(r+80|0),B0(r)}function Tr(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0;if(v=s,s=s+32|0,h=v,i=r+4781|0,l[i>>0]|0||(Zc(r+4380|0),l[i>>0]=1),i=r+3976|0,l[i>>0]|0)u=w0(e,r+852|0)|0,u?(u&32|0&&pi((w0(e,n[r+904+(((mi(r)|0)&255)<<2)>>2]|0)|0)&255,r),c=r+14|0,f=l[c>>0]|0,i=f&7,f=(f&255)>>>3&7,A=Z[16+(f<<3)+i>>0]|0,i=Z[80+(f<<3)+i>>0]|0,u&16?(y=r+20+(A<<1)|0,o=(X0(r+4380|0,e,T[y>>1]|0,A>>>0<3?A:3)|0)&65535,g[y>>1]=o):o=g[r+20+(A<<1)>>1]|0,g[r+12>>1]=o,u&8|0&&(y=r+15|0,l[y>>0]=w0(e,n[r+1928+(Z[y>>0]<<2)>>2]|0)|0),u&4|0&&(c=w0(e,n[r+896+(((Z[c>>0]|0)>>>6&1)<<2)>>2]|0)|0,y=r+16|0,l[y>>0]=B2(c+(l[y>>0]|0)|0)|0),u&2|0&&(y=r+17|0,l[y>>0]=w0(e,n[r+2952+(Z[y>>0]<<2)>>2]|0)|0),u&1&&(y=r+18|0,g[y>>1]=X0(r+4460|0,e,T[y>>1]|0,0)|0)):(y=l[r+14>>0]|0,i=y&7,y=(y&255)>>>3&7,f=y,A=Z[16+(y<<3)+i>>0]|0,i=Z[80+(y<<3)+i>>0]|0),o=r+52+(A*24|0)|0,u=r+4540|0,c=(f|0)==1&1,f=X0(u,e,vi(o)|0,c)|0,n[h>>2]=f,n[r>>2]=(n[r>>2]|0)+f,yi(o,h),o=r+436+(A*24|0)|0,f=vi(o)|0,A=he(u)|0,y=r+4620|0,A=X0(y,e,f,(A>>>0<20?A&-2:20)|c)|0,n[h>>2]=A,f=r+4|0,n[f>>2]=(n[f>>2]|0)+A,yi(o,h),h=he(u)|0,h=(he(y)|0)+h|0,y=r+820+(i<<2)|0,h=X0(r+4700|0,e,n[y>>2]|0,(h>>>0<36?h>>>1&2147483646:18)|c)|0,n[r+8>>2]=h,n[y>>2]=h,Vc(r,t);else{l[i>>0]=1,on(fn(e)|0,t,20),Rc(h,t),f=r,i=h,A=f+20|0;do l[f>>0]=l[i>>0]|0,f=f+1|0,i=i+1|0;while((f|0)<(A|0));g[r+12>>1]=0}return s=v,t+20|0}function Zc(r){r=r|0,z0(r),z0(r+80|0),z0(r+160|0),z0(r+240|0),z0(r+320|0)}function fn(r){return r=r|0,n[r>>2]|0}function on(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0;if(c=r+4|0,i=n[c>>2]|0,u=(n[r+8>>2]|0)-i|0,u=u>>>0>t>>>0?t:u,o=r+12|0,A=(n[o>>2]|0)+i|0,f=A+u|0,u){for(i=A,A=e;l[A>>0]=l[i>>0]|0,i=i+1|0,(i|0)!=(f|0);)A=A+1|0;i=n[c>>2]|0}if(n[c>>2]=i+u,t=t-u|0,t|0){for(Lt(r),A=(n[o>>2]|0)+(n[c>>2]|0)|0,f=A+t|0,i=e+u|0;l[i>>0]=l[A>>0]|0,A=A+1|0,(A|0)!=(f|0);)i=i+1|0;n[c>>2]=(n[c>>2]|0)+t}}function Rc(r,e){r=r|0,e=e|0,si(r),n[r>>2]=un(e)|0,n[r+4>>2]=un(e+4|0)|0,n[r+8>>2]=un(e+8|0)|0,g[r+12>>1]=J2(e+12|0)|0,pi(me(e+14|0)|0,r),l[r+15>>0]=me(e+15|0)|0,l[r+16>>0]=Zi(e+16|0)|0,l[r+17>>0]=Zi(e+17|0)|0,g[r+18>>1]=J2(e+18|0)|0}function mi(r){return r=r|0,l[r+14>>0]|0}function pi(r,e){r=r|0,e=e|0,l[e+14>>0]=r}function B2(r){return r=r|0,r&255|0}function vi(r){return r=r|0,n[r+8>>2]|0}function yi(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;c=r+20|0;do if(l[c>>0]|0){if(A=n[e>>2]|0,o=r+8|0,t=n[o>>2]|0,f=r+12|0,i=n[f>>2]|0,(A|0)>=(t|0)){t=r+16|0,(A|0)<(i|0)?(n[t>>2]=i,n[f>>2]=n[e>>2]):n[t>>2]=A,l[c>>0]=0;break}if(n[r+16>>2]=i,n[f>>2]=t,t=n[e>>2]|0,i=n[r>>2]|0,A=r+4|0,f=n[A>>2]|0,(t|0)<(i|0)){n[o>>2]=f,n[A>>2]=i,n[r>>2]=n[e>>2];break}if((t|0)<(f|0)){n[o>>2]=f,n[A>>2]=n[e>>2];break}else{n[o>>2]=t;break}}else{if(u=r+8|0,t=n[u>>2]|0,i=n[e>>2]|0,A=r+4|0,f=n[A>>2]|0,(t|0)>=(i|0)){(f|0)<(i|0)?(n[r>>2]=f,n[A>>2]=n[e>>2]):n[r>>2]=i,l[c>>0]=1;break}if(n[r>>2]=f,n[A>>2]=t,A=r+16|0,f=n[A>>2]|0,o=n[e>>2]|0,t=r+12|0,i=n[t>>2]|0,(f|0)<(o|0)){n[u>>2]=i,n[t>>2]=f,n[A>>2]=n[e>>2];break}if((i|0)<(o|0)){n[u>>2]=i,n[t>>2]=n[e>>2];break}else{n[u>>2]=o;break}}while(0)}function he(r){return r=r|0,n[r>>2]|0}function Vc(r,e){r=r|0,e=e|0;var t=0;cn(Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24,e),t=r+4|0,cn(Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,e+4|0),t=r+8|0,cn(Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,e+8|0),t=r+12|0,Y2(Z[t>>0]|Z[t+1>>0]<<8,e+12|0),pe(mi(r)|0,e+14|0),pe(l[r+15>>0]|0,e+15|0),Ri(l[r+16>>0]|0,e+16|0),Ri(l[r+17>>0]|0,e+17|0),r=r+18|0,Y2(Z[r>>0]|Z[r+1>>0]<<8,e+18|0)}function un(r){return r=r|0,ln(r)|0}function J2(r){return r=r|0,(l[r+1>>0]<<8|Z[r>>0])&65535|0}function me(r){return r=r|0,l[r>>0]|0}function Zi(r){return r=r|0,l[r>>0]|0}function ln(r){return r=r|0,(Z[r+1>>0]|0)<<8|(Z[r>>0]|0)|(Z[r+2>>0]|0)<<16|(Z[r+3>>0]|0)<<24|0}function cn(r,e){r=r|0,e=e|0,sn(r,e)}function Y2(r,e){r=r|0,e=e|0,l[e+1>>0]=(r&65535)>>>8,l[e>>0]=r}function pe(r,e){r=r|0,e=e|0,l[e>>0]=r}function Ri(r,e){r=r|0,e=e|0,l[e>>0]=r}function sn(r,e){r=r|0,e=e|0,l[e+3>>0]=r>>>24,l[e+2>>0]=r>>>16,l[e+1>>0]=r>>>8,l[e>>0]=r}function t2(r,e){r=r|0,e=e|0}function Fc(r){r=r|0,Z0(r),_(r)}function wc(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function kc(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==9202?r+12|0:0)|0}function Wc(r){r=r|0,D(r,16)}function Xc(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=4768,n[r+4>>2]=e,ve(r+8|0)}function dc(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4792,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function ve(r){r=r|0,Tc(r),Gc(r+164|0),Nc(r+244|0),l[r+324>>0]=0,l[r+325>>0]=0}function Vi(r){r=r|0,n[r>>2]=4768,ye(r+8|0),j0(r)}function gc(r){r=r|0,Vi(r),_(r)}function Uc(r,e){return r=r|0,e=e|0,Gr(r+8|0,n[r+4>>2]|0,e)|0}function Tc(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0;for(f=s,s=s+16|0,i=f,l[r>>0]=0,F0(r+4|0,516,0,0),F0(r+48|0,6,0,0),n[r+92>>2]=0,n[r+96>>2]=0,t=r+100|0,Bc(t),Fi(i),A=n[i>>2]|0,i=n[i+4>>2]|0,e=4;o=t,u=o,l[u>>0]=A,l[u+1>>0]=A>>8,l[u+2>>0]=A>>16,l[u+3>>0]=A>>24,o=o+4|0,l[o>>0]=i,l[o+1>>0]=i>>8,l[o+2>>0]=i>>16,l[o+3>>0]=i>>24,e=e+-1|0,e;)t=t+8|0;u=r+132|0,n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,n[u+12>>2]=0,n[u+16>>2]=0,n[u+20>>2]=0,n[u+24>>2]=0,n[u+28>>2]=0,s=f}function Gc(r){r=r|0,S0(r,32,9,8,0)}function Nc(r){r=r|0,M0(r,32,9,8,0)}function Mc(r){r=r|0,C0(r)}function zc(r){r=r|0,p0(r+48|0),p0(r+4|0)}function Bc(r){r=r|0;var e=0;e=r+32|0;do Fi(r),r=r+8|0;while((r|0)!=(e|0))}function Fi(r){r=r|0;var e=0;e=r,l[e>>0]=0,l[e+1>>0]=0,l[e+2>>0]=0,l[e+3>>0]=0,r=r+4|0,l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0}function ye(r){r=r|0,Jc(r+244|0),Mc(r+164|0),zc(r)}function Jc(r){r=r|0,B0(r)}function Gr(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0;if(i=r+325|0,l[i>>0]|0||(Yc(r+244|0),l[i>>0]=1),!(l[r>>0]|0))l[r>>0]=1,on(fn(e)|0,t,8),f=_c(t)|0,o=r0()|0,r=r+100|0,e=r,l[e>>0]=f,l[e+1>>0]=f>>8,l[e+2>>0]=f>>16,l[e+3>>0]=f>>24,r=r+4|0,l[r>>0]=o,l[r+1>>0]=o>>8,l[r+2>>0]=o>>16,l[r+3>>0]=o>>24;else{o=r+92|0;r:do if(n[r+132+(n[o>>2]<<2)>>2]|0){if(f=w0(e,r+4|0)|0,(f|0)==1){i=X0(r+244|0,e,n[r+132+(n[o>>2]<<2)>>2]|0,1)|0,u=n[o>>2]|0,e=r+100+(u<<3)|0,f=e,A=f,f=f+4|0,i=O0(Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0,Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24|0,i|0,((i|0)<0)<<31>>31|0)|0,f=r0()|0,A=e,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,e=e+4|0,l[e>>0]=f,l[e+1>>0]=f>>8,l[e+2>>0]=f>>16,l[e+3>>0]=f>>24,n[r+148+(u<<2)>>2]=0;break}if((f|0)>=511){if((f|0)==512){u=r+96|0,n[u>>2]=(n[u>>2]|0)+1&3,f=r+100+(n[o>>2]<<3)+4|0,f=X0(r+244|0,e,Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24,8)|0,i=r+100+(n[u>>2]<<3)|0,A=i,l[A>>0]=0,l[A+1>>0]=0,l[A+2>>0]=0,l[A+3>>0]=0,i=i+4|0,l[i>>0]=f,l[i+1>>0]=f>>8,l[i+2>>0]=f>>16,l[i+3>>0]=f>>24,i=wi(e)|0,u=n[u>>2]|0,e=r+100+(u<<3)|0,f=e,A=f,f=f+4|0,f=Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24,i=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|i,A=e,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,e=e+4|0,l[e>>0]=f,l[e+1>>0]=f>>8,l[e+2>>0]=f>>16,l[e+3>>0]=f>>24,n[o>>2]=u,n[r+132+(u<<2)>>2]=0,n[r+148+(n[o>>2]<<2)>>2]=0;break}if((f|0)<=511)break;n[o>>2]=(n[o>>2]|0)+f&3,Gr(r,e,t)|0;break}do if(!f)i=X0(r+244|0,e,0,7)|0,A=r+148+(n[o>>2]<<2)|0,n[A>>2]=(n[A>>2]|0)+1,A=n[o>>2]|0,(n[r+148+(A<<2)>>2]|0)>3&&(n[r+132+(A<<2)>>2]=i,n[r+148+(n[o>>2]<<2)>>2]=0);else{if((f|0)<500)if(i=r+244|0,A=L(n[r+132+(n[o>>2]<<2)>>2]|0,f)|0,(f|0)<10){i=X0(i,e,A,2)|0;break}else{i=X0(i,e,A,3)|0;break}if((f|0)==500){if(i=X0(r+244|0,e,(n[r+132+(n[o>>2]<<2)>>2]|0)*500|0,4)|0,A=r+148+(n[o>>2]<<2)|0,n[A>>2]=(n[A>>2]|0)+1,A=n[o>>2]|0,(n[r+148+(A<<2)>>2]|0)<=3)break;n[r+132+(A<<2)>>2]=i,n[r+148+(n[o>>2]<<2)>>2]=0;break}if(i=500-f|0,A=r+244|0,f=n[r+132+(n[o>>2]<<2)>>2]|0,(i|0)>-10){i=X0(A,e,L(f,i)|0,5)|0;break}i=X0(A,e,L(f,-10)|0,6)|0,A=r+148+(n[o>>2]<<2)|0,n[A>>2]=(n[A>>2]|0)+1,A=n[o>>2]|0,(n[r+148+(A<<2)>>2]|0)>3&&(n[r+132+(A<<2)>>2]=i,n[r+148+(n[o>>2]<<2)>>2]=0)}while(0);u=r+100+(n[o>>2]<<3)|0,A=u,e=A,A=A+4|0,A=O0(Z[e>>0]|Z[e+1>>0]<<8|Z[e+2>>0]<<16|Z[e+3>>0]<<24|0,Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0,i|0,((i|0)<0)<<31>>31|0)|0,e=r0()|0,f=u,l[f>>0]=A,l[f+1>>0]=A>>8,l[f+2>>0]=A>>16,l[f+3>>0]=A>>24,u=u+4|0,l[u>>0]=e,l[u+1>>0]=e>>8,l[u+2>>0]=e>>16,l[u+3>>0]=e>>24}else switch(i=w0(e,r+48|0)|0,i|0){case 1:{e=X0(r+244|0,e,0,0)|0,n[r+132+(n[o>>2]<<2)>>2]=e,e=n[o>>2]|0,u=n[r+132+(e<<2)>>2]|0,f=r+100+(e<<3)|0,A=f,i=A,A=A+4|0,u=O0(Z[i>>0]|Z[i+1>>0]<<8|Z[i+2>>0]<<16|Z[i+3>>0]<<24|0,Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0,u|0,((u|0)<0)<<31>>31|0)|0,A=r0()|0,i=f,l[i>>0]=u,l[i+1>>0]=u>>8,l[i+2>>0]=u>>16,l[i+3>>0]=u>>24,f=f+4|0,l[f>>0]=A,l[f+1>>0]=A>>8,l[f+2>>0]=A>>16,l[f+3>>0]=A>>24,n[r+148+(e<<2)>>2]=0;break r}case 2:{u=r+96|0,n[u>>2]=(n[u>>2]|0)+1&3,f=r+100+(n[o>>2]<<3)+4|0,f=X0(r+244|0,e,Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24,8)|0,i=r+100+(n[u>>2]<<3)|0,A=i,l[A>>0]=0,l[A+1>>0]=0,l[A+2>>0]=0,l[A+3>>0]=0,i=i+4|0,l[i>>0]=f,l[i+1>>0]=f>>8,l[i+2>>0]=f>>16,l[i+3>>0]=f>>24,i=wi(e)|0,u=n[u>>2]|0,e=r+100+(u<<3)|0,f=e,A=f,f=f+4|0,f=Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24,i=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|i,A=e,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,e=e+4|0,l[e>>0]=f,l[e+1>>0]=f>>8,l[e+2>>0]=f>>16,l[e+3>>0]=f>>24,n[o>>2]=u,n[r+132+(u<<2)>>2]=0,n[r+148+(n[o>>2]<<2)>>2]=0;break r}default:{if((i|0)<=2)break r;n[o>>2]=i+2+(n[o>>2]|0)&3,Gr(r,e,t)|0;break r}}while(0);xc(r+100+(n[o>>2]<<3)|0,t)}return t+8|0}function Yc(r){r=r|0,z0(r)}function _c(r){r=r|0;var e=0,t=0,i=0;return e=s,s=s+16|0,t=e,i=ln(r)|0,Ec(t,i,ln(r+4|0)|0),r=n[t>>2]|0,o0(n[t+4>>2]|0),s=e,r|0}function wi(r){r=r|0;var e=0;return e=(se(r)|0)&65535,((se(r)|0)&65535)<<16|e|0}function xc(r,e){r=r|0,e=e|0;var t=0;t=r,sn(Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,e),r=r+4|0,sn(Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24,e+4|0)}function Ec(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;i=r,l[i>>0]=e,l[i+1>>0]=e>>8,l[i+2>>0]=e>>16,l[i+3>>0]=e>>24,e=r+4|0,l[e>>0]=t,l[e+1>>0]=t>>8,l[e+2>>0]=t>>16,l[e+3>>0]=t>>24}function jc(r){r=r|0,Z0(r),_(r)}function Sc(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function Cc(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==9890?r+12|0:0)|0}function Oc(r){r=r|0,D(r,16)}function Ic(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=4820,n[r+4>>2]=e,ki(r+8|0)}function Hc(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4844,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function ki(r){r=r|0,l[r>>0]=0,Xi(r+1|0),F0(r+8|0,128,0,0),F0(r+52|0,256,0,0),F0(r+96|0,256,0,0),F0(r+140|0,256,0,0),F0(r+184|0,256,0,0),F0(r+228|0,256,0,0),F0(r+272|0,256,0,0)}function Wi(r){r=r|0,n[r>>2]=4820,di(r+8|0),j0(r)}function ac(r){r=r|0,Wi(r),_(r)}function Qc(r,e){return r=r|0,e=e|0,gi(r+8|0,n[r+4>>2]|0,e)|0}function Xi(r){r=r|0;var e=0;l[r>>0]=0,l[r+1>>0]=0,e=r+2|0,l[e>>0]=0,l[e+1>>0]=0,r=r+4|0,l[r>>0]=0,l[r+1>>0]=0}function di(r){r=r|0,p0(r+272|0),p0(r+228|0),p0(r+184|0),p0(r+140|0),p0(r+96|0),p0(r+52|0),p0(r+8|0)}function gi(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0;if(v=s,s=s+16|0,c=v,!(l[r>>0]|0))l[r>>0]=1,on(fn(e)|0,t,6),Dc(c,t),h=r+1|0,l[h>>0]=l[c>>0]|0,l[h+1>>0]=l[c+1>>0]|0,l[h+2>>0]=l[c+2>>0]|0,l[h+3>>0]=l[c+3>>0]|0,l[h+4>>0]=l[c+4>>0]|0,l[h+5>>0]=l[c+5>>0]|0;else{h=w0(e,r+8|0)|0,Xi(c),h&1?(u=(w0(e,r+52|0)|0)&255,i=r+1|0,i=(B2(u+((Z[i>>0]|Z[i+1>>0]<<8)&255)|0)|0)&255):(i=r+1|0,i=(Z[i>>0]|Z[i+1>>0]<<8)&255),g[c>>1]=i,h&2?(i=(w0(e,r+96|0)|0)&255,u=r+1|0,i=((B2((((Z[u>>0]|Z[u+1>>0]<<8)&65535)>>>8)+i|0)|0)&255)<<8,i=(i|T[c>>1])&65535):(u=r+1|0,i=i|(Z[u>>0]|Z[u+1>>0]<<8)&-256),g[c>>1]=i;do if(h&64)if(o=r+1|0,A=(i&255)-((Z[o>>0]|Z[o+1>>0]<<8)&255)|0,h&4?(i=(w0(e,r+140|0)|0)&255,u=r+3|0,u=A+((Z[u>>0]|Z[u+1>>0]<<8)&255)|0,i=(B2(((u|0)<1?0:(u|0)>254?255:u&255)+i|0)|0)&255):(i=r+3|0,i=(Z[i>>0]|Z[i+1>>0]<<8)&255),u=c+2|0,g[u>>1]=i,h&16?(i=w0(e,r+228|0)|0,y=r+3|0,f=r+5|0,f=((A+(g[u>>1]&255)-((Z[y>>0]|Z[y+1>>0]<<8)&255)|0)/2|0)+((Z[f>>0]|Z[f+1>>0]<<8)&255)|0,i=(B2(((f|0)<1?0:(f|0)>254?255:f&255)+(i&255)|0)|0)&255):(i=r+5|0,i=(Z[i>>0]|Z[i+1>>0]<<8)&255),f=c+4|0,g[f>>1]=i,i=((T[c>>1]|0)>>>8)-(((Z[o>>0]|Z[o+1>>0]<<8)&65535)>>>8)|0,h&8?(A=(w0(e,r+184|0)|0)&255,y=r+3|0,y=(((Z[y>>0]|Z[y+1>>0]<<8)&65535)>>>8)+i|0,A=((B2(((y|0)<1?0:(y|0)>254?255:y&255)+A|0)|0)&255)<<8,A=(A|T[u>>1])&65535):(A=r+3|0,A=g[u>>1]|(Z[A>>0]|Z[A+1>>0]<<8)&-256),g[u>>1]=A,h&32){y=w0(e,r+272|0)|0,e=r+3|0,h=r+5|0,h=((((T[u>>1]|0)>>>8)+i-(((Z[e>>0]|Z[e+1>>0]<<8)&65535)>>>8)|0)/2|0)+(((Z[h>>0]|Z[h+1>>0]<<8)&65535)>>>8)|0,y=((B2(((h|0)<1?0:(h|0)>254?255:h&255)+(y&255)|0)|0)&255)<<8,g[f>>1]=y|T[f>>1];break}else{y=r+5|0,g[f>>1]=g[f>>1]|(Z[y>>0]|Z[y+1>>0]<<8)&-256;break}else g[c+2>>1]=i,g[c+4>>1]=i;while(0);y=r+1|0,l[y>>0]=l[c>>0]|0,l[y+1>>0]=l[c+1>>0]|0,l[y+2>>0]=l[c+2>>0]|0,l[y+3>>0]=l[c+3>>0]|0,l[y+4>>0]=l[c+4>>0]|0,l[y+5>>0]=l[c+5>>0]|0,Pc(y,t)}return s=v,t+6|0}function Dc(r,e){r=r|0,e=e|0;var t=0,i=0;i=J2(e)|0,t=J2(e+2|0)|0,Lc(r,i,t,J2(e+4|0)|0)}function Pc(r,e){r=r|0,e=e|0;var t=0;Y2(Z[r>>0]|Z[r+1>>0]<<8,e),t=r+2|0,Y2(Z[t>>0]|Z[t+1>>0]<<8,e+2|0),r=r+4|0,Y2(Z[r>>0]|Z[r+1>>0]<<8,e+4|0)}function Lc(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0,l[r>>0]=e,l[r+1>>0]=e>>8,e=r+2|0,l[e>>0]=t,l[e+1>>0]=t>>8,t=r+4|0,l[t>>0]=i,l[t+1>>0]=i>>8}function $c(r){r=r|0,Z0(r),_(r)}function qc(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function Kc(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==10570?r+12|0:0)|0}function bc(r){r=r|0,D(r,16)}function r4(r,e,t){r=r|0,e=e|0,t=t|0,e2(r),n[r>>2]=4872,n[r+4>>2]=e,e4(r+8|0,t)}function n4(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4896,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function e4(r,e){r=r|0,e=e|0,n[r>>2]=n[e>>2],l[r+4>>0]=l[e+4>>0]|0,Ti(r+8|0,e+8|0),Ti(r+20|0,e+20|0),A4(r+32|0,e+32|0)}function Ui(r){r=r|0,n[r>>2]=4872,Ai(r+8|0),j0(r)}function t4(r){r=r|0,Ui(r),_(r)}function i4(r,e){return r=r|0,e=e|0,F4(r+8|0,n[r+4>>2]|0,e)|0}function Ti(r,e){r=r|0,e=e|0;var t=0,i=0;n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,t=e+4|0,i=(n[t>>2]|0)-(n[e>>2]|0)|0,i|0&&(Gi(r,i),f4(r,n[e>>2]|0,n[t>>2]|0,i))}function A4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;t=s,s=s+32|0,i=t+24|0,A=t+16|0,o=t+8|0,f=t,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,n[r+20>>2]=0,Z4(o,e),R4(f,e),n[A>>2]=n[o>>2],n[A+4>>2]=n[o+4>>2],n[i>>2]=n[f>>2],n[i+4>>2]=n[f+4>>2],u4(r,A,i,0),s=t}function Gi(r,e){r=r|0,e=e|0;var t=0;if((o4(r)|0)>>>0<e>>>0)d0(r);else{t=x(e)|0,n[r+4>>2]=t,n[r>>2]=t,n[r+8>>2]=t+e;return}}function f4(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=s,s=s+16|0,A=f,Mi(A,r,i),i=A+4|0,r=t-e|0,(r|0)>0&&(_0(n[i>>2]|0,e|0,r|0)|0,n[i>>2]=(n[i>>2]|0)+r),zi(A),s=f}function Ni(r){r=r|0;var e=0,t=0;e=n[r>>2]|0,t=e,e|0&&(n[r+4>>2]=t,D(e,(n[r+8>>2]|0)-t|0))}function o4(r){return r=r|0,2147483647}function Mi(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,e=n[e+4>>2]|0,n[r+4>>2]=e,n[r+8>>2]=e+t}function zi(r){r=r|0,n[(n[r>>2]|0)+4>>2]=n[r+4>>2]}function u4(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;if(k=s,s=s+96|0,X=k+80|0,y=k+64|0,c=k+48|0,h=k+40|0,v=k+8|0,u=k,F=k+32|0,W=k+16|0,o=e,f=n[o>>2]|0,o=n[o+4>>2]|0,A=t,t=n[A>>2]|0,A=n[A+4>>2]|0,i=f,(A|0)==(o|0)?o=0:o=((A-(n[t>>2]|0)|0)/44|0)+((t-f>>2)*93|0)+((o-(n[f>>2]|0)|0)/-44|0)|0,t=(n[r+8>>2]|0)-(n[r+4>>2]|0)|0,t=(t|0?((t>>2)*93|0)+-1|0:0)-((n[r+20>>2]|0)+(n[r+16>>2]|0))|0,o>>>0>t>>>0&&Bi(r,o-t|0),Nr(h,r),Nr(u,r),A=u,t=n[A>>2]|0,A=n[A+4>>2]|0,f=v,n[f>>2]=t,n[f+4>>2]=A,f=t,o|0&&(t=((A-(n[t>>2]|0)|0)/44|0)+o|0,(t|0)>0?(u=(t>>>0)/93|0,o=f+(u<<2)|0,n[v>>2]=o,t=(n[o>>2]|0)+((t-(u*93|0)|0)*44|0)|0):(t=92-t|0,u=f+(((t|0)/-93|0)<<2)|0,n[v>>2]=u,t=(n[u>>2]|0)+((92-((t|0)%93|0)|0)*44|0)|0),n[v+4>>2]=t),n[y>>2]=n[h>>2],n[y+4>>2]=n[h+4>>2],n[X>>2]=n[v>>2],n[X+4>>2]=n[v+4>>2],Ze(c,y,X),Ji(X,c),Yi(y,c),hn(X,y)|0){f=W+4|0,o=e+4|0;do{if(_i(F,X),xi(W,r,F),t=n[W>>2]|0,(t|0)!=(n[f>>2]|0)){A=n[o>>2]|0;do le(t,A),t=(n[W>>2]|0)+44|0,n[W>>2]=t,A=A+44|0,n[o>>2]=A,(A-(n[i>>2]|0)|0)==4092&&(i=i+4|0,n[e>>2]=i,A=n[i>>2]|0,n[o>>2]=A);while((t|0)!=(n[f>>2]|0))}Ei(W),ji(X)|0}while(hn(X,y)|0)}s=k}function l4(r){r=r|0;var e=0,t=0,i=0;e=n[r+4>>2]|0,t=r+8|0,i=n[t>>2]|0,(i|0)!=(e|0)&&(n[t>>2]=i+(~((i+-4-e|0)>>>2)<<2)),e=n[r>>2]|0,e|0&&D(e,(n[r+12>>2]|0)-e|0)}function Bi(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,N=0,E=0,U=0,n0=0,s0=0,e0=0,a=0,c0=0,O=0;c0=s,s=s+64|0,E=c0+52|0,N=c0+48|0,U=c0+28|0,n0=c0+24|0,s0=c0+20|0,X=c0,e0=r+8|0,t=n[e0>>2]|0,a=r+4|0,c=n[a>>2]|0,C=((t|0)==(c|0)&1)+e|0,o=(C>>>0)/93|0,o=o+((C-(o*93|0)|0)!=0&1)|0,C=r+16|0,i=n[C>>2]|0,u=(i>>>0)/93|0,k=o>>>0<u>>>0?o:u,e=o-k|0,f=t;r:do if(e)if(B=r+12|0,i=n[B>>2]|0,A=i-(n[r>>2]|0)|0,t=f-c>>2,e>>>0>((A>>2)-t|0)>>>0){W=A>>1,F=t+e|0,V2(X,W>>>0<F>>>0?F:W,t-k|0,r+12|0);do n[E>>2]=x(4092)|0,h4(X,E),e=e+-1|0;while(e|0);if(!k)t=n[a>>2]|0;else{u=X+8|0,c=X+12|0,h=X+4|0,v=X+16|0,y=U+4|0,F=U+8|0,W=U+12|0,o=k,e=n[u>>2]|0,t=n[a>>2]|0;do{f=n[c>>2]|0,i=f;do if((e|0)==(f|0)){if(A=n[h>>2]|0,f=n[X>>2]|0,e=f,A>>>0<=f>>>0){e=i-e|0,e=e|0?e>>1:1,V2(U,e,e>>>2,n[v>>2]|0),n[n0>>2]=n[h>>2],n[s0>>2]=n[u>>2],n[N>>2]=n[n0>>2],n[E>>2]=n[s0>>2],_2(U,N,E),e=n[X>>2]|0,n[X>>2]=n[U>>2],n[U>>2]=e,e=n[h>>2]|0,n[h>>2]=n[y>>2],n[y>>2]=e,e=n[u>>2]|0,n[u>>2]=n[F>>2],n[F>>2]=e,e=n[c>>2]|0,n[c>>2]=n[W>>2],n[W>>2]=e,F2(U),e=n[u>>2]|0;break}O=A,e=((O-e>>2)+1|0)/-2|0,f=A+(e<<2)|0,i=i-O|0,i?(I0(f|0,A|0,i|0)|0,e=(n[h>>2]|0)+(e<<2)|0):e=f,O=f+(i>>2<<2)|0,n[u>>2]=O,n[h>>2]=e,e=O}while(0);n[e>>2]=n[t>>2],e=(n[u>>2]|0)+4|0,n[u>>2]=e,t=(n[a>>2]|0)+4|0,n[a>>2]=t,o=o+-1|0}while(o|0)}if(e=n[e0>>2]|0,(e|0)!=(t|0)){do e=e+-4|0,m4(X,e),t=n[a>>2]|0;while((e|0)!=(t|0));e=n[e0>>2]|0}O=n[r>>2]|0,n[r>>2]=n[X>>2],n[X>>2]=O,O=X+4|0,n[a>>2]=n[O>>2],n[O>>2]=t,O=X+8|0,n[e0>>2]=n[O>>2],n[O>>2]=e,O=X+12|0,a=n[B>>2]|0,n[B>>2]=n[O>>2],n[O>>2]=a,n[C>>2]=(n[C>>2]|0)+(L(k,-93)|0),F2(X);break}else{n:do if((i|0)==(f|0))h=18;else{for(;n[E>>2]=x(4092)|0,c4(r,E),e=e+-1|0,!!e;)if((n[B>>2]|0)==(n[e0>>2]|0)){h=18;break n}t=k,e=n[C>>2]|0}while(0);if((h|0)==18){i=~(o>>>0>u>>>0?u:o),t=e;do n[E>>2]=x(4092)|0,s4(r,E),t=t+-1|0,A=(((n[e0>>2]|0)-(n[a>>2]|0)|0)==4?92:93)+(n[C>>2]|0)|0,n[C>>2]=A;while(t|0);t=e+-1-i|0,e=A}if(n[C>>2]=e+(L(t,-93)|0),!t)break;u=r+12|0,c=U+4|0,h=U+8|0,v=U+12|0,e=n[e0>>2]|0;do{f=n[a>>2]|0,o=n[f>>2]|0,f=f+4|0,n[a>>2]=f,O=n[B>>2]|0,i=O;do if((e|0)==(O|0)){if(O=n[r>>2]|0,e=O,f>>>0<=O>>>0){e=i-e|0,e=e|0?e>>1:1,V2(U,e,e>>>2,u),n[n0>>2]=n[a>>2],n[s0>>2]=n[e0>>2],n[N>>2]=n[n0>>2],n[E>>2]=n[s0>>2],_2(U,N,E),e=n[r>>2]|0,n[r>>2]=n[U>>2],n[U>>2]=e,e=n[a>>2]|0,n[a>>2]=n[c>>2],n[c>>2]=e,e=n[e0>>2]|0,n[e0>>2]=n[h>>2],n[h>>2]=e,e=n[B>>2]|0,n[B>>2]=n[v>>2],n[v>>2]=e,F2(U),e=n[e0>>2]|0;break}O=f,e=((O-e>>2)+1|0)/-2|0,A=f+(e<<2)|0,i=i-O|0,i?(I0(A|0,f|0,i|0)|0,e=(n[a>>2]|0)+(e<<2)|0):e=A,O=A+(i>>2<<2)|0,n[e0>>2]=O,n[a>>2]=e,e=O}while(0);n[e>>2]=o,e=(n[e0>>2]|0)+4|0,n[e0>>2]=e,t=t+-1|0}while(t|0)}else if(n[C>>2]=(L(k,-93)|0)+i,k|0)for(u=r+12|0,h=r+12|0,v=U+4|0,y=U+8|0,F=U+12|0,e=k,i=c;;){o=n[i>>2]|0,f=i+4|0,n[a>>2]=f,B=n[u>>2]|0,i=B;do if((t|0)==(B|0)){if(B=n[r>>2]|0,t=B,f>>>0<=B>>>0){t=i-t|0,t=t|0?t>>1:1,V2(U,t,t>>>2,h),n[n0>>2]=n[a>>2],n[s0>>2]=n[e0>>2],n[N>>2]=n[n0>>2],n[E>>2]=n[s0>>2],_2(U,N,E),t=n[r>>2]|0,n[r>>2]=n[U>>2],n[U>>2]=t,t=n[a>>2]|0,n[a>>2]=n[v>>2],n[v>>2]=t,t=n[e0>>2]|0,n[e0>>2]=n[y>>2],n[y>>2]=t,t=n[u>>2]|0,n[u>>2]=n[F>>2],n[F>>2]=t,F2(U),t=n[e0>>2]|0;break}B=f,t=((B-t>>2)+1|0)/-2|0,A=f+(t<<2)|0,i=i-B|0,i?(I0(A|0,f|0,i|0)|0,t=(n[a>>2]|0)+(t<<2)|0):t=A,B=A+(i>>2<<2)|0,n[e0>>2]=B,n[a>>2]=t,t=B}while(0);if(n[t>>2]=o,t=(n[e0>>2]|0)+4|0,n[e0>>2]=t,e=e+-1|0,!e)break r;i=n[a>>2]|0}while(0);s=c0}function Nr(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;t=(n[e+16>>2]|0)+(n[e+20>>2]|0)|0,f=n[e+4>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(n[e+8>>2]|0)==(f|0)?e=0:e=(n[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,n[r>>2]=A,n[r+4>>2]=e}function Ze(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;A=e,e=n[A+4>>2]|0,i=r,n[i>>2]=n[A>>2],n[i+4>>2]=e,i=t,e=n[i+4>>2]|0,t=r+8|0,n[t>>2]=n[i>>2],n[t+4>>2]=e}function Ji(r,e){r=r|0,e=e|0,n[r>>2]=n[e>>2],n[r+4>>2]=n[e+4>>2],n[r+8>>2]=n[e+8>>2],n[r+12>>2]=n[e+12>>2]}function Yi(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;t=s,s=s+32|0,i=t+24|0,A=t+16|0,o=t+8|0,f=t,u=e+8|0,c=n[u>>2]|0,u=n[u+4>>2]|0,e=o,n[e>>2]=c,n[e+4>>2]=u,e=f,n[e>>2]=c,n[e+4>>2]=u,n[A>>2]=n[o>>2],n[A+4>>2]=n[o+4>>2],n[i>>2]=n[f>>2],n[i+4>>2]=n[f+4>>2],Ze(r,A,i),s=t}function hn(r,e){return r=r|0,e=e|0,(y4(r,e)|0)^1|0}function _i(r,e){r=r|0,e=e|0;var t=0,i=0;t=n[e>>2]|0,i=n[e+4>>2]|0,(t|0)==(n[e+8>>2]|0)?Si(r,i,n[e+12>>2]|0):Si(r,i,(n[t>>2]|0)+4092|0)}function xi(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;i=n[t>>2]|0,n[r>>2]=i,n[r+4>>2]=n[t+4>>2],n[r+8>>2]=i,n[r+12>>2]=e}function Ei(r){r=r|0;var e=0;e=(n[r+12>>2]|0)+20|0,n[e>>2]=(n[e>>2]|0)+(((n[r>>2]|0)-(n[r+8>>2]|0)|0)/44|0)}function ji(r){r=r|0;var e=0,t=0,i=0;return e=n[r>>2]|0,t=r+8|0,(e|0)==(n[t>>2]|0)?(i=t,e=n[i+4>>2]|0,t=r,n[t>>2]=n[i>>2],n[t+4>>2]=e):(i=e+4|0,n[r>>2]=i,n[r+4>>2]=n[i>>2]),r|0}function c4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,A=X+32|0,i=X+28|0,u=X+8|0,c=X+4|0,h=X,W=r+8|0,t=n[W>>2]|0,v=r+12|0,F=n[v>>2]|0,f=F;do if((t|0)==(F|0)){if(F=r+4|0,y=n[F>>2]|0,k=n[r>>2]|0,o=k,y>>>0<=k>>>0){t=f-o|0,t=t|0?t>>1:1,V2(u,t,t>>>2,r+12|0),n[c>>2]=n[F>>2],n[h>>2]=n[W>>2],n[i>>2]=n[c>>2],n[A>>2]=n[h>>2],_2(u,i,A),t=n[r>>2]|0,n[r>>2]=n[u>>2],n[u>>2]=t,t=u+4|0,k=n[F>>2]|0,n[F>>2]=n[t>>2],n[t>>2]=k,t=u+8|0,k=n[W>>2]|0,n[W>>2]=n[t>>2],n[t>>2]=k,t=u+12|0,k=n[v>>2]|0,n[v>>2]=n[t>>2],n[t>>2]=k,F2(u),t=n[W>>2]|0;break}A=y,i=((A-o>>2)+1|0)/-2|0,r=y+(i<<2)|0,A=t-A|0,A?(I0(r|0,y|0,A|0)|0,t=(n[F>>2]|0)+(i<<2)|0):t=r,k=r+(A>>2<<2)|0,n[W>>2]=k,n[F>>2]=t,t=k}while(0);n[t>>2]=n[e>>2],n[W>>2]=(n[W>>2]|0)+4,s=X}function s4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,i=X+32|0,t=X+28|0,o=X+8|0,u=X+4|0,c=X,W=r+4|0,y=n[W>>2]|0,F=n[r>>2]|0,h=F;do if((y|0)==(F|0)){if(F=r+8|0,v=n[F>>2]|0,f=r+12|0,k=n[f>>2]|0,A=k,v>>>0>=k>>>0){k=A-h|0,k=k|0?k>>1:1,V2(o,k,(k+3|0)>>>2,r+12|0),n[u>>2]=n[W>>2],n[c>>2]=n[F>>2],n[t>>2]=n[u>>2],n[i>>2]=n[c>>2],_2(o,t,i),t=n[r>>2]|0,n[r>>2]=n[o>>2],n[o>>2]=t,t=o+4|0,k=n[W>>2]|0,n[W>>2]=n[t>>2],n[t>>2]=k,t=o+8|0,k=n[F>>2]|0,n[F>>2]=n[t>>2],n[t>>2]=k,t=o+12|0,k=n[f>>2]|0,n[f>>2]=n[t>>2],n[t>>2]=k,F2(o),t=n[W>>2]|0;break}i=v,r=((A-i>>2)+1|0)/2|0,A=v+(r<<2)|0,i=i-y|0,t=A+(0-(i>>2)<<2)|0,i?(I0(t|0,y|0,i|0)|0,i=(n[F>>2]|0)+(r<<2)|0):(t=A,i=A),n[W>>2]=t,n[F>>2]=i}else t=y;while(0);n[t+-4>>2]=n[e>>2],n[W>>2]=(n[W>>2]|0)+-4,s=X}function V2(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;A=r+12|0,n[A>>2]=0,n[r+16>>2]=i;do if(e)if(e>>>0>1073741823)A=u0(8)|0,h2(A,6723),n[A>>2]=5956,l0(A|0,3928,123);else{i=x(e<<2)|0;break}else i=0;while(0);n[r>>2]=i,t=i+(t<<2)|0,n[r+8>>2]=t,n[r+4>>2]=t,n[A>>2]=i+(e<<2)}function h4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,A=X+32|0,i=X+28|0,u=X+8|0,c=X+4|0,h=X,W=r+8|0,t=n[W>>2]|0,v=r+12|0,F=n[v>>2]|0,f=F;do if((t|0)==(F|0)){if(F=r+4|0,y=n[F>>2]|0,k=n[r>>2]|0,o=k,y>>>0<=k>>>0){t=f-o|0,t=t|0?t>>1:1,V2(u,t,t>>>2,n[r+16>>2]|0),n[c>>2]=n[F>>2],n[h>>2]=n[W>>2],n[i>>2]=n[c>>2],n[A>>2]=n[h>>2],_2(u,i,A),t=n[r>>2]|0,n[r>>2]=n[u>>2],n[u>>2]=t,t=u+4|0,k=n[F>>2]|0,n[F>>2]=n[t>>2],n[t>>2]=k,t=u+8|0,k=n[W>>2]|0,n[W>>2]=n[t>>2],n[t>>2]=k,t=u+12|0,k=n[v>>2]|0,n[v>>2]=n[t>>2],n[t>>2]=k,F2(u),t=n[W>>2]|0;break}A=y,i=((A-o>>2)+1|0)/-2|0,r=y+(i<<2)|0,A=t-A|0,A?(I0(r|0,y|0,A|0)|0,t=(n[F>>2]|0)+(i<<2)|0):t=r,k=r+(A>>2<<2)|0,n[W>>2]=k,n[F>>2]=t,t=k}while(0);n[t>>2]=n[e>>2],n[W>>2]=(n[W>>2]|0)+4,s=X}function m4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,i=X+32|0,t=X+28|0,o=X+8|0,u=X+4|0,c=X,W=r+4|0,y=n[W>>2]|0,F=n[r>>2]|0,h=F;do if((y|0)==(F|0)){if(F=r+8|0,v=n[F>>2]|0,f=r+12|0,k=n[f>>2]|0,A=k,v>>>0>=k>>>0){k=A-h|0,k=k|0?k>>1:1,V2(o,k,(k+3|0)>>>2,n[r+16>>2]|0),n[u>>2]=n[W>>2],n[c>>2]=n[F>>2],n[t>>2]=n[u>>2],n[i>>2]=n[c>>2],_2(o,t,i),t=n[r>>2]|0,n[r>>2]=n[o>>2],n[o>>2]=t,t=o+4|0,k=n[W>>2]|0,n[W>>2]=n[t>>2],n[t>>2]=k,t=o+8|0,k=n[F>>2]|0,n[F>>2]=n[t>>2],n[t>>2]=k,t=o+12|0,k=n[f>>2]|0,n[f>>2]=n[t>>2],n[t>>2]=k,F2(o),t=n[W>>2]|0;break}i=v,r=((A-i>>2)+1|0)/2|0,A=v+(r<<2)|0,i=i-y|0,t=A+(0-(i>>2)<<2)|0,i?(I0(t|0,y|0,i|0)|0,i=(n[F>>2]|0)+(r<<2)|0):(t=A,i=A),n[W>>2]=t,n[F>>2]=i}else t=y;while(0);n[t+-4>>2]=n[e>>2],n[W>>2]=(n[W>>2]|0)+-4,s=X}function F2(r){r=r|0;var e=0,t=0,i=0;e=n[r+4>>2]|0,t=r+8|0,i=n[t>>2]|0,(i|0)!=(e|0)&&(n[t>>2]=i+(~((i+-4-e|0)>>>2)<<2)),e=n[r>>2]|0,e|0&&D(e,(n[r+12>>2]|0)-e|0)}function _2(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;if(o=s,s=s+16|0,f=o,A=n[e>>2]|0,p4(f,r+8|0,(n[t>>2]|0)-A>>2),r=n[f>>2]|0,i=f+4|0,(r|0)!=(n[i>>2]|0)){t=A;do n[r>>2]=n[t>>2],r=(n[f>>2]|0)+4|0,n[f>>2]=r,t=t+4|0;while((r|0)!=(n[i>>2]|0));n[e>>2]=t}v4(f),s=o}function p4(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=n[e>>2],n[r+4>>2]=(n[e>>2]|0)+(t<<2),n[r+8>>2]=e}function v4(r){r=r|0,n[n[r+8>>2]>>2]=n[r>>2]}function y4(r,e){return r=r|0,e=e|0,(n[r+4>>2]|0)==(n[e+4>>2]|0)|0}function Si(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,n[r+4>>2]=t}function Z4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;f=n[e+4>>2]|0,t=n[e+16>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(n[e+8>>2]|0)==(f|0)?e=0:e=(n[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,n[r>>2]=A,n[r+4>>2]=e}function R4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;t=(n[e+16>>2]|0)+(n[e+20>>2]|0)|0,f=n[e+4>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(n[e+8>>2]|0)==(f|0)?e=0:e=(n[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,n[r>>2]=A,n[r+4>>2]=e}function V4(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0;if(u=s,s=s+16|0,i=u+8|0,f=u,Ci(i,r),Nr(f,r),A=i+4|0,e=n[A>>2]|0,f=f+4|0,(e|0)!=(n[f>>2]|0))do p0(e),e=(n[A>>2]|0)+44|0,n[A>>2]=e,t=n[i>>2]|0,(e-(n[t>>2]|0)|0)==4092&&(e=t+4|0,n[i>>2]=e,e=n[e>>2]|0,n[A>>2]=e);while((e|0)!=(n[f>>2]|0));if(n[r+20>>2]=0,A=r+8|0,i=r+4|0,t=n[i>>2]|0,e=(n[A>>2]|0)-t>>2,e>>>0>2)do D(n[t>>2]|0,4092),t=(n[i>>2]|0)+4|0,n[i>>2]=t,e=(n[A>>2]|0)-t>>2;while(e>>>0>2);switch(e|0){case 1:{e=46,o=11;break}case 2:{e=93,o=11;break}default:}(o|0)==11&&(n[r+16>>2]=e),s=u}function Ci(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;f=n[e+4>>2]|0,t=n[e+16>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(n[e+8>>2]|0)==(f|0)?e=0:e=(n[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,n[r>>2]=A,n[r+4>>2]=e}function F4(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0,h=0;if(h=s,s=s+16|0,c=h,o=r+4|0,l[o>>0]|0){if(A=n[r+20>>2]|0,i=n[r+8>>2]|0,Ci(c,r+32|0),r=r+12|0,(i|0)!=(n[r>>2]|0))for(u=c+4|0,o=i,f=A,i=n[u>>2]|0;A=Z[o>>0]|0,A=w4((w0(e,i)|0)+A|0)|0,l[f>>0]=A,l[t>>0]=A,l[o>>0]=A,o=o+1|0,t=t+1|0,A=n[c>>2]|0,i=(n[u>>2]|0)+44|0,n[u>>2]=i,(i-(n[A>>2]|0)|0)==4092&&(i=A+4|0,n[c>>2]=i,i=n[i>>2]|0,n[u>>2]=i),(o|0)!=(n[r>>2]|0);)f=f+1|0}else{if(c=fn(e)|0,on(c,t,n[r>>2]|0),c=n[r>>2]|0,f=t+c|0,!c)i=0;else{for(i=t,A=n[r+8>>2]|0;l[A>>0]=l[i>>0]|0,i=i+1|0,(i|0)!=(f|0);)A=A+1|0;i=n[r>>2]|0}l[o>>0]=1,t=t+i|0}return s=h,t|0}function w4(r){return r=r|0,r&255|0}function k4(r){r=r|0,Z0(r),_(r)}function W4(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function X4(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==11262?r+12|0:0)|0}function d4(r){r=r|0,D(r,16)}function Oi(r,e){r=r|0,e=e|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,e|0&&(Gi(r,e),U4(r,e))}function g4(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,n[r+20>>2]=0,e|0&&T4(r,e,t)}function U4(r,e){r=r|0,e=e|0;var t=0,i=0,A=0;if(A=s,s=s+16|0,i=A,Mi(i,r,e),e=i+4|0,r=n[e>>2]|0,t=i+8|0,(r|0)!=(n[t>>2]|0))do l[r>>0]=0,r=(n[e>>2]|0)+1|0,n[e>>2]=r;while((r|0)!=(n[t>>2]|0));zi(i),s=A}function T4(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;if(W=s,s=s+96|0,F=W+80|0,h=W+64|0,o=W+48|0,u=W+40|0,c=W+8|0,A=W,v=W+32|0,y=W+16|0,i=(n[r+8>>2]|0)-(n[r+4>>2]|0)|0,i=(i|0?((i>>2)*93|0)+-1|0:0)-((n[r+20>>2]|0)+(n[r+16>>2]|0))|0,i>>>0<e>>>0&&Bi(r,e-i|0),Nr(u,r),Nr(A,r),i=n[A>>2]|0,A=n[A+4>>2]|0,f=c,n[f>>2]=i,n[f+4>>2]=A,f=i,e|0&&(i=((A-(n[i>>2]|0)|0)/44|0)+e|0,(i|0)>0?(e=(i>>>0)/93|0,f=f+(e<<2)|0,n[c>>2]=f,i=(n[f>>2]|0)+((i-(e*93|0)|0)*44|0)|0):(i=92-i|0,e=f+(((i|0)/-93|0)<<2)|0,n[c>>2]=e,i=(n[e>>2]|0)+((92-((i|0)%93|0)|0)*44|0)|0),n[c+4>>2]=i),n[h>>2]=n[u>>2],n[h+4>>2]=n[u+4>>2],n[F>>2]=n[c>>2],n[F+4>>2]=n[c+4>>2],Ze(o,h,F),Ji(F,o),Yi(h,o),hn(F,h)|0){A=y+4|0;do{if(_i(v,F),xi(y,r,v),i=n[y>>2]|0,(i|0)!=(n[A>>2]|0))do le(i,t),i=(n[y>>2]|0)+44|0,n[y>>2]=i;while((i|0)!=(n[A>>2]|0));Ei(y),ji(F)|0}while(hn(F,h)|0)}s=W}function G4(r){r=r|0;var e=0,t=0;if(V4(r),e=n[r+4>>2]|0,t=n[r+8>>2]|0,(e|0)!=(t|0))do D(n[e>>2]|0,4092),e=e+4|0;while((e|0)!=(t|0));l4(r)}function N4(r,e,t){r=r|0,e=e|0,t=t|0,tr(r),n[r>>2]=4924,n[r+4>>2]=e,n[r+8>>2]=t}function M4(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4944,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,mn(r,i),s=t}function z4(r,e){return r=r|0,e=e|0,J4(n[r+8>>2]|0,n[r+4>>2]|0,e)|0}function Ii(r){r=r|0;var e=0,t=0;n[r>>2]=4924,t=r+8|0,e=n[t>>2]|0,n[t>>2]=0,e|0&&(Y4(e),_(e)),z2(r)}function B4(r){r=r|0,Ii(r),_(r)}function J4(r,e,t){return r=r|0,e=e|0,t=t|0,Re(r+4784|0,e,Tr(r,e,t)|0)|0}function Re(r,e,t){return r=r|0,e=e|0,t=t|0,l[r>>0]|0&&(ue(e),l[r>>0]=0),t|0}function Y4(r){r=r|0,Ur(r)}function mn(r,e){r=r|0,e=e|0}function _4(r){r=r|0,Z0(r),_(r)}function x4(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+8>>2]&255](r)}function E4(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==12004?r+12|0:0)|0}function j4(r){r=r|0,D(r,16)}function Ve(r){r=r|0,l[r>>0]=1}function S4(r,e,t){r=r|0,e=e|0,t=t|0,tr(r),n[r>>2]=4972,n[r+4>>2]=e,n[r+8>>2]=t}function C4(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=4992,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,mn(r,i),s=t}function O4(r,e){return r=r|0,e=e|0,H4(n[r+8>>2]|0,n[r+4>>2]|0,e)|0}function Hi(r){r=r|0;var e=0,t=0;n[r>>2]=4972,t=r+8|0,e=n[t>>2]|0,n[t>>2]=0,e|0&&(Q4(e),_(e)),z2(r)}function I4(r){r=r|0,Hi(r),_(r)}function H4(r,e,t){return r=r|0,e=e|0,t=t|0,a4(r+4784|0,e,Tr(r,e,t)|0)|0}function a4(r,e,t){return r=r|0,e=e|0,t=t|0,Re(r+328|0,e,Gr(r,e,t)|0)|0}function Q4(r){r=r|0,D4(r+4784|0),Ur(r)}function D4(r){r=r|0,ye(r)}function P4(r){r=r|0,Z0(r),_(r)}function L4(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+8>>2]&255](r)}function $4(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==12827?r+12|0:0)|0}function q4(r){r=r|0,D(r,16)}function K4(r){r=r|0,ve(r),Ve(r+328|0)}function b4(r,e,t){r=r|0,e=e|0,t=t|0,tr(r),n[r>>2]=5020,n[r+4>>2]=e,n[r+8>>2]=t}function rs(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5040,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,mn(r,i),s=t}function ns(r,e){return r=r|0,e=e|0,ts(n[r+8>>2]|0,n[r+4>>2]|0,e)|0}function ai(r){r=r|0;var e=0,t=0;n[r>>2]=5020,t=r+8|0,e=n[t>>2]|0,n[t>>2]=0,e|0&&(is(e),_(e)),z2(r)}function es(r){r=r|0,ai(r),_(r)}function ts(r,e,t){return r=r|0,e=e|0,t=t|0,Qi(r+4784|0,e,Tr(r,e,t)|0)|0}function Qi(r,e,t){return r=r|0,e=e|0,t=t|0,Re(r+316|0,e,gi(r,e,t)|0)|0}function is(r){r=r|0,Di(r+4784|0),Ur(r)}function Di(r){r=r|0,di(r)}function As(r){r=r|0,Z0(r),_(r)}function fs(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+8>>2]&255](r)}function os(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==13672?r+12|0:0)|0}function us(r){r=r|0,D(r,16)}function Pi(r){r=r|0,ki(r),Ve(r+316|0)}function ls(r,e,t){r=r|0,e=e|0,t=t|0,tr(r),n[r>>2]=5068,n[r+4>>2]=e,n[r+8>>2]=t}function cs(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5088,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,mn(r,i),s=t}function ss(r,e){return r=r|0,e=e|0,ms(n[r+8>>2]|0,n[r+4>>2]|0,e)|0}function Li(r){r=r|0;var e=0,t=0;n[r>>2]=5068,t=r+8|0,e=n[t>>2]|0,n[t>>2]=0,e|0&&(vs(e),_(e)),z2(r)}function hs(r){r=r|0,Li(r),_(r)}function ms(r,e,t){return r=r|0,e=e|0,t=t|0,ps(r+4784|0,e,Tr(r,e,t)|0)|0}function ps(r,e,t){return r=r|0,e=e|0,t=t|0,Qi(r+328|0,e,Gr(r,e,t)|0)|0}function vs(r){r=r|0,ys(r+4784|0),Ur(r)}function ys(r){r=r|0,Di(r+328|0),ye(r)}function Zs(r){r=r|0,Z0(r),_(r)}function Rs(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+8>>2]&255](r)}function Vs(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==14573?r+12|0:0)|0}function Fs(r){r=r|0,D(r,16)}function ws(r){r=r|0,ve(r),Pi(r+328|0)}function ks(r){return r=r|0,r+20|0}function Ws(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=e,n[r+4>>2]=t,n[r+8>>2]=0}function Xs(r,e){r=r|0,e=e|0,n[r>>2]=e,n[r+4>>2]=0,n[r+8>>2]=-1}function ds(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;t=s,s=s+16|0,i=t+4|0,f=t,A=x(24)|0,js(A,e),n[f>>2]=0,n[i>>2]=n[f>>2],Ss(r,A,i),s=t}function Mr(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function gs(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5116,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,Us(r,i),s=t}function Fe(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function Us(r,e){r=r|0,e=e|0}function Ts(r){r=r|0,Z0(r),_(r)}function Gs(r){r=r|0,r=n[r+12>>2]|0,r|0&&_(r)}function Ns(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==14966?r+12|0:0)|0}function Ms(r){r=r|0,D(r,16)}function zs(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5144,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,Bs(r,i),s=t}function $i(r){r=r|0;var e=0,t=0;r=n[r+4>>2]|0,r|0&&(t=r+4|0,e=n[t>>2]|0,n[t>>2]=e+-1,(e|0)==0)&&(f0[n[(n[r>>2]|0)+8>>2]&255](r),s2(r))}function Bs(r,e){r=r|0,e=e|0}function Js(r){r=r|0,Z0(r),_(r)}function Ys(r){r=r|0,r=n[r+12>>2]|0,r|0&&(Es(r),_(r))}function _s(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==15127?r+12|0:0)|0}function xs(r){r=r|0,D(r,16)}function Es(r){r=r|0}function js(r,e){r=r|0,e=e|0,tr(r),n[r>>2]=5172,n[r+4>>2]=e,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,l[r+20>>0]=1}function Ss(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5192,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,Hs(r,i),s=t}function Cs(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0;if(c=s,s=s+16|0,f=c,t=n[r+8>>2]|0,o=n[r+12>>2]|0,(t|0)!=(o|0)){u=f+4|0;do i=n[t>>2]|0,n[f>>2]=i,A=n[t+4>>2]|0,n[u>>2]=A,A|0&&(A=A+4|0,n[A>>2]=(n[A>>2]|0)+1),e=xr[n[(n[i>>2]|0)+12>>2]&63](i,e)|0,G0(f),t=t+8|0;while((t|0)!=(o|0))}return t=r+20|0,l[t>>0]|0&&(l[t>>0]=0,Is(n[r+4>>2]|0)),s=c,e|0}function qi(r){r=r|0,n[r>>2]=5172,li(r+8|0),z2(r)}function Os(r){r=r|0,qi(r),_(r)}function Is(r){r=r|0;var e=0;e=((ir(n[r>>2]|0)|0)&255)<<24,e=((ir(n[r>>2]|0)|0)&255)<<16|e,e=e|((ir(n[r>>2]|0)|0)&255)<<8,n[r+4>>2]=e|(ir(n[r>>2]|0)|0)&255}function ir(r){r=r|0;var e=0,t=0;return e=n[r>>2]|0,t=r+8|0,r=n[t>>2]|0,n[t>>2]=r+1,l[e+r>>0]|0}function Hs(r,e){r=r|0,e=e|0}function as(r){r=r|0,Z0(r),_(r)}function Qs(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+8>>2]&255](r)}function Ds(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==15450?r+12|0:0)|0}function Ps(r){r=r|0,D(r,16)}function we(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(180)|0,Ls(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],$s(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function pn(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(180)|0,h8(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],m8(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function Ls(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=5220,n[r+4>>2]=e,qs(r+8|0)}function $s(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5244,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function qs(r){r=r|0,S0(r,32,1,8,0),M0(r+80|0,32,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,r8(r+164|0)}function Ki(r){r=r|0,n[r>>2]=5220,n8(r+8|0),j0(r)}function Ks(r){r=r|0,Ki(r),_(r)}function bs(r,e){return r=r|0,e=e|0,e8(r+8|0,n[r+4>>2]|0,e)|0}function r8(r){r=r|0,l[r+4>>0]=0}function n8(r){r=r|0,B0(r+80|0),C0(r)}function e8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[r+161>>0]|0||z0(r+80|0),A=r+164|0,t8(A)|0?(e=Ar(r+80|0,e,n[A>>2]|0,0)|0,n[i>>2]=e,cn(e,t)):(or(fr(e)|0,t,4),n[i>>2]=un(t)|0),i8(A,i),s=f,t+4|0}function t8(r){return r=r|0,(l[r+4>>0]|0)!=0|0}function Ar(r,e,t,i){return r=r|0,e=e|0,t=t|0,i=i|0,t=(A8(r,e,(n[r+36>>2]|0)+(i*44|0)|0)|0)+t|0,e=n[r+24>>2]|0,(t|0)<0?t+e|0:t-(t>>>0<e>>>0?0:e)|0}function fr(r){return r=r|0,n[r>>2]|0}function or(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;if((t|0)>0){i=0;do l[e+i>>0]=ir(r)|0,i=i+1|0;while((i|0)!=(t|0))}}function i8(r,e){r=r|0,e=e|0;var t=0;t=r+4|0,l[t>>0]|0||(l[t>>0]=1),n[r>>2]=n[e>>2]}function A8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;t=ke(e,t)|0,n[r>>2]=t;do if(t){if(t>>>0>=32){t=n[r+28>>2]|0;break}if(i=n[r+12>>2]|0,t>>>0>i>>>0?(i=t-i|0,t=ke(e,(n[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,i=t<<i|(bi(e,i)|0)):i=ke(e,(n[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,t=n[r>>2]|0,(i|0)<(1<<t+-1|0)){t=i+1+(-1<<t)|0;break}else{t=i+1|0;break}}else t=f8(e,r+48|0)|0;while(0);return t|0}function ke(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;if(F=r+8|0,y=n[F>>2]|0,A=n[e+16>>2]|0,A){if(i=r+4|0,t=n[i>>2]|0,v=y>>>15,n[F>>2]=v,c=(t>>>0)/(v>>>0)|0,u=c>>>(n[e+40>>2]|0),f=n[A+(u<<2)>>2]|0,u=(n[A+(u+1<<2)>>2]|0)+1|0,o=f+1|0,h=n[e+8>>2]|0,u>>>0>o>>>0){A=f,f=u;do o=(f+A|0)>>>1,u=(n[h+(o<<2)>>2]|0)>>>0>c>>>0,A=u?A:o,f=u?o:f,o=A+1|0;while(f>>>0>o>>>0);f=A}A=L(n[h+(f<<2)>>2]|0,v)|0,(f|0)==(n[e+32>>2]|0)?o=y:o=L(n[h+(o<<2)>>2]|0,v)|0}else{h=y>>>15,n[F>>2]=h,u=n[e>>2]|0,v=n[e+8>>2]|0,i=r+4|0,t=n[i>>2]|0,c=u>>>1,A=0,o=y,f=0;do W=L(n[v+(c<<2)>>2]|0,h)|0,y=W>>>0>t>>>0,o=y?W:o,A=y?A:W,f=y?f:c,u=y?c:u,c=(f+u|0)>>>1;while((c|0)!=(f|0))}return n[i>>2]=t-A,W=o-A|0,n[F>>2]=W,W>>>0<16777216&&vn(r),F=(n[e+12>>2]|0)+(f<<2)|0,n[F>>2]=(n[F>>2]|0)+1,F=e+28|0,W=(n[F>>2]|0)+-1|0,n[F>>2]=W,W||ce(e),f|0}function bi(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;return e>>>0>19?(t=(o8(r)|0)&65535,(bi(r,e+-16|0)|0)<<16|t|0):(i=r+4|0,A=n[i>>2]|0,f=r+8|0,t=(n[f>>2]|0)>>>e,n[f>>2]=t,e=(A>>>0)/(t>>>0)|0,n[i>>2]=A-(L(e,t)|0),t>>>0<16777216&&vn(r),e|0)}function f8(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0,u=0;return i=r+8|0,A=n[i>>2]|0,t=L(A>>>13,n[e+8>>2]|0)|0,f=r+4|0,o=n[f>>2]|0,u=o>>>0>=t>>>0,u?(n[f>>2]=o-t,t=A-t|0,n[i>>2]=t):(n[i>>2]=t,o=e+12|0,n[o>>2]=(n[o>>2]|0)+1),t>>>0<16777216&&vn(r),o=e+4|0,r=(n[o>>2]|0)+-1|0,n[o>>2]=r,r||ti(e),u&1|0}function vn(r){r=r|0;var e=0,t=0,i=0,A=0;e=r+4|0,t=r+8|0,i=n[e>>2]|0;do i=i<<8|(ir(n[r>>2]|0)|0)&255,n[e>>2]=i,A=n[t>>2]<<8,n[t>>2]=A;while(A>>>0<16777216)}function o8(r){r=r|0;var e=0,t=0,i=0,A=0;return t=r+4|0,A=n[t>>2]|0,e=r+8|0,i=(n[e>>2]|0)>>>16,n[e>>2]=i,e=(A>>>0)/(i>>>0)|0,n[t>>2]=A-(L(e,i)|0),vn(r),e&65535|0}function u8(r){r=r|0,Z0(r),_(r)}function l8(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function c8(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==15904?r+12|0:0)|0}function s8(r){r=r|0,D(r,16)}function h8(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=5272,n[r+4>>2]=e,p8(r+8|0)}function m8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5296,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function p8(r){r=r|0,S0(r,32,1,8,0),M0(r+80|0,32,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,Z8(r+164|0)}function rA(r){r=r|0,n[r>>2]=5272,R8(r+8|0),j0(r)}function v8(r){r=r|0,rA(r),_(r)}function y8(r,e){return r=r|0,e=e|0,V8(r+8|0,n[r+4>>2]|0,e)|0}function Z8(r){r=r|0,l[r+4>>0]=0}function R8(r){r=r|0,B0(r+80|0),C0(r)}function V8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[r+161>>0]|0||z0(r+80|0),A=r+164|0,F8(A)|0?(e=Ar(r+80|0,e,n[A>>2]|0,0)|0,n[i>>2]=e,sn(e,t)):(or(fr(e)|0,t,4),n[i>>2]=ln(t)|0),w8(A,i),s=f,t+4|0}function F8(r){return r=r|0,(l[r+4>>0]|0)!=0|0}function w8(r,e){r=r|0,e=e|0;var t=0;t=r+4|0,l[t>>0]|0||(l[t>>0]=1),n[r>>2]=n[e>>2]}function k8(r){r=r|0,Z0(r),_(r)}function W8(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function X8(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==16402?r+12|0:0)|0}function d8(r){r=r|0,D(r,16)}function g8(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(172)|0,T8(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],G8(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function U8(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(176)|0,H8(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],a8(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function T8(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=5324,n[r+4>>2]=e,N8(r+8|0)}function G8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5348,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function N8(r){r=r|0,S0(r,8,1,8,0),M0(r+80|0,8,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,B8(r+162|0)}function nA(r){r=r|0,n[r>>2]=5324,J8(r+8|0),j0(r)}function M8(r){r=r|0,nA(r),_(r)}function z8(r,e){return r=r|0,e=e|0,Y8(r+8|0,n[r+4>>2]|0,e)|0}function B8(r){r=r|0,l[r+1>>0]=0}function J8(r){r=r|0,B0(r+80|0),C0(r)}function Y8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[r+161>>0]|0||z0(r+80|0),A=r+162|0,_8(A)|0?(e=(Ar(r+80|0,e,l[A>>0]|0,0)|0)&255,l[i>>0]=e,x8(e,t)):(or(fr(e)|0,t,1),l[i>>0]=E8(t)|0),j8(A,i),s=f,t+1|0}function _8(r){return r=r|0,(l[r+1>>0]|0)!=0|0}function x8(r,e){r=r|0,e=e|0,l[e>>0]=r}function E8(r){return r=r|0,l[r>>0]|0}function j8(r,e){r=r|0,e=e|0;var t=0;t=r+1|0,l[t>>0]|0||(l[t>>0]=1),l[r>>0]=l[e>>0]|0}function S8(r){r=r|0,Z0(r),_(r)}function C8(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function O8(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==16900?r+12|0:0)|0}function I8(r){r=r|0,D(r,16)}function H8(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=5376,n[r+4>>2]=e,Q8(r+8|0)}function a8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5400,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function Q8(r){r=r|0,S0(r,16,1,8,0),M0(r+80|0,16,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,L8(r+162|0)}function eA(r){r=r|0,n[r>>2]=5376,$8(r+8|0),j0(r)}function D8(r){r=r|0,eA(r),_(r)}function P8(r,e){return r=r|0,e=e|0,q8(r+8|0,n[r+4>>2]|0,e)|0}function L8(r){r=r|0,l[r+2>>0]=0}function $8(r){r=r|0,B0(r+80|0),C0(r)}function q8(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[r+161>>0]|0||z0(r+80|0),A=r+162|0,K8(A)|0?(e=(Ar(r+80|0,e,g[A>>1]|0,0)|0)&65535,g[i>>1]=e,b8(e,t)):(or(fr(e)|0,t,2),g[i>>1]=r3(t)|0),n3(A,i),s=f,t+2|0}function K8(r){return r=r|0,(l[r+2>>0]|0)!=0|0}function b8(r,e){r=r|0,e=e|0,Y2(r,e)}function r3(r){return r=r|0,J2(r)|0}function n3(r,e){r=r|0,e=e|0;var t=0;t=r+2|0,l[t>>0]|0||(l[t>>0]=1),g[r>>1]=g[e>>1]|0}function e3(r){r=r|0,Z0(r),_(r)}function t3(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function i3(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==17398?r+12|0:0)|0}function A3(r){r=r|0,D(r,16)}function f3(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(172)|0,u3(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],l3(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function o3(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,o=x(176)|0,k3(o,n[r+4>>2]|0),f=r+8|0,n[e>>2]=0,n[i>>2]=n[e>>2],W3(A,o,i),o=r+12|0,e=n[o>>2]|0,u=r+16|0;do if(e>>>0>=(n[u>>2]|0)>>>0)if(e=(e-(n[f>>2]|0)>>3)+1|0,t=n2(f)|0,t>>>0<e>>>0)d0(f);else{h=n[f>>2]|0,v=(n[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<e>>>0?e:u:t,(n[o>>2]|0)-h>>3,r+16|0),u=i+8|0,o=n[u>>2]|0,n[o>>2]=n[A>>2],r=A+4|0,n[o+4>>2]=n[r>>2],n[A>>2]=0,n[r>>2]=0,n[u>>2]=o+8,b0(f,i),r2(i);break}else $0(i,f,1),v=i+4|0,h=n[v>>2]|0,n[h>>2]=n[A>>2],u=A+4|0,n[h+4>>2]=n[u>>2],n[A>>2]=0,n[u>>2]=0,n[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function u3(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=5428,n[r+4>>2]=e,c3(r+8|0)}function l3(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5452,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function c3(r){r=r|0,S0(r,8,1,8,0),M0(r+80|0,8,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,m3(r+162|0)}function tA(r){r=r|0,n[r>>2]=5428,p3(r+8|0),j0(r)}function s3(r){r=r|0,tA(r),_(r)}function h3(r,e){return r=r|0,e=e|0,v3(r+8|0,n[r+4>>2]|0,e)|0}function m3(r){r=r|0,l[r+1>>0]=0}function p3(r){r=r|0,B0(r+80|0),C0(r)}function v3(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[r+161>>0]|0||z0(r+80|0),A=r+162|0,y3(A)|0?(e=(Ar(r+80|0,e,Z[A>>0]|0,0)|0)&255,l[i>>0]=e,pe(e,t)):(or(fr(e)|0,t,1),l[i>>0]=me(t)|0),Z3(A,i),s=f,t+1|0}function y3(r){return r=r|0,(l[r+1>>0]|0)!=0|0}function Z3(r,e){r=r|0,e=e|0;var t=0;t=r+1|0,l[t>>0]|0||(l[t>>0]=1),l[r>>0]=l[e>>0]|0}function R3(r){r=r|0,Z0(r),_(r)}function V3(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function F3(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==17896?r+12|0:0)|0}function w3(r){r=r|0,D(r,16)}function k3(r,e){r=r|0,e=e|0,e2(r),n[r>>2]=5480,n[r+4>>2]=e,X3(r+8|0)}function W3(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,n[r>>2]=e,A=x(16)|0,n[A+4>>2]=0,n[A+8>>2]=0,n[A>>2]=5504,n[A+12>>2]=e,n[r+4>>2]=A,n[i>>2]=e,n[i+4>>2]=e,t2(r,i),s=t}function X3(r){r=r|0,S0(r,16,1,8,0),M0(r+80|0,16,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,U3(r+162|0)}function iA(r){r=r|0,n[r>>2]=5480,T3(r+8|0),j0(r)}function d3(r){r=r|0,iA(r),_(r)}function g3(r,e){return r=r|0,e=e|0,G3(r+8|0,n[r+4>>2]|0,e)|0}function U3(r){r=r|0,l[r+2>>0]=0}function T3(r){r=r|0,B0(r+80|0),C0(r)}function G3(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[r+161>>0]|0||z0(r+80|0),A=r+162|0,N3(A)|0?(e=(Ar(r+80|0,e,T[A>>1]|0,0)|0)&65535,g[i>>1]=e,Y2(e,t)):(or(fr(e)|0,t,2),g[i>>1]=J2(t)|0),M3(A,i),s=f,t+2|0}function N3(r){return r=r|0,(l[r+2>>0]|0)!=0|0}function M3(r,e){r=r|0,e=e|0;var t=0;t=r+2|0,l[t>>0]|0||(l[t>>0]=1),g[r>>1]=g[e>>1]|0}function z3(r){r=r|0,Z0(r),_(r)}function B3(r){r=r|0,r=n[r+12>>2]|0,r|0&&f0[n[(n[r>>2]|0)+4>>2]&255](r)}function J3(r,e){return r=r|0,e=e|0,((n[e+4>>2]|0)==18394?r+12|0:0)|0}function Y3(r){r=r|0,D(r,16)}function Xy(){}function _3(r){return r=r|0,O3(r)|0}function x3(){return 0}function E3(){return 0}function j3(r){r=r|0,r|0&&(I3(r),_(r))}function zr(){return H3()|0}function S3(){return a3()|0}function C3(){return Q3()|0}function AA(){return 0}function O3(r){return r=r|0,3360}function I3(r){r=r|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,i=e,n[i>>2]=n[r>>2],n[r>>2]=0,t=r+4|0,n[i+4>>2]=n[t>>2],n[t>>2]=0,ee(i),t=r+8|0,n[i>>2]=n[t>>2],n[t>>2]=0,A=r+12|0,n[i+4>>2]=n[A>>2],n[A>>2]=0,te(i),te(t),ee(r),s=e}function H3(){return 3360}function a3(){return 3368}function Q3(){return 3384}function yn(){return 18579}function Zn(){return 18582}function fA(){return 18584}function D3(){var r=0;return r=x(16)|0,rh(r),r|0}function P3(r){r=r|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,t=e,A=zr()|0,i=$3(t)|0,t=q3(t)|0,Jt(A|0,i|0,t|0,yn()|0,12,r|0),s=e}function L3(r){return r=r|0,K3(Se[r&3]()|0)|0}function $3(r){return r=r|0,1}function q3(r){return r=r|0,b3()|0}function K3(r){return r=r|0,r|0}function b3(){return 5524}function rh(r){r=r|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0}function nh(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;t=s,s=s+16|0,i=t,A=t+8|0,o=n[e+4>>2]|0,n[i>>2]=n[e>>2],n[i+4>>2]=o,o=zr()|0,f=th(A)|0,A=ih(A)|0,e=uA()|0,nr(o|0,r|0,f|0,A|0,e|0,4,Ah(i)|0,0),s=t}function eh(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=We(e)|0,e=n[r>>2]|0,A=n[r+4>>2]|0,r=f+(A>>1)|0,A&1&&(e=n[(n[r>>2]|0)+e>>2]|0),A=oA(t)|0,f=Xe(i)|0,Er[e&15](r,A,f)}function th(r){return r=r|0,4}function ih(r){return r=r|0,fh()|0}function Ah(r){r=r|0;var e=0,t=0;return e=x(8)|0,t=n[r+4>>2]|0,n[e>>2]=n[r>>2],n[e+4>>2]=t,e|0}function We(r){return r=r|0,r|0}function oA(r){return r=r|0,r|0}function Xe(r){return r=r|0,r|0}function fh(){return 144}function uA(){return 18587}function oh(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;t=s,s=s+16|0,i=t,A=t+8|0,o=n[e+4>>2]|0,n[i>>2]=n[e>>2],n[i+4>>2]=o,o=zr()|0,f=lh(A)|0,A=ch(A)|0,e=de()|0,nr(o|0,r|0,f|0,A|0,e|0,7,sh(i)|0,0),s=t}function uh(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;A=We(e)|0,e=n[r>>2]|0,i=n[r+4>>2]|0,r=A+(i>>1)|0,i&1&&(e=n[(n[r>>2]|0)+e>>2]|0),A=lA(t)|0,k2[e&15](r,A)}function lh(r){return r=r|0,3}function ch(r){return r=r|0,hh()|0}function sh(r){r=r|0;var e=0,t=0;return e=x(8)|0,t=n[r+4>>2]|0,n[e>>2]=n[r>>2],n[e+4>>2]=t,e|0}function lA(r){return r=r|0,r|0}function hh(){return 5528}function de(){return 18593}function mh(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;t=s,s=s+16|0,i=t,A=t+8|0,o=n[e+4>>2]|0,n[i>>2]=n[e>>2],n[i+4>>2]=o,o=zr()|0,f=vh(A)|0,A=yh(A)|0,e=Fh()|0,nr(o|0,r|0,f|0,A|0,e|0,41,Zh(i)|0,0),s=t}function ph(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;return i=s,s=s+16|0,t=i,f=We(e)|0,e=n[r>>2]|0,A=n[r+4>>2]|0,r=f+(A>>1)|0,A&1&&(e=n[(n[r>>2]|0)+e>>2]|0),n[t>>2]=Xn[e&15](r)|0,f=Rh(t)|0,s=i,f|0}function vh(r){return r=r|0,2}function yh(r){return r=r|0,Vh()|0}function Zh(r){r=r|0;var e=0,t=0;return e=x(8)|0,t=n[r+4>>2]|0,n[e>>2]=n[r>>2],n[e+4>>2]=t,e|0}function Rh(r){return r=r|0,n[r>>2]|0}function Vh(){return 5540}function Fh(){return 18598}function dy(){}function wh(r){return r=r|0,Uh(r)|0}function kh(){return 0}function Wh(){return 0}function Xh(r){r=r|0,r|0&&(Th(r),_(r))}function Br(){return Gh()|0}function dh(){return Nh()|0}function gh(){return Mh()|0}function Uh(r){return r=r|0,3400}function Th(r){r=r|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,i=e,n[i>>2]=n[r>>2],n[r>>2]=0,t=r+4|0,n[i+4>>2]=n[t>>2],n[t>>2]=0,Fe(i),t=r+16|0,n[i>>2]=n[t>>2],n[t>>2]=0,A=r+20|0,n[i+4>>2]=n[A>>2],n[A>>2]=0,Mr(i),n[i>>2]=n[t>>2],n[t>>2]=0,n[i+4>>2]=n[A>>2],n[A>>2]=0,Mr(i),Mr(t),$i(r+8|0),Fe(r),s=e}function Gh(){return 3400}function Nh(){return 3408}function Mh(){return 3424}function zh(){var r=0;return r=x(24)|0,jh(r),r|0}function Bh(r){r=r|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,t=e,A=Br()|0,i=Yh(t)|0,t=_h(t)|0,Jt(A|0,i|0,t|0,yn()|0,13,r|0),s=e}function Jh(r){return r=r|0,xh(Se[r&3]()|0)|0}function Yh(r){return r=r|0,1}function _h(r){return r=r|0,Eh()|0}function xh(r){return r=r|0,r|0}function Eh(){return 5548}function jh(r){r=r|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,n[r+20>>2]=0}function Sh(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;t=s,s=s+16|0,i=t,A=t+8|0,o=n[e+4>>2]|0,n[i>>2]=n[e>>2],n[i+4>>2]=o,o=Br()|0,f=Oh(A)|0,A=Ih(A)|0,e=uA()|0,nr(o|0,r|0,f|0,A|0,e|0,5,Hh(i)|0,0),s=t}function Ch(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=ge(e)|0,e=n[r>>2]|0,A=n[r+4>>2]|0,r=f+(A>>1)|0,A&1&&(e=n[(n[r>>2]|0)+e>>2]|0),A=oA(t)|0,f=Xe(i)|0,Er[e&15](r,A,f)}function Oh(r){return r=r|0,4}function Ih(r){return r=r|0,ah()|0}function Hh(r){r=r|0;var e=0,t=0;return e=x(8)|0,t=n[r+4>>2]|0,n[e>>2]=n[r>>2],n[e+4>>2]=t,e|0}function ge(r){return r=r|0,r|0}function ah(){return 160}function Ue(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;t=s,s=s+16|0,i=t,A=t+8|0,o=n[e+4>>2]|0,n[i>>2]=n[e>>2],n[i+4>>2]=o,o=Br()|0,f=Dh(A)|0,A=Ph(A)|0,e=de()|0,nr(o|0,r|0,f|0,A|0,e|0,8,Lh(i)|0,0),s=t}function Qh(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;A=ge(e)|0,e=n[r>>2]|0,i=n[r+4>>2]|0,r=A+(i>>1)|0,i&1&&(e=n[(n[r>>2]|0)+e>>2]|0),A=Xe(t)|0,k2[e&15](r,A)}function Dh(r){return r=r|0,3}function Ph(r){return r=r|0,$h()|0}function Lh(r){r=r|0;var e=0,t=0;return e=x(8)|0,t=n[r+4>>2]|0,n[e>>2]=n[r>>2],n[e+4>>2]=t,e|0}function $h(){return 5552}function qh(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;t=s,s=s+16|0,i=t,A=t+8|0,o=n[e+4>>2]|0,n[i>>2]=n[e>>2],n[i+4>>2]=o,o=Br()|0,f=bh(A)|0,A=r5(A)|0,e=de()|0,nr(o|0,r|0,f|0,A|0,e|0,9,n5(i)|0,0),s=t}function Kh(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;A=ge(e)|0,e=n[r>>2]|0,i=n[r+4>>2]|0,r=A+(i>>1)|0,i&1&&(e=n[(n[r>>2]|0)+e>>2]|0),A=lA(t)|0,k2[e&15](r,A)}function bh(r){return r=r|0,3}function r5(r){return r=r|0,e5()|0}function n5(r){r=r|0;var e=0,t=0;return e=x(8)|0,t=n[r+4>>2]|0,n[e>>2]=n[r>>2],n[e+4>>2]=t,e|0}function e5(){return 5564}function t5(){k1()}function i5(){A5()}function A5(){f5(22144)}function f5(r){r=r|0;var e=0;e=s,s=s+16|0,n[e>>2]=r,cA(),s=e}function cA(){y1(o5()|0,18653),p1(u5()|0,18658,1,1,0),l5(18663),c5(18668),s5(18680),h5(18694),m5(18700),p5(18715),v5(18719),y5(18732),Z5(18737),R5(18751),V5(18757),_t(F5()|0,18764),_t(w5()|0,18776),ne(k5()|0,4,18809),ne(W5()|0,2,18822),ne(X5()|0,4,18837),v1(d5()|0,18852),g5(18868),sA(18898),hA(18935),mA(18974),pA(19005),vA(19045),yA(19074),U5(19112),T5(19142),sA(19181),hA(19213),mA(19246),pA(19279),vA(19313),yA(19346),G5(19380),N5(19411),M5(19443)}function o5(){return I6()|0}function u5(){return O6()|0}function l5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=S6()|0,c2(r|0,n[t>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),s=e}function c5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=E6()|0,c2(r|0,n[t>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),s=e}function s5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=_6()|0,c2(r|0,n[t>>2]|0,1,0,255),s=e}function h5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=J6()|0,c2(r|0,n[t>>2]|0,2,-32768<<16>>16|0,32767<<16>>16|0),s=e}function m5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=z6()|0,c2(r|0,n[t>>2]|0,2,0,65535),s=e}function p5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=N6()|0,c2(r|0,n[t>>2]|0,4,-2147483648,2147483647),s=e}function v5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=T6()|0,c2(r|0,n[t>>2]|0,4,0,-1),s=e}function y5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=g6()|0,c2(r|0,n[t>>2]|0,4,-2147483648,2147483647),s=e}function Z5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=X6()|0,c2(r|0,n[t>>2]|0,4,0,-1),s=e}function R5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=k6()|0,Yt(r|0,n[t>>2]|0,4),s=e}function V5(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,n[t>>2]=r,r=F6()|0,Yt(r|0,n[t>>2]|0,8),s=e}function F5(){return V6()|0}function w5(){return R6()|0}function k5(){return Z6()|0}function W5(){return y6()|0}function X5(){return v6()|0}function d5(){return p6()|0}function g5(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=s6()|0,r=h6()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function sA(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=u6()|0,r=l6()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function hA(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=A6()|0,r=f6()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function mA(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=e6()|0,r=t6()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function pA(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=b5()|0,r=r6()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function vA(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=$5()|0,r=q5()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function yA(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=D5()|0,r=P5()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function U5(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=H5()|0,r=a5()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function T5(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=C5()|0,r=O5()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function G5(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=E5()|0,r=j5()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function N5(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=Y5()|0,r=_5()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function M5(r){r=r|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,n[t>>2]=r,i=z5()|0,r=B5()|0,E0(i|0,r|0,n[t>>2]|0),s=e}function z5(){return J5()|0}function B5(){return 7}function J5(){return 3440}function Y5(){return x5()|0}function _5(){return 7}function x5(){return 3448}function E5(){return S5()|0}function j5(){return 6}function S5(){return 3456}function C5(){return I5()|0}function O5(){return 5}function I5(){return 3464}function H5(){return Q5()|0}function a5(){return 4}function Q5(){return 3472}function D5(){return L5()|0}function P5(){return 5}function L5(){return 3480}function $5(){return K5()|0}function q5(){return 4}function K5(){return 3488}function b5(){return n6()|0}function r6(){return 3}function n6(){return 3496}function e6(){return i6()|0}function t6(){return 2}function i6(){return 3504}function A6(){return o6()|0}function f6(){return 1}function o6(){return 3512}function u6(){return c6()|0}function l6(){return 0}function c6(){return 3520}function s6(){return m6()|0}function h6(){return 0}function m6(){return 3528}function p6(){return 3536}function v6(){return 3544}function y6(){return 3576}function Z6(){return 3600}function R6(){return 3624}function V6(){return 3648}function F6(){return w6()|0}function w6(){return 4144}function k6(){return W6()|0}function W6(){return 4136}function X6(){return d6()|0}function d6(){return 4128}function g6(){return U6()|0}function U6(){return 4120}function T6(){return G6()|0}function G6(){return 4112}function N6(){return M6()|0}function M6(){return 4104}function z6(){return B6()|0}function B6(){return 4096}function J6(){return Y6()|0}function Y6(){return 4088}function _6(){return x6()|0}function x6(){return 4072}function E6(){return j6()|0}function j6(){return 4080}function S6(){return C6()|0}function C6(){return 4064}function O6(){return 4056}function I6(){return 4040}function H6(r){r=r|0;var e=0,t=0,i=0,A=0;return e=s,s=s+16|0,t=e+8|0,i=e+4|0,A=e,n[A>>2]=r,n[i>>2]=n[A>>2],n[t>>2]=n[(n[i>>2]|0)+4>>2],r=cm(n[t>>2]|0)|0,s=e,r|0}function i2(){return 21636}function Jr(r){return r=r|0,(r+-48|0)>>>0<10|0}function ZA(){return 5576}function RA(r,e){r=r|0,e=e|0;var t=0,i=0;if(t=l[r>>0]|0,i=l[e>>0]|0,!(t<<24>>24)||t<<24>>24!=i<<24>>24)r=i;else{do r=r+1|0,e=e+1|0,t=l[r>>0]|0,i=l[e>>0]|0;while(!(!(t<<24>>24)||t<<24>>24!=i<<24>>24));r=i}return(t&255)-(r&255)|0}function Rn(r){r=r|0;var e=0,t=0,i=0;i=r;r:do if(!(i&3))t=5;else for(e=i;;){if(!(l[r>>0]|0)){r=e;break r}if(r=r+1|0,e=r,!(e&3)){t=5;break}}while(0);if((t|0)==5){for(;e=n[r>>2]|0,!((e&-2139062144^-2139062144)&e+-16843009);)r=r+4|0;if((e&255)<<24>>24)do r=r+1|0;while(l[r>>0]|0)}return r-i|0}function a6(r){r=r|0}function Q6(r){return r=r|0,1}function D6(r){r=r|0;var e=0,t=0;return e=r+74|0,t=l[e>>0]|0,l[e>>0]=t+255|t,e=n[r>>2]|0,e&8?(n[r>>2]=e|32,r=-1):(n[r+8>>2]=0,n[r+4>>2]=0,t=n[r+44>>2]|0,n[r+28>>2]=t,n[r+20>>2]=t,n[r+16>>2]=t+(n[r+48>>2]|0),r=0),r|0}function P6(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0;i=t+16|0,A=n[i>>2]|0,A?f=5:D6(t)|0?i=0:(A=n[i>>2]|0,f=5);r:do if((f|0)==5){if(u=t+20|0,o=n[u>>2]|0,i=o,(A-o|0)>>>0<e>>>0){i=sr[n[t+36>>2]&7](t,r,e)|0;break}n:do if((l[t+75>>0]|0)<0|(e|0)==0)f=0,A=r;else{for(o=e;A=o+-1|0,(l[r+A>>0]|0)!=10;)if(A)o=A;else{f=0,A=r;break n}if(i=sr[n[t+36>>2]&7](t,r,o)|0,i>>>0<o>>>0)break r;f=o,A=r+o|0,e=e-o|0,i=n[u>>2]|0}while(0);_0(i|0,A|0,e|0)|0,n[u>>2]=(n[u>>2]|0)+e,i=f+e|0}while(0);return i|0}function L6(r,e){return r=r|0,e=e|0,e?e=$6(n[e>>2]|0,n[e+4>>2]|0,r)|0:e=0,(e|0?e:r)|0}function $6(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0;F=(n[r>>2]|0)+1794895138|0,f=x2(n[r+8>>2]|0,F)|0,i=x2(n[r+12>>2]|0,F)|0,A=x2(n[r+16>>2]|0,F)|0;r:do if(f>>>0<e>>>2>>>0&&(y=e-(f<<2)|0,i>>>0<y>>>0&A>>>0<y>>>0)&&!((A|i)&3|0)){for(y=i>>>2,v=A>>>2,h=0;;){if(u=f>>>1,c=h+u|0,o=c<<1,A=o+y|0,i=x2(n[r+(A<<2)>>2]|0,F)|0,A=x2(n[r+(A+1<<2)>>2]|0,F)|0,!(A>>>0<e>>>0&i>>>0<(e-A|0)>>>0)){i=0;break r}if(l[r+(A+i)>>0]|0){i=0;break r}if(i=RA(t,r+A|0)|0,!i)break;if(i=(i|0)<0,(f|0)==1){i=0;break r}h=i?h:c,f=i?u:f-u|0}i=o+v|0,A=x2(n[r+(i<<2)>>2]|0,F)|0,i=x2(n[r+(i+1<<2)>>2]|0,F)|0,i>>>0<e>>>0&A>>>0<(e-i|0)>>>0?i=l[r+(i+A)>>0]|0?0:r+i|0:i=0}else i=0;while(0);return i|0}function x2(r,e){r=r|0,e=e|0;var t=0;return t=aA(r|0)|0,(e|0?t:r)|0}function q6(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;f=e&255,i=(t|0)!=0;r:do if(i&(r&3|0)!=0)for(A=e&255;;){if((l[r>>0]|0)==A<<24>>24){A=6;break r}if(r=r+1|0,t=t+-1|0,i=(t|0)!=0,!(i&(r&3|0)!=0)){A=5;break}}else A=5;while(0);(A|0)==5&&(i?A=6:r=0);r:do if((A|0)==6){if((l[r>>0]|0)!=(e&255)<<24>>24){i=L(f,16843009)|0;n:do if(t>>>0>3)do{if(f=n[r>>2]^i,(f&-2139062144^-2139062144)&f+-16843009|0)break n;r=r+4|0,t=t+-4|0}while(t>>>0>3);while(0)}if(!t)r=0;else for(i=e&255;;){if((l[r>>0]|0)==i<<24>>24)break r;if(t=t+-1|0,t)r=r+1|0;else{r=0;break}}}while(0);return r|0}function K6(r,e,t){return r=r|0,e=e|0,t=t|0,nm(r,e,t,1,8)|0}function b6(r,e,t,i,A,f){r=r|0,e=+e,t=t|0,i=i|0,A=A|0,f=f|0;var o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,N=0,E=0,U=0,n0=0,s0=0,e0=0,a=0,c0=0,O=0,I=0,D0=0;D0=s,s=s+560|0,c=D0+32|0,B=D0+536|0,I=D0,O=I,h=D0+540|0,n[B>>2]=0,c0=h+12|0,kA(e)|0,o=r0()|0,(o|0)<0?(e=-e,kA(e)|0,a=1,e0=20247,o=r0()|0):(a=(A&2049|0)!=0&1,e0=A&2048|0?20250:A&1|0?20253:20248);do if(!0&(o&2146435072|0)==2146435072)I=(f&32|0)!=0,o=a+3|0,k0(r,32,t,o,A&-65537),V0(r,e0,a),V0(r,e!=e|!1?I?20274:20278:I?20266:20270,3),k0(r,32,t,o,A^8192);else{if(W=+WA(e,B)*2,o=W!=0,o&&(n[B>>2]=(n[B>>2]|0)+-1),C=f|32,(C|0)==97){y=f&32,X=y|0?e0+9|0:e0,F=a|2,o=12-i|0;do if(i>>>0>11|(o|0)==0)e=W;else{e=8;do o=o+-1|0,e=e*16;while(o|0);if((l[X>>0]|0)==45){e=-(e+(-W-e));break}else{e=W+e-e;break}}while(0);u=n[B>>2]|0,o=(u|0)<0?0-u|0:u,o=ur(o,((o|0)<0)<<31>>31,c0)|0,(o|0)==(c0|0)&&(o=h+11|0,l[o>>0]=48),l[o+-1>>0]=(u>>31&2)+43,v=o+-2|0,l[v>>0]=f+15,u=(i|0)<1,c=(A&8|0)==0,h=I;do a=~~e,o=h+1|0,l[h>>0]=y|Z[640+a>>0],e=(e-+(a|0))*16,(o-O|0)==1&&!(c&(u&e==0))?(l[o>>0]=46,h=h+2|0):h=o;while(e!=0);i|0&&(-2-O+h|0)<(i|0)?(u=c0,c=v,o=i+2+u-c|0):(u=c0,c=v,o=u-O-c+h|0),c0=o+F|0,k0(r,32,t,c0,A),V0(r,X,F),k0(r,48,t,c0,A^65536),O=h-O|0,V0(r,I,O),I=u-c|0,k0(r,48,o-(O+I)|0,0,0),V0(r,v,I),k0(r,32,t,c0,A^8192),o=c0;break}u=(i|0)<0?6:i,o?(o=(n[B>>2]|0)+-28|0,n[B>>2]=o,e=W*268435456):(e=W,o=n[B>>2]|0),s0=(o|0)<0?c:c+288|0,c=s0;do U=~~e>>>0,n[c>>2]=U,c=c+4|0,e=(e-+(U>>>0))*1e9;while(e!=0);if(U=s0,(o|0)>0)for(y=s0;;){if(v=(o|0)<29?o:29,o=c+-4|0,o>>>0>=y>>>0){h=0;do k=IA(n[o>>2]|0,0,v|0)|0,k=O0(k|0,r0()|0,h|0,0)|0,N=r0()|0,h=xe(k|0,N|0,1e9,0)|0,E=_e(h|0,r0()|0,1e9,0)|0,E=cr(k|0,N|0,E|0,r0()|0)|0,r0()|0,n[o>>2]=E,o=o+-4|0;while(o>>>0>=y>>>0);h?(E=y+-4|0,n[E>>2]=h,h=E):h=y}else h=y;r:do if(c>>>0>h>>>0)for(o=c;;){if(c=o+-4|0,n[c>>2]|0){c=o;break r}if(c>>>0>h>>>0)o=c;else break}while(0);if(o=(n[B>>2]|0)-v|0,n[B>>2]=o,(o|0)>0)y=h;else break}else h=s0;if((o|0)<0){i=((u+25|0)/9|0)+1|0,k=(C|0)==102;do{if(X=0-o|0,X=(X|0)<9?X:9,h>>>0<c>>>0){v=(1<<X)+-1|0,y=1e9>>>X,F=0,o=h;do E=n[o>>2]|0,n[o>>2]=(E>>>X)+F,F=L(E&v,y)|0,o=o+4|0;while(o>>>0<c>>>0);h=n[h>>2]|0?h:h+4|0,F&&(n[c>>2]=F,c=c+4|0)}else h=n[h>>2]|0?h:h+4|0;o=k?s0:h,c=(c-o>>2|0)>(i|0)?o+(i<<2)|0:c,o=(n[B>>2]|0)+X|0,n[B>>2]=o}while((o|0)<0);k=h}else k=h;if(k>>>0<c>>>0){if(o=(U-k>>2)*9|0,v=n[k>>2]|0,v>>>0>=10){h=10;do h=h*10|0,o=o+1|0;while(v>>>0>=h>>>0)}}else o=0;if(N=(C|0)==103,E=(u|0)!=0,h=u-((C|0)==102?0:o)+((E&N)<<31>>31)|0,(h|0)<(((c-U>>2)*9|0)+-9|0)){if(B=h+9216|0,h=(B|0)/9|0,i=s0+4+(h+-1024<<2)|0,h=B-(h*9|0)|0,(h|0)<8)for(v=10;v=v*10|0,(h|0)<7;)h=h+1|0;else v=10;if(F=n[i>>2]|0,h=(F>>>0)/(v>>>0)|0,X=F-(L(h,v)|0)|0,y=(i+4|0)==(c|0),y&(X|0)==0)h=i,v=k;else if(W=h&1|0?9007199254740994:9007199254740992,B=v>>>1,e=X>>>0<B>>>0?.5:y&(X|0)==(B|0)?1:1.5,a&&(B=(l[e0>>0]|0)==45,e=B?-e:e,W=B?-W:W),h=F-X|0,n[i>>2]=h,W+e!=W){if(B=h+v|0,n[i>>2]=B,B>>>0>999999999)for(v=i,o=k;;)if(h=v+-4|0,n[v>>2]=0,h>>>0<o>>>0&&(o=o+-4|0,n[o>>2]=0),B=(n[h>>2]|0)+1|0,n[h>>2]=B,B>>>0>999999999)v=h;else{v=o;break}else h=i,v=k;if(o=(U-v>>2)*9|0,F=n[v>>2]|0,F>>>0>=10){y=10;do y=y*10|0,o=o+1|0;while(F>>>0>=y>>>0)}}else h=i,v=k;B=h+4|0,c=c>>>0>B>>>0?B:c}else v=k;i=0-o|0;r:do if(c>>>0>v>>>0)for(;;){if(h=c+-4|0,n[h>>2]|0){B=c,C=1;break r}if(h>>>0>v>>>0)c=h;else{B=h,C=0;break}}else B=c,C=0;while(0);do if(N){if(u=u+((E^1)&1)|0,(u|0)>(o|0)&(o|0)>-5?(y=f+-1|0,u=u+-1-o|0):(y=f+-2|0,u=u+-1|0),!(A&8)){if(C&&(n0=n[B+-4>>2]|0,(n0|0)!=0))if((n0>>>0)%10|0)h=0;else{h=0,c=10;do c=c*10|0,h=h+1|0;while(!((n0>>>0)%(c>>>0)|0|0))}else h=9;if(c=((B-U>>2)*9|0)+-9|0,(y|32|0)==102){f=c-h|0,f=(f|0)>0?f:0,u=(u|0)<(f|0)?u:f;break}else{f=c+o-h|0,f=(f|0)>0?f:0,u=(u|0)<(f|0)?u:f;break}}}else y=f;while(0);if(k=(u|0)!=0,F=k?1:A>>>3&1,X=(y|32|0)==102,X)N=0,o=(o|0)>0?o:0;else{if(c=(o|0)<0?i:o,c=ur(c,((c|0)<0)<<31>>31,c0)|0,h=c0,(h-c|0)<2)do c=c+-1|0,l[c>>0]=48;while((h-c|0)<2);l[c+-1>>0]=(o>>31&2)+43,o=c+-2|0,l[o>>0]=y,N=o,o=h-o|0}if(o=a+1+u+F+o|0,k0(r,32,t,o,A),V0(r,e0,a),k0(r,48,t,o,A^65536),X){F=v>>>0>s0>>>0?s0:v,X=I+9|0,v=X,y=I+8|0,h=F;do{if(c=ur(n[h>>2]|0,0,X)|0,(h|0)==(F|0))(c|0)==(X|0)&&(l[y>>0]=48,c=y);else if(c>>>0>I>>>0){O2(I|0,48,c-O|0)|0;do c=c+-1|0;while(c>>>0>I>>>0)}V0(r,c,v-c|0),h=h+4|0}while(h>>>0<=s0>>>0);if((A&8|0)==0&(k^1)||V0(r,20282,1),h>>>0<B>>>0&(u|0)>0)for(;;){if(c=ur(n[h>>2]|0,0,X)|0,c>>>0>I>>>0){O2(I|0,48,c-O|0)|0;do c=c+-1|0;while(c>>>0>I>>>0)}if(V0(r,c,(u|0)<9?u:9),h=h+4|0,c=u+-9|0,h>>>0<B>>>0&(u|0)>9)u=c;else{u=c;break}}k0(r,48,u+9|0,9,0)}else{if(B=C?B:v+4|0,v>>>0<B>>>0&(u|0)>-1){i=I+9|0,k=(A&8|0)==0,C=i,F=0-O|0,X=I+8|0,y=v;do{c=ur(n[y>>2]|0,0,i)|0,(c|0)==(i|0)&&(l[X>>0]=48,c=X);do if((y|0)==(v|0)){if(h=c+1|0,V0(r,c,1),k&(u|0)<1){c=h;break}V0(r,20282,1),c=h}else{if(c>>>0<=I>>>0)break;O2(I|0,48,c+F|0)|0;do c=c+-1|0;while(c>>>0>I>>>0)}while(0);O=C-c|0,V0(r,c,(u|0)>(O|0)?O:u),u=u-O|0,y=y+4|0}while(y>>>0<B>>>0&(u|0)>-1)}k0(r,48,u+18|0,18,0),V0(r,N,c0-N|0)}k0(r,32,t,o,A^8192)}while(0);return s=D0,((o|0)<(t|0)?t:o)|0}function rm(r,e){r=r|0,e=e|0;var t=0,i=0;i=(n[e>>2]|0)+(8-1)&~(8-1),t=+J[i>>3],n[e>>2]=i+8,J[r>>3]=t}function nm(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0;B=s,s=s+224|0,W=B+208|0,X=B+160|0,k=B+80|0,C=B,f=X,o=f+40|0;do n[f>>2]=0,f=f+4|0;while((f|0)<(o|0));return n[W>>2]=n[t>>2],(Te(0,e,W,k,X,i,A)|0)<0?t=-1:((n[r+76>>2]|0)>-1?F=Q6(r)|0:F=0,t=n[r>>2]|0,y=t&32,(l[r+74>>0]|0)<1&&(n[r>>2]=t&-33),f=r+48|0,n[f>>2]|0?t=Te(r,e,W,k,X,i,A)|0:(o=r+44|0,u=n[o>>2]|0,n[o>>2]=C,c=r+28|0,n[c>>2]=C,h=r+20|0,n[h>>2]=C,n[f>>2]=80,v=r+16|0,n[v>>2]=C+80,t=Te(r,e,W,k,X,i,A)|0,u&&(sr[n[r+36>>2]&7](r,0,0)|0,t=n[h>>2]|0?t:-1,n[o>>2]=u,n[f>>2]=0,n[v>>2]=0,n[c>>2]=0,n[h>>2]=0)),f=n[r>>2]|0,n[r>>2]=f|y,F|0&&a6(r),t=f&32|0?-1:t),s=B,t|0}function Te(r,e,t,i,A,f,o){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,o=o|0;var u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,N=0,E=0,U=0,n0=0,s0=0,e0=0,a=0,c0=0,O=0,I=0,D0=0,m0=0,H2=0,H0=0;H2=s,s=s+64|0,I=H2+56|0,m0=H2+40|0,s0=H2,a=H2+48|0,c0=H2+60|0,n[I>>2]=e,E=(r|0)!=0,U=s0+40|0,n0=U,s0=s0+39|0,e0=a+4|0,u=0,e=0,h=0;r:for(;;){do{do if((e|0)>-1)if((u|0)>(2147483647-e|0)){n[(i2()|0)>>2]=61,e=-1;break}else{e=u+e|0;break}while(0);if(W=n[I>>2]|0,u=l[W>>0]|0,!(u<<24>>24)){N=92;break r}c=W;n:for(;;){switch(u<<24>>24){case 37:{N=10;break n}case 0:{u=c;break n}default:}B=c+1|0,n[I>>2]=B,u=l[B>>0]|0,c=B}n:do if((N|0)==10){N=0,u=c;do{if((l[c+1>>0]|0)!=37)break n;u=u+1|0,c=c+2|0,n[I>>2]=c}while((l[c>>0]|0)==37)}while(0);u=u-W|0,E&&V0(r,W,u)}while(u|0);if(B=(Jr(l[(n[I>>2]|0)+1>>0]|0)|0)==0,c=n[I>>2]|0,!B&&(l[c+2>>0]|0)==36?(k=(l[c+1>>0]|0)+-48|0,y=1,u=3):(k=-1,y=h,u=1),u=c+u|0,n[I>>2]=u,c=l[u>>0]|0,h=(c<<24>>24)+-32|0,h>>>0>31|(1<<h&75913|0)==0)v=0;else{v=0;do v=1<<h|v,u=u+1|0,n[I>>2]=u,c=l[u>>0]|0,h=(c<<24>>24)+-32|0;while(!(h>>>0>31|(1<<h&75913|0)==0))}if(c<<24>>24==42){if(Jr(l[u+1>>0]|0)|0&&(D0=n[I>>2]|0,(l[D0+2>>0]|0)==36))u=D0+1|0,n[A+((l[u>>0]|0)+-48<<2)>>2]=10,u=n[i+((l[u>>0]|0)+-48<<3)>>2]|0,h=1,c=D0+3|0;else{if(y|0){e=-1;break}E?(B=(n[t>>2]|0)+(4-1)&~(4-1),u=n[B>>2]|0,n[t>>2]=B+4):u=0,h=0,c=(n[I>>2]|0)+1|0}n[I>>2]=c,B=(u|0)<0,C=B?0-u|0:u,v=B?v|8192:v,B=h}else{if(u=VA(I)|0,(u|0)<0){e=-1;break}C=u,B=y,c=n[I>>2]|0}do if((l[c>>0]|0)==46){if(u=c+1|0,(l[u>>0]|0)!=42){n[I>>2]=u,u=VA(I)|0,c=n[I>>2]|0;break}if(Jr(l[c+2>>0]|0)|0&&(O=n[I>>2]|0,(l[O+3>>0]|0)==36)){u=O+2|0,n[A+((l[u>>0]|0)+-48<<2)>>2]=10,u=n[i+((l[u>>0]|0)+-48<<3)>>2]|0,c=O+4|0,n[I>>2]=c;break}if(B|0){e=-1;break r}E?(X=(n[t>>2]|0)+(4-1)&~(4-1),u=n[X>>2]|0,n[t>>2]=X+4):u=0,c=(n[I>>2]|0)+2|0,n[I>>2]=c}else u=-1;while(0);for(X=0;;){if(((l[c>>0]|0)+-65|0)>>>0>57){e=-1;break r}if(h=c,c=c+1|0,n[I>>2]=c,h=l[(l[h>>0]|0)+-65+(176+(X*58|0))>>0]|0,y=h&255,(y+-1|0)>>>0>=8)break;X=y}if(!(h<<24>>24)){e=-1;break}F=(k|0)>-1;do if(h<<24>>24==19)if(F){e=-1;break r}else N=54;else{if(F){n[A+(k<<2)>>2]=y,F=i+(k<<3)|0,k=n[F+4>>2]|0,N=m0,n[N>>2]=n[F>>2],n[N+4>>2]=k,N=54;break}if(!E){e=0;break r}FA(m0,y,t,o),c=n[I>>2]|0,N=55}while(0);(N|0)==54&&(N=0,E?N=55:u=0);n:do if((N|0)==55){N=0,c=l[c+-1>>0]|0,c=(X|0)!=0&(c&15|0)==3?c&-33:c,h=v&-65537,k=v&8192|0?h:v;e:do switch(c|0){case 110:switch((X&255)<<24>>24){case 0:{n[n[m0>>2]>>2]=e,u=0;break n}case 1:{n[n[m0>>2]>>2]=e,u=0;break n}case 2:{u=n[m0>>2]|0,n[u>>2]=e,n[u+4>>2]=((e|0)<0)<<31>>31,u=0;break n}case 3:{g[n[m0>>2]>>1]=e,u=0;break n}case 4:{l[n[m0>>2]>>0]=e,u=0;break n}case 6:{n[n[m0>>2]>>2]=e,u=0;break n}case 7:{u=n[m0>>2]|0,n[u>>2]=e,n[u+4>>2]=((e|0)<0)<<31>>31,u=0;break n}default:{u=0;break n}}case 112:{c=120,u=u>>>0>8?u:8,h=k|8,N=67;break}case 88:case 120:{h=k,N=67;break}case 111:{F=m0,F=tm(n[F>>2]|0,n[F+4>>2]|0,U)|0,h=n0-F|0,v=0,y=20230,u=(k&8|0)==0|(u|0)>(h|0)?u:h+1|0,h=k,N=73;break}case 105:case 100:if(h=m0,c=n[h>>2]|0,h=n[h+4>>2]|0,(h|0)<0){c=cr(0,0,c|0,h|0)|0,h=r0()|0,v=m0,n[v>>2]=c,n[v+4>>2]=h,v=1,y=20230,N=72;break e}else{v=(k&2049|0)!=0&1,y=k&2048|0?20231:k&1|0?20232:20230,N=72;break e}case 117:{h=m0,v=0,y=20230,c=n[h>>2]|0,h=n[h+4>>2]|0,N=72;break}case 99:{l[s0>>0]=n[m0>>2],W=s0,v=0,y=20230,F=1,c=h,u=n0;break}case 115:{X=n[m0>>2]|0,X=X|0?X:20240,k=q6(X,0,u)|0,H0=(k|0)==0,W=X,v=0,y=20230,F=H0?u:k-X|0,c=h,u=H0?X+u|0:k;break}case 67:{n[a>>2]=n[m0>>2],n[e0>>2]=0,n[m0>>2]=a,y=-1,N=79;break}case 83:{u?(y=u,N=79):(k0(r,32,C,0,k),u=0,N=89);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{u=LA[f&1](r,+J[m0>>3],C,u,k,c)|0;break n}default:v=0,y=20230,F=u,c=k,u=n0}while(0);e:do if((N|0)==67)F=m0,F=em(n[F>>2]|0,n[F+4>>2]|0,U,c&32)|0,y=m0,y=(h&8|0)==0|(n[y>>2]|0)==0&(n[y+4>>2]|0)==0,v=y?0:2,y=y?20230:20230+(c>>>4)|0,N=73;else if((N|0)==72)F=ur(c,h,U)|0,h=k,N=73;else if((N|0)==79){for(N=0,v=n[m0>>2]|0,u=0;c=n[v>>2]|0,!!c;){if(c=wA(c0,c)|0,h=(c|0)<0,h|c>>>0>(y-u|0)>>>0){N=83;break}if(u=c+u|0,y>>>0>u>>>0)v=v+4|0;else break}if((N|0)==83&&(N=0,h)){e=-1;break r}if(k0(r,32,C,u,k),!u)u=0,N=89;else for(h=n[m0>>2]|0,v=0;;){if(c=n[h>>2]|0,!c){N=89;break e}if(c=wA(c0,c)|0,v=c+v|0,(v|0)>(u|0)){N=89;break e}if(V0(r,c0,c),v>>>0>=u>>>0){N=89;break}else h=h+4|0}}while(0);if((N|0)==73)N=0,c=m0,c=(n[c>>2]|0)!=0|(n[c+4>>2]|0)!=0,H0=(u|0)!=0|c,c=n0-F+((c^1)&1)|0,W=H0?F:U,F=H0?(u|0)>(c|0)?u:c:0,c=(u|0)>-1?h&-65537:h,u=n0;else if((N|0)==89){N=0,k0(r,32,C,u,k^8192),u=(C|0)>(u|0)?C:u;break}k=u-W|0,X=(F|0)<(k|0)?k:F,H0=X+v|0,u=(C|0)<(H0|0)?H0:C,k0(r,32,u,H0,c),V0(r,y,v),k0(r,48,u,H0,c^65536),k0(r,48,X,k,0),V0(r,W,k),k0(r,32,u,H0,c^8192)}while(0);h=B}r:do if((N|0)==92&&!r)if(!h)e=0;else{for(e=1;u=n[A+(e<<2)>>2]|0,!!u;)if(FA(i+(e<<3)|0,u,t,o),e=e+1|0,e>>>0>=10){e=1;break r}for(;;){if(n[A+(e<<2)>>2]|0){e=-1;break r}if(e=e+1|0,e>>>0>=10){e=1;break}}}while(0);return s=H2,e|0}function V0(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]&32||P6(e,t,r)|0}function VA(r){r=r|0;var e=0,t=0;if(!(Jr(l[n[r>>2]>>0]|0)|0))e=0;else{e=0;do t=n[r>>2]|0,e=(e*10|0)+-48+(l[t>>0]|0)|0,t=t+1|0,n[r>>2]=t;while(Jr(l[t>>0]|0)|0)}return e|0}function FA(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;r:do if(e>>>0<=20)do switch(e|0){case 9:{e=(n[t>>2]|0)+(4-1)&~(4-1),i=n[e>>2]|0,n[t>>2]=e+4,n[r>>2]=i;break r}case 10:{i=(n[t>>2]|0)+(4-1)&~(4-1),e=n[i>>2]|0,n[t>>2]=i+4,i=r,n[i>>2]=e,n[i+4>>2]=((e|0)<0)<<31>>31;break r}case 11:{i=(n[t>>2]|0)+(4-1)&~(4-1),e=n[i>>2]|0,n[t>>2]=i+4,i=r,n[i>>2]=e,n[i+4>>2]=0;break r}case 12:{i=(n[t>>2]|0)+(8-1)&~(8-1),e=i,A=n[e>>2]|0,e=n[e+4>>2]|0,n[t>>2]=i+8,i=r,n[i>>2]=A,n[i+4>>2]=e;break r}case 13:{A=(n[t>>2]|0)+(4-1)&~(4-1),i=n[A>>2]|0,n[t>>2]=A+4,i=(i&65535)<<16>>16,A=r,n[A>>2]=i,n[A+4>>2]=((i|0)<0)<<31>>31;break r}case 14:{A=(n[t>>2]|0)+(4-1)&~(4-1),i=n[A>>2]|0,n[t>>2]=A+4,A=r,n[A>>2]=i&65535,n[A+4>>2]=0;break r}case 15:{A=(n[t>>2]|0)+(4-1)&~(4-1),i=n[A>>2]|0,n[t>>2]=A+4,i=(i&255)<<24>>24,A=r,n[A>>2]=i,n[A+4>>2]=((i|0)<0)<<31>>31;break r}case 16:{A=(n[t>>2]|0)+(4-1)&~(4-1),i=n[A>>2]|0,n[t>>2]=A+4,A=r,n[A>>2]=i&255,n[A+4>>2]=0;break r}case 17:{A=(n[t>>2]|0)+(8-1)&~(8-1),f=+J[A>>3],n[t>>2]=A+8,J[r>>3]=f;break r}case 18:{k2[i&15](r,t);break r}default:break r}while(0);while(0)}function em(r,e,t,i){if(r=r|0,e=e|0,t=t|0,i=i|0,!((r|0)==0&(e|0)==0))do t=t+-1|0,l[t>>0]=Z[640+(r&15)>>0]|0|i,r=Wn(r|0,e|0,4)|0,e=r0()|0;while(!((r|0)==0&(e|0)==0));return t|0}function tm(r,e,t){if(r=r|0,e=e|0,t=t|0,!((r|0)==0&(e|0)==0))do t=t+-1|0,l[t>>0]=r&7|48,r=Wn(r|0,e|0,3)|0,e=r0()|0;while(!((r|0)==0&(e|0)==0));return t|0}function ur(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;if(e>>>0>0|(e|0)==0&r>>>0>4294967295){do i=r,r=xe(r|0,e|0,10,0)|0,A=e,e=r0()|0,f=_e(r|0,e|0,10,0)|0,f=cr(i|0,A|0,f|0,r0()|0)|0,r0()|0,t=t+-1|0,l[t>>0]=f&255|48;while(A>>>0>9|(A|0)==9&i>>>0>4294967295);e=r}else e=r;if(e)do f=e,e=(e>>>0)/10|0,t=t+-1|0,l[t>>0]=f-(e*10|0)|48;while(f>>>0>=10);return t|0}function k0(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,o=0;if(o=s,s=s+256|0,f=o,(t|0)>(i|0)&(A&73728|0)==0){if(A=t-i|0,O2(f|0,e<<24>>24|0,(A>>>0<256?A:256)|0)|0,A>>>0>255){e=t-i|0;do V0(r,f,256),A=A+-256|0;while(A>>>0>255);A=e&255}V0(r,f,A)}s=o}function wA(r,e){return r=r|0,e=e|0,r?r=im(r,e,0)|0:r=0,r|0}function im(r,e,t){r=r|0,e=e|0,t=t|0;do if(r){if(e>>>0<128){l[r>>0]=e,r=1;break}if(!(n[n[(Am()|0)+176>>2]>>2]|0))if((e&-128|0)==57216){l[r>>0]=e,r=1;break}else{n[(i2()|0)>>2]=25,r=-1;break}if(e>>>0<2048){l[r>>0]=e>>>6|192,l[r+1>>0]=e&63|128,r=2;break}if(e>>>0<55296|(e&-8192|0)==57344){l[r>>0]=e>>>12|224,l[r+1>>0]=e>>>6&63|128,l[r+2>>0]=e&63|128,r=3;break}if((e+-65536|0)>>>0<1048576){l[r>>0]=e>>>18|240,l[r+1>>0]=e>>>12&63|128,l[r+2>>0]=e>>>6&63|128,l[r+3>>0]=e&63|128,r=4;break}else{n[(i2()|0)>>2]=25,r=-1;break}}else r=1;while(0);return r|0}function Am(){return ZA()|0}function kA(r){r=+r;var e=0;return J[d>>3]=r,e=n[d>>2]|0,o0(n[d+4>>2]|0),e|0}function WA(r,e){r=+r,e=e|0;var t=0,i=0,A=0;switch(J[d>>3]=r,t=n[d>>2]|0,i=n[d+4>>2]|0,A=Wn(t|0,i|0,52)|0,r0()|0,A&2047){case 0:{r!=0?(r=+WA(r*18446744073709552e3,e),t=(n[e>>2]|0)+-64|0):t=0,n[e>>2]=t;break}case 2047:break;default:n[e>>2]=(A&2047)+-1022,n[d>>2]=t,n[d+4>>2]=i&-2146435073|1071644672,r=+J[d>>3]}return+r}function fm(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;r:do if(!t)r=0;else{for(;i=l[r>>0]|0,A=l[e>>0]|0,i<<24>>24==A<<24>>24;)if(t=t+-1|0,t)r=r+1|0,e=e+1|0;else{r=0;break r}r=(i&255)-(A&255)|0}while(0);return r|0}function om(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;return A=s,s=s+16|0,f=A,n[f>>2]=i,i=um(r,e,t,f)|0,s=A,i|0}function um(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,o=0,u=0;return u=s,s=s+160|0,A=u+144|0,o=u,_0(o|0,3672,144)|0,(e+-1|0)>>>0>2147483646?e?(n[(i2()|0)>>2]=61,e=-1):(r=A,e=1,f=4):f=4,(f|0)==4&&(f=-2-r|0,f=e>>>0>f>>>0?f:e,n[o+48>>2]=f,A=o+20|0,n[A>>2]=r,n[o+44>>2]=r,e=r+f|0,r=o+16|0,n[r>>2]=e,n[o+28>>2]=e,e=K6(o,t,i)|0,f&&(o=n[A>>2]|0,l[o+(((o|0)==(n[r>>2]|0))<<31>>31)>>0]=0)),s=u,e|0}function lm(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;return i=r+20|0,A=n[i>>2]|0,r=(n[r+16>>2]|0)-A|0,r=r>>>0>t>>>0?t:r,_0(A|0,e|0,r|0)|0,n[i>>2]=(n[i>>2]|0)+r,t|0}function cm(r){r=r|0;var e=0,t=0;return e=(Rn(r)|0)+1|0,t=kn(e)|0,t?r=_0(t|0,r|0,e|0)|0:r=0,r|0}function sm(r,e){r=r|0,e=e|0;var t=0,i=0;for(t=0;;){if((Z[656+t>>0]|0)==(r|0)){i=4;break}if(t=t+1|0,(t|0)==87){r=87,i=5;break}}if((i|0)==4&&(t?(r=t,i=5):t=752),(i|0)==5){t=752;do{do i=t,t=t+1|0;while(l[i>>0]|0);r=r+-1|0}while(r|0)}return hm(t,n[e+20>>2]|0)|0}function hm(r,e){return r=r|0,e=e|0,L6(r,e)|0}function mm(r){return r=r|0,sm(r,n[(pm()|0)+176>>2]|0)|0}function pm(){return ZA()|0}function vm(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;return i=mm(r)|0,r=Rn(i)|0,r>>>0>=t>>>0?(r=t+-1|0,t&&(_0(e|0,i|0,r|0)|0,l[e+r>>0]=0),r=68):(_0(e|0,i|0,r+1|0)|0,r=0),r|0}function ym(){var r=0,e=0,t=0,i=0,A=0,f=0,o=0;i=s,s=s+48|0,f=i+32|0,e=i+24|0,o=i+16|0,A=i,i=i+36|0,r=XA()|0,r|0&&(t=n[r>>2]|0,t|0)&&(r=t+48|0,dA(r)|0||(n[e>>2]=20420,E2(20370,e)),e=gA(r)|0,(e|0)==1126902529&(r0()|0)==1129074247?r=n[t+44>>2]|0:r=t+80|0,n[i>>2]=r,t=n[t>>2]|0,r=n[t+4>>2]|0,sr[n[(n[954]|0)+16>>2]&7](3816,t,i)|0?(o=n[i>>2]|0,o=Xn[n[(n[o>>2]|0)+8>>2]&15](o)|0,n[A>>2]=20420,n[A+4>>2]=r,n[A+8>>2]=o,E2(20284,A)):(n[o>>2]=20420,n[o+4>>2]=r,E2(20329,o))),E2(20408,f)}function XA(){return 21640}function dA(r){return r=r|0,r=gA(r)|0,(r&-256|0)==1126902528&(r0()|0)==1129074247|0}function gA(r){r=r|0;var e=0;return e=r,r=n[e>>2]|0,o0(n[e+4>>2]|0),r|0}function E2(r,e){r=r|0,e=e|0,xt()}function lr(r){r=r|0}function Zm(r){r=r|0,lr(r),_(r)}function Rm(r){r=r|0}function Vm(r){r=r|0}function Fm(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0;if(c=s,s=s+64|0,o=c,y0(r,e,0)|0)r=1;else if(e|0&&(u=J0(e,3840,3824,0)|0,(u|0)!=0)){n[o>>2]=u,n[o+4>>2]=0,n[o+8>>2]=r,n[o+12>>2]=-1,r=o+16|0,e=o+24|0,i=o+48|0,A=r,f=A+36|0;do n[A>>2]=0,A=A+4|0;while((A|0)<(f|0));g[r+36>>1]=0,l[r+38>>0]=0,n[i>>2]=1,jr[n[(n[u>>2]|0)+28>>2]&7](u,o,n[t>>2]|0,1),(n[e>>2]|0)==1?(n[t>>2]=n[r>>2],r=1):r=0}else r=0;return s=c,r|0}function wm(r,e,t,i,A,f){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,y0(r,n[e+8>>2]|0,f)|0&&Me(0,e,t,i,A)}function km(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0;do if(y0(r,n[e+8>>2]|0,A)|0)Ne(0,e,t,i);else if(y0(r,n[e>>2]|0,A)|0){if((n[e+16>>2]|0)!=(t|0)&&(f=e+20|0,(n[f>>2]|0)!=(t|0))){n[e+32>>2]=i,n[f>>2]=t,A=e+40|0,n[A>>2]=(n[A>>2]|0)+1,(n[e+36>>2]|0)==1&&(n[e+24>>2]|0)==2&&(l[e+54>>0]=1),n[e+44>>2]=4;break}(i|0)==1&&(n[e+32>>2]=1)}while(0)}function Wm(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0,y0(r,n[e+8>>2]|0,0)|0&&Ge(0,e,t,i)}function y0(r,e,t){return r=r|0,e=e|0,t=t|0,t?(r|0)==(e|0)?r=1:r=(RA(n[r+4>>2]|0,n[e+4>>2]|0)|0)==0:r=(n[r+4>>2]|0)==(n[e+4>>2]|0),r|0}function Ge(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;r=e+16|0,A=n[r>>2]|0;do if(A){if((A|0)!=(t|0)){i=e+36|0,n[i>>2]=(n[i>>2]|0)+1,n[e+24>>2]=2,l[e+54>>0]=1;break}r=e+24|0,(n[r>>2]|0)==2&&(n[r>>2]=i)}else n[r>>2]=t,n[e+24>>2]=i,n[e+36>>2]=1;while(0)}function Ne(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0;(n[e+4>>2]|0)==(t|0)&&(A=e+28|0,(n[A>>2]|0)!=1)&&(n[A>>2]=i)}function Me(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,l[e+53>>0]=1;do if((n[e+4>>2]|0)==(i|0)){if(l[e+52>>0]=1,r=e+16|0,i=n[r>>2]|0,!i){if(n[r>>2]=t,n[e+24>>2]=A,n[e+36>>2]=1,!((A|0)==1&&(n[e+48>>2]|0)==1))break;l[e+54>>0]=1;break}if((i|0)!=(t|0)){A=e+36|0,n[A>>2]=(n[A>>2]|0)+1,l[e+54>>0]=1;break}i=e+24|0,r=n[i>>2]|0,(r|0)==2&&(n[i>>2]=A,r=A),(r|0)==1&&(n[e+48>>2]|0)==1&&(l[e+54>>0]=1)}while(0)}function J0(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0;F=s,s=s+64|0,v=F,h=n[r>>2]|0,y=r+(n[h+-8>>2]|0)|0,h=n[h+-4>>2]|0,n[v>>2]=t,n[v+4>>2]=r,n[v+8>>2]=e,n[v+12>>2]=i,r=v+16|0,e=v+20|0,i=v+24|0,A=v+28|0,f=v+32|0,o=v+40|0,u=r,c=u+36|0;do n[u>>2]=0,u=u+4|0;while((u|0)<(c|0));g[r+36>>1]=0,l[r+38>>0]=0;r:do if(y0(h,t,0)|0)n[v+48>>2]=1,Sr[n[(n[h>>2]|0)+20>>2]&3](h,v,y,y,1,0),r=(n[i>>2]|0)==1?y:0;else{switch(dn[n[(n[h>>2]|0)+24>>2]&3](h,v,y,1,0),n[v+36>>2]|0){case 0:{r=(n[o>>2]|0)==1&(n[A>>2]|0)==1&(n[f>>2]|0)==1?n[e>>2]|0:0;break r}case 1:break;default:{r=0;break r}}if((n[i>>2]|0)!=1&&!((n[o>>2]|0)==0&(n[A>>2]|0)==1&(n[f>>2]|0)==1)){r=0;break}r=n[r>>2]|0}while(0);return s=F,r|0}function Xm(r){r=r|0,lr(r),_(r)}function dm(r,e,t,i,A,f){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,y0(r,n[e+8>>2]|0,f)|0?Me(0,e,t,i,A):(r=n[r+8>>2]|0,Sr[n[(n[r>>2]|0)+20>>2]&3](r,e,t,i,A,f))}function gm(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,o=0,u=0;r:do if(y0(r,n[e+8>>2]|0,A)|0)Ne(0,e,t,i);else{if(!(y0(r,n[e>>2]|0,A)|0)){o=n[r+8>>2]|0,dn[n[(n[o>>2]|0)+24>>2]&3](o,e,t,i,A);break}if((n[e+16>>2]|0)!=(t|0)&&(o=e+20|0,(n[o>>2]|0)!=(t|0))){n[e+32>>2]=i,i=e+44|0;do if((n[i>>2]|0)!=4)if(f=e+52|0,l[f>>0]=0,u=e+53|0,l[u>>0]=0,r=n[r+8>>2]|0,Sr[n[(n[r>>2]|0)+20>>2]&3](r,e,t,t,1,A),l[u>>0]|0){if(u=(l[f>>0]|0)==0,n[i>>2]=3,u)break;break r}else{n[i>>2]=4;break}while(0);if(n[o>>2]=t,u=e+40|0,n[u>>2]=(n[u>>2]|0)+1,(n[e+36>>2]|0)!=1||(n[e+24>>2]|0)!=2)break;l[e+54>>0]=1;break}(i|0)==1&&(n[e+32>>2]=1)}while(0)}function Um(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0,y0(r,n[e+8>>2]|0,0)|0?Ge(0,e,t,i):(r=n[r+8>>2]|0,jr[n[(n[r>>2]|0)+28>>2]&7](r,e,t,i))}function _(r){r=r|0,Ye(r)}function gy(r){r=r|0}function Tm(){var r=0,e=0;r=XA()|0,r|0&&(e=n[r>>2]|0,e|0)&&dA(e+48|0)|0&&UA(n[e+12>>2]|0),UA(Gm()|0)}function UA(r){r=r|0;var e=0;e=s,s=s+16|0,Ce[r&3](),E2(20559,e)}function Gm(){return 2}function Nm(r){r=r|0}function Mm(r){r=r|0,_(r)}function zm(r){return r=r|0,20599}function Vn(r){r=r|0,n[r>>2]=5916,GA(r+4|0)}function Bm(r){r=r|0,Vn(r),_(r)}function Jm(r){return r=r|0,TA(r+4|0)|0}function TA(r){return r=r|0,n[r>>2]|0}function GA(r){r=r|0;var e=0,t=0;Ym(r)|0&&(e=_m(n[r>>2]|0)|0,t=e+8|0,r=n[t>>2]|0,n[t>>2]=r+-1,(r|0)<1)&&_(e)}function Ym(r){return r=r|0,1}function _m(r){return r=r|0,r+-12|0}function Y0(r){r=r|0,n[r>>2]=5936,GA(r+4|0)}function xm(r){r=r|0,Y0(r),_(r)}function Em(r){return r=r|0,TA(r+4|0)|0}function jm(r){r=r|0,Vn(r),_(r)}function Sm(r){r=r|0,Vn(r),_(r)}function Cm(){var r=0;r=s,s=s+16|0,E2(20848,r)}function Om(r){r=r|0,lr(r),_(r)}function Im(r,e,t){return r=r|0,e=e|0,t=t|0,y0(r,e,0)|0}function Hm(r){r=r|0,lr(r),_(r)}function am(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0;v=s,s=s+64|0,c=v;do if(y0(e,4048,0)|0)n[t>>2]=0,e=1;else{if(Qm(r,e,0)|0){if(e=n[t>>2]|0,!e){e=1;break}n[t>>2]=n[e>>2],e=1;break}if(e|0&&(i=J0(e,3840,3976,0)|0,(i|0)!=0))if(e=n[t>>2]|0,e|0&&(n[t>>2]=n[e>>2]),e=n[i+8>>2]|0,f=r+8|0,A=n[f>>2]|0,!(e&7&(A^7)|0)&&!((e&96^96)&A|0))if(A=r+12|0,r=n[A>>2]|0,i=i+12|0,e=n[i>>2]|0,y0(r,e,0)|0)e=1;else{if(y0(r,4040,0)|0){if(!e){e=1;break}e=(J0(e,3840,3992,0)|0)==0;break}if(r){if(e=J0(r,3840,3976,0)|0,e|0){if(!(n[f>>2]&1)){e=0;break}e=Dm(e,n[i>>2]|0)|0;break}if(e=n[A>>2]|0,e){if(e=J0(e,3840,4008,0)|0,e|0){if(!(n[f>>2]&1)){e=0;break}e=NA(e,n[i>>2]|0)|0;break}if(e=n[A>>2]|0,e|0&&(o=J0(e,3840,3824,0)|0,(o|0)!=0)&&(u=n[i>>2]|0,(u|0)!=0)&&(h=J0(u,3840,3824,0)|0,(h|0)!=0)){n[c>>2]=h,n[c+4>>2]=0,n[c+8>>2]=o,n[c+12>>2]=-1,e=c+16|0,r=c+24|0,i=c+48|0,A=e,f=A+36|0;do n[A>>2]=0,A=A+4|0;while((A|0)<(f|0));g[e+36>>1]=0,l[e+38>>0]=0,n[i>>2]=1,jr[n[(n[h>>2]|0)+28>>2]&7](h,c,n[t>>2]|0,1);do if((n[r>>2]|0)==1){if(!(n[t>>2]|0)){e=1;break}n[t>>2]=n[e>>2],e=1}else e=0;while(0)}else e=0}else e=0}else e=0}else e=0;else e=0}while(0);return s=v,e|0}function Qm(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;return n[r+8>>2]&24?(t=1,A=5):e|0&&(i=J0(e,3840,3960,0)|0,(i|0)!=0)?(t=(n[i+8>>2]&24|0)!=0,A=5):t=0,(A|0)==5&&(t=y0(r,e,t)|0),t|0}function Dm(r,e){r=r|0,e=e|0;for(var t=0,i=0,A=0,f=0,o=0;;){if(!e){e=0;break}if(t=J0(e,3840,3976,0)|0,!t){e=0;break}if(A=n[r+8>>2]|0,n[t+8>>2]&~A|0){e=0;break}if(i=r+12|0,e=n[i>>2]|0,t=t+12|0,y0(e,n[t>>2]|0,0)|0){e=1;break}if((A&1|0)==0|(e|0)==0){e=0;break}if(r=J0(e,3840,3976,0)|0,!r){o=9;break}e=n[t>>2]|0}return(o|0)==9&&(e=n[i>>2]|0,e|0&&(f=J0(e,3840,4008,0)|0,(f|0)!=0)?e=NA(f,n[t>>2]|0)|0:e=0),e|0}function NA(r,e){r=r|0,e=e|0;var t=0;return e|0&&(t=J0(e,3840,4008,0)|0,(t|0)!=0)&&!(n[t+8>>2]&~n[r+8>>2]|0)&&y0(n[r+12>>2]|0,n[t+12>>2]|0,0)|0?r=y0(n[r+16>>2]|0,n[t+16>>2]|0,0)|0:r=0,r|0}function Pm(r){r=r|0,lr(r),_(r)}function Lm(r,e,t,i,A,f){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0;var o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;if(y0(r,n[e+8>>2]|0,f)|0)Me(0,e,t,i,A);else{k=e+52|0,u=l[k>>0]|0,X=e+53|0,o=l[X>>0]|0,W=n[r+12>>2]|0,v=r+16+(W<<3)|0,l[k>>0]=0,l[X>>0]=0,ze(r+16|0,e,t,i,A,f),c=l[k>>0]|0,u=c|u,h=l[X>>0]|0,o=h|o;r:do if((W|0)>1){y=e+24|0,F=r+8|0,W=e+54|0,r=r+24|0;do{if(o=o&1,u=u&1,l[W>>0]|0)break r;if(c<<24>>24){if((n[y>>2]|0)==1||!(n[F>>2]&2))break r}else if(h<<24>>24&&!(n[F>>2]&1|0))break r;l[k>>0]=0,l[X>>0]=0,ze(r,e,t,i,A,f),c=l[k>>0]|0,u=c|u,h=l[X>>0]|0,o=h|o,r=r+8|0}while(r>>>0<v>>>0)}while(0);l[k>>0]=u<<24>>24!=0&1,l[X>>0]=o<<24>>24!=0&1}}function $m(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;r:do if(y0(r,n[e+8>>2]|0,A)|0)Ne(0,e,t,i);else{if(!(y0(r,n[e>>2]|0,A)|0)){if(W=n[r+12>>2]|0,c=r+16+(W<<3)|0,Fn(r+16|0,e,t,i,A),f=r+24|0,(W|0)<=1)break;if(r=n[r+8>>2]|0,!(r&2|0)&&(u=e+36|0,(n[u>>2]|0)!=1)){if(!(r&1)){for(r=e+54|0;;)if(l[r>>0]|0||(n[u>>2]|0)==1||(Fn(f,e,t,i,A),f=f+8|0,f>>>0>=c>>>0))break r}for(r=e+24|0,o=e+54|0;;)if(l[o>>0]|0||(n[u>>2]|0)==1&&(n[r>>2]|0)==1||(Fn(f,e,t,i,A),f=f+8|0,f>>>0>=c>>>0))break r}for(r=e+54|0;;)if(l[r>>0]|0||(Fn(f,e,t,i,A),f=f+8|0,f>>>0>=c>>>0))break r}if((n[e+16>>2]|0)!=(t|0)&&(W=e+20|0,(n[W>>2]|0)!=(t|0))){if(n[e+32>>2]=i,F=e+44|0,(n[F>>2]|0)!=4){u=r+16+(n[r+12>>2]<<3)|0,c=e+52|0,i=e+53|0,h=e+54|0,v=r+8|0,y=e+24|0,f=0,o=r+16|0,r=0;n:for(;;){if(o>>>0>=u>>>0){o=18;break}if(l[c>>0]=0,l[i>>0]=0,ze(o,e,t,t,1,A),l[h>>0]|0){o=18;break}do if(l[i>>0]|0){if(!(l[c>>0]|0))if(n[v>>2]&1){r=1;break}else{o=19;break n}if((n[y>>2]|0)==1){f=1,o=19;break n}if(n[v>>2]&2)f=1,r=1;else{f=1,o=19;break n}}while(0);o=o+8|0}if((o|0)==18&&(r?o=19:r=4),(o|0)==19&&(r=3),n[F>>2]=r,f&1)break}if(n[W>>2]=t,t=e+40|0,n[t>>2]=(n[t>>2]|0)+1,(n[e+36>>2]|0)!=1||(n[e+24>>2]|0)!=2)break;l[e+54>>0]=1;break}(i|0)==1&&(n[e+32>>2]=1)}while(0)}function qm(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;r:do if(y0(r,n[e+8>>2]|0,0)|0)Ge(0,e,t,i);else if(f=n[r+12>>2]|0,A=r+16+(f<<3)|0,MA(r+16|0,e,t,i),(f|0)>1){f=e+54|0,r=r+24|0;do{if(MA(r,e,t,i),l[f>>0]|0)break r;r=r+8|0}while(r>>>0<A>>>0)}while(0)}function MA(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=n[r+4>>2]|0,t?(A=f>>8,f&1&&(A=n[(n[t>>2]|0)+A>>2]|0)):A=0,r=n[r>>2]|0,jr[n[(n[r>>2]|0)+28>>2]&7](r,e,t+A|0,f&2|0?i:2)}function ze(r,e,t,i,A,f){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0;var o=0,u=0;u=n[r+4>>2]|0,o=u>>8,u&1&&(o=n[(n[i>>2]|0)+o>>2]|0),r=n[r>>2]|0,Sr[n[(n[r>>2]|0)+20>>2]&3](r,e,t,i+o|0,u&2|0?A:2,f)}function Fn(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,o=0;o=n[r+4>>2]|0,f=o>>8,o&1&&(f=n[(n[t>>2]|0)+f>>2]|0),r=n[r>>2]|0,dn[n[(n[r>>2]|0)+24>>2]&3](r,e,t+f|0,o&2|0?i:2,A)}function Km(r){r=r|0,n[r>>2]=5896}function j2(r){r=r|0;var e=0,t=0;return e=s,s=s+16|0,t=e,zA(t,r),r=bm(t)|0,s=e,r|0}function zA(r,e){r=r|0,e=e|0,ep(r,e)}function bm(r){r=r|0;var e=0,t=0;return e=s,s=s+16|0,t=e,BA(t,n[r+4>>2]|0),(rp(t)|0)<<24>>24?r=0:r=np(JA(r)|0)|0,s=e,r|0}function BA(r,e){r=r|0,e=e|0,n[r>>2]=e}function rp(r){return r=r|0,l[n[r>>2]>>0]|0}function JA(r){return r=r|0,r|0}function np(r){r=r|0;var e=0,t=0,i=0,A=0;A=s,s=s+16|0,i=A,r=n[r+8>>2]|0,e=l[r>>0]|0;do if(e<<24>>24!=1)if(e&2)E2(20985,i);else{l[r>>0]=2,t=1;break}else t=0;while(0);return s=A,t|0}function ep(r,e){r=r|0,e=e|0,n[r>>2]=e,n[r+4>>2]=e,n[r+8>>2]=e+1,n[r+12>>2]=0}function S2(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,zA(t,r),tp(t),s=e}function tp(r){r=r|0;var e=0,t=0;e=s,s=s+16|0,t=e,BA(t,n[r+4>>2]|0),ip(t),Ap(JA(r)|0),s=e}function ip(r){r=r|0,l[n[r>>2]>>0]=1}function Ap(r){r=r|0,l[n[r+8>>2]>>0]=1}function fp(){return 0}function x(r){r=r|0;var e=0,t=0;for(t=r|0?r:1;;){if(e=kn(t)|0,e|0){r=6;break}if(r=fp()|0,!r){r=5;break}Ce[r&3]()}if((r|0)==5)t=u0(4)|0,Km(t),l0(t|0,3880,121);else if((r|0)==6)return e|0;return 0}function YA(r){return r=r|0,x(r)|0}function _A(r){r=r|0,_(r)}function op(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;return A=s,s=s+16|0,i=A,n[i>>2]=n[t>>2],r=sr[n[(n[r>>2]|0)+16>>2]&7](r,e,i)|0,r&&(n[t>>2]=n[i>>2]),s=A,r&1|0}function up(r){return r=r|0,r?r=(J0(r,3840,3976,0)|0)!=0&1:r=0,r|0}function lp(r){return r=r|0,0}function cp(){return(sp()|0)>0|0}function sp(){return m1()|0}function xA(r){r=r|0}function hp(r){r=r|0,xA(r),_(r)}function mp(r){return r=r|0,21039}function Z0(r){r=r|0}function s2(r){r=r|0;var e=0,t=0;e=r+8|0,n[e>>2]|0&&(t=n[e>>2]|0,n[e>>2]=t+-1,(t|0)!=0)||f0[n[(n[r>>2]|0)+16>>2]&255](r)}function pp(r){if(r=r|0,r=lp(r)|0,r)Cp(r,21145);else return}function vp(r){r=r|0}function Be(r,e){r=r|0,e=e|0;var t=0,i=0;i=Rn(e)|0,t=x(i+13|0)|0,n[t>>2]=i,n[t+4>>2]=i,n[t+8>>2]=0,t=yp(t)|0,_0(t|0,e|0,i+1|0)|0,n[r>>2]=t}function yp(r){return r=r|0,r+12|0}function h2(r,e){r=r|0,e=e|0,n[r>>2]=5916,Be(r+4|0,e)}function Zp(r,e){r=r|0,e=e|0,n[r>>2]=5936,Be(r+4|0,(l[e+11>>0]|0)<0?n[e>>2]|0:e)}function Q0(r,e){r=r|0,e=e|0,n[r>>2]=5936,Be(r+4|0,e)}function Je(r){r=r|0,r=u0(8)|0,h2(r,21163),n[r>>2]=5956,l0(r|0,3928,123)}function Rp(r){r=r|0,r=u0(8)|0,h2(r,21163),n[r>>2]=5976,l0(r|0,3944,123)}function wn(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;A=s,s=s+16|0,i=A,t>>>0>4294967279&&Je(r),t>>>0<11?l[r+11>>0]=t:(o=t+16&-16,f=x(o)|0,n[r>>2]=f,n[r+8>>2]=o|-2147483648,n[r+4>>2]=t,r=f),Yr(r,e,t)|0,l[i>>0]=0,kr(r+t|0,i),s=A}function Yr(r,e,t){return r=r|0,e=e|0,t=t|0,t|0&&_0(r|0,e|0,t|0)|0,r|0}function _r(r){r=r|0,(l[r+11>>0]|0)<0&&D(n[r>>2]|0,n[r+8>>2]&2147483647)}function Vp(r,e,t,i,A,f,o,u){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,o=o|0,u=u|0;var c=0,h=0,v=0,y=0,F=0;F=s,s=s+16|0,y=F,(-18-e|0)>>>0<t>>>0&&Je(r),(l[r+11>>0]|0)<0?v=n[r>>2]|0:v=r,e>>>0<2147483623?(c=t+e|0,h=e<<1,c=c>>>0<h>>>0?h:c,c=c>>>0<11?11:c+16&-16):c=-17,h=x(c)|0,A|0&&Yr(h,v,A)|0,o|0&&Yr(h+A|0,u,o)|0,i=i-f|0,t=i-A|0,t|0&&Yr(h+A+o|0,v+A+f|0,t)|0,t=e+1|0,(t|0)!=11&&D(v,t),n[r>>2]=h,n[r+8>>2]=c|-2147483648,o=i+o|0,n[r+4>>2]=o,l[y>>0]=0,kr(h+o|0,y),s=F}function EA(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0,u=0,c=0;return c=s,s=s+16|0,o=c,u=r+11|0,i=l[u>>0]|0,f=i<<24>>24<0,f?(A=(n[r+8>>2]&2147483647)+-1|0,i=n[r+4>>2]|0):(A=10,i=i&255),(A-i|0)>>>0>=t>>>0?t|0&&(f?A=n[r>>2]|0:A=r,Yr(A+i|0,e,t)|0,i=i+t|0,(l[u>>0]|0)<0?n[r+4>>2]=i:l[u>>0]=i,l[o>>0]=0,kr(A+i|0,o)):Vp(r,A,i+t-A|0,i,i,0,t,e),s=c,r|0}function Fp(r,e){return r=r|0,e=e|0,EA(r,e,er(e)|0)|0}function wp(r,e,t){return r=r|0,e=e|0,t=t|0,t?r=fm(r,e,t)|0:r=0,r|0}function kp(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,o=0;return f=l[r+11>>0]|0,o=f<<24>>24<0,o?f=n[r+4>>2]|0:f=f&255,(A|0)==-1|f>>>0<e>>>0&&Rp(r),f=f-e|0,t=f>>>0<t>>>0?f:t,o&&(r=n[r>>2]|0),f=t>>>0>A>>>0,r=wp(r+e|0,i,f?A:t)|0,r?r|0:(t>>>0<A>>>0?-1:f&1)|0}function Wp(r){r=r|0}function Xp(r){r=r|0,_(r)}function dp(r){return r=r|0,21228}function gp(r,e,t){r=r|0,e=e|0,t=t|0,n[r>>2]=t,n[r+4>>2]=e}function Up(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0;return A=s,s=s+16|0,i=A,Er[n[(n[r>>2]|0)+12>>2]&15](i,r,e),(n[i+4>>2]|0)==(n[t+4>>2]|0)?r=(n[i>>2]|0)==(n[t>>2]|0):r=0,s=A,r|0}function Tp(r,e,t){return r=r|0,e=e|0,t=t|0,((n[e>>2]|0)==(t|0)?(n[e+4>>2]|0)==(r|0):0)|0}function Gp(r,e,t){r=r|0,e=e|0,t=t|0,(t|0)>256?wn(r,21176,er(21176)|0):jA(r,0,t)}function jA(r,e,t){r=r|0,e=e|0,t=t|0,Np(r,t)}function Np(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0,o=0;o=s,s=s+1040|0,A=o+1024|0,t=o,f=n[(i2()|0)>>2]|0,i=Mp(vm(e,t,1024)|0,t)|0,l[i>>0]|0?t=i:(n[A>>2]=e,om(t,1024,21211,A)|0),n[(i2()|0)>>2]=f,wn(r,t,er(t)|0),s=o}function Mp(r,e){r=r|0,e=e|0;var t=0,i=0;switch(r|0){case 0:{t=e;break}case-1:{r=n[(i2()|0)>>2]|0,i=3;break}default:i=3}return(i|0)==3&&((r|0)==28?t=22145:Z1()),t|0}function zp(r){r=r|0,_(r)}function Bp(r){return r=r|0,21353}function Jp(r,e,t){r=r|0,e=e|0,t=t|0,(t|0)>256?(SA()|0,e=6180):(_p()|0,e=6176),n[r>>2]=t,n[r+4>>2]=e}function Yp(r,e,t){r=r|0,e=e|0,t=t|0,(t|0)>256?wn(r,21319,er(21319)|0):jA(r,0,t)}function SA(){return!(l[21488]|0)&&j2(21488)|0&&S2(21488),6180}function _p(){return!(l[21480]|0)&&j2(21480)|0&&S2(21480),6176}function CA(r){r=r|0,Y0(r)}function xp(r){r=r|0,CA(r),_(r)}function Ep(r,e){r=r|0,e=e|0;var t=0;t=n[e+4>>2]|0,Er[n[(n[t>>2]|0)+24>>2]&15](r,t,n[e>>2]|0)}function jp(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;for(f=s,s=s+16|0,A=f,n[e>>2]|0&&(i=l[t+11>>0]|0,i<<24>>24<0?i=n[t+4>>2]|0:i=i&255,i|0&&Fp(t,21417)|0,Ep(A,e),e=l[A+11>>0]|0,i=e<<24>>24<0,EA(t,i?n[A>>2]|0:A,i?n[A+4>>2]|0:e&255)|0,_r(A)),n[r>>2]=n[t>>2],n[r+4>>2]=n[t+4>>2],n[r+8>>2]=n[t+8>>2],i=0;(i|0)!=3;)n[t+(i<<2)>>2]=0,i=i+1|0;s=f}function Sp(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;i=s,s=s+32|0,f=i+12|0,A=i,wn(A,t,er(t)|0),jp(f,e,A),Zp(r,f),_r(f),_r(A),n[r>>2]=6192,A=e,e=n[A+4>>2]|0,t=r+8|0,n[t>>2]=n[A>>2],n[t+4>>2]=e,s=i}function Cp(r,e){r=r|0,e=e|0;var t=0,i=0,A=0;A=s,s=s+16|0,i=A+8|0,t=u0(16)|0,SA()|0,n[A>>2]=r,n[A+4>>2]=6180,n[i>>2]=n[A>>2],n[i+4>>2]=n[A+4>>2],Sp(t,i,e),l0(t|0,4272,136)}function d0(r){r=r|0,r=u0(8)|0,h2(r,21420),n[r>>2]=5956,l0(r|0,3928,123)}function kn(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,N=0,E=0,U=0,n0=0;n0=s,s=s+16|0,F=n0;do if(r>>>0<245){if(h=r>>>0<11?16:r+11&-8,r=h>>>3,y=n[5412]|0,t=y>>>r,t&3|0)return e=(t&1^1)+r|0,r=21688+(e<<1<<2)|0,t=r+8|0,i=n[t>>2]|0,A=i+8|0,f=n[A>>2]|0,(f|0)==(r|0)?n[5412]=y&~(1<<e):(n[f+12>>2]=r,n[t>>2]=f),U=e<<3,n[i+4>>2]=U|3,U=i+U+4|0,n[U>>2]=n[U>>2]|1,U=A,s=n0,U|0;if(v=n[5414]|0,h>>>0>v>>>0){if(t|0)return e=2<<r,e=t<<r&(e|0-e),e=(e&0-e)+-1|0,u=e>>>12&16,e=e>>>u,t=e>>>5&8,e=e>>>t,f=e>>>2&4,e=e>>>f,r=e>>>1&2,e=e>>>r,i=e>>>1&1,i=(t|u|f|r|i)+(e>>>i)|0,e=21688+(i<<1<<2)|0,r=e+8|0,f=n[r>>2]|0,u=f+8|0,t=n[u>>2]|0,(t|0)==(e|0)?(r=y&~(1<<i),n[5412]=r):(n[t+12>>2]=e,n[r>>2]=t,r=y),U=i<<3,o=U-h|0,n[f+4>>2]=h|3,A=f+h|0,n[A+4>>2]=o|1,n[f+U>>2]=o,v|0&&(i=n[5417]|0,e=v>>>3,t=21688+(e<<1<<2)|0,e=1<<e,r&e?(r=t+8|0,e=n[r>>2]|0):(n[5412]=r|e,e=t,r=t+8|0),n[r>>2]=i,n[e+12>>2]=i,n[i+8>>2]=e,n[i+12>>2]=t),n[5414]=o,n[5417]=A,U=u,s=n0,U|0;if(f=n[5413]|0,f){for(t=(f&0-f)+-1|0,A=t>>>12&16,t=t>>>A,i=t>>>5&8,t=t>>>i,o=t>>>2&4,t=t>>>o,u=t>>>1&2,t=t>>>u,c=t>>>1&1,c=n[21952+((i|A|o|u|c)+(t>>>c)<<2)>>2]|0,t=c,u=c,c=(n[c+4>>2]&-8)-h|0;r=n[t+16>>2]|0,!(!r&&(r=n[t+20>>2]|0,!r));)o=(n[r+4>>2]&-8)-h|0,A=o>>>0<c>>>0,t=r,u=A?r:u,c=A?o:c;if(o=u+h|0,o>>>0>u>>>0){A=n[u+24>>2]|0,e=n[u+12>>2]|0;do if((e|0)==(u|0)){if(r=u+20|0,e=n[r>>2]|0,!e&&(r=u+16|0,e=n[r>>2]|0,!e)){t=0;break}for(;;)if(i=e+20|0,t=n[i>>2]|0,t)e=t,r=i;else if(i=e+16|0,t=n[i>>2]|0,t)e=t,r=i;else break;n[r>>2]=0,t=e}else t=n[u+8>>2]|0,n[t+12>>2]=e,n[e+8>>2]=t,t=e;while(0);do if(A|0){if(e=n[u+28>>2]|0,r=21952+(e<<2)|0,(u|0)==(n[r>>2]|0)){if(n[r>>2]=t,!t){n[5413]=f&~(1<<e);break}}else if(U=A+16|0,n[((n[U>>2]|0)==(u|0)?U:A+20|0)>>2]=t,!t)break;n[t+24>>2]=A,e=n[u+16>>2]|0,e|0&&(n[t+16>>2]=e,n[e+24>>2]=t),e=n[u+20>>2]|0,e|0&&(n[t+20>>2]=e,n[e+24>>2]=t)}while(0);return c>>>0<16?(U=c+h|0,n[u+4>>2]=U|3,U=u+U+4|0,n[U>>2]=n[U>>2]|1):(n[u+4>>2]=h|3,n[o+4>>2]=c|1,n[o+c>>2]=c,v|0&&(i=n[5417]|0,e=v>>>3,t=21688+(e<<1<<2)|0,e=1<<e,e&y?(r=t+8|0,e=n[r>>2]|0):(n[5412]=e|y,e=t,r=t+8|0),n[r>>2]=i,n[e+12>>2]=i,n[i+8>>2]=e,n[i+12>>2]=t),n[5414]=c,n[5417]=o),U=u+8|0,s=n0,U|0}else y=h}else y=h}else y=h}else if(r>>>0<=4294967231)if(r=r+11|0,h=r&-8,i=n[5413]|0,i){A=0-h|0,r=r>>>8,r?h>>>0>16777215?c=31:(y=(r+1048320|0)>>>16&8,k=r<<y,u=(k+520192|0)>>>16&4,k=k<<u,c=(k+245760|0)>>>16&2,c=14-(u|y|c)+(k<<c>>>15)|0,c=h>>>(c+7|0)&1|c<<1):c=0,t=n[21952+(c<<2)>>2]|0;r:do if(!t)t=0,r=0,k=61;else for(r=0,u=h<<((c|0)==31?0:25-(c>>>1)|0),f=0;;){if(o=(n[t+4>>2]&-8)-h|0,o>>>0<A>>>0)if(o)r=t,A=o;else{r=t,A=0,k=65;break r}if(k=n[t+20>>2]|0,t=n[t+16+(u>>>31<<2)>>2]|0,f=(k|0)==0|(k|0)==(t|0)?f:k,t)u=u<<1;else{t=f,k=61;break}}while(0);if((k|0)==61){if((t|0)==0&(r|0)==0){if(r=2<<c,r=(r|0-r)&i,!r){y=h;break}y=(r&0-r)+-1|0,o=y>>>12&16,y=y>>>o,f=y>>>5&8,y=y>>>f,u=y>>>2&4,y=y>>>u,c=y>>>1&2,y=y>>>c,t=y>>>1&1,r=0,t=n[21952+((f|o|u|c|t)+(y>>>t)<<2)>>2]|0}t?k=65:(u=r,o=A)}if((k|0)==65)for(f=t;;)if(y=(n[f+4>>2]&-8)-h|0,t=y>>>0<A>>>0,A=t?y:A,r=t?f:r,t=n[f+16>>2]|0,t||(t=n[f+20>>2]|0),t)f=t;else{u=r,o=A;break}if(u|0&&o>>>0<((n[5414]|0)-h|0)>>>0&&(v=u+h|0,v>>>0>u>>>0)){f=n[u+24>>2]|0,e=n[u+12>>2]|0;do if((e|0)==(u|0)){if(r=u+20|0,e=n[r>>2]|0,!e&&(r=u+16|0,e=n[r>>2]|0,!e)){e=0;break}for(;;)if(A=e+20|0,t=n[A>>2]|0,t)e=t,r=A;else if(A=e+16|0,t=n[A>>2]|0,t)e=t,r=A;else break;n[r>>2]=0}else U=n[u+8>>2]|0,n[U+12>>2]=e,n[e+8>>2]=U;while(0);do if(f){if(r=n[u+28>>2]|0,t=21952+(r<<2)|0,(u|0)==(n[t>>2]|0)){if(n[t>>2]=e,!e){i=i&~(1<<r),n[5413]=i;break}}else if(U=f+16|0,n[((n[U>>2]|0)==(u|0)?U:f+20|0)>>2]=e,!e)break;n[e+24>>2]=f,r=n[u+16>>2]|0,r|0&&(n[e+16>>2]=r,n[r+24>>2]=e),r=n[u+20>>2]|0,r&&(n[e+20>>2]=r,n[r+24>>2]=e)}while(0);r:do if(o>>>0<16)U=o+h|0,n[u+4>>2]=U|3,U=u+U+4|0,n[U>>2]=n[U>>2]|1;else{if(n[u+4>>2]=h|3,n[v+4>>2]=o|1,n[v+o>>2]=o,e=o>>>3,o>>>0<256){t=21688+(e<<1<<2)|0,r=n[5412]|0,e=1<<e,r&e?(r=t+8|0,e=n[r>>2]|0):(n[5412]=r|e,e=t,r=t+8|0),n[r>>2]=v,n[e+12>>2]=v,n[v+8>>2]=e,n[v+12>>2]=t;break}if(e=o>>>8,e?o>>>0>16777215?t=31:(E=(e+1048320|0)>>>16&8,U=e<<E,N=(U+520192|0)>>>16&4,U=U<<N,t=(U+245760|0)>>>16&2,t=14-(N|E|t)+(U<<t>>>15)|0,t=o>>>(t+7|0)&1|t<<1):t=0,e=21952+(t<<2)|0,n[v+28>>2]=t,r=v+16|0,n[r+4>>2]=0,n[r>>2]=0,r=1<<t,!(i&r)){n[5413]=i|r,n[e>>2]=v,n[v+24>>2]=e,n[v+12>>2]=v,n[v+8>>2]=v;break}e=n[e>>2]|0;n:do if((n[e+4>>2]&-8|0)!=(o|0)){for(i=o<<((t|0)==31?0:25-(t>>>1)|0);t=e+16+(i>>>31<<2)|0,r=n[t>>2]|0,!!r;)if((n[r+4>>2]&-8|0)==(o|0)){e=r;break n}else i=i<<1,e=r;n[t>>2]=v,n[v+24>>2]=e,n[v+12>>2]=v,n[v+8>>2]=v;break r}while(0);E=e+8|0,U=n[E>>2]|0,n[U+12>>2]=v,n[E>>2]=v,n[v+8>>2]=U,n[v+12>>2]=e,n[v+24>>2]=0}while(0);return U=u+8|0,s=n0,U|0}else y=h}else y=h;else y=-1;while(0);if(t=n[5414]|0,t>>>0>=y>>>0)return e=t-y|0,r=n[5417]|0,e>>>0>15?(U=r+y|0,n[5417]=U,n[5414]=e,n[U+4>>2]=e|1,n[r+t>>2]=e,n[r+4>>2]=y|3):(n[5414]=0,n[5417]=0,n[r+4>>2]=t|3,U=r+t+4|0,n[U>>2]=n[U>>2]|1),U=r+8|0,s=n0,U|0;if(o=n[5415]|0,o>>>0>y>>>0)return N=o-y|0,n[5415]=N,U=n[5418]|0,E=U+y|0,n[5418]=E,n[E+4>>2]=N|1,n[U+4>>2]=y|3,U=U+8|0,s=n0,U|0;if(n[5530]|0?r=n[5532]|0:(n[5532]=4096,n[5531]=4096,n[5533]=-1,n[5534]=-1,n[5535]=0,n[5523]=0,n[5530]=F&-16^1431655768,r=4096),u=y+48|0,c=y+47|0,f=r+c|0,A=0-r|0,h=f&A,h>>>0<=y>>>0||(r=n[5522]|0,r|0&&(v=n[5520]|0,F=v+h|0,F>>>0<=v>>>0|F>>>0>r>>>0)))return U=0,s=n0,U|0;r:do if(n[5523]&4)e=0,k=143;else{t=n[5418]|0;n:do if(t){for(i=22096;F=n[i>>2]|0,!(F>>>0<=t>>>0&&(F+(n[i+4>>2]|0)|0)>>>0>t>>>0);)if(r=n[i+8>>2]|0,r)i=r;else{k=128;break n}if(e=f-o&A,e>>>0<2147483647)if(r=C2(e)|0,(r|0)==((n[i>>2]|0)+(n[i+4>>2]|0)|0)){if((r|0)!=-1){o=e,f=r,k=145;break r}}else i=r,k=136;else e=0}else k=128;while(0);do if((k|0)==128)if(t=C2(0)|0,(t|0)!=-1&&(e=t,W=n[5531]|0,X=W+-1|0,e=(X&e|0?(X+e&0-W)-e|0:0)+h|0,W=n[5520]|0,X=e+W|0,e>>>0>y>>>0&e>>>0<2147483647)){if(F=n[5522]|0,F|0&&X>>>0<=W>>>0|X>>>0>F>>>0){e=0;break}if(r=C2(e)|0,(r|0)==(t|0)){o=e,f=t,k=145;break r}else i=r,k=136}else e=0;while(0);do if((k|0)==136){if(t=0-e|0,!(u>>>0>e>>>0&(e>>>0<2147483647&(i|0)!=-1)))if((i|0)==-1){e=0;break}else{o=e,f=i,k=145;break r}if(r=n[5532]|0,r=c-e+r&0-r,r>>>0>=2147483647){o=e,f=i,k=145;break r}if((C2(r)|0)==-1){C2(t)|0,e=0;break}else{o=r+e|0,f=i,k=145;break r}}while(0);n[5523]=n[5523]|4,k=143}while(0);if((k|0)==143&&h>>>0<2147483647&&(N=C2(h)|0,X=C2(0)|0,C=X-N|0,B=C>>>0>(y+40|0)>>>0,!((N|0)==-1|B^1|N>>>0<X>>>0&((N|0)!=-1&(X|0)!=-1)^1))&&(o=B?C:e,f=N,k=145),(k|0)==145){e=(n[5520]|0)+o|0,n[5520]=e,e>>>0>(n[5521]|0)>>>0&&(n[5521]=e),c=n[5418]|0;r:do if(c){for(e=22096;;){if(r=n[e>>2]|0,t=n[e+4>>2]|0,(f|0)==(r+t|0)){k=154;break}if(i=n[e+8>>2]|0,i)e=i;else break}if((k|0)==154&&(E=e+4|0,(n[e+12>>2]&8|0)==0)&&f>>>0>c>>>0&r>>>0<=c>>>0){n[E>>2]=t+o,U=(n[5415]|0)+o|0,N=c+8|0,N=N&7|0?0-N&7:0,E=c+N|0,N=U-N|0,n[5418]=E,n[5415]=N,n[E+4>>2]=N|1,n[c+U+4>>2]=40,n[5419]=n[5534];break}for(f>>>0<(n[5416]|0)>>>0&&(n[5416]=f),t=f+o|0,e=22096;;){if((n[e>>2]|0)==(t|0)){k=162;break}if(r=n[e+8>>2]|0,r)e=r;else break}if((k|0)==162&&!(n[e+12>>2]&8|0)){n[e>>2]=f,v=e+4|0,n[v>>2]=(n[v>>2]|0)+o,v=f+8|0,v=f+(v&7|0?0-v&7:0)|0,e=t+8|0,e=t+(e&7|0?0-e&7:0)|0,h=v+y|0,u=e-v-y|0,n[v+4>>2]=y|3;n:do if((c|0)==(e|0))U=(n[5415]|0)+u|0,n[5415]=U,n[5418]=h,n[h+4>>2]=U|1;else{if((n[5417]|0)==(e|0)){U=(n[5414]|0)+u|0,n[5414]=U,n[5417]=h,n[h+4>>2]=U|1,n[h+U>>2]=U;break}if(r=n[e+4>>2]|0,(r&3|0)==1){o=r&-8,i=r>>>3;e:do if(r>>>0<256)if(r=n[e+8>>2]|0,t=n[e+12>>2]|0,(t|0)==(r|0)){n[5412]=n[5412]&~(1<<i);break}else{n[r+12>>2]=t,n[t+8>>2]=r;break}else{f=n[e+24>>2]|0,r=n[e+12>>2]|0;do if((r|0)==(e|0)){if(t=e+16|0,i=t+4|0,r=n[i>>2]|0,r)t=i;else if(r=n[t>>2]|0,!r){r=0;break}for(;;)if(A=r+20|0,i=n[A>>2]|0,i)r=i,t=A;else if(A=r+16|0,i=n[A>>2]|0,i)r=i,t=A;else break;n[t>>2]=0}else U=n[e+8>>2]|0,n[U+12>>2]=r,n[r+8>>2]=U;while(0);if(!f)break;t=n[e+28>>2]|0,i=21952+(t<<2)|0;do if((n[i>>2]|0)!=(e|0)){if(U=f+16|0,n[((n[U>>2]|0)==(e|0)?U:f+20|0)>>2]=r,!r)break e}else{if(n[i>>2]=r,r|0)break;n[5413]=n[5413]&~(1<<t);break e}while(0);if(n[r+24>>2]=f,t=e+16|0,i=n[t>>2]|0,i|0&&(n[r+16>>2]=i,n[i+24>>2]=r),t=n[t+4>>2]|0,!t)break;n[r+20>>2]=t,n[t+24>>2]=r}while(0);e=e+o|0,A=o+u|0}else A=u;if(e=e+4|0,n[e>>2]=n[e>>2]&-2,n[h+4>>2]=A|1,n[h+A>>2]=A,e=A>>>3,A>>>0<256){t=21688+(e<<1<<2)|0,r=n[5412]|0,e=1<<e,r&e?(r=t+8|0,e=n[r>>2]|0):(n[5412]=r|e,e=t,r=t+8|0),n[r>>2]=h,n[e+12>>2]=h,n[h+8>>2]=e,n[h+12>>2]=t;break}e=A>>>8;do if(!e)i=0;else{if(A>>>0>16777215){i=31;break}E=(e+1048320|0)>>>16&8,U=e<<E,N=(U+520192|0)>>>16&4,U=U<<N,i=(U+245760|0)>>>16&2,i=14-(N|E|i)+(U<<i>>>15)|0,i=A>>>(i+7|0)&1|i<<1}while(0);if(e=21952+(i<<2)|0,n[h+28>>2]=i,r=h+16|0,n[r+4>>2]=0,n[r>>2]=0,r=n[5413]|0,t=1<<i,!(r&t)){n[5413]=r|t,n[e>>2]=h,n[h+24>>2]=e,n[h+12>>2]=h,n[h+8>>2]=h;break}e=n[e>>2]|0;e:do if((n[e+4>>2]&-8|0)!=(A|0)){for(i=A<<((i|0)==31?0:25-(i>>>1)|0);t=e+16+(i>>>31<<2)|0,r=n[t>>2]|0,!!r;)if((n[r+4>>2]&-8|0)==(A|0)){e=r;break e}else i=i<<1,e=r;n[t>>2]=h,n[h+24>>2]=e,n[h+12>>2]=h,n[h+8>>2]=h;break n}while(0);E=e+8|0,U=n[E>>2]|0,n[U+12>>2]=h,n[E>>2]=h,n[h+8>>2]=U,n[h+12>>2]=e,n[h+24>>2]=0}while(0);return U=v+8|0,s=n0,U|0}for(e=22096;r=n[e>>2]|0,!(r>>>0<=c>>>0&&(U=r+(n[e+4>>2]|0)|0,U>>>0>c>>>0));)e=n[e+8>>2]|0;A=U+-47|0,r=A+8|0,r=A+(r&7|0?0-r&7:0)|0,A=c+16|0,r=r>>>0<A>>>0?c:r,e=r+8|0,t=o+-40|0,N=f+8|0,N=N&7|0?0-N&7:0,E=f+N|0,N=t-N|0,n[5418]=E,n[5415]=N,n[E+4>>2]=N|1,n[f+t+4>>2]=40,n[5419]=n[5534],t=r+4|0,n[t>>2]=27,n[e>>2]=n[5524],n[e+4>>2]=n[5525],n[e+8>>2]=n[5526],n[e+12>>2]=n[5527],n[5524]=f,n[5525]=o,n[5527]=0,n[5526]=e,e=r+24|0;do E=e,e=e+4|0,n[e>>2]=7;while((E+8|0)>>>0<U>>>0);if((r|0)!=(c|0)){if(f=r-c|0,n[t>>2]=n[t>>2]&-2,n[c+4>>2]=f|1,n[r>>2]=f,e=f>>>3,f>>>0<256){t=21688+(e<<1<<2)|0,r=n[5412]|0,e=1<<e,r&e?(r=t+8|0,e=n[r>>2]|0):(n[5412]=r|e,e=t,r=t+8|0),n[r>>2]=c,n[e+12>>2]=c,n[c+8>>2]=e,n[c+12>>2]=t;break}if(e=f>>>8,e?f>>>0>16777215?i=31:(E=(e+1048320|0)>>>16&8,U=e<<E,N=(U+520192|0)>>>16&4,U=U<<N,i=(U+245760|0)>>>16&2,i=14-(N|E|i)+(U<<i>>>15)|0,i=f>>>(i+7|0)&1|i<<1):i=0,t=21952+(i<<2)|0,n[c+28>>2]=i,n[c+20>>2]=0,n[A>>2]=0,e=n[5413]|0,r=1<<i,!(e&r)){n[5413]=e|r,n[t>>2]=c,n[c+24>>2]=t,n[c+12>>2]=c,n[c+8>>2]=c;break}e=n[t>>2]|0;n:do if((n[e+4>>2]&-8|0)!=(f|0)){for(i=f<<((i|0)==31?0:25-(i>>>1)|0);t=e+16+(i>>>31<<2)|0,r=n[t>>2]|0,!!r;)if((n[r+4>>2]&-8|0)==(f|0)){e=r;break n}else i=i<<1,e=r;n[t>>2]=c,n[c+24>>2]=e,n[c+12>>2]=c,n[c+8>>2]=c;break r}while(0);E=e+8|0,U=n[E>>2]|0,n[U+12>>2]=c,n[E>>2]=c,n[c+8>>2]=U,n[c+12>>2]=e,n[c+24>>2]=0}}else U=n[5416]|0,(U|0)==0|f>>>0<U>>>0&&(n[5416]=f),n[5524]=f,n[5525]=o,n[5527]=0,n[5421]=n[5530],n[5420]=-1,n[5425]=21688,n[5424]=21688,n[5427]=21696,n[5426]=21696,n[5429]=21704,n[5428]=21704,n[5431]=21712,n[5430]=21712,n[5433]=21720,n[5432]=21720,n[5435]=21728,n[5434]=21728,n[5437]=21736,n[5436]=21736,n[5439]=21744,n[5438]=21744,n[5441]=21752,n[5440]=21752,n[5443]=21760,n[5442]=21760,n[5445]=21768,n[5444]=21768,n[5447]=21776,n[5446]=21776,n[5449]=21784,n[5448]=21784,n[5451]=21792,n[5450]=21792,n[5453]=21800,n[5452]=21800,n[5455]=21808,n[5454]=21808,n[5457]=21816,n[5456]=21816,n[5459]=21824,n[5458]=21824,n[5461]=21832,n[5460]=21832,n[5463]=21840,n[5462]=21840,n[5465]=21848,n[5464]=21848,n[5467]=21856,n[5466]=21856,n[5469]=21864,n[5468]=21864,n[5471]=21872,n[5470]=21872,n[5473]=21880,n[5472]=21880,n[5475]=21888,n[5474]=21888,n[5477]=21896,n[5476]=21896,n[5479]=21904,n[5478]=21904,n[5481]=21912,n[5480]=21912,n[5483]=21920,n[5482]=21920,n[5485]=21928,n[5484]=21928,n[5487]=21936,n[5486]=21936,U=o+-40|0,N=f+8|0,N=N&7|0?0-N&7:0,E=f+N|0,N=U-N|0,n[5418]=E,n[5415]=N,n[E+4>>2]=N|1,n[f+U+4>>2]=40,n[5419]=n[5534];while(0);if(e=n[5415]|0,e>>>0>y>>>0)return N=e-y|0,n[5415]=N,U=n[5418]|0,E=U+y|0,n[5418]=E,n[E+4>>2]=N|1,n[U+4>>2]=y|3,U=U+8|0,s=n0,U|0}return n[(i2()|0)>>2]=48,U=0,s=n0,U|0}function Ye(r){r=r|0;var e=0,t=0,i=0,A=0,f=0,o=0,u=0,c=0;if(!r)return;t=r+-8|0,A=n[5416]|0,r=n[r+-4>>2]|0,e=r&-8,c=t+e|0;do if(r&1)u=t,o=t;else{if(i=n[t>>2]|0,!(r&3)||(o=t+(0-i)|0,f=i+e|0,o>>>0<A>>>0))return;if((n[5417]|0)==(o|0)){if(r=c+4|0,e=n[r>>2]|0,(e&3|0)!=3){u=o,e=f;break}n[5414]=f,n[r>>2]=e&-2,n[o+4>>2]=f|1,n[o+f>>2]=f;return}if(t=i>>>3,i>>>0<256)if(r=n[o+8>>2]|0,e=n[o+12>>2]|0,(e|0)==(r|0)){n[5412]=n[5412]&~(1<<t),u=o,e=f;break}else{n[r+12>>2]=e,n[e+8>>2]=r,u=o,e=f;break}A=n[o+24>>2]|0,r=n[o+12>>2]|0;do if((r|0)==(o|0)){if(e=o+16|0,t=e+4|0,r=n[t>>2]|0,r)e=t;else if(r=n[e>>2]|0,!r){r=0;break}for(;;)if(i=r+20|0,t=n[i>>2]|0,t)r=t,e=i;else if(i=r+16|0,t=n[i>>2]|0,t)r=t,e=i;else break;n[e>>2]=0}else u=n[o+8>>2]|0,n[u+12>>2]=r,n[r+8>>2]=u;while(0);if(A){if(e=n[o+28>>2]|0,t=21952+(e<<2)|0,(n[t>>2]|0)==(o|0)){if(n[t>>2]=r,!r){n[5413]=n[5413]&~(1<<e),u=o,e=f;break}}else if(u=A+16|0,n[((n[u>>2]|0)==(o|0)?u:A+20|0)>>2]=r,!r){u=o,e=f;break}n[r+24>>2]=A,e=o+16|0,t=n[e>>2]|0,t|0&&(n[r+16>>2]=t,n[t+24>>2]=r),e=n[e+4>>2]|0,e?(n[r+20>>2]=e,n[e+24>>2]=r,u=o,e=f):(u=o,e=f)}else u=o,e=f}while(0);if(o>>>0>=c>>>0||(r=c+4|0,i=n[r>>2]|0,!(i&1)))return;if(i&2)n[r>>2]=i&-2,n[u+4>>2]=e|1,n[o+e>>2]=e,A=e;else{if((n[5418]|0)==(c|0)){if(c=(n[5415]|0)+e|0,n[5415]=c,n[5418]=u,n[u+4>>2]=c|1,(u|0)!=(n[5417]|0))return;n[5417]=0,n[5414]=0;return}if((n[5417]|0)==(c|0)){c=(n[5414]|0)+e|0,n[5414]=c,n[5417]=o,n[u+4>>2]=c|1,n[o+c>>2]=c;return}A=(i&-8)+e|0,t=i>>>3;do if(i>>>0<256)if(e=n[c+8>>2]|0,r=n[c+12>>2]|0,(r|0)==(e|0)){n[5412]=n[5412]&~(1<<t);break}else{n[e+12>>2]=r,n[r+8>>2]=e;break}else{f=n[c+24>>2]|0,r=n[c+12>>2]|0;do if((r|0)==(c|0)){if(e=c+16|0,t=e+4|0,r=n[t>>2]|0,r)e=t;else if(r=n[e>>2]|0,!r){t=0;break}for(;;)if(i=r+20|0,t=n[i>>2]|0,t)r=t,e=i;else if(i=r+16|0,t=n[i>>2]|0,t)r=t,e=i;else break;n[e>>2]=0,t=r}else t=n[c+8>>2]|0,n[t+12>>2]=r,n[r+8>>2]=t,t=r;while(0);if(f|0){if(r=n[c+28>>2]|0,e=21952+(r<<2)|0,(n[e>>2]|0)==(c|0)){if(n[e>>2]=t,!t){n[5413]=n[5413]&~(1<<r);break}}else if(i=f+16|0,n[((n[i>>2]|0)==(c|0)?i:f+20|0)>>2]=t,!t)break;n[t+24>>2]=f,r=c+16|0,e=n[r>>2]|0,e|0&&(n[t+16>>2]=e,n[e+24>>2]=t),r=n[r+4>>2]|0,r|0&&(n[t+20>>2]=r,n[r+24>>2]=t)}}while(0);if(n[u+4>>2]=A|1,n[o+A>>2]=A,(u|0)==(n[5417]|0)){n[5414]=A;return}}if(r=A>>>3,A>>>0<256){t=21688+(r<<1<<2)|0,e=n[5412]|0,r=1<<r,e&r?(e=t+8|0,r=n[e>>2]|0):(n[5412]=e|r,r=t,e=t+8|0),n[e>>2]=u,n[r+12>>2]=u,n[u+8>>2]=r,n[u+12>>2]=t;return}r=A>>>8,r?A>>>0>16777215?i=31:(o=(r+1048320|0)>>>16&8,c=r<<o,f=(c+520192|0)>>>16&4,c=c<<f,i=(c+245760|0)>>>16&2,i=14-(f|o|i)+(c<<i>>>15)|0,i=A>>>(i+7|0)&1|i<<1):i=0,r=21952+(i<<2)|0,n[u+28>>2]=i,n[u+20>>2]=0,n[u+16>>2]=0,e=n[5413]|0,t=1<<i;r:do if(!(e&t))n[5413]=e|t,n[r>>2]=u,n[u+24>>2]=r,n[u+12>>2]=u,n[u+8>>2]=u;else{r=n[r>>2]|0;n:do if((n[r+4>>2]&-8|0)!=(A|0)){for(i=A<<((i|0)==31?0:25-(i>>>1)|0);t=r+16+(i>>>31<<2)|0,e=n[t>>2]|0,!!e;)if((n[e+4>>2]&-8|0)==(A|0)){r=e;break n}else i=i<<1,r=e;n[t>>2]=u,n[u+24>>2]=r,n[u+12>>2]=u,n[u+8>>2]=u;break r}while(0);o=r+8|0,c=n[o>>2]|0,n[c+12>>2]=u,n[o>>2]=u,n[u+8>>2]=c,n[u+12>>2]=r,n[u+24>>2]=0}while(0);if(c=(n[5420]|0)+-1|0,n[5420]=c,!(c|0)){for(r=22104;r=n[r>>2]|0,r;)r=r+8|0;n[5420]=-1}}function C2(r){r=r|0;var e=0,t=0,i=0;i=r+3&-4,r=HA()|0,e=n[r>>2]|0,t=e+i|0;do if((i|0)<1|t>>>0>e>>>0){if(t>>>0>(R1()|0)>>>0&&!(F1(t|0)|0))break;return n[r>>2]=t,i=e,i|0}while(0);return n[(i2()|0)>>2]=48,i=-1,i|0}function Op(r){r=r|0;var e=0;return e=s,s=s+r|0,s=s+15&-16,e|0}function Ip(r){r=r|0,s=r}function Hp(){return s|0}function ap(r,e){r=r|0,e=e|0;var t=0,i=0,A=0,f=0;return f=r&65535,A=e&65535,t=L(A,f)|0,i=r>>>16,r=(t>>>16)+(L(A,i)|0)|0,A=e>>>16,e=L(A,f)|0,o0((r>>>16)+(L(A,i)|0)+(((r&65535)+e|0)>>>16)|0),r+e<<16|t&65535|0|0}function _e(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;return A=r,f=t,t=ap(A,f)|0,r=r0()|0,o0((L(e,f)|0)+(L(i,A)|0)+r|r&0|0),t|0|0|0}function O0(r,e,t,i){return r=r|0,e=e|0,t=t|0,i=i|0,t=r+t>>>0,o0(e+i+(t>>>0<r>>>0|0)>>>0|0),t|0|0}function cr(r,e,t,i){return r=r|0,e=e|0,t=t|0,i=i|0,i=e-i-(t>>>0>r>>>0|0)>>>0,o0(i|0),r-t>>>0|0|0}function OA(r){return r=r|0,(r?31-(l2(r^r-1)|0)|0:32)|0}function Qp(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,o=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0;if(v=r,c=e,h=c,o=t,F=i,u=F,!h)return f=(A|0)!=0,u?f?(n[A>>2]=r|0,n[A+4>>2]=e&0,F=0,A=0,o0(F|0),A|0):(F=0,A=0,o0(F|0),A|0):(f&&(n[A>>2]=(v>>>0)%(o>>>0),n[A+4>>2]=0),F=0,A=(v>>>0)/(o>>>0)>>>0,o0(F|0),A|0);f=(u|0)==0;do if(o){if(!f){if(f=(l2(u|0)|0)-(l2(h|0)|0)|0,f>>>0<=31){y=f+1|0,u=31-f|0,e=f-31>>31,o=y,r=v>>>(y>>>0)&e|h<<u,e=h>>>(y>>>0)&e,f=0,u=v<<u;break}return A?(n[A>>2]=r|0,n[A+4>>2]=c|e&0,F=0,A=0,o0(F|0),A|0):(F=0,A=0,o0(F|0),A|0)}if(f=o-1|0,f&o|0){u=(l2(o|0)|0)+33-(l2(h|0)|0)|0,X=64-u|0,y=32-u|0,c=y>>31,W=u-32|0,e=W>>31,o=u,r=y-1>>31&h>>>(W>>>0)|(h<<y|v>>>(u>>>0))&e,e=e&h>>>(u>>>0),f=v<<X&c,u=(h<<X|v>>>(W>>>0))&c|v<<y&u-33>>31;break}return A|0&&(n[A>>2]=f&v,n[A+4>>2]=0),(o|0)==1?(W=c|e&0,X=r|0|0,o0(W|0),X|0):(X=OA(o|0)|0,W=h>>>(X>>>0)|0,X=h<<32-X|v>>>(X>>>0)|0,o0(W|0),X|0)}else{if(f)return A|0&&(n[A>>2]=(h>>>0)%(o>>>0),n[A+4>>2]=0),W=0,X=(h>>>0)/(o>>>0)>>>0,o0(W|0),X|0;if(!v)return A|0&&(n[A>>2]=0,n[A+4>>2]=(h>>>0)%(u>>>0)),W=0,X=(h>>>0)/(u>>>0)>>>0,o0(W|0),X|0;if(f=u-1|0,!(f&u))return A|0&&(n[A>>2]=r|0,n[A+4>>2]=f&h|e&0),W=0,X=h>>>((OA(u|0)|0)>>>0),o0(W|0),X|0;if(f=(l2(u|0)|0)-(l2(h|0)|0)|0,f>>>0<=30){e=f+1|0,u=31-f|0,o=e,r=h<<u|v>>>(e>>>0),e=h>>>(e>>>0),f=0,u=v<<u;break}return A?(n[A>>2]=r|0,n[A+4>>2]=c|e&0,W=0,X=0,o0(W|0),X|0):(W=0,X=0,o0(W|0),X|0)}while(0);if(!o)h=u,c=0,u=0;else{y=t|0|0,v=F|i&0,h=O0(y|0,v|0,-1,-1)|0,t=r0()|0,c=u,u=0;do i=c,c=f>>>31|c<<1,f=u|f<<1,i=r<<1|i>>>31|0,F=r>>>31|e<<1|0,cr(h|0,t|0,i|0,F|0)|0,X=r0()|0,W=X>>31|((X|0)<0?-1:0)<<1,u=W&1,r=cr(i|0,F|0,W&y|0,(((X|0)<0?-1:0)>>31|((X|0)<0?-1:0)<<1)&v|0)|0,e=r0()|0,o=o-1|0;while(o|0);h=c,c=0}return o=0,A|0&&(n[A>>2]=r,n[A+4>>2]=e),W=(f|0)>>>31|(h|o)<<1|(o<<1|f>>>31)&0|c,X=(f<<1|0>>>31)&-2|u,o0(W|0),X|0}function xe(r,e,t,i){return r=r|0,e=e|0,t=t|0,i=i|0,Qp(r,e,t,i,0)|0}function Wn(r,e,t){return r=r|0,e=e|0,t=t|0,(t|0)<32?(o0(e>>>t|0),r>>>t|(e&(1<<t)-1)<<32-t):(o0(0),e>>>t-32|0)}function IA(r,e,t){return r=r|0,e=e|0,t=t|0,(t|0)<32?(o0(e<<t|(r&(1<<t)-1<<32-t)>>>32-t|0),r<<t):(o0(r<<t-32|0),0)}function HA(){return 22176}function aA(r){return r=r|0,(r&255)<<24|(r>>8&255)<<16|(r>>16&255)<<8|r>>>24|0}function _0(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0;if((t|0)>=512)return V1(r|0,e|0,t|0)|0,r|0;if(f=r|0,A=r+t|0,(r&3)==(e&3)){for(;r&3;){if(!t)return f|0;l[r>>0]=l[e>>0]|0,r=r+1|0,e=e+1|0,t=t-1|0}for(t=A&-4|0,i=t-64|0;(r|0)<=(i|0);)n[r>>2]=n[e>>2],n[r+4>>2]=n[e+4>>2],n[r+8>>2]=n[e+8>>2],n[r+12>>2]=n[e+12>>2],n[r+16>>2]=n[e+16>>2],n[r+20>>2]=n[e+20>>2],n[r+24>>2]=n[e+24>>2],n[r+28>>2]=n[e+28>>2],n[r+32>>2]=n[e+32>>2],n[r+36>>2]=n[e+36>>2],n[r+40>>2]=n[e+40>>2],n[r+44>>2]=n[e+44>>2],n[r+48>>2]=n[e+48>>2],n[r+52>>2]=n[e+52>>2],n[r+56>>2]=n[e+56>>2],n[r+60>>2]=n[e+60>>2],r=r+64|0,e=e+64|0;for(;(r|0)<(t|0);)n[r>>2]=n[e>>2],r=r+4|0,e=e+4|0}else for(t=A-4|0;(r|0)<(t|0);)l[r>>0]=l[e>>0]|0,l[r+1>>0]=l[e+1>>0]|0,l[r+2>>0]=l[e+2>>0]|0,l[r+3>>0]=l[e+3>>0]|0,r=r+4|0,e=e+4|0;for(;(r|0)<(A|0);)l[r>>0]=l[e>>0]|0,r=r+1|0,e=e+1|0;return f|0}function I0(r,e,t){r=r|0,e=e|0,t=t|0;var i=0;if((e|0)<(r|0)&(r|0)<(e+t|0)){for(i=r,e=e+t|0,r=r+t|0;(t|0)>0;)r=r-1|0,e=e-1|0,t=t-1|0,l[r>>0]=l[e>>0]|0;r=i}else _0(r,e,t)|0;return r|0}function O2(r,e,t){r=r|0,e=e|0,t=t|0;var i=0,A=0,f=0,o=0;if(f=r+t|0,e=e&255,(t|0)>=67){for(;r&3;)l[r>>0]=e,r=r+1|0;for(i=f&-4|0,o=e|e<<8|e<<16|e<<24,A=i-64|0;(r|0)<=(A|0);)n[r>>2]=o,n[r+4>>2]=o,n[r+8>>2]=o,n[r+12>>2]=o,n[r+16>>2]=o,n[r+20>>2]=o,n[r+24>>2]=o,n[r+28>>2]=o,n[r+32>>2]=o,n[r+36>>2]=o,n[r+40>>2]=o,n[r+44>>2]=o,n[r+48>>2]=o,n[r+52>>2]=o,n[r+56>>2]=o,n[r+60>>2]=o,r=r+64|0;for(;(r|0)<(i|0);)n[r>>2]=o,r=r+4|0}for(;(r|0)<(f|0);)l[r>>0]=e,r=r+1|0;return f-t|0}function Dp(r){return r=r|0,Se[r&3]()|0}function Pp(r,e){return r=r|0,e=e|0,Xn[r&15](e|0)|0}function Lp(r,e,t,i,A,f,o){return r=r|0,e=e|0,t=+t,i=i|0,A=A|0,f=f|0,o=o|0,LA[r&1](e|0,+t,i|0,A|0,f|0,o|0)|0}function $p(r,e,t){return r=r|0,e=e|0,t=t|0,xr[r&63](e|0,t|0)|0}function qp(r,e,t,i){return r=r|0,e=e|0,t=t|0,i=i|0,sr[r&7](e|0,t|0,i|0)|0}function Kp(r){r=r|0,Ce[r&3]()}function bp(r,e){r=r|0,e=e|0,f0[r&255](e|0)}function rv(r,e,t){r=r|0,e=e|0,t=t|0,k2[r&15](e|0,t|0)}function nv(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0,Er[r&15](e|0,t|0,i|0)}function ev(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,jr[r&7](e|0,t|0,i|0,A|0)}function tv(r,e,t,i,A,f){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,dn[r&3](e|0,t|0,i|0,A|0,f|0)}function iv(r,e,t,i,A,f,o){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,o=o|0,Sr[r&3](e|0,t|0,i|0,A|0,f|0,o|0)}function QA(){return T0(0),0}function Ee(r){return r=r|0,T0(1),0}function Av(r,e,t,i,A,f){return r=r|0,e=+e,t=t|0,i=i|0,A=A|0,f=f|0,T0(2),0}function v0(r,e){return r=r|0,e=e|0,T0(3),0}function DA(r,e,t){return r=r|0,e=e|0,t=t|0,T0(4),0}function PA(){T0(5)}function G(r){r=r|0,T0(6)}function w2(r,e){r=r|0,e=e|0,T0(7)}function I2(r,e,t){r=r|0,e=e|0,t=t|0,T0(8)}function je(r,e,t,i){r=r|0,e=e|0,t=t|0,i=i|0,T0(9)}function fv(r,e,t,i,A){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,T0(10)}function ov(r,e,t,i,A,f){r=r|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,T0(11)}var Se=[QA,D3,zh,QA],Xn=[Ee,Em,Vu,du,zm,Jm,mp,dp,Bp,_3,g1,wh,L3,Jh,Ee,Ee],LA=[Av,b6],xr=[v0,E1,a1,Xu,Xl,Pl,rc,Ac,fc,uc,kc,Uc,Cc,Qc,Kc,i4,X4,z4,E4,O4,$4,ns,os,ss,Vs,Ns,_s,Cs,Ds,bs,c8,y8,X8,z8,O8,P8,i3,h3,F3,g3,J3,ph,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0],sr=[DA,lm,Fm,Im,am,Up,Tp,DA],Ce=[PA,Cm,ym,PA],f0=[G,Z0,_1,x1,j1,I1,H1,Q1,Y0,cu,gu,Ru,wu,ku,Mu,zu,Cu,Ou,bu,rl,nl,vl,kl,Wl,dl,al,ui,Ll,z2,$l,Kl,bl,nc,ci,ic,j0,oc,Fc,wc,Wc,Vi,gc,jc,Sc,Oc,Wi,ac,$c,qc,bc,Ui,t4,k4,W4,d4,Ii,B4,_4,x4,j4,Hi,I4,P4,L4,q4,ai,es,As,fs,us,Li,hs,Zs,Rs,Fs,Ts,Gs,Ms,Js,Ys,xs,qi,Os,as,Qs,Ps,Ki,Ks,u8,l8,s8,rA,v8,k8,W8,d8,nA,M8,S8,C8,I8,eA,D8,e3,t3,A3,tA,s3,R3,V3,w3,iA,d3,z3,B3,Y3,lr,Zm,Rm,Vm,Xm,Nm,Mm,Vn,Bm,xm,jm,Sm,Om,Hm,Pm,xA,hp,Wp,Xp,zp,CA,xp,j3,Xh,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G,G],k2=[w2,Fu,Wu,d1,T1,G1,N1,M1,rm,w2,w2,w2,w2,w2,w2,w2],Er=[I2,gp,Gp,Jp,Yp,X1,U1,uh,Qh,Kh,I2,I2,I2,I2,I2,I2],jr=[je,Wm,Um,qm,eh,Ch,je,je],dn=[fv,km,gm,$m],Sr=[ov,wm,dm,Lm];return{__ZSt18uncaught_exceptionv:cp,___cxa_can_catch:op,___cxa_is_pointer_type:up,___embind_register_native_and_builtin_types:cA,___errno_location:i2,___getTypeName:H6,___muldi3:_e,___udivdi3:xe,_bitshift64Lshr:Wn,_bitshift64Shl:IA,_emscripten_get_sbrk_ptr:HA,_free:Ye,_i64Add:O0,_i64Subtract:cr,_llvm_bswap_i32:aA,_malloc:kn,_memcpy:_0,_memmove:I0,_memset:O2,dynCall_i:Dp,dynCall_ii:Pp,dynCall_iidiiii:Lp,dynCall_iii:$p,dynCall_iiii:qp,dynCall_v:Kp,dynCall_vi:bp,dynCall_vii:rv,dynCall_viii:nv,dynCall_viiii:ev,dynCall_viiiii:tv,dynCall_viiiiii:iv,globalCtors:w1,stackAlloc:Op,stackRestore:Ip,stackSave:Hp}}(i1,A1,X2),Fr=R.__ZSt18uncaught_exceptionv=q.__ZSt18uncaught_exceptionv,Ov=R.___cxa_can_catch=q.___cxa_can_catch,Iv=R.___cxa_is_pointer_type=q.___cxa_is_pointer_type,Hv=R.___embind_register_native_and_builtin_types=q.___embind_register_native_and_builtin_types,av=R.___errno_location=q.___errno_location,f1=R.___getTypeName=q.___getTypeName,Qv=R.___muldi3=q.___muldi3,Dv=R.___udivdi3=q.___udivdi3,Pv=R._bitshift64Lshr=q._bitshift64Lshr,Lv=R._bitshift64Shl=q._bitshift64Shl,$v=R._emscripten_get_sbrk_ptr=q._emscripten_get_sbrk_ptr,R2=R._free=q._free,qv=R._i64Add=q._i64Add,Kv=R._i64Subtract=q._i64Subtract,bv=R._llvm_bswap_i32=q._llvm_bswap_i32,Kn=R._malloc=q._malloc,ry=R._memcpy=q._memcpy,ny=R._memmove=q._memmove,ey=R._memset=q._memset,o1=R.globalCtors=q.globalCtors,Gt=R.stackAlloc=q.stackAlloc,u1=R.stackRestore=q.stackRestore,l1=R.stackSave=q.stackSave,ty=R.dynCall_i=q.dynCall_i,iy=R.dynCall_ii=q.dynCall_ii,Ay=R.dynCall_iidiiii=q.dynCall_iidiiii,fy=R.dynCall_iii=q.dynCall_iii,oy=R.dynCall_iiii=q.dynCall_iiii,uy=R.dynCall_v=q.dynCall_v,ly=R.dynCall_vi=q.dynCall_vi,cy=R.dynCall_vii=q.dynCall_vii,sy=R.dynCall_viii=q.dynCall_viii,hy=R.dynCall_viiii=q.dynCall_viiii,my=R.dynCall_viiiii=q.dynCall_viiiii,py=R.dynCall_viiiiii=q.dynCall_viiiiii;if(R.asm=q,P0)if(pt(P0)||(P0=R0(P0)),Q||t0){var c1=a2(P0);U0.set(c1,et)}else{Hf("memory initializer");var bn=function(m){m.byteLength&&(m=new Uint8Array(m)),U0.set(m,et),R.memoryInitializerRequest&&delete R.memoryInitializerRequest.response,af("memory initializer")},Nt=function(){Ir(P0,bn,function(){var m=new Error("could not load memory initializer "+P0);throw m})},Mt=Z2(P0);if(Mt)bn(Mt.buffer);else if(R.memoryInitializerRequest){var zt=function(){var m=R.memoryInitializerRequest,p=m.response;if(m.status!==200&&m.status!==0){var V=Z2(R.memoryInitializerRequestURL);if(V)p=V.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+m.status+", retrying "+P0),Nt();return}}bn(p)};R.memoryInitializerRequest.response?setTimeout(zt,0):R.memoryInitializerRequest.addEventListener("load",zt)}else Nt()}var qr;function s1(m){this.name="ExitStatus",this.message="Program terminated with exit("+m+")",this.status=m}pr=function m(){qr||re(),qr||(pr=m)};function re(m){if(m=m||z,g2>0||(Jf(),g2>0))return;function p(){qr||(qr=!0,R.calledRun=!0,!it&&(Yf(),_f(),R.onRuntimeInitialized&&R.onRuntimeInitialized(),xf()))}R.setStatus?(R.setStatus("Running..."),setTimeout(function(){setTimeout(function(){R.setStatus("")},1),p()},1)):p()}if(R.run=re,R.preInit)for(typeof R.preInit=="function"&&(R.preInit=[R.preInit]);R.preInit.length>0;)R.preInit.pop()();return tt=!0,re(),R}var m2=null,uf={0:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15)}),1:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15)}),2:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15),color:[R.getUint16(20,!0),R.getUint16(22,!0),R.getUint16(24,!0)]}),3:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15),color:[R.getUint16(28,!0),R.getUint16(30,!0),R.getUint16(32,!0)]})};function W2(R,w={},M,z){z=z===void 0||z===0?1:z;let j=R.slice(M,M+w.BYTES_PER_ELEMENT*z),S=new w(j);if(z===1)return S[0];let H=[];for(let P=0;P<z;P++)H.push(S[P]);return H}function lf(R){let w=131,M={pointsOffset:W2(R,Uint32Array,32*3),pointsFormatId:W2(R,Uint8Array,32*3+8),pointsStructSize:W2(R,Uint16Array,32*3+8+1),pointsCount:W2(R,Uint32Array,32*3+11),scale:W2(R,Float64Array,w,3)};w+=24,M.offset=W2(R,Float64Array,w,3),w+=24;let z=W2(R,Float64Array,w,6);return w+=48,M.maxs=[z[0],z[2],z[4]],M.mins=[z[1],z[3],z[5]],M}var $e=class{arraybuffer;readOffset=0;header={pointsOffset:0,pointsFormatId:0,pointsStructSize:0,pointsCount:0,scale:[0,0,0],offset:[0,0,0],maxs:[0],mins:[0],totalToRead:0,totalRead:0,versionAsString:"",isCompressed:!0};constructor(w){this.arraybuffer=w}open(){return!0}getHeader(){return this.header=lf(this.arraybuffer),this.header}readData(w,M){let{header:z,arraybuffer:j}=this;if(!z)throw new Error("Cannot start reading data till a header request is issued");let{readOffset:S}=this,H;if(M<=1){w=Math.min(w,z.pointsCount-S),H=z.pointsOffset+S*z.pointsStructSize;let R0=H+w*z.pointsStructSize;return S+=w,this.readOffset=S,{buffer:j.slice(H,R0),count:w,hasMoreData:S<z.pointsCount}}let P=Math.min(w*M,z.pointsCount-S),Q=Math.ceil(P/M),t0=0,$=new Uint8Array(Q*z.pointsStructSize);for(let R0=0;R0<P;R0++){if(R0%M===0){H=z.pointsOffset+S*z.pointsStructSize;let g0=new Uint8Array(j,H,z.pointsStructSize);$.set(g0,t0*z.pointsStructSize),t0++}S++}return this.readOffset=S,{buffer:$.buffer,count:t0,hasMoreData:S<z.pointsCount}}close(){return this.arraybuffer=null,!0}},qe=class{arraybuffer;instance=null;header=null;constructor(w){this.arraybuffer=w,m2||(m2=Le())}open(){try{let{arraybuffer:w}=this;this.instance=new m2.LASZip;let M=new Uint8Array(w),z=m2._malloc(w.byteLength);return this.instance.arraybuffer=w,this.instance.buf=z,m2.HEAPU8.set(M,z),this.instance.open(z,w.byteLength),this.instance.readOffset=0,!0}catch(w){throw new Error(`Failed to open file: ${w.message}`)}}getHeader(){if(!this.instance)throw new Error("You need to open the file before trying to read header");try{let w=lf(this.instance.arraybuffer);return w.pointsFormatId&=63,this.header=w,w}catch(w){throw new Error(`Failed to get header: ${w.message}`)}}readData(w,M,z){if(!this.instance)throw new Error("You need to open the file before trying to read stuff");let{header:j,instance:S}=this;if(!j)throw new Error("You need to query header before reading, I maintain state that way, sorry :(");try{let H=Math.min(w*z,j.pointsCount-S.readOffset),P=Math.ceil(H/z),Q=0,t0=new Uint8Array(P*j.pointsStructSize),$=m2._malloc(j.pointsStructSize);for(let R0=0;R0<H;R0++){if(S.getPoint($),R0%z===0){let g0=new Uint8Array(m2.HEAPU8.buffer,$,j.pointsStructSize);t0.set(g0,Q*j.pointsStructSize),Q++}S.readOffset++}return m2._free($),{buffer:t0.buffer,count:Q,hasMoreData:S.readOffset<j.pointsCount}}catch(H){throw new Error(`Failed to read data: ${H.message}`)}}close(){try{return this.instance!==null&&(m2._free(this.instance.buf),this.instance.delete(),this.instance=null),!0}catch(w){throw new Error(`Failed to close file: ${w.message}`)}}},Ke=class{arrayb;decoder;pointsCount;pointSize;scale;offset;mins;maxs;constructor(w,M,z){this.arrayb=w,this.decoder=uf[z.pointsFormatId],this.pointsCount=M,this.pointSize=z.pointsStructSize,this.scale=z.scale,this.offset=z.offset,this.mins=z.mins,this.maxs=z.maxs}getPoint(w){if(w<0||w>=this.pointsCount)throw new Error("Point index out of range");let M=new DataView(this.arrayb,w*this.pointSize,this.pointSize);return this.decoder(M)}},Mn=class{arraybuffer;formatId=0;loader;isCompressed=!0;isOpen=!1;version=0;versionAsString="";constructor(w){if(this.arraybuffer=w,this.determineVersion()>13)throw new Error("Only file versions <= 1.3 are supported at this time");if(this.determineFormat(),uf[this.formatId]===void 0)throw new Error("The point format ID is not supported");this.loader=this.isCompressed?new qe(this.arraybuffer):new $e(this.arraybuffer)}determineFormat(){let w=W2(this.arraybuffer,Uint8Array,104),M=(w&128)>>7,z=(w&64)>>6;if(M===1&&z===1)throw new Error("Old style compression not supported");this.formatId=w&63,this.isCompressed=M===1||z===1}determineVersion(){let w=new Int8Array(this.arraybuffer,24,2);return this.version=w[0]*10+w[1],this.versionAsString=`${w[0]}.${w[1]}`,this.version}open(){this.loader.open()&&(this.isOpen=!0)}getHeader(){return this.loader.getHeader()}readData(w,M,z){return this.loader.readData(w,M,z)}close(){this.loader.close()&&(this.isOpen=!1)}getUnpacker(){return Ke}};function cf(R,w){let M=Xv(R);return De(w,M)}function Xv(R){let w={};return w.las_pointsOffset=R.pointsOffset.toString(10),w.las_pointsFormatId=R.pointsFormatId.toString(10),w.las_pointsStructSize=R.pointsStructSize.toString(10),w.las_pointsCount=R.pointsCount.toString(10),w.las_scale=JSON.stringify(R.scale),w.las_offset=JSON.stringify(R.offset),R.maxs!==void 0&&(w.las_maxs=JSON.stringify(R.maxs)),R.mins!==void 0&&(w.las_mins=JSON.stringify(R.mins)),w.las_totalToRead=R.totalToRead.toString(10),w.las_pointsFortotalReadmatId=R.totalRead.toString(10),R.versionAsString!==void 0&&(w.las_versionAsString=R.versionAsString),R.isCompressed!==void 0&&(w.las_isCompressed=R.isCompressed.toString()),w}function be(R,w){return dv(R,w)}function dv(R,w={}){let M=0,z,j,S,H,P,Q={loader:"las",loaderData:{},schema:{fields:[],metadata:{}},header:{vertexCount:0,boundingBox:[[0,0,0],[0,0,0]]},attributes:{},topology:"point-list",mode:0};return gv(R,w.las?.skip,(t0={},$)=>{if(!P){P=$;let A2=$.totalToRead,Q2=w.las?.fp64?Float64Array:Float32Array;z=new Q2(A2*3),j=$.pointsFormatId>=2?new Uint8Array(A2*4):null,S=new Uint16Array(A2),H=new Uint8Array(A2),Q.loaderData=$,Q.attributes={POSITION:{value:z,size:3},intensity:{value:S,size:1},classification:{value:H,size:1}},j&&(Q.attributes.COLOR_0={value:j,size:4})}let R0=t0.pointsCount,{scale:[g0,Ir,a2],offset:[Jn,hr,mr]}=$,Yn=Uv(t0,R0,w.las?.colorDepth);for(let A2=0;A2<R0;A2++){let{position:Q2,color:p2,intensity:D2,classification:rt}=t0.getPoint(A2);z[M*3]=Q2[0]*g0+Jn,z[M*3+1]=Q2[1]*Ir+hr,z[M*3+2]=Q2[2]*a2+mr,p2&&j&&(Yn?(j[M*4]=p2[0]/256,j[M*4+1]=p2[1]/256,j[M*4+2]=p2[2]/256):(j[M*4]=p2[0],j[M*4+1]=p2[1],j[M*4+2]=p2[2]),j[M*4+3]=255),S[M]=D2,H[M]=rt,M++}let Hr={...Q,header:{vertexCount:$.totalRead},progress:$.totalRead/$.totalToRead};w?.onProgress?.(Hr)}),Q.header={vertexCount:P.totalToRead,boundingBox:Qe(Q?.attributes||{})},Q&&(Q.schema=cf(Q.loaderData,Q.attributes)),Q}function gv(R,w,M={}){let z=new Mn(R);try{z.open();let j=z.getHeader(),S=z.getUnpacker(),H=Math.ceil(j.pointsCount/Math.max(1,w));j.totalToRead=H;let P=0;for(;;){let Q=z.readData(1e5,0,w);P+=Q.count,j.totalRead=P,j.versionAsString=Q.versionAsString,j.isCompressed=Q.isCompressed;let t0=new S(Q.buffer,Q.count,j);if(M(t0,j),!Q.hasMoreData||P>=H)break}}catch(j){throw j}finally{z.close()}}function Uv(R={},w,M){let z=!1;switch(M){case 8:z=!1;break;case 16:z=!0;break;case"auto":if(R.getPoint(0).color)for(let j=0;j<w;j++){let{color:S}=R.getPoint(j);(S[0]>255||S[1]>255||S[2]>255)&&(z=!0)}break;default:console.warn("las: illegal value for options.las.colorDepth");break}return z}var sf={...ef,parse:async(R,w)=>be(R,w),parseSync:(R,w)=>be(R,w)};function hf(R){let w=R.split(".").map(Number);return{major:w[0],minor:w[1]}}var Bn=class extends Cr{baseUrl="";data;props;metadata=null;root=null;isReady=!1;initPromise=null;constructor(w,M){super(M),this.props=M,this.data=w,this.makeBaseUrl(this.data),this.initPromise=this.init()}async init(){if(this.initPromise){await this.initPromise;return}this.metadata=await(0,zn.load)(`${this.baseUrl}/cloud.js`,Gn),await this.loadHierarchy(),this.isReady=!0}isSupported(){let{minor:w,major:M}=hf(this.metadata?.version??"");return this.isReady&&M===1&&w<=8&&typeof this.metadata?.pointAttributes=="string"&&["LAS","LAZ"].includes(this.metadata?.pointAttributes)}getContentExtension(){if(!this.isReady)return null;switch(this.metadata?.pointAttributes){case"LAS":return"las";case"LAZ":return"laz";default:return"bin"}}async loadNodeContent(w){return await this.initPromise,this.isSupported()&&await this.isNodeAvailable(w)?(0,zn.load)(`${this.baseUrl}/${this.metadata?.octreeDir}/r/r${w.join("")}.${this.getContentExtension()}`,sf):null}async isNodeAvailable(w){if(this.metadata?.hierarchy)return this.metadata.hierarchy.findIndex(S=>S[0]===`r${w.join()}`)!==-1;if(!this.root)return!1;let M=this.root,z="",j=!0;for(let S of w){let H=`${z}${S}`,P=M.children.find(Q=>Q.name===H);if(P)M=P,z=H;else{j=!1;break}}return j}async loadHierarchy(){this.root=await(0,zn.load)(`${this.baseUrl}/${this.metadata?.octreeDir}/r/r.hrc`,Nn)}makeBaseUrl(w){this.baseUrl=typeof w=="string"?ae(w):"",this.baseUrl.endsWith("cloud.js")&&(this.baseUrl=this.baseUrl.substring(0,-8)),this.baseUrl.endsWith("/")&&(this.baseUrl=this.baseUrl.substring(0,-1))}};var Tv="1.7",mf={name:"Potree",id:"potree",module:"potree",version:Tv,extensions:["bin","las","laz"],mimeTypes:["application/octet-stream"],options:{url:void 0,potree:{}},type:"potree",fromUrl:!0,fromBlob:!0,testURL:R=>R.endsWith(".js"),createDataSource:(R,w)=>new Bn(R,w)};return pv(Or);})();
|
|
27
|
+
`,h0.push(A0);var G2=Sf(Function,h0).apply(null,W0);return G2}function Cf(m,p,V,l,g,e,Z,G){var Y=Ut(V,l);p=_0(p),e=rr(g,e),yr([],[m],function(J){J=J[0];var d=J.name+"."+p;G&&J.registeredClass.pureVirtualFunctions.push(p);function b(){Le("Cannot call "+d+" due to unbound types",Y)}var A0=J.registeredClass.instancePrototype,K=A0[p];return K===void 0||K.overloadTable===void 0&&K.className!==J.name&&K.argCount===V-2?(b.argCount=V-2,b.className=J.name,A0[p]=b):(Xt(A0,p,d),A0[p].overloadTable[V-2]=b),yr([],Y,function(h0){var W0=jf(d,h0,J,e,Z);return A0[p].overloadTable===void 0?(W0.argCount=V-2,A0[p]=W0):A0[p].overloadTable[V-2]=W0,[]}),[]})}var $e=[],L0=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Gt(m){m>4&&--L0[m].refcount===0&&(L0[m]=void 0,$e.push(m))}function Of(){for(var m=0,p=5;p<L0.length;++p)L0[p]!==void 0&&++m;return m}function If(){for(var m=5;m<L0.length;++m)if(L0[m]!==void 0)return L0[m];return null}function af(){R.count_emval_handles=Of,R.get_first_emval=If}function qe(m){switch(m){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{var p=$e.length?$e.pop():L0.length;return L0[p]={refcount:1,value:m},p}}}function Hf(m,p){p=_0(p),f2(m,{name:p,fromWireType:function(V){var l=L0[V].value;return Gt(V),l},toWireType:function(V,l){return qe(l)},argPackAdvance:8,readValueFromPointer:qr,destructorFunction:null})}function T2(m){if(m===null)return"null";var p=typeof m;return p==="object"||p==="array"||p==="function"?m.toString():""+m}function Qf(m,p){switch(p){case 2:return function(V){return this.fromWireType(xe[V>>2])};case 3:return function(V){return this.fromWireType(_e[V>>3])};default:throw new TypeError("Unknown float type: "+m)}}function Df(m,p,V){var l=Ce(V);p=_0(p),f2(m,{name:p,fromWireType:function(g){return g},toWireType:function(g,e){if(typeof e!="number"&&typeof e!="boolean")throw new TypeError('Cannot convert "'+T2(e)+'" to '+this.name);return e},argPackAdvance:8,readValueFromPointer:Qf(p,l),destructorFunction:null})}function Pf(m,p,V){switch(p){case 0:return V?function(g){return v2[g]}:function(g){return U0[g]};case 1:return V?function(g){return d2[g>>1]}:function(g){return Dr[g>>1]};case 2:return V?function(g){return N0[g>>2]}:function(g){return o2[g>>2]};default:throw new TypeError("Unknown integer type: "+m)}}function Lf(m,p,V,l,g){p=_0(p),g===-1&&(g=4294967295);var e=Ce(V),Z=function(J){return J};if(l===0){var G=32-8*V;Z=function(J){return J<<G>>>G}}var Y=p.indexOf("unsigned")!=-1;f2(m,{name:p,fromWireType:Z,toWireType:function(J,d){if(typeof d!="number"&&typeof d!="boolean")throw new TypeError('Cannot convert "'+T2(d)+'" to '+this.name);if(d<l||d>g)throw new TypeError('Passing a number "'+T2(d)+'" from JS side to C/C++ side to an argument of type "'+p+'", which is outside the valid range ['+l+", "+g+"]!");return Y?d>>>0:d|0},argPackAdvance:8,readValueFromPointer:Pf(p,e,l!==0),destructorFunction:null})}function $f(m,p,V){var l=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],g=l[p];function e(Z){Z=Z>>2;var G=o2,Y=G[Z],J=G[Z+1];return new g(X2,J,Y)}V=_0(V),f2(m,{name:V,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{ignoreDuplicateRegistrations:!0})}function qf(m,p){p=_0(p);var V=p==="std::string";f2(m,{name:p,fromWireType:function(l){var g=o2[l>>2],e;if(V)for(var Z=l+4,G=0;G<=g;++G){var Y=l+4+G;if(U0[Y]==0||G==g){var J=Y-Z,d=ut(Z,J);e===void 0?e=d:(e+=String.fromCharCode(0),e+=d),Z=Y+1}}else{for(var b=new Array(g),G=0;G<g;++G)b[G]=String.fromCharCode(U0[l+4+G]);e=b.join("")}return R2(l),e},toWireType:function(l,g){g instanceof ArrayBuffer&&(g=new Uint8Array(g));var e,Z=typeof g=="string";Z||g instanceof Uint8Array||g instanceof Uint8ClampedArray||g instanceof Int8Array||i0("Cannot pass non-string to std::string"),V&&Z?e=function(){return go(g)}:e=function(){return g.length};var G=e(),Y=Ke(4+G+1);if(o2[Y>>2]=G,V&&Z)lt(g,Y+4,G+1);else if(Z)for(var J=0;J<G;++J){var d=g.charCodeAt(J);d>255&&(R2(Y),i0("String has UTF-16 code units that do not fit in 8 bits")),U0[Y+4+J]=d}else for(var J=0;J<G;++J)U0[Y+4+J]=g[J];return l!==null&&l.push(R2,Y),Y},argPackAdvance:8,readValueFromPointer:qr,destructorFunction:function(l){R2(l)}})}function Kf(m,p,V){V=_0(V);var l,g,e,Z,G;p===2?(l=Uo,g=To,Z=Go,e=function(){return Dr},G=1):p===4&&(l=No,g=zo,Z=Mo,e=function(){return o2},G=2),f2(m,{name:V,fromWireType:function(Y){for(var J=o2[Y>>2],d=e(),b,A0=Y+4,K=0;K<=J;++K){var h0=Y+4+K*p;if(d[h0>>G]==0||K==J){var W0=h0-A0,H0=l(A0,W0);b===void 0?b=H0:(b+=String.fromCharCode(0),b+=H0),A0=h0+p}}return R2(Y),b},toWireType:function(Y,J){typeof J!="string"&&i0("Cannot pass non-string to C++ string type "+V);var d=Z(J),b=Ke(4+d+p);return o2[b>>2]=d>>G,g(J,b+4,d+p),Y!==null&&Y.push(R2,b),b},argPackAdvance:8,readValueFromPointer:qr,destructorFunction:function(Y){R2(Y)}})}function bf(m,p){p=_0(p),f2(m,{isVoid:!0,name:p,argPackAdvance:0,fromWireType:function(){},toWireType:function(V,l){}})}function r1(){U2()}function e1(){return U0.length}function n1(m){U2("OOM")}function t1(m){m=m>>>0,n1(m)}function i1(){U2("trap!")}function A1(m,p,V){U0.copyWithin(m,p,p+V)}ff(),b2=R.BindingError=ae(Error,"BindingError"),Ft=R.InternalError=ae(Error,"InternalError"),Rf(),Jf(),Nf(),gt=R.UnboundTypeError=ae(Error,"UnboundTypeError"),af();var o1=!1;function Nt(m){for(var p=[],V=0;V<m.length;V++){var l=m[V];l>255&&(o1&&P2(!1,"Character code "+l+" ("+String.fromCharCode(l)+") at offset "+V+" not in 0x00-0xFF."),l&=255),p.push(String.fromCharCode(l))}return p.join("")}var f1=typeof atob=="function"?atob:function(m){var p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",V="",l,g,e,Z,G,Y,J,d=0;m=m.replace(/[^A-Za-z0-9\+\/\=]/g,"");do Z=p.indexOf(m.charAt(d++)),G=p.indexOf(m.charAt(d++)),Y=p.indexOf(m.charAt(d++)),J=p.indexOf(m.charAt(d++)),l=Z<<2|G>>4,g=(G&15)<<4|Y>>2,e=(Y&3)<<6|J,V=V+String.fromCharCode(l),Y!==64&&(V=V+String.fromCharCode(g)),J!==64&&(V=V+String.fromCharCode(e));while(d<m.length);return V};function u1(m){if(typeof Q=="boolean"&&Q){var p;try{p=Buffer.from(m,"base64")}catch{p=new Buffer(m,"base64")}return new Uint8Array(p.buffer,p.byteOffset,p.byteLength)}try{for(var V=f1(m),l=new Uint8Array(V.length),g=0;g<V.length;++g)l[g]=V.charCodeAt(g);return l}catch{throw new Error("Converting base64 string to bytes failed.")}}function Z2(m){if(yt(m))return u1(m.slice(vt.length))}var l1={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Float32Array,Float64Array},c1={A:A1,B:t1,C:i1,D:Ko,a:U2,b:Ro,c:Vo,d:bo,e:ef,f:tf,g:Af,h:Zt,i:Rt,j:of,k:cf,l:_f,m:Ef,n:Cf,o:Hf,p:Df,q:Lf,r:$f,s:qf,t:Kf,u:bf,v:Gt,w:qe,x:r1,y:T2,z:e1},q=function(m,p,V){var l=new m.Int8Array(V),g=new m.Int16Array(V),e=new m.Int32Array(V),Z=new m.Uint8Array(V),G=new m.Uint16Array(V),Y=new m.Float32Array(V),J=new m.Float64Array(V),d=p.D|0,b=0,A0=0,K=0,h0=0,W0=0,H0=0,G2=0,re=0,L=m.Math.imul,l2=m.Math.clz32,T0=p.a,f0=p.b,r0=p.c,u0=p.d,Z1=p.e,l0=p.f,R1=p.g,wy=p.h,ky=p.i,Wy=p.j,V1=p.k,Yt=p.l,xt=p.m,er=p.n,F1=p.o,_t=p.p,c2=p.q,E0=p.r,Et=p.s,en=p.t,w1=p.u,Xy=p.v,dy=p.w,k1=p.x,gy=p.y,W1=p.z,X1=p.A,d1=p.B,St=p.C,s=22384,Uy=5265264,Ty=0;function g1(){u5(),l5()}function U1(){T1(0)}function T1(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0;r=s,s=s+16|0,n=r+8|0,t=r,y=O3()|0,o=I3()|0,A=Br()|0,f=H3()|0,u=Q3()|0,c=fA()|0,h=Ze()|0,v=Re()|0,i=Re()|0,Yt(A|0,f|0,u|0,c|0,h|0,9,v|0,y|0,i|0,o|0,6204,uA()|0,138),b3(1),e[t>>2]=5,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],oh(6211,n),e[t>>2]=3,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],hh(6216,n),e[t>>2]=10,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],Rh(6225,n),o=Uh()|0,i=Th()|0,y=Jr()|0,v=Nh()|0,h=zh()|0,c=fA()|0,u=Ze()|0,f=Re()|0,A=Re()|0,Yt(y|0,v|0,h|0,c|0,u|0,11,f|0,o|0,A|0,i|0,6234,uA()|0,139),Eh(2),e[t>>2]=6,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],Hh(6211,n),e[t>>2]=4,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],Tn(6248,n),e[t>>2]=5,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],Tn(6265,n),e[t>>2]=6,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],Tn(6280,n),e[t>>2]=7,e[t+4>>2]=0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],n5(6216,n),s=r}function G1(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0;i=s,s=s+32|0,f=i+16|0,A=i+8|0,u=i,o=_(20)|0,_1(o,n,t),e[u>>2]=0,e[f>>2]=e[u>>2],S1(A,o,f),n=e[A>>2]|0,e[A>>2]=e[r>>2],e[r>>2]=n,n=A+4|0,t=r+4|0,o=e[n>>2]|0,e[n>>2]=e[t>>2],e[t>>2]=o,nn(A),t=_(352)|0,E1(t,e[r>>2]|0),o=r+8|0,e[u>>2]=0,e[f>>2]=e[u>>2],Q1(A,t,f),t=e[A>>2]|0,e[A>>2]=e[o>>2],e[o>>2]=t,o=A+4|0,t=r+12|0,n=e[o>>2]|0,e[o>>2]=e[t>>2],e[t>>2]=n,tn(A),s=i}function N1(r,n){r=r|0,n=n|0,Wl(e[r+8>>2]|0,n)}function z1(r){return r=r|0,r=(Us(e[r+8>>2]|0)|0)+107|0,Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24|0}function M1(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0;i=s,s=s+32|0,o=i+16|0,A=i+8|0,f=i,u=_(12)|0,Ts(u,n,t),e[f>>2]=0,e[o>>2]=e[f>>2],zs(A,u,o),u=e[A>>2]|0,e[A>>2]=e[r>>2],e[r>>2]=u,u=A+4|0,t=r+4|0,n=e[u>>2]|0,e[u>>2]=e[t>>2],e[t>>2]=n,wn(A),t=r+8|0,n=_(12)|0,Gs(n,e[r>>2]|0),e[f>>2]=0,e[o>>2]=e[f>>2],_s(A,n,o),n=e[A>>2]|0,e[A>>2]=e[t>>2],e[t>>2]=n,n=A+4|0,f=r+12|0,u=e[n>>2]|0,e[n>>2]=e[f>>2],e[f>>2]=u,Ki(A),Ns(A,e[t>>2]|0),t=r+16|0,f=e[A>>2]|0,u=A+4|0,n=e[u>>2]|0,e[A>>2]=0,e[u>>2]=0,e[o>>2]=e[t>>2],e[t>>2]=f,t=r+20|0,e[o+4>>2]=e[t>>2],e[t>>2]=n,Mr(o),Mr(A),s=i}function B1(r,n){r=r|0,n=n|0;var t=0;r=r+16|0,t=e[r>>2]|0;r:do if(t|0)switch(n|0){case 4:{kn(t);break r}case 8:{ve(t),ve(e[r>>2]|0);break r}default:break r}while(0)}function J1(r,n){r=r|0,n=n|0;var t=0;t=r+16|0,r=e[t>>2]|0;r:do if(r|0){switch(n|0){case 1:{z8(r);break r}case 2:{M8(r);break r}case 8:{kn(r),r=e[t>>2]|0;break}case 4:break;default:break r}kn(r)}while(0)}function Y1(r,n){r=r|0,n=n|0;var t=0;t=r+16|0,r=e[t>>2]|0;r:do if(r|0){switch(n|0){case 1:{s3(r);break r}case 2:{h3(r);break r}case 8:{ve(r),r=e[t>>2]|0;break}case 4:break;default:break r}ve(r)}while(0)}function x1(r,n){r=r|0,n=n|0,r=e[r+16>>2]|0,r|0&&Er[e[e[r>>2]>>2]&63](r,n)|0}function _1(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,e[r+4>>2]=t,e[r+8>>2]=0,l[r+12>>0]=0,l[r+13>>0]=0,e[r+16>>2]=0}function E1(r,n){r=r|0,n=n|0,e[r>>2]=n,Ot(r+4|0,n),nu(r+247|0),e[r+288>>2]=0,e[r+292>>2]=0,e[r+296>>2]=0,It(r+300|0),n=r+312|0,e[n>>2]=0,e[n+4>>2]=0,e[n+8>>2]=0,e[n+12>>2]=0,tu(r+328|0),iu(r)}function S1(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4296,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,j1(r,i),s=t}function nn(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function j1(r,n){r=r|0,n=n|0}function Gy(r){r=r|0,Z1(r|0)|0,B6()}function C1(r){r=r|0,Z0(r),x(r)}function O1(r){r=r|0,r=e[r+12>>2]|0,r|0&&x(r)}function I1(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==6407?r+12|0:0)|0}function a1(r){r=r|0,D(r,16)}function D(r,n){r=r|0,n=n|0,H1(r)}function H1(r){r=r|0,x(r)}function Q1(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4324,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,D1(r,i),s=t}function tn(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function D1(r,n){r=r|0,n=n|0}function P1(r){r=r|0,Z0(r),x(r)}function L1(r){r=r|0,r=e[r+12>>2]|0,r|0&&(K1(r),x(r))}function $1(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==6605?r+12|0:0)|0}function q1(r){r=r|0,D(r,16)}function K1(r){r=r|0,ee(r+320|0),An(r+312|0),jt(r+300|0),eu(r+288|0),b1(r+247|0),Ct(r+4|0)}function ee(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function An(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function jt(r){r=r|0,ru(r)}function b1(r){r=r|0,r=r+34|0,r=Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24,r|0&&EA(r)}function Ct(r){r=r|0,ne(e[r+12>>2]|0)}function ru(r){r=r|0;var n=0,t=0;n=e[r>>2]|0,t=n,n|0&&(e[r+4>>2]=t,D(n,(e[r+8>>2]|0)-t|0))}function eu(r){r=r|0;var n=0,t=0;n=e[r>>2]|0,t=n,n|0&&(e[r+4>>2]=t,D(n,(e[r+8>>2]|0)-t|0))}function ne(r){r=r|0,xn(e[r+-4>>2]|0)}function Ot(r,n){r=r|0,n=n|0,e[r>>2]=n,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=N2(1048576)|0}function nu(r){r=r|0;var n=0;n=r+32|0,l[n>>0]=0,l[n+1>>0]=0,r=r+34|0,l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0}function It(r){r=r|0,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0}function tu(r){r=r|0,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=0,r=r+16|0,e[r>>2]=-1,e[r+4>>2]=-1}function iu(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0;if(f=s,s=s+64|0,A=f+32|0,t=f+56|0,n=f+16|0,o=f,z2(e[r>>2]|0,t,4),pu(A,t,t+4|0),t=nr(6693)|0,i=l[A+11>>0]|0,(t|0)==((i<<24>>24<0?e[A+4>>2]|0:i&255)|0)){if(i=(Up(A,0,-1,6693,t)|0)==0,_r(A),i){if(t=e[r>>2]|0,e[n>>2]=0,e[n+4>>2]=0,e[n+8>>2]=0,e[n+12>>2]=0,e[A>>2]=e[n>>2],e[A+4>>2]=e[n+4>>2],e[A+8>>2]=e[n+8>>2],e[A+12>>2]=e[n+12>>2],kr(t,A),t=r+20|0,z2(e[r>>2]|0,t,227),ou(r,t),i=fu()|0,n=e[i>>2]|0,i=e[i+4>>2]|0,(n|0)!=(i|0))do uu(A,n),lu(A,t),on(A),n=n+24|0;while((n|0)!=(i|0));cu(r),su(r),hu(e[r>>2]|0),i=e[r>>2]|0,n=(e[r+116>>2]|0)+8|0,t=o,e[t>>2]=0,e[t+4>>2]=0,t=o+8|0,e[t>>2]=n,e[t+4>>2]=0,e[A>>2]=e[o>>2],e[A+4>>2]=e[o+4>>2],e[A+8>>2]=e[o+8>>2],e[A+12>>2]=e[o+12>>2],kr(i,A),mu(r+4|0),s=f;return}}else _r(A);f=u0(8)|0,Au(f),l0(f|0,2592,8)}function N2(r){r=r|0;var n=0;return n=We(r+68|0)|0,r=n+68&-64,e[r+-4>>2]=n,r|0}function z2(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0;f=r+13|0,l[f>>0]|0?l[r+12>>0]=1:(o=r+4|0,i=e[o>>2]|0,u=r+8|0,A=e[u>>2]|0,c=i-A|0,t=(c|0)<(t|0)?c:t,t&&(I0(n|0,(e[r>>2]|0)+A|0,t|0)|0,A=e[u>>2]|0,i=e[o>>2]|0),c=A+t|0,e[u>>2]=c,e[r+16>>2]=t,(c|0)>=(i|0)&&(l[f>>0]=1))}function Au(r){r=r|0,Q0(r,6791),e[r>>2]=4352}function kr(r,n){r=r|0,n=n|0;var t=0,i=0,A=0;A=n+8|0,n=e[A>>2]|0,A=e[A+4>>2]|0,t=e[r+4>>2]|0,i=((t|0)<0)<<31>>31,(A|0)<(i|0)|(A|0)==(i|0)&n>>>0<t>>>0?e[r+8>>2]=n:l[r+12>>0]=1}function ou(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0;v=n+179|0,l[d>>0]=l[v>>0],l[d+1>>0]=l[v+1>>0],l[d+2>>0]=l[v+2>>0],l[d+3>>0]=l[v+3>>0],l[d+4>>0]=l[v+4>>0],l[d+5>>0]=l[v+5>>0],l[d+6>>0]=l[v+6>>0],l[d+7>>0]=l[v+7>>0],h=+J[d>>3],f=n+187|0,l[d>>0]=l[f>>0],l[d+1>>0]=l[f+1>>0],l[d+2>>0]=l[f+2>>0],l[d+3>>0]=l[f+3>>0],l[d+4>>0]=l[f+4>>0],l[d+5>>0]=l[f+5>>0],l[d+6>>0]=l[f+6>>0],l[d+7>>0]=l[f+7>>0],y=+J[d>>3],r=n+195|0,l[d>>0]=l[r>>0],l[d+1>>0]=l[r+1>>0],l[d+2>>0]=l[r+2>>0],l[d+3>>0]=l[r+3>>0],l[d+4>>0]=l[r+4>>0],l[d+5>>0]=l[r+5>>0],l[d+6>>0]=l[r+6>>0],l[d+7>>0]=l[r+7>>0],o=+J[d>>3],c=n+203|0,l[d>>0]=l[c>>0],l[d+1>>0]=l[c+1>>0],l[d+2>>0]=l[c+2>>0],l[d+3>>0]=l[c+3>>0],l[d+4>>0]=l[c+4>>0],l[d+5>>0]=l[c+5>>0],l[d+6>>0]=l[c+6>>0],l[d+7>>0]=l[c+7>>0],u=+J[d>>3],A=n+211|0,l[d>>0]=l[A>>0],l[d+1>>0]=l[A+1>>0],l[d+2>>0]=l[A+2>>0],l[d+3>>0]=l[A+3>>0],l[d+4>>0]=l[A+4>>0],l[d+5>>0]=l[A+5>>0],l[d+6>>0]=l[A+6>>0],l[d+7>>0]=l[A+7>>0],t=+J[d>>3],n=n+219|0,l[d>>0]=l[n>>0],l[d+1>>0]=l[n+1>>0],l[d+2>>0]=l[n+2>>0],l[d+3>>0]=l[n+3>>0],l[d+4>>0]=l[n+4>>0],l[d+5>>0]=l[n+5>>0],l[d+6>>0]=l[n+6>>0],l[d+7>>0]=l[n+7>>0],i=+J[d>>3],J[d>>3]=y,l[v>>0]=l[d>>0],l[v+1>>0]=l[d+1>>0],l[v+2>>0]=l[d+2>>0],l[v+3>>0]=l[d+3>>0],l[v+4>>0]=l[d+4>>0],l[v+5>>0]=l[d+5>>0],l[v+6>>0]=l[d+6>>0],l[v+7>>0]=l[d+7>>0],J[d>>3]=h,l[c>>0]=l[d>>0],l[c+1>>0]=l[d+1>>0],l[c+2>>0]=l[d+2>>0],l[c+3>>0]=l[d+3>>0],l[c+4>>0]=l[d+4>>0],l[c+5>>0]=l[d+5>>0],l[c+6>>0]=l[d+6>>0],l[c+7>>0]=l[d+7>>0],J[d>>3]=u,l[f>>0]=l[d>>0],l[f+1>>0]=l[d+1>>0],l[f+2>>0]=l[d+2>>0],l[f+3>>0]=l[d+3>>0],l[f+4>>0]=l[d+4>>0],l[f+5>>0]=l[d+5>>0],l[f+6>>0]=l[d+6>>0],l[f+7>>0]=l[d+7>>0],J[d>>3]=o,l[A>>0]=l[d>>0],l[A+1>>0]=l[d+1>>0],l[A+2>>0]=l[d+2>>0],l[A+3>>0]=l[d+3>>0],l[A+4>>0]=l[d+4>>0],l[A+5>>0]=l[d+5>>0],l[A+6>>0]=l[d+6>>0],l[A+7>>0]=l[d+7>>0],J[d>>3]=i,l[r>>0]=l[d>>0],l[r+1>>0]=l[d+1>>0],l[r+2>>0]=l[d+2>>0],l[r+3>>0]=l[d+3>>0],l[r+4>>0]=l[d+4>>0],l[r+5>>0]=l[d+5>>0],l[r+6>>0]=l[d+6>>0],l[r+7>>0]=l[d+7>>0],J[d>>3]=t,l[n>>0]=l[d>>0],l[n+1>>0]=l[d+1>>0],l[n+2>>0]=l[d+2>>0],l[n+3>>0]=l[d+3>>0],l[n+4>>0]=l[d+4>>0],l[n+5>>0]=l[d+5>>0],l[n+6>>0]=l[d+6>>0],l[n+7>>0]=l[d+7>>0]}function fu(){var r=0,n=0,t=0,i=0,A=0,o=0,f=0,u=0;if(A=s,s=s+48|0,t=A+24|0,i=A,r=A+44|0,!(l[21440]|0)&&S2(21440)|0&&(e[5374]=0,e[5375]=0,e[5376]=0,j2(21440)),!(l[21448]|0)&&S2(21448)|0&&j2(21448),(e[5374]|0)==(e[5375]|0)){if(Vp(21508),(e[5374]|0)==(e[5375]|0)){l[t>>0]=l[r>>0]|0,yu(i,t),r=e[5375]|0;do if(r>>>0>=(e[5376]|0)>>>0)if(r=((r-(e[5374]|0)|0)/24|0)+1|0,n=ku(21496)|0,n>>>0<r>>>0)d0(21496);else{o=e[5374]|0,u=((e[5376]|0)-o|0)/24|0,f=u<<1,Vu(t,u>>>0<n>>>1>>>0?f>>>0<r>>>0?r:f:n,((e[5375]|0)-o|0)/24|0,21504),n=t+8|0,fn(e[n>>2]|0,i),e[n>>2]=(e[n>>2]|0)+24,Fu(21496,t),wu(t);break}else Zu(t,21496,1),u=t+4|0,fn(e[u>>2]|0,i),e[u>>2]=(e[u>>2]|0)+24,Ru(t);while(0);on(i)}Fp(21508)}return s=A,21496}function uu(r,n){r=r|0,n=n|0;var t=0,i=0;t=n+16|0,i=e[t>>2]|0;do if(i)if((n|0)==(i|0)){i=at(r)|0,e[r+16>>2]=i,t=e[t>>2]|0,k2[e[(e[t>>2]|0)+12>>2]&15](t,i);break}else{e[r+16>>2]=de[e[(e[i>>2]|0)+8>>2]&15](i)|0;break}else e[r+16>>2]=0;while(0)}function lu(r,n){if(r=r|0,n=n|0,r=e[r+16>>2]|0,!r)n=u0(4)|0,e[n>>2]=0,Eu(n),l0(n|0,4168,131);else{k2[e[(e[r>>2]|0)+24>>2]&15](r,n);return}}function on(r){r=r|0;var n=0;n=e[r+16>>2]|0,(r|0)!=(n|0)?n|0&&o0[e[(e[n>>2]|0)+20>>2]&255](n):o0[e[(e[n>>2]|0)+16>>2]&255](n)}function cu(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0;F=s,s=s+96|0,A=F+16|0,v=F,u=F+72|0,o=e[r>>2]|0,c=G[r+114>>1]|0,h=v,e[h>>2]=0,e[h+4>>2]=0,h=v+8|0,e[h>>2]=c,e[h+4>>2]=0,e[A>>2]=e[v>>2],e[A+4>>2]=e[v+4>>2],e[A+8>>2]=e[v+8>>2],e[A+12>>2]=e[v+12>>2],kr(o,A),o=r+120|0;r:do if(e[o>>2]|0){for(f=A+2|0,c=A+16|0,h=A+20|0,v=A+18|0,t=0;;){if(!(te(e[r>>2]|0)|0)||Su(e[r>>2]|0)|0)break r;for(z2(e[r>>2]|0,A,54),n=7277,i=f;(l[i>>0]|0)==(l[n>>0]|0);)if(i=i+1|0,(i|0)==(c|0)){y=8;break}else n=n+1|0;if((y|0)==8&&(y=0,(Z[v>>0]|Z[v+1>>0]<<8)<<16>>16==22204))break;if(Cu(e[r>>2]|0,(Z[h>>0]|Z[h+1>>0]<<8)&65535,0,1),t=t+1|0,t>>>0>=(e[o>>2]|0)>>>0)break r}v=(Z[h>>0]|Z[h+1>>0]<<8)&65535,y=_A(v)|0,z2(e[r>>2]|0,y,v),ju(r,y),x(y),y=r+125|0,Iu(u,r+247|0,(Z[y>>0]|Z[y+1>>0]<<8)&65535),au(r+300|0,u)|0,jt(u),s=F;return}while(0);F=u0(8)|0,Ou(F),l0(F|0,2672,8)}function su(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0;if(y=s,s=s+176|0,A=y+40|0,o=y+24|0,n=y+16|0,i=y,c=y+152|0,h=y+136|0,v=y+56|0,u=e[r>>2]|0,f=r+116|0,F=e[f>>2]|0,t=o,e[t>>2]=0,e[t+4>>2]=0,t=o+8|0,e[t>>2]=F,e[t+4>>2]=0,e[A>>2]=e[o>>2],e[A+4>>2]=e[o+4>>2],e[A+8>>2]=e[o+8>>2],e[A+12>>2]=e[o+12>>2],kr(u,A),u=n,e[u>>2]=0,e[u+4>>2]=0,z2(e[r>>2]|0,n,8),te(e[r>>2]|0)|0||(F=u0(8)|0,un(F),l0(F|0,2704,8)),t=n,n=e[t>>2]|0,t=e[t+4>>2]|0,(n|0)==-1&(t|0)==-1&&(F=u0(8)|0,Dt(F,7488),l0(F|0,2720,8)),F=e[r>>2]|0,u=i,e[u>>2]=0,e[u+4>>2]=0,u=i+8|0,e[u>>2]=n,e[u+4>>2]=t,e[A>>2]=e[i>>2],e[A+4>>2]=e[i+4>>2],e[A+8>>2]=e[i+8>>2],e[A+12>>2]=e[i+12>>2],kr(F,A),te(e[r>>2]|0)|0||(F=u0(8)|0,un(F),l0(F|0,2704,8)),z2(e[r>>2]|0,A,8),te(e[r>>2]|0)|0||(F=u0(8)|0,un(F),l0(F|0,2704,8)),e[A>>2]|0&&(F=u0(8)|0,nl(F),l0(F|0,2736,8)),o=r+288|0,u=r+292|0,e[u>>2]=e[o>>2],F=r+259|0,(Z[F>>0]|Z[F+1>>0]<<8|Z[F+2>>0]<<16|Z[F+3>>0]<<24|0)==-1&&(F=u0(8)|0,Dt(F,7606),l0(F|0,2720,8)),i=A+4|0,tl(o,(e[i>>2]|0)+1|0),F=e[o>>2]|0,e[F>>2]=(e[f>>2]|0)+8,e[F+4>>2]=0,(e[i>>2]|0)>>>0>1){if(Ot(c,e[r>>2]|0),Pt(h,c),z0(v,32,2,8,0),ln(h),M0(v),!(e[i>>2]|0))o=e[o>>2]|0,t=o;else{t=1;do t>>>0>1?n=e[(e[o>>2]|0)+(t+-1<<3)>>2]|0:n=0,f=X0(v,h,n,1)|0,n=e[o>>2]|0,F=n+(t<<3)|0,e[F>>2]=f,e[F+4>>2]=((f|0)<0)<<31>>31,t=t+1|0;while(t>>>0<=(e[i>>2]|0)>>>0);t=n,o=n}if(n=e[u>>2]|0,n-t>>3>>>0>1){A=n-o>>3,i=o,n=1,t=e[i>>2]|0,i=e[i+4>>2]|0;do F=o+(n<<3)|0,u=F,t=O0(e[u>>2]|0,e[u+4>>2]|0,t|0,i|0)|0,i=r0()|0,e[F>>2]=t,e[F+4>>2]=i,n=n+1|0;while(n>>>0<A>>>0)}B0(v),Lt(h),Ct(c)}s=y}function hu(r){r=r|0,l[r+12>>0]=0,l[r+13>>0]=0}function mu(r){r=r|0,e[r+8>>2]=0,e[r+4>>2]=0}function nr(r){return r=r|0,Ve(r)|0}function pu(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0;if(f=s,s=s+16|0,A=n,o=f,i=t-A|0,i>>>0>4294967279&&Yn(r),i>>>0<11?l[r+11>>0]=i:(c=i+16&-16,u=_(c)|0,e[r>>2]=u,e[r+8>>2]=c|-2147483648,e[r+4>>2]=i,r=u),(n|0)!=(t|0)){for(A=t-A|0,i=r;Wr(i,n),n=n+1|0,(n|0)!=(t|0);)i=i+1|0;r=r+A|0}l[o>>0]=0,Wr(r,o),s=f}function Wr(r,n){r=r|0,n=n|0,l[r>>0]=l[n>>0]|0}function vu(r){r=r|0,Y0(r),x(r)}function yu(r,n){r=r|0,n=n|0,e[r>>2]=4372,e[r+16>>2]=r}function Zu(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,n=e[n+4>>2]|0,e[r+4>>2]=n,e[r+8>>2]=n+(t*24|0)}function Ru(r){r=r|0,e[(e[r>>2]|0)+4>>2]=e[r+4>>2]}function fn(r,n){r=r|0,n=n|0;var t=0,i=0;t=n+16|0,i=e[t>>2]|0;do if(i)if((n|0)==(i|0)){i=at(r)|0,e[r+16>>2]=i,t=e[t>>2]|0,k2[e[(e[t>>2]|0)+12>>2]&15](t,i);break}else{e[r+16>>2]=i,e[t>>2]=0;break}else e[r+16>>2]=0;while(0)}function at(r){return r=r|0,r|0}function Vu(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;A=r+12|0,e[A>>2]=0,e[r+16>>2]=i;do if(n)if(n>>>0>178956970)A=u0(8)|0,h2(A,6723),e[A>>2]=5956,l0(A|0,3928,123);else{i=_(n*24|0)|0;break}else i=0;while(0);e[r>>2]=i,t=i+(t*24|0)|0,e[r+8>>2]=t,e[r+4>>2]=t,e[A>>2]=i+(n*24|0)}function Fu(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;if(u=e[r>>2]|0,c=r+4|0,t=e[c>>2]|0,f=n+4|0,(t|0)==(u|0))A=f,o=r,i=e[f>>2]|0,t=u;else{i=e[f>>2]|0;do t=t+-24|0,fn(i+-24|0,t),i=(e[f>>2]|0)+-24|0,e[f>>2]=i;while((t|0)!=(u|0));A=f,o=r,t=e[r>>2]|0}e[o>>2]=i,e[A>>2]=t,u=n+8|0,f=e[c>>2]|0,e[c>>2]=e[u>>2],e[u>>2]=f,u=r+8|0,c=n+12|0,r=e[u>>2]|0,e[u>>2]=e[c>>2],e[c>>2]=r,e[n>>2]=e[A>>2]}function wu(r){r=r|0;var n=0,t=0,i=0,A=0;if(t=e[r+4>>2]|0,i=r+8|0,n=e[i>>2]|0,(n|0)!=(t|0))do A=n+-24|0,e[i>>2]=A,on(A),n=e[i>>2]|0;while((n|0)!=(t|0));n=e[r>>2]|0,n|0&&D(n,(e[r+12>>2]|0)-n|0)}function ku(r){return r=r|0,178956970}function Wu(r){r=r|0,x(r)}function Xu(r){return r=r|0,r=_(8)|0,e[r>>2]=4372,r|0}function du(r,n){r=r|0,n=n|0,e[n>>2]=4372}function gu(r){r=r|0}function Uu(r){r=r|0,D(r,8)}function Tu(r,n){r=r|0,n=n|0,Mu(r+4|0,n)}function Gu(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==7183?r+4|0:0)|0}function Nu(r){return r=r|0,2664}function zu(r){r=r|0}function Mu(r,n){r=r|0,n=n|0,Bu(r,n)}function Bu(r,n){r=r|0,n=n|0;var t=0,i=0;if(r=n+104|0,n=Z[r>>0]|0,t=n>>>7,i=n>>>6&1,(t|0)==1&(i|0)!=0&&(i=u0(8)|0,Ju(i),l0(i|0,2632,8)),(t|0)==(i|0))i=u0(8)|0,Yu(i),l0(i|0,2648,8);else{l[r>>0]=n&63;return}}function Ju(r){r=r|0,Q0(r,7076),e[r>>2]=4416}function Yu(r){r=r|0,Q0(r,7144),e[r>>2]=4436}function xu(r){r=r|0,Y0(r),x(r)}function _u(r){r=r|0,Y0(r),x(r)}function Eu(r){r=r|0,e[r>>2]=6092}function te(r){r=r|0;var n=0;return n=r+12|0,r=(l[n>>0]|0)==0,l[n>>0]=0,r|0}function Su(r){return r=r|0,(l[r+13>>0]|0)!=0|0}function ju(r,n){r=r|0,n=n|0,r=r+247|0,Hu(r,n),(Z[r>>0]|Z[r+1>>0]<<8)<<16>>16!=2&&(n=u0(8)|0,Ht(n),l0(n|0,2688,8))}function Cu(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;switch(i|0){case 0:break;case 2:{i=e[r+4>>2]|0,n=O0(O0(n|0,t|0,-1,-1)|0,r0()|0,i|0,((i|0)<0)<<31>>31|0)|0,t=r0()|0;break}case 1:{i=e[r+8>>2]|0,n=O0(i|0,((i|0)<0)<<31>>31|0,n|0,t|0)|0,t=r0()|0;break}default:t=0,n=0}A=e[r+4>>2]|0,o=((A|0)<0)<<31>>31,i=r+12|0,(t|0)<0|((t|0)>(o|0)|(t|0)==(o|0)&n>>>0>=A>>>0)?l[i>>0]=1:(l[i>>0]=0,e[r+8>>2]=n)}function Ou(r){r=r|0,Q0(r,7410),e[r>>2]=4476}function Iu(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0,h=0;if(f=s,s=s+16|0,o=f,It(r),A=n+32|0,(Z[A>>0]|Z[A+1>>0]<<8)<<16>>16){i=n+34|0,n=0;do c=Z[i>>0]|Z[i+1>>0]<<8|Z[i+2>>0]<<16|Z[i+3>>0]<<24,h=c+(n*6|0)|0,u=c+(n*6|0)+2|0,c=c+(n*6|0)+4|0,Xr(o,(Z[h>>0]|Z[h+1>>0]<<8)&65535,(Z[u>>0]|Z[u+1>>0]<<8)&65535,(Z[c>>0]|Z[c+1>>0]<<8)&65535),Qt(r,o),t=t-((Z[u>>0]|Z[u+1>>0]<<8)&65535)|0,n=n+1|0;while(n>>>0<((Z[A>>0]|Z[A+1>>0]<<8)&65535)>>>0)}(t|0)<0&&(h=u0(8)|0,Ht(h),l0(h|0,2688,8)),t|0&&(Xr(o,0,t,2),Qt(r,o)),s=f}function au(r,n){r=r|0,n=n|0;var t=0,i=0;return t=s,s=s+16|0,i=t+1|0,l[i>>0]=l[t>>0]|0,rl(r,n,i),s=t,r|0}function Hu(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;if(i=n+2|0,o=Z[n>>0]|Z[n+1>>0]<<8,l[r>>0]=o,l[r+1>>0]=o>>8,o=r+2|0,i=Z[i>>0]|Z[i+1>>0]<<8,l[o>>0]=i,l[o+1>>0]=i>>8,l[r+4>>0]=l[n+4>>0]|0,o=n+6|0,l[r+5>>0]=l[n+5>>0]|0,i=n+8|0,t=r+6|0,o=Z[o>>0]|Z[o+1>>0]<<8,l[t>>0]=o,l[t+1>>0]=o>>8,t=n+12|0,o=r+8|0,i=Z[i>>0]|Z[i+1>>0]<<8|Z[i+2>>0]<<16|Z[i+3>>0]<<24,l[o>>0]=i,l[o+1>>0]=i>>8,l[o+2>>0]=i>>16,l[o+3>>0]=i>>24,o=r+12|0,t=Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,l[o>>0]=t,l[o+1>>0]=t>>8,l[o+2>>0]=t>>16,l[o+3>>0]=t>>24,o=n+16|0,t=o,t=Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,o=o+4|0,o=Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24,i=r+16|0,f=i,l[f>>0]=t,l[f+1>>0]=t>>8,l[f+2>>0]=t>>16,l[f+3>>0]=t>>24,i=i+4|0,l[i>>0]=o,l[i+1>>0]=o>>8,l[i+2>>0]=o>>16,l[i+3>>0]=o>>24,i=n+32|0,o=n+24|0,f=o,f=Z[f>>0]|Z[f+1>>0]<<8|Z[f+2>>0]<<16|Z[f+3>>0]<<24,o=o+4|0,o=Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24,t=r+24|0,A=t,l[A>>0]=f,l[A+1>>0]=f>>8,l[A+2>>0]=f>>16,l[A+3>>0]=f>>24,t=t+4|0,l[t>>0]=o,l[t+1>>0]=o>>8,l[t+2>>0]=o>>16,l[t+3>>0]=o>>24,t=n+34|0,o=r+32|0,i=Z[i>>0]|Z[i+1>>0]<<8,l[o>>0]=i,l[o+1>>0]=i>>8,A=r+34|0,r=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24,r?(EA(r),r=Z[o>>0]|Z[o+1>>0]<<8):r=i,i=_A((r&65535)*6|0)|0,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,r<<16>>16&&(r=n+36|0,f=Z[t>>0]|Z[t+1>>0]<<8,l[i>>0]=f,l[i+1>>0]=f>>8,n=n+38|0,f=i+2|0,r=Z[r>>0]|Z[r+1>>0]<<8,l[f>>0]=r,l[f+1>>0]=r>>8,f=i+4|0,n=Z[n>>0]|Z[n+1>>0]<<8,l[f>>0]=n,l[f+1>>0]=n>>8,((Z[o>>0]|Z[o+1>>0]<<8)&65535)>1)){r=1;do n=t,t=t+6|0,f=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24,u=n+8|0,i=f+(r*6|0)|0,c=Z[t>>0]|Z[t+1>>0]<<8,l[i>>0]=c,l[i+1>>0]=c>>8,n=n+10|0,i=f+(r*6|0)+2|0,u=Z[u>>0]|Z[u+1>>0]<<8,l[i>>0]=u,l[i+1>>0]=u>>8,f=f+(r*6|0)+4|0,n=Z[n>>0]|Z[n+1>>0]<<8,l[f>>0]=n,l[f+1>>0]=n>>8,r=r+1|0;while(r>>>0<((Z[o>>0]|Z[o+1>>0]<<8)&65535)>>>0)}}function Ht(r){r=r|0,Q0(r,7354),e[r>>2]=4456}function Qu(r){r=r|0,Y0(r),x(r)}function Du(r){r=r|0,Y0(r),x(r)}function Qt(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0;u=s,s=s+32|0,A=u,o=r+4|0,t=e[o>>2]|0,f=r+8|0;do if((t|0)==(e[f>>2]|0))if(t=((t-(e[r>>2]|0)|0)/12|0)+1|0,i=bu(r)|0,i>>>0<t>>>0)d0(r);else{c=e[r>>2]|0,h=((e[f>>2]|0)-c|0)/12|0,f=h<<1,$u(A,h>>>0<i>>>1>>>0?f>>>0<t>>>0?t:f:i,((e[o>>2]|0)-c|0)/12|0,r+8|0),f=A+8|0,o=e[f>>2]|0,e[o>>2]=e[n>>2],e[o+4>>2]=e[n+4>>2],e[o+8>>2]=e[n+8>>2],e[f>>2]=(e[f>>2]|0)+12,qu(r,A),Ku(A);break}else Pu(A,r,1),h=A+4|0,c=e[h>>2]|0,e[c>>2]=e[n>>2],e[c+4>>2]=e[n+4>>2],e[c+8>>2]=e[n+8>>2],e[h>>2]=(e[h>>2]|0)+12,Lu(A);while(0);s=u}function Xr(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0,e[r>>2]=n,e[r+4>>2]=t,e[r+8>>2]=i}function Pu(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,n=e[n+4>>2]|0,e[r+4>>2]=n,e[r+8>>2]=n+(t*12|0)}function Lu(r){r=r|0,e[(e[r>>2]|0)+4>>2]=e[r+4>>2]}function $u(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;A=r+12|0,e[A>>2]=0,e[r+16>>2]=i;do if(n)if(n>>>0>357913941)A=u0(8)|0,h2(A,6723),e[A>>2]=5956,l0(A|0,3928,123);else{i=_(n*12|0)|0;break}else i=0;while(0);e[r>>2]=i,t=i+(t*12|0)|0,e[r+8>>2]=t,e[r+4>>2]=t,e[A>>2]=i+(n*12|0)}function qu(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;i=e[r>>2]|0,f=r+4|0,o=n+4|0,A=(e[f>>2]|0)-i|0,t=(e[o>>2]|0)+(((A|0)/-12|0)*12|0)|0,e[o>>2]=t,(A|0)>0?(x0(t|0,i|0,A|0)|0,i=o,t=e[o>>2]|0):i=o,o=e[r>>2]|0,e[r>>2]=t,e[i>>2]=o,o=n+8|0,A=e[f>>2]|0,e[f>>2]=e[o>>2],e[o>>2]=A,o=r+8|0,f=n+12|0,r=e[o>>2]|0,e[o>>2]=e[f>>2],e[f>>2]=r,e[n>>2]=e[i>>2]}function Ku(r){r=r|0;var n=0,t=0,i=0;n=e[r+4>>2]|0,t=r+8|0,i=e[t>>2]|0,(i|0)!=(n|0)&&(e[t>>2]=i+(~(((i+-12-n|0)>>>0)/12|0)*12|0)),n=e[r>>2]|0,n|0&&D(n,(e[r+12>>2]|0)-n|0)}function bu(r){return r=r|0,357913941}function rl(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;el(r),e[r>>2]=e[n>>2],t=n+4|0,e[r+4>>2]=e[t>>2],i=n+8|0,e[r+8>>2]=e[i>>2],e[i>>2]=0,e[t>>2]=0,e[n>>2]=0}function el(r){r=r|0;var n=0,t=0,i=0,A=0;n=e[r>>2]|0,t=n,n|0&&(i=r+4|0,e[i>>2]=t,A=r+8|0,D(n,(e[A>>2]|0)-t|0),e[A>>2]=0,e[i>>2]=0,e[r>>2]=0)}function un(r){r=r|0,Q0(r,7660),e[r>>2]=4496}function Dt(r,n){r=r|0,n=n|0,Q0(r,n),e[r>>2]=4516}function nl(r){r=r|0,Q0(r,7704),e[r>>2]=4536}function tl(r,n){r=r|0,n=n|0;var t=0,i=0,A=0;t=r+4|0,A=e[r>>2]|0,i=(e[t>>2]|0)-A>>3,i>>>0>=n>>>0?i>>>0>n>>>0&&(e[t>>2]=A+(n<<3)):fl(r,n-i|0)}function Pt(r,n){r=r|0,n=n|0,e[r>>2]=n,e[r+4>>2]=0,e[r+8>>2]=-1}function z0(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0;e[r+4>>2]=n,e[r+8>>2]=t,e[r+12>>2]=i,e[r+16>>2]=A,e[r+36>>2]=0,e[r+40>>2]=0,e[r+44>>2]=0,$t(r+48|0),e[r+68>>2]=0,e[r+72>>2]=0,e[r+76>>2]=0;do if(A){for(i=r+20|0,e[i>>2]=0,e[r+24>>2]=A,t=A,o=0;t=t>>>1,n=o+1|0,t;)o=n;e[i>>2]=(1<<o|0)==(A|0)?o:n,t=A>>>1,e[r+28>>2]=0-t,t=A+-1-t|0}else if(t=r+20|0,(n+-1|0)>>>0<31){e[t>>2]=n,A=1<<n,e[r+24>>2]=A,t=A>>>1,e[r+28>>2]=0-t,t=A+-1-t|0;break}else{e[t>>2]=32,e[r+24>>2]=0,e[r+28>>2]=-2147483648,t=2147483647;break}while(0);e[r+32>>2]=t,e[r>>2]=0}function ln(r){r=r|0;var n=0;n=((dr(e[r>>2]|0)|0)&255)<<24,n=((dr(e[r>>2]|0)|0)&255)<<16|n,n=n|((dr(e[r>>2]|0)|0)&255)<<8,e[r+4>>2]=n|(dr(e[r>>2]|0)|0)&255}function M0(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,z=0;k=s,s=s+64|0,W=k+44|0,X=k,h=r+36|0,v=r+40|0;r:do if((e[h>>2]|0)==(e[v>>2]|0)){y=r+8|0;e:do if(!(e[y>>2]|0))F=r+20|0;else{for(A=r+20|0,o=r+44|0,f=W+4|0,u=r+44|0,c=W+8|0,i=0;;){if(F0(X,(e[A>>2]|0)+1|0,0,0),n=e[v>>2]|0,n>>>0<(e[o>>2]|0)>>>0)Kt(W,h,1),Ae(e[f>>2]|0,X),e[f>>2]=(e[f>>2]|0)+44,bt(W);else{if(n=((n-(e[h>>2]|0)|0)/44|0)+1|0,t=ti(h)|0,t>>>0<n>>>0)break;C=e[h>>2]|0,z=((e[o>>2]|0)-C|0)/44|0,B=z<<1,ri(W,z>>>0<t>>>1>>>0?B>>>0<n>>>0?n:B:t,((e[v>>2]|0)-C|0)/44|0,u),Ae(e[c>>2]|0,X),e[c>>2]=(e[c>>2]|0)+44,ei(h,W),ni(W)}if(p0(X),i=i+1|0,i>>>0>=(e[y>>2]|0)>>>0){F=A;break e}}d0(h)}while(0);if(e[F>>2]|0){for(f=r+12|0,u=r+68|0,c=r+72|0,h=r+76|0,v=W+4|0,A=r+76|0,o=W+8|0,i=1;;){if(n=e[f>>2]|0,F0(X,1<<(i>>>0>n>>>0?n:i),0,0),n=e[c>>2]|0,n>>>0<(e[h>>2]|0)>>>0)Kt(W,u,1),Ae(e[v>>2]|0,X),e[v>>2]=(e[v>>2]|0)+44,bt(W);else{if(n=((n-(e[u>>2]|0)|0)/44|0)+1|0,t=ti(u)|0,t>>>0<n>>>0)break;z=e[u>>2]|0,C=((e[h>>2]|0)-z|0)/44|0,B=C<<1,ri(W,C>>>0<t>>>1>>>0?B>>>0<n>>>0?n:B:t,((e[c>>2]|0)-z|0)/44|0,A),Ae(e[o>>2]|0,X),e[o>>2]=(e[o>>2]|0)+44,ei(u,W),ni(W)}if(p0(X),i=i+1|0,i>>>0>(e[F>>2]|0)>>>0)break r}d0(u)}}while(0);s=k}function X0(r,n,t,i){return r=r|0,n=n|0,t=t|0,i=i|0,t=(wl(r,n,(e[r+36>>2]|0)+(i*44|0)|0)|0)+t|0,n=e[r+24>>2]|0,(t|0)<0?t+n|0:t-(t>>>0<n>>>0?0:n)|0}function B0(r){r=r|0,ie(r+68|0),ie(r+36|0)}function Lt(r){r=r|0}function il(r){r=r|0,Y0(r),x(r)}function Al(r){r=r|0,Y0(r),x(r)}function ol(r){r=r|0,Y0(r),x(r)}function fl(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0;u=s,s=s+32|0,A=u,o=r+8|0,f=r+4|0,t=e[f>>2]|0;do if((e[o>>2]|0)-t>>3>>>0<n>>>0)if(t=(t-(e[r>>2]|0)>>3)+n|0,i=vl(r)|0,i>>>0<t>>>0)d0(r);else{c=e[r>>2]|0,h=(e[o>>2]|0)-c|0,o=h>>2,ll(A,h>>3>>>0<i>>>1>>>0?o>>>0<t>>>0?t:o:i,(e[f>>2]|0)-c>>3,r+8|0),cl(A,n),sl(r,A),hl(A);break}else ul(r,n);while(0);s=u}function ul(r,n){r=r|0,n=n|0;var t=0,i=0,A=0;A=s,s=s+16|0,i=A,ml(i,r,n),r=i+4|0,n=e[r>>2]|0,t=e[i+8>>2]|0,(n|0)!=(t|0)&&(t=t+-8-n|0,O2(n|0,0,t+8&-8|0)|0,e[r>>2]=n+((t>>>3)+1<<3)),pl(i),s=A}function ll(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;A=r+12|0,e[A>>2]=0,e[r+16>>2]=i;do if(n)if(n>>>0>536870911)A=u0(8)|0,h2(A,6723),e[A>>2]=5956,l0(A|0,3928,123);else{i=_(n<<3)|0;break}else i=0;while(0);e[r>>2]=i,t=i+(t<<3)|0,e[r+8>>2]=t,e[r+4>>2]=t,e[A>>2]=i+(n<<3)}function cl(r,n){r=r|0,n=n|0;var t=0,i=0;i=s,s=s+16|0,t=i,yl(t,r+8|0,n),r=e[t>>2]|0,n=e[t+4>>2]|0,(r|0)!=(n|0)&&(n=n+-8-r|0,O2(r|0,0,n+8&-8|0)|0,e[t>>2]=r+((n>>>3)+1<<3)),Zl(t),s=i}function sl(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;i=e[r>>2]|0,f=r+4|0,o=n+4|0,A=(e[f>>2]|0)-i|0,t=(e[o>>2]|0)+(0-(A>>3)<<3)|0,e[o>>2]=t,(A|0)>0?(x0(t|0,i|0,A|0)|0,i=o,t=e[o>>2]|0):i=o,o=e[r>>2]|0,e[r>>2]=t,e[i>>2]=o,o=n+8|0,A=e[f>>2]|0,e[f>>2]=e[o>>2],e[o>>2]=A,o=r+8|0,f=n+12|0,r=e[o>>2]|0,e[o>>2]=e[f>>2],e[f>>2]=r,e[n>>2]=e[i>>2]}function hl(r){r=r|0;var n=0,t=0,i=0;n=e[r+4>>2]|0,t=r+8|0,i=e[t>>2]|0,(i|0)!=(n|0)&&(e[t>>2]=i+(~((i+-8-n|0)>>>3)<<3)),n=e[r>>2]|0,n|0&&D(n,(e[r+12>>2]|0)-n|0)}function ml(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,n=e[n+4>>2]|0,e[r+4>>2]=n,e[r+8>>2]=n+(t<<3)}function pl(r){r=r|0,e[(e[r>>2]|0)+4>>2]=e[r+4>>2]}function vl(r){return r=r|0,536870911}function yl(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=e[n>>2],e[r+4>>2]=(e[n>>2]|0)+(t<<3),e[r+8>>2]=n}function Zl(r){r=r|0,e[e[r+8>>2]>>2]=e[r>>2]}function $t(r){r=r|0,e[r+12>>2]=1,e[r+16>>2]=2,e[r+8>>2]=4096,e[r+4>>2]=4,e[r>>2]=4}function ie(r){r=r|0;var n=0,t=0,i=0;if(t=e[r>>2]|0,t|0){if(i=r+4|0,n=e[i>>2]|0,(n|0)==(t|0))n=t;else{do n=n+-44|0,p0(n);while((n|0)!=(t|0));n=e[r>>2]|0}e[i>>2]=t,D(n,(e[r+8>>2]|0)-n|0)}}function p0(r){r=r|0;var n=0;n=e[r+8>>2]|0,n|0&&ne(n),n=e[r+12>>2]|0,n|0&&ne(n),n=e[r+16>>2]|0,n|0&&ne(n)}function dr(r){r=r|0;var n=0,t=0;return t=r+4|0,n=e[t>>2]|0,(n|0)>=(e[r+8>>2]|0)&&(qt(r),n=e[t>>2]|0),r=e[r+12>>2]|0,e[t>>2]=n+1,l[r+n>>0]|0}function qt(r){r=r|0;var n=0;if(e[r+4>>2]=0,z2(e[r>>2]|0,e[r+12>>2]|0,1048576),n=Rl(e[r>>2]|0)|0,e[r+8>>2]=n,!n)n=u0(8)|0,Vl(n),l0(n|0,2752,8);else return}function Rl(r){return r=r|0,e[r+16>>2]|0}function Vl(r){r=r|0,Q0(r,7769),e[r>>2]=4556}function Fl(r){r=r|0,Y0(r),x(r)}function F0(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0,f=0;if(e[r>>2]=n,l[r+4>>0]=t&1,o=r+8|0,e[o>>2]=0,f=r+12|0,e[f>>2]=0,A=r+16|0,e[A>>2]=0,(n+-2|0)>>>0>2046&&(r=u0(8)|0,Q0(r,7789),l0(r|0,3912,8)),e[r+32>>2]=n+-1,n>>>0>16&(t^1)){for(t=3;1<<t+2>>>0<n>>>0;)t=t+1|0;n=1<<t,e[r+36>>2]=n,e[r+40>>2]=15-t,e[A>>2]=N2((n<<2)+8|0)|0,n=e[r>>2]|0}else e[A>>2]=0,e[r+40>>2]=0,e[r+36>>2]=0;if(e[o>>2]=N2(n<<2)|0,A=N2(e[r>>2]<<2)|0,e[f>>2]=A,e[r+20>>2]=0,n=e[r>>2]|0,t=r+24|0,e[t>>2]=n,n=(n|0)!=0,i){if(n){n=0;do e[A+(n<<2)>>2]=e[i+(n<<2)>>2],n=n+1|0;while(n>>>0<(e[r>>2]|0)>>>0)}}else if(n){n=0;do e[A+(n<<2)>>2]=1,n=n+1|0;while(n>>>0<(e[r>>2]|0)>>>0)}sn(r),i=((e[r>>2]|0)+6|0)>>>1,e[t>>2]=i,e[r+28>>2]=i}function Kt(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,n=e[n+4>>2]|0,e[r+4>>2]=n,e[r+8>>2]=n+(t*44|0)}function bt(r){r=r|0,e[(e[r>>2]|0)+4>>2]=e[r+4>>2]}function Ae(r,n){r=r|0,n=n|0;var t=0;e[r>>2]=e[n>>2],l[r+4>>0]=l[n+4>>0]|0,t=n+8|0,e[r+8>>2]=e[t>>2],e[r+12>>2]=e[n+12>>2],e[r+16>>2]=e[n+16>>2],e[r+20>>2]=e[n+20>>2],e[r+24>>2]=e[n+24>>2],e[r+28>>2]=e[n+28>>2],e[r+32>>2]=e[n+32>>2],e[r+36>>2]=e[n+36>>2],e[r+40>>2]=e[n+40>>2],e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0}function ri(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;A=r+12|0,e[A>>2]=0,e[r+16>>2]=i;do if(n)if(n>>>0>97612893)A=u0(8)|0,h2(A,6723),e[A>>2]=5956,l0(A|0,3928,123);else{i=_(n*44|0)|0;break}else i=0;while(0);e[r>>2]=i,t=i+(t*44|0)|0,e[r+8>>2]=t,e[r+4>>2]=t,e[A>>2]=i+(n*44|0)}function ei(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;if(u=e[r>>2]|0,c=r+4|0,t=e[c>>2]|0,f=n+4|0,(t|0)==(u|0))A=f,o=r,i=e[f>>2]|0,t=u;else{i=e[f>>2]|0;do t=t+-44|0,cn(i+-44|0,t),i=(e[f>>2]|0)+-44|0,e[f>>2]=i;while((t|0)!=(u|0));A=f,o=r,t=e[r>>2]|0}e[o>>2]=i,e[A>>2]=t,u=n+8|0,f=e[c>>2]|0,e[c>>2]=e[u>>2],e[u>>2]=f,u=r+8|0,c=n+12|0,r=e[u>>2]|0,e[u>>2]=e[c>>2],e[c>>2]=r,e[n>>2]=e[A>>2]}function ni(r){r=r|0;var n=0,t=0,i=0,A=0;if(t=e[r+4>>2]|0,i=r+8|0,n=e[i>>2]|0,(n|0)!=(t|0))do A=n+-44|0,e[i>>2]=A,p0(A),n=e[i>>2]|0;while((n|0)!=(t|0));n=e[r>>2]|0,n|0&&D(n,(e[r+12>>2]|0)-n|0)}function ti(r){return r=r|0,97612893}function cn(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;t=e[n>>2]|0,e[r>>2]=t,l[r+4>>0]=l[n+4>>0]|0,e[r+20>>2]=e[n+20>>2],e[r+24>>2]=e[n+24>>2],e[r+28>>2]=e[n+28>>2],e[r+32>>2]=e[n+32>>2],o=r+36|0,e[o>>2]=e[n+36>>2],e[r+40>>2]=e[n+40>>2],t=t<<2,i=N2(t)|0,e[r+8>>2]=i,A=e[r>>2]|0,A|0&&I0(i|0,e[n+8>>2]|0,A<<2|0)|0,t=N2(t)|0,e[r+12>>2]=t,i=e[r>>2]|0,i|0&&I0(t|0,e[n+12>>2]|0,i<<2|0)|0,t=e[o>>2]|0,t?(i=N2((t<<2)+8|0)|0,e[r+16>>2]=i,t=(e[o>>2]<<2)+8|0,t|0&&I0(i|0,e[n+16>>2]|0,t|0)|0):e[r+16>>2]=0}function sn(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0;if(X=r+24|0,A=r+20|0,n=(e[A>>2]|0)+(e[X>>2]|0)|0,e[A>>2]=n,n>>>0>32768)if(e[A>>2]=0,!(e[r>>2]|0))n=0;else{i=e[r+12>>2]|0,t=0;do y=i+(t<<2)|0,n=((e[y>>2]|0)+1|0)>>>1,e[y>>2]=n,n=(e[A>>2]|0)+n|0,e[A>>2]=n,t=t+1|0;while(t>>>0<(e[r>>2]|0)>>>0)}y=2147483648/(n>>>0)|0;do if(!(l[r+4>>0]|0)&&(F=r+36|0,(e[F>>2]|0)!=0)){if(e[r>>2]|0){u=e[r+8>>2]|0,c=e[r+12>>2]|0,h=r+40|0,v=r+16|0,n=0,o=0,f=0;do{if(t=(L(o,y)|0)>>>16,e[u+(f<<2)>>2]=t,o=(e[c+(f<<2)>>2]|0)+o|0,t=t>>>(e[h>>2]|0),n>>>0<t>>>0){i=f+-1|0,A=e[v>>2]|0;do n=n+1|0,e[A+(n<<2)>>2]=i;while((n|0)!=(t|0));n=t}f=f+1|0}while(f>>>0<(e[r>>2]|0)>>>0);if(t=e[v>>2]|0,e[t>>2]=0,n>>>0>(e[F>>2]|0)>>>0){n=r;break}}else t=e[r+16>>2]|0,e[t>>2]=0,n=0;do n=n+1|0,e[t+(n<<2)>>2]=(e[r>>2]|0)+-1;while(n>>>0<=(e[F>>2]|0)>>>0);n=r}else W=7;while(0);if((W|0)==7)if(!(e[r>>2]|0))n=r;else{i=e[r+8>>2]|0,A=e[r+12>>2]|0,n=0,t=0;do e[i+(n<<2)>>2]=(L(t,y)|0)>>>16,t=(e[A+(n<<2)>>2]|0)+t|0,n=n+1|0;while(n>>>0<(e[r>>2]|0)>>>0);n=r}W=((e[X>>2]|0)*5|0)>>>2,F=(e[n>>2]<<3)+48|0,W=W>>>0>F>>>0?F:W,e[X>>2]=W,e[r+28>>2]=W}function wl(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;t=w0(n,t)|0,e[r>>2]=t;do if(t){if(t>>>0>=32){t=e[r+28>>2]|0;break}if(i=e[r+12>>2]|0,t>>>0>i>>>0?(i=t-i|0,t=w0(n,(e[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,i=t<<i|(ii(n,i)|0)):i=w0(n,(e[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,t=e[r>>2]|0,(i|0)<(1<<t+-1|0)){t=i+1+(-1<<t)|0;break}else{t=i+1|0;break}}else t=kl(n,r+48|0)|0;while(0);return t|0}function w0(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;if(F=r+8|0,y=e[F>>2]|0,A=e[n+16>>2]|0,A){if(i=r+4|0,t=e[i>>2]|0,v=y>>>15,e[F>>2]=v,c=(t>>>0)/(v>>>0)|0,u=c>>>(e[n+40>>2]|0),o=e[A+(u<<2)>>2]|0,u=(e[A+(u+1<<2)>>2]|0)+1|0,f=o+1|0,h=e[n+8>>2]|0,u>>>0>f>>>0){A=o,o=u;do f=(o+A|0)>>>1,u=(e[h+(f<<2)>>2]|0)>>>0>c>>>0,A=u?A:f,o=u?f:o,f=A+1|0;while(o>>>0>f>>>0);o=A}A=L(e[h+(o<<2)>>2]|0,v)|0,(o|0)==(e[n+32>>2]|0)?f=y:f=L(e[h+(f<<2)>>2]|0,v)|0}else{h=y>>>15,e[F>>2]=h,u=e[n>>2]|0,v=e[n+8>>2]|0,i=r+4|0,t=e[i>>2]|0,c=u>>>1,A=0,f=y,o=0;do W=L(e[v+(c<<2)>>2]|0,h)|0,y=W>>>0>t>>>0,f=y?W:f,A=y?A:W,o=y?o:c,u=y?c:u,c=(o+u|0)>>>1;while((c|0)!=(o|0))}return e[i>>2]=t-A,W=f-A|0,e[F>>2]=W,W>>>0<16777216&&oe(r),F=(e[n+12>>2]|0)+(o<<2)|0,e[F>>2]=(e[F>>2]|0)+1,F=n+28|0,W=(e[F>>2]|0)+-1|0,e[F>>2]=W,W||sn(n),o|0}function ii(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;return n>>>0>19?(t=(hn(r)|0)&65535,(ii(r,n+-16|0)|0)<<16|t|0):(i=r+4|0,A=e[i>>2]|0,o=r+8|0,t=(e[o>>2]|0)>>>n,e[o>>2]=t,n=(A>>>0)/(t>>>0)|0,e[i>>2]=A-(L(n,t)|0),t>>>0<16777216&&oe(r),n|0)}function kl(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0;return i=r+8|0,A=e[i>>2]|0,t=L(A>>>13,e[n+8>>2]|0)|0,o=r+4|0,f=e[o>>2]|0,u=f>>>0>=t>>>0,u?(e[o>>2]=f-t,t=A-t|0,e[i>>2]=t):(e[i>>2]=t,f=n+12|0,e[f>>2]=(e[f>>2]|0)+1),t>>>0<16777216&&oe(r),f=n+4|0,r=(e[f>>2]|0)+-1|0,e[f>>2]=r,r||Ai(n),u&1|0}function oe(r){r=r|0;var n=0,t=0,i=0,A=0;n=r+4|0,t=r+8|0,i=e[n>>2]|0;do i=i<<8|(dr(e[r>>2]|0)|0)&255,e[n>>2]=i,A=e[t>>2]<<8,e[t>>2]=A;while(A>>>0<16777216)}function hn(r){r=r|0;var n=0,t=0,i=0,A=0;return t=r+4|0,A=e[t>>2]|0,n=r+8|0,i=(e[n>>2]|0)>>>16,e[n>>2]=i,n=(A>>>0)/(i>>>0)|0,e[t>>2]=A-(L(n,i)|0),oe(r),n&65535|0}function Ai(r){r=r|0;var n=0,t=0,i=0,A=0,o=0;A=e[r>>2]|0,t=r+16|0,n=(e[t>>2]|0)+A|0,e[t>>2]=n,n>>>0>8192?(i=(n+1|0)>>>1,e[t>>2]=i,o=r+12|0,n=((e[o>>2]|0)+1|0)>>>1,e[o>>2]=n,(n|0)==(i|0)?(n=i+1|0,e[t>>2]=n,t=n,n=i):t=i):(t=n,n=e[r+12>>2]|0),e[r+8>>2]=(L(n,2147483648/(t>>>0)|0)|0)>>>18,o=A*5|0,o=o>>>0>259?64:o>>>2,e[r>>2]=o,e[r+4>>2]=o}function Wl(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0;v=s,s=s+32|0,o=v+16|0,f=v+8|0,u=v,c=r+336|0,i=c,A=r+259|0,!(e[i+4>>2]|0)&&(e[i>>2]|0)==(Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0)?(i=r+320|0,t=e[r+320>>2]|0,h=5):(i=r+320|0,t=e[i>>2]|0,A=t,t|0&&e[r+312>>2]|0||(t=A,h=5)),(h|0)==5&&(h=r+320|0,e[o>>2]=t,e[h>>2]=0,t=r+324|0,e[o+4>>2]=e[t>>2],e[t>>2]=0,ee(o),A=r+312|0,e[o>>2]=e[A>>2],e[A>>2]=0,y=r+316|0,e[o+4>>2]=e[y>>2],e[y>>2]=0,An(o),F=_(12)|0,Pt(F,r+4|0),e[u>>2]=0,e[o>>2]=e[u>>2],dl(f,F,o),F=e[f>>2]|0,e[f>>2]=e[A>>2],e[A>>2]=F,F=f+4|0,u=e[F>>2]|0,e[F>>2]=e[y>>2],e[y>>2]=u,An(f),Xl(f,e[A>>2]|0,r+300|0),A=e[f>>2]|0,y=f+4|0,u=e[y>>2]|0,e[f>>2]=0,e[y>>2]=0,e[o>>2]=e[h>>2],e[h>>2]=A,e[o+4>>2]=e[t>>2],e[t>>2]=u,ee(o),ee(f),t=r+328|0,u=t,u=O0(e[u>>2]|0,e[u+4>>2]|0,1,0)|0,h=r0()|0,e[t>>2]=u,e[t+4>>2]=h,t=c,e[t>>2]=0,e[t+4>>2]=0,t=e[i>>2]|0),Er[e[e[t>>2]>>2]&63](t,n)|0,h=c,h=O0(e[h>>2]|0,e[h+4>>2]|0,1,0)|0,y=r0()|0,F=c,e[F>>2]=h,e[F+4>>2]=y,s=v}function Xl(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;f=s,s=s+64|0,i=f+56|0,A=f,o=zl(t)|0,(o|0)==-1&&(f=u0(8)|0,Ml(f),l0(f|0,2784,8)),t=oi(t)|0;r:do if(t)Bl(i,n),Jl(e[i>>2]|0),(o|2|0)==3&&Yl(e[i>>2]|0),(o|1|0)==3&&xl(e[i>>2]|0),o=e[i>>2]|0,El(A,t),_l(o,A),fi(A),e[r>>2]=e[i>>2],o=i+4|0,e[r+4>>2]=e[o>>2],e[i>>2]=0,e[o>>2]=0,Sl(i);else switch(o|0){case 0:{o=_(4788)|0,Cl(o),jl(r,n,o);break r}case 1:{o=_(5116)|0,Il(o),Ol(r,n,o);break r}case 2:{o=_(5104)|0,Hl(o),al(r,n,o);break r}case 3:{o=_(5432)|0,Dl(o),Ql(r,n,o);break r}default:{e[r>>2]=0,e[r+4>>2]=0;break r}}while(0);s=f}function dl(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4576,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,gl(r,i),s=t}function gl(r,n){r=r|0,n=n|0}function Ul(r){r=r|0,Z0(r),x(r)}function Tl(r){r=r|0,r=e[r+12>>2]|0,r|0&&(Lt(r),x(r))}function Gl(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==7983?r+12|0:0)|0}function Nl(r){r=r|0,D(r,16)}function zl(r){r=r|0;var n=0,t=0;n=(e[r+4>>2]|0)-(e[r>>2]|0)|0;r:do if(n|0&&(t=((n|0)/12|0)+(((oi(r)|0)!=0)<<31>>31)|0,(t|0)!=0)&&(n=e[r>>2]|0,!(Pl(n,Ll()|0)|0))){switch(t|0){case 1:{r=0;break r}case 2:{if(gr((e[r>>2]|0)+12|0,ui()|0)|0){r=1;break r}if(gr((e[r>>2]|0)+12|0,li()|0)|0){r=2;break r}break}case 3:{if(gr((e[r>>2]|0)+12|0,ui()|0)|0&&(t=(e[r>>2]|0)+24|0,gr(t,li()|0)|0)){r=3;break r}break}default:}r=-1}else r=-1;while(0);return r|0}function Ml(r){r=r|0,Q0(r,8131),e[r>>2]=4604}function oi(r){r=r|0;var n=0,t=0;return n=e[r+4>>2]|0,(n|0)!=(e[r>>2]|0)&&(t=n,(e[t+-12>>2]|0)==0)&&(e[t+-4>>2]|0)==2?r=e[t+-8>>2]|0:r=0,r|0}function Bl(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;t=s,s=s+16|0,i=t+4|0,o=t,A=_(24)|0,ql(A,n),e[o>>2]=0,e[i>>2]=e[o>>2],Kl(r,A,i),s=t}function Jl(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(4792)|0,fc(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],uc(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function Yl(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(336)|0,Gc(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],Nc(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function xl(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(324)|0,Pc(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],Lc(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function _l(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,f=c+12|0,u=c,i=c+8|0,o=_(64)|0,A4(o,e[r+4>>2]|0,n),A=r+8|0,e[i>>2]=0,e[f>>2]=e[i>>2],o4(u,o,f),o=r+12|0,n=e[o>>2]|0,i=r+16|0;do if(n>>>0>=(e[i>>2]|0)>>>0)if(n=(n-(e[A>>2]|0)>>3)+1|0,t=e2(A)|0,t>>>0<n>>>0)d0(A);else{h=e[A>>2]|0,v=(e[i>>2]|0)-h|0,i=v>>2,K0(f,v>>3>>>0<t>>>1>>>0?i>>>0<n>>>0?n:i:t,(e[o>>2]|0)-h>>3,r+16|0),r=f+8|0,o=e[r>>2]|0,e[o>>2]=e[u>>2],i=u+4|0,e[o+4>>2]=e[i>>2],e[u>>2]=0,e[i>>2]=0,e[r>>2]=o+8,b0(A,f),r2(f);break}else $0(f,A,1),v=f+4|0,h=e[v>>2]|0,e[h>>2]=e[u>>2],r=u+4|0,e[h+4>>2]=e[r>>2],e[u>>2]=0,e[r>>2]=0,e[v>>2]=h+8,q0(f);while(0);G0(u),s=c}function El(r,n){r=r|0,n=n|0;var t=0,i=0;t=s,s=s+48|0,i=t,e[r>>2]=n,l[r+4>>0]=0,ai(r+8|0,n),ai(r+20|0,n),F0(i,256,0,0),z4(r+32|0,n,i),p0(i),s=t}function fi(r){r=r|0,J4(r+32|0),Mi(r+20|0),Mi(r+8|0)}function Sl(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function jl(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;i=s,s=s+16|0,A=i+4|0,f=i,o=_(12)|0,Y4(o,n,t),e[f>>2]=0,e[A>>2]=e[f>>2],x4(r,o,A),s=i}function Cl(r){r=r|0,Ur(r),Fn(r+4784|0)}function Ol(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;i=s,s=s+16|0,A=i+4|0,f=i,o=_(12)|0,H4(o,n,t),e[f>>2]=0,e[A>>2]=e[f>>2],Q4(r,o,A),s=i}function Il(r){r=r|0,Ur(r),ts(r+4784|0)}function al(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;i=s,s=s+16|0,A=i+4|0,f=i,o=_(12)|0,is(o,n,t),e[f>>2]=0,e[A>>2]=e[f>>2],As(r,o,A),s=i}function Hl(r){r=r|0,Ur(r),$i(r+4784|0)}function Ql(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;i=s,s=s+16|0,A=i+4|0,f=i,o=_(12)|0,ps(o,n,t),e[f>>2]=0,e[A>>2]=e[f>>2],vs(r,o,A),s=i}function Dl(r){r=r|0,Ur(r),gs(r+4784|0)}function Pl(r,n){return r=r|0,n=n|0,(gr(r,n)|0)^1|0}function Ll(){return!(l[21456]|0)&&S2(21456)|0&&(Xr(21536,6,20,2),j2(21456)),21536}function gr(r,n){return r=r|0,n=n|0,(e[r>>2]|0)==(e[n>>2]|0)&&(e[r+8>>2]|0)==(e[n+8>>2]|0)?r=(e[r+4>>2]|0)==(e[n+4>>2]|0):r=0,r|0}function ui(){return!(l[21464]|0)&&S2(21464)|0&&(Xr(21548,7,8,2),j2(21464)),21548}function li(){return!(l[21472]|0)&&S2(21472)|0&&(Xr(21560,8,6,2),j2(21472)),21560}function $l(r){r=r|0,Y0(r),x(r)}function ql(r,n){r=r|0,n=n|0,tr(r),e[r>>2]=4624,e[r+4>>2]=n,e[r+8>>2]=0,e[r+12>>2]=0,e[r+16>>2]=0,l[r+20>>0]=1}function Kl(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4664,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,nc(r,i),s=t}function tr(r){r=r|0,e[r>>2]=4644}function bl(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;if(c=s,s=s+16|0,o=c,t=e[r+8>>2]|0,f=e[r+12>>2]|0,(t|0)!=(f|0)){u=o+4|0;do i=e[t>>2]|0,e[o>>2]=i,A=e[t+4>>2]|0,e[u>>2]=A,A|0&&(A=A+4|0,e[A>>2]=(e[A>>2]|0)+1),n=Er[e[(e[i>>2]|0)+12>>2]&63](i,n)|0,G0(o),t=t+8|0;while((t|0)!=(f|0))}return t=r+20|0,l[t>>0]|0&&(l[t>>0]=0,ln(e[r+4>>2]|0)),s=c,n|0}function ci(r){r=r|0,e[r>>2]=4624,si(r+8|0),M2(r)}function rc(r){r=r|0,ci(r),x(r)}function M2(r){r=r|0}function ec(r){r=r|0,St()}function G0(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function si(r){r=r|0;var n=0,t=0,i=0;if(t=e[r>>2]|0,t|0){if(i=r+4|0,n=e[i>>2]|0,(n|0)==(t|0))n=t;else{do n=n+-8|0,G0(n);while((n|0)!=(t|0));n=e[r>>2]|0}e[i>>2]=t,D(n,(e[r+8>>2]|0)-n|0)}}function nc(r,n){r=r|0,n=n|0}function tc(r){r=r|0,Z0(r),x(r)}function ic(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+8>>2]&255](r)}function Ac(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==8546?r+12|0:0)|0}function oc(r){r=r|0,D(r,16)}function fc(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=4692,e[r+4>>2]=n,Ur(r+8|0)}function uc(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4740,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function $0(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,n=e[n+4>>2]|0,e[r+4>>2]=n,e[r+8>>2]=n+(t<<3)}function q0(r){r=r|0,e[(e[r>>2]|0)+4>>2]=e[r+4>>2]}function K0(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;A=r+12|0,e[A>>2]=0,e[r+16>>2]=i;do if(n)if(n>>>0>536870911)A=u0(8)|0,h2(A,6723),e[A>>2]=5956,l0(A|0,3928,123);else{i=_(n<<3)|0;break}else i=0;while(0);e[r>>2]=i,t=i+(t<<3)|0,e[r+8>>2]=t,e[r+4>>2]=t,e[A>>2]=i+(n<<3)}function b0(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;if(u=e[r>>2]|0,c=r+4|0,t=e[c>>2]|0,f=n+4|0,(t|0)==(u|0))A=f,o=r,i=e[f>>2]|0,t=u;else{i=e[f>>2]|0;do o=t,t=t+-8|0,e[i+-8>>2]=e[t>>2],o=o+-4|0,e[i+-4>>2]=e[o>>2],e[t>>2]=0,e[o>>2]=0,i=(e[f>>2]|0)+-8|0,e[f>>2]=i;while((t|0)!=(u|0));A=f,o=r,t=e[r>>2]|0}e[o>>2]=i,e[A>>2]=t,u=n+8|0,f=e[c>>2]|0,e[c>>2]=e[u>>2],e[u>>2]=f,u=r+8|0,c=n+12|0,r=e[u>>2]|0,e[u>>2]=e[c>>2],e[c>>2]=r,e[n>>2]=e[A>>2]}function r2(r){r=r|0;var n=0,t=0,i=0,A=0;if(t=e[r+4>>2]|0,i=r+8|0,n=e[i>>2]|0,(n|0)!=(t|0))do A=n+-8|0,e[i>>2]=A,G0(A),n=e[i>>2]|0;while((n|0)!=(t|0));n=e[r>>2]|0,n|0&&D(n,(e[r+12>>2]|0)-n|0)}function e2(r){return r=r|0,536870911}function n2(r){r=r|0,e[r>>2]=4716}function Ur(r){r=r|0,pc(r),vc(r+3980|0),yc(r+4380|0),l[r+4780>>0]=0,l[r+4781>>0]=0}function hi(r){r=r|0,e[r>>2]=4692,Tr(r+8|0),S0(r)}function lc(r){r=r|0,hi(r),x(r)}function cc(r,n){return r=r|0,n=n|0,n|0}function sc(r,n){return r=r|0,n=n|0,Gr(r+8|0,e[r+4>>2]|0,n)|0}function S0(r){r=r|0}function hc(r){r=r|0,S0(r),x(r)}function mc(r,n){return r=r|0,n=n|0,n|0}function pc(r){r=r|0;var n=0,t=0;mi(r),pi(r+52|0),pi(r+436|0),F0(r+852|0,64,0,0),l[r+3976>>0]=0,n=r+20|0,t=n+32|0;do g[n>>1]=0,n=n+2|0;while((n|0)<(t|0));n=_(44)|0,F0(n,256,0,0),e[r+896>>2]=n,n=_(44)|0,F0(n,256,0,0),e[r+900>>2]=n,n=r+820|0,e[n>>2]=0,e[n+4>>2]=0,e[n+8>>2]=0,e[n+12>>2]=0,e[n+16>>2]=0,e[n+20>>2]=0,e[n+24>>2]=0,e[n+28>>2]=0,n=0;do t=_(44)|0,F0(t,256,0,0),e[r+904+(n<<2)>>2]=t,t=_(44)|0,F0(t,256,0,0),e[r+1928+(n<<2)>>2]=t,t=_(44)|0,F0(t,256,0,0),e[r+2952+(n<<2)>>2]=t,n=n+1|0;while(n>>>0<256)}function vc(r){r=r|0,j0(r,16,4,8,0),j0(r+80|0,16,1,8,0),j0(r+160|0,32,2,8,0),j0(r+240|0,32,22,8,0),j0(r+320|0,32,20,8,0)}function yc(r){r=r|0,z0(r,16,4,8,0),z0(r+80|0,16,1,8,0),z0(r+160|0,32,2,8,0),z0(r+240|0,32,22,8,0),z0(r+320|0,32,20,8,0)}function Zc(r){r=r|0,C0(r+320|0),C0(r+240|0),C0(r+160|0),C0(r+80|0),C0(r)}function Rc(r){r=r|0;var n=0,t=0;n=e[r+896>>2]|0,n|0&&(p0(n),x(n)),n=e[r+900>>2]|0,n|0&&(p0(n),x(n)),t=0;do n=e[r+904+(t<<2)>>2]|0,n|0&&(p0(n),x(n)),n=e[r+1928+(t<<2)>>2]|0,n|0&&(p0(n),x(n)),n=e[r+2952+(t<<2)>>2]|0,n|0&&(p0(n),x(n)),t=t+1|0;while((t|0)!=256);p0(r+852|0)}function mi(r){r=r|0;var n=0;l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0,n=r+4|0,l[n>>0]=0,l[n+1>>0]=0,l[n+2>>0]=0,l[n+3>>0]=0,r=r+12|0,n=r,l[n>>0]=0,l[n+1>>0]=0,l[n+2>>0]=0,l[n+3>>0]=0,r=r+4|0,l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0}function pi(r){r=r|0;var n=0;n=r+384|0;do Vc(r),r=r+24|0;while((r|0)!=(n|0))}function Vc(r){r=r|0,Fc(r)}function Fc(r){r=r|0,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=0,e[r+16>>2]=0,l[r+20>>0]=1}function j0(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0;e[r+4>>2]=n,e[r+8>>2]=t,e[r+12>>2]=i,e[r+16>>2]=A,e[r+36>>2]=0,e[r+40>>2]=0,e[r+44>>2]=0,$t(r+48|0),e[r+68>>2]=0,e[r+72>>2]=0,e[r+76>>2]=0;do if(A){for(i=r+20|0,e[i>>2]=0,e[r+24>>2]=A,t=A,o=0;t=t>>>1,n=o+1|0,t;)o=n;e[i>>2]=(1<<o|0)==(A|0)?o:n,t=A>>>1,e[r+28>>2]=0-t,t=A+-1-t|0}else if(t=r+20|0,(n+-1|0)>>>0<31){e[t>>2]=n,A=1<<n,e[r+24>>2]=A,t=A>>>1,e[r+28>>2]=0-t,t=A+-1-t|0;break}else{e[t>>2]=32,e[r+24>>2]=0,e[r+28>>2]=-2147483648,t=2147483647;break}while(0);e[r+32>>2]=t,e[r>>2]=0}function C0(r){r=r|0;var n=0,t=0,i=0,A=0,o=0;if(o=r+36|0,t=e[o>>2]|0,i=r+40|0,n=e[i>>2]|0,(n|0)!=(t|0))do n=n+-44|0,p0(n);while((n|0)!=(t|0));if(e[i>>2]=t,i=r+68|0,A=e[i>>2]|0,t=r+72|0,n=e[t>>2]|0,(n|0)!=(A|0))do n=n+-44|0,p0(n);while((n|0)!=(A|0));e[t>>2]=A,ie(i),ie(o)}function Tr(r){r=r|0,wc(r+4380|0),Zc(r+3980|0),Rc(r)}function wc(r){r=r|0,B0(r+320|0),B0(r+240|0),B0(r+160|0),B0(r+80|0),B0(r)}function Gr(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0;if(v=s,s=s+32|0,h=v,i=r+4781|0,l[i>>0]|0||(kc(r+4380|0),l[i>>0]=1),i=r+3976|0,l[i>>0]|0)u=w0(n,r+852|0)|0,u?(u&32|0&&yi((w0(n,e[r+904+(((vi(r)|0)&255)<<2)>>2]|0)|0)&255,r),c=r+14|0,o=l[c>>0]|0,i=o&7,o=(o&255)>>>3&7,A=Z[16+(o<<3)+i>>0]|0,i=Z[80+(o<<3)+i>>0]|0,u&16?(y=r+20+(A<<1)|0,f=(X0(r+4380|0,n,G[y>>1]|0,A>>>0<3?A:3)|0)&65535,g[y>>1]=f):f=g[r+20+(A<<1)>>1]|0,g[r+12>>1]=f,u&8|0&&(y=r+15|0,l[y>>0]=w0(n,e[r+1928+(Z[y>>0]<<2)>>2]|0)|0),u&4|0&&(c=w0(n,e[r+896+(((Z[c>>0]|0)>>>6&1)<<2)>>2]|0)|0,y=r+16|0,l[y>>0]=B2(c+(l[y>>0]|0)|0)|0),u&2|0&&(y=r+17|0,l[y>>0]=w0(n,e[r+2952+(Z[y>>0]<<2)>>2]|0)|0),u&1&&(y=r+18|0,g[y>>1]=X0(r+4460|0,n,G[y>>1]|0,0)|0)):(y=l[r+14>>0]|0,i=y&7,y=(y&255)>>>3&7,o=y,A=Z[16+(y<<3)+i>>0]|0,i=Z[80+(y<<3)+i>>0]|0),f=r+52+(A*24|0)|0,u=r+4540|0,c=(o|0)==1&1,o=X0(u,n,Zi(f)|0,c)|0,e[h>>2]=o,e[r>>2]=(e[r>>2]|0)+o,Ri(f,h),f=r+436+(A*24|0)|0,o=Zi(f)|0,A=mn(u)|0,y=r+4620|0,A=X0(y,n,o,(A>>>0<20?A&-2:20)|c)|0,e[h>>2]=A,o=r+4|0,e[o>>2]=(e[o>>2]|0)+A,Ri(f,h),h=mn(u)|0,h=(mn(y)|0)+h|0,y=r+820+(i<<2)|0,h=X0(r+4700|0,n,e[y>>2]|0,(h>>>0<36?h>>>1&2147483646:18)|c)|0,e[r+8>>2]=h,e[y>>2]=h,Xc(r,t);else{l[i>>0]=1,ue(fe(n)|0,t,20),Wc(h,t),o=r,i=h,A=o+20|0;do l[o>>0]=l[i>>0]|0,o=o+1|0,i=i+1|0;while((o|0)<(A|0));g[r+12>>1]=0}return s=v,t+20|0}function kc(r){r=r|0,M0(r),M0(r+80|0),M0(r+160|0),M0(r+240|0),M0(r+320|0)}function fe(r){return r=r|0,e[r>>2]|0}function ue(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0;if(c=r+4|0,i=e[c>>2]|0,u=(e[r+8>>2]|0)-i|0,u=u>>>0>t>>>0?t:u,f=r+12|0,A=(e[f>>2]|0)+i|0,o=A+u|0,u){for(i=A,A=n;l[A>>0]=l[i>>0]|0,i=i+1|0,(i|0)!=(o|0);)A=A+1|0;i=e[c>>2]|0}if(e[c>>2]=i+u,t=t-u|0,t|0){for(qt(r),A=(e[f>>2]|0)+(e[c>>2]|0)|0,o=A+t|0,i=n+u|0;l[i>>0]=l[A>>0]|0,A=A+1|0,(A|0)!=(o|0);)i=i+1|0;e[c>>2]=(e[c>>2]|0)+t}}function Wc(r,n){r=r|0,n=n|0,mi(r),e[r>>2]=le(n)|0,e[r+4>>2]=le(n+4|0)|0,e[r+8>>2]=le(n+8|0)|0,g[r+12>>1]=J2(n+12|0)|0,yi(pn(n+14|0)|0,r),l[r+15>>0]=pn(n+15|0)|0,l[r+16>>0]=Vi(n+16|0)|0,l[r+17>>0]=Vi(n+17|0)|0,g[r+18>>1]=J2(n+18|0)|0}function vi(r){return r=r|0,l[r+14>>0]|0}function yi(r,n){r=r|0,n=n|0,l[n+14>>0]=r}function B2(r){return r=r|0,r&255|0}function Zi(r){return r=r|0,e[r+8>>2]|0}function Ri(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;c=r+20|0;do if(l[c>>0]|0){if(A=e[n>>2]|0,f=r+8|0,t=e[f>>2]|0,o=r+12|0,i=e[o>>2]|0,(A|0)>=(t|0)){t=r+16|0,(A|0)<(i|0)?(e[t>>2]=i,e[o>>2]=e[n>>2]):e[t>>2]=A,l[c>>0]=0;break}if(e[r+16>>2]=i,e[o>>2]=t,t=e[n>>2]|0,i=e[r>>2]|0,A=r+4|0,o=e[A>>2]|0,(t|0)<(i|0)){e[f>>2]=o,e[A>>2]=i,e[r>>2]=e[n>>2];break}if((t|0)<(o|0)){e[f>>2]=o,e[A>>2]=e[n>>2];break}else{e[f>>2]=t;break}}else{if(u=r+8|0,t=e[u>>2]|0,i=e[n>>2]|0,A=r+4|0,o=e[A>>2]|0,(t|0)>=(i|0)){(o|0)<(i|0)?(e[r>>2]=o,e[A>>2]=e[n>>2]):e[r>>2]=i,l[c>>0]=1;break}if(e[r>>2]=o,e[A>>2]=t,A=r+16|0,o=e[A>>2]|0,f=e[n>>2]|0,t=r+12|0,i=e[t>>2]|0,(o|0)<(f|0)){e[u>>2]=i,e[t>>2]=o,e[A>>2]=e[n>>2];break}if((i|0)<(f|0)){e[u>>2]=i,e[t>>2]=e[n>>2];break}else{e[u>>2]=f;break}}while(0)}function mn(r){return r=r|0,e[r>>2]|0}function Xc(r,n){r=r|0,n=n|0;var t=0;se(Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24,n),t=r+4|0,se(Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,n+4|0),t=r+8|0,se(Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,n+8|0),t=r+12|0,Y2(Z[t>>0]|Z[t+1>>0]<<8,n+12|0),vn(vi(r)|0,n+14|0),vn(l[r+15>>0]|0,n+15|0),Fi(l[r+16>>0]|0,n+16|0),Fi(l[r+17>>0]|0,n+17|0),r=r+18|0,Y2(Z[r>>0]|Z[r+1>>0]<<8,n+18|0)}function le(r){return r=r|0,ce(r)|0}function J2(r){return r=r|0,(l[r+1>>0]<<8|Z[r>>0])&65535|0}function pn(r){return r=r|0,l[r>>0]|0}function Vi(r){return r=r|0,l[r>>0]|0}function ce(r){return r=r|0,(Z[r+1>>0]|0)<<8|(Z[r>>0]|0)|(Z[r+2>>0]|0)<<16|(Z[r+3>>0]|0)<<24|0}function se(r,n){r=r|0,n=n|0,he(r,n)}function Y2(r,n){r=r|0,n=n|0,l[n+1>>0]=(r&65535)>>>8,l[n>>0]=r}function vn(r,n){r=r|0,n=n|0,l[n>>0]=r}function Fi(r,n){r=r|0,n=n|0,l[n>>0]=r}function he(r,n){r=r|0,n=n|0,l[n+3>>0]=r>>>24,l[n+2>>0]=r>>>16,l[n+1>>0]=r>>>8,l[n>>0]=r}function t2(r,n){r=r|0,n=n|0}function dc(r){r=r|0,Z0(r),x(r)}function gc(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function Uc(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==9202?r+12|0:0)|0}function Tc(r){r=r|0,D(r,16)}function Gc(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=4768,e[r+4>>2]=n,yn(r+8|0)}function Nc(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4792,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function yn(r){r=r|0,Bc(r),Jc(r+164|0),Yc(r+244|0),l[r+324>>0]=0,l[r+325>>0]=0}function wi(r){r=r|0,e[r>>2]=4768,Zn(r+8|0),S0(r)}function zc(r){r=r|0,wi(r),x(r)}function Mc(r,n){return r=r|0,n=n|0,Nr(r+8|0,e[r+4>>2]|0,n)|0}function Bc(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0;for(o=s,s=s+16|0,i=o,l[r>>0]=0,F0(r+4|0,516,0,0),F0(r+48|0,6,0,0),e[r+92>>2]=0,e[r+96>>2]=0,t=r+100|0,Ec(t),ki(i),A=e[i>>2]|0,i=e[i+4>>2]|0,n=4;f=t,u=f,l[u>>0]=A,l[u+1>>0]=A>>8,l[u+2>>0]=A>>16,l[u+3>>0]=A>>24,f=f+4|0,l[f>>0]=i,l[f+1>>0]=i>>8,l[f+2>>0]=i>>16,l[f+3>>0]=i>>24,n=n+-1|0,n;)t=t+8|0;u=r+132|0,e[u>>2]=0,e[u+4>>2]=0,e[u+8>>2]=0,e[u+12>>2]=0,e[u+16>>2]=0,e[u+20>>2]=0,e[u+24>>2]=0,e[u+28>>2]=0,s=o}function Jc(r){r=r|0,j0(r,32,9,8,0)}function Yc(r){r=r|0,z0(r,32,9,8,0)}function xc(r){r=r|0,C0(r)}function _c(r){r=r|0,p0(r+48|0),p0(r+4|0)}function Ec(r){r=r|0;var n=0;n=r+32|0;do ki(r),r=r+8|0;while((r|0)!=(n|0))}function ki(r){r=r|0;var n=0;n=r,l[n>>0]=0,l[n+1>>0]=0,l[n+2>>0]=0,l[n+3>>0]=0,r=r+4|0,l[r>>0]=0,l[r+1>>0]=0,l[r+2>>0]=0,l[r+3>>0]=0}function Zn(r){r=r|0,Sc(r+244|0),xc(r+164|0),_c(r)}function Sc(r){r=r|0,B0(r)}function Nr(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0;if(i=r+325|0,l[i>>0]|0||(jc(r+244|0),l[i>>0]=1),!(l[r>>0]|0))l[r>>0]=1,ue(fe(n)|0,t,8),o=Cc(t)|0,f=r0()|0,r=r+100|0,n=r,l[n>>0]=o,l[n+1>>0]=o>>8,l[n+2>>0]=o>>16,l[n+3>>0]=o>>24,r=r+4|0,l[r>>0]=f,l[r+1>>0]=f>>8,l[r+2>>0]=f>>16,l[r+3>>0]=f>>24;else{f=r+92|0;r:do if(e[r+132+(e[f>>2]<<2)>>2]|0){if(o=w0(n,r+4|0)|0,(o|0)==1){i=X0(r+244|0,n,e[r+132+(e[f>>2]<<2)>>2]|0,1)|0,u=e[f>>2]|0,n=r+100+(u<<3)|0,o=n,A=o,o=o+4|0,i=O0(Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0,Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24|0,i|0,((i|0)<0)<<31>>31|0)|0,o=r0()|0,A=n,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,n=n+4|0,l[n>>0]=o,l[n+1>>0]=o>>8,l[n+2>>0]=o>>16,l[n+3>>0]=o>>24,e[r+148+(u<<2)>>2]=0;break}if((o|0)>=511){if((o|0)==512){u=r+96|0,e[u>>2]=(e[u>>2]|0)+1&3,o=r+100+(e[f>>2]<<3)+4|0,o=X0(r+244|0,n,Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24,8)|0,i=r+100+(e[u>>2]<<3)|0,A=i,l[A>>0]=0,l[A+1>>0]=0,l[A+2>>0]=0,l[A+3>>0]=0,i=i+4|0,l[i>>0]=o,l[i+1>>0]=o>>8,l[i+2>>0]=o>>16,l[i+3>>0]=o>>24,i=Wi(n)|0,u=e[u>>2]|0,n=r+100+(u<<3)|0,o=n,A=o,o=o+4|0,o=Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24,i=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|i,A=n,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,n=n+4|0,l[n>>0]=o,l[n+1>>0]=o>>8,l[n+2>>0]=o>>16,l[n+3>>0]=o>>24,e[f>>2]=u,e[r+132+(u<<2)>>2]=0,e[r+148+(e[f>>2]<<2)>>2]=0;break}if((o|0)<=511)break;e[f>>2]=(e[f>>2]|0)+o&3,Nr(r,n,t)|0;break}do if(!o)i=X0(r+244|0,n,0,7)|0,A=r+148+(e[f>>2]<<2)|0,e[A>>2]=(e[A>>2]|0)+1,A=e[f>>2]|0,(e[r+148+(A<<2)>>2]|0)>3&&(e[r+132+(A<<2)>>2]=i,e[r+148+(e[f>>2]<<2)>>2]=0);else{if((o|0)<500)if(i=r+244|0,A=L(e[r+132+(e[f>>2]<<2)>>2]|0,o)|0,(o|0)<10){i=X0(i,n,A,2)|0;break}else{i=X0(i,n,A,3)|0;break}if((o|0)==500){if(i=X0(r+244|0,n,(e[r+132+(e[f>>2]<<2)>>2]|0)*500|0,4)|0,A=r+148+(e[f>>2]<<2)|0,e[A>>2]=(e[A>>2]|0)+1,A=e[f>>2]|0,(e[r+148+(A<<2)>>2]|0)<=3)break;e[r+132+(A<<2)>>2]=i,e[r+148+(e[f>>2]<<2)>>2]=0;break}if(i=500-o|0,A=r+244|0,o=e[r+132+(e[f>>2]<<2)>>2]|0,(i|0)>-10){i=X0(A,n,L(o,i)|0,5)|0;break}i=X0(A,n,L(o,-10)|0,6)|0,A=r+148+(e[f>>2]<<2)|0,e[A>>2]=(e[A>>2]|0)+1,A=e[f>>2]|0,(e[r+148+(A<<2)>>2]|0)>3&&(e[r+132+(A<<2)>>2]=i,e[r+148+(e[f>>2]<<2)>>2]=0)}while(0);u=r+100+(e[f>>2]<<3)|0,A=u,n=A,A=A+4|0,A=O0(Z[n>>0]|Z[n+1>>0]<<8|Z[n+2>>0]<<16|Z[n+3>>0]<<24|0,Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0,i|0,((i|0)<0)<<31>>31|0)|0,n=r0()|0,o=u,l[o>>0]=A,l[o+1>>0]=A>>8,l[o+2>>0]=A>>16,l[o+3>>0]=A>>24,u=u+4|0,l[u>>0]=n,l[u+1>>0]=n>>8,l[u+2>>0]=n>>16,l[u+3>>0]=n>>24}else switch(i=w0(n,r+48|0)|0,i|0){case 1:{n=X0(r+244|0,n,0,0)|0,e[r+132+(e[f>>2]<<2)>>2]=n,n=e[f>>2]|0,u=e[r+132+(n<<2)>>2]|0,o=r+100+(n<<3)|0,A=o,i=A,A=A+4|0,u=O0(Z[i>>0]|Z[i+1>>0]<<8|Z[i+2>>0]<<16|Z[i+3>>0]<<24|0,Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|0,u|0,((u|0)<0)<<31>>31|0)|0,A=r0()|0,i=o,l[i>>0]=u,l[i+1>>0]=u>>8,l[i+2>>0]=u>>16,l[i+3>>0]=u>>24,o=o+4|0,l[o>>0]=A,l[o+1>>0]=A>>8,l[o+2>>0]=A>>16,l[o+3>>0]=A>>24,e[r+148+(n<<2)>>2]=0;break r}case 2:{u=r+96|0,e[u>>2]=(e[u>>2]|0)+1&3,o=r+100+(e[f>>2]<<3)+4|0,o=X0(r+244|0,n,Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24,8)|0,i=r+100+(e[u>>2]<<3)|0,A=i,l[A>>0]=0,l[A+1>>0]=0,l[A+2>>0]=0,l[A+3>>0]=0,i=i+4|0,l[i>>0]=o,l[i+1>>0]=o>>8,l[i+2>>0]=o>>16,l[i+3>>0]=o>>24,i=Wi(n)|0,u=e[u>>2]|0,n=r+100+(u<<3)|0,o=n,A=o,o=o+4|0,o=Z[o>>0]|Z[o+1>>0]<<8|Z[o+2>>0]<<16|Z[o+3>>0]<<24,i=Z[A>>0]|Z[A+1>>0]<<8|Z[A+2>>0]<<16|Z[A+3>>0]<<24|i,A=n,l[A>>0]=i,l[A+1>>0]=i>>8,l[A+2>>0]=i>>16,l[A+3>>0]=i>>24,n=n+4|0,l[n>>0]=o,l[n+1>>0]=o>>8,l[n+2>>0]=o>>16,l[n+3>>0]=o>>24,e[f>>2]=u,e[r+132+(u<<2)>>2]=0,e[r+148+(e[f>>2]<<2)>>2]=0;break r}default:{if((i|0)<=2)break r;e[f>>2]=i+2+(e[f>>2]|0)&3,Nr(r,n,t)|0;break r}}while(0);Oc(r+100+(e[f>>2]<<3)|0,t)}return t+8|0}function jc(r){r=r|0,M0(r)}function Cc(r){r=r|0;var n=0,t=0,i=0;return n=s,s=s+16|0,t=n,i=ce(r)|0,Ic(t,i,ce(r+4|0)|0),r=e[t>>2]|0,f0(e[t+4>>2]|0),s=n,r|0}function Wi(r){r=r|0;var n=0;return n=(hn(r)|0)&65535,((hn(r)|0)&65535)<<16|n|0}function Oc(r,n){r=r|0,n=n|0;var t=0;t=r,he(Z[t>>0]|Z[t+1>>0]<<8|Z[t+2>>0]<<16|Z[t+3>>0]<<24,n),r=r+4|0,he(Z[r>>0]|Z[r+1>>0]<<8|Z[r+2>>0]<<16|Z[r+3>>0]<<24,n+4|0)}function Ic(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;i=r,l[i>>0]=n,l[i+1>>0]=n>>8,l[i+2>>0]=n>>16,l[i+3>>0]=n>>24,n=r+4|0,l[n>>0]=t,l[n+1>>0]=t>>8,l[n+2>>0]=t>>16,l[n+3>>0]=t>>24}function ac(r){r=r|0,Z0(r),x(r)}function Hc(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function Qc(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==9890?r+12|0:0)|0}function Dc(r){r=r|0,D(r,16)}function Pc(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=4820,e[r+4>>2]=n,Xi(r+8|0)}function Lc(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4844,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function Xi(r){r=r|0,l[r>>0]=0,gi(r+1|0),F0(r+8|0,128,0,0),F0(r+52|0,256,0,0),F0(r+96|0,256,0,0),F0(r+140|0,256,0,0),F0(r+184|0,256,0,0),F0(r+228|0,256,0,0),F0(r+272|0,256,0,0)}function di(r){r=r|0,e[r>>2]=4820,Ui(r+8|0),S0(r)}function $c(r){r=r|0,di(r),x(r)}function qc(r,n){return r=r|0,n=n|0,Ti(r+8|0,e[r+4>>2]|0,n)|0}function gi(r){r=r|0;var n=0;l[r>>0]=0,l[r+1>>0]=0,n=r+2|0,l[n>>0]=0,l[n+1>>0]=0,r=r+4|0,l[r>>0]=0,l[r+1>>0]=0}function Ui(r){r=r|0,p0(r+272|0),p0(r+228|0),p0(r+184|0),p0(r+140|0),p0(r+96|0),p0(r+52|0),p0(r+8|0)}function Ti(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0;if(v=s,s=s+16|0,c=v,!(l[r>>0]|0))l[r>>0]=1,ue(fe(n)|0,t,6),Kc(c,t),h=r+1|0,l[h>>0]=l[c>>0]|0,l[h+1>>0]=l[c+1>>0]|0,l[h+2>>0]=l[c+2>>0]|0,l[h+3>>0]=l[c+3>>0]|0,l[h+4>>0]=l[c+4>>0]|0,l[h+5>>0]=l[c+5>>0]|0;else{h=w0(n,r+8|0)|0,gi(c),h&1?(u=(w0(n,r+52|0)|0)&255,i=r+1|0,i=(B2(u+((Z[i>>0]|Z[i+1>>0]<<8)&255)|0)|0)&255):(i=r+1|0,i=(Z[i>>0]|Z[i+1>>0]<<8)&255),g[c>>1]=i,h&2?(i=(w0(n,r+96|0)|0)&255,u=r+1|0,i=((B2((((Z[u>>0]|Z[u+1>>0]<<8)&65535)>>>8)+i|0)|0)&255)<<8,i=(i|G[c>>1])&65535):(u=r+1|0,i=i|(Z[u>>0]|Z[u+1>>0]<<8)&-256),g[c>>1]=i;do if(h&64)if(f=r+1|0,A=(i&255)-((Z[f>>0]|Z[f+1>>0]<<8)&255)|0,h&4?(i=(w0(n,r+140|0)|0)&255,u=r+3|0,u=A+((Z[u>>0]|Z[u+1>>0]<<8)&255)|0,i=(B2(((u|0)<1?0:(u|0)>254?255:u&255)+i|0)|0)&255):(i=r+3|0,i=(Z[i>>0]|Z[i+1>>0]<<8)&255),u=c+2|0,g[u>>1]=i,h&16?(i=w0(n,r+228|0)|0,y=r+3|0,o=r+5|0,o=((A+(g[u>>1]&255)-((Z[y>>0]|Z[y+1>>0]<<8)&255)|0)/2|0)+((Z[o>>0]|Z[o+1>>0]<<8)&255)|0,i=(B2(((o|0)<1?0:(o|0)>254?255:o&255)+(i&255)|0)|0)&255):(i=r+5|0,i=(Z[i>>0]|Z[i+1>>0]<<8)&255),o=c+4|0,g[o>>1]=i,i=((G[c>>1]|0)>>>8)-(((Z[f>>0]|Z[f+1>>0]<<8)&65535)>>>8)|0,h&8?(A=(w0(n,r+184|0)|0)&255,y=r+3|0,y=(((Z[y>>0]|Z[y+1>>0]<<8)&65535)>>>8)+i|0,A=((B2(((y|0)<1?0:(y|0)>254?255:y&255)+A|0)|0)&255)<<8,A=(A|G[u>>1])&65535):(A=r+3|0,A=g[u>>1]|(Z[A>>0]|Z[A+1>>0]<<8)&-256),g[u>>1]=A,h&32){y=w0(n,r+272|0)|0,n=r+3|0,h=r+5|0,h=((((G[u>>1]|0)>>>8)+i-(((Z[n>>0]|Z[n+1>>0]<<8)&65535)>>>8)|0)/2|0)+(((Z[h>>0]|Z[h+1>>0]<<8)&65535)>>>8)|0,y=((B2(((h|0)<1?0:(h|0)>254?255:h&255)+(y&255)|0)|0)&255)<<8,g[o>>1]=y|G[o>>1];break}else{y=r+5|0,g[o>>1]=g[o>>1]|(Z[y>>0]|Z[y+1>>0]<<8)&-256;break}else g[c+2>>1]=i,g[c+4>>1]=i;while(0);y=r+1|0,l[y>>0]=l[c>>0]|0,l[y+1>>0]=l[c+1>>0]|0,l[y+2>>0]=l[c+2>>0]|0,l[y+3>>0]=l[c+3>>0]|0,l[y+4>>0]=l[c+4>>0]|0,l[y+5>>0]=l[c+5>>0]|0,bc(y,t)}return s=v,t+6|0}function Kc(r,n){r=r|0,n=n|0;var t=0,i=0;i=J2(n)|0,t=J2(n+2|0)|0,r4(r,i,t,J2(n+4|0)|0)}function bc(r,n){r=r|0,n=n|0;var t=0;Y2(Z[r>>0]|Z[r+1>>0]<<8,n),t=r+2|0,Y2(Z[t>>0]|Z[t+1>>0]<<8,n+2|0),r=r+4|0,Y2(Z[r>>0]|Z[r+1>>0]<<8,n+4|0)}function r4(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0,l[r>>0]=n,l[r+1>>0]=n>>8,n=r+2|0,l[n>>0]=t,l[n+1>>0]=t>>8,t=r+4|0,l[t>>0]=i,l[t+1>>0]=i>>8}function e4(r){r=r|0,Z0(r),x(r)}function n4(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function t4(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==10570?r+12|0:0)|0}function i4(r){r=r|0,D(r,16)}function A4(r,n,t){r=r|0,n=n|0,t=t|0,n2(r),e[r>>2]=4872,e[r+4>>2]=n,f4(r+8|0,t)}function o4(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4896,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function f4(r,n){r=r|0,n=n|0,e[r>>2]=e[n>>2],l[r+4>>0]=l[n+4>>0]|0,Ni(r+8|0,n+8|0),Ni(r+20|0,n+20|0),c4(r+32|0,n+32|0)}function Gi(r){r=r|0,e[r>>2]=4872,fi(r+8|0),S0(r)}function u4(r){r=r|0,Gi(r),x(r)}function l4(r,n){return r=r|0,n=n|0,d4(r+8|0,e[r+4>>2]|0,n)|0}function Ni(r,n){r=r|0,n=n|0;var t=0,i=0;e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,t=n+4|0,i=(e[t>>2]|0)-(e[n>>2]|0)|0,i|0&&(zi(r,i),s4(r,e[n>>2]|0,e[t>>2]|0,i))}function c4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;t=s,s=s+32|0,i=t+24|0,A=t+16|0,f=t+8|0,o=t,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=0,e[r+16>>2]=0,e[r+20>>2]=0,k4(f,n),W4(o,n),e[A>>2]=e[f>>2],e[A+4>>2]=e[f+4>>2],e[i>>2]=e[o>>2],e[i+4>>2]=e[o+4>>2],m4(r,A,i,0),s=t}function zi(r,n){r=r|0,n=n|0;var t=0;if((h4(r)|0)>>>0<n>>>0)d0(r);else{t=_(n)|0,e[r+4>>2]=t,e[r>>2]=t,e[r+8>>2]=t+n;return}}function s4(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;o=s,s=s+16|0,A=o,Bi(A,r,i),i=A+4|0,r=t-n|0,(r|0)>0&&(x0(e[i>>2]|0,n|0,r|0)|0,e[i>>2]=(e[i>>2]|0)+r),Ji(A),s=o}function Mi(r){r=r|0;var n=0,t=0;n=e[r>>2]|0,t=n,n|0&&(e[r+4>>2]=t,D(n,(e[r+8>>2]|0)-t|0))}function h4(r){return r=r|0,2147483647}function Bi(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,n=e[n+4>>2]|0,e[r+4>>2]=n,e[r+8>>2]=n+t}function Ji(r){r=r|0,e[(e[r>>2]|0)+4>>2]=e[r+4>>2]}function m4(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;if(k=s,s=s+96|0,X=k+80|0,y=k+64|0,c=k+48|0,h=k+40|0,v=k+8|0,u=k,F=k+32|0,W=k+16|0,f=n,o=e[f>>2]|0,f=e[f+4>>2]|0,A=t,t=e[A>>2]|0,A=e[A+4>>2]|0,i=o,(A|0)==(f|0)?f=0:f=((A-(e[t>>2]|0)|0)/44|0)+((t-o>>2)*93|0)+((f-(e[o>>2]|0)|0)/-44|0)|0,t=(e[r+8>>2]|0)-(e[r+4>>2]|0)|0,t=(t|0?((t>>2)*93|0)+-1|0:0)-((e[r+20>>2]|0)+(e[r+16>>2]|0))|0,f>>>0>t>>>0&&Yi(r,f-t|0),zr(h,r),zr(u,r),A=u,t=e[A>>2]|0,A=e[A+4>>2]|0,o=v,e[o>>2]=t,e[o+4>>2]=A,o=t,f|0&&(t=((A-(e[t>>2]|0)|0)/44|0)+f|0,(t|0)>0?(u=(t>>>0)/93|0,f=o+(u<<2)|0,e[v>>2]=f,t=(e[f>>2]|0)+((t-(u*93|0)|0)*44|0)|0):(t=92-t|0,u=o+(((t|0)/-93|0)<<2)|0,e[v>>2]=u,t=(e[u>>2]|0)+((92-((t|0)%93|0)|0)*44|0)|0),e[v+4>>2]=t),e[y>>2]=e[h>>2],e[y+4>>2]=e[h+4>>2],e[X>>2]=e[v>>2],e[X+4>>2]=e[v+4>>2],Rn(c,y,X),xi(X,c),_i(y,c),me(X,y)|0){o=W+4|0,f=n+4|0;do{if(Ei(F,X),Si(W,r,F),t=e[W>>2]|0,(t|0)!=(e[o>>2]|0)){A=e[f>>2]|0;do cn(t,A),t=(e[W>>2]|0)+44|0,e[W>>2]=t,A=A+44|0,e[f>>2]=A,(A-(e[i>>2]|0)|0)==4092&&(i=i+4|0,e[n>>2]=i,A=e[i>>2]|0,e[f>>2]=A);while((t|0)!=(e[o>>2]|0))}ji(W),Ci(X)|0}while(me(X,y)|0)}s=k}function p4(r){r=r|0;var n=0,t=0,i=0;n=e[r+4>>2]|0,t=r+8|0,i=e[t>>2]|0,(i|0)!=(n|0)&&(e[t>>2]=i+(~((i+-4-n|0)>>>2)<<2)),n=e[r>>2]|0,n|0&&D(n,(e[r+12>>2]|0)-n|0)}function Yi(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,z=0,S=0,U=0,e0=0,s0=0,n0=0,H=0,c0=0,O=0;c0=s,s=s+64|0,S=c0+52|0,z=c0+48|0,U=c0+28|0,e0=c0+24|0,s0=c0+20|0,X=c0,n0=r+8|0,t=e[n0>>2]|0,H=r+4|0,c=e[H>>2]|0,C=((t|0)==(c|0)&1)+n|0,f=(C>>>0)/93|0,f=f+((C-(f*93|0)|0)!=0&1)|0,C=r+16|0,i=e[C>>2]|0,u=(i>>>0)/93|0,k=f>>>0<u>>>0?f:u,n=f-k|0,o=t;r:do if(n)if(B=r+12|0,i=e[B>>2]|0,A=i-(e[r>>2]|0)|0,t=o-c>>2,n>>>0>((A>>2)-t|0)>>>0){W=A>>1,F=t+n|0,V2(X,W>>>0<F>>>0?F:W,t-k|0,r+12|0);do e[S>>2]=_(4092)|0,Z4(X,S),n=n+-1|0;while(n|0);if(!k)t=e[H>>2]|0;else{u=X+8|0,c=X+12|0,h=X+4|0,v=X+16|0,y=U+4|0,F=U+8|0,W=U+12|0,f=k,n=e[u>>2]|0,t=e[H>>2]|0;do{o=e[c>>2]|0,i=o;do if((n|0)==(o|0)){if(A=e[h>>2]|0,o=e[X>>2]|0,n=o,A>>>0<=o>>>0){n=i-n|0,n=n|0?n>>1:1,V2(U,n,n>>>2,e[v>>2]|0),e[e0>>2]=e[h>>2],e[s0>>2]=e[u>>2],e[z>>2]=e[e0>>2],e[S>>2]=e[s0>>2],x2(U,z,S),n=e[X>>2]|0,e[X>>2]=e[U>>2],e[U>>2]=n,n=e[h>>2]|0,e[h>>2]=e[y>>2],e[y>>2]=n,n=e[u>>2]|0,e[u>>2]=e[F>>2],e[F>>2]=n,n=e[c>>2]|0,e[c>>2]=e[W>>2],e[W>>2]=n,F2(U),n=e[u>>2]|0;break}O=A,n=((O-n>>2)+1|0)/-2|0,o=A+(n<<2)|0,i=i-O|0,i?(I0(o|0,A|0,i|0)|0,n=(e[h>>2]|0)+(n<<2)|0):n=o,O=o+(i>>2<<2)|0,e[u>>2]=O,e[h>>2]=n,n=O}while(0);e[n>>2]=e[t>>2],n=(e[u>>2]|0)+4|0,e[u>>2]=n,t=(e[H>>2]|0)+4|0,e[H>>2]=t,f=f+-1|0}while(f|0)}if(n=e[n0>>2]|0,(n|0)!=(t|0)){do n=n+-4|0,R4(X,n),t=e[H>>2]|0;while((n|0)!=(t|0));n=e[n0>>2]|0}O=e[r>>2]|0,e[r>>2]=e[X>>2],e[X>>2]=O,O=X+4|0,e[H>>2]=e[O>>2],e[O>>2]=t,O=X+8|0,e[n0>>2]=e[O>>2],e[O>>2]=n,O=X+12|0,H=e[B>>2]|0,e[B>>2]=e[O>>2],e[O>>2]=H,e[C>>2]=(e[C>>2]|0)+(L(k,-93)|0),F2(X);break}else{e:do if((i|0)==(o|0))h=18;else{for(;e[S>>2]=_(4092)|0,v4(r,S),n=n+-1|0,!!n;)if((e[B>>2]|0)==(e[n0>>2]|0)){h=18;break e}t=k,n=e[C>>2]|0}while(0);if((h|0)==18){i=~(f>>>0>u>>>0?u:f),t=n;do e[S>>2]=_(4092)|0,y4(r,S),t=t+-1|0,A=(((e[n0>>2]|0)-(e[H>>2]|0)|0)==4?92:93)+(e[C>>2]|0)|0,e[C>>2]=A;while(t|0);t=n+-1-i|0,n=A}if(e[C>>2]=n+(L(t,-93)|0),!t)break;u=r+12|0,c=U+4|0,h=U+8|0,v=U+12|0,n=e[n0>>2]|0;do{o=e[H>>2]|0,f=e[o>>2]|0,o=o+4|0,e[H>>2]=o,O=e[B>>2]|0,i=O;do if((n|0)==(O|0)){if(O=e[r>>2]|0,n=O,o>>>0<=O>>>0){n=i-n|0,n=n|0?n>>1:1,V2(U,n,n>>>2,u),e[e0>>2]=e[H>>2],e[s0>>2]=e[n0>>2],e[z>>2]=e[e0>>2],e[S>>2]=e[s0>>2],x2(U,z,S),n=e[r>>2]|0,e[r>>2]=e[U>>2],e[U>>2]=n,n=e[H>>2]|0,e[H>>2]=e[c>>2],e[c>>2]=n,n=e[n0>>2]|0,e[n0>>2]=e[h>>2],e[h>>2]=n,n=e[B>>2]|0,e[B>>2]=e[v>>2],e[v>>2]=n,F2(U),n=e[n0>>2]|0;break}O=o,n=((O-n>>2)+1|0)/-2|0,A=o+(n<<2)|0,i=i-O|0,i?(I0(A|0,o|0,i|0)|0,n=(e[H>>2]|0)+(n<<2)|0):n=A,O=A+(i>>2<<2)|0,e[n0>>2]=O,e[H>>2]=n,n=O}while(0);e[n>>2]=f,n=(e[n0>>2]|0)+4|0,e[n0>>2]=n,t=t+-1|0}while(t|0)}else if(e[C>>2]=(L(k,-93)|0)+i,k|0)for(u=r+12|0,h=r+12|0,v=U+4|0,y=U+8|0,F=U+12|0,n=k,i=c;;){f=e[i>>2]|0,o=i+4|0,e[H>>2]=o,B=e[u>>2]|0,i=B;do if((t|0)==(B|0)){if(B=e[r>>2]|0,t=B,o>>>0<=B>>>0){t=i-t|0,t=t|0?t>>1:1,V2(U,t,t>>>2,h),e[e0>>2]=e[H>>2],e[s0>>2]=e[n0>>2],e[z>>2]=e[e0>>2],e[S>>2]=e[s0>>2],x2(U,z,S),t=e[r>>2]|0,e[r>>2]=e[U>>2],e[U>>2]=t,t=e[H>>2]|0,e[H>>2]=e[v>>2],e[v>>2]=t,t=e[n0>>2]|0,e[n0>>2]=e[y>>2],e[y>>2]=t,t=e[u>>2]|0,e[u>>2]=e[F>>2],e[F>>2]=t,F2(U),t=e[n0>>2]|0;break}B=o,t=((B-t>>2)+1|0)/-2|0,A=o+(t<<2)|0,i=i-B|0,i?(I0(A|0,o|0,i|0)|0,t=(e[H>>2]|0)+(t<<2)|0):t=A,B=A+(i>>2<<2)|0,e[n0>>2]=B,e[H>>2]=t,t=B}while(0);if(e[t>>2]=f,t=(e[n0>>2]|0)+4|0,e[n0>>2]=t,n=n+-1|0,!n)break r;i=e[H>>2]|0}while(0);s=c0}function zr(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;t=(e[n+16>>2]|0)+(e[n+20>>2]|0)|0,o=e[n+4>>2]|0,i=(t>>>0)/93|0,A=o+(i<<2)|0,(e[n+8>>2]|0)==(o|0)?n=0:n=(e[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,e[r>>2]=A,e[r+4>>2]=n}function Rn(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;A=n,n=e[A+4>>2]|0,i=r,e[i>>2]=e[A>>2],e[i+4>>2]=n,i=t,n=e[i+4>>2]|0,t=r+8|0,e[t>>2]=e[i>>2],e[t+4>>2]=n}function xi(r,n){r=r|0,n=n|0,e[r>>2]=e[n>>2],e[r+4>>2]=e[n+4>>2],e[r+8>>2]=e[n+8>>2],e[r+12>>2]=e[n+12>>2]}function _i(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;t=s,s=s+32|0,i=t+24|0,A=t+16|0,f=t+8|0,o=t,u=n+8|0,c=e[u>>2]|0,u=e[u+4>>2]|0,n=f,e[n>>2]=c,e[n+4>>2]=u,n=o,e[n>>2]=c,e[n+4>>2]=u,e[A>>2]=e[f>>2],e[A+4>>2]=e[f+4>>2],e[i>>2]=e[o>>2],e[i+4>>2]=e[o+4>>2],Rn(r,A,i),s=t}function me(r,n){return r=r|0,n=n|0,(w4(r,n)|0)^1|0}function Ei(r,n){r=r|0,n=n|0;var t=0,i=0;t=e[n>>2]|0,i=e[n+4>>2]|0,(t|0)==(e[n+8>>2]|0)?Oi(r,i,e[n+12>>2]|0):Oi(r,i,(e[t>>2]|0)+4092|0)}function Si(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;i=e[t>>2]|0,e[r>>2]=i,e[r+4>>2]=e[t+4>>2],e[r+8>>2]=i,e[r+12>>2]=n}function ji(r){r=r|0;var n=0;n=(e[r+12>>2]|0)+20|0,e[n>>2]=(e[n>>2]|0)+(((e[r>>2]|0)-(e[r+8>>2]|0)|0)/44|0)}function Ci(r){r=r|0;var n=0,t=0,i=0;return n=e[r>>2]|0,t=r+8|0,(n|0)==(e[t>>2]|0)?(i=t,n=e[i+4>>2]|0,t=r,e[t>>2]=e[i>>2],e[t+4>>2]=n):(i=n+4|0,e[r>>2]=i,e[r+4>>2]=e[i>>2]),r|0}function v4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,A=X+32|0,i=X+28|0,u=X+8|0,c=X+4|0,h=X,W=r+8|0,t=e[W>>2]|0,v=r+12|0,F=e[v>>2]|0,o=F;do if((t|0)==(F|0)){if(F=r+4|0,y=e[F>>2]|0,k=e[r>>2]|0,f=k,y>>>0<=k>>>0){t=o-f|0,t=t|0?t>>1:1,V2(u,t,t>>>2,r+12|0),e[c>>2]=e[F>>2],e[h>>2]=e[W>>2],e[i>>2]=e[c>>2],e[A>>2]=e[h>>2],x2(u,i,A),t=e[r>>2]|0,e[r>>2]=e[u>>2],e[u>>2]=t,t=u+4|0,k=e[F>>2]|0,e[F>>2]=e[t>>2],e[t>>2]=k,t=u+8|0,k=e[W>>2]|0,e[W>>2]=e[t>>2],e[t>>2]=k,t=u+12|0,k=e[v>>2]|0,e[v>>2]=e[t>>2],e[t>>2]=k,F2(u),t=e[W>>2]|0;break}A=y,i=((A-f>>2)+1|0)/-2|0,r=y+(i<<2)|0,A=t-A|0,A?(I0(r|0,y|0,A|0)|0,t=(e[F>>2]|0)+(i<<2)|0):t=r,k=r+(A>>2<<2)|0,e[W>>2]=k,e[F>>2]=t,t=k}while(0);e[t>>2]=e[n>>2],e[W>>2]=(e[W>>2]|0)+4,s=X}function y4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,i=X+32|0,t=X+28|0,f=X+8|0,u=X+4|0,c=X,W=r+4|0,y=e[W>>2]|0,F=e[r>>2]|0,h=F;do if((y|0)==(F|0)){if(F=r+8|0,v=e[F>>2]|0,o=r+12|0,k=e[o>>2]|0,A=k,v>>>0>=k>>>0){k=A-h|0,k=k|0?k>>1:1,V2(f,k,(k+3|0)>>>2,r+12|0),e[u>>2]=e[W>>2],e[c>>2]=e[F>>2],e[t>>2]=e[u>>2],e[i>>2]=e[c>>2],x2(f,t,i),t=e[r>>2]|0,e[r>>2]=e[f>>2],e[f>>2]=t,t=f+4|0,k=e[W>>2]|0,e[W>>2]=e[t>>2],e[t>>2]=k,t=f+8|0,k=e[F>>2]|0,e[F>>2]=e[t>>2],e[t>>2]=k,t=f+12|0,k=e[o>>2]|0,e[o>>2]=e[t>>2],e[t>>2]=k,F2(f),t=e[W>>2]|0;break}i=v,r=((A-i>>2)+1|0)/2|0,A=v+(r<<2)|0,i=i-y|0,t=A+(0-(i>>2)<<2)|0,i?(I0(t|0,y|0,i|0)|0,i=(e[F>>2]|0)+(r<<2)|0):(t=A,i=A),e[W>>2]=t,e[F>>2]=i}else t=y;while(0);e[t+-4>>2]=e[n>>2],e[W>>2]=(e[W>>2]|0)+-4,s=X}function V2(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;A=r+12|0,e[A>>2]=0,e[r+16>>2]=i;do if(n)if(n>>>0>1073741823)A=u0(8)|0,h2(A,6723),e[A>>2]=5956,l0(A|0,3928,123);else{i=_(n<<2)|0;break}else i=0;while(0);e[r>>2]=i,t=i+(t<<2)|0,e[r+8>>2]=t,e[r+4>>2]=t,e[A>>2]=i+(n<<2)}function Z4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,A=X+32|0,i=X+28|0,u=X+8|0,c=X+4|0,h=X,W=r+8|0,t=e[W>>2]|0,v=r+12|0,F=e[v>>2]|0,o=F;do if((t|0)==(F|0)){if(F=r+4|0,y=e[F>>2]|0,k=e[r>>2]|0,f=k,y>>>0<=k>>>0){t=o-f|0,t=t|0?t>>1:1,V2(u,t,t>>>2,e[r+16>>2]|0),e[c>>2]=e[F>>2],e[h>>2]=e[W>>2],e[i>>2]=e[c>>2],e[A>>2]=e[h>>2],x2(u,i,A),t=e[r>>2]|0,e[r>>2]=e[u>>2],e[u>>2]=t,t=u+4|0,k=e[F>>2]|0,e[F>>2]=e[t>>2],e[t>>2]=k,t=u+8|0,k=e[W>>2]|0,e[W>>2]=e[t>>2],e[t>>2]=k,t=u+12|0,k=e[v>>2]|0,e[v>>2]=e[t>>2],e[t>>2]=k,F2(u),t=e[W>>2]|0;break}A=y,i=((A-f>>2)+1|0)/-2|0,r=y+(i<<2)|0,A=t-A|0,A?(I0(r|0,y|0,A|0)|0,t=(e[F>>2]|0)+(i<<2)|0):t=r,k=r+(A>>2<<2)|0,e[W>>2]=k,e[F>>2]=t,t=k}while(0);e[t>>2]=e[n>>2],e[W>>2]=(e[W>>2]|0)+4,s=X}function R4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;X=s,s=s+48|0,i=X+32|0,t=X+28|0,f=X+8|0,u=X+4|0,c=X,W=r+4|0,y=e[W>>2]|0,F=e[r>>2]|0,h=F;do if((y|0)==(F|0)){if(F=r+8|0,v=e[F>>2]|0,o=r+12|0,k=e[o>>2]|0,A=k,v>>>0>=k>>>0){k=A-h|0,k=k|0?k>>1:1,V2(f,k,(k+3|0)>>>2,e[r+16>>2]|0),e[u>>2]=e[W>>2],e[c>>2]=e[F>>2],e[t>>2]=e[u>>2],e[i>>2]=e[c>>2],x2(f,t,i),t=e[r>>2]|0,e[r>>2]=e[f>>2],e[f>>2]=t,t=f+4|0,k=e[W>>2]|0,e[W>>2]=e[t>>2],e[t>>2]=k,t=f+8|0,k=e[F>>2]|0,e[F>>2]=e[t>>2],e[t>>2]=k,t=f+12|0,k=e[o>>2]|0,e[o>>2]=e[t>>2],e[t>>2]=k,F2(f),t=e[W>>2]|0;break}i=v,r=((A-i>>2)+1|0)/2|0,A=v+(r<<2)|0,i=i-y|0,t=A+(0-(i>>2)<<2)|0,i?(I0(t|0,y|0,i|0)|0,i=(e[F>>2]|0)+(r<<2)|0):(t=A,i=A),e[W>>2]=t,e[F>>2]=i}else t=y;while(0);e[t+-4>>2]=e[n>>2],e[W>>2]=(e[W>>2]|0)+-4,s=X}function F2(r){r=r|0;var n=0,t=0,i=0;n=e[r+4>>2]|0,t=r+8|0,i=e[t>>2]|0,(i|0)!=(n|0)&&(e[t>>2]=i+(~((i+-4-n|0)>>>2)<<2)),n=e[r>>2]|0,n|0&&D(n,(e[r+12>>2]|0)-n|0)}function x2(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;if(f=s,s=s+16|0,o=f,A=e[n>>2]|0,V4(o,r+8|0,(e[t>>2]|0)-A>>2),r=e[o>>2]|0,i=o+4|0,(r|0)!=(e[i>>2]|0)){t=A;do e[r>>2]=e[t>>2],r=(e[o>>2]|0)+4|0,e[o>>2]=r,t=t+4|0;while((r|0)!=(e[i>>2]|0));e[n>>2]=t}F4(o),s=f}function V4(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=e[n>>2],e[r+4>>2]=(e[n>>2]|0)+(t<<2),e[r+8>>2]=n}function F4(r){r=r|0,e[e[r+8>>2]>>2]=e[r>>2]}function w4(r,n){return r=r|0,n=n|0,(e[r+4>>2]|0)==(e[n+4>>2]|0)|0}function Oi(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,e[r+4>>2]=t}function k4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;o=e[n+4>>2]|0,t=e[n+16>>2]|0,i=(t>>>0)/93|0,A=o+(i<<2)|0,(e[n+8>>2]|0)==(o|0)?n=0:n=(e[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,e[r>>2]=A,e[r+4>>2]=n}function W4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;t=(e[n+16>>2]|0)+(e[n+20>>2]|0)|0,o=e[n+4>>2]|0,i=(t>>>0)/93|0,A=o+(i<<2)|0,(e[n+8>>2]|0)==(o|0)?n=0:n=(e[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,e[r>>2]=A,e[r+4>>2]=n}function X4(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0;if(u=s,s=s+16|0,i=u+8|0,o=u,Ii(i,r),zr(o,r),A=i+4|0,n=e[A>>2]|0,o=o+4|0,(n|0)!=(e[o>>2]|0))do p0(n),n=(e[A>>2]|0)+44|0,e[A>>2]=n,t=e[i>>2]|0,(n-(e[t>>2]|0)|0)==4092&&(n=t+4|0,e[i>>2]=n,n=e[n>>2]|0,e[A>>2]=n);while((n|0)!=(e[o>>2]|0));if(e[r+20>>2]=0,A=r+8|0,i=r+4|0,t=e[i>>2]|0,n=(e[A>>2]|0)-t>>2,n>>>0>2)do D(e[t>>2]|0,4092),t=(e[i>>2]|0)+4|0,e[i>>2]=t,n=(e[A>>2]|0)-t>>2;while(n>>>0>2);switch(n|0){case 1:{n=46,f=11;break}case 2:{n=93,f=11;break}default:}(f|0)==11&&(e[r+16>>2]=n),s=u}function Ii(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;o=e[n+4>>2]|0,t=e[n+16>>2]|0,i=(t>>>0)/93|0,A=o+(i<<2)|0,(e[n+8>>2]|0)==(o|0)?n=0:n=(e[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,e[r>>2]=A,e[r+4>>2]=n}function d4(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0,h=0;if(h=s,s=s+16|0,c=h,f=r+4|0,l[f>>0]|0){if(A=e[r+20>>2]|0,i=e[r+8>>2]|0,Ii(c,r+32|0),r=r+12|0,(i|0)!=(e[r>>2]|0))for(u=c+4|0,f=i,o=A,i=e[u>>2]|0;A=Z[f>>0]|0,A=g4((w0(n,i)|0)+A|0)|0,l[o>>0]=A,l[t>>0]=A,l[f>>0]=A,f=f+1|0,t=t+1|0,A=e[c>>2]|0,i=(e[u>>2]|0)+44|0,e[u>>2]=i,(i-(e[A>>2]|0)|0)==4092&&(i=A+4|0,e[c>>2]=i,i=e[i>>2]|0,e[u>>2]=i),(f|0)!=(e[r>>2]|0);)o=o+1|0}else{if(c=fe(n)|0,ue(c,t,e[r>>2]|0),c=e[r>>2]|0,o=t+c|0,!c)i=0;else{for(i=t,A=e[r+8>>2]|0;l[A>>0]=l[i>>0]|0,i=i+1|0,(i|0)!=(o|0);)A=A+1|0;i=e[r>>2]|0}l[f>>0]=1,t=t+i|0}return s=h,t|0}function g4(r){return r=r|0,r&255|0}function U4(r){r=r|0,Z0(r),x(r)}function T4(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function G4(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==11262?r+12|0:0)|0}function N4(r){r=r|0,D(r,16)}function ai(r,n){r=r|0,n=n|0,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,n|0&&(zi(r,n),M4(r,n))}function z4(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=0,e[r+16>>2]=0,e[r+20>>2]=0,n|0&&B4(r,n,t)}function M4(r,n){r=r|0,n=n|0;var t=0,i=0,A=0;if(A=s,s=s+16|0,i=A,Bi(i,r,n),n=i+4|0,r=e[n>>2]|0,t=i+8|0,(r|0)!=(e[t>>2]|0))do l[r>>0]=0,r=(e[n>>2]|0)+1|0,e[n>>2]=r;while((r|0)!=(e[t>>2]|0));Ji(i),s=A}function B4(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;if(W=s,s=s+96|0,F=W+80|0,h=W+64|0,f=W+48|0,u=W+40|0,c=W+8|0,A=W,v=W+32|0,y=W+16|0,i=(e[r+8>>2]|0)-(e[r+4>>2]|0)|0,i=(i|0?((i>>2)*93|0)+-1|0:0)-((e[r+20>>2]|0)+(e[r+16>>2]|0))|0,i>>>0<n>>>0&&Yi(r,n-i|0),zr(u,r),zr(A,r),i=e[A>>2]|0,A=e[A+4>>2]|0,o=c,e[o>>2]=i,e[o+4>>2]=A,o=i,n|0&&(i=((A-(e[i>>2]|0)|0)/44|0)+n|0,(i|0)>0?(n=(i>>>0)/93|0,o=o+(n<<2)|0,e[c>>2]=o,i=(e[o>>2]|0)+((i-(n*93|0)|0)*44|0)|0):(i=92-i|0,n=o+(((i|0)/-93|0)<<2)|0,e[c>>2]=n,i=(e[n>>2]|0)+((92-((i|0)%93|0)|0)*44|0)|0),e[c+4>>2]=i),e[h>>2]=e[u>>2],e[h+4>>2]=e[u+4>>2],e[F>>2]=e[c>>2],e[F+4>>2]=e[c+4>>2],Rn(f,h,F),xi(F,f),_i(h,f),me(F,h)|0){A=y+4|0;do{if(Ei(v,F),Si(y,r,v),i=e[y>>2]|0,(i|0)!=(e[A>>2]|0))do cn(i,t),i=(e[y>>2]|0)+44|0,e[y>>2]=i;while((i|0)!=(e[A>>2]|0));ji(y),Ci(F)|0}while(me(F,h)|0)}s=W}function J4(r){r=r|0;var n=0,t=0;if(X4(r),n=e[r+4>>2]|0,t=e[r+8>>2]|0,(n|0)!=(t|0))do D(e[n>>2]|0,4092),n=n+4|0;while((n|0)!=(t|0));p4(r)}function Y4(r,n,t){r=r|0,n=n|0,t=t|0,tr(r),e[r>>2]=4924,e[r+4>>2]=n,e[r+8>>2]=t}function x4(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4944,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,pe(r,i),s=t}function _4(r,n){return r=r|0,n=n|0,S4(e[r+8>>2]|0,e[r+4>>2]|0,n)|0}function Hi(r){r=r|0;var n=0,t=0;e[r>>2]=4924,t=r+8|0,n=e[t>>2]|0,e[t>>2]=0,n|0&&(j4(n),x(n)),M2(r)}function E4(r){r=r|0,Hi(r),x(r)}function S4(r,n,t){return r=r|0,n=n|0,t=t|0,Vn(r+4784|0,n,Gr(r,n,t)|0)|0}function Vn(r,n,t){return r=r|0,n=n|0,t=t|0,l[r>>0]|0&&(ln(n),l[r>>0]=0),t|0}function j4(r){r=r|0,Tr(r)}function pe(r,n){r=r|0,n=n|0}function C4(r){r=r|0,Z0(r),x(r)}function O4(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+8>>2]&255](r)}function I4(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==12004?r+12|0:0)|0}function a4(r){r=r|0,D(r,16)}function Fn(r){r=r|0,l[r>>0]=1}function H4(r,n,t){r=r|0,n=n|0,t=t|0,tr(r),e[r>>2]=4972,e[r+4>>2]=n,e[r+8>>2]=t}function Q4(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=4992,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,pe(r,i),s=t}function D4(r,n){return r=r|0,n=n|0,L4(e[r+8>>2]|0,e[r+4>>2]|0,n)|0}function Qi(r){r=r|0;var n=0,t=0;e[r>>2]=4972,t=r+8|0,n=e[t>>2]|0,e[t>>2]=0,n|0&&(q4(n),x(n)),M2(r)}function P4(r){r=r|0,Qi(r),x(r)}function L4(r,n,t){return r=r|0,n=n|0,t=t|0,$4(r+4784|0,n,Gr(r,n,t)|0)|0}function $4(r,n,t){return r=r|0,n=n|0,t=t|0,Vn(r+328|0,n,Nr(r,n,t)|0)|0}function q4(r){r=r|0,K4(r+4784|0),Tr(r)}function K4(r){r=r|0,Zn(r)}function b4(r){r=r|0,Z0(r),x(r)}function rs(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+8>>2]&255](r)}function es(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==12827?r+12|0:0)|0}function ns(r){r=r|0,D(r,16)}function ts(r){r=r|0,yn(r),Fn(r+328|0)}function is(r,n,t){r=r|0,n=n|0,t=t|0,tr(r),e[r>>2]=5020,e[r+4>>2]=n,e[r+8>>2]=t}function As(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5040,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,pe(r,i),s=t}function os(r,n){return r=r|0,n=n|0,us(e[r+8>>2]|0,e[r+4>>2]|0,n)|0}function Di(r){r=r|0;var n=0,t=0;e[r>>2]=5020,t=r+8|0,n=e[t>>2]|0,e[t>>2]=0,n|0&&(ls(n),x(n)),M2(r)}function fs(r){r=r|0,Di(r),x(r)}function us(r,n,t){return r=r|0,n=n|0,t=t|0,Pi(r+4784|0,n,Gr(r,n,t)|0)|0}function Pi(r,n,t){return r=r|0,n=n|0,t=t|0,Vn(r+316|0,n,Ti(r,n,t)|0)|0}function ls(r){r=r|0,Li(r+4784|0),Tr(r)}function Li(r){r=r|0,Ui(r)}function cs(r){r=r|0,Z0(r),x(r)}function ss(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+8>>2]&255](r)}function hs(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==13672?r+12|0:0)|0}function ms(r){r=r|0,D(r,16)}function $i(r){r=r|0,Xi(r),Fn(r+316|0)}function ps(r,n,t){r=r|0,n=n|0,t=t|0,tr(r),e[r>>2]=5068,e[r+4>>2]=n,e[r+8>>2]=t}function vs(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5088,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,pe(r,i),s=t}function ys(r,n){return r=r|0,n=n|0,Rs(e[r+8>>2]|0,e[r+4>>2]|0,n)|0}function qi(r){r=r|0;var n=0,t=0;e[r>>2]=5068,t=r+8|0,n=e[t>>2]|0,e[t>>2]=0,n|0&&(Fs(n),x(n)),M2(r)}function Zs(r){r=r|0,qi(r),x(r)}function Rs(r,n,t){return r=r|0,n=n|0,t=t|0,Vs(r+4784|0,n,Gr(r,n,t)|0)|0}function Vs(r,n,t){return r=r|0,n=n|0,t=t|0,Pi(r+328|0,n,Nr(r,n,t)|0)|0}function Fs(r){r=r|0,ws(r+4784|0),Tr(r)}function ws(r){r=r|0,Li(r+328|0),Zn(r)}function ks(r){r=r|0,Z0(r),x(r)}function Ws(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+8>>2]&255](r)}function Xs(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==14573?r+12|0:0)|0}function ds(r){r=r|0,D(r,16)}function gs(r){r=r|0,yn(r),$i(r+328|0)}function Us(r){return r=r|0,r+20|0}function Ts(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=n,e[r+4>>2]=t,e[r+8>>2]=0}function Gs(r,n){r=r|0,n=n|0,e[r>>2]=n,e[r+4>>2]=0,e[r+8>>2]=-1}function Ns(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;t=s,s=s+16|0,i=t+4|0,o=t,A=_(24)|0,as(A,n),e[o>>2]=0,e[i>>2]=e[o>>2],Hs(r,A,i),s=t}function Mr(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function zs(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5116,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,Ms(r,i),s=t}function wn(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function Ms(r,n){r=r|0,n=n|0}function Bs(r){r=r|0,Z0(r),x(r)}function Js(r){r=r|0,r=e[r+12>>2]|0,r|0&&x(r)}function Ys(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==14966?r+12|0:0)|0}function xs(r){r=r|0,D(r,16)}function _s(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5144,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,Es(r,i),s=t}function Ki(r){r=r|0;var n=0,t=0;r=e[r+4>>2]|0,r|0&&(t=r+4|0,n=e[t>>2]|0,e[t>>2]=n+-1,(n|0)==0)&&(o0[e[(e[r>>2]|0)+8>>2]&255](r),s2(r))}function Es(r,n){r=r|0,n=n|0}function Ss(r){r=r|0,Z0(r),x(r)}function js(r){r=r|0,r=e[r+12>>2]|0,r|0&&(Is(r),x(r))}function Cs(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==15127?r+12|0:0)|0}function Os(r){r=r|0,D(r,16)}function Is(r){r=r|0}function as(r,n){r=r|0,n=n|0,tr(r),e[r>>2]=5172,e[r+4>>2]=n,e[r+8>>2]=0,e[r+12>>2]=0,e[r+16>>2]=0,l[r+20>>0]=1}function Hs(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5192,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,Ls(r,i),s=t}function Qs(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0;if(c=s,s=s+16|0,o=c,t=e[r+8>>2]|0,f=e[r+12>>2]|0,(t|0)!=(f|0)){u=o+4|0;do i=e[t>>2]|0,e[o>>2]=i,A=e[t+4>>2]|0,e[u>>2]=A,A|0&&(A=A+4|0,e[A>>2]=(e[A>>2]|0)+1),n=Er[e[(e[i>>2]|0)+12>>2]&63](i,n)|0,G0(o),t=t+8|0;while((t|0)!=(f|0))}return t=r+20|0,l[t>>0]|0&&(l[t>>0]=0,Ps(e[r+4>>2]|0)),s=c,n|0}function bi(r){r=r|0,e[r>>2]=5172,si(r+8|0),M2(r)}function Ds(r){r=r|0,bi(r),x(r)}function Ps(r){r=r|0;var n=0;n=((ir(e[r>>2]|0)|0)&255)<<24,n=((ir(e[r>>2]|0)|0)&255)<<16|n,n=n|((ir(e[r>>2]|0)|0)&255)<<8,e[r+4>>2]=n|(ir(e[r>>2]|0)|0)&255}function ir(r){r=r|0;var n=0,t=0;return n=e[r>>2]|0,t=r+8|0,r=e[t>>2]|0,e[t>>2]=r+1,l[n+r>>0]|0}function Ls(r,n){r=r|0,n=n|0}function $s(r){r=r|0,Z0(r),x(r)}function qs(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+8>>2]&255](r)}function Ks(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==15450?r+12|0:0)|0}function bs(r){r=r|0,D(r,16)}function kn(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(180)|0,r8(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],e8(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function ve(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(180)|0,Z8(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],R8(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function r8(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=5220,e[r+4>>2]=n,n8(r+8|0)}function e8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5244,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function n8(r){r=r|0,j0(r,32,1,8,0),z0(r+80|0,32,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,A8(r+164|0)}function rA(r){r=r|0,e[r>>2]=5220,o8(r+8|0),S0(r)}function t8(r){r=r|0,rA(r),x(r)}function i8(r,n){return r=r|0,n=n|0,f8(r+8|0,e[r+4>>2]|0,n)|0}function A8(r){r=r|0,l[r+4>>0]=0}function o8(r){r=r|0,B0(r+80|0),C0(r)}function f8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;return o=s,s=s+16|0,i=o,l[r+161>>0]|0||M0(r+80|0),A=r+164|0,u8(A)|0?(n=Ar(r+80|0,n,e[A>>2]|0,0)|0,e[i>>2]=n,se(n,t)):(fr(or(n)|0,t,4),e[i>>2]=le(t)|0),l8(A,i),s=o,t+4|0}function u8(r){return r=r|0,(l[r+4>>0]|0)!=0|0}function Ar(r,n,t,i){return r=r|0,n=n|0,t=t|0,i=i|0,t=(c8(r,n,(e[r+36>>2]|0)+(i*44|0)|0)|0)+t|0,n=e[r+24>>2]|0,(t|0)<0?t+n|0:t-(t>>>0<n>>>0?0:n)|0}function or(r){return r=r|0,e[r>>2]|0}function fr(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;if((t|0)>0){i=0;do l[n+i>>0]=ir(r)|0,i=i+1|0;while((i|0)!=(t|0))}}function l8(r,n){r=r|0,n=n|0;var t=0;t=r+4|0,l[t>>0]|0||(l[t>>0]=1),e[r>>2]=e[n>>2]}function c8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;t=Wn(n,t)|0,e[r>>2]=t;do if(t){if(t>>>0>=32){t=e[r+28>>2]|0;break}if(i=e[r+12>>2]|0,t>>>0>i>>>0?(i=t-i|0,t=Wn(n,(e[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,i=t<<i|(eA(n,i)|0)):i=Wn(n,(e[r+68>>2]|0)+((t+-1|0)*44|0)|0)|0,t=e[r>>2]|0,(i|0)<(1<<t+-1|0)){t=i+1+(-1<<t)|0;break}else{t=i+1|0;break}}else t=s8(n,r+48|0)|0;while(0);return t|0}function Wn(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;if(F=r+8|0,y=e[F>>2]|0,A=e[n+16>>2]|0,A){if(i=r+4|0,t=e[i>>2]|0,v=y>>>15,e[F>>2]=v,c=(t>>>0)/(v>>>0)|0,u=c>>>(e[n+40>>2]|0),o=e[A+(u<<2)>>2]|0,u=(e[A+(u+1<<2)>>2]|0)+1|0,f=o+1|0,h=e[n+8>>2]|0,u>>>0>f>>>0){A=o,o=u;do f=(o+A|0)>>>1,u=(e[h+(f<<2)>>2]|0)>>>0>c>>>0,A=u?A:f,o=u?f:o,f=A+1|0;while(o>>>0>f>>>0);o=A}A=L(e[h+(o<<2)>>2]|0,v)|0,(o|0)==(e[n+32>>2]|0)?f=y:f=L(e[h+(f<<2)>>2]|0,v)|0}else{h=y>>>15,e[F>>2]=h,u=e[n>>2]|0,v=e[n+8>>2]|0,i=r+4|0,t=e[i>>2]|0,c=u>>>1,A=0,f=y,o=0;do W=L(e[v+(c<<2)>>2]|0,h)|0,y=W>>>0>t>>>0,f=y?W:f,A=y?A:W,o=y?o:c,u=y?c:u,c=(o+u|0)>>>1;while((c|0)!=(o|0))}return e[i>>2]=t-A,W=f-A|0,e[F>>2]=W,W>>>0<16777216&&ye(r),F=(e[n+12>>2]|0)+(o<<2)|0,e[F>>2]=(e[F>>2]|0)+1,F=n+28|0,W=(e[F>>2]|0)+-1|0,e[F>>2]=W,W||sn(n),o|0}function eA(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;return n>>>0>19?(t=(h8(r)|0)&65535,(eA(r,n+-16|0)|0)<<16|t|0):(i=r+4|0,A=e[i>>2]|0,o=r+8|0,t=(e[o>>2]|0)>>>n,e[o>>2]=t,n=(A>>>0)/(t>>>0)|0,e[i>>2]=A-(L(n,t)|0),t>>>0<16777216&&ye(r),n|0)}function s8(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0,u=0;return i=r+8|0,A=e[i>>2]|0,t=L(A>>>13,e[n+8>>2]|0)|0,o=r+4|0,f=e[o>>2]|0,u=f>>>0>=t>>>0,u?(e[o>>2]=f-t,t=A-t|0,e[i>>2]=t):(e[i>>2]=t,f=n+12|0,e[f>>2]=(e[f>>2]|0)+1),t>>>0<16777216&&ye(r),f=n+4|0,r=(e[f>>2]|0)+-1|0,e[f>>2]=r,r||Ai(n),u&1|0}function ye(r){r=r|0;var n=0,t=0,i=0,A=0;n=r+4|0,t=r+8|0,i=e[n>>2]|0;do i=i<<8|(ir(e[r>>2]|0)|0)&255,e[n>>2]=i,A=e[t>>2]<<8,e[t>>2]=A;while(A>>>0<16777216)}function h8(r){r=r|0;var n=0,t=0,i=0,A=0;return t=r+4|0,A=e[t>>2]|0,n=r+8|0,i=(e[n>>2]|0)>>>16,e[n>>2]=i,n=(A>>>0)/(i>>>0)|0,e[t>>2]=A-(L(n,i)|0),ye(r),n&65535|0}function m8(r){r=r|0,Z0(r),x(r)}function p8(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function v8(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==15904?r+12|0:0)|0}function y8(r){r=r|0,D(r,16)}function Z8(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=5272,e[r+4>>2]=n,V8(r+8|0)}function R8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5296,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function V8(r){r=r|0,j0(r,32,1,8,0),z0(r+80|0,32,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,k8(r+164|0)}function nA(r){r=r|0,e[r>>2]=5272,W8(r+8|0),S0(r)}function F8(r){r=r|0,nA(r),x(r)}function w8(r,n){return r=r|0,n=n|0,X8(r+8|0,e[r+4>>2]|0,n)|0}function k8(r){r=r|0,l[r+4>>0]=0}function W8(r){r=r|0,B0(r+80|0),C0(r)}function X8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;return o=s,s=s+16|0,i=o,l[r+161>>0]|0||M0(r+80|0),A=r+164|0,d8(A)|0?(n=Ar(r+80|0,n,e[A>>2]|0,0)|0,e[i>>2]=n,he(n,t)):(fr(or(n)|0,t,4),e[i>>2]=ce(t)|0),g8(A,i),s=o,t+4|0}function d8(r){return r=r|0,(l[r+4>>0]|0)!=0|0}function g8(r,n){r=r|0,n=n|0;var t=0;t=r+4|0,l[t>>0]|0||(l[t>>0]=1),e[r>>2]=e[n>>2]}function U8(r){r=r|0,Z0(r),x(r)}function T8(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function G8(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==16402?r+12|0:0)|0}function N8(r){r=r|0,D(r,16)}function z8(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(172)|0,B8(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],J8(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function M8(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(176)|0,L8(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],$8(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function B8(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=5324,e[r+4>>2]=n,Y8(r+8|0)}function J8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5348,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function Y8(r){r=r|0,j0(r,8,1,8,0),z0(r+80|0,8,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,E8(r+162|0)}function tA(r){r=r|0,e[r>>2]=5324,S8(r+8|0),S0(r)}function x8(r){r=r|0,tA(r),x(r)}function _8(r,n){return r=r|0,n=n|0,j8(r+8|0,e[r+4>>2]|0,n)|0}function E8(r){r=r|0,l[r+1>>0]=0}function S8(r){r=r|0,B0(r+80|0),C0(r)}function j8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;return o=s,s=s+16|0,i=o,l[r+161>>0]|0||M0(r+80|0),A=r+162|0,C8(A)|0?(n=(Ar(r+80|0,n,l[A>>0]|0,0)|0)&255,l[i>>0]=n,O8(n,t)):(fr(or(n)|0,t,1),l[i>>0]=I8(t)|0),a8(A,i),s=o,t+1|0}function C8(r){return r=r|0,(l[r+1>>0]|0)!=0|0}function O8(r,n){r=r|0,n=n|0,l[n>>0]=r}function I8(r){return r=r|0,l[r>>0]|0}function a8(r,n){r=r|0,n=n|0;var t=0;t=r+1|0,l[t>>0]|0||(l[t>>0]=1),l[r>>0]=l[n>>0]|0}function H8(r){r=r|0,Z0(r),x(r)}function Q8(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function D8(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==16900?r+12|0:0)|0}function P8(r){r=r|0,D(r,16)}function L8(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=5376,e[r+4>>2]=n,q8(r+8|0)}function $8(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5400,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function q8(r){r=r|0,j0(r,16,1,8,0),z0(r+80|0,16,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,r3(r+162|0)}function iA(r){r=r|0,e[r>>2]=5376,e3(r+8|0),S0(r)}function K8(r){r=r|0,iA(r),x(r)}function b8(r,n){return r=r|0,n=n|0,n3(r+8|0,e[r+4>>2]|0,n)|0}function r3(r){r=r|0,l[r+2>>0]=0}function e3(r){r=r|0,B0(r+80|0),C0(r)}function n3(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;return o=s,s=s+16|0,i=o,l[r+161>>0]|0||M0(r+80|0),A=r+162|0,t3(A)|0?(n=(Ar(r+80|0,n,g[A>>1]|0,0)|0)&65535,g[i>>1]=n,i3(n,t)):(fr(or(n)|0,t,2),g[i>>1]=A3(t)|0),o3(A,i),s=o,t+2|0}function t3(r){return r=r|0,(l[r+2>>0]|0)!=0|0}function i3(r,n){r=r|0,n=n|0,Y2(r,n)}function A3(r){return r=r|0,J2(r)|0}function o3(r,n){r=r|0,n=n|0;var t=0;t=r+2|0,l[t>>0]|0||(l[t>>0]=1),g[r>>1]=g[n>>1]|0}function f3(r){r=r|0,Z0(r),x(r)}function u3(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function l3(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==17398?r+12|0:0)|0}function c3(r){r=r|0,D(r,16)}function s3(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(172)|0,m3(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],p3(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function h3(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;c=s,s=s+32|0,i=c+12|0,A=c,n=c+8|0,f=_(176)|0,U3(f,e[r+4>>2]|0),o=r+8|0,e[n>>2]=0,e[i>>2]=e[n>>2],T3(A,f,i),f=r+12|0,n=e[f>>2]|0,u=r+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[o>>2]|0)>>3)+1|0,t=e2(o)|0,t>>>0<n>>>0)d0(o);else{h=e[o>>2]|0,v=(e[u>>2]|0)-h|0,u=v>>2,K0(i,v>>3>>>0<t>>>1>>>0?u>>>0<n>>>0?n:u:t,(e[f>>2]|0)-h>>3,r+16|0),u=i+8|0,f=e[u>>2]|0,e[f>>2]=e[A>>2],r=A+4|0,e[f+4>>2]=e[r>>2],e[A>>2]=0,e[r>>2]=0,e[u>>2]=f+8,b0(o,i),r2(i);break}else $0(i,o,1),v=i+4|0,h=e[v>>2]|0,e[h>>2]=e[A>>2],u=A+4|0,e[h+4>>2]=e[u>>2],e[A>>2]=0,e[u>>2]=0,e[v>>2]=h+8,q0(i);while(0);G0(A),s=c}function m3(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=5428,e[r+4>>2]=n,v3(r+8|0)}function p3(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5452,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function v3(r){r=r|0,j0(r,8,1,8,0),z0(r+80|0,8,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,R3(r+162|0)}function AA(r){r=r|0,e[r>>2]=5428,V3(r+8|0),S0(r)}function y3(r){r=r|0,AA(r),x(r)}function Z3(r,n){return r=r|0,n=n|0,F3(r+8|0,e[r+4>>2]|0,n)|0}function R3(r){r=r|0,l[r+1>>0]=0}function V3(r){r=r|0,B0(r+80|0),C0(r)}function F3(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;return o=s,s=s+16|0,i=o,l[r+161>>0]|0||M0(r+80|0),A=r+162|0,w3(A)|0?(n=(Ar(r+80|0,n,Z[A>>0]|0,0)|0)&255,l[i>>0]=n,vn(n,t)):(fr(or(n)|0,t,1),l[i>>0]=pn(t)|0),k3(A,i),s=o,t+1|0}function w3(r){return r=r|0,(l[r+1>>0]|0)!=0|0}function k3(r,n){r=r|0,n=n|0;var t=0;t=r+1|0,l[t>>0]|0||(l[t>>0]=1),l[r>>0]=l[n>>0]|0}function W3(r){r=r|0,Z0(r),x(r)}function X3(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function d3(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==17896?r+12|0:0)|0}function g3(r){r=r|0,D(r,16)}function U3(r,n){r=r|0,n=n|0,n2(r),e[r>>2]=5480,e[r+4>>2]=n,G3(r+8|0)}function T3(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,e[r>>2]=n,A=_(16)|0,e[A+4>>2]=0,e[A+8>>2]=0,e[A>>2]=5504,e[A+12>>2]=n,e[r+4>>2]=A,e[i>>2]=n,e[i+4>>2]=n,t2(r,i),s=t}function G3(r){r=r|0,j0(r,16,1,8,0),z0(r+80|0,16,1,8,0),l[r+160>>0]=0,l[r+161>>0]=0,M3(r+162|0)}function oA(r){r=r|0,e[r>>2]=5480,B3(r+8|0),S0(r)}function N3(r){r=r|0,oA(r),x(r)}function z3(r,n){return r=r|0,n=n|0,J3(r+8|0,e[r+4>>2]|0,n)|0}function M3(r){r=r|0,l[r+2>>0]=0}function B3(r){r=r|0,B0(r+80|0),C0(r)}function J3(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;return o=s,s=s+16|0,i=o,l[r+161>>0]|0||M0(r+80|0),A=r+162|0,Y3(A)|0?(n=(Ar(r+80|0,n,G[A>>1]|0,0)|0)&65535,g[i>>1]=n,Y2(n,t)):(fr(or(n)|0,t,2),g[i>>1]=J2(t)|0),x3(A,i),s=o,t+2|0}function Y3(r){return r=r|0,(l[r+2>>0]|0)!=0|0}function x3(r,n){r=r|0,n=n|0;var t=0;t=r+2|0,l[t>>0]|0||(l[t>>0]=1),g[r>>1]=g[n>>1]|0}function _3(r){r=r|0,Z0(r),x(r)}function E3(r){r=r|0,r=e[r+12>>2]|0,r|0&&o0[e[(e[r>>2]|0)+4>>2]&255](r)}function S3(r,n){return r=r|0,n=n|0,((e[n+4>>2]|0)==18394?r+12|0:0)|0}function j3(r){r=r|0,D(r,16)}function Ny(){}function C3(r){return r=r|0,D3(r)|0}function O3(){return 0}function I3(){return 0}function a3(r){r=r|0,r|0&&(P3(r),x(r))}function Br(){return L3()|0}function H3(){return $3()|0}function Q3(){return q3()|0}function fA(){return 0}function D3(r){return r=r|0,3360}function P3(r){r=r|0;var n=0,t=0,i=0,A=0;n=s,s=s+16|0,i=n,e[i>>2]=e[r>>2],e[r>>2]=0,t=r+4|0,e[i+4>>2]=e[t>>2],e[t>>2]=0,nn(i),t=r+8|0,e[i>>2]=e[t>>2],e[t>>2]=0,A=r+12|0,e[i+4>>2]=e[A>>2],e[A>>2]=0,tn(i),tn(t),nn(r),s=n}function L3(){return 3360}function $3(){return 3368}function q3(){return 3384}function Ze(){return 18579}function Re(){return 18582}function uA(){return 18584}function K3(){var r=0;return r=_(16)|0,Ah(r),r|0}function b3(r){r=r|0;var n=0,t=0,i=0,A=0;n=s,s=s+16|0,t=n,A=Br()|0,i=eh(t)|0,t=nh(t)|0,xt(A|0,i|0,t|0,Ze()|0,12,r|0),s=n}function rh(r){return r=r|0,th(Cn[r&3]()|0)|0}function eh(r){return r=r|0,1}function nh(r){return r=r|0,ih()|0}function th(r){return r=r|0,r|0}function ih(){return 5524}function Ah(r){r=r|0,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=0}function oh(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;t=s,s=s+16|0,i=t,A=t+8|0,f=e[n+4>>2]|0,e[i>>2]=e[n>>2],e[i+4>>2]=f,f=Br()|0,o=uh(A)|0,A=lh(A)|0,n=cA()|0,er(f|0,r|0,o|0,A|0,n|0,4,ch(i)|0,0),s=t}function fh(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;o=Xn(n)|0,n=e[r>>2]|0,A=e[r+4>>2]|0,r=o+(A>>1)|0,A&1&&(n=e[(e[r>>2]|0)+n>>2]|0),A=lA(t)|0,o=dn(i)|0,Sr[n&15](r,A,o)}function uh(r){return r=r|0,4}function lh(r){return r=r|0,sh()|0}function ch(r){r=r|0;var n=0,t=0;return n=_(8)|0,t=e[r+4>>2]|0,e[n>>2]=e[r>>2],e[n+4>>2]=t,n|0}function Xn(r){return r=r|0,r|0}function lA(r){return r=r|0,r|0}function dn(r){return r=r|0,r|0}function sh(){return 144}function cA(){return 18587}function hh(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;t=s,s=s+16|0,i=t,A=t+8|0,f=e[n+4>>2]|0,e[i>>2]=e[n>>2],e[i+4>>2]=f,f=Br()|0,o=ph(A)|0,A=vh(A)|0,n=gn()|0,er(f|0,r|0,o|0,A|0,n|0,7,yh(i)|0,0),s=t}function mh(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;A=Xn(n)|0,n=e[r>>2]|0,i=e[r+4>>2]|0,r=A+(i>>1)|0,i&1&&(n=e[(e[r>>2]|0)+n>>2]|0),A=sA(t)|0,k2[n&15](r,A)}function ph(r){return r=r|0,3}function vh(r){return r=r|0,Zh()|0}function yh(r){r=r|0;var n=0,t=0;return n=_(8)|0,t=e[r+4>>2]|0,e[n>>2]=e[r>>2],e[n+4>>2]=t,n|0}function sA(r){return r=r|0,r|0}function Zh(){return 5528}function gn(){return 18593}function Rh(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;t=s,s=s+16|0,i=t,A=t+8|0,f=e[n+4>>2]|0,e[i>>2]=e[n>>2],e[i+4>>2]=f,f=Br()|0,o=Fh(A)|0,A=wh(A)|0,n=dh()|0,er(f|0,r|0,o|0,A|0,n|0,41,kh(i)|0,0),s=t}function Vh(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;return i=s,s=s+16|0,t=i,o=Xn(n)|0,n=e[r>>2]|0,A=e[r+4>>2]|0,r=o+(A>>1)|0,A&1&&(n=e[(e[r>>2]|0)+n>>2]|0),e[t>>2]=de[n&15](r)|0,o=Wh(t)|0,s=i,o|0}function Fh(r){return r=r|0,2}function wh(r){return r=r|0,Xh()|0}function kh(r){r=r|0;var n=0,t=0;return n=_(8)|0,t=e[r+4>>2]|0,e[n>>2]=e[r>>2],e[n+4>>2]=t,n|0}function Wh(r){return r=r|0,e[r>>2]|0}function Xh(){return 5540}function dh(){return 18598}function zy(){}function gh(r){return r=r|0,Mh(r)|0}function Uh(){return 0}function Th(){return 0}function Gh(r){r=r|0,r|0&&(Bh(r),x(r))}function Jr(){return Jh()|0}function Nh(){return Yh()|0}function zh(){return xh()|0}function Mh(r){return r=r|0,3400}function Bh(r){r=r|0;var n=0,t=0,i=0,A=0;n=s,s=s+16|0,i=n,e[i>>2]=e[r>>2],e[r>>2]=0,t=r+4|0,e[i+4>>2]=e[t>>2],e[t>>2]=0,wn(i),t=r+16|0,e[i>>2]=e[t>>2],e[t>>2]=0,A=r+20|0,e[i+4>>2]=e[A>>2],e[A>>2]=0,Mr(i),e[i>>2]=e[t>>2],e[t>>2]=0,e[i+4>>2]=e[A>>2],e[A>>2]=0,Mr(i),Mr(t),Ki(r+8|0),wn(r),s=n}function Jh(){return 3400}function Yh(){return 3408}function xh(){return 3424}function _h(){var r=0;return r=_(24)|0,ah(r),r|0}function Eh(r){r=r|0;var n=0,t=0,i=0,A=0;n=s,s=s+16|0,t=n,A=Jr()|0,i=jh(t)|0,t=Ch(t)|0,xt(A|0,i|0,t|0,Ze()|0,13,r|0),s=n}function Sh(r){return r=r|0,Oh(Cn[r&3]()|0)|0}function jh(r){return r=r|0,1}function Ch(r){return r=r|0,Ih()|0}function Oh(r){return r=r|0,r|0}function Ih(){return 5548}function ah(r){r=r|0,e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=0,e[r+16>>2]=0,e[r+20>>2]=0}function Hh(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;t=s,s=s+16|0,i=t,A=t+8|0,f=e[n+4>>2]|0,e[i>>2]=e[n>>2],e[i+4>>2]=f,f=Jr()|0,o=Dh(A)|0,A=Ph(A)|0,n=cA()|0,er(f|0,r|0,o|0,A|0,n|0,5,Lh(i)|0,0),s=t}function Qh(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;o=Un(n)|0,n=e[r>>2]|0,A=e[r+4>>2]|0,r=o+(A>>1)|0,A&1&&(n=e[(e[r>>2]|0)+n>>2]|0),A=lA(t)|0,o=dn(i)|0,Sr[n&15](r,A,o)}function Dh(r){return r=r|0,4}function Ph(r){return r=r|0,$h()|0}function Lh(r){r=r|0;var n=0,t=0;return n=_(8)|0,t=e[r+4>>2]|0,e[n>>2]=e[r>>2],e[n+4>>2]=t,n|0}function Un(r){return r=r|0,r|0}function $h(){return 160}function Tn(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;t=s,s=s+16|0,i=t,A=t+8|0,f=e[n+4>>2]|0,e[i>>2]=e[n>>2],e[i+4>>2]=f,f=Jr()|0,o=Kh(A)|0,A=bh(A)|0,n=gn()|0,er(f|0,r|0,o|0,A|0,n|0,8,r5(i)|0,0),s=t}function qh(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;A=Un(n)|0,n=e[r>>2]|0,i=e[r+4>>2]|0,r=A+(i>>1)|0,i&1&&(n=e[(e[r>>2]|0)+n>>2]|0),A=dn(t)|0,k2[n&15](r,A)}function Kh(r){return r=r|0,3}function bh(r){return r=r|0,e5()|0}function r5(r){r=r|0;var n=0,t=0;return n=_(8)|0,t=e[r+4>>2]|0,e[n>>2]=e[r>>2],e[n+4>>2]=t,n|0}function e5(){return 5552}function n5(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;t=s,s=s+16|0,i=t,A=t+8|0,f=e[n+4>>2]|0,e[i>>2]=e[n>>2],e[i+4>>2]=f,f=Jr()|0,o=i5(A)|0,A=A5(A)|0,n=gn()|0,er(f|0,r|0,o|0,A|0,n|0,9,o5(i)|0,0),s=t}function t5(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;A=Un(n)|0,n=e[r>>2]|0,i=e[r+4>>2]|0,r=A+(i>>1)|0,i&1&&(n=e[(e[r>>2]|0)+n>>2]|0),A=sA(t)|0,k2[n&15](r,A)}function i5(r){return r=r|0,3}function A5(r){return r=r|0,f5()|0}function o5(r){r=r|0;var n=0,t=0;return n=_(8)|0,t=e[r+4>>2]|0,e[n>>2]=e[r>>2],e[n+4>>2]=t,n|0}function f5(){return 5564}function u5(){U1()}function l5(){c5()}function c5(){s5(22144)}function s5(r){r=r|0;var n=0;n=s,s=s+16|0,e[n>>2]=r,hA(),s=n}function hA(){w1(h5()|0,18653),V1(m5()|0,18658,1,1,0),p5(18663),v5(18668),y5(18680),Z5(18694),R5(18700),V5(18715),F5(18719),w5(18732),k5(18737),W5(18751),X5(18757),Et(d5()|0,18764),Et(g5()|0,18776),en(U5()|0,4,18809),en(T5()|0,2,18822),en(G5()|0,4,18837),F1(N5()|0,18852),z5(18868),mA(18898),pA(18935),vA(18974),yA(19005),ZA(19045),RA(19074),M5(19112),B5(19142),mA(19181),pA(19213),vA(19246),yA(19279),ZA(19313),RA(19346),J5(19380),Y5(19411),x5(19443)}function h5(){return Pm()|0}function m5(){return Dm()|0}function p5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Hm()|0,c2(r|0,e[t>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),s=n}function v5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Im()|0,c2(r|0,e[t>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),s=n}function y5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Cm()|0,c2(r|0,e[t>>2]|0,1,0,255),s=n}function Z5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Sm()|0,c2(r|0,e[t>>2]|0,2,-32768<<16>>16|0,32767<<16>>16|0),s=n}function R5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=_m()|0,c2(r|0,e[t>>2]|0,2,0,65535),s=n}function V5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Ym()|0,c2(r|0,e[t>>2]|0,4,-2147483648,2147483647),s=n}function F5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Bm()|0,c2(r|0,e[t>>2]|0,4,0,-1),s=n}function w5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=zm()|0,c2(r|0,e[t>>2]|0,4,-2147483648,2147483647),s=n}function k5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Gm()|0,c2(r|0,e[t>>2]|0,4,0,-1),s=n}function W5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=Um()|0,_t(r|0,e[t>>2]|0,4),s=n}function X5(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,e[t>>2]=r,r=dm()|0,_t(r|0,e[t>>2]|0,8),s=n}function d5(){return Xm()|0}function g5(){return Wm()|0}function U5(){return km()|0}function T5(){return wm()|0}function G5(){return Fm()|0}function N5(){return Vm()|0}function z5(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=ym()|0,r=Zm()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function mA(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=mm()|0,r=pm()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function pA(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=cm()|0,r=sm()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function vA(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=fm()|0,r=um()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function yA(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=im()|0,r=Am()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function ZA(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=em()|0,r=nm()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function RA(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=K5()|0,r=b5()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function M5(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=L5()|0,r=$5()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function B5(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=Q5()|0,r=D5()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function J5(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=I5()|0,r=a5()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function Y5(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=j5()|0,r=C5()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function x5(r){r=r|0;var n=0,t=0,i=0;n=s,s=s+16|0,t=n,e[t>>2]=r,i=_5()|0,r=E5()|0,E0(i|0,r|0,e[t>>2]|0),s=n}function _5(){return S5()|0}function E5(){return 7}function S5(){return 3440}function j5(){return O5()|0}function C5(){return 7}function O5(){return 3448}function I5(){return H5()|0}function a5(){return 6}function H5(){return 3456}function Q5(){return P5()|0}function D5(){return 5}function P5(){return 3464}function L5(){return q5()|0}function $5(){return 4}function q5(){return 3472}function K5(){return rm()|0}function b5(){return 5}function rm(){return 3480}function em(){return tm()|0}function nm(){return 4}function tm(){return 3488}function im(){return om()|0}function Am(){return 3}function om(){return 3496}function fm(){return lm()|0}function um(){return 2}function lm(){return 3504}function cm(){return hm()|0}function sm(){return 1}function hm(){return 3512}function mm(){return vm()|0}function pm(){return 0}function vm(){return 3520}function ym(){return Rm()|0}function Zm(){return 0}function Rm(){return 3528}function Vm(){return 3536}function Fm(){return 3544}function wm(){return 3576}function km(){return 3600}function Wm(){return 3624}function Xm(){return 3648}function dm(){return gm()|0}function gm(){return 4144}function Um(){return Tm()|0}function Tm(){return 4136}function Gm(){return Nm()|0}function Nm(){return 4128}function zm(){return Mm()|0}function Mm(){return 4120}function Bm(){return Jm()|0}function Jm(){return 4112}function Ym(){return xm()|0}function xm(){return 4104}function _m(){return Em()|0}function Em(){return 4096}function Sm(){return jm()|0}function jm(){return 4088}function Cm(){return Om()|0}function Om(){return 4072}function Im(){return am()|0}function am(){return 4080}function Hm(){return Qm()|0}function Qm(){return 4064}function Dm(){return 4056}function Pm(){return 4040}function Lm(r){r=r|0;var n=0,t=0,i=0,A=0;return n=s,s=s+16|0,t=n+8|0,i=n+4|0,A=n,e[A>>2]=r,e[i>>2]=e[A>>2],e[t>>2]=e[(e[i>>2]|0)+4>>2],r=v6(e[t>>2]|0)|0,s=n,r|0}function i2(){return 21636}function Yr(r){return r=r|0,(r+-48|0)>>>0<10|0}function VA(){return 5576}function FA(r,n){r=r|0,n=n|0;var t=0,i=0;if(t=l[r>>0]|0,i=l[n>>0]|0,!(t<<24>>24)||t<<24>>24!=i<<24>>24)r=i;else{do r=r+1|0,n=n+1|0,t=l[r>>0]|0,i=l[n>>0]|0;while(!(!(t<<24>>24)||t<<24>>24!=i<<24>>24));r=i}return(t&255)-(r&255)|0}function Ve(r){r=r|0;var n=0,t=0,i=0;i=r;r:do if(!(i&3))t=5;else for(n=i;;){if(!(l[r>>0]|0)){r=n;break r}if(r=r+1|0,n=r,!(n&3)){t=5;break}}while(0);if((t|0)==5){for(;n=e[r>>2]|0,!((n&-2139062144^-2139062144)&n+-16843009);)r=r+4|0;if((n&255)<<24>>24)do r=r+1|0;while(l[r>>0]|0)}return r-i|0}function $m(r){r=r|0}function qm(r){return r=r|0,1}function Km(r){r=r|0;var n=0,t=0;return n=r+74|0,t=l[n>>0]|0,l[n>>0]=t+255|t,n=e[r>>2]|0,n&8?(e[r>>2]=n|32,r=-1):(e[r+8>>2]=0,e[r+4>>2]=0,t=e[r+44>>2]|0,e[r+28>>2]=t,e[r+20>>2]=t,e[r+16>>2]=t+(e[r+48>>2]|0),r=0),r|0}function bm(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0;i=t+16|0,A=e[i>>2]|0,A?o=5:Km(t)|0?i=0:(A=e[i>>2]|0,o=5);r:do if((o|0)==5){if(u=t+20|0,f=e[u>>2]|0,i=f,(A-f|0)>>>0<n>>>0){i=sr[e[t+36>>2]&7](t,r,n)|0;break}e:do if((l[t+75>>0]|0)<0|(n|0)==0)o=0,A=r;else{for(f=n;A=f+-1|0,(l[r+A>>0]|0)!=10;)if(A)f=A;else{o=0,A=r;break e}if(i=sr[e[t+36>>2]&7](t,r,f)|0,i>>>0<f>>>0)break r;o=f,A=r+f|0,n=n-f|0,i=e[u>>2]|0}while(0);x0(i|0,A|0,n|0)|0,e[u>>2]=(e[u>>2]|0)+n,i=o+n|0}while(0);return i|0}function r6(r,n){return r=r|0,n=n|0,n?n=e6(e[n>>2]|0,e[n+4>>2]|0,r)|0:n=0,(n|0?n:r)|0}function e6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0;F=(e[r>>2]|0)+1794895138|0,o=_2(e[r+8>>2]|0,F)|0,i=_2(e[r+12>>2]|0,F)|0,A=_2(e[r+16>>2]|0,F)|0;r:do if(o>>>0<n>>>2>>>0&&(y=n-(o<<2)|0,i>>>0<y>>>0&A>>>0<y>>>0)&&!((A|i)&3|0)){for(y=i>>>2,v=A>>>2,h=0;;){if(u=o>>>1,c=h+u|0,f=c<<1,A=f+y|0,i=_2(e[r+(A<<2)>>2]|0,F)|0,A=_2(e[r+(A+1<<2)>>2]|0,F)|0,!(A>>>0<n>>>0&i>>>0<(n-A|0)>>>0)){i=0;break r}if(l[r+(A+i)>>0]|0){i=0;break r}if(i=FA(t,r+A|0)|0,!i)break;if(i=(i|0)<0,(o|0)==1){i=0;break r}h=i?h:c,o=i?u:o-u|0}i=f+v|0,A=_2(e[r+(i<<2)>>2]|0,F)|0,i=_2(e[r+(i+1<<2)>>2]|0,F)|0,i>>>0<n>>>0&A>>>0<(n-i|0)>>>0?i=l[r+(i+A)>>0]|0?0:r+i|0:i=0}else i=0;while(0);return i|0}function _2(r,n){r=r|0,n=n|0;var t=0;return t=DA(r|0)|0,(n|0?t:r)|0}function n6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;o=n&255,i=(t|0)!=0;r:do if(i&(r&3|0)!=0)for(A=n&255;;){if((l[r>>0]|0)==A<<24>>24){A=6;break r}if(r=r+1|0,t=t+-1|0,i=(t|0)!=0,!(i&(r&3|0)!=0)){A=5;break}}else A=5;while(0);(A|0)==5&&(i?A=6:r=0);r:do if((A|0)==6){if((l[r>>0]|0)!=(n&255)<<24>>24){i=L(o,16843009)|0;e:do if(t>>>0>3)do{if(o=e[r>>2]^i,(o&-2139062144^-2139062144)&o+-16843009|0)break e;r=r+4|0,t=t+-4|0}while(t>>>0>3);while(0)}if(!t)r=0;else for(i=n&255;;){if((l[r>>0]|0)==i<<24>>24)break r;if(t=t+-1|0,t)r=r+1|0;else{r=0;break}}}while(0);return r|0}function t6(r,n,t){return r=r|0,n=n|0,t=t|0,o6(r,n,t,1,8)|0}function i6(r,n,t,i,A,o){r=r|0,n=+n,t=t|0,i=i|0,A=A|0,o=o|0;var f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,z=0,S=0,U=0,e0=0,s0=0,n0=0,H=0,c0=0,O=0,I=0,D0=0;D0=s,s=s+560|0,c=D0+32|0,B=D0+536|0,I=D0,O=I,h=D0+540|0,e[B>>2]=0,c0=h+12|0,XA(n)|0,f=r0()|0,(f|0)<0?(n=-n,XA(n)|0,H=1,n0=20247,f=r0()|0):(H=(A&2049|0)!=0&1,n0=A&2048|0?20250:A&1|0?20253:20248);do if(!0&(f&2146435072|0)==2146435072)I=(o&32|0)!=0,f=H+3|0,k0(r,32,t,f,A&-65537),V0(r,n0,H),V0(r,n!=n|!1?I?20274:20278:I?20266:20270,3),k0(r,32,t,f,A^8192);else{if(W=+dA(n,B)*2,f=W!=0,f&&(e[B>>2]=(e[B>>2]|0)+-1),C=o|32,(C|0)==97){y=o&32,X=y|0?n0+9|0:n0,F=H|2,f=12-i|0;do if(i>>>0>11|(f|0)==0)n=W;else{n=8;do f=f+-1|0,n=n*16;while(f|0);if((l[X>>0]|0)==45){n=-(n+(-W-n));break}else{n=W+n-n;break}}while(0);u=e[B>>2]|0,f=(u|0)<0?0-u|0:u,f=ur(f,((f|0)<0)<<31>>31,c0)|0,(f|0)==(c0|0)&&(f=h+11|0,l[f>>0]=48),l[f+-1>>0]=(u>>31&2)+43,v=f+-2|0,l[v>>0]=o+15,u=(i|0)<1,c=(A&8|0)==0,h=I;do H=~~n,f=h+1|0,l[h>>0]=y|Z[640+H>>0],n=(n-+(H|0))*16,(f-O|0)==1&&!(c&(u&n==0))?(l[f>>0]=46,h=h+2|0):h=f;while(n!=0);i|0&&(-2-O+h|0)<(i|0)?(u=c0,c=v,f=i+2+u-c|0):(u=c0,c=v,f=u-O-c+h|0),c0=f+F|0,k0(r,32,t,c0,A),V0(r,X,F),k0(r,48,t,c0,A^65536),O=h-O|0,V0(r,I,O),I=u-c|0,k0(r,48,f-(O+I)|0,0,0),V0(r,v,I),k0(r,32,t,c0,A^8192),f=c0;break}u=(i|0)<0?6:i,f?(f=(e[B>>2]|0)+-28|0,e[B>>2]=f,n=W*268435456):(n=W,f=e[B>>2]|0),s0=(f|0)<0?c:c+288|0,c=s0;do U=~~n>>>0,e[c>>2]=U,c=c+4|0,n=(n-+(U>>>0))*1e9;while(n!=0);if(U=s0,(f|0)>0)for(y=s0;;){if(v=(f|0)<29?f:29,f=c+-4|0,f>>>0>=y>>>0){h=0;do k=HA(e[f>>2]|0,0,v|0)|0,k=O0(k|0,r0()|0,h|0,0)|0,z=r0()|0,h=En(k|0,z|0,1e9,0)|0,S=_n(h|0,r0()|0,1e9,0)|0,S=cr(k|0,z|0,S|0,r0()|0)|0,r0()|0,e[f>>2]=S,f=f+-4|0;while(f>>>0>=y>>>0);h?(S=y+-4|0,e[S>>2]=h,h=S):h=y}else h=y;r:do if(c>>>0>h>>>0)for(f=c;;){if(c=f+-4|0,e[c>>2]|0){c=f;break r}if(c>>>0>h>>>0)f=c;else break}while(0);if(f=(e[B>>2]|0)-v|0,e[B>>2]=f,(f|0)>0)y=h;else break}else h=s0;if((f|0)<0){i=((u+25|0)/9|0)+1|0,k=(C|0)==102;do{if(X=0-f|0,X=(X|0)<9?X:9,h>>>0<c>>>0){v=(1<<X)+-1|0,y=1e9>>>X,F=0,f=h;do S=e[f>>2]|0,e[f>>2]=(S>>>X)+F,F=L(S&v,y)|0,f=f+4|0;while(f>>>0<c>>>0);h=e[h>>2]|0?h:h+4|0,F&&(e[c>>2]=F,c=c+4|0)}else h=e[h>>2]|0?h:h+4|0;f=k?s0:h,c=(c-f>>2|0)>(i|0)?f+(i<<2)|0:c,f=(e[B>>2]|0)+X|0,e[B>>2]=f}while((f|0)<0);k=h}else k=h;if(k>>>0<c>>>0){if(f=(U-k>>2)*9|0,v=e[k>>2]|0,v>>>0>=10){h=10;do h=h*10|0,f=f+1|0;while(v>>>0>=h>>>0)}}else f=0;if(z=(C|0)==103,S=(u|0)!=0,h=u-((C|0)==102?0:f)+((S&z)<<31>>31)|0,(h|0)<(((c-U>>2)*9|0)+-9|0)){if(B=h+9216|0,h=(B|0)/9|0,i=s0+4+(h+-1024<<2)|0,h=B-(h*9|0)|0,(h|0)<8)for(v=10;v=v*10|0,(h|0)<7;)h=h+1|0;else v=10;if(F=e[i>>2]|0,h=(F>>>0)/(v>>>0)|0,X=F-(L(h,v)|0)|0,y=(i+4|0)==(c|0),y&(X|0)==0)h=i,v=k;else if(W=h&1|0?9007199254740994:9007199254740992,B=v>>>1,n=X>>>0<B>>>0?.5:y&(X|0)==(B|0)?1:1.5,H&&(B=(l[n0>>0]|0)==45,n=B?-n:n,W=B?-W:W),h=F-X|0,e[i>>2]=h,W+n!=W){if(B=h+v|0,e[i>>2]=B,B>>>0>999999999)for(v=i,f=k;;)if(h=v+-4|0,e[v>>2]=0,h>>>0<f>>>0&&(f=f+-4|0,e[f>>2]=0),B=(e[h>>2]|0)+1|0,e[h>>2]=B,B>>>0>999999999)v=h;else{v=f;break}else h=i,v=k;if(f=(U-v>>2)*9|0,F=e[v>>2]|0,F>>>0>=10){y=10;do y=y*10|0,f=f+1|0;while(F>>>0>=y>>>0)}}else h=i,v=k;B=h+4|0,c=c>>>0>B>>>0?B:c}else v=k;i=0-f|0;r:do if(c>>>0>v>>>0)for(;;){if(h=c+-4|0,e[h>>2]|0){B=c,C=1;break r}if(h>>>0>v>>>0)c=h;else{B=h,C=0;break}}else B=c,C=0;while(0);do if(z){if(u=u+((S^1)&1)|0,(u|0)>(f|0)&(f|0)>-5?(y=o+-1|0,u=u+-1-f|0):(y=o+-2|0,u=u+-1|0),!(A&8)){if(C&&(e0=e[B+-4>>2]|0,(e0|0)!=0))if((e0>>>0)%10|0)h=0;else{h=0,c=10;do c=c*10|0,h=h+1|0;while(!((e0>>>0)%(c>>>0)|0|0))}else h=9;if(c=((B-U>>2)*9|0)+-9|0,(y|32|0)==102){o=c-h|0,o=(o|0)>0?o:0,u=(u|0)<(o|0)?u:o;break}else{o=c+f-h|0,o=(o|0)>0?o:0,u=(u|0)<(o|0)?u:o;break}}}else y=o;while(0);if(k=(u|0)!=0,F=k?1:A>>>3&1,X=(y|32|0)==102,X)z=0,f=(f|0)>0?f:0;else{if(c=(f|0)<0?i:f,c=ur(c,((c|0)<0)<<31>>31,c0)|0,h=c0,(h-c|0)<2)do c=c+-1|0,l[c>>0]=48;while((h-c|0)<2);l[c+-1>>0]=(f>>31&2)+43,f=c+-2|0,l[f>>0]=y,z=f,f=h-f|0}if(f=H+1+u+F+f|0,k0(r,32,t,f,A),V0(r,n0,H),k0(r,48,t,f,A^65536),X){F=v>>>0>s0>>>0?s0:v,X=I+9|0,v=X,y=I+8|0,h=F;do{if(c=ur(e[h>>2]|0,0,X)|0,(h|0)==(F|0))(c|0)==(X|0)&&(l[y>>0]=48,c=y);else if(c>>>0>I>>>0){O2(I|0,48,c-O|0)|0;do c=c+-1|0;while(c>>>0>I>>>0)}V0(r,c,v-c|0),h=h+4|0}while(h>>>0<=s0>>>0);if((A&8|0)==0&(k^1)||V0(r,20282,1),h>>>0<B>>>0&(u|0)>0)for(;;){if(c=ur(e[h>>2]|0,0,X)|0,c>>>0>I>>>0){O2(I|0,48,c-O|0)|0;do c=c+-1|0;while(c>>>0>I>>>0)}if(V0(r,c,(u|0)<9?u:9),h=h+4|0,c=u+-9|0,h>>>0<B>>>0&(u|0)>9)u=c;else{u=c;break}}k0(r,48,u+9|0,9,0)}else{if(B=C?B:v+4|0,v>>>0<B>>>0&(u|0)>-1){i=I+9|0,k=(A&8|0)==0,C=i,F=0-O|0,X=I+8|0,y=v;do{c=ur(e[y>>2]|0,0,i)|0,(c|0)==(i|0)&&(l[X>>0]=48,c=X);do if((y|0)==(v|0)){if(h=c+1|0,V0(r,c,1),k&(u|0)<1){c=h;break}V0(r,20282,1),c=h}else{if(c>>>0<=I>>>0)break;O2(I|0,48,c+F|0)|0;do c=c+-1|0;while(c>>>0>I>>>0)}while(0);O=C-c|0,V0(r,c,(u|0)>(O|0)?O:u),u=u-O|0,y=y+4|0}while(y>>>0<B>>>0&(u|0)>-1)}k0(r,48,u+18|0,18,0),V0(r,z,c0-z|0)}k0(r,32,t,f,A^8192)}while(0);return s=D0,((f|0)<(t|0)?t:f)|0}function A6(r,n){r=r|0,n=n|0;var t=0,i=0;i=(e[n>>2]|0)+(8-1)&~(8-1),t=+J[i>>3],e[n>>2]=i+8,J[r>>3]=t}function o6(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0;B=s,s=s+224|0,W=B+208|0,X=B+160|0,k=B+80|0,C=B,o=X,f=o+40|0;do e[o>>2]=0,o=o+4|0;while((o|0)<(f|0));return e[W>>2]=e[t>>2],(Gn(0,n,W,k,X,i,A)|0)<0?t=-1:((e[r+76>>2]|0)>-1?F=qm(r)|0:F=0,t=e[r>>2]|0,y=t&32,(l[r+74>>0]|0)<1&&(e[r>>2]=t&-33),o=r+48|0,e[o>>2]|0?t=Gn(r,n,W,k,X,i,A)|0:(f=r+44|0,u=e[f>>2]|0,e[f>>2]=C,c=r+28|0,e[c>>2]=C,h=r+20|0,e[h>>2]=C,e[o>>2]=80,v=r+16|0,e[v>>2]=C+80,t=Gn(r,n,W,k,X,i,A)|0,u&&(sr[e[r+36>>2]&7](r,0,0)|0,t=e[h>>2]|0?t:-1,e[f>>2]=u,e[o>>2]=0,e[v>>2]=0,e[c>>2]=0,e[h>>2]=0)),o=e[r>>2]|0,e[r>>2]=o|y,F|0&&$m(r),t=o&32|0?-1:t),s=B,t|0}function Gn(r,n,t,i,A,o,f){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0,f=f|0;var u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,z=0,S=0,U=0,e0=0,s0=0,n0=0,H=0,c0=0,O=0,I=0,D0=0,m0=0,a2=0,a0=0;a2=s,s=s+64|0,I=a2+56|0,m0=a2+40|0,s0=a2,H=a2+48|0,c0=a2+60|0,e[I>>2]=n,S=(r|0)!=0,U=s0+40|0,e0=U,s0=s0+39|0,n0=H+4|0,u=0,n=0,h=0;r:for(;;){do{do if((n|0)>-1)if((u|0)>(2147483647-n|0)){e[(i2()|0)>>2]=61,n=-1;break}else{n=u+n|0;break}while(0);if(W=e[I>>2]|0,u=l[W>>0]|0,!(u<<24>>24)){z=92;break r}c=W;e:for(;;){switch(u<<24>>24){case 37:{z=10;break e}case 0:{u=c;break e}default:}B=c+1|0,e[I>>2]=B,u=l[B>>0]|0,c=B}e:do if((z|0)==10){z=0,u=c;do{if((l[c+1>>0]|0)!=37)break e;u=u+1|0,c=c+2|0,e[I>>2]=c}while((l[c>>0]|0)==37)}while(0);u=u-W|0,S&&V0(r,W,u)}while(u|0);if(B=(Yr(l[(e[I>>2]|0)+1>>0]|0)|0)==0,c=e[I>>2]|0,!B&&(l[c+2>>0]|0)==36?(k=(l[c+1>>0]|0)+-48|0,y=1,u=3):(k=-1,y=h,u=1),u=c+u|0,e[I>>2]=u,c=l[u>>0]|0,h=(c<<24>>24)+-32|0,h>>>0>31|(1<<h&75913|0)==0)v=0;else{v=0;do v=1<<h|v,u=u+1|0,e[I>>2]=u,c=l[u>>0]|0,h=(c<<24>>24)+-32|0;while(!(h>>>0>31|(1<<h&75913|0)==0))}if(c<<24>>24==42){if(Yr(l[u+1>>0]|0)|0&&(D0=e[I>>2]|0,(l[D0+2>>0]|0)==36))u=D0+1|0,e[A+((l[u>>0]|0)+-48<<2)>>2]=10,u=e[i+((l[u>>0]|0)+-48<<3)>>2]|0,h=1,c=D0+3|0;else{if(y|0){n=-1;break}S?(B=(e[t>>2]|0)+(4-1)&~(4-1),u=e[B>>2]|0,e[t>>2]=B+4):u=0,h=0,c=(e[I>>2]|0)+1|0}e[I>>2]=c,B=(u|0)<0,C=B?0-u|0:u,v=B?v|8192:v,B=h}else{if(u=wA(I)|0,(u|0)<0){n=-1;break}C=u,B=y,c=e[I>>2]|0}do if((l[c>>0]|0)==46){if(u=c+1|0,(l[u>>0]|0)!=42){e[I>>2]=u,u=wA(I)|0,c=e[I>>2]|0;break}if(Yr(l[c+2>>0]|0)|0&&(O=e[I>>2]|0,(l[O+3>>0]|0)==36)){u=O+2|0,e[A+((l[u>>0]|0)+-48<<2)>>2]=10,u=e[i+((l[u>>0]|0)+-48<<3)>>2]|0,c=O+4|0,e[I>>2]=c;break}if(B|0){n=-1;break r}S?(X=(e[t>>2]|0)+(4-1)&~(4-1),u=e[X>>2]|0,e[t>>2]=X+4):u=0,c=(e[I>>2]|0)+2|0,e[I>>2]=c}else u=-1;while(0);for(X=0;;){if(((l[c>>0]|0)+-65|0)>>>0>57){n=-1;break r}if(h=c,c=c+1|0,e[I>>2]=c,h=l[(l[h>>0]|0)+-65+(176+(X*58|0))>>0]|0,y=h&255,(y+-1|0)>>>0>=8)break;X=y}if(!(h<<24>>24)){n=-1;break}F=(k|0)>-1;do if(h<<24>>24==19)if(F){n=-1;break r}else z=54;else{if(F){e[A+(k<<2)>>2]=y,F=i+(k<<3)|0,k=e[F+4>>2]|0,z=m0,e[z>>2]=e[F>>2],e[z+4>>2]=k,z=54;break}if(!S){n=0;break r}kA(m0,y,t,f),c=e[I>>2]|0,z=55}while(0);(z|0)==54&&(z=0,S?z=55:u=0);e:do if((z|0)==55){z=0,c=l[c+-1>>0]|0,c=(X|0)!=0&(c&15|0)==3?c&-33:c,h=v&-65537,k=v&8192|0?h:v;n:do switch(c|0){case 110:switch((X&255)<<24>>24){case 0:{e[e[m0>>2]>>2]=n,u=0;break e}case 1:{e[e[m0>>2]>>2]=n,u=0;break e}case 2:{u=e[m0>>2]|0,e[u>>2]=n,e[u+4>>2]=((n|0)<0)<<31>>31,u=0;break e}case 3:{g[e[m0>>2]>>1]=n,u=0;break e}case 4:{l[e[m0>>2]>>0]=n,u=0;break e}case 6:{e[e[m0>>2]>>2]=n,u=0;break e}case 7:{u=e[m0>>2]|0,e[u>>2]=n,e[u+4>>2]=((n|0)<0)<<31>>31,u=0;break e}default:{u=0;break e}}case 112:{c=120,u=u>>>0>8?u:8,h=k|8,z=67;break}case 88:case 120:{h=k,z=67;break}case 111:{F=m0,F=u6(e[F>>2]|0,e[F+4>>2]|0,U)|0,h=e0-F|0,v=0,y=20230,u=(k&8|0)==0|(u|0)>(h|0)?u:h+1|0,h=k,z=73;break}case 105:case 100:if(h=m0,c=e[h>>2]|0,h=e[h+4>>2]|0,(h|0)<0){c=cr(0,0,c|0,h|0)|0,h=r0()|0,v=m0,e[v>>2]=c,e[v+4>>2]=h,v=1,y=20230,z=72;break n}else{v=(k&2049|0)!=0&1,y=k&2048|0?20231:k&1|0?20232:20230,z=72;break n}case 117:{h=m0,v=0,y=20230,c=e[h>>2]|0,h=e[h+4>>2]|0,z=72;break}case 99:{l[s0>>0]=e[m0>>2],W=s0,v=0,y=20230,F=1,c=h,u=e0;break}case 115:{X=e[m0>>2]|0,X=X|0?X:20240,k=n6(X,0,u)|0,a0=(k|0)==0,W=X,v=0,y=20230,F=a0?u:k-X|0,c=h,u=a0?X+u|0:k;break}case 67:{e[H>>2]=e[m0>>2],e[n0>>2]=0,e[m0>>2]=H,y=-1,z=79;break}case 83:{u?(y=u,z=79):(k0(r,32,C,0,k),u=0,z=89);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{u=qA[o&1](r,+J[m0>>3],C,u,k,c)|0;break e}default:v=0,y=20230,F=u,c=k,u=e0}while(0);n:do if((z|0)==67)F=m0,F=f6(e[F>>2]|0,e[F+4>>2]|0,U,c&32)|0,y=m0,y=(h&8|0)==0|(e[y>>2]|0)==0&(e[y+4>>2]|0)==0,v=y?0:2,y=y?20230:20230+(c>>>4)|0,z=73;else if((z|0)==72)F=ur(c,h,U)|0,h=k,z=73;else if((z|0)==79){for(z=0,v=e[m0>>2]|0,u=0;c=e[v>>2]|0,!!c;){if(c=WA(c0,c)|0,h=(c|0)<0,h|c>>>0>(y-u|0)>>>0){z=83;break}if(u=c+u|0,y>>>0>u>>>0)v=v+4|0;else break}if((z|0)==83&&(z=0,h)){n=-1;break r}if(k0(r,32,C,u,k),!u)u=0,z=89;else for(h=e[m0>>2]|0,v=0;;){if(c=e[h>>2]|0,!c){z=89;break n}if(c=WA(c0,c)|0,v=c+v|0,(v|0)>(u|0)){z=89;break n}if(V0(r,c0,c),v>>>0>=u>>>0){z=89;break}else h=h+4|0}}while(0);if((z|0)==73)z=0,c=m0,c=(e[c>>2]|0)!=0|(e[c+4>>2]|0)!=0,a0=(u|0)!=0|c,c=e0-F+((c^1)&1)|0,W=a0?F:U,F=a0?(u|0)>(c|0)?u:c:0,c=(u|0)>-1?h&-65537:h,u=e0;else if((z|0)==89){z=0,k0(r,32,C,u,k^8192),u=(C|0)>(u|0)?C:u;break}k=u-W|0,X=(F|0)<(k|0)?k:F,a0=X+v|0,u=(C|0)<(a0|0)?a0:C,k0(r,32,u,a0,c),V0(r,y,v),k0(r,48,u,a0,c^65536),k0(r,48,X,k,0),V0(r,W,k),k0(r,32,u,a0,c^8192)}while(0);h=B}r:do if((z|0)==92&&!r)if(!h)n=0;else{for(n=1;u=e[A+(n<<2)>>2]|0,!!u;)if(kA(i+(n<<3)|0,u,t,f),n=n+1|0,n>>>0>=10){n=1;break r}for(;;){if(e[A+(n<<2)>>2]|0){n=-1;break r}if(n=n+1|0,n>>>0>=10){n=1;break}}}while(0);return s=a2,n|0}function V0(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]&32||bm(n,t,r)|0}function wA(r){r=r|0;var n=0,t=0;if(!(Yr(l[e[r>>2]>>0]|0)|0))n=0;else{n=0;do t=e[r>>2]|0,n=(n*10|0)+-48+(l[t>>0]|0)|0,t=t+1|0,e[r>>2]=t;while(Yr(l[t>>0]|0)|0)}return n|0}function kA(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;r:do if(n>>>0<=20)do switch(n|0){case 9:{n=(e[t>>2]|0)+(4-1)&~(4-1),i=e[n>>2]|0,e[t>>2]=n+4,e[r>>2]=i;break r}case 10:{i=(e[t>>2]|0)+(4-1)&~(4-1),n=e[i>>2]|0,e[t>>2]=i+4,i=r,e[i>>2]=n,e[i+4>>2]=((n|0)<0)<<31>>31;break r}case 11:{i=(e[t>>2]|0)+(4-1)&~(4-1),n=e[i>>2]|0,e[t>>2]=i+4,i=r,e[i>>2]=n,e[i+4>>2]=0;break r}case 12:{i=(e[t>>2]|0)+(8-1)&~(8-1),n=i,A=e[n>>2]|0,n=e[n+4>>2]|0,e[t>>2]=i+8,i=r,e[i>>2]=A,e[i+4>>2]=n;break r}case 13:{A=(e[t>>2]|0)+(4-1)&~(4-1),i=e[A>>2]|0,e[t>>2]=A+4,i=(i&65535)<<16>>16,A=r,e[A>>2]=i,e[A+4>>2]=((i|0)<0)<<31>>31;break r}case 14:{A=(e[t>>2]|0)+(4-1)&~(4-1),i=e[A>>2]|0,e[t>>2]=A+4,A=r,e[A>>2]=i&65535,e[A+4>>2]=0;break r}case 15:{A=(e[t>>2]|0)+(4-1)&~(4-1),i=e[A>>2]|0,e[t>>2]=A+4,i=(i&255)<<24>>24,A=r,e[A>>2]=i,e[A+4>>2]=((i|0)<0)<<31>>31;break r}case 16:{A=(e[t>>2]|0)+(4-1)&~(4-1),i=e[A>>2]|0,e[t>>2]=A+4,A=r,e[A>>2]=i&255,e[A+4>>2]=0;break r}case 17:{A=(e[t>>2]|0)+(8-1)&~(8-1),o=+J[A>>3],e[t>>2]=A+8,J[r>>3]=o;break r}case 18:{k2[i&15](r,t);break r}default:break r}while(0);while(0)}function f6(r,n,t,i){if(r=r|0,n=n|0,t=t|0,i=i|0,!((r|0)==0&(n|0)==0))do t=t+-1|0,l[t>>0]=Z[640+(r&15)>>0]|0|i,r=Xe(r|0,n|0,4)|0,n=r0()|0;while(!((r|0)==0&(n|0)==0));return t|0}function u6(r,n,t){if(r=r|0,n=n|0,t=t|0,!((r|0)==0&(n|0)==0))do t=t+-1|0,l[t>>0]=r&7|48,r=Xe(r|0,n|0,3)|0,n=r0()|0;while(!((r|0)==0&(n|0)==0));return t|0}function ur(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;if(n>>>0>0|(n|0)==0&r>>>0>4294967295){do i=r,r=En(r|0,n|0,10,0)|0,A=n,n=r0()|0,o=_n(r|0,n|0,10,0)|0,o=cr(i|0,A|0,o|0,r0()|0)|0,r0()|0,t=t+-1|0,l[t>>0]=o&255|48;while(A>>>0>9|(A|0)==9&i>>>0>4294967295);n=r}else n=r;if(n)do o=n,n=(n>>>0)/10|0,t=t+-1|0,l[t>>0]=o-(n*10|0)|48;while(o>>>0>=10);return t|0}function k0(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0,f=0;if(f=s,s=s+256|0,o=f,(t|0)>(i|0)&(A&73728|0)==0){if(A=t-i|0,O2(o|0,n<<24>>24|0,(A>>>0<256?A:256)|0)|0,A>>>0>255){n=t-i|0;do V0(r,o,256),A=A+-256|0;while(A>>>0>255);A=n&255}V0(r,o,A)}s=f}function WA(r,n){return r=r|0,n=n|0,r?r=l6(r,n,0)|0:r=0,r|0}function l6(r,n,t){r=r|0,n=n|0,t=t|0;do if(r){if(n>>>0<128){l[r>>0]=n,r=1;break}if(!(e[e[(c6()|0)+176>>2]>>2]|0))if((n&-128|0)==57216){l[r>>0]=n,r=1;break}else{e[(i2()|0)>>2]=25,r=-1;break}if(n>>>0<2048){l[r>>0]=n>>>6|192,l[r+1>>0]=n&63|128,r=2;break}if(n>>>0<55296|(n&-8192|0)==57344){l[r>>0]=n>>>12|224,l[r+1>>0]=n>>>6&63|128,l[r+2>>0]=n&63|128,r=3;break}if((n+-65536|0)>>>0<1048576){l[r>>0]=n>>>18|240,l[r+1>>0]=n>>>12&63|128,l[r+2>>0]=n>>>6&63|128,l[r+3>>0]=n&63|128,r=4;break}else{e[(i2()|0)>>2]=25,r=-1;break}}else r=1;while(0);return r|0}function c6(){return VA()|0}function XA(r){r=+r;var n=0;return J[d>>3]=r,n=e[d>>2]|0,f0(e[d+4>>2]|0),n|0}function dA(r,n){r=+r,n=n|0;var t=0,i=0,A=0;switch(J[d>>3]=r,t=e[d>>2]|0,i=e[d+4>>2]|0,A=Xe(t|0,i|0,52)|0,r0()|0,A&2047){case 0:{r!=0?(r=+dA(r*18446744073709552e3,n),t=(e[n>>2]|0)+-64|0):t=0,e[n>>2]=t;break}case 2047:break;default:e[n>>2]=(A&2047)+-1022,e[d>>2]=t,e[d+4>>2]=i&-2146435073|1071644672,r=+J[d>>3]}return+r}function s6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;r:do if(!t)r=0;else{for(;i=l[r>>0]|0,A=l[n>>0]|0,i<<24>>24==A<<24>>24;)if(t=t+-1|0,t)r=r+1|0,n=n+1|0;else{r=0;break r}r=(i&255)-(A&255)|0}while(0);return r|0}function h6(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;return A=s,s=s+16|0,o=A,e[o>>2]=i,i=m6(r,n,t,o)|0,s=A,i|0}function m6(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0,f=0,u=0;return u=s,s=s+160|0,A=u+144|0,f=u,x0(f|0,3672,144)|0,(n+-1|0)>>>0>2147483646?n?(e[(i2()|0)>>2]=61,n=-1):(r=A,n=1,o=4):o=4,(o|0)==4&&(o=-2-r|0,o=n>>>0>o>>>0?o:n,e[f+48>>2]=o,A=f+20|0,e[A>>2]=r,e[f+44>>2]=r,n=r+o|0,r=f+16|0,e[r>>2]=n,e[f+28>>2]=n,n=t6(f,t,i)|0,o&&(f=e[A>>2]|0,l[f+(((f|0)==(e[r>>2]|0))<<31>>31)>>0]=0)),s=u,n|0}function p6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;return i=r+20|0,A=e[i>>2]|0,r=(e[r+16>>2]|0)-A|0,r=r>>>0>t>>>0?t:r,x0(A|0,n|0,r|0)|0,e[i>>2]=(e[i>>2]|0)+r,t|0}function v6(r){r=r|0;var n=0,t=0;return n=(Ve(r)|0)+1|0,t=We(n)|0,t?r=x0(t|0,r|0,n|0)|0:r=0,r|0}function y6(r,n){r=r|0,n=n|0;var t=0,i=0;for(t=0;;){if((Z[656+t>>0]|0)==(r|0)){i=4;break}if(t=t+1|0,(t|0)==87){r=87,i=5;break}}if((i|0)==4&&(t?(r=t,i=5):t=752),(i|0)==5){t=752;do{do i=t,t=t+1|0;while(l[i>>0]|0);r=r+-1|0}while(r|0)}return Z6(t,e[n+20>>2]|0)|0}function Z6(r,n){return r=r|0,n=n|0,r6(r,n)|0}function R6(r){return r=r|0,y6(r,e[(V6()|0)+176>>2]|0)|0}function V6(){return VA()|0}function F6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;return i=R6(r)|0,r=Ve(i)|0,r>>>0>=t>>>0?(r=t+-1|0,t&&(x0(n|0,i|0,r|0)|0,l[n+r>>0]=0),r=68):(x0(n|0,i|0,r+1|0)|0,r=0),r|0}function w6(){var r=0,n=0,t=0,i=0,A=0,o=0,f=0;i=s,s=s+48|0,o=i+32|0,n=i+24|0,f=i+16|0,A=i,i=i+36|0,r=gA()|0,r|0&&(t=e[r>>2]|0,t|0)&&(r=t+48|0,UA(r)|0||(e[n>>2]=20420,E2(20370,n)),n=TA(r)|0,(n|0)==1126902529&(r0()|0)==1129074247?r=e[t+44>>2]|0:r=t+80|0,e[i>>2]=r,t=e[t>>2]|0,r=e[t+4>>2]|0,sr[e[(e[954]|0)+16>>2]&7](3816,t,i)|0?(f=e[i>>2]|0,f=de[e[(e[f>>2]|0)+8>>2]&15](f)|0,e[A>>2]=20420,e[A+4>>2]=r,e[A+8>>2]=f,E2(20284,A)):(e[f>>2]=20420,e[f+4>>2]=r,E2(20329,f))),E2(20408,o)}function gA(){return 21640}function UA(r){return r=r|0,r=TA(r)|0,(r&-256|0)==1126902528&(r0()|0)==1129074247|0}function TA(r){r=r|0;var n=0;return n=r,r=e[n>>2]|0,f0(e[n+4>>2]|0),r|0}function E2(r,n){r=r|0,n=n|0,St()}function lr(r){r=r|0}function k6(r){r=r|0,lr(r),x(r)}function W6(r){r=r|0}function X6(r){r=r|0}function d6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0;if(c=s,s=s+64|0,f=c,y0(r,n,0)|0)r=1;else if(n|0&&(u=J0(n,3840,3824,0)|0,(u|0)!=0)){e[f>>2]=u,e[f+4>>2]=0,e[f+8>>2]=r,e[f+12>>2]=-1,r=f+16|0,n=f+24|0,i=f+48|0,A=r,o=A+36|0;do e[A>>2]=0,A=A+4|0;while((A|0)<(o|0));g[r+36>>1]=0,l[r+38>>0]=0,e[i>>2]=1,jr[e[(e[u>>2]|0)+28>>2]&7](u,f,e[t>>2]|0,1),(e[n>>2]|0)==1?(e[t>>2]=e[r>>2],r=1):r=0}else r=0;return s=c,r|0}function g6(r,n,t,i,A,o){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0,y0(r,e[n+8>>2]|0,o)|0&&Mn(0,n,t,i,A)}function U6(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0;do if(y0(r,e[n+8>>2]|0,A)|0)zn(0,n,t,i);else if(y0(r,e[n>>2]|0,A)|0){if((e[n+16>>2]|0)!=(t|0)&&(o=n+20|0,(e[o>>2]|0)!=(t|0))){e[n+32>>2]=i,e[o>>2]=t,A=n+40|0,e[A>>2]=(e[A>>2]|0)+1,(e[n+36>>2]|0)==1&&(e[n+24>>2]|0)==2&&(l[n+54>>0]=1),e[n+44>>2]=4;break}(i|0)==1&&(e[n+32>>2]=1)}while(0)}function T6(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0,y0(r,e[n+8>>2]|0,0)|0&&Nn(0,n,t,i)}function y0(r,n,t){return r=r|0,n=n|0,t=t|0,t?(r|0)==(n|0)?r=1:r=(FA(e[r+4>>2]|0,e[n+4>>2]|0)|0)==0:r=(e[r+4>>2]|0)==(e[n+4>>2]|0),r|0}function Nn(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;r=n+16|0,A=e[r>>2]|0;do if(A){if((A|0)!=(t|0)){i=n+36|0,e[i>>2]=(e[i>>2]|0)+1,e[n+24>>2]=2,l[n+54>>0]=1;break}r=n+24|0,(e[r>>2]|0)==2&&(e[r>>2]=i)}else e[r>>2]=t,e[n+24>>2]=i,e[n+36>>2]=1;while(0)}function zn(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0;(e[n+4>>2]|0)==(t|0)&&(A=n+28|0,(e[A>>2]|0)!=1)&&(e[A>>2]=i)}function Mn(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,l[n+53>>0]=1;do if((e[n+4>>2]|0)==(i|0)){if(l[n+52>>0]=1,r=n+16|0,i=e[r>>2]|0,!i){if(e[r>>2]=t,e[n+24>>2]=A,e[n+36>>2]=1,!((A|0)==1&&(e[n+48>>2]|0)==1))break;l[n+54>>0]=1;break}if((i|0)!=(t|0)){A=n+36|0,e[A>>2]=(e[A>>2]|0)+1,l[n+54>>0]=1;break}i=n+24|0,r=e[i>>2]|0,(r|0)==2&&(e[i>>2]=A,r=A),(r|0)==1&&(e[n+48>>2]|0)==1&&(l[n+54>>0]=1)}while(0)}function J0(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0;F=s,s=s+64|0,v=F,h=e[r>>2]|0,y=r+(e[h+-8>>2]|0)|0,h=e[h+-4>>2]|0,e[v>>2]=t,e[v+4>>2]=r,e[v+8>>2]=n,e[v+12>>2]=i,r=v+16|0,n=v+20|0,i=v+24|0,A=v+28|0,o=v+32|0,f=v+40|0,u=r,c=u+36|0;do e[u>>2]=0,u=u+4|0;while((u|0)<(c|0));g[r+36>>1]=0,l[r+38>>0]=0;r:do if(y0(h,t,0)|0)e[v+48>>2]=1,Cr[e[(e[h>>2]|0)+20>>2]&3](h,v,y,y,1,0),r=(e[i>>2]|0)==1?y:0;else{switch(ge[e[(e[h>>2]|0)+24>>2]&3](h,v,y,1,0),e[v+36>>2]|0){case 0:{r=(e[f>>2]|0)==1&(e[A>>2]|0)==1&(e[o>>2]|0)==1?e[n>>2]|0:0;break r}case 1:break;default:{r=0;break r}}if((e[i>>2]|0)!=1&&!((e[f>>2]|0)==0&(e[A>>2]|0)==1&(e[o>>2]|0)==1)){r=0;break}r=e[r>>2]|0}while(0);return s=F,r|0}function G6(r){r=r|0,lr(r),x(r)}function N6(r,n,t,i,A,o){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0,y0(r,e[n+8>>2]|0,o)|0?Mn(0,n,t,i,A):(r=e[r+8>>2]|0,Cr[e[(e[r>>2]|0)+20>>2]&3](r,n,t,i,A,o))}function z6(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0,f=0,u=0;r:do if(y0(r,e[n+8>>2]|0,A)|0)zn(0,n,t,i);else{if(!(y0(r,e[n>>2]|0,A)|0)){f=e[r+8>>2]|0,ge[e[(e[f>>2]|0)+24>>2]&3](f,n,t,i,A);break}if((e[n+16>>2]|0)!=(t|0)&&(f=n+20|0,(e[f>>2]|0)!=(t|0))){e[n+32>>2]=i,i=n+44|0;do if((e[i>>2]|0)!=4)if(o=n+52|0,l[o>>0]=0,u=n+53|0,l[u>>0]=0,r=e[r+8>>2]|0,Cr[e[(e[r>>2]|0)+20>>2]&3](r,n,t,t,1,A),l[u>>0]|0){if(u=(l[o>>0]|0)==0,e[i>>2]=3,u)break;break r}else{e[i>>2]=4;break}while(0);if(e[f>>2]=t,u=n+40|0,e[u>>2]=(e[u>>2]|0)+1,(e[n+36>>2]|0)!=1||(e[n+24>>2]|0)!=2)break;l[n+54>>0]=1;break}(i|0)==1&&(e[n+32>>2]=1)}while(0)}function M6(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0,y0(r,e[n+8>>2]|0,0)|0?Nn(0,n,t,i):(r=e[r+8>>2]|0,jr[e[(e[r>>2]|0)+28>>2]&7](r,n,t,i))}function x(r){r=r|0,xn(r)}function My(r){r=r|0}function B6(){var r=0,n=0;r=gA()|0,r|0&&(n=e[r>>2]|0,n|0)&&UA(n+48|0)|0&&GA(e[n+12>>2]|0),GA(J6()|0)}function GA(r){r=r|0;var n=0;n=s,s=s+16|0,On[r&3](),E2(20559,n)}function J6(){return 2}function Y6(r){r=r|0}function x6(r){r=r|0,x(r)}function _6(r){return r=r|0,20599}function Fe(r){r=r|0,e[r>>2]=5916,zA(r+4|0)}function E6(r){r=r|0,Fe(r),x(r)}function S6(r){return r=r|0,NA(r+4|0)|0}function NA(r){return r=r|0,e[r>>2]|0}function zA(r){r=r|0;var n=0,t=0;j6(r)|0&&(n=C6(e[r>>2]|0)|0,t=n+8|0,r=e[t>>2]|0,e[t>>2]=r+-1,(r|0)<1)&&x(n)}function j6(r){return r=r|0,1}function C6(r){return r=r|0,r+-12|0}function Y0(r){r=r|0,e[r>>2]=5936,zA(r+4|0)}function O6(r){r=r|0,Y0(r),x(r)}function I6(r){return r=r|0,NA(r+4|0)|0}function a6(r){r=r|0,Fe(r),x(r)}function H6(r){r=r|0,Fe(r),x(r)}function Q6(){var r=0;r=s,s=s+16|0,E2(20848,r)}function D6(r){r=r|0,lr(r),x(r)}function P6(r,n,t){return r=r|0,n=n|0,t=t|0,y0(r,n,0)|0}function L6(r){r=r|0,lr(r),x(r)}function $6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0;v=s,s=s+64|0,c=v;do if(y0(n,4048,0)|0)e[t>>2]=0,n=1;else{if(q6(r,n,0)|0){if(n=e[t>>2]|0,!n){n=1;break}e[t>>2]=e[n>>2],n=1;break}if(n|0&&(i=J0(n,3840,3976,0)|0,(i|0)!=0))if(n=e[t>>2]|0,n|0&&(e[t>>2]=e[n>>2]),n=e[i+8>>2]|0,o=r+8|0,A=e[o>>2]|0,!(n&7&(A^7)|0)&&!((n&96^96)&A|0))if(A=r+12|0,r=e[A>>2]|0,i=i+12|0,n=e[i>>2]|0,y0(r,n,0)|0)n=1;else{if(y0(r,4040,0)|0){if(!n){n=1;break}n=(J0(n,3840,3992,0)|0)==0;break}if(r){if(n=J0(r,3840,3976,0)|0,n|0){if(!(e[o>>2]&1)){n=0;break}n=K6(n,e[i>>2]|0)|0;break}if(n=e[A>>2]|0,n){if(n=J0(n,3840,4008,0)|0,n|0){if(!(e[o>>2]&1)){n=0;break}n=MA(n,e[i>>2]|0)|0;break}if(n=e[A>>2]|0,n|0&&(f=J0(n,3840,3824,0)|0,(f|0)!=0)&&(u=e[i>>2]|0,(u|0)!=0)&&(h=J0(u,3840,3824,0)|0,(h|0)!=0)){e[c>>2]=h,e[c+4>>2]=0,e[c+8>>2]=f,e[c+12>>2]=-1,n=c+16|0,r=c+24|0,i=c+48|0,A=n,o=A+36|0;do e[A>>2]=0,A=A+4|0;while((A|0)<(o|0));g[n+36>>1]=0,l[n+38>>0]=0,e[i>>2]=1,jr[e[(e[h>>2]|0)+28>>2]&7](h,c,e[t>>2]|0,1);do if((e[r>>2]|0)==1){if(!(e[t>>2]|0)){n=1;break}e[t>>2]=e[n>>2],n=1}else n=0;while(0)}else n=0}else n=0}else n=0}else n=0;else n=0}while(0);return s=v,n|0}function q6(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;return e[r+8>>2]&24?(t=1,A=5):n|0&&(i=J0(n,3840,3960,0)|0,(i|0)!=0)?(t=(e[i+8>>2]&24|0)!=0,A=5):t=0,(A|0)==5&&(t=y0(r,n,t)|0),t|0}function K6(r,n){r=r|0,n=n|0;for(var t=0,i=0,A=0,o=0,f=0;;){if(!n){n=0;break}if(t=J0(n,3840,3976,0)|0,!t){n=0;break}if(A=e[r+8>>2]|0,e[t+8>>2]&~A|0){n=0;break}if(i=r+12|0,n=e[i>>2]|0,t=t+12|0,y0(n,e[t>>2]|0,0)|0){n=1;break}if((A&1|0)==0|(n|0)==0){n=0;break}if(r=J0(n,3840,3976,0)|0,!r){f=9;break}n=e[t>>2]|0}return(f|0)==9&&(n=e[i>>2]|0,n|0&&(o=J0(n,3840,4008,0)|0,(o|0)!=0)?n=MA(o,e[t>>2]|0)|0:n=0),n|0}function MA(r,n){r=r|0,n=n|0;var t=0;return n|0&&(t=J0(n,3840,4008,0)|0,(t|0)!=0)&&!(e[t+8>>2]&~e[r+8>>2]|0)&&y0(e[r+12>>2]|0,e[t+12>>2]|0,0)|0?r=y0(e[r+16>>2]|0,e[t+16>>2]|0,0)|0:r=0,r|0}function b6(r){r=r|0,lr(r),x(r)}function rp(r,n,t,i,A,o){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0;var f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0;if(y0(r,e[n+8>>2]|0,o)|0)Mn(0,n,t,i,A);else{k=n+52|0,u=l[k>>0]|0,X=n+53|0,f=l[X>>0]|0,W=e[r+12>>2]|0,v=r+16+(W<<3)|0,l[k>>0]=0,l[X>>0]=0,Bn(r+16|0,n,t,i,A,o),c=l[k>>0]|0,u=c|u,h=l[X>>0]|0,f=h|f;r:do if((W|0)>1){y=n+24|0,F=r+8|0,W=n+54|0,r=r+24|0;do{if(f=f&1,u=u&1,l[W>>0]|0)break r;if(c<<24>>24){if((e[y>>2]|0)==1||!(e[F>>2]&2))break r}else if(h<<24>>24&&!(e[F>>2]&1|0))break r;l[k>>0]=0,l[X>>0]=0,Bn(r,n,t,i,A,o),c=l[k>>0]|0,u=c|u,h=l[X>>0]|0,f=h|f,r=r+8|0}while(r>>>0<v>>>0)}while(0);l[k>>0]=u<<24>>24!=0&1,l[X>>0]=f<<24>>24!=0&1}}function ep(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0;r:do if(y0(r,e[n+8>>2]|0,A)|0)zn(0,n,t,i);else{if(!(y0(r,e[n>>2]|0,A)|0)){if(W=e[r+12>>2]|0,c=r+16+(W<<3)|0,we(r+16|0,n,t,i,A),o=r+24|0,(W|0)<=1)break;if(r=e[r+8>>2]|0,!(r&2|0)&&(u=n+36|0,(e[u>>2]|0)!=1)){if(!(r&1)){for(r=n+54|0;;)if(l[r>>0]|0||(e[u>>2]|0)==1||(we(o,n,t,i,A),o=o+8|0,o>>>0>=c>>>0))break r}for(r=n+24|0,f=n+54|0;;)if(l[f>>0]|0||(e[u>>2]|0)==1&&(e[r>>2]|0)==1||(we(o,n,t,i,A),o=o+8|0,o>>>0>=c>>>0))break r}for(r=n+54|0;;)if(l[r>>0]|0||(we(o,n,t,i,A),o=o+8|0,o>>>0>=c>>>0))break r}if((e[n+16>>2]|0)!=(t|0)&&(W=n+20|0,(e[W>>2]|0)!=(t|0))){if(e[n+32>>2]=i,F=n+44|0,(e[F>>2]|0)!=4){u=r+16+(e[r+12>>2]<<3)|0,c=n+52|0,i=n+53|0,h=n+54|0,v=r+8|0,y=n+24|0,o=0,f=r+16|0,r=0;e:for(;;){if(f>>>0>=u>>>0){f=18;break}if(l[c>>0]=0,l[i>>0]=0,Bn(f,n,t,t,1,A),l[h>>0]|0){f=18;break}do if(l[i>>0]|0){if(!(l[c>>0]|0))if(e[v>>2]&1){r=1;break}else{f=19;break e}if((e[y>>2]|0)==1){o=1,f=19;break e}if(e[v>>2]&2)o=1,r=1;else{o=1,f=19;break e}}while(0);f=f+8|0}if((f|0)==18&&(r?f=19:r=4),(f|0)==19&&(r=3),e[F>>2]=r,o&1)break}if(e[W>>2]=t,t=n+40|0,e[t>>2]=(e[t>>2]|0)+1,(e[n+36>>2]|0)!=1||(e[n+24>>2]|0)!=2)break;l[n+54>>0]=1;break}(i|0)==1&&(e[n+32>>2]=1)}while(0)}function np(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;r:do if(y0(r,e[n+8>>2]|0,0)|0)Nn(0,n,t,i);else if(o=e[r+12>>2]|0,A=r+16+(o<<3)|0,BA(r+16|0,n,t,i),(o|0)>1){o=n+54|0,r=r+24|0;do{if(BA(r,n,t,i),l[o>>0]|0)break r;r=r+8|0}while(r>>>0<A>>>0)}while(0)}function BA(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;o=e[r+4>>2]|0,t?(A=o>>8,o&1&&(A=e[(e[t>>2]|0)+A>>2]|0)):A=0,r=e[r>>2]|0,jr[e[(e[r>>2]|0)+28>>2]&7](r,n,t+A|0,o&2|0?i:2)}function Bn(r,n,t,i,A,o){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0;var f=0,u=0;u=e[r+4>>2]|0,f=u>>8,u&1&&(f=e[(e[i>>2]|0)+f>>2]|0),r=e[r>>2]|0,Cr[e[(e[r>>2]|0)+20>>2]&3](r,n,t,i+f|0,u&2|0?A:2,o)}function we(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0,f=0;f=e[r+4>>2]|0,o=f>>8,f&1&&(o=e[(e[t>>2]|0)+o>>2]|0),r=e[r>>2]|0,ge[e[(e[r>>2]|0)+24>>2]&3](r,n,t+o|0,f&2|0?i:2,A)}function tp(r){r=r|0,e[r>>2]=5896}function S2(r){r=r|0;var n=0,t=0;return n=s,s=s+16|0,t=n,JA(t,r),r=ip(t)|0,s=n,r|0}function JA(r,n){r=r|0,n=n|0,fp(r,n)}function ip(r){r=r|0;var n=0,t=0;return n=s,s=s+16|0,t=n,YA(t,e[r+4>>2]|0),(Ap(t)|0)<<24>>24?r=0:r=op(xA(r)|0)|0,s=n,r|0}function YA(r,n){r=r|0,n=n|0,e[r>>2]=n}function Ap(r){return r=r|0,l[e[r>>2]>>0]|0}function xA(r){return r=r|0,r|0}function op(r){r=r|0;var n=0,t=0,i=0,A=0;A=s,s=s+16|0,i=A,r=e[r+8>>2]|0,n=l[r>>0]|0;do if(n<<24>>24!=1)if(n&2)E2(20985,i);else{l[r>>0]=2,t=1;break}else t=0;while(0);return s=A,t|0}function fp(r,n){r=r|0,n=n|0,e[r>>2]=n,e[r+4>>2]=n,e[r+8>>2]=n+1,e[r+12>>2]=0}function j2(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,JA(t,r),up(t),s=n}function up(r){r=r|0;var n=0,t=0;n=s,s=s+16|0,t=n,YA(t,e[r+4>>2]|0),lp(t),cp(xA(r)|0),s=n}function lp(r){r=r|0,l[e[r>>2]>>0]=1}function cp(r){r=r|0,l[e[r+8>>2]>>0]=1}function sp(){return 0}function _(r){r=r|0;var n=0,t=0;for(t=r|0?r:1;;){if(n=We(t)|0,n|0){r=6;break}if(r=sp()|0,!r){r=5;break}On[r&3]()}if((r|0)==5)t=u0(4)|0,tp(t),l0(t|0,3880,121);else if((r|0)==6)return n|0;return 0}function _A(r){return r=r|0,_(r)|0}function EA(r){r=r|0,x(r)}function hp(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;return A=s,s=s+16|0,i=A,e[i>>2]=e[t>>2],r=sr[e[(e[r>>2]|0)+16>>2]&7](r,n,i)|0,r&&(e[t>>2]=e[i>>2]),s=A,r&1|0}function mp(r){return r=r|0,r?r=(J0(r,3840,3976,0)|0)!=0&1:r=0,r|0}function pp(r){return r=r|0,0}function vp(){return(yp()|0)>0|0}function yp(){return R1()|0}function SA(r){r=r|0}function Zp(r){r=r|0,SA(r),x(r)}function Rp(r){return r=r|0,21039}function Z0(r){r=r|0}function s2(r){r=r|0;var n=0,t=0;n=r+8|0,e[n>>2]|0&&(t=e[n>>2]|0,e[n>>2]=t+-1,(t|0)!=0)||o0[e[(e[r>>2]|0)+16>>2]&255](r)}function Vp(r){if(r=r|0,r=pp(r)|0,r)Qp(r,21145);else return}function Fp(r){r=r|0}function Jn(r,n){r=r|0,n=n|0;var t=0,i=0;i=Ve(n)|0,t=_(i+13|0)|0,e[t>>2]=i,e[t+4>>2]=i,e[t+8>>2]=0,t=wp(t)|0,x0(t|0,n|0,i+1|0)|0,e[r>>2]=t}function wp(r){return r=r|0,r+12|0}function h2(r,n){r=r|0,n=n|0,e[r>>2]=5916,Jn(r+4|0,n)}function kp(r,n){r=r|0,n=n|0,e[r>>2]=5936,Jn(r+4|0,(l[n+11>>0]|0)<0?e[n>>2]|0:n)}function Q0(r,n){r=r|0,n=n|0,e[r>>2]=5936,Jn(r+4|0,n)}function Yn(r){r=r|0,r=u0(8)|0,h2(r,21163),e[r>>2]=5956,l0(r|0,3928,123)}function Wp(r){r=r|0,r=u0(8)|0,h2(r,21163),e[r>>2]=5976,l0(r|0,3944,123)}function ke(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;A=s,s=s+16|0,i=A,t>>>0>4294967279&&Yn(r),t>>>0<11?l[r+11>>0]=t:(f=t+16&-16,o=_(f)|0,e[r>>2]=o,e[r+8>>2]=f|-2147483648,e[r+4>>2]=t,r=o),xr(r,n,t)|0,l[i>>0]=0,Wr(r+t|0,i),s=A}function xr(r,n,t){return r=r|0,n=n|0,t=t|0,t|0&&x0(r|0,n|0,t|0)|0,r|0}function _r(r){r=r|0,(l[r+11>>0]|0)<0&&D(e[r>>2]|0,e[r+8>>2]&2147483647)}function Xp(r,n,t,i,A,o,f,u){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0,f=f|0,u=u|0;var c=0,h=0,v=0,y=0,F=0;F=s,s=s+16|0,y=F,(-18-n|0)>>>0<t>>>0&&Yn(r),(l[r+11>>0]|0)<0?v=e[r>>2]|0:v=r,n>>>0<2147483623?(c=t+n|0,h=n<<1,c=c>>>0<h>>>0?h:c,c=c>>>0<11?11:c+16&-16):c=-17,h=_(c)|0,A|0&&xr(h,v,A)|0,f|0&&xr(h+A|0,u,f)|0,i=i-o|0,t=i-A|0,t|0&&xr(h+A+f|0,v+A+o|0,t)|0,t=n+1|0,(t|0)!=11&&D(v,t),e[r>>2]=h,e[r+8>>2]=c|-2147483648,f=i+f|0,e[r+4>>2]=f,l[y>>0]=0,Wr(h+f|0,y),s=F}function jA(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0,u=0,c=0;return c=s,s=s+16|0,f=c,u=r+11|0,i=l[u>>0]|0,o=i<<24>>24<0,o?(A=(e[r+8>>2]&2147483647)+-1|0,i=e[r+4>>2]|0):(A=10,i=i&255),(A-i|0)>>>0>=t>>>0?t|0&&(o?A=e[r>>2]|0:A=r,xr(A+i|0,n,t)|0,i=i+t|0,(l[u>>0]|0)<0?e[r+4>>2]=i:l[u>>0]=i,l[f>>0]=0,Wr(A+i|0,f)):Xp(r,A,i+t-A|0,i,i,0,t,n),s=c,r|0}function dp(r,n){return r=r|0,n=n|0,jA(r,n,nr(n)|0)|0}function gp(r,n,t){return r=r|0,n=n|0,t=t|0,t?r=s6(r,n,t)|0:r=0,r|0}function Up(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0,f=0;return o=l[r+11>>0]|0,f=o<<24>>24<0,f?o=e[r+4>>2]|0:o=o&255,(A|0)==-1|o>>>0<n>>>0&&Wp(r),o=o-n|0,t=o>>>0<t>>>0?o:t,f&&(r=e[r>>2]|0),o=t>>>0>A>>>0,r=gp(r+n|0,i,o?A:t)|0,r?r|0:(t>>>0<A>>>0?-1:o&1)|0}function Tp(r){r=r|0}function Gp(r){r=r|0,x(r)}function Np(r){return r=r|0,21228}function zp(r,n,t){r=r|0,n=n|0,t=t|0,e[r>>2]=t,e[r+4>>2]=n}function Mp(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0;return A=s,s=s+16|0,i=A,Sr[e[(e[r>>2]|0)+12>>2]&15](i,r,n),(e[i+4>>2]|0)==(e[t+4>>2]|0)?r=(e[i>>2]|0)==(e[t>>2]|0):r=0,s=A,r|0}function Bp(r,n,t){return r=r|0,n=n|0,t=t|0,((e[n>>2]|0)==(t|0)?(e[n+4>>2]|0)==(r|0):0)|0}function Jp(r,n,t){r=r|0,n=n|0,t=t|0,(t|0)>256?ke(r,21176,nr(21176)|0):CA(r,0,t)}function CA(r,n,t){r=r|0,n=n|0,t=t|0,Yp(r,t)}function Yp(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0,f=0;f=s,s=s+1040|0,A=f+1024|0,t=f,o=e[(i2()|0)>>2]|0,i=xp(F6(n,t,1024)|0,t)|0,l[i>>0]|0?t=i:(e[A>>2]=n,h6(t,1024,21211,A)|0),e[(i2()|0)>>2]=o,ke(r,t,nr(t)|0),s=f}function xp(r,n){r=r|0,n=n|0;var t=0,i=0;switch(r|0){case 0:{t=n;break}case-1:{r=e[(i2()|0)>>2]|0,i=3;break}default:i=3}return(i|0)==3&&((r|0)==28?t=22145:k1()),t|0}function _p(r){r=r|0,x(r)}function Ep(r){return r=r|0,21353}function Sp(r,n,t){r=r|0,n=n|0,t=t|0,(t|0)>256?(OA()|0,n=6180):(Cp()|0,n=6176),e[r>>2]=t,e[r+4>>2]=n}function jp(r,n,t){r=r|0,n=n|0,t=t|0,(t|0)>256?ke(r,21319,nr(21319)|0):CA(r,0,t)}function OA(){return!(l[21488]|0)&&S2(21488)|0&&j2(21488),6180}function Cp(){return!(l[21480]|0)&&S2(21480)|0&&j2(21480),6176}function IA(r){r=r|0,Y0(r)}function Op(r){r=r|0,IA(r),x(r)}function Ip(r,n){r=r|0,n=n|0;var t=0;t=e[n+4>>2]|0,Sr[e[(e[t>>2]|0)+24>>2]&15](r,t,e[n>>2]|0)}function ap(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;for(o=s,s=s+16|0,A=o,e[n>>2]|0&&(i=l[t+11>>0]|0,i<<24>>24<0?i=e[t+4>>2]|0:i=i&255,i|0&&dp(t,21417)|0,Ip(A,n),n=l[A+11>>0]|0,i=n<<24>>24<0,jA(t,i?e[A>>2]|0:A,i?e[A+4>>2]|0:n&255)|0,_r(A)),e[r>>2]=e[t>>2],e[r+4>>2]=e[t+4>>2],e[r+8>>2]=e[t+8>>2],i=0;(i|0)!=3;)e[t+(i<<2)>>2]=0,i=i+1|0;s=o}function Hp(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;i=s,s=s+32|0,o=i+12|0,A=i,ke(A,t,nr(t)|0),ap(o,n,A),kp(r,o),_r(o),_r(A),e[r>>2]=6192,A=n,n=e[A+4>>2]|0,t=r+8|0,e[t>>2]=e[A>>2],e[t+4>>2]=n,s=i}function Qp(r,n){r=r|0,n=n|0;var t=0,i=0,A=0;A=s,s=s+16|0,i=A+8|0,t=u0(16)|0,OA()|0,e[A>>2]=r,e[A+4>>2]=6180,e[i>>2]=e[A>>2],e[i+4>>2]=e[A+4>>2],Hp(t,i,n),l0(t|0,4272,136)}function d0(r){r=r|0,r=u0(8)|0,h2(r,21420),e[r>>2]=5956,l0(r|0,3928,123)}function We(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0,k=0,C=0,B=0,z=0,S=0,U=0,e0=0;e0=s,s=s+16|0,F=e0;do if(r>>>0<245){if(h=r>>>0<11?16:r+11&-8,r=h>>>3,y=e[5412]|0,t=y>>>r,t&3|0)return n=(t&1^1)+r|0,r=21688+(n<<1<<2)|0,t=r+8|0,i=e[t>>2]|0,A=i+8|0,o=e[A>>2]|0,(o|0)==(r|0)?e[5412]=y&~(1<<n):(e[o+12>>2]=r,e[t>>2]=o),U=n<<3,e[i+4>>2]=U|3,U=i+U+4|0,e[U>>2]=e[U>>2]|1,U=A,s=e0,U|0;if(v=e[5414]|0,h>>>0>v>>>0){if(t|0)return n=2<<r,n=t<<r&(n|0-n),n=(n&0-n)+-1|0,u=n>>>12&16,n=n>>>u,t=n>>>5&8,n=n>>>t,o=n>>>2&4,n=n>>>o,r=n>>>1&2,n=n>>>r,i=n>>>1&1,i=(t|u|o|r|i)+(n>>>i)|0,n=21688+(i<<1<<2)|0,r=n+8|0,o=e[r>>2]|0,u=o+8|0,t=e[u>>2]|0,(t|0)==(n|0)?(r=y&~(1<<i),e[5412]=r):(e[t+12>>2]=n,e[r>>2]=t,r=y),U=i<<3,f=U-h|0,e[o+4>>2]=h|3,A=o+h|0,e[A+4>>2]=f|1,e[o+U>>2]=f,v|0&&(i=e[5417]|0,n=v>>>3,t=21688+(n<<1<<2)|0,n=1<<n,r&n?(r=t+8|0,n=e[r>>2]|0):(e[5412]=r|n,n=t,r=t+8|0),e[r>>2]=i,e[n+12>>2]=i,e[i+8>>2]=n,e[i+12>>2]=t),e[5414]=f,e[5417]=A,U=u,s=e0,U|0;if(o=e[5413]|0,o){for(t=(o&0-o)+-1|0,A=t>>>12&16,t=t>>>A,i=t>>>5&8,t=t>>>i,f=t>>>2&4,t=t>>>f,u=t>>>1&2,t=t>>>u,c=t>>>1&1,c=e[21952+((i|A|f|u|c)+(t>>>c)<<2)>>2]|0,t=c,u=c,c=(e[c+4>>2]&-8)-h|0;r=e[t+16>>2]|0,!(!r&&(r=e[t+20>>2]|0,!r));)f=(e[r+4>>2]&-8)-h|0,A=f>>>0<c>>>0,t=r,u=A?r:u,c=A?f:c;if(f=u+h|0,f>>>0>u>>>0){A=e[u+24>>2]|0,n=e[u+12>>2]|0;do if((n|0)==(u|0)){if(r=u+20|0,n=e[r>>2]|0,!n&&(r=u+16|0,n=e[r>>2]|0,!n)){t=0;break}for(;;)if(i=n+20|0,t=e[i>>2]|0,t)n=t,r=i;else if(i=n+16|0,t=e[i>>2]|0,t)n=t,r=i;else break;e[r>>2]=0,t=n}else t=e[u+8>>2]|0,e[t+12>>2]=n,e[n+8>>2]=t,t=n;while(0);do if(A|0){if(n=e[u+28>>2]|0,r=21952+(n<<2)|0,(u|0)==(e[r>>2]|0)){if(e[r>>2]=t,!t){e[5413]=o&~(1<<n);break}}else if(U=A+16|0,e[((e[U>>2]|0)==(u|0)?U:A+20|0)>>2]=t,!t)break;e[t+24>>2]=A,n=e[u+16>>2]|0,n|0&&(e[t+16>>2]=n,e[n+24>>2]=t),n=e[u+20>>2]|0,n|0&&(e[t+20>>2]=n,e[n+24>>2]=t)}while(0);return c>>>0<16?(U=c+h|0,e[u+4>>2]=U|3,U=u+U+4|0,e[U>>2]=e[U>>2]|1):(e[u+4>>2]=h|3,e[f+4>>2]=c|1,e[f+c>>2]=c,v|0&&(i=e[5417]|0,n=v>>>3,t=21688+(n<<1<<2)|0,n=1<<n,n&y?(r=t+8|0,n=e[r>>2]|0):(e[5412]=n|y,n=t,r=t+8|0),e[r>>2]=i,e[n+12>>2]=i,e[i+8>>2]=n,e[i+12>>2]=t),e[5414]=c,e[5417]=f),U=u+8|0,s=e0,U|0}else y=h}else y=h}else y=h}else if(r>>>0<=4294967231)if(r=r+11|0,h=r&-8,i=e[5413]|0,i){A=0-h|0,r=r>>>8,r?h>>>0>16777215?c=31:(y=(r+1048320|0)>>>16&8,k=r<<y,u=(k+520192|0)>>>16&4,k=k<<u,c=(k+245760|0)>>>16&2,c=14-(u|y|c)+(k<<c>>>15)|0,c=h>>>(c+7|0)&1|c<<1):c=0,t=e[21952+(c<<2)>>2]|0;r:do if(!t)t=0,r=0,k=61;else for(r=0,u=h<<((c|0)==31?0:25-(c>>>1)|0),o=0;;){if(f=(e[t+4>>2]&-8)-h|0,f>>>0<A>>>0)if(f)r=t,A=f;else{r=t,A=0,k=65;break r}if(k=e[t+20>>2]|0,t=e[t+16+(u>>>31<<2)>>2]|0,o=(k|0)==0|(k|0)==(t|0)?o:k,t)u=u<<1;else{t=o,k=61;break}}while(0);if((k|0)==61){if((t|0)==0&(r|0)==0){if(r=2<<c,r=(r|0-r)&i,!r){y=h;break}y=(r&0-r)+-1|0,f=y>>>12&16,y=y>>>f,o=y>>>5&8,y=y>>>o,u=y>>>2&4,y=y>>>u,c=y>>>1&2,y=y>>>c,t=y>>>1&1,r=0,t=e[21952+((o|f|u|c|t)+(y>>>t)<<2)>>2]|0}t?k=65:(u=r,f=A)}if((k|0)==65)for(o=t;;)if(y=(e[o+4>>2]&-8)-h|0,t=y>>>0<A>>>0,A=t?y:A,r=t?o:r,t=e[o+16>>2]|0,t||(t=e[o+20>>2]|0),t)o=t;else{u=r,f=A;break}if(u|0&&f>>>0<((e[5414]|0)-h|0)>>>0&&(v=u+h|0,v>>>0>u>>>0)){o=e[u+24>>2]|0,n=e[u+12>>2]|0;do if((n|0)==(u|0)){if(r=u+20|0,n=e[r>>2]|0,!n&&(r=u+16|0,n=e[r>>2]|0,!n)){n=0;break}for(;;)if(A=n+20|0,t=e[A>>2]|0,t)n=t,r=A;else if(A=n+16|0,t=e[A>>2]|0,t)n=t,r=A;else break;e[r>>2]=0}else U=e[u+8>>2]|0,e[U+12>>2]=n,e[n+8>>2]=U;while(0);do if(o){if(r=e[u+28>>2]|0,t=21952+(r<<2)|0,(u|0)==(e[t>>2]|0)){if(e[t>>2]=n,!n){i=i&~(1<<r),e[5413]=i;break}}else if(U=o+16|0,e[((e[U>>2]|0)==(u|0)?U:o+20|0)>>2]=n,!n)break;e[n+24>>2]=o,r=e[u+16>>2]|0,r|0&&(e[n+16>>2]=r,e[r+24>>2]=n),r=e[u+20>>2]|0,r&&(e[n+20>>2]=r,e[r+24>>2]=n)}while(0);r:do if(f>>>0<16)U=f+h|0,e[u+4>>2]=U|3,U=u+U+4|0,e[U>>2]=e[U>>2]|1;else{if(e[u+4>>2]=h|3,e[v+4>>2]=f|1,e[v+f>>2]=f,n=f>>>3,f>>>0<256){t=21688+(n<<1<<2)|0,r=e[5412]|0,n=1<<n,r&n?(r=t+8|0,n=e[r>>2]|0):(e[5412]=r|n,n=t,r=t+8|0),e[r>>2]=v,e[n+12>>2]=v,e[v+8>>2]=n,e[v+12>>2]=t;break}if(n=f>>>8,n?f>>>0>16777215?t=31:(S=(n+1048320|0)>>>16&8,U=n<<S,z=(U+520192|0)>>>16&4,U=U<<z,t=(U+245760|0)>>>16&2,t=14-(z|S|t)+(U<<t>>>15)|0,t=f>>>(t+7|0)&1|t<<1):t=0,n=21952+(t<<2)|0,e[v+28>>2]=t,r=v+16|0,e[r+4>>2]=0,e[r>>2]=0,r=1<<t,!(i&r)){e[5413]=i|r,e[n>>2]=v,e[v+24>>2]=n,e[v+12>>2]=v,e[v+8>>2]=v;break}n=e[n>>2]|0;e:do if((e[n+4>>2]&-8|0)!=(f|0)){for(i=f<<((t|0)==31?0:25-(t>>>1)|0);t=n+16+(i>>>31<<2)|0,r=e[t>>2]|0,!!r;)if((e[r+4>>2]&-8|0)==(f|0)){n=r;break e}else i=i<<1,n=r;e[t>>2]=v,e[v+24>>2]=n,e[v+12>>2]=v,e[v+8>>2]=v;break r}while(0);S=n+8|0,U=e[S>>2]|0,e[U+12>>2]=v,e[S>>2]=v,e[v+8>>2]=U,e[v+12>>2]=n,e[v+24>>2]=0}while(0);return U=u+8|0,s=e0,U|0}else y=h}else y=h;else y=-1;while(0);if(t=e[5414]|0,t>>>0>=y>>>0)return n=t-y|0,r=e[5417]|0,n>>>0>15?(U=r+y|0,e[5417]=U,e[5414]=n,e[U+4>>2]=n|1,e[r+t>>2]=n,e[r+4>>2]=y|3):(e[5414]=0,e[5417]=0,e[r+4>>2]=t|3,U=r+t+4|0,e[U>>2]=e[U>>2]|1),U=r+8|0,s=e0,U|0;if(f=e[5415]|0,f>>>0>y>>>0)return z=f-y|0,e[5415]=z,U=e[5418]|0,S=U+y|0,e[5418]=S,e[S+4>>2]=z|1,e[U+4>>2]=y|3,U=U+8|0,s=e0,U|0;if(e[5530]|0?r=e[5532]|0:(e[5532]=4096,e[5531]=4096,e[5533]=-1,e[5534]=-1,e[5535]=0,e[5523]=0,e[5530]=F&-16^1431655768,r=4096),u=y+48|0,c=y+47|0,o=r+c|0,A=0-r|0,h=o&A,h>>>0<=y>>>0||(r=e[5522]|0,r|0&&(v=e[5520]|0,F=v+h|0,F>>>0<=v>>>0|F>>>0>r>>>0)))return U=0,s=e0,U|0;r:do if(e[5523]&4)n=0,k=143;else{t=e[5418]|0;e:do if(t){for(i=22096;F=e[i>>2]|0,!(F>>>0<=t>>>0&&(F+(e[i+4>>2]|0)|0)>>>0>t>>>0);)if(r=e[i+8>>2]|0,r)i=r;else{k=128;break e}if(n=o-f&A,n>>>0<2147483647)if(r=C2(n)|0,(r|0)==((e[i>>2]|0)+(e[i+4>>2]|0)|0)){if((r|0)!=-1){f=n,o=r,k=145;break r}}else i=r,k=136;else n=0}else k=128;while(0);do if((k|0)==128)if(t=C2(0)|0,(t|0)!=-1&&(n=t,W=e[5531]|0,X=W+-1|0,n=(X&n|0?(X+n&0-W)-n|0:0)+h|0,W=e[5520]|0,X=n+W|0,n>>>0>y>>>0&n>>>0<2147483647)){if(F=e[5522]|0,F|0&&X>>>0<=W>>>0|X>>>0>F>>>0){n=0;break}if(r=C2(n)|0,(r|0)==(t|0)){f=n,o=t,k=145;break r}else i=r,k=136}else n=0;while(0);do if((k|0)==136){if(t=0-n|0,!(u>>>0>n>>>0&(n>>>0<2147483647&(i|0)!=-1)))if((i|0)==-1){n=0;break}else{f=n,o=i,k=145;break r}if(r=e[5532]|0,r=c-n+r&0-r,r>>>0>=2147483647){f=n,o=i,k=145;break r}if((C2(r)|0)==-1){C2(t)|0,n=0;break}else{f=r+n|0,o=i,k=145;break r}}while(0);e[5523]=e[5523]|4,k=143}while(0);if((k|0)==143&&h>>>0<2147483647&&(z=C2(h)|0,X=C2(0)|0,C=X-z|0,B=C>>>0>(y+40|0)>>>0,!((z|0)==-1|B^1|z>>>0<X>>>0&((z|0)!=-1&(X|0)!=-1)^1))&&(f=B?C:n,o=z,k=145),(k|0)==145){n=(e[5520]|0)+f|0,e[5520]=n,n>>>0>(e[5521]|0)>>>0&&(e[5521]=n),c=e[5418]|0;r:do if(c){for(n=22096;;){if(r=e[n>>2]|0,t=e[n+4>>2]|0,(o|0)==(r+t|0)){k=154;break}if(i=e[n+8>>2]|0,i)n=i;else break}if((k|0)==154&&(S=n+4|0,(e[n+12>>2]&8|0)==0)&&o>>>0>c>>>0&r>>>0<=c>>>0){e[S>>2]=t+f,U=(e[5415]|0)+f|0,z=c+8|0,z=z&7|0?0-z&7:0,S=c+z|0,z=U-z|0,e[5418]=S,e[5415]=z,e[S+4>>2]=z|1,e[c+U+4>>2]=40,e[5419]=e[5534];break}for(o>>>0<(e[5416]|0)>>>0&&(e[5416]=o),t=o+f|0,n=22096;;){if((e[n>>2]|0)==(t|0)){k=162;break}if(r=e[n+8>>2]|0,r)n=r;else break}if((k|0)==162&&!(e[n+12>>2]&8|0)){e[n>>2]=o,v=n+4|0,e[v>>2]=(e[v>>2]|0)+f,v=o+8|0,v=o+(v&7|0?0-v&7:0)|0,n=t+8|0,n=t+(n&7|0?0-n&7:0)|0,h=v+y|0,u=n-v-y|0,e[v+4>>2]=y|3;e:do if((c|0)==(n|0))U=(e[5415]|0)+u|0,e[5415]=U,e[5418]=h,e[h+4>>2]=U|1;else{if((e[5417]|0)==(n|0)){U=(e[5414]|0)+u|0,e[5414]=U,e[5417]=h,e[h+4>>2]=U|1,e[h+U>>2]=U;break}if(r=e[n+4>>2]|0,(r&3|0)==1){f=r&-8,i=r>>>3;n:do if(r>>>0<256)if(r=e[n+8>>2]|0,t=e[n+12>>2]|0,(t|0)==(r|0)){e[5412]=e[5412]&~(1<<i);break}else{e[r+12>>2]=t,e[t+8>>2]=r;break}else{o=e[n+24>>2]|0,r=e[n+12>>2]|0;do if((r|0)==(n|0)){if(t=n+16|0,i=t+4|0,r=e[i>>2]|0,r)t=i;else if(r=e[t>>2]|0,!r){r=0;break}for(;;)if(A=r+20|0,i=e[A>>2]|0,i)r=i,t=A;else if(A=r+16|0,i=e[A>>2]|0,i)r=i,t=A;else break;e[t>>2]=0}else U=e[n+8>>2]|0,e[U+12>>2]=r,e[r+8>>2]=U;while(0);if(!o)break;t=e[n+28>>2]|0,i=21952+(t<<2)|0;do if((e[i>>2]|0)!=(n|0)){if(U=o+16|0,e[((e[U>>2]|0)==(n|0)?U:o+20|0)>>2]=r,!r)break n}else{if(e[i>>2]=r,r|0)break;e[5413]=e[5413]&~(1<<t);break n}while(0);if(e[r+24>>2]=o,t=n+16|0,i=e[t>>2]|0,i|0&&(e[r+16>>2]=i,e[i+24>>2]=r),t=e[t+4>>2]|0,!t)break;e[r+20>>2]=t,e[t+24>>2]=r}while(0);n=n+f|0,A=f+u|0}else A=u;if(n=n+4|0,e[n>>2]=e[n>>2]&-2,e[h+4>>2]=A|1,e[h+A>>2]=A,n=A>>>3,A>>>0<256){t=21688+(n<<1<<2)|0,r=e[5412]|0,n=1<<n,r&n?(r=t+8|0,n=e[r>>2]|0):(e[5412]=r|n,n=t,r=t+8|0),e[r>>2]=h,e[n+12>>2]=h,e[h+8>>2]=n,e[h+12>>2]=t;break}n=A>>>8;do if(!n)i=0;else{if(A>>>0>16777215){i=31;break}S=(n+1048320|0)>>>16&8,U=n<<S,z=(U+520192|0)>>>16&4,U=U<<z,i=(U+245760|0)>>>16&2,i=14-(z|S|i)+(U<<i>>>15)|0,i=A>>>(i+7|0)&1|i<<1}while(0);if(n=21952+(i<<2)|0,e[h+28>>2]=i,r=h+16|0,e[r+4>>2]=0,e[r>>2]=0,r=e[5413]|0,t=1<<i,!(r&t)){e[5413]=r|t,e[n>>2]=h,e[h+24>>2]=n,e[h+12>>2]=h,e[h+8>>2]=h;break}n=e[n>>2]|0;n:do if((e[n+4>>2]&-8|0)!=(A|0)){for(i=A<<((i|0)==31?0:25-(i>>>1)|0);t=n+16+(i>>>31<<2)|0,r=e[t>>2]|0,!!r;)if((e[r+4>>2]&-8|0)==(A|0)){n=r;break n}else i=i<<1,n=r;e[t>>2]=h,e[h+24>>2]=n,e[h+12>>2]=h,e[h+8>>2]=h;break e}while(0);S=n+8|0,U=e[S>>2]|0,e[U+12>>2]=h,e[S>>2]=h,e[h+8>>2]=U,e[h+12>>2]=n,e[h+24>>2]=0}while(0);return U=v+8|0,s=e0,U|0}for(n=22096;r=e[n>>2]|0,!(r>>>0<=c>>>0&&(U=r+(e[n+4>>2]|0)|0,U>>>0>c>>>0));)n=e[n+8>>2]|0;A=U+-47|0,r=A+8|0,r=A+(r&7|0?0-r&7:0)|0,A=c+16|0,r=r>>>0<A>>>0?c:r,n=r+8|0,t=f+-40|0,z=o+8|0,z=z&7|0?0-z&7:0,S=o+z|0,z=t-z|0,e[5418]=S,e[5415]=z,e[S+4>>2]=z|1,e[o+t+4>>2]=40,e[5419]=e[5534],t=r+4|0,e[t>>2]=27,e[n>>2]=e[5524],e[n+4>>2]=e[5525],e[n+8>>2]=e[5526],e[n+12>>2]=e[5527],e[5524]=o,e[5525]=f,e[5527]=0,e[5526]=n,n=r+24|0;do S=n,n=n+4|0,e[n>>2]=7;while((S+8|0)>>>0<U>>>0);if((r|0)!=(c|0)){if(o=r-c|0,e[t>>2]=e[t>>2]&-2,e[c+4>>2]=o|1,e[r>>2]=o,n=o>>>3,o>>>0<256){t=21688+(n<<1<<2)|0,r=e[5412]|0,n=1<<n,r&n?(r=t+8|0,n=e[r>>2]|0):(e[5412]=r|n,n=t,r=t+8|0),e[r>>2]=c,e[n+12>>2]=c,e[c+8>>2]=n,e[c+12>>2]=t;break}if(n=o>>>8,n?o>>>0>16777215?i=31:(S=(n+1048320|0)>>>16&8,U=n<<S,z=(U+520192|0)>>>16&4,U=U<<z,i=(U+245760|0)>>>16&2,i=14-(z|S|i)+(U<<i>>>15)|0,i=o>>>(i+7|0)&1|i<<1):i=0,t=21952+(i<<2)|0,e[c+28>>2]=i,e[c+20>>2]=0,e[A>>2]=0,n=e[5413]|0,r=1<<i,!(n&r)){e[5413]=n|r,e[t>>2]=c,e[c+24>>2]=t,e[c+12>>2]=c,e[c+8>>2]=c;break}n=e[t>>2]|0;e:do if((e[n+4>>2]&-8|0)!=(o|0)){for(i=o<<((i|0)==31?0:25-(i>>>1)|0);t=n+16+(i>>>31<<2)|0,r=e[t>>2]|0,!!r;)if((e[r+4>>2]&-8|0)==(o|0)){n=r;break e}else i=i<<1,n=r;e[t>>2]=c,e[c+24>>2]=n,e[c+12>>2]=c,e[c+8>>2]=c;break r}while(0);S=n+8|0,U=e[S>>2]|0,e[U+12>>2]=c,e[S>>2]=c,e[c+8>>2]=U,e[c+12>>2]=n,e[c+24>>2]=0}}else U=e[5416]|0,(U|0)==0|o>>>0<U>>>0&&(e[5416]=o),e[5524]=o,e[5525]=f,e[5527]=0,e[5421]=e[5530],e[5420]=-1,e[5425]=21688,e[5424]=21688,e[5427]=21696,e[5426]=21696,e[5429]=21704,e[5428]=21704,e[5431]=21712,e[5430]=21712,e[5433]=21720,e[5432]=21720,e[5435]=21728,e[5434]=21728,e[5437]=21736,e[5436]=21736,e[5439]=21744,e[5438]=21744,e[5441]=21752,e[5440]=21752,e[5443]=21760,e[5442]=21760,e[5445]=21768,e[5444]=21768,e[5447]=21776,e[5446]=21776,e[5449]=21784,e[5448]=21784,e[5451]=21792,e[5450]=21792,e[5453]=21800,e[5452]=21800,e[5455]=21808,e[5454]=21808,e[5457]=21816,e[5456]=21816,e[5459]=21824,e[5458]=21824,e[5461]=21832,e[5460]=21832,e[5463]=21840,e[5462]=21840,e[5465]=21848,e[5464]=21848,e[5467]=21856,e[5466]=21856,e[5469]=21864,e[5468]=21864,e[5471]=21872,e[5470]=21872,e[5473]=21880,e[5472]=21880,e[5475]=21888,e[5474]=21888,e[5477]=21896,e[5476]=21896,e[5479]=21904,e[5478]=21904,e[5481]=21912,e[5480]=21912,e[5483]=21920,e[5482]=21920,e[5485]=21928,e[5484]=21928,e[5487]=21936,e[5486]=21936,U=f+-40|0,z=o+8|0,z=z&7|0?0-z&7:0,S=o+z|0,z=U-z|0,e[5418]=S,e[5415]=z,e[S+4>>2]=z|1,e[o+U+4>>2]=40,e[5419]=e[5534];while(0);if(n=e[5415]|0,n>>>0>y>>>0)return z=n-y|0,e[5415]=z,U=e[5418]|0,S=U+y|0,e[5418]=S,e[S+4>>2]=z|1,e[U+4>>2]=y|3,U=U+8|0,s=e0,U|0}return e[(i2()|0)>>2]=48,U=0,s=e0,U|0}function xn(r){r=r|0;var n=0,t=0,i=0,A=0,o=0,f=0,u=0,c=0;if(!r)return;t=r+-8|0,A=e[5416]|0,r=e[r+-4>>2]|0,n=r&-8,c=t+n|0;do if(r&1)u=t,f=t;else{if(i=e[t>>2]|0,!(r&3)||(f=t+(0-i)|0,o=i+n|0,f>>>0<A>>>0))return;if((e[5417]|0)==(f|0)){if(r=c+4|0,n=e[r>>2]|0,(n&3|0)!=3){u=f,n=o;break}e[5414]=o,e[r>>2]=n&-2,e[f+4>>2]=o|1,e[f+o>>2]=o;return}if(t=i>>>3,i>>>0<256)if(r=e[f+8>>2]|0,n=e[f+12>>2]|0,(n|0)==(r|0)){e[5412]=e[5412]&~(1<<t),u=f,n=o;break}else{e[r+12>>2]=n,e[n+8>>2]=r,u=f,n=o;break}A=e[f+24>>2]|0,r=e[f+12>>2]|0;do if((r|0)==(f|0)){if(n=f+16|0,t=n+4|0,r=e[t>>2]|0,r)n=t;else if(r=e[n>>2]|0,!r){r=0;break}for(;;)if(i=r+20|0,t=e[i>>2]|0,t)r=t,n=i;else if(i=r+16|0,t=e[i>>2]|0,t)r=t,n=i;else break;e[n>>2]=0}else u=e[f+8>>2]|0,e[u+12>>2]=r,e[r+8>>2]=u;while(0);if(A){if(n=e[f+28>>2]|0,t=21952+(n<<2)|0,(e[t>>2]|0)==(f|0)){if(e[t>>2]=r,!r){e[5413]=e[5413]&~(1<<n),u=f,n=o;break}}else if(u=A+16|0,e[((e[u>>2]|0)==(f|0)?u:A+20|0)>>2]=r,!r){u=f,n=o;break}e[r+24>>2]=A,n=f+16|0,t=e[n>>2]|0,t|0&&(e[r+16>>2]=t,e[t+24>>2]=r),n=e[n+4>>2]|0,n?(e[r+20>>2]=n,e[n+24>>2]=r,u=f,n=o):(u=f,n=o)}else u=f,n=o}while(0);if(f>>>0>=c>>>0||(r=c+4|0,i=e[r>>2]|0,!(i&1)))return;if(i&2)e[r>>2]=i&-2,e[u+4>>2]=n|1,e[f+n>>2]=n,A=n;else{if((e[5418]|0)==(c|0)){if(c=(e[5415]|0)+n|0,e[5415]=c,e[5418]=u,e[u+4>>2]=c|1,(u|0)!=(e[5417]|0))return;e[5417]=0,e[5414]=0;return}if((e[5417]|0)==(c|0)){c=(e[5414]|0)+n|0,e[5414]=c,e[5417]=f,e[u+4>>2]=c|1,e[f+c>>2]=c;return}A=(i&-8)+n|0,t=i>>>3;do if(i>>>0<256)if(n=e[c+8>>2]|0,r=e[c+12>>2]|0,(r|0)==(n|0)){e[5412]=e[5412]&~(1<<t);break}else{e[n+12>>2]=r,e[r+8>>2]=n;break}else{o=e[c+24>>2]|0,r=e[c+12>>2]|0;do if((r|0)==(c|0)){if(n=c+16|0,t=n+4|0,r=e[t>>2]|0,r)n=t;else if(r=e[n>>2]|0,!r){t=0;break}for(;;)if(i=r+20|0,t=e[i>>2]|0,t)r=t,n=i;else if(i=r+16|0,t=e[i>>2]|0,t)r=t,n=i;else break;e[n>>2]=0,t=r}else t=e[c+8>>2]|0,e[t+12>>2]=r,e[r+8>>2]=t,t=r;while(0);if(o|0){if(r=e[c+28>>2]|0,n=21952+(r<<2)|0,(e[n>>2]|0)==(c|0)){if(e[n>>2]=t,!t){e[5413]=e[5413]&~(1<<r);break}}else if(i=o+16|0,e[((e[i>>2]|0)==(c|0)?i:o+20|0)>>2]=t,!t)break;e[t+24>>2]=o,r=c+16|0,n=e[r>>2]|0,n|0&&(e[t+16>>2]=n,e[n+24>>2]=t),r=e[r+4>>2]|0,r|0&&(e[t+20>>2]=r,e[r+24>>2]=t)}}while(0);if(e[u+4>>2]=A|1,e[f+A>>2]=A,(u|0)==(e[5417]|0)){e[5414]=A;return}}if(r=A>>>3,A>>>0<256){t=21688+(r<<1<<2)|0,n=e[5412]|0,r=1<<r,n&r?(n=t+8|0,r=e[n>>2]|0):(e[5412]=n|r,r=t,n=t+8|0),e[n>>2]=u,e[r+12>>2]=u,e[u+8>>2]=r,e[u+12>>2]=t;return}r=A>>>8,r?A>>>0>16777215?i=31:(f=(r+1048320|0)>>>16&8,c=r<<f,o=(c+520192|0)>>>16&4,c=c<<o,i=(c+245760|0)>>>16&2,i=14-(o|f|i)+(c<<i>>>15)|0,i=A>>>(i+7|0)&1|i<<1):i=0,r=21952+(i<<2)|0,e[u+28>>2]=i,e[u+20>>2]=0,e[u+16>>2]=0,n=e[5413]|0,t=1<<i;r:do if(!(n&t))e[5413]=n|t,e[r>>2]=u,e[u+24>>2]=r,e[u+12>>2]=u,e[u+8>>2]=u;else{r=e[r>>2]|0;e:do if((e[r+4>>2]&-8|0)!=(A|0)){for(i=A<<((i|0)==31?0:25-(i>>>1)|0);t=r+16+(i>>>31<<2)|0,n=e[t>>2]|0,!!n;)if((e[n+4>>2]&-8|0)==(A|0)){r=n;break e}else i=i<<1,r=n;e[t>>2]=u,e[u+24>>2]=r,e[u+12>>2]=u,e[u+8>>2]=u;break r}while(0);f=r+8|0,c=e[f>>2]|0,e[c+12>>2]=u,e[f>>2]=u,e[u+8>>2]=c,e[u+12>>2]=r,e[u+24>>2]=0}while(0);if(c=(e[5420]|0)+-1|0,e[5420]=c,!(c|0)){for(r=22104;r=e[r>>2]|0,r;)r=r+8|0;e[5420]=-1}}function C2(r){r=r|0;var n=0,t=0,i=0;i=r+3&-4,r=QA()|0,n=e[r>>2]|0,t=n+i|0;do if((i|0)<1|t>>>0>n>>>0){if(t>>>0>(W1()|0)>>>0&&!(d1(t|0)|0))break;return e[r>>2]=t,i=n,i|0}while(0);return e[(i2()|0)>>2]=48,i=-1,i|0}function Dp(r){r=r|0;var n=0;return n=s,s=s+r|0,s=s+15&-16,n|0}function Pp(r){r=r|0,s=r}function Lp(){return s|0}function $p(r,n){r=r|0,n=n|0;var t=0,i=0,A=0,o=0;return o=r&65535,A=n&65535,t=L(A,o)|0,i=r>>>16,r=(t>>>16)+(L(A,i)|0)|0,A=n>>>16,n=L(A,o)|0,f0((r>>>16)+(L(A,i)|0)+(((r&65535)+n|0)>>>16)|0),r+n<<16|t&65535|0|0}function _n(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0;var A=0,o=0;return A=r,o=t,t=$p(A,o)|0,r=r0()|0,f0((L(n,o)|0)+(L(i,A)|0)+r|r&0|0),t|0|0|0}function O0(r,n,t,i){return r=r|0,n=n|0,t=t|0,i=i|0,t=r+t>>>0,f0(n+i+(t>>>0<r>>>0|0)>>>0|0),t|0|0}function cr(r,n,t,i){return r=r|0,n=n|0,t=t|0,i=i|0,i=n-i-(t>>>0>r>>>0|0)>>>0,f0(i|0),r-t>>>0|0|0}function aA(r){return r=r|0,(r?31-(l2(r^r-1)|0)|0:32)|0}function qp(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0;var o=0,f=0,u=0,c=0,h=0,v=0,y=0,F=0,W=0,X=0;if(v=r,c=n,h=c,f=t,F=i,u=F,!h)return o=(A|0)!=0,u?o?(e[A>>2]=r|0,e[A+4>>2]=n&0,F=0,A=0,f0(F|0),A|0):(F=0,A=0,f0(F|0),A|0):(o&&(e[A>>2]=(v>>>0)%(f>>>0),e[A+4>>2]=0),F=0,A=(v>>>0)/(f>>>0)>>>0,f0(F|0),A|0);o=(u|0)==0;do if(f){if(!o){if(o=(l2(u|0)|0)-(l2(h|0)|0)|0,o>>>0<=31){y=o+1|0,u=31-o|0,n=o-31>>31,f=y,r=v>>>(y>>>0)&n|h<<u,n=h>>>(y>>>0)&n,o=0,u=v<<u;break}return A?(e[A>>2]=r|0,e[A+4>>2]=c|n&0,F=0,A=0,f0(F|0),A|0):(F=0,A=0,f0(F|0),A|0)}if(o=f-1|0,o&f|0){u=(l2(f|0)|0)+33-(l2(h|0)|0)|0,X=64-u|0,y=32-u|0,c=y>>31,W=u-32|0,n=W>>31,f=u,r=y-1>>31&h>>>(W>>>0)|(h<<y|v>>>(u>>>0))&n,n=n&h>>>(u>>>0),o=v<<X&c,u=(h<<X|v>>>(W>>>0))&c|v<<y&u-33>>31;break}return A|0&&(e[A>>2]=o&v,e[A+4>>2]=0),(f|0)==1?(W=c|n&0,X=r|0|0,f0(W|0),X|0):(X=aA(f|0)|0,W=h>>>(X>>>0)|0,X=h<<32-X|v>>>(X>>>0)|0,f0(W|0),X|0)}else{if(o)return A|0&&(e[A>>2]=(h>>>0)%(f>>>0),e[A+4>>2]=0),W=0,X=(h>>>0)/(f>>>0)>>>0,f0(W|0),X|0;if(!v)return A|0&&(e[A>>2]=0,e[A+4>>2]=(h>>>0)%(u>>>0)),W=0,X=(h>>>0)/(u>>>0)>>>0,f0(W|0),X|0;if(o=u-1|0,!(o&u))return A|0&&(e[A>>2]=r|0,e[A+4>>2]=o&h|n&0),W=0,X=h>>>((aA(u|0)|0)>>>0),f0(W|0),X|0;if(o=(l2(u|0)|0)-(l2(h|0)|0)|0,o>>>0<=30){n=o+1|0,u=31-o|0,f=n,r=h<<u|v>>>(n>>>0),n=h>>>(n>>>0),o=0,u=v<<u;break}return A?(e[A>>2]=r|0,e[A+4>>2]=c|n&0,W=0,X=0,f0(W|0),X|0):(W=0,X=0,f0(W|0),X|0)}while(0);if(!f)h=u,c=0,u=0;else{y=t|0|0,v=F|i&0,h=O0(y|0,v|0,-1,-1)|0,t=r0()|0,c=u,u=0;do i=c,c=o>>>31|c<<1,o=u|o<<1,i=r<<1|i>>>31|0,F=r>>>31|n<<1|0,cr(h|0,t|0,i|0,F|0)|0,X=r0()|0,W=X>>31|((X|0)<0?-1:0)<<1,u=W&1,r=cr(i|0,F|0,W&y|0,(((X|0)<0?-1:0)>>31|((X|0)<0?-1:0)<<1)&v|0)|0,n=r0()|0,f=f-1|0;while(f|0);h=c,c=0}return f=0,A|0&&(e[A>>2]=r,e[A+4>>2]=n),W=(o|0)>>>31|(h|f)<<1|(f<<1|o>>>31)&0|c,X=(o<<1|0>>>31)&-2|u,f0(W|0),X|0}function En(r,n,t,i){return r=r|0,n=n|0,t=t|0,i=i|0,qp(r,n,t,i,0)|0}function Xe(r,n,t){return r=r|0,n=n|0,t=t|0,(t|0)<32?(f0(n>>>t|0),r>>>t|(n&(1<<t)-1)<<32-t):(f0(0),n>>>t-32|0)}function HA(r,n,t){return r=r|0,n=n|0,t=t|0,(t|0)<32?(f0(n<<t|(r&(1<<t)-1<<32-t)>>>32-t|0),r<<t):(f0(r<<t-32|0),0)}function QA(){return 22176}function DA(r){return r=r|0,(r&255)<<24|(r>>8&255)<<16|(r>>16&255)<<8|r>>>24|0}function x0(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0;if((t|0)>=512)return X1(r|0,n|0,t|0)|0,r|0;if(o=r|0,A=r+t|0,(r&3)==(n&3)){for(;r&3;){if(!t)return o|0;l[r>>0]=l[n>>0]|0,r=r+1|0,n=n+1|0,t=t-1|0}for(t=A&-4|0,i=t-64|0;(r|0)<=(i|0);)e[r>>2]=e[n>>2],e[r+4>>2]=e[n+4>>2],e[r+8>>2]=e[n+8>>2],e[r+12>>2]=e[n+12>>2],e[r+16>>2]=e[n+16>>2],e[r+20>>2]=e[n+20>>2],e[r+24>>2]=e[n+24>>2],e[r+28>>2]=e[n+28>>2],e[r+32>>2]=e[n+32>>2],e[r+36>>2]=e[n+36>>2],e[r+40>>2]=e[n+40>>2],e[r+44>>2]=e[n+44>>2],e[r+48>>2]=e[n+48>>2],e[r+52>>2]=e[n+52>>2],e[r+56>>2]=e[n+56>>2],e[r+60>>2]=e[n+60>>2],r=r+64|0,n=n+64|0;for(;(r|0)<(t|0);)e[r>>2]=e[n>>2],r=r+4|0,n=n+4|0}else for(t=A-4|0;(r|0)<(t|0);)l[r>>0]=l[n>>0]|0,l[r+1>>0]=l[n+1>>0]|0,l[r+2>>0]=l[n+2>>0]|0,l[r+3>>0]=l[n+3>>0]|0,r=r+4|0,n=n+4|0;for(;(r|0)<(A|0);)l[r>>0]=l[n>>0]|0,r=r+1|0,n=n+1|0;return o|0}function I0(r,n,t){r=r|0,n=n|0,t=t|0;var i=0;if((n|0)<(r|0)&(r|0)<(n+t|0)){for(i=r,n=n+t|0,r=r+t|0;(t|0)>0;)r=r-1|0,n=n-1|0,t=t-1|0,l[r>>0]=l[n>>0]|0;r=i}else x0(r,n,t)|0;return r|0}function O2(r,n,t){r=r|0,n=n|0,t=t|0;var i=0,A=0,o=0,f=0;if(o=r+t|0,n=n&255,(t|0)>=67){for(;r&3;)l[r>>0]=n,r=r+1|0;for(i=o&-4|0,f=n|n<<8|n<<16|n<<24,A=i-64|0;(r|0)<=(A|0);)e[r>>2]=f,e[r+4>>2]=f,e[r+8>>2]=f,e[r+12>>2]=f,e[r+16>>2]=f,e[r+20>>2]=f,e[r+24>>2]=f,e[r+28>>2]=f,e[r+32>>2]=f,e[r+36>>2]=f,e[r+40>>2]=f,e[r+44>>2]=f,e[r+48>>2]=f,e[r+52>>2]=f,e[r+56>>2]=f,e[r+60>>2]=f,r=r+64|0;for(;(r|0)<(i|0);)e[r>>2]=f,r=r+4|0}for(;(r|0)<(o|0);)l[r>>0]=n,r=r+1|0;return o-t|0}function Kp(r){return r=r|0,Cn[r&3]()|0}function bp(r,n){return r=r|0,n=n|0,de[r&15](n|0)|0}function rv(r,n,t,i,A,o,f){return r=r|0,n=n|0,t=+t,i=i|0,A=A|0,o=o|0,f=f|0,qA[r&1](n|0,+t,i|0,A|0,o|0,f|0)|0}function ev(r,n,t){return r=r|0,n=n|0,t=t|0,Er[r&63](n|0,t|0)|0}function nv(r,n,t,i){return r=r|0,n=n|0,t=t|0,i=i|0,sr[r&7](n|0,t|0,i|0)|0}function tv(r){r=r|0,On[r&3]()}function iv(r,n){r=r|0,n=n|0,o0[r&255](n|0)}function Av(r,n,t){r=r|0,n=n|0,t=t|0,k2[r&15](n|0,t|0)}function ov(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0,Sr[r&15](n|0,t|0,i|0)}function fv(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,jr[r&7](n|0,t|0,i|0,A|0)}function uv(r,n,t,i,A,o){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0,ge[r&3](n|0,t|0,i|0,A|0,o|0)}function lv(r,n,t,i,A,o,f){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0,f=f|0,Cr[r&3](n|0,t|0,i|0,A|0,o|0,f|0)}function PA(){return T0(0),0}function Sn(r){return r=r|0,T0(1),0}function cv(r,n,t,i,A,o){return r=r|0,n=+n,t=t|0,i=i|0,A=A|0,o=o|0,T0(2),0}function v0(r,n){return r=r|0,n=n|0,T0(3),0}function LA(r,n,t){return r=r|0,n=n|0,t=t|0,T0(4),0}function $A(){T0(5)}function N(r){r=r|0,T0(6)}function w2(r,n){r=r|0,n=n|0,T0(7)}function I2(r,n,t){r=r|0,n=n|0,t=t|0,T0(8)}function jn(r,n,t,i){r=r|0,n=n|0,t=t|0,i=i|0,T0(9)}function sv(r,n,t,i,A){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,T0(10)}function hv(r,n,t,i,A,o){r=r|0,n=n|0,t=t|0,i=i|0,A=A|0,o=o|0,T0(11)}var Cn=[PA,K3,_h,PA],de=[Sn,I6,Xu,Nu,_6,S6,Rp,Np,Ep,C3,z1,gh,rh,Sh,Sn,Sn],qA=[cv,i6],Er=[v0,I1,$1,Gu,Gl,bl,Ac,cc,sc,mc,Uc,Mc,Qc,qc,t4,l4,G4,_4,I4,D4,es,os,hs,ys,Xs,Ys,Cs,Qs,Ks,i8,v8,w8,G8,_8,D8,b8,l3,Z3,d3,z3,S3,Vh,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0],sr=[LA,p6,d6,P6,$6,Mp,Bp,LA],On=[$A,Q6,w6,$A],o0=[N,Z0,C1,O1,a1,P1,L1,q1,Y0,vu,zu,Wu,gu,Uu,xu,_u,Qu,Du,il,Al,ol,Fl,Ul,Tl,Nl,$l,ci,rc,M2,ec,tc,ic,oc,hi,lc,S0,hc,dc,gc,Tc,wi,zc,ac,Hc,Dc,di,$c,e4,n4,i4,Gi,u4,U4,T4,N4,Hi,E4,C4,O4,a4,Qi,P4,b4,rs,ns,Di,fs,cs,ss,ms,qi,Zs,ks,Ws,ds,Bs,Js,xs,Ss,js,Os,bi,Ds,$s,qs,bs,rA,t8,m8,p8,y8,nA,F8,U8,T8,N8,tA,x8,H8,Q8,P8,iA,K8,f3,u3,c3,AA,y3,W3,X3,g3,oA,N3,_3,E3,j3,lr,k6,W6,X6,G6,Y6,x6,Fe,E6,O6,a6,H6,D6,L6,b6,SA,Zp,Tp,Gp,_p,IA,Op,a3,Gh,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N],k2=[w2,du,Tu,N1,B1,J1,Y1,x1,A6,w2,w2,w2,w2,w2,w2,w2],Sr=[I2,zp,Jp,Sp,jp,G1,M1,mh,qh,t5,I2,I2,I2,I2,I2,I2],jr=[jn,T6,M6,np,fh,Qh,jn,jn],ge=[sv,U6,z6,ep],Cr=[hv,g6,N6,rp];return{__ZSt18uncaught_exceptionv:vp,___cxa_can_catch:hp,___cxa_is_pointer_type:mp,___embind_register_native_and_builtin_types:hA,___errno_location:i2,___getTypeName:Lm,___muldi3:_n,___udivdi3:En,_bitshift64Lshr:Xe,_bitshift64Shl:HA,_emscripten_get_sbrk_ptr:QA,_free:xn,_i64Add:O0,_i64Subtract:cr,_llvm_bswap_i32:DA,_malloc:We,_memcpy:x0,_memmove:I0,_memset:O2,dynCall_i:Kp,dynCall_ii:bp,dynCall_iidiiii:rv,dynCall_iii:ev,dynCall_iiii:nv,dynCall_v:tv,dynCall_vi:iv,dynCall_vii:Av,dynCall_viii:ov,dynCall_viiii:fv,dynCall_viiiii:uv,dynCall_viiiiii:lv,globalCtors:g1,stackAlloc:Dp,stackRestore:Pp,stackSave:Lp}}(l1,c1,X2),wr=R.__ZSt18uncaught_exceptionv=q.__ZSt18uncaught_exceptionv,Pv=R.___cxa_can_catch=q.___cxa_can_catch,Lv=R.___cxa_is_pointer_type=q.___cxa_is_pointer_type,$v=R.___embind_register_native_and_builtin_types=q.___embind_register_native_and_builtin_types,qv=R.___errno_location=q.___errno_location,s1=R.___getTypeName=q.___getTypeName,Kv=R.___muldi3=q.___muldi3,bv=R.___udivdi3=q.___udivdi3,ry=R._bitshift64Lshr=q._bitshift64Lshr,ey=R._bitshift64Shl=q._bitshift64Shl,ny=R._emscripten_get_sbrk_ptr=q._emscripten_get_sbrk_ptr,R2=R._free=q._free,ty=R._i64Add=q._i64Add,iy=R._i64Subtract=q._i64Subtract,Ay=R._llvm_bswap_i32=q._llvm_bswap_i32,Ke=R._malloc=q._malloc,oy=R._memcpy=q._memcpy,fy=R._memmove=q._memmove,uy=R._memset=q._memset,h1=R.globalCtors=q.globalCtors,zt=R.stackAlloc=q.stackAlloc,m1=R.stackRestore=q.stackRestore,p1=R.stackSave=q.stackSave,ly=R.dynCall_i=q.dynCall_i,cy=R.dynCall_ii=q.dynCall_ii,sy=R.dynCall_iidiiii=q.dynCall_iidiiii,hy=R.dynCall_iii=q.dynCall_iii,my=R.dynCall_iiii=q.dynCall_iiii,py=R.dynCall_v=q.dynCall_v,vy=R.dynCall_vi=q.dynCall_vi,yy=R.dynCall_vii=q.dynCall_vii,Zy=R.dynCall_viii=q.dynCall_viii,Ry=R.dynCall_viiii=q.dynCall_viiii,Vy=R.dynCall_viiiii=q.dynCall_viiiii,Fy=R.dynCall_viiiiii=q.dynCall_viiiiii;if(R.asm=q,P0)if(yt(P0)||(P0=R0(P0)),Q||t0){var v1=H2(P0);U0.set(v1,it)}else{Lo("memory initializer");var be=function(m){m.byteLength&&(m=new Uint8Array(m)),U0.set(m,it),R.memoryInitializerRequest&&delete R.memoryInitializerRequest.response,$o("memory initializer")},Mt=function(){Hr(P0,be,function(){var m=new Error("could not load memory initializer "+P0);throw m})},Bt=Z2(P0);if(Bt)be(Bt.buffer);else if(R.memoryInitializerRequest){var Jt=function(){var m=R.memoryInitializerRequest,p=m.response;if(m.status!==200&&m.status!==0){var V=Z2(R.memoryInitializerRequestURL);if(V)p=V.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+m.status+", retrying "+P0),Mt();return}}be(p)};R.memoryInitializerRequest.response?setTimeout(Jt,0):R.memoryInitializerRequest.addEventListener("load",Jt)}else Mt()}var br;function y1(m){this.name="ExitStatus",this.message="Program terminated with exit("+m+")",this.status=m}vr=function m(){br||rn(),br||(vr=m)};function rn(m){if(m=m||M,g2>0||(So(),g2>0))return;function p(){br||(br=!0,R.calledRun=!0,!ot&&(jo(),Co(),R.onRuntimeInitialized&&R.onRuntimeInitialized(),Oo()))}R.setStatus?(R.setStatus("Running..."),setTimeout(function(){setTimeout(function(){R.setStatus("")},1),p()},1)):p()}if(R.run=rn,R.preInit)for(typeof R.preInit=="function"&&(R.preInit=[R.preInit]);R.preInit.length>0;)R.preInit.pop()();return At=!0,rn(),R}var m2=null,ho={0:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15)}),1:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15)}),2:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15),color:[R.getUint16(20,!0),R.getUint16(22,!0),R.getUint16(24,!0)]}),3:R=>({position:[R.getInt32(0,!0),R.getInt32(4,!0),R.getInt32(8,!0)],intensity:R.getUint16(12,!0),classification:R.getUint8(15),color:[R.getUint16(28,!0),R.getUint16(30,!0),R.getUint16(32,!0)]})};function W2(R,w={},T,M){M=M===void 0||M===0?1:M;let E=R.slice(T,T+w.BYTES_PER_ELEMENT*M),j=new w(E);if(M===1)return j[0];let a=[];for(let P=0;P<M;P++)a.push(j[P]);return a}function mo(R){let w=131,T={pointsOffset:W2(R,Uint32Array,32*3),pointsFormatId:W2(R,Uint8Array,32*3+8),pointsStructSize:W2(R,Uint16Array,32*3+8+1),pointsCount:W2(R,Uint32Array,32*3+11),scale:W2(R,Float64Array,w,3)};w+=24,T.offset=W2(R,Float64Array,w,3),w+=24;let M=W2(R,Float64Array,w,6);return w+=48,T.maxs=[M[0],M[2],M[4]],T.mins=[M[1],M[3],M[5]],T}var qn=class{arraybuffer;readOffset=0;header={pointsOffset:0,pointsFormatId:0,pointsStructSize:0,pointsCount:0,scale:[0,0,0],offset:[0,0,0],maxs:[0],mins:[0],totalToRead:0,totalRead:0,versionAsString:"",isCompressed:!0};constructor(w){this.arraybuffer=w}open(){return!0}getHeader(){return this.header=mo(this.arraybuffer),this.header}readData(w,T){let{header:M,arraybuffer:E}=this;if(!M)throw new Error("Cannot start reading data till a header request is issued");let{readOffset:j}=this,a;if(T<=1){w=Math.min(w,M.pointsCount-j),a=M.pointsOffset+j*M.pointsStructSize;let R0=a+w*M.pointsStructSize;return j+=w,this.readOffset=j,{buffer:E.slice(a,R0),count:w,hasMoreData:j<M.pointsCount}}let P=Math.min(w*T,M.pointsCount-j),Q=Math.ceil(P/T),t0=0,$=new Uint8Array(Q*M.pointsStructSize);for(let R0=0;R0<P;R0++){if(R0%T===0){a=M.pointsOffset+j*M.pointsStructSize;let g0=new Uint8Array(E,a,M.pointsStructSize);$.set(g0,t0*M.pointsStructSize),t0++}j++}return this.readOffset=j,{buffer:$.buffer,count:t0,hasMoreData:j<M.pointsCount}}close(){return this.arraybuffer=null,!0}},Kn=class{arraybuffer;instance=null;header=null;constructor(w){this.arraybuffer=w,m2||(m2=$n())}open(){try{let{arraybuffer:w}=this;this.instance=new m2.LASZip;let T=new Uint8Array(w),M=m2._malloc(w.byteLength);return this.instance.arraybuffer=w,this.instance.buf=M,m2.HEAPU8.set(T,M),this.instance.open(M,w.byteLength),this.instance.readOffset=0,!0}catch(w){throw new Error(`Failed to open file: ${w.message}`)}}getHeader(){if(!this.instance)throw new Error("You need to open the file before trying to read header");try{let w=mo(this.instance.arraybuffer);return w.pointsFormatId&=63,this.header=w,w}catch(w){throw new Error(`Failed to get header: ${w.message}`)}}readData(w,T,M){if(!this.instance)throw new Error("You need to open the file before trying to read stuff");let{header:E,instance:j}=this;if(!E)throw new Error("You need to query header before reading, I maintain state that way, sorry :(");try{let a=Math.min(w*M,E.pointsCount-j.readOffset),P=Math.ceil(a/M),Q=0,t0=new Uint8Array(P*E.pointsStructSize),$=m2._malloc(E.pointsStructSize);for(let R0=0;R0<a;R0++){if(j.getPoint($),R0%M===0){let g0=new Uint8Array(m2.HEAPU8.buffer,$,E.pointsStructSize);t0.set(g0,Q*E.pointsStructSize),Q++}j.readOffset++}return m2._free($),{buffer:t0.buffer,count:Q,hasMoreData:j.readOffset<E.pointsCount}}catch(a){throw new Error(`Failed to read data: ${a.message}`)}}close(){try{return this.instance!==null&&(m2._free(this.instance.buf),this.instance.delete(),this.instance=null),!0}catch(w){throw new Error(`Failed to close file: ${w.message}`)}}},bn=class{arrayb;decoder;pointsCount;pointSize;scale;offset;mins;maxs;constructor(w,T,M){this.arrayb=w,this.decoder=ho[M.pointsFormatId],this.pointsCount=T,this.pointSize=M.pointsStructSize,this.scale=M.scale,this.offset=M.offset,this.mins=M.mins,this.maxs=M.maxs}getPoint(w){if(w<0||w>=this.pointsCount)throw new Error("Point index out of range");let T=new DataView(this.arrayb,w*this.pointSize,this.pointSize);return this.decoder(T)}},ze=class{arraybuffer;formatId=0;loader;isCompressed=!0;isOpen=!1;version=0;versionAsString="";constructor(w){if(this.arraybuffer=w,this.determineVersion()>13)throw new Error("Only file versions <= 1.3 are supported at this time");if(this.determineFormat(),ho[this.formatId]===void 0)throw new Error("The point format ID is not supported");this.loader=this.isCompressed?new Kn(this.arraybuffer):new qn(this.arraybuffer)}determineFormat(){let w=W2(this.arraybuffer,Uint8Array,104),T=(w&128)>>7,M=(w&64)>>6;if(T===1&&M===1)throw new Error("Old style compression not supported");this.formatId=w&63,this.isCompressed=T===1||M===1}determineVersion(){let w=new Int8Array(this.arraybuffer,24,2);return this.version=w[0]*10+w[1],this.versionAsString=`${w[0]}.${w[1]}`,this.version}open(){this.loader.open()&&(this.isOpen=!0)}getHeader(){return this.loader.getHeader()}readData(w,T,M){return this.loader.readData(w,T,M)}close(){this.loader.close()&&(this.isOpen=!1)}getUnpacker(){return bn}};function po(R,w){let T=Gv(R);return Pn(w,T)}function Gv(R){let w={};return w.las_pointsOffset=R.pointsOffset.toString(10),w.las_pointsFormatId=R.pointsFormatId.toString(10),w.las_pointsStructSize=R.pointsStructSize.toString(10),w.las_pointsCount=R.pointsCount.toString(10),w.las_scale=JSON.stringify(R.scale),w.las_offset=JSON.stringify(R.offset),R.maxs!==void 0&&(w.las_maxs=JSON.stringify(R.maxs)),R.mins!==void 0&&(w.las_mins=JSON.stringify(R.mins)),w.las_totalToRead=R.totalToRead.toString(10),w.las_pointsFortotalReadmatId=R.totalRead.toString(10),R.versionAsString!==void 0&&(w.las_versionAsString=R.versionAsString),R.isCompressed!==void 0&&(w.las_isCompressed=R.isCompressed.toString()),w}function rt(R,w){return Nv(R,w)}function Nv(R,w={}){let T=0,M,E,j,a,P,Q={loader:"las",loaderData:{},schema:{fields:[],metadata:{}},header:{vertexCount:0,boundingBox:[[0,0,0],[0,0,0]]},attributes:{},topology:"point-list",mode:0};return zv(R,w.las?.skip,(t0={},$)=>{if(!P){P=$;let A2=$.totalToRead,Q2=w.las?.fp64?Float64Array:Float32Array;M=new Q2(A2*3),E=$.pointsFormatId>=2?new Uint8Array(A2*4):null,j=new Uint16Array(A2),a=new Uint8Array(A2),Q.loaderData=$,Q.attributes={POSITION:{value:M,size:3},intensity:{value:j,size:1},classification:{value:a,size:1}},E&&(Q.attributes.COLOR_0={value:E,size:4})}let R0=t0.pointsCount,{scale:[g0,Hr,H2],offset:[Je,mr,pr]}=$,Ye=Mv(t0,R0,w.las?.colorDepth);for(let A2=0;A2<R0;A2++){let{position:Q2,color:p2,intensity:D2,classification:nt}=t0.getPoint(A2);M[T*3]=Q2[0]*g0+Je,M[T*3+1]=Q2[1]*Hr+mr,M[T*3+2]=Q2[2]*H2+pr,p2&&E&&(Ye?(E[T*4]=p2[0]/256,E[T*4+1]=p2[1]/256,E[T*4+2]=p2[2]/256):(E[T*4]=p2[0],E[T*4+1]=p2[1],E[T*4+2]=p2[2]),E[T*4+3]=255),j[T]=D2,a[T]=nt,T++}let Qr={...Q,header:{vertexCount:$.totalRead},progress:$.totalRead/$.totalToRead};w?.onProgress?.(Qr)}),Q.header={vertexCount:P.totalToRead,boundingBox:Dn(Q?.attributes||{})},Q&&(Q.schema=po(Q.loaderData,Q.attributes)),Q}function zv(R,w,T={}){let M=new ze(R);try{M.open();let E=M.getHeader(),j=M.getUnpacker(),a=Math.ceil(E.pointsCount/Math.max(1,w));E.totalToRead=a;let P=0;for(;;){let Q=M.readData(1e5,0,w);P+=Q.count,E.totalRead=P,E.versionAsString=Q.versionAsString,E.isCompressed=Q.isCompressed;let t0=new j(Q.buffer,Q.count,E);if(T(t0,E),!Q.hasMoreData||P>=a)break}}catch(E){throw E}finally{M.close()}}function Mv(R={},w,T){let M=!1;switch(T){case 8:M=!1;break;case 16:M=!0;break;case"auto":if(R.getPoint(0).color)for(let E=0;E<w;E++){let{color:j}=R.getPoint(E);(j[0]>255||j[1]>255||j[2]>255)&&(M=!0)}break;default:console.warn("las: illegal value for options.las.colorDepth");break}return M}var Bv="4.4.0-alpha.0",vo={...fo,dataType:null,batchType:null,name:"LAS",id:"las",module:"las",version:Bv,worker:!0,extensions:["las","laz"],mimeTypes:["application/octet-stream"],text:!0,binary:!0,tests:["LAS"],options:{las:{shape:"mesh",fp64:!1,skip:1,colorDepth:8}}},et={...vo,parse:async(R,w)=>rt(R,w),parseSync:(R,w)=>rt(R,w)};function yo(R){let w=R.split(".").map(Number);return{major:w[0],minor:w[1]}}var Be=class extends hr{baseUrl="";metadata=null;root=null;isReady=!1;initPromise=null;constructor(w,T){super(w,T),this.makeBaseUrl(this.data),this.initPromise=this.init()}async init(){if(this.initPromise){await this.initPromise;return}this.metadata=await(0,Me.load)(`${this.baseUrl}/cloud.js`,Ge),await this.loadHierarchy(),this.isReady=!0}isSupported(){let{minor:w,major:T}=yo(this.metadata?.version??"");return this.isReady&&T===1&&w<=8&&typeof this.metadata?.pointAttributes=="string"&&["LAS","LAZ"].includes(this.metadata?.pointAttributes)}getContentExtension(){if(!this.isReady)return null;switch(this.metadata?.pointAttributes){case"LAS":return"las";case"LAZ":return"laz";default:return"bin"}}async loadNodeContent(w){return await this.initPromise,this.isSupported()&&await this.isNodeAvailable(w)?(0,Me.load)(`${this.baseUrl}/${this.metadata?.octreeDir}/r/r${w.join("")}.${this.getContentExtension()}`,et):null}async isNodeAvailable(w){if(this.metadata?.hierarchy)return this.metadata.hierarchy.findIndex(j=>j[0]===`r${w.join()}`)!==-1;if(!this.root)return!1;let T=this.root,M="",E=!0;for(let j of w){let a=`${M}${j}`,P=T.children.find(Q=>Q.name===a);if(P)T=P,M=a;else{E=!1;break}}return E}async loadHierarchy(){this.root=await(0,Me.load)(`${this.baseUrl}/${this.metadata?.octreeDir}/r/r.hrc`,Ne)}makeBaseUrl(w){this.baseUrl=typeof w=="string"?Ir(w):"",this.baseUrl.endsWith("cloud.js")&&(this.baseUrl=this.baseUrl.substring(0,-8)),this.baseUrl.endsWith("/")&&(this.baseUrl=this.baseUrl.substring(0,-1))}};var Jv="1.7",Zo={name:"Potree",id:"potree",module:"potree",version:Jv,extensions:["bin","las","laz"],mimeTypes:["application/octet-stream"],type:"potree",fromUrl:!0,fromBlob:!0,defaultOptions:{potree:{}},testURL:R=>R.endsWith(".js"),createDataSource:(R,w)=>new Be(R,w)};return Fv(ar);})();
|
|
28
28
|
return __exports__;
|
|
29
29
|
});
|