@loaders.gl/las 4.3.2 → 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 +12067 -102
- package/dist/dist.min.js +26 -17
- package/dist/index.cjs +56 -27
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +4 -33
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -12
- package/dist/las-arrow-loader.d.ts +28 -0
- package/dist/las-arrow-loader.d.ts.map +1 -0
- package/dist/las-arrow-loader.js +20 -0
- package/dist/las-format.d.ts +14 -0
- package/dist/las-format.d.ts.map +1 -0
- package/dist/las-format.js +16 -0
- package/dist/las-loader.d.ts +28 -0
- package/dist/las-loader.d.ts.map +1 -1
- package/dist/las-loader.js +17 -2
- package/dist/las-worker.js +38 -25
- package/dist/lib/get-las-schema.d.ts.map +1 -1
- package/dist/lib/get-las-schema.js +4 -1
- package/dist/lib/las-types.d.ts +1 -1
- package/dist/lib/las-types.d.ts.map +1 -1
- package/dist/lib/las-types.js +3 -0
- package/dist/lib/laslaz-decoder.d.ts.map +1 -1
- package/dist/lib/laslaz-decoder.js +3 -0
- package/dist/lib/parse-las.d.ts.map +1 -1
- package/dist/lib/parse-las.js +5 -2
- package/dist/workers/las-worker.js +3 -0
- package/package.json +6 -5
- package/src/index.ts +7 -18
- package/src/las-arrow-loader.ts +25 -0
- package/src/las-format.ts +19 -0
- package/src/las-loader.ts +22 -2
- package/src/lib/get-las-schema.ts +6 -1
- package/src/lib/las-types.ts +5 -1
- package/src/lib/laslaz-decoder.ts +4 -0
- package/src/lib/parse-las.ts +6 -2
- package/src/workers/las-worker.ts +4 -0
package/dist/dist.min.js
CHANGED
|
@@ -4,26 +4,35 @@
|
|
|
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 Pv=Object.create;var Ur=Object.defineProperty;var $v=Object.getOwnPropertyDescriptor;var Lv=Object.getOwnPropertyNames;var qv=Object.getPrototypeOf,Kv=Object.prototype.hasOwnProperty;var Ee=(F,d)=>()=>(d||F((d={exports:{}}).exports,d),d.exports),av=(F,d)=>{for(var _ in d)Ur(F,_,{get:d[_],enumerable:!0})},gr=(F,d,_,J)=>{if(d&&typeof d=="object"||typeof d=="function")for(let x of Lv(d))!Kv.call(F,x)&&x!==_&&Ur(F,x,{get:()=>d[x],enumerable:!(J=$v(d,x))||J.enumerable});return F},dr=(F,d,_)=>(gr(F,d,"default"),_&&gr(_,d,"default")),bv=(F,d,_)=>(_=F!=null?Pv(qv(F)):{},gr(d||!F||!F.__esModule?Ur(_,"default",{value:F,enumerable:!0}):_,F)),nZ=F=>gr(Ur({},"__esModule",{value:!0}),F);var HA=Ee((up,IA)=>{IA.exports=globalThis.loaders});var Ce=Ee(()=>{});var $A=Ee(()=>{});var On={};av(On,{LASLoader:()=>uZ,LASWorkerLoader:()=>je});dr(On,bv(HA(),1));var rZ="4.3.1",je={dataType:null,batchType:null,name:"LAS",id:"las",module:"las",version:rZ,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 QA(F){switch(F.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 xe(F){let d=1/0,_=1/0,J=1/0,x=-1/0,Q=-1/0,t0=-1/0,i0=F.POSITION?F.POSITION.value:[],q=i0&&i0.length;for(let Z0=0;Z0<q;Z0+=3){let K=i0[Z0],R0=i0[Z0+1],U0=i0[Z0+2];d=K<d?K:d,_=R0<_?R0:_,J=U0<J?U0:J,x=K>x?K:x,Q=R0>Q?R0:Q,t0=U0>t0?U0:t0}return[[d,_,J],[x,Q,t0]]}function Se(F,d={}){return{fields:eZ(F),metadata:d}}function DA(F,d,_){let J=QA(d.value),x=_||PA(d);return{name:F,type:{type:"fixed-size-list",listSize:d.size,children:[{name:"value",type:J}]},nullable:!1,metadata:x}}function eZ(F){let d=[];for(let _ in F){let J=F[_];d.push(DA(_,J))}return d}function PA(F){let d={};return"byteOffset"in F&&(d.byteOffset=F.byteOffset.toString(10)),"byteStride"in F&&(d.byteStride=F.byteStride.toString(10)),"normalized"in F&&(d.normalized=F.normalized.toString()),d}function Oe(){var F=typeof F<"u"?F:{},d={},_;for(_ in F)F.hasOwnProperty(_)&&(d[_]=F[_]);var J=[],x="./this.program",Q=function(m,v){throw v},t0=!1,i0=!1,q=!1,Z0=!1;t0=typeof window=="object",i0=typeof importScripts=="function",q=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",Z0=!t0&&!q&&!i0;var K="";function R0(m){return F.locateFile?F.locateFile(m,K):K+m}var U0,In,Q2,Tr,mn,vn;q?(i0?K=Ce().dirname(K)+"/":K=(typeof __dirname<"u"?__dirname:"")+"/",U0=function(v,R){var l=y2(v);return l?R?l:l.toString():(mn||(mn=$A()),vn||(vn=Ce()),v=vn.normalize(v),mn.readFileSync(v,R?null:"utf8"))},Q2=function(v){var R=U0(v,!0);return R.buffer||(R=new Uint8Array(R)),$2(R.buffer),R},process.argv.length>1&&(x=process.argv[1].replace(/\\/g,"/")),J=process.argv.slice(2),typeof module<"u"&&(module.exports=F),process.on("uncaughtException",function(m){if(!(m instanceof Lf))throw m}),process.on("unhandledRejection",d2),Q=function(m){process.exit(m)},F.inspect=function(){return"[Emscripten Module object]"}):Z0?(typeof read<"u"&&(U0=function(v){var R=y2(v);return R?wt(R):read(v)}),Q2=function(v){var R;return R=y2(v),R||(typeof readbuffer=="function"?new Uint8Array(readbuffer(v)):(R=read(v,"binary"),$2(typeof R=="object"),R))},typeof scriptArgs<"u"?J=scriptArgs:typeof arguments<"u"&&(J=arguments),typeof quit=="function"&&(Q=function(m){quit(m)}),typeof print<"u"&&(typeof console>"u"&&(console={}),console.log=print,console.warn=console.error=typeof printErr<"u"?printErr:print)):(t0||i0)&&(i0?K=self.location.href:document.currentScript&&(K=document.currentScript.src),K.indexOf("blob:")!==0?K=K.substr(0,K.lastIndexOf("/")+1):K="",U0=function(v){try{var R=new XMLHttpRequest;return R.open("GET",v,!1),R.send(null),R.responseText}catch(g){var l=y2(v);if(l)return wt(l);throw g}},i0&&(Q2=function(v){try{var R=new XMLHttpRequest;return R.open("GET",v,!1),R.responseType="arraybuffer",R.send(null),new Uint8Array(R.response)}catch(g){var l=y2(v);if(l)return l;throw g}}),In=function(v,R,l){var g=new XMLHttpRequest;g.open("GET",v,!0),g.responseType="arraybuffer",g.onload=function(){if(g.status==200||g.status==0&&g.response){R(g.response);return}var y=y2(v);if(y){R(y.buffer);return}l()},g.onerror=l,g.send(null)},Tr=function(m){document.title=m});var Nr=F.print||console.log.bind(console),Hn=F.printErr||console.warn.bind(console);for(_ in d)d.hasOwnProperty(_)&&(F[_]=d[_]);d=null,F.arguments&&(J=F.arguments),F.thisProgram&&(x=F.thisProgram),F.quit&&(Q=F.quit);var A2=16;function D2(m){var v=N0[Br>>2],R=v+m+15&-16;return N0[Br>>2]=R,v}function v2(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 v=Number(m.substr(1));return $2(v%8===0,"getNativeTypeSize invalid bits "+v+", type "+m),v/8}else return 0}}}function P2(m){P2.shown||(P2.shown={}),P2.shown[m]||(P2.shown[m]=1,Hn(m))}var Pe=1,oZ=new Array(0),lZ={};function cZ(m,v,R){return R&&R.length?F["dynCall_"+m].apply(null,[v].concat(R)):F["dynCall_"+m].call(null,v)}var $e=0,aA=function(m){$e=m},bA=function(){return $e},Le=8,n1;F.wasmBinary&&(n1=F.wasmBinary);var qe;F.noExitRuntime&&(qe=F.noExitRuntime);function sZ(m,v,R,l){switch(R=R||"i8",R.charAt(R.length-1)==="*"&&(R="i32"),R){case"i1":Z2[m>>0]=v;break;case"i8":Z2[m>>0]=v;break;case"i16":g2[m>>1]=v;break;case"i32":N0[m>>2]=v;break;case"i64":Yr=[v>>>0,(L2=v,+X1(L2)>=1?L2>0?(d1(+U1(L2/4294967296),4294967295)|0)>>>0:~~+g1((L2-+(~~L2>>>0))/4294967296)>>>0:0)],N0[m>>2]=Yr[0],N0[m+4>>2]=Yr[1];break;case"float":zr[m>>2]=v;break;case"double":Mr[m>>3]=v;break;default:d2("invalid type for setValue: "+R)}}var Ke=!1,r1=0;function $2(m,v){m||d2("Assertion failed: "+v)}function e1(m){var v=F["_"+m];return $2(v,"Cannot call unknown function "+m+", make sure it is exported"),v}function hZ(m,v,R,l,g){var r={string:function($){var s0=0;if($!=null&&$!==0){var W0=($.length<<2)+1;s0=kt(W0),nt($,s0,W0)}return s0},array:function($){var s0=kt($.length);return h1($,s0),s0}};function y($){return v==="string"?be($):v==="boolean"?Boolean($):$}var G=e1(m),B=[],M=0;if(l)for(var X=0;X<l.length;X++){var L=r[R[X]];L?(M===0&&(M=Pf()),B[X]=L(l[X])):B[X]=l[X]}var e0=G.apply(null,B);return e0=y(e0),M!==0&&Df(M),e0}var mZ=3,ae=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function t1(m,v,R){for(var l=v+R,g=v;m[g]&&!(g>=l);)++g;if(g-v>16&&m.subarray&&ae)return ae.decode(m.subarray(v,g));for(var r="";v<g;){var y=m[v++];if(!(y&128)){r+=String.fromCharCode(y);continue}var G=m[v++]&63;if((y&224)==192){r+=String.fromCharCode((y&31)<<6|G);continue}var B=m[v++]&63;if((y&240)==224?y=(y&15)<<12|G<<6|B:y=(y&7)<<18|G<<12|B<<6|m[v++]&63,y<65536)r+=String.fromCharCode(y);else{var M=y-65536;r+=String.fromCharCode(55296|M>>10,56320|M&1023)}}return r}function be(m,v){return m?t1(d0,m,v):""}function i1(m,v,R,l){if(!(l>0))return 0;for(var g=R,r=R+l-1,y=0;y<m.length;++y){var G=m.charCodeAt(y);if(G>=55296&&G<=57343){var B=m.charCodeAt(++y);G=65536+((G&1023)<<10)|B&1023}if(G<=127){if(R>=r)break;v[R++]=G}else if(G<=2047){if(R+1>=r)break;v[R++]=192|G>>6,v[R++]=128|G&63}else if(G<=65535){if(R+2>=r)break;v[R++]=224|G>>12,v[R++]=128|G>>6&63,v[R++]=128|G&63}else{if(R+3>=r)break;v[R++]=240|G>>18,v[R++]=128|G>>12&63,v[R++]=128|G>>6&63,v[R++]=128|G&63}}return v[R]=0,R-g}function nt(m,v,R){return i1(m,d0,v,R)}function A1(m){for(var v=0,R=0;R<m.length;++R){var l=m.charCodeAt(R);l>=55296&&l<=57343&&(l=65536+((l&1023)<<10)|m.charCodeAt(++R)&1023),l<=127?++v:l<=2047?v+=2:l<=65535?v+=3:v+=4}return v}var rt=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function f1(m,v){for(var R=m,l=R>>1,g=l+v/2;!(l>=g)&&Qn[l];)++l;if(R=l<<1,R-m>32&&rt)return rt.decode(d0.subarray(m,R));for(var r=0,y="";;){var G=g2[m+r*2>>1];if(G==0||r==v/2)return y;++r,y+=String.fromCharCode(G)}}function u1(m,v,R){if(R===void 0&&(R=2147483647),R<2)return 0;R-=2;for(var l=v,g=R<m.length*2?R/2:m.length,r=0;r<g;++r){var y=m.charCodeAt(r);g2[v>>1]=y,v+=2}return g2[v>>1]=0,v-l}function o1(m){return m.length*2}function l1(m,v){for(var R=0,l="";!(R>=v/4);){var g=N0[m+R*4>>2];if(g==0)break;if(++R,g>=65536){var r=g-65536;l+=String.fromCharCode(55296|r>>10,56320|r&1023)}else l+=String.fromCharCode(g)}return l}function c1(m,v,R){if(R===void 0&&(R=2147483647),R<4)return 0;for(var l=v,g=l+R-4,r=0;r<m.length;++r){var y=m.charCodeAt(r);if(y>=55296&&y<=57343){var G=m.charCodeAt(++r);y=65536+((y&1023)<<10)|G&1023}if(N0[v>>2]=y,v+=4,v+4>g)break}return N0[v>>2]=0,v-l}function s1(m){for(var v=0,R=0;R<m.length;++R){var l=m.charCodeAt(R);l>=55296&&l<=57343&&++R,v+=4}return v}function h1(m,v){Z2.set(m,v)}function vZ(m,v,R){for(var l=0;l<m.length;++l)Z2[v++>>0]=m.charCodeAt(l);R||(Z2[v>>0]=0)}var X2,Z2,d0,g2,Qn,N0,f2,zr,Mr;function m1(m){X2=m,F.HEAP8=Z2=new Int8Array(m),F.HEAP16=g2=new Int16Array(m),F.HEAP32=N0=new Int32Array(m),F.HEAPU8=d0=new Uint8Array(m),F.HEAPU16=Qn=new Uint16Array(m),F.HEAPU32=f2=new Uint32Array(m),F.HEAPF32=zr=new Float32Array(m),F.HEAPF64=Mr=new Float64Array(m)}var ZZ=22384,v1=5265264,Br=22176,et=F.INITIAL_MEMORY||167772160;F.buffer?X2=F.buffer:X2=new ArrayBuffer(et),et=X2.byteLength,m1(X2),N0[Br>>2]=v1;function Dn(m){for(;m.length>0;){var v=m.shift();if(typeof v=="function"){v(F);continue}var R=v.func;typeof R=="number"?v.arg===void 0?F.dynCall_v(R):F.dynCall_vi(R,v.arg):R(v.arg===void 0?null:v.arg)}}var tt=[],it=[],Z1=[],At=[],p1=!1,y1=!1;function R1(){if(F.preRun)for(typeof F.preRun=="function"&&(F.preRun=[F.preRun]);F.preRun.length;)k1(F.preRun.shift());Dn(tt)}function V1(){p1=!0,Dn(it)}function F1(){Dn(Z1)}function pZ(){y1=!0}function w1(){if(F.postRun)for(typeof F.postRun=="function"&&(F.postRun=[F.postRun]);F.postRun.length;)W1(F.postRun.shift());Dn(At)}function k1(m){tt.unshift(m)}function W1(m){At.unshift(m)}var X1=Math.abs,g1=Math.ceil,U1=Math.floor,d1=Math.min,U2=0,Jr=null,Zn=null;function G1(m){U2++,F.monitorRunDependencies&&F.monitorRunDependencies(U2)}function T1(m){if(U2--,F.monitorRunDependencies&&F.monitorRunDependencies(U2),U2==0&&(Jr!==null&&(clearInterval(Jr),Jr=null),Zn)){var v=Zn;Zn=null,v()}}F.preloadedImages={},F.preloadedAudios={};function d2(m){throw F.onAbort&&F.onAbort(m),m+="",Nr(m),Hn(m),Ke=!0,r1=1,m="abort("+m+"). Build with -s ASSERTIONS=1 for more info.",m}var $0=null;function N1(m,v){return String.prototype.startsWith?m.startsWith(v):m.indexOf(v)===0}var ft="data:application/octet-stream;base64,";function ut(m){return N1(m,ft)}var yZ="file://",L2,Yr;it.push({func:function(){Qf()}}),$0="data:application/octet-stream;base64,AAAAAAAAAAAPDg0MCwoJCA4AAQMGCgoJDQECBAcLCwoMAwQFCAwMCwsGBwgJDQ0MCgoLDA0ODg0JCgsMDQ4PDggJCgsMDQ4PAAECAwQFBgcBAAECAwQFBgIBAAECAwQFAwIBAAECAwQEAwIBAAECAwUEAwIBAAECBgUEAwIBAAEHBgUEAwIBAMgPAAAoDQAAEBAAACAQAADIDwAAUA0AABAQAAAgEAAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAAAAAAAAAAAASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAAAAAADgFgAAmRgAAGAQAAAAAAAA4BYAAEIZAABgEAAAAAAAAOAWAAAqGgAASA8AAAAAAAC4FgAANBsAAOAWAACfGgAAMAoAAAAAAADgFgAAaRsAAEgPAAAAAAAA4BYAAIobAABIDwAAAAAAALgWAAAPHAAA4BYAAHwcAABIDwAAAAAAAOAWAACVHAAASA8AAAAAAADgFgAAHh0AAEgPAAAAAAAA4BYAAHcdAABIDwAAAAAAAOAWAACQHQAASA8AAAAAAADgFgAAQh4AAEgPAAAAAAAA4BYAAIceAABgEAAAAAAAAOAWAACkHwAASA8AAAAAAAC4FgAAZyAAAOAWAADkHwAA8AoAAAAAAADgFgAAjyAAAGAQAAAAAAAAuBYAAMMiAADgFgAAAiIAABgLAAAAAAAA4BYAAOEiAABgEAAAAAAAAOAWAADQJAAAGAsAAAAAAADgFgAAkSUAAGAQAAAAAAAA4BYAAIAnAAAYCwAAAAAAAOAWAAA9KAAAYBAAAAAAAADgFgAAJCoAABgLAAAAAAAA4BYAAOkqAABgEAAAAAAAAOAWAADgLAAA8AoAAAAAAADgFgAAui0AAGAQAAAAAAAA4BYAANsvAADwCgAAAAAAAOAWAADTMAAAYBAAAAAAAADgFgAAMDMAAPAKAAAAAAAA4BYAACQ0AABgEAAAAAAAAOAWAAB5NgAA8AoAAAAAAADgFgAAizcAAGAQAAAAAAAA4BYAABw6AABgEAAAAAAAAOAWAACdOgAAYBAAAAAAAADgFgAAXjsAAPAKAAAAAAAA4BYAALU7AABgEAAAAAAAAOAWAADMPAAAGAsAAAAAAADgFgAATz0AAGAQAAAAAAAA4BYAAL4+AAAYCwAAAAAAAOAWAABBPwAAYBAAAAAAAADgFgAAsEAAABgLAAAAAAAA4BYAADNBAABgEAAAAAAAAOAWAACiQgAAGAsAAAAAAADgFgAAJUMAAGAQAAAAAAAA4BYAAJREAAAYCwAAAAAAAOAWAAAXRQAAYBAAAAAAAADgFgAAhkYAABgLAAAAAAAA4BYAAAlHAABgEAAAAAAAALgWAAB4SAAAiBcAAIBIAAAAAAAAIA0AAIgXAACJSAAAAQAAACANAAC4FgAAqkgAAIgXAAC6SAAAAAAAAEgNAACIFwAAy0gAAAEAAABIDQAAuBYAABhMAAC4FgAAN0wAALgWAABWTAAAuBYAAHVMAAC4FgAAlEwAALgWAACzTAAAuBYAANJMAAC4FgAA8UwAALgWAAAQTQAAuBYAAC9NAAC4FgAATk0AALgWAABtTQAAuBYAAIxNAACkFwAAn00AAAAAAAABAAAA8A0AAAAAAAC4FgAA4U0AAKQXAAAHTgAAAAAAAAEAAADwDQAAAAAAAKQXAABJTgAAAAAAAAEAAADwDQAAAAAAAKQXAACITgAAAAAAAAEAAADwDQAAAAAAAKQXAADHTgAAAAAAAAEAAADwDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALgWAADNTwAA4BYAAC1QAAAADwAAAAAAAOAWAADaTwAAEA8AAAAAAAC4FgAA+08AAOAWAAAIUAAA8A4AAAAAAADgFgAAhlAAAOgOAAAAAAAA4BYAAJNQAADoDgAAAAAAAOAWAACjUAAA6A4AAAAAAADgFgAAtVAAADgPAAAAAAAA4BYAAMZQAAA4DwAAAAAAAOAWAADXUAAAAA8AAAAAAADgFgAA+VAAAHgPAAAAAAAA4BYAAB1RAAAADwAAAAAAAOAWAABCUQAAeA8AAAAAAADgFgAAjlEAAAAPAAAAAAAAbBcAALZRAABsFwAAuFEAAGwXAAC7UQAAbBcAAL1RAABsFwAAv1EAAGwXAADBUQAAbBcAAMNRAABsFwAAxVEAAGwXAADHUQAAbBcAAMlRAABsFwAAy1EAAGwXAADNUQAAbBcAAM9RAABsFwAA0VEAAOAWAADTUQAA8A4AAAAAAADgFgAARlIAAOgOAAAAAAAAuBYAAGJSAACkFwAAe1IAAAAAAAABAAAAWBAAAAAAAADgFgAA9FIAAIgQAAAAAAAA4BYAABdTAACYEAAAAAAAALgWAAAuUwAA4BYAAHBTAACIEAAAAAAAAOAWAACSUwAASA8AAAAAAAAAAAAAAAoAAAEAAAACAAAAAwAAAAEAAAAEAAAAAAAAABAKAAABAAAABQAAAAYAAAACAAAABwAAAAAAAAAgCgAACAAAAAkAAAABAAAAAAAAADgKAAAKAAAACwAAAAIAAAABAAAADAAAAA0AAAACAAAAAwAAAAMAAAAAAAAASAoAAAgAAAAOAAAAAQAAAAAAAABYCgAACAAAAA8AAAABAAAAAAAAAIAKAAAIAAAAEAAAAAEAAAAAAAAAcAoAAAgAAAARAAAAAQAAAAAAAACQCgAACAAAABIAAAABAAAAAAAAAKAKAAAIAAAAEwAAAAEAAAAAAAAAsAoAAAgAAAAUAAAAAQAAAAAAAADACgAACAAAABUAAAABAAAAAAAAANAKAAABAAAAFgAAABcAAAAEAAAAGAAAAAAAAADgCgAACAAAABkAAAABAAAAAAAAAPgKAAAFAAAAGgAAABsAAAAAAAAA8AoAAAEAAAAcAAAAHQAAAAAAAAAICwAAAQAAAB4AAAAfAAAABgAAACAAAAAAAAAAIAsAACEAAAAiAAAABwAAAAgAAAAAAAAAGAsAACMAAAAkAAAABwAAAAkAAAAAAAAAMAsAAAEAAAAlAAAAJgAAAAoAAAAnAAAAAAAAAEALAAAoAAAAKQAAAAcAAAALAAAAAAAAAFALAAABAAAAKgAAACsAAAAMAAAALAAAAAAAAABgCwAALQAAAC4AAAAHAAAADQAAAAAAAABwCwAAAQAAAC8AAAAwAAAADgAAADEAAAAAAAAAgAsAADIAAAAzAAAABwAAAA8AAAAAAAAAkAsAAAEAAAA0AAAANQAAABAAAAA2AAAAAAAAAKALAAARAAAANwAAADgAAAAAAAAAsAsAAAEAAAA5AAAAOgAAABIAAAA7AAAAAAAAAMALAAATAAAAPAAAAD0AAAAAAAAA0AsAAAEAAAA+AAAAPwAAABQAAABAAAAAAAAAAOALAAAVAAAAQQAAAEIAAAAAAAAA8AsAAAEAAABDAAAARAAAABYAAABFAAAAAAAAAAAMAAAXAAAARgAAAEcAAAAAAAAAEAwAAAEAAABIAAAASQAAABgAAABKAAAAAAAAACAMAAABAAAASwAAAEwAAAAZAAAATQAAAAAAAAAwDAAAAQAAAE4AAABPAAAAGgAAAFAAAAAAAAAAQAwAABsAAABRAAAAUgAAAAAAAABQDAAAAQAAAFMAAABUAAAAHAAAAFUAAAAAAAAAYAwAAFYAAABXAAAABwAAAB0AAAAAAAAAcAwAAAEAAABYAAAAWQAAAB4AAABaAAAAAAAAAIAMAABbAAAAXAAAAAcAAAAfAAAAAAAAAJAMAAABAAAAXQAAAF4AAAAgAAAAXwAAAAAAAACgDAAAYAAAAGEAAAAHAAAAIQAAAAAAAACwDAAAAQAAAGIAAABjAAAAIgAAAGQAAAAAAAAAwAwAAGUAAABmAAAABwAAACMAAAAAAAAA0AwAAAEAAABnAAAAaAAAACQAAABpAAAAAAAAAOAMAABqAAAAawAAAAcAAAAlAAAAAAAAAPAMAAABAAAAbAAAAG0AAAAmAAAAbgAAAAAAAAAADQAAbwAAAHAAAAAHAAAAJwAAAAAAAAAQDQAAAQAAAHEAAAByAAAAKAAAAHMAAAAoDQAAyA8AACgNAAAIEAAAEBAAACgNAABQDQAAyA8AAFANAAAgEAAAyA8AAFANAAAIEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwDgAAdAAAAHUAAAB2AAAAdwAAAAIAAAABAAAAAQAAAAEAAAAAAAAAGA8AAHQAAAB4AAAAdgAAAHcAAAACAAAAAgAAAAIAAAACAAAAAAAAACgPAAB5AAAAegAAAAQAAAAAAAAAOA8AAHsAAAB8AAAABQAAAAAAAABIDwAACAAAAH0AAAABAAAAAAAAAFgPAAB7AAAAfgAAAAUAAAAAAAAAaA8AAHsAAAB/AAAABQAAAAAAAAC4DwAAdAAAAIAAAAB2AAAAdwAAAAMAAAAAAAAAiA8AAHQAAACBAAAAdgAAAHcAAAAEAAAAAAAAADgQAAB0AAAAggAAAHYAAAB3AAAAAgAAAAMAAAADAAAAAwAAAAAAAABIEAAAgwAAAIQAAAAGAAAAAAAAAHgQAACFAAAAhgAAAAcAAAABAAAABQAAAAYAAAACAAAAAAAAAKAQAACFAAAAhwAAAAgAAAADAAAABQAAAAYAAAAEAAAA4BcAAAQYAAAAAAAAsBAAAIgAAACJAAAAAQAAAExBU1ppcABvcGVuAGdldFBvaW50AGdldENvdW50AER5bmFtaWNMQVNaaXAAYWRkRmllbGRGbG9hdGluZwBhZGRGaWVsZFNpZ25lZABhZGRGaWVsZFVuc2lnbmVkAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVOU185YWxsb2NhdG9ySVM3X0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFAExBU0YATjZsYXN6aXAxM2ludmFsaWRfbWFnaWNFAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUARmlsZSBtYWdpYyBpcyBub3QgdmFsaWQATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk42bGFzemlwMmlvNnJlYWRlcjEwYmFzaWNfZmlsZUlOUzJfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRTExX3ZhbGlkYXRvcnNFdkVVbFJOUzNfNmhlYWRlckVFX05TXzlhbGxvY2F0b3JJU0JfRUVGdlNBX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONmxhc3ppcDJpbzZoZWFkZXJFRUVFAE42bGFzemlwMjFvbGRfc3R5bGVfY29tcHJlc3Npb25FAE42bGFzemlwMTRub3RfY29tcHJlc3NlZEUAVGhlIGZpbGUgc2VlbXMgdG8gaGF2ZSBvbGQgc3R5bGUgY29tcHJlc3Npb24gd2hpY2ggaXMgbm90IHN1cHBvcnRlZABUaGUgZmlsZSBkb2Vzbid0IHNlZW0gdG8gYmUgY29tcHJlc3NlZABaTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUUxMV92YWxpZGF0b3JzRXZFVWxSTlMwXzZoZWFkZXJFRV8AbGFzemlwIGVuY29kZWQATjZsYXN6aXAxM25vX2xhc3ppcF92bHJFAE42bGFzemlwMjVsYXN6aXBfZm9ybWF0X3Vuc3VwcG9ydGVkRQBPbmx5IExBU3ppcCBQT0lOVFdJU0UgQ0hVTktFRCBkZWNvbXByZXNzb3IgaXMgc3VwcG9ydGVkAE5vIExBU3ppcCBWTFIgd2FzIGZvdW5kIGluIHRoZSBWTFJzIHNlY3Rpb24ATjZsYXN6aXAyMmNodW5rX3RhYmxlX3JlYWRfZXJyb3JFAENodW5rIHRhYmxlIG9mZnNldCA9PSAtMSBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZQBONmxhc3ppcDEzbm90X3N1cHBvcnRlZEUATjZsYXN6aXAyNnVua25vd25fY2h1bmtfdGFibGVfZm9ybWF0RQBjaHVua19zaXplID09IHVpbnQubWF4IGlzIG5vdCBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgBUaGVyZSB3YXMgYSBwcm9ibGVtIHJlYWRpbmcgdGhlIGNodW5rIHRhYmxlAFRoZSBjaHVuayB0YWJsZSB2ZXJzaW9uIG51bWJlciBpcyB1bmtub3duAE42bGFzemlwMTFlbmRfb2ZfZmlsZUUAUmVhY2hlZCBFbmQgb2YgZmlsZQBJbnZhbGlkIG51bWJlciBvZiBzeW1ib2xzAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFTlNfOWFsbG9jYXRvcklTOV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwMTl1bmtub3duX3NjaGVtYV90eXBlRQBUaGUgTEFaIHNjaGVtYSBpcyBub3QgcmVjb2duaXplZABONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMGR5bmFtaWNfZGVjb21wcmVzc29yRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVOU185YWxsb2NhdG9ySVNDX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNDX0VFRUVFRQBONmxhc3ppcDdmb3JtYXRzMTBiYXNlX2ZpZWxkRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF81ZmllbGRJTlMwXzNsYXM3Z3BzdGltZUVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczdncHN0aW1lRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0lfRUVOU185YWxsb2NhdG9ySVNJX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN2dwc3RpbWVFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfNWZpZWxkSU5TMF8zbGFzM3JnYkVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczNyZ2JFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXMzcmdiRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczEwZXh0cmFieXRlc0VOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVNJX0VFTlNfOWFsbG9jYXRvcklTSV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRUVFRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTS19FRU5TXzlhbGxvY2F0b3JJU0tfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNEX0VFRUVOU0JfSU5TQ183Z3BzdGltZUVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU05fRUVOU185YWxsb2NhdG9ySVNOX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMF81ZmllbGRJTlMwXzNsYXM3cG9pbnQxMEVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRF9FRUVFTlNCX0lOU0NfM3JnYkVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU0pfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTTl9FRU5TXzlhbGxvY2F0b3JJU05fRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRU5TRF9JTlNFXzNyZ2JFTlNHX0lTSl9FRUVFRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRU5TQl9JTlNDXzdncHN0aW1lRU5TRV9JU0hfRUVFRU5TQl9JTlNDXzNyZ2JFTlNFX0lTS19FRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRl9FRUVFTlNEX0lOU0VfN2dwc3RpbWVFTlNHX0lTSl9FRUVFTlNEX0lOU0VfM3JnYkVOU0dfSVNNX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU1FfRUVOU185YWxsb2NhdG9ySVNRX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU01fRUVFRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUDEwYnVmX3N0cmVhbU5TXzE0ZGVmYXVsdF9kZWxldGVJUzFfRUVOU185YWxsb2NhdG9ySVMxX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJMTBidWZfc3RyZWFtRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNV9FRU5TXzlhbGxvY2F0b3JJUzVfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM4X0VFTlNfOWFsbG9jYXRvcklTOF9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWlFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWlOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElpRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElpTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJak5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWpFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWpOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElqRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElqTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJakVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJYU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWFFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWFOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElhRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElhTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJYUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJc05TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXNFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXNOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElzRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElzTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJc0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWhFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWhOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEloRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEloTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaEVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJdE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXRFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXROUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEl0RUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEl0TlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJdEVFRUVFRUVFADZMQVNaaXAAUDZMQVNaaXAAUEs2TEFTWmlwAGlpAHYAdmkAdmlpaWkAdmlpaQBpaWkAMTNEeW5hbWljTEFTWmlwAFAxM0R5bmFtaWNMQVNaaXAAUEsxM0R5bmFtaWNMQVNaaXAAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOMTBlbXNjcmlwdGVuM3ZhbEUATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ALgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2MAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIwX19mdW5jdGlvbl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyOV9fcG9pbnRlcl90b19tZW1iZXJfdHlwZV9pbmZvRQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAF9fY3hhX2d1YXJkX2FjcXVpcmUgZGV0ZWN0ZWQgcmVjdXJzaXZlIGluaXRpYWxpemF0aW9uAHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwATlN0M19fMjE3YmFkX2Z1bmN0aW9uX2NhbGxFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQBtdXRleCBsb2NrIGZhaWxlZABiYXNpY19zdHJpbmcAdW5zcGVjaWZpZWQgZ2VuZXJpY19jYXRlZ29yeSBlcnJvcgBVbmtub3duIGVycm9yICVkAGdlbmVyaWMATlN0M19fMjI0X19nZW5lcmljX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJfX2RvX21lc3NhZ2VFAE5TdDNfXzIxNGVycm9yX2NhdGVnb3J5RQB1bnNwZWNpZmllZCBzeXN0ZW1fY2F0ZWdvcnkgZXJyb3IAc3lzdGVtAE5TdDNfXzIyM19fc3lzdGVtX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJzeXN0ZW1fZXJyb3JFADogAHZlY3Rvcg==";var z1=22368;function RZ(m){return m}function VZ(m){var v=/\b__Z[\w\d_]+/g;return m.replace(v,function(R){var l=R;return R===l?R:l+" ["+R+"]"})}function FZ(){var m=new Error;if(!m.stack){try{throw new Error}catch(v){m=v}if(!m.stack)return"(no stack trace available)"}return m.stack.toString()}function M1(m){return Pr(m)}var q2={},B1=[];function ot(m){if(m){var v=q2[m];v.refcount++}}function lt(m){if(!m||q2[m])return m;for(var v in q2)for(var R=+v,l=q2[R].adjusted,g=l.length,r=0;r<g;r++)if(l[r]===m)return R;return m}function J1(m){var v=q2[m];return v&&!v.caught&&(v.caught=!0,wn.uncaught_exceptions--),v&&(v.rethrown=!1),B1.push(m),ot(lt(m)),m}var Y1=0;function _1(m,v,R){throw q2[m]={ptr:m,adjusted:[m],type:v,destructor:R,refcount:0,caught:!1,rethrown:!1},Y1=m,"uncaught_exception"in wn?wn.uncaught_exceptions++:wn.uncaught_exceptions=1,m}function E1(){return wn.uncaught_exceptions}function j1(){}function _r(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 x1(){for(var m=new Array(256),v=0;v<256;++v)m[v]=String.fromCharCode(v);ct=m}var ct=void 0;function E0(m){for(var v="",R=m;d0[R];)v+=ct[d0[R++]];return v}var K2={},a2={},Pn={},S1=48,C1=57;function Er(m){if(m===void 0)return"_unknown";m=m.replace(/[^a-zA-Z0-9_]/g,"$");var v=m.charCodeAt(0);return v>=S1&&v<=C1?"_"+m:m}function jr(m,v){return m=Er(m),new Function("body","return function "+m+`() {
|
|
7
|
+
"use strict";var __exports__=(()=>{var cI=Object.create;var Su=Object.defineProperty;var lI=Object.getOwnPropertyDescriptor;var fI=Object.getOwnPropertyNames;var aI=Object.getPrototypeOf,hI=Object.prototype.hasOwnProperty;var tf=(o,r)=>()=>(r||o((r={exports:{}}).exports,r),r.exports),fi=(o,r)=>{for(var s in r)Su(o,s,{get:r[s],enumerable:!0})},Iu=(o,r,s,l)=>{if(r&&typeof r=="object"||typeof r=="function")for(let A of fI(r))!hI.call(o,A)&&A!==s&&Su(o,A,{get:()=>r[A],enumerable:!(l=lI(r,A))||l.enumerable});return o},Tu=(o,r,s)=>(Iu(o,r,"default"),s&&Iu(s,r,"default")),dI=(o,r,s)=>(s=o!=null?cI(aI(o)):{},Iu(r||!o||!o.__esModule?Su(s,"default",{value:o,enumerable:!0}):s,o)),AI=o=>Iu(Su({},"__esModule",{value:!0}),o);var fd=tf((PR,ld)=>{ld.exports=globalThis.loaders});var ca=tf(()=>{});var lp=tf(()=>{});var Go={};fi(Go,{LASArrowLoader:()=>Ap,LASFormat:()=>Ru,LASLoader:()=>dp,LASWorkerLoader:()=>Xo});Tu(Go,dI(fd(),1));var Ru={name:"LAS",id:"las",module:"las",extensions:["las","laz"],mimeTypes:["application/octet-stream"],text:!0,binary:!0,tests:["LAS"]};function pI(o,r="float32"){return o instanceof Date?"date-millisecond":o instanceof Number?r:typeof o=="string"?"utf8":(o===null||o==="undefined","null")}function ad(o){let r=ef(o);return r!=="null"?{type:r,nullable:!1}:o.length>0?(r=pI(o[0]),{type:r,nullable:!0}):{type:"null",nullable:!0}}function ef(o){switch(o.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 dd(o,r){var s={};for(var l in o)Object.prototype.hasOwnProperty.call(o,l)&&r.indexOf(l)<0&&(s[l]=o[l]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var A=0,l=Object.getOwnPropertySymbols(o);A<l.length;A++)r.indexOf(l[A])<0&&Object.prototype.propertyIsEnumerable.call(o,l[A])&&(s[l[A]]=o[l[A]]);return s}function Q(o,r,s,l){function A(m){return m instanceof s?m:new s(function(v){v(m)})}return new(s||(s=Promise))(function(m,v){function B(O){try{V(l.next(O))}catch(C){v(C)}}function T(O){try{V(l.throw(O))}catch(C){v(C)}}function V(O){O.done?m(O.value):A(O.value).then(B,T)}V((l=l.apply(o,r||[])).next())})}function hd(o){var r=typeof Symbol=="function"&&Symbol.iterator,s=r&&o[r],l=0;if(s)return s.call(o);if(o&&typeof o.length=="number")return{next:function(){return o&&l>=o.length&&(o=void 0),{value:o&&o[l++],done:!o}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function pt(o){return this instanceof pt?(this.v=o,this):new pt(o)}function mr(o,r,s){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var l=s.apply(o,r||[]),A,m=[];return A=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),B("next"),B("throw"),B("return",v),A[Symbol.asyncIterator]=function(){return this},A;function v(mt){return function(Ct){return Promise.resolve(Ct).then(mt,C)}}function B(mt,Ct){l[mt]&&(A[mt]=function(rn){return new Promise(function(kn,je){m.push([mt,rn,kn,je])>1||T(mt,rn)})},Ct&&(A[mt]=Ct(A[mt])))}function T(mt,Ct){try{V(l[mt](Ct))}catch(rn){yt(m[0][3],rn)}}function V(mt){mt.value instanceof pt?Promise.resolve(mt.value.v).then(O,C):yt(m[0][2],mt)}function O(mt){T("next",mt)}function C(mt){T("throw",mt)}function yt(mt,Ct){mt(Ct),m.shift(),m.length&&T(m[0][0],m[0][1])}}function D0(o){var r,s;return r={},l("next"),l("throw",function(A){throw A}),l("return"),r[Symbol.iterator]=function(){return this},r;function l(A,m){r[A]=o[A]?function(v){return(s=!s)?{value:pt(o[A](v)),done:!1}:m?m(v):v}:m}}function jr(o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=o[Symbol.asyncIterator],s;return r?r.call(o):(o=typeof hd=="function"?hd(o):o[Symbol.iterator](),s={},l("next"),l("throw"),l("return"),s[Symbol.asyncIterator]=function(){return this},s);function l(m){s[m]=o[m]&&function(v){return new Promise(function(B,T){v=o[m](v),A(B,T,v.done,v.value)})}}function A(m,v,B,T){Promise.resolve(T).then(function(V){m({value:V,done:B})},v)}}var cf={};fi(cf,{compareArrayLike:()=>uf,joinUint8Arrays:()=>yr,memcpy:()=>qs,rebaseValueOffsets:()=>Ou,toArrayBufferView:()=>vt,toArrayBufferViewAsyncIterator:()=>Yr,toArrayBufferViewIterator:()=>mn,toBigInt64Array:()=>ku,toBigUint64Array:()=>II,toFloat32Array:()=>SI,toFloat32ArrayAsyncIterator:()=>XI,toFloat32ArrayIterator:()=>NI,toFloat64Array:()=>TI,toFloat64ArrayAsyncIterator:()=>GI,toFloat64ArrayIterator:()=>kI,toInt16Array:()=>_I,toInt16ArrayAsyncIterator:()=>DI,toInt16ArrayIterator:()=>VI,toInt32Array:()=>zi,toInt32ArrayAsyncIterator:()=>WI,toInt32ArrayIterator:()=>xI,toInt8Array:()=>wI,toInt8ArrayAsyncIterator:()=>ZI,toInt8ArrayIterator:()=>UI,toUint16Array:()=>FI,toUint16ArrayAsyncIterator:()=>zI,toUint16ArrayIterator:()=>bI,toUint32Array:()=>BI,toUint32ArrayAsyncIterator:()=>EI,toUint32ArrayIterator:()=>MI,toUint8Array:()=>st,toUint8ArrayAsyncIterator:()=>of,toUint8ArrayIterator:()=>sf,toUint8ClampedArray:()=>RI,toUint8ClampedArrayAsyncIterator:()=>CI,toUint8ClampedArrayIterator:()=>OI});var mI=new TextDecoder("utf-8"),Qs=o=>mI.decode(o),yI=new TextEncoder,pn=o=>yI.encode(o);var gI=o=>typeof o=="number",Ad=o=>typeof o=="boolean",me=o=>typeof o=="function",We=o=>o!=null&&Object(o)===o,Lr=o=>We(o)&&me(o.then);var Jr=o=>We(o)&&me(o[Symbol.iterator]),br=o=>We(o)&&me(o[Symbol.asyncIterator]),Uu=o=>We(o)&&We(o.schema);var Vu=o=>We(o)&&"done"in o&&"value"in o;var xu=o=>We(o)&&me(o.stat)&&gI(o.fd);var bu=o=>We(o)&&$s(o.body),Mu=o=>"_getDOMStream"in o&&"_getNodeStream"in o,pd=o=>We(o)&&me(o.abort)&&me(o.getWriter)&&!Mu(o),$s=o=>We(o)&&me(o.cancel)&&me(o.getReader)&&!Mu(o),md=o=>We(o)&&me(o.end)&&me(o.write)&&Ad(o.writable)&&!Mu(o),Nu=o=>We(o)&&me(o.read)&&me(o.pipe)&&Ad(o.readable)&&!Mu(o),yd=o=>We(o)&&me(o.clear)&&me(o.bytes)&&me(o.position)&&me(o.setPosition)&&me(o.capacity)&&me(o.getBufferIdentifier)&&me(o.createLong);var nf=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:ArrayBuffer;function vI(o){let r=o[0]?[o[0]]:[],s,l,A,m;for(let v,B,T=0,V=0,O=o.length;++T<O;){if(v=r[V],B=o[T],!v||!B||v.buffer!==B.buffer||B.byteOffset<v.byteOffset){B&&(r[++V]=B);continue}if({byteOffset:s,byteLength:A}=v,{byteOffset:l,byteLength:m}=B,s+A<l||l+m<s){B&&(r[++V]=B);continue}r[V]=new Uint8Array(v.buffer,s,l-s+m)}return r}function qs(o,r,s=0,l=r.byteLength){let A=o.byteLength,m=new Uint8Array(o.buffer,o.byteOffset,A),v=new Uint8Array(r.buffer,r.byteOffset,Math.min(l,A));return m.set(v,s),o}function yr(o,r){let s=vI(o),l=s.reduce((O,C)=>O+C.byteLength,0),A,m,v,B=0,T=-1,V=Math.min(r||Number.POSITIVE_INFINITY,l);for(let O=s.length;++T<O;){if(A=s[T],m=A.subarray(0,Math.min(A.length,V-B)),V<=B+m.length){m.length<A.length?s[T]=A.subarray(m.length):m.length===A.length&&T++,v?qs(v,m,B):v=m;break}qs(v||(v=new Uint8Array(V)),m,B),B+=m.length}return[v||new Uint8Array(0),s.slice(T),l-(v?v.byteLength:0)]}function vt(o,r){let s=Vu(r)?r.value:r;return s instanceof o?o===Uint8Array?new o(s.buffer,s.byteOffset,s.byteLength):s:s?(typeof s=="string"&&(s=pn(s)),s instanceof ArrayBuffer?new o(s):s instanceof nf?new o(s):yd(s)?vt(o,s.bytes()):ArrayBuffer.isView(s)?s.byteLength<=0?new o(0):new o(s.buffer,s.byteOffset,s.byteLength/o.BYTES_PER_ELEMENT):o.from(s)):new o(0)}var wI=o=>vt(Int8Array,o),_I=o=>vt(Int16Array,o),zi=o=>vt(Int32Array,o),ku=o=>vt(BigInt64Array,o),st=o=>vt(Uint8Array,o),FI=o=>vt(Uint16Array,o),BI=o=>vt(Uint32Array,o),II=o=>vt(BigUint64Array,o),SI=o=>vt(Float32Array,o),TI=o=>vt(Float64Array,o),RI=o=>vt(Uint8ClampedArray,o),rf=o=>(o.next(),o);function*mn(o,r){let s=function*(A){yield A},l=typeof r=="string"||ArrayBuffer.isView(r)||r instanceof ArrayBuffer||r instanceof nf?s(r):Jr(r)?r:s(r);return yield*rf(function*(A){let m=null;do m=A.next(yield vt(o,m));while(!m.done)}(l[Symbol.iterator]())),new o}var UI=o=>mn(Int8Array,o),VI=o=>mn(Int16Array,o),xI=o=>mn(Int32Array,o),sf=o=>mn(Uint8Array,o),bI=o=>mn(Uint16Array,o),MI=o=>mn(Uint32Array,o),NI=o=>mn(Float32Array,o),kI=o=>mn(Float64Array,o),OI=o=>mn(Uint8ClampedArray,o);function Yr(o,r){return mr(this,arguments,function*(){if(Lr(r))return yield pt(yield pt(yield*D0(jr(Yr(o,yield pt(r))))));let l=function(v){return mr(this,arguments,function*(){yield yield pt(yield pt(v))})},A=function(v){return mr(this,arguments,function*(){yield pt(yield*D0(jr(rf(function*(B){let T=null;do T=B.next(yield T?.value);while(!T.done)}(v[Symbol.iterator]())))))})},m=typeof r=="string"||ArrayBuffer.isView(r)||r instanceof ArrayBuffer||r instanceof nf?l(r):Jr(r)?A(r):br(r)?r:l(r);return yield pt(yield*D0(jr(rf(function(v){return mr(this,arguments,function*(){let B=null;do B=yield pt(v.next(yield yield pt(vt(o,B))));while(!B.done)})}(m[Symbol.asyncIterator]()))))),yield pt(new o)})}var ZI=o=>Yr(Int8Array,o),DI=o=>Yr(Int16Array,o),WI=o=>Yr(Int32Array,o),of=o=>Yr(Uint8Array,o),zI=o=>Yr(Uint16Array,o),EI=o=>Yr(Uint32Array,o),XI=o=>Yr(Float32Array,o),GI=o=>Yr(Float64Array,o),CI=o=>Yr(Uint8ClampedArray,o);function Ou(o,r,s){if(o!==0){s=s.slice(0,r);for(let l=-1,A=s.length;++l<A;)s[l]+=o}return s.subarray(0,r)}function uf(o,r){let s=0,l=o.length;if(l!==r.length)return!1;if(l>0)do if(o[s]!==r[s])return!1;while(++s<l);return!0}var Te={fromIterable(o){return Zu(jI(o))},fromAsyncIterable(o){return Zu(LI(o))},fromDOMStream(o){return Zu(JI(o))},fromNodeStream(o){return Zu(YI(o))},toDOMStream(o,r){throw new Error('"toDOMStream" not available in this environment')},toNodeStream(o,r){throw new Error('"toNodeStream" not available in this environment')}},Zu=o=>(o.next(),o);function*jI(o){let r,s=!1,l=[],A,m,v,B=0;function T(){return m==="peek"?yr(l,v)[0]:([A,l,B]=yr(l,v),A)}({cmd:m,size:v}=(yield(()=>null)())||{cmd:"read",size:0});let V=sf(o)[Symbol.iterator]();try{do if({done:r,value:A}=Number.isNaN(v-B)?V.next():V.next(v-B),!r&&A.byteLength>0&&(l.push(A),B+=A.byteLength),r||v<=B)do({cmd:m,size:v}=yield T());while(v<B);while(!r)}catch(O){(s=!0)&&typeof V.throw=="function"&&V.throw(O)}finally{s===!1&&typeof V.return=="function"&&V.return(null)}return null}function LI(o){return mr(this,arguments,function*(){let s,l=!1,A=[],m,v,B,T=0;function V(){return v==="peek"?yr(A,B)[0]:([m,A,T]=yr(A,B),m)}({cmd:v,size:B}=(yield yield pt((()=>null)()))||{cmd:"read",size:0});let O=of(o)[Symbol.asyncIterator]();try{do if({done:s,value:m}=Number.isNaN(B-T)?yield pt(O.next()):yield pt(O.next(B-T)),!s&&m.byteLength>0&&(A.push(m),T+=m.byteLength),s||B<=T)do({cmd:v,size:B}=yield yield pt(V()));while(B<T);while(!s)}catch(C){(l=!0)&&typeof O.throw=="function"&&(yield pt(O.throw(C)))}finally{l===!1&&typeof O.return=="function"&&(yield pt(O.return(new Uint8Array(0))))}return yield pt(null)})}function JI(o){return mr(this,arguments,function*(){let s=!1,l=!1,A=[],m,v,B,T=0;function V(){return v==="peek"?yr(A,B)[0]:([m,A,T]=yr(A,B),m)}({cmd:v,size:B}=(yield yield pt((()=>null)()))||{cmd:"read",size:0});let O=new ff(o);try{do if({done:s,value:m}=Number.isNaN(B-T)?yield pt(O.read()):yield pt(O.read(B-T)),!s&&m.byteLength>0&&(A.push(st(m)),T+=m.byteLength),s||B<=T)do({cmd:v,size:B}=yield yield pt(V()));while(B<T);while(!s)}catch(C){(l=!0)&&(yield pt(O.cancel(C)))}finally{l===!1?yield pt(O.cancel()):o.locked&&O.releaseLock()}return yield pt(null)})}var ff=class{constructor(r){this.source=r,this.reader=null,this.reader=this.source.getReader(),this.reader.closed.catch(()=>{})}get closed(){return this.reader?this.reader.closed.catch(()=>{}):Promise.resolve()}releaseLock(){this.reader&&this.reader.releaseLock(),this.reader=null}cancel(r){return Q(this,void 0,void 0,function*(){let{reader:s,source:l}=this;s&&(yield s.cancel(r).catch(()=>{})),l&&l.locked&&this.releaseLock()})}read(r){return Q(this,void 0,void 0,function*(){if(r===0)return{done:this.reader==null,value:new Uint8Array(0)};let s=yield this.reader.read();return!s.done&&(s.value=st(s)),s})}},lf=(o,r)=>{let s=A=>l([r,A]),l;return[r,s,new Promise(A=>(l=A)&&o.once(r,s))]};function YI(o){return mr(this,arguments,function*(){let s=[],l="error",A=!1,m=null,v,B,T=0,V=[],O;function C(){return v==="peek"?yr(V,B)[0]:([O,V,T]=yr(V,B),O)}if({cmd:v,size:B}=(yield yield pt((()=>null)()))||{cmd:"read",size:0},o.isTTY)return yield yield pt(new Uint8Array(0)),yield pt(null);try{s[0]=lf(o,"end"),s[1]=lf(o,"error");do{if(s[2]=lf(o,"readable"),[l,m]=yield pt(Promise.race(s.map(mt=>mt[2]))),l==="error")break;if((A=l==="end")||(Number.isFinite(B-T)?(O=st(o.read(B-T)),O.byteLength<B-T&&(O=st(o.read()))):O=st(o.read()),O.byteLength>0&&(V.push(O),T+=O.byteLength)),A||B<=T)do({cmd:v,size:B}=yield yield pt(C()));while(B<T)}while(!A)}finally{yield pt(yt(s,l==="error"?m:null))}return yield pt(null);function yt(mt,Ct){return O=V=null,new Promise((rn,kn)=>{for(let[je,Fs]of mt)o.off(je,Fs);try{let je=o.destroy;je&&je.call(o,Ct),Ct=void 0}catch(je){Ct=je||Ct}finally{Ct!=null?kn(Ct):rn()}})}})}var Ot;(function(o){o[o.V1=0]="V1",o[o.V2=1]="V2",o[o.V3=2]="V3",o[o.V4=3]="V4",o[o.V5=4]="V5"})(Ot||(Ot={}));var Xt;(function(o){o[o.Sparse=0]="Sparse",o[o.Dense=1]="Dense"})(Xt||(Xt={}));var Wt;(function(o){o[o.HALF=0]="HALF",o[o.SINGLE=1]="SINGLE",o[o.DOUBLE=2]="DOUBLE"})(Wt||(Wt={}));var qt;(function(o){o[o.DAY=0]="DAY",o[o.MILLISECOND=1]="MILLISECOND"})(qt||(qt={}));var H;(function(o){o[o.SECOND=0]="SECOND",o[o.MILLISECOND=1]="MILLISECOND",o[o.MICROSECOND=2]="MICROSECOND",o[o.NANOSECOND=3]="NANOSECOND"})(H||(H={}));var ue;(function(o){o[o.YEAR_MONTH=0]="YEAR_MONTH",o[o.DAY_TIME=1]="DAY_TIME",o[o.MONTH_DAY_NANO=2]="MONTH_DAY_NANO"})(ue||(ue={}));var yn=new Int32Array(2),Du=new Float32Array(yn.buffer),Wu=new Float64Array(yn.buffer),W0=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;var Ks;(function(o){o[o.UTF8_BYTES=1]="UTF8_BYTES",o[o.UTF16_STRING=2]="UTF16_STRING"})(Ks||(Ks={}));var ze=class{constructor(r){this.bytes_=r,this.position_=0,this.text_decoder_=new TextDecoder}static allocate(r){return new ze(new Uint8Array(r))}clear(){this.position_=0}bytes(){return this.bytes_}position(){return this.position_}setPosition(r){this.position_=r}capacity(){return this.bytes_.length}readInt8(r){return this.readUint8(r)<<24>>24}readUint8(r){return this.bytes_[r]}readInt16(r){return this.readUint16(r)<<16>>16}readUint16(r){return this.bytes_[r]|this.bytes_[r+1]<<8}readInt32(r){return this.bytes_[r]|this.bytes_[r+1]<<8|this.bytes_[r+2]<<16|this.bytes_[r+3]<<24}readUint32(r){return this.readInt32(r)>>>0}readInt64(r){return BigInt.asIntN(64,BigInt(this.readUint32(r))+(BigInt(this.readUint32(r+4))<<BigInt(32)))}readUint64(r){return BigInt.asUintN(64,BigInt(this.readUint32(r))+(BigInt(this.readUint32(r+4))<<BigInt(32)))}readFloat32(r){return yn[0]=this.readInt32(r),Du[0]}readFloat64(r){return yn[W0?0:1]=this.readInt32(r),yn[W0?1:0]=this.readInt32(r+4),Wu[0]}writeInt8(r,s){this.bytes_[r]=s}writeUint8(r,s){this.bytes_[r]=s}writeInt16(r,s){this.bytes_[r]=s,this.bytes_[r+1]=s>>8}writeUint16(r,s){this.bytes_[r]=s,this.bytes_[r+1]=s>>8}writeInt32(r,s){this.bytes_[r]=s,this.bytes_[r+1]=s>>8,this.bytes_[r+2]=s>>16,this.bytes_[r+3]=s>>24}writeUint32(r,s){this.bytes_[r]=s,this.bytes_[r+1]=s>>8,this.bytes_[r+2]=s>>16,this.bytes_[r+3]=s>>24}writeInt64(r,s){this.writeInt32(r,Number(BigInt.asIntN(32,s))),this.writeInt32(r+4,Number(BigInt.asIntN(32,s>>BigInt(32))))}writeUint64(r,s){this.writeUint32(r,Number(BigInt.asUintN(32,s))),this.writeUint32(r+4,Number(BigInt.asUintN(32,s>>BigInt(32))))}writeFloat32(r,s){Du[0]=s,this.writeInt32(r,yn[0])}writeFloat64(r,s){Wu[0]=s,this.writeInt32(r,yn[W0?0:1]),this.writeInt32(r+4,yn[W0?1:0])}getBufferIdentifier(){if(this.bytes_.length<this.position_+4+4)throw new Error("FlatBuffers: ByteBuffer is too short to contain an identifier.");let r="";for(let s=0;s<4;s++)r+=String.fromCharCode(this.readInt8(this.position_+4+s));return r}__offset(r,s){let l=r-this.readInt32(r);return s<this.readInt16(l)?this.readInt16(l+s):0}__union(r,s){return r.bb_pos=s+this.readInt32(s),r.bb=this,r}__string(r,s){r+=this.readInt32(r);let l=this.readInt32(r);r+=4;let A=this.bytes_.subarray(r,r+l);return s===Ks.UTF8_BYTES?A:this.text_decoder_.decode(A)}__union_with_string(r,s){return typeof r=="string"?this.__string(s):this.__union(r,s)}__indirect(r){return r+this.readInt32(r)}__vector(r){return r+this.readInt32(r)+4}__vector_len(r){return this.readInt32(r+this.readInt32(r))}__has_identifier(r){if(r.length!=4)throw new Error("FlatBuffers: file identifier must be length "+4);for(let s=0;s<4;s++)if(r.charCodeAt(s)!=this.readInt8(this.position()+4+s))return!1;return!0}createScalarList(r,s){let l=[];for(let A=0;A<s;++A){let m=r(A);m!==null&&l.push(m)}return l}createObjList(r,s){let l=[];for(let A=0;A<s;++A){let m=r(A);m!==null&&l.push(m.unpack())}return l}};var Cn=class{constructor(r){this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1,this.string_maps=null,this.text_encoder=new TextEncoder;let s;r?s=r:s=1024,this.bb=ze.allocate(s),this.space=s}clear(){this.bb.clear(),this.space=this.bb.capacity(),this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1,this.string_maps=null}forceDefaults(r){this.force_defaults=r}dataBuffer(){return this.bb}asUint8Array(){return this.bb.bytes().subarray(this.bb.position(),this.bb.position()+this.offset())}prep(r,s){r>this.minalign&&(this.minalign=r);let l=~(this.bb.capacity()-this.space+s)+1&r-1;for(;this.space<l+r+s;){let A=this.bb.capacity();this.bb=Cn.growByteBuffer(this.bb),this.space+=this.bb.capacity()-A}this.pad(l)}pad(r){for(let s=0;s<r;s++)this.bb.writeInt8(--this.space,0)}writeInt8(r){this.bb.writeInt8(this.space-=1,r)}writeInt16(r){this.bb.writeInt16(this.space-=2,r)}writeInt32(r){this.bb.writeInt32(this.space-=4,r)}writeInt64(r){this.bb.writeInt64(this.space-=8,r)}writeFloat32(r){this.bb.writeFloat32(this.space-=4,r)}writeFloat64(r){this.bb.writeFloat64(this.space-=8,r)}addInt8(r){this.prep(1,0),this.writeInt8(r)}addInt16(r){this.prep(2,0),this.writeInt16(r)}addInt32(r){this.prep(4,0),this.writeInt32(r)}addInt64(r){this.prep(8,0),this.writeInt64(r)}addFloat32(r){this.prep(4,0),this.writeFloat32(r)}addFloat64(r){this.prep(8,0),this.writeFloat64(r)}addFieldInt8(r,s,l){(this.force_defaults||s!=l)&&(this.addInt8(s),this.slot(r))}addFieldInt16(r,s,l){(this.force_defaults||s!=l)&&(this.addInt16(s),this.slot(r))}addFieldInt32(r,s,l){(this.force_defaults||s!=l)&&(this.addInt32(s),this.slot(r))}addFieldInt64(r,s,l){(this.force_defaults||s!==l)&&(this.addInt64(s),this.slot(r))}addFieldFloat32(r,s,l){(this.force_defaults||s!=l)&&(this.addFloat32(s),this.slot(r))}addFieldFloat64(r,s,l){(this.force_defaults||s!=l)&&(this.addFloat64(s),this.slot(r))}addFieldOffset(r,s,l){(this.force_defaults||s!=l)&&(this.addOffset(s),this.slot(r))}addFieldStruct(r,s,l){s!=l&&(this.nested(s),this.slot(r))}nested(r){if(r!=this.offset())throw new TypeError("FlatBuffers: struct must be serialized inline.")}notNested(){if(this.isNested)throw new TypeError("FlatBuffers: object serialization must not be nested.")}slot(r){this.vtable!==null&&(this.vtable[r]=this.offset())}offset(){return this.bb.capacity()-this.space}static growByteBuffer(r){let s=r.capacity();if(s&3221225472)throw new Error("FlatBuffers: cannot grow buffer beyond 2 gigabytes.");let l=s<<1,A=ze.allocate(l);return A.setPosition(l-s),A.bytes().set(r.bytes(),l-s),A}addOffset(r){this.prep(4,0),this.writeInt32(this.offset()-r+4)}startObject(r){this.notNested(),this.vtable==null&&(this.vtable=[]),this.vtable_in_use=r;for(let s=0;s<r;s++)this.vtable[s]=0;this.isNested=!0,this.object_start=this.offset()}endObject(){if(this.vtable==null||!this.isNested)throw new Error("FlatBuffers: endObject called without startObject");this.addInt32(0);let r=this.offset(),s=this.vtable_in_use-1;for(;s>=0&&this.vtable[s]==0;s--);let l=s+1;for(;s>=0;s--)this.addInt16(this.vtable[s]!=0?r-this.vtable[s]:0);let A=2;this.addInt16(r-this.object_start);let m=(l+A)*2;this.addInt16(m);let v=0,B=this.space;t:for(s=0;s<this.vtables.length;s++){let T=this.bb.capacity()-this.vtables[s];if(m==this.bb.readInt16(T)){for(let V=2;V<m;V+=2)if(this.bb.readInt16(B+V)!=this.bb.readInt16(T+V))continue t;v=this.vtables[s];break}}return v?(this.space=this.bb.capacity()-r,this.bb.writeInt32(this.space,v-r)):(this.vtables.push(this.offset()),this.bb.writeInt32(this.bb.capacity()-r,this.offset()-r)),this.isNested=!1,r}finish(r,s,l){let A=l?4:0;if(s){let m=s;if(this.prep(this.minalign,4+4+A),m.length!=4)throw new TypeError("FlatBuffers: file identifier must be length "+4);for(let v=4-1;v>=0;v--)this.writeInt8(m.charCodeAt(v))}this.prep(this.minalign,4+A),this.addOffset(r),A&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)}finishSizePrefixed(r,s){this.finish(r,s,!0)}requiredField(r,s){let l=this.bb.capacity()-r,A=l-this.bb.readInt32(l);if(!(s<this.bb.readInt16(A)&&this.bb.readInt16(A+s)!=0))throw new TypeError("FlatBuffers: field "+s+" must be set")}startVector(r,s,l){this.notNested(),this.vector_num_elems=s,this.prep(4,r*s),this.prep(l,r*s)}endVector(){return this.writeInt32(this.vector_num_elems),this.offset()}createSharedString(r){if(!r)return 0;if(this.string_maps||(this.string_maps=new Map),this.string_maps.has(r))return this.string_maps.get(r);let s=this.createString(r);return this.string_maps.set(r,s),s}createString(r){if(r==null)return 0;let s;return r instanceof Uint8Array?s=r:s=this.text_encoder.encode(r),this.addInt8(0),this.startVector(1,s.length,1),this.bb.setPosition(this.space-=s.length),this.bb.bytes().set(s,this.space),this.endVector()}createByteVector(r){return r==null?0:(this.startVector(1,r.length,1),this.bb.setPosition(this.space-=r.length),this.bb.bytes().set(r,this.space),this.endVector())}createObjectOffset(r){return r===null?0:typeof r=="string"?this.createString(r):r.pack(this)}createObjectOffsetList(r){let s=[];for(let l=0;l<r.length;++l){let A=r[l];if(A!==null)s.push(this.createObjectOffset(A));else throw new TypeError("FlatBuffers: Argument for createObjectOffsetList cannot contain null.")}return s}createStructOffsetList(r,s){return s(this,r.length),this.createObjectOffsetList(r.slice().reverse()),this.endVector()}};var to;(function(o){o[o.BUFFER=0]="BUFFER"})(to||(to={}));var eo;(function(o){o[o.LZ4_FRAME=0]="LZ4_FRAME",o[o.ZSTD=1]="ZSTD"})(eo||(eo={}));var Hr=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsBodyCompression(r,s){return(s||new Hr).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsBodyCompression(r,s){return r.setPosition(r.position()+4),(s||new Hr).__init(r.readInt32(r.position())+r.position(),r)}codec(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt8(this.bb_pos+r):eo.LZ4_FRAME}method(){let r=this.bb.__offset(this.bb_pos,6);return r?this.bb.readInt8(this.bb_pos+r):to.BUFFER}static startBodyCompression(r){r.startObject(2)}static addCodec(r,s){r.addFieldInt8(0,s,eo.LZ4_FRAME)}static addMethod(r,s){r.addFieldInt8(1,s,to.BUFFER)}static endBodyCompression(r){return r.endObject()}static createBodyCompression(r,s,l){return Hr.startBodyCompression(r),Hr.addCodec(r,s),Hr.addMethod(r,l),Hr.endBodyCompression(r)}};var z0=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}offset(){return this.bb.readInt64(this.bb_pos)}length(){return this.bb.readInt64(this.bb_pos+8)}static sizeOf(){return 16}static createBuffer(r,s,l){return r.prep(8,16),r.writeInt64(BigInt(l??0)),r.writeInt64(BigInt(s??0)),r.offset()}};var E0=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}length(){return this.bb.readInt64(this.bb_pos)}nullCount(){return this.bb.readInt64(this.bb_pos+8)}static sizeOf(){return 16}static createFieldNode(r,s,l){return r.prep(8,16),r.writeInt64(BigInt(l??0)),r.writeInt64(BigInt(s??0)),r.offset()}};var be=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsRecordBatch(r,s){return(s||new be).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsRecordBatch(r,s){return r.setPosition(r.position()+4),(s||new be).__init(r.readInt32(r.position())+r.position(),r)}length(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt64(this.bb_pos+r):BigInt("0")}nodes(r,s){let l=this.bb.__offset(this.bb_pos,6);return l?(s||new E0).__init(this.bb.__vector(this.bb_pos+l)+r*16,this.bb):null}nodesLength(){let r=this.bb.__offset(this.bb_pos,6);return r?this.bb.__vector_len(this.bb_pos+r):0}buffers(r,s){let l=this.bb.__offset(this.bb_pos,8);return l?(s||new z0).__init(this.bb.__vector(this.bb_pos+l)+r*16,this.bb):null}buffersLength(){let r=this.bb.__offset(this.bb_pos,8);return r?this.bb.__vector_len(this.bb_pos+r):0}compression(r){let s=this.bb.__offset(this.bb_pos,10);return s?(r||new Hr).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}static startRecordBatch(r){r.startObject(4)}static addLength(r,s){r.addFieldInt64(0,s,BigInt("0"))}static addNodes(r,s){r.addFieldOffset(1,s,0)}static startNodesVector(r,s){r.startVector(16,s,8)}static addBuffers(r,s){r.addFieldOffset(2,s,0)}static startBuffersVector(r,s){r.startVector(16,s,8)}static addCompression(r,s){r.addFieldOffset(3,s,0)}static endRecordBatch(r){return r.endObject()}};var Nr=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsDictionaryBatch(r,s){return(s||new Nr).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsDictionaryBatch(r,s){return r.setPosition(r.position()+4),(s||new Nr).__init(r.readInt32(r.position())+r.position(),r)}id(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt64(this.bb_pos+r):BigInt("0")}data(r){let s=this.bb.__offset(this.bb_pos,6);return s?(r||new be).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}isDelta(){let r=this.bb.__offset(this.bb_pos,8);return r?!!this.bb.readInt8(this.bb_pos+r):!1}static startDictionaryBatch(r){r.startObject(3)}static addId(r,s){r.addFieldInt64(0,s,BigInt("0"))}static addData(r,s){r.addFieldOffset(1,s,0)}static addIsDelta(r,s){r.addFieldInt8(2,+s,0)}static endDictionaryBatch(r){return r.endObject()}};var ai;(function(o){o[o.Little=0]="Little",o[o.Big=1]="Big"})(ai||(ai={}));var ro;(function(o){o[o.DenseArray=0]="DenseArray"})(ro||(ro={}));var we=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsInt(r,s){return(s||new we).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsInt(r,s){return r.setPosition(r.position()+4),(s||new we).__init(r.readInt32(r.position())+r.position(),r)}bitWidth(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt32(this.bb_pos+r):0}isSigned(){let r=this.bb.__offset(this.bb_pos,6);return r?!!this.bb.readInt8(this.bb_pos+r):!1}static startInt(r){r.startObject(2)}static addBitWidth(r,s){r.addFieldInt32(0,s,0)}static addIsSigned(r,s){r.addFieldInt8(1,+s,0)}static endInt(r){return r.endObject()}static createInt(r,s,l){return we.startInt(r),we.addBitWidth(r,s),we.addIsSigned(r,l),we.endInt(r)}};var gr=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsDictionaryEncoding(r,s){return(s||new gr).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsDictionaryEncoding(r,s){return r.setPosition(r.position()+4),(s||new gr).__init(r.readInt32(r.position())+r.position(),r)}id(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt64(this.bb_pos+r):BigInt("0")}indexType(r){let s=this.bb.__offset(this.bb_pos,6);return s?(r||new we).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}isOrdered(){let r=this.bb.__offset(this.bb_pos,8);return r?!!this.bb.readInt8(this.bb_pos+r):!1}dictionaryKind(){let r=this.bb.__offset(this.bb_pos,10);return r?this.bb.readInt16(this.bb_pos+r):ro.DenseArray}static startDictionaryEncoding(r){r.startObject(4)}static addId(r,s){r.addFieldInt64(0,s,BigInt("0"))}static addIndexType(r,s){r.addFieldOffset(1,s,0)}static addIsOrdered(r,s){r.addFieldInt8(2,+s,0)}static addDictionaryKind(r,s){r.addFieldInt16(3,s,ro.DenseArray)}static endDictionaryEncoding(r){return r.endObject()}};var Pt=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsKeyValue(r,s){return(s||new Pt).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsKeyValue(r,s){return r.setPosition(r.position()+4),(s||new Pt).__init(r.readInt32(r.position())+r.position(),r)}key(r){let s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__string(this.bb_pos+s,r):null}value(r){let s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__string(this.bb_pos+s,r):null}static startKeyValue(r){r.startObject(2)}static addKey(r,s){r.addFieldOffset(0,s,0)}static addValue(r,s){r.addFieldOffset(1,s,0)}static endKeyValue(r){return r.endObject()}static createKeyValue(r,s,l){return Pt.startKeyValue(r),Pt.addKey(r,s),Pt.addValue(r,l),Pt.endKeyValue(r)}};var gn=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsBinary(r,s){return(s||new gn).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsBinary(r,s){return r.setPosition(r.position()+4),(s||new gn).__init(r.readInt32(r.position())+r.position(),r)}static startBinary(r){r.startObject(0)}static endBinary(r){return r.endObject()}static createBinary(r){return gn.startBinary(r),gn.endBinary(r)}};var vn=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsBool(r,s){return(s||new vn).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsBool(r,s){return r.setPosition(r.position()+4),(s||new vn).__init(r.readInt32(r.position())+r.position(),r)}static startBool(r){r.startObject(0)}static endBool(r){return r.endObject()}static createBool(r){return vn.startBool(r),vn.endBool(r)}};var Je=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsDate(r,s){return(s||new Je).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsDate(r,s){return r.setPosition(r.position()+4),(s||new Je).__init(r.readInt32(r.position())+r.position(),r)}unit(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):qt.MILLISECOND}static startDate(r){r.startObject(1)}static addUnit(r,s){r.addFieldInt16(0,s,qt.MILLISECOND)}static endDate(r){return r.endObject()}static createDate(r,s){return Je.startDate(r),Je.addUnit(r,s),Je.endDate(r)}};var _e=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsDecimal(r,s){return(s||new _e).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsDecimal(r,s){return r.setPosition(r.position()+4),(s||new _e).__init(r.readInt32(r.position())+r.position(),r)}precision(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt32(this.bb_pos+r):0}scale(){let r=this.bb.__offset(this.bb_pos,6);return r?this.bb.readInt32(this.bb_pos+r):0}bitWidth(){let r=this.bb.__offset(this.bb_pos,8);return r?this.bb.readInt32(this.bb_pos+r):128}static startDecimal(r){r.startObject(3)}static addPrecision(r,s){r.addFieldInt32(0,s,0)}static addScale(r,s){r.addFieldInt32(1,s,0)}static addBitWidth(r,s){r.addFieldInt32(2,s,128)}static endDecimal(r){return r.endObject()}static createDecimal(r,s,l,A){return _e.startDecimal(r),_e.addPrecision(r,s),_e.addScale(r,l),_e.addBitWidth(r,A),_e.endDecimal(r)}};var Ye=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsDuration(r,s){return(s||new Ye).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsDuration(r,s){return r.setPosition(r.position()+4),(s||new Ye).__init(r.readInt32(r.position())+r.position(),r)}unit(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):H.MILLISECOND}static startDuration(r){r.startObject(1)}static addUnit(r,s){r.addFieldInt16(0,s,H.MILLISECOND)}static endDuration(r){return r.endObject()}static createDuration(r,s){return Ye.startDuration(r),Ye.addUnit(r,s),Ye.endDuration(r)}};var Pe=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsFixedSizeBinary(r,s){return(s||new Pe).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsFixedSizeBinary(r,s){return r.setPosition(r.position()+4),(s||new Pe).__init(r.readInt32(r.position())+r.position(),r)}byteWidth(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt32(this.bb_pos+r):0}static startFixedSizeBinary(r){r.startObject(1)}static addByteWidth(r,s){r.addFieldInt32(0,s,0)}static endFixedSizeBinary(r){return r.endObject()}static createFixedSizeBinary(r,s){return Pe.startFixedSizeBinary(r),Pe.addByteWidth(r,s),Pe.endFixedSizeBinary(r)}};var He=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsFixedSizeList(r,s){return(s||new He).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsFixedSizeList(r,s){return r.setPosition(r.position()+4),(s||new He).__init(r.readInt32(r.position())+r.position(),r)}listSize(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt32(this.bb_pos+r):0}static startFixedSizeList(r){r.startObject(1)}static addListSize(r,s){r.addFieldInt32(0,s,0)}static endFixedSizeList(r){return r.endObject()}static createFixedSizeList(r,s){return He.startFixedSizeList(r),He.addListSize(r,s),He.endFixedSizeList(r)}};var Qe=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsFloatingPoint(r,s){return(s||new Qe).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsFloatingPoint(r,s){return r.setPosition(r.position()+4),(s||new Qe).__init(r.readInt32(r.position())+r.position(),r)}precision(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):Wt.HALF}static startFloatingPoint(r){r.startObject(1)}static addPrecision(r,s){r.addFieldInt16(0,s,Wt.HALF)}static endFloatingPoint(r){return r.endObject()}static createFloatingPoint(r,s){return Qe.startFloatingPoint(r),Qe.addPrecision(r,s),Qe.endFloatingPoint(r)}};var $e=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsInterval(r,s){return(s||new $e).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsInterval(r,s){return r.setPosition(r.position()+4),(s||new $e).__init(r.readInt32(r.position())+r.position(),r)}unit(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):ue.YEAR_MONTH}static startInterval(r){r.startObject(1)}static addUnit(r,s){r.addFieldInt16(0,s,ue.YEAR_MONTH)}static endInterval(r){return r.endObject()}static createInterval(r,s){return $e.startInterval(r),$e.addUnit(r,s),$e.endInterval(r)}};var wn=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsLargeBinary(r,s){return(s||new wn).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsLargeBinary(r,s){return r.setPosition(r.position()+4),(s||new wn).__init(r.readInt32(r.position())+r.position(),r)}static startLargeBinary(r){r.startObject(0)}static endLargeBinary(r){return r.endObject()}static createLargeBinary(r){return wn.startLargeBinary(r),wn.endLargeBinary(r)}};var _n=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsLargeUtf8(r,s){return(s||new _n).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsLargeUtf8(r,s){return r.setPosition(r.position()+4),(s||new _n).__init(r.readInt32(r.position())+r.position(),r)}static startLargeUtf8(r){r.startObject(0)}static endLargeUtf8(r){return r.endObject()}static createLargeUtf8(r){return _n.startLargeUtf8(r),_n.endLargeUtf8(r)}};var Fn=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsList(r,s){return(s||new Fn).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsList(r,s){return r.setPosition(r.position()+4),(s||new Fn).__init(r.readInt32(r.position())+r.position(),r)}static startList(r){r.startObject(0)}static endList(r){return r.endObject()}static createList(r){return Fn.startList(r),Fn.endList(r)}};var qe=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsMap(r,s){return(s||new qe).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsMap(r,s){return r.setPosition(r.position()+4),(s||new qe).__init(r.readInt32(r.position())+r.position(),r)}keysSorted(){let r=this.bb.__offset(this.bb_pos,4);return r?!!this.bb.readInt8(this.bb_pos+r):!1}static startMap(r){r.startObject(1)}static addKeysSorted(r,s){r.addFieldInt8(0,+s,0)}static endMap(r){return r.endObject()}static createMap(r,s){return qe.startMap(r),qe.addKeysSorted(r,s),qe.endMap(r)}};var Bn=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsNull(r,s){return(s||new Bn).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsNull(r,s){return r.setPosition(r.position()+4),(s||new Bn).__init(r.readInt32(r.position())+r.position(),r)}static startNull(r){r.startObject(0)}static endNull(r){return r.endObject()}static createNull(r){return Bn.startNull(r),Bn.endNull(r)}};var In=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsStruct_(r,s){return(s||new In).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsStruct_(r,s){return r.setPosition(r.position()+4),(s||new In).__init(r.readInt32(r.position())+r.position(),r)}static startStruct_(r){r.startObject(0)}static endStruct_(r){return r.endObject()}static createStruct_(r){return In.startStruct_(r),In.endStruct_(r)}};var Me=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsTime(r,s){return(s||new Me).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsTime(r,s){return r.setPosition(r.position()+4),(s||new Me).__init(r.readInt32(r.position())+r.position(),r)}unit(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):H.MILLISECOND}bitWidth(){let r=this.bb.__offset(this.bb_pos,6);return r?this.bb.readInt32(this.bb_pos+r):32}static startTime(r){r.startObject(2)}static addUnit(r,s){r.addFieldInt16(0,s,H.MILLISECOND)}static addBitWidth(r,s){r.addFieldInt32(1,s,32)}static endTime(r){return r.endObject()}static createTime(r,s,l){return Me.startTime(r),Me.addUnit(r,s),Me.addBitWidth(r,l),Me.endTime(r)}};var Ne=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsTimestamp(r,s){return(s||new Ne).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsTimestamp(r,s){return r.setPosition(r.position()+4),(s||new Ne).__init(r.readInt32(r.position())+r.position(),r)}unit(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):H.SECOND}timezone(r){let s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__string(this.bb_pos+s,r):null}static startTimestamp(r){r.startObject(2)}static addUnit(r,s){r.addFieldInt16(0,s,H.SECOND)}static addTimezone(r,s){r.addFieldOffset(1,s,0)}static endTimestamp(r){return r.endObject()}static createTimestamp(r,s,l){return Ne.startTimestamp(r),Ne.addUnit(r,s),Ne.addTimezone(r,l),Ne.endTimestamp(r)}};var Fe=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsUnion(r,s){return(s||new Fe).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsUnion(r,s){return r.setPosition(r.position()+4),(s||new Fe).__init(r.readInt32(r.position())+r.position(),r)}mode(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):Xt.Sparse}typeIds(r){let s=this.bb.__offset(this.bb_pos,6);return s?this.bb.readInt32(this.bb.__vector(this.bb_pos+s)+r*4):0}typeIdsLength(){let r=this.bb.__offset(this.bb_pos,6);return r?this.bb.__vector_len(this.bb_pos+r):0}typeIdsArray(){let r=this.bb.__offset(this.bb_pos,6);return r?new Int32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+r),this.bb.__vector_len(this.bb_pos+r)):null}static startUnion(r){r.startObject(2)}static addMode(r,s){r.addFieldInt16(0,s,Xt.Sparse)}static addTypeIds(r,s){r.addFieldOffset(1,s,0)}static createTypeIdsVector(r,s){r.startVector(4,s.length,4);for(let l=s.length-1;l>=0;l--)r.addInt32(s[l]);return r.endVector()}static startTypeIdsVector(r,s){r.startVector(4,s,4)}static endUnion(r){return r.endObject()}static createUnion(r,s,l){return Fe.startUnion(r),Fe.addMode(r,s),Fe.addTypeIds(r,l),Fe.endUnion(r)}};var Sn=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsUtf8(r,s){return(s||new Sn).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsUtf8(r,s){return r.setPosition(r.position()+4),(s||new Sn).__init(r.readInt32(r.position())+r.position(),r)}static startUtf8(r){r.startObject(0)}static endUtf8(r){return r.endObject()}static createUtf8(r){return Sn.startUtf8(r),Sn.endUtf8(r)}};var Gt;(function(o){o[o.NONE=0]="NONE",o[o.Null=1]="Null",o[o.Int=2]="Int",o[o.FloatingPoint=3]="FloatingPoint",o[o.Binary=4]="Binary",o[o.Utf8=5]="Utf8",o[o.Bool=6]="Bool",o[o.Decimal=7]="Decimal",o[o.Date=8]="Date",o[o.Time=9]="Time",o[o.Timestamp=10]="Timestamp",o[o.Interval=11]="Interval",o[o.List=12]="List",o[o.Struct_=13]="Struct_",o[o.Union=14]="Union",o[o.FixedSizeBinary=15]="FixedSizeBinary",o[o.FixedSizeList=16]="FixedSizeList",o[o.Map=17]="Map",o[o.Duration=18]="Duration",o[o.LargeBinary=19]="LargeBinary",o[o.LargeUtf8=20]="LargeUtf8",o[o.LargeList=21]="LargeList",o[o.RunEndEncoded=22]="RunEndEncoded"})(Gt||(Gt={}));var ae=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsField(r,s){return(s||new ae).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsField(r,s){return r.setPosition(r.position()+4),(s||new ae).__init(r.readInt32(r.position())+r.position(),r)}name(r){let s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__string(this.bb_pos+s,r):null}nullable(){let r=this.bb.__offset(this.bb_pos,6);return r?!!this.bb.readInt8(this.bb_pos+r):!1}typeType(){let r=this.bb.__offset(this.bb_pos,8);return r?this.bb.readUint8(this.bb_pos+r):Gt.NONE}type(r){let s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__union(r,this.bb_pos+s):null}dictionary(r){let s=this.bb.__offset(this.bb_pos,12);return s?(r||new gr).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}children(r,s){let l=this.bb.__offset(this.bb_pos,14);return l?(s||new ae).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+r*4),this.bb):null}childrenLength(){let r=this.bb.__offset(this.bb_pos,14);return r?this.bb.__vector_len(this.bb_pos+r):0}customMetadata(r,s){let l=this.bb.__offset(this.bb_pos,16);return l?(s||new Pt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+r*4),this.bb):null}customMetadataLength(){let r=this.bb.__offset(this.bb_pos,16);return r?this.bb.__vector_len(this.bb_pos+r):0}static startField(r){r.startObject(7)}static addName(r,s){r.addFieldOffset(0,s,0)}static addNullable(r,s){r.addFieldInt8(1,+s,0)}static addTypeType(r,s){r.addFieldInt8(2,s,Gt.NONE)}static addType(r,s){r.addFieldOffset(3,s,0)}static addDictionary(r,s){r.addFieldOffset(4,s,0)}static addChildren(r,s){r.addFieldOffset(5,s,0)}static createChildrenVector(r,s){r.startVector(4,s.length,4);for(let l=s.length-1;l>=0;l--)r.addOffset(s[l]);return r.endVector()}static startChildrenVector(r,s){r.startVector(4,s,4)}static addCustomMetadata(r,s){r.addFieldOffset(6,s,0)}static createCustomMetadataVector(r,s){r.startVector(4,s.length,4);for(let l=s.length-1;l>=0;l--)r.addOffset(s[l]);return r.endVector()}static startCustomMetadataVector(r,s){r.startVector(4,s,4)}static endField(r){return r.endObject()}};var ie=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsSchema(r,s){return(s||new ie).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsSchema(r,s){return r.setPosition(r.position()+4),(s||new ie).__init(r.readInt32(r.position())+r.position(),r)}endianness(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):ai.Little}fields(r,s){let l=this.bb.__offset(this.bb_pos,6);return l?(s||new ae).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+r*4),this.bb):null}fieldsLength(){let r=this.bb.__offset(this.bb_pos,6);return r?this.bb.__vector_len(this.bb_pos+r):0}customMetadata(r,s){let l=this.bb.__offset(this.bb_pos,8);return l?(s||new Pt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+r*4),this.bb):null}customMetadataLength(){let r=this.bb.__offset(this.bb_pos,8);return r?this.bb.__vector_len(this.bb_pos+r):0}features(r){let s=this.bb.__offset(this.bb_pos,10);return s?this.bb.readInt64(this.bb.__vector(this.bb_pos+s)+r*8):BigInt(0)}featuresLength(){let r=this.bb.__offset(this.bb_pos,10);return r?this.bb.__vector_len(this.bb_pos+r):0}static startSchema(r){r.startObject(4)}static addEndianness(r,s){r.addFieldInt16(0,s,ai.Little)}static addFields(r,s){r.addFieldOffset(1,s,0)}static createFieldsVector(r,s){r.startVector(4,s.length,4);for(let l=s.length-1;l>=0;l--)r.addOffset(s[l]);return r.endVector()}static startFieldsVector(r,s){r.startVector(4,s,4)}static addCustomMetadata(r,s){r.addFieldOffset(2,s,0)}static createCustomMetadataVector(r,s){r.startVector(4,s.length,4);for(let l=s.length-1;l>=0;l--)r.addOffset(s[l]);return r.endVector()}static startCustomMetadataVector(r,s){r.startVector(4,s,4)}static addFeatures(r,s){r.addFieldOffset(3,s,0)}static createFeaturesVector(r,s){r.startVector(8,s.length,8);for(let l=s.length-1;l>=0;l--)r.addInt64(s[l]);return r.endVector()}static startFeaturesVector(r,s){r.startVector(8,s,8)}static endSchema(r){return r.endObject()}static finishSchemaBuffer(r,s){r.finish(s)}static finishSizePrefixedSchemaBuffer(r,s){r.finish(s,void 0,!0)}static createSchema(r,s,l,A,m){return ie.startSchema(r),ie.addEndianness(r,s),ie.addFields(r,l),ie.addCustomMetadata(r,A),ie.addFeatures(r,m),ie.endSchema(r)}};var Bt;(function(o){o[o.NONE=0]="NONE",o[o.Schema=1]="Schema",o[o.DictionaryBatch=2]="DictionaryBatch",o[o.RecordBatch=3]="RecordBatch",o[o.Tensor=4]="Tensor",o[o.SparseTensor=5]="SparseTensor"})(Bt||(Bt={}));var x;(function(o){o[o.NONE=0]="NONE",o[o.Null=1]="Null",o[o.Int=2]="Int",o[o.Float=3]="Float",o[o.Binary=4]="Binary",o[o.Utf8=5]="Utf8",o[o.Bool=6]="Bool",o[o.Decimal=7]="Decimal",o[o.Date=8]="Date",o[o.Time=9]="Time",o[o.Timestamp=10]="Timestamp",o[o.Interval=11]="Interval",o[o.List=12]="List",o[o.Struct=13]="Struct",o[o.Union=14]="Union",o[o.FixedSizeBinary=15]="FixedSizeBinary",o[o.FixedSizeList=16]="FixedSizeList",o[o.Map=17]="Map",o[o.Duration=18]="Duration",o[o.LargeBinary=19]="LargeBinary",o[o.LargeUtf8=20]="LargeUtf8",o[o.Dictionary=-1]="Dictionary",o[o.Int8=-2]="Int8",o[o.Int16=-3]="Int16",o[o.Int32=-4]="Int32",o[o.Int64=-5]="Int64",o[o.Uint8=-6]="Uint8",o[o.Uint16=-7]="Uint16",o[o.Uint32=-8]="Uint32",o[o.Uint64=-9]="Uint64",o[o.Float16=-10]="Float16",o[o.Float32=-11]="Float32",o[o.Float64=-12]="Float64",o[o.DateDay=-13]="DateDay",o[o.DateMillisecond=-14]="DateMillisecond",o[o.TimestampSecond=-15]="TimestampSecond",o[o.TimestampMillisecond=-16]="TimestampMillisecond",o[o.TimestampMicrosecond=-17]="TimestampMicrosecond",o[o.TimestampNanosecond=-18]="TimestampNanosecond",o[o.TimeSecond=-19]="TimeSecond",o[o.TimeMillisecond=-20]="TimeMillisecond",o[o.TimeMicrosecond=-21]="TimeMicrosecond",o[o.TimeNanosecond=-22]="TimeNanosecond",o[o.DenseUnion=-23]="DenseUnion",o[o.SparseUnion=-24]="SparseUnion",o[o.IntervalDayTime=-25]="IntervalDayTime",o[o.IntervalYearMonth=-26]="IntervalYearMonth",o[o.DurationSecond=-27]="DurationSecond",o[o.DurationMillisecond=-28]="DurationMillisecond",o[o.DurationMicrosecond=-29]="DurationMicrosecond",o[o.DurationNanosecond=-30]="DurationNanosecond"})(x||(x={}));var Ke;(function(o){o[o.OFFSET=0]="OFFSET",o[o.DATA=1]="DATA",o[o.VALIDITY=2]="VALIDITY",o[o.TYPE=3]="TYPE"})(Ke||(Ke={}));var xf={};fi(xf,{clampRange:()=>so,createElementComparator:()=>pi,wrapIndex:()=>$i});var af={};fi(af,{valueToString:()=>Qr});function Qr(o){if(o===null)return"null";if(o===void 0)return"undefined";switch(typeof o){case"number":return`${o}`;case"bigint":return`${o}`;case"string":return`"${o}"`}return typeof o[Symbol.toPrimitive]=="function"?o[Symbol.toPrimitive]("string"):ArrayBuffer.isView(o)?o instanceof BigInt64Array||o instanceof BigUint64Array?`[${[...o].map(r=>Qr(r))}]`:`[${o}]`:ArrayBuffer.isView(o)?`[${o}]`:JSON.stringify(o,(r,s)=>typeof s=="bigint"?`${s}`:s)}var pf={};fi(pf,{BN:()=>Ei,bigNumToBigInt:()=>vd,bigNumToNumber:()=>Af,bigNumToString:()=>C0,isArrowBigNumSymbol:()=>gd});function Ut(o){if(typeof o=="bigint"&&(o<Number.MIN_SAFE_INTEGER||o>Number.MAX_SAFE_INTEGER))throw new TypeError(`${o} is not safe to convert to a number.`);return Number(o)}function hf(o,r){return Ut(o/r)+Ut(o%r)/Ut(r)}var gd=Symbol.for("isArrowBigNum");function $r(o,...r){return r.length===0?Object.setPrototypeOf(vt(this.TypedArray,o),this.constructor.prototype):Object.setPrototypeOf(new this.TypedArray(o,...r),this.constructor.prototype)}$r.prototype[gd]=!0;$r.prototype.toJSON=function(){return`"${C0(this)}"`};$r.prototype.valueOf=function(o){return Af(this,o)};$r.prototype.toString=function(){return C0(this)};$r.prototype[Symbol.toPrimitive]=function(o="default"){switch(o){case"number":return Af(this);case"string":return C0(this);case"default":return vd(this)}return C0(this)};function X0(...o){return $r.apply(this,o)}function G0(...o){return $r.apply(this,o)}function no(...o){return $r.apply(this,o)}Object.setPrototypeOf(X0.prototype,Object.create(Int32Array.prototype));Object.setPrototypeOf(G0.prototype,Object.create(Uint32Array.prototype));Object.setPrototypeOf(no.prototype,Object.create(Uint32Array.prototype));Object.assign(X0.prototype,$r.prototype,{constructor:X0,signed:!0,TypedArray:Int32Array,BigIntArray:BigInt64Array});Object.assign(G0.prototype,$r.prototype,{constructor:G0,signed:!1,TypedArray:Uint32Array,BigIntArray:BigUint64Array});Object.assign(no.prototype,$r.prototype,{constructor:no,signed:!0,TypedArray:Uint32Array,BigIntArray:BigUint64Array});var PI=BigInt(4294967296)*BigInt(4294967296),HI=PI-BigInt(1);function Af(o,r){let{buffer:s,byteOffset:l,byteLength:A,signed:m}=o,v=new BigUint64Array(s,l,A/8),B=m&&v.at(-1)&BigInt(1)<<BigInt(63),T=BigInt(0),V=0;if(B){for(let O of v)T|=(O^HI)*(BigInt(1)<<BigInt(64*V++));T*=BigInt(-1),T-=BigInt(1)}else for(let O of v)T|=O*(BigInt(1)<<BigInt(64*V++));if(typeof r=="number"){let O=BigInt(Math.pow(10,r)),C=T/O,yt=T%O;return Ut(C)+Ut(yt)/Ut(O)}return Ut(T)}function C0(o){if(o.byteLength===8)return`${new o.BigIntArray(o.buffer,o.byteOffset,1)[0]}`;if(!o.signed)return df(o);let r=new Uint16Array(o.buffer,o.byteOffset,o.byteLength/2);if(new Int16Array([r.at(-1)])[0]>=0)return df(o);r=r.slice();let l=1;for(let m=0;m<r.length;m++){let v=r[m],B=~v+l;r[m]=B,l&=v===0?1:0}return`-${df(r)}`}function vd(o){return o.byteLength===8?new o.BigIntArray(o.buffer,o.byteOffset,1)[0]:C0(o)}function df(o){let r="",s=new Uint32Array(2),l=new Uint16Array(o.buffer,o.byteOffset,o.byteLength/2),A=new Uint32Array((l=new Uint16Array(l).reverse()).buffer),m=-1,v=l.length-1;do{for(s[0]=l[m=0];m<v;)l[m++]=s[1]=s[0]/10,s[0]=(s[0]-s[1]*10<<16)+l[m];l[m]=s[1]=s[0]/10,s[0]=s[0]-s[1]*10,r=`${s[0]}${r}`}while(A[0]||A[1]||A[2]||A[3]);return r??"0"}var Ei=class{static new(r,s){switch(s){case!0:return new X0(r);case!1:return new G0(r)}switch(r.constructor){case Int8Array:case Int16Array:case Int32Array:case BigInt64Array:return new X0(r)}return r.byteLength===16?new no(r):new G0(r)}static signed(r){return new X0(r)}static unsigned(r){return new G0(r)}static decimal(r){return new no(r)}constructor(r,s){return Ei.new(r,s)}};var wd,_d,Fd,Bd,Id,Sd,Td,Rd,Ud,Vd,xd,bd,Md,Nd,kd,Od,Zd,Dd,Wd,zd,Ed,Xd,P=class{static isNull(r){return r?.typeId===x.Null}static isInt(r){return r?.typeId===x.Int}static isFloat(r){return r?.typeId===x.Float}static isBinary(r){return r?.typeId===x.Binary}static isLargeBinary(r){return r?.typeId===x.LargeBinary}static isUtf8(r){return r?.typeId===x.Utf8}static isLargeUtf8(r){return r?.typeId===x.LargeUtf8}static isBool(r){return r?.typeId===x.Bool}static isDecimal(r){return r?.typeId===x.Decimal}static isDate(r){return r?.typeId===x.Date}static isTime(r){return r?.typeId===x.Time}static isTimestamp(r){return r?.typeId===x.Timestamp}static isInterval(r){return r?.typeId===x.Interval}static isDuration(r){return r?.typeId===x.Duration}static isList(r){return r?.typeId===x.List}static isStruct(r){return r?.typeId===x.Struct}static isUnion(r){return r?.typeId===x.Union}static isFixedSizeBinary(r){return r?.typeId===x.FixedSizeBinary}static isFixedSizeList(r){return r?.typeId===x.FixedSizeList}static isMap(r){return r?.typeId===x.Map}static isDictionary(r){return r?.typeId===x.Dictionary}static isDenseUnion(r){return P.isUnion(r)&&r.mode===Xt.Dense}static isSparseUnion(r){return P.isUnion(r)&&r.mode===Xt.Sparse}constructor(r){this.typeId=r}};wd=Symbol.toStringTag;P[wd]=(o=>(o.children=null,o.ArrayType=Array,o.OffsetArrayType=Int32Array,o[Symbol.toStringTag]="DataType"))(P.prototype);var Be=class extends P{constructor(){super(x.Null)}toString(){return"Null"}};_d=Symbol.toStringTag;Be[_d]=(o=>o[Symbol.toStringTag]="Null")(Be.prototype);var ce=class extends P{constructor(r,s){super(x.Int),this.isSigned=r,this.bitWidth=s}get ArrayType(){switch(this.bitWidth){case 8:return this.isSigned?Int8Array:Uint8Array;case 16:return this.isSigned?Int16Array:Uint16Array;case 32:return this.isSigned?Int32Array:Uint32Array;case 64:return this.isSigned?BigInt64Array:BigUint64Array}throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`${this.isSigned?"I":"Ui"}nt${this.bitWidth}`}};Fd=Symbol.toStringTag;ce[Fd]=(o=>(o.isSigned=null,o.bitWidth=null,o[Symbol.toStringTag]="Int"))(ce.prototype);var Xi=class extends ce{constructor(){super(!0,8)}get ArrayType(){return Int8Array}},Gi=class extends ce{constructor(){super(!0,16)}get ArrayType(){return Int16Array}},vr=class extends ce{constructor(){super(!0,32)}get ArrayType(){return Int32Array}},Ci=class extends ce{constructor(){super(!0,64)}get ArrayType(){return BigInt64Array}},ji=class extends ce{constructor(){super(!1,8)}get ArrayType(){return Uint8Array}},Li=class extends ce{constructor(){super(!1,16)}get ArrayType(){return Uint16Array}},Ji=class extends ce{constructor(){super(!1,32)}get ArrayType(){return Uint32Array}},Yi=class extends ce{constructor(){super(!1,64)}get ArrayType(){return BigUint64Array}};Object.defineProperty(Xi.prototype,"ArrayType",{value:Int8Array});Object.defineProperty(Gi.prototype,"ArrayType",{value:Int16Array});Object.defineProperty(vr.prototype,"ArrayType",{value:Int32Array});Object.defineProperty(Ci.prototype,"ArrayType",{value:BigInt64Array});Object.defineProperty(ji.prototype,"ArrayType",{value:Uint8Array});Object.defineProperty(Li.prototype,"ArrayType",{value:Uint16Array});Object.defineProperty(Ji.prototype,"ArrayType",{value:Uint32Array});Object.defineProperty(Yi.prototype,"ArrayType",{value:BigUint64Array});var tr=class extends P{constructor(r){super(x.Float),this.precision=r}get ArrayType(){switch(this.precision){case Wt.HALF:return Uint16Array;case Wt.SINGLE:return Float32Array;case Wt.DOUBLE:return Float64Array}throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`Float${this.precision<<5||16}`}};Bd=Symbol.toStringTag;tr[Bd]=(o=>(o.precision=null,o[Symbol.toStringTag]="Float"))(tr.prototype);var Pi=class extends tr{constructor(){super(Wt.HALF)}},Hi=class extends tr{constructor(){super(Wt.SINGLE)}},Qi=class extends tr{constructor(){super(Wt.DOUBLE)}};Object.defineProperty(Pi.prototype,"ArrayType",{value:Uint16Array});Object.defineProperty(Hi.prototype,"ArrayType",{value:Float32Array});Object.defineProperty(Qi.prototype,"ArrayType",{value:Float64Array});var kr=class extends P{constructor(){super(x.Binary)}toString(){return"Binary"}};Id=Symbol.toStringTag;kr[Id]=(o=>(o.ArrayType=Uint8Array,o[Symbol.toStringTag]="Binary"))(kr.prototype);var Tn=class extends P{constructor(){super(x.LargeBinary)}toString(){return"LargeBinary"}};Sd=Symbol.toStringTag;Tn[Sd]=(o=>(o.ArrayType=Uint8Array,o.OffsetArrayType=BigInt64Array,o[Symbol.toStringTag]="LargeBinary"))(Tn.prototype);var Or=class extends P{constructor(){super(x.Utf8)}toString(){return"Utf8"}};Td=Symbol.toStringTag;Or[Td]=(o=>(o.ArrayType=Uint8Array,o[Symbol.toStringTag]="Utf8"))(Or.prototype);var Rn=class extends P{constructor(){super(x.LargeUtf8)}toString(){return"LargeUtf8"}};Rd=Symbol.toStringTag;Rn[Rd]=(o=>(o.ArrayType=Uint8Array,o.OffsetArrayType=BigInt64Array,o[Symbol.toStringTag]="LargeUtf8"))(Rn.prototype);var Zr=class extends P{constructor(){super(x.Bool)}toString(){return"Bool"}};Ud=Symbol.toStringTag;Zr[Ud]=(o=>(o.ArrayType=Uint8Array,o[Symbol.toStringTag]="Bool"))(Zr.prototype);var Dr=class extends P{constructor(r,s,l=128){super(x.Decimal),this.scale=r,this.precision=s,this.bitWidth=l}toString(){return`Decimal[${this.precision}e${this.scale>0?"+":""}${this.scale}]`}};Vd=Symbol.toStringTag;Dr[Vd]=(o=>(o.scale=null,o.precision=null,o.ArrayType=Uint32Array,o[Symbol.toStringTag]="Decimal"))(Dr.prototype);var wr=class extends P{constructor(r){super(x.Date),this.unit=r}toString(){return`Date${(this.unit+1)*32}<${qt[this.unit]}>`}get ArrayType(){return this.unit===qt.DAY?Int32Array:BigInt64Array}};xd=Symbol.toStringTag;wr[xd]=(o=>(o.unit=null,o[Symbol.toStringTag]="Date"))(wr.prototype);var j0=class extends wr{constructor(){super(qt.DAY)}},L0=class extends wr{constructor(){super(qt.MILLISECOND)}},Ee=class extends P{constructor(r,s){super(x.Time),this.unit=r,this.bitWidth=s}toString(){return`Time${this.bitWidth}<${H[this.unit]}>`}get ArrayType(){switch(this.bitWidth){case 32:return Int32Array;case 64:return BigInt64Array}throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}};bd=Symbol.toStringTag;Ee[bd]=(o=>(o.unit=null,o.bitWidth=null,o[Symbol.toStringTag]="Time"))(Ee.prototype);var J0=class extends Ee{constructor(){super(H.SECOND,32)}},Y0=class extends Ee{constructor(){super(H.MILLISECOND,32)}},P0=class extends Ee{constructor(){super(H.MICROSECOND,64)}},H0=class extends Ee{constructor(){super(H.NANOSECOND,64)}},Xe=class extends P{constructor(r,s){super(x.Timestamp),this.unit=r,this.timezone=s}toString(){return`Timestamp<${H[this.unit]}${this.timezone?`, ${this.timezone}`:""}>`}};Md=Symbol.toStringTag;Xe[Md]=(o=>(o.unit=null,o.timezone=null,o.ArrayType=BigInt64Array,o[Symbol.toStringTag]="Timestamp"))(Xe.prototype);var Q0=class extends Xe{constructor(r){super(H.SECOND,r)}},$0=class extends Xe{constructor(r){super(H.MILLISECOND,r)}},q0=class extends Xe{constructor(r){super(H.MICROSECOND,r)}},K0=class extends Xe{constructor(r){super(H.NANOSECOND,r)}},_r=class extends P{constructor(r){super(x.Interval),this.unit=r}toString(){return`Interval<${ue[this.unit]}>`}};Nd=Symbol.toStringTag;_r[Nd]=(o=>(o.unit=null,o.ArrayType=Int32Array,o[Symbol.toStringTag]="Interval"))(_r.prototype);var ts=class extends _r{constructor(){super(ue.DAY_TIME)}},es=class extends _r{constructor(){super(ue.YEAR_MONTH)}},Un=class extends P{constructor(r){super(x.Duration),this.unit=r}toString(){return`Duration<${H[this.unit]}>`}};kd=Symbol.toStringTag;Un[kd]=(o=>(o.unit=null,o.ArrayType=BigInt64Array,o[Symbol.toStringTag]="Duration"))(Un.prototype);var er=class extends P{constructor(r){super(x.List),this.children=[r]}toString(){return`List<${this.valueType}>`}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}};Od=Symbol.toStringTag;er[Od]=(o=>(o.children=null,o[Symbol.toStringTag]="List"))(er.prototype);var Dt=class extends P{constructor(r){super(x.Struct),this.children=r}toString(){return`Struct<{${this.children.map(r=>`${r.name}:${r.type}`).join(", ")}}>`}};Zd=Symbol.toStringTag;Dt[Zd]=(o=>(o.children=null,o[Symbol.toStringTag]="Struct"))(Dt.prototype);var Wr=class extends P{constructor(r,s,l){super(x.Union),this.mode=r,this.children=l,this.typeIds=s=Int32Array.from(s),this.typeIdToChildIndex=s.reduce((A,m,v)=>(A[m]=v)&&A||A,Object.create(null))}toString(){return`${this[Symbol.toStringTag]}<${this.children.map(r=>`${r.type}`).join(" | ")}>`}};Dd=Symbol.toStringTag;Wr[Dd]=(o=>(o.mode=null,o.typeIds=null,o.children=null,o.typeIdToChildIndex=null,o.ArrayType=Int8Array,o[Symbol.toStringTag]="Union"))(Wr.prototype);var Vn=class extends P{constructor(r){super(x.FixedSizeBinary),this.byteWidth=r}toString(){return`FixedSizeBinary[${this.byteWidth}]`}};Wd=Symbol.toStringTag;Vn[Wd]=(o=>(o.byteWidth=null,o.ArrayType=Uint8Array,o[Symbol.toStringTag]="FixedSizeBinary"))(Vn.prototype);var ke=class extends P{constructor(r,s){super(x.FixedSizeList),this.listSize=r,this.children=[s]}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}};zd=Symbol.toStringTag;ke[zd]=(o=>(o.children=null,o.listSize=null,o[Symbol.toStringTag]="FixedSizeList"))(ke.prototype);var rr=class extends P{constructor(r,s=!1){var l,A,m;if(super(x.Map),this.children=[r],this.keysSorted=s,r&&(r.name="entries",!((l=r?.type)===null||l===void 0)&&l.children)){let v=(A=r?.type)===null||A===void 0?void 0:A.children[0];v&&(v.name="key");let B=(m=r?.type)===null||m===void 0?void 0:m.children[1];B&&(B.name="value")}}get keyType(){return this.children[0].type.children[0].type}get valueType(){return this.children[0].type.children[1].type}get childType(){return this.children[0].type}toString(){return`Map<{${this.children[0].type.children.map(r=>`${r.name}:${r.type}`).join(", ")}}>`}};Ed=Symbol.toStringTag;rr[Ed]=(o=>(o.children=null,o.keysSorted=null,o[Symbol.toStringTag]="Map_"))(rr.prototype);var QI=(o=>()=>++o)(-1),nr=class extends P{constructor(r,s,l,A){super(x.Dictionary),this.indices=s,this.dictionary=r,this.isOrdered=A||!1,this.id=l==null?QI():Ut(l)}get children(){return this.dictionary.children}get valueType(){return this.dictionary}get ArrayType(){return this.dictionary.ArrayType}toString(){return`Dictionary<${this.indices}, ${this.dictionary}>`}};Xd=Symbol.toStringTag;nr[Xd]=(o=>(o.id=null,o.indices=null,o.isOrdered=null,o.dictionary=null,o[Symbol.toStringTag]="Dictionary"))(nr.prototype);function Fr(o){let r=o;switch(o.typeId){case x.Decimal:return o.bitWidth/32;case x.Interval:return 1+r.unit;case x.FixedSizeList:return r.listSize;case x.FixedSizeBinary:return r.byteWidth;default:return 1}}var K=class{visitMany(r,...s){return r.map((l,A)=>this.visit(l,...s.map(m=>m[A])))}visit(...r){return this.getVisitFn(r[0],!1).apply(this,r)}getVisitFn(r,s=!0){return $I(this,r,s)}getVisitFnByTypeId(r,s=!0){return rs(this,r,s)}visitNull(r,...s){return null}visitBool(r,...s){return null}visitInt(r,...s){return null}visitFloat(r,...s){return null}visitUtf8(r,...s){return null}visitLargeUtf8(r,...s){return null}visitBinary(r,...s){return null}visitLargeBinary(r,...s){return null}visitFixedSizeBinary(r,...s){return null}visitDate(r,...s){return null}visitTimestamp(r,...s){return null}visitTime(r,...s){return null}visitDecimal(r,...s){return null}visitList(r,...s){return null}visitStruct(r,...s){return null}visitUnion(r,...s){return null}visitDictionary(r,...s){return null}visitInterval(r,...s){return null}visitDuration(r,...s){return null}visitFixedSizeList(r,...s){return null}visitMap(r,...s){return null}};function $I(o,r,s=!0){return typeof r=="number"?rs(o,r,s):typeof r=="string"&&r in x?rs(o,x[r],s):r&&r instanceof P?rs(o,Gd(r),s):r?.type&&r.type instanceof P?rs(o,Gd(r.type),s):rs(o,x.NONE,s)}function rs(o,r,s=!0){let l=null;switch(r){case x.Null:l=o.visitNull;break;case x.Bool:l=o.visitBool;break;case x.Int:l=o.visitInt;break;case x.Int8:l=o.visitInt8||o.visitInt;break;case x.Int16:l=o.visitInt16||o.visitInt;break;case x.Int32:l=o.visitInt32||o.visitInt;break;case x.Int64:l=o.visitInt64||o.visitInt;break;case x.Uint8:l=o.visitUint8||o.visitInt;break;case x.Uint16:l=o.visitUint16||o.visitInt;break;case x.Uint32:l=o.visitUint32||o.visitInt;break;case x.Uint64:l=o.visitUint64||o.visitInt;break;case x.Float:l=o.visitFloat;break;case x.Float16:l=o.visitFloat16||o.visitFloat;break;case x.Float32:l=o.visitFloat32||o.visitFloat;break;case x.Float64:l=o.visitFloat64||o.visitFloat;break;case x.Utf8:l=o.visitUtf8;break;case x.LargeUtf8:l=o.visitLargeUtf8;break;case x.Binary:l=o.visitBinary;break;case x.LargeBinary:l=o.visitLargeBinary;break;case x.FixedSizeBinary:l=o.visitFixedSizeBinary;break;case x.Date:l=o.visitDate;break;case x.DateDay:l=o.visitDateDay||o.visitDate;break;case x.DateMillisecond:l=o.visitDateMillisecond||o.visitDate;break;case x.Timestamp:l=o.visitTimestamp;break;case x.TimestampSecond:l=o.visitTimestampSecond||o.visitTimestamp;break;case x.TimestampMillisecond:l=o.visitTimestampMillisecond||o.visitTimestamp;break;case x.TimestampMicrosecond:l=o.visitTimestampMicrosecond||o.visitTimestamp;break;case x.TimestampNanosecond:l=o.visitTimestampNanosecond||o.visitTimestamp;break;case x.Time:l=o.visitTime;break;case x.TimeSecond:l=o.visitTimeSecond||o.visitTime;break;case x.TimeMillisecond:l=o.visitTimeMillisecond||o.visitTime;break;case x.TimeMicrosecond:l=o.visitTimeMicrosecond||o.visitTime;break;case x.TimeNanosecond:l=o.visitTimeNanosecond||o.visitTime;break;case x.Decimal:l=o.visitDecimal;break;case x.List:l=o.visitList;break;case x.Struct:l=o.visitStruct;break;case x.Union:l=o.visitUnion;break;case x.DenseUnion:l=o.visitDenseUnion||o.visitUnion;break;case x.SparseUnion:l=o.visitSparseUnion||o.visitUnion;break;case x.Dictionary:l=o.visitDictionary;break;case x.Interval:l=o.visitInterval;break;case x.IntervalDayTime:l=o.visitIntervalDayTime||o.visitInterval;break;case x.IntervalYearMonth:l=o.visitIntervalYearMonth||o.visitInterval;break;case x.Duration:l=o.visitDuration;break;case x.DurationSecond:l=o.visitDurationSecond||o.visitDuration;break;case x.DurationMillisecond:l=o.visitDurationMillisecond||o.visitDuration;break;case x.DurationMicrosecond:l=o.visitDurationMicrosecond||o.visitDuration;break;case x.DurationNanosecond:l=o.visitDurationNanosecond||o.visitDuration;break;case x.FixedSizeList:l=o.visitFixedSizeList;break;case x.Map:l=o.visitMap;break}if(typeof l=="function")return l;if(!s)return()=>null;throw new Error(`Unrecognized type '${x[r]}'`)}function Gd(o){switch(o.typeId){case x.Null:return x.Null;case x.Int:{let{bitWidth:r,isSigned:s}=o;switch(r){case 8:return s?x.Int8:x.Uint8;case 16:return s?x.Int16:x.Uint16;case 32:return s?x.Int32:x.Uint32;case 64:return s?x.Int64:x.Uint64}return x.Int}case x.Float:switch(o.precision){case Wt.HALF:return x.Float16;case Wt.SINGLE:return x.Float32;case Wt.DOUBLE:return x.Float64}return x.Float;case x.Binary:return x.Binary;case x.LargeBinary:return x.LargeBinary;case x.Utf8:return x.Utf8;case x.LargeUtf8:return x.LargeUtf8;case x.Bool:return x.Bool;case x.Decimal:return x.Decimal;case x.Time:switch(o.unit){case H.SECOND:return x.TimeSecond;case H.MILLISECOND:return x.TimeMillisecond;case H.MICROSECOND:return x.TimeMicrosecond;case H.NANOSECOND:return x.TimeNanosecond}return x.Time;case x.Timestamp:switch(o.unit){case H.SECOND:return x.TimestampSecond;case H.MILLISECOND:return x.TimestampMillisecond;case H.MICROSECOND:return x.TimestampMicrosecond;case H.NANOSECOND:return x.TimestampNanosecond}return x.Timestamp;case x.Date:switch(o.unit){case qt.DAY:return x.DateDay;case qt.MILLISECOND:return x.DateMillisecond}return x.Date;case x.Interval:switch(o.unit){case ue.DAY_TIME:return x.IntervalDayTime;case ue.YEAR_MONTH:return x.IntervalYearMonth}return x.Interval;case x.Duration:switch(o.unit){case H.SECOND:return x.DurationSecond;case H.MILLISECOND:return x.DurationMillisecond;case H.MICROSECOND:return x.DurationMicrosecond;case H.NANOSECOND:return x.DurationNanosecond}return x.Duration;case x.Map:return x.Map;case x.List:return x.List;case x.Struct:return x.Struct;case x.Union:switch(o.mode){case Xt.Dense:return x.DenseUnion;case Xt.Sparse:return x.SparseUnion}return x.Union;case x.FixedSizeBinary:return x.FixedSizeBinary;case x.FixedSizeList:return x.FixedSizeList;case x.Dictionary:return x.Dictionary}throw new Error(`Unrecognized type '${x[o.typeId]}'`)}K.prototype.visitInt8=null;K.prototype.visitInt16=null;K.prototype.visitInt32=null;K.prototype.visitInt64=null;K.prototype.visitUint8=null;K.prototype.visitUint16=null;K.prototype.visitUint32=null;K.prototype.visitUint64=null;K.prototype.visitFloat16=null;K.prototype.visitFloat32=null;K.prototype.visitFloat64=null;K.prototype.visitDateDay=null;K.prototype.visitDateMillisecond=null;K.prototype.visitTimestampSecond=null;K.prototype.visitTimestampMillisecond=null;K.prototype.visitTimestampMicrosecond=null;K.prototype.visitTimestampNanosecond=null;K.prototype.visitTimeSecond=null;K.prototype.visitTimeMillisecond=null;K.prototype.visitTimeMicrosecond=null;K.prototype.visitTimeNanosecond=null;K.prototype.visitDenseUnion=null;K.prototype.visitSparseUnion=null;K.prototype.visitIntervalDayTime=null;K.prototype.visitIntervalYearMonth=null;K.prototype.visitDuration=null;K.prototype.visitDurationSecond=null;K.prototype.visitDurationMillisecond=null;K.prototype.visitDurationMicrosecond=null;K.prototype.visitDurationNanosecond=null;var mf={};fi(mf,{float64ToUint16:()=>io,uint16ToFloat64:()=>Eu});var Cd=new Float64Array(1),ns=new Uint32Array(Cd.buffer);function Eu(o){let r=(o&31744)>>10,s=(o&1023)/1024,l=Math.pow(-1,(o&32768)>>15);switch(r){case 31:return l*(s?Number.NaN:1/0);case 0:return l*(s?6103515625e-14*s:0)}return l*Math.pow(2,r-15)*(1+s)}function io(o){if(o!==o)return 32256;Cd[0]=o;let r=(ns[1]&2147483648)>>16&65535,s=ns[1]&2146435072,l=0;return s>=1089470464?ns[0]>0?s=31744:(s=(s&2080374784)>>16,l=(ns[1]&1048575)>>10):s<=1056964608?(l=1048576+(ns[1]&1048575),l=1048576+(l<<(s>>20)-998)>>21,s=0):(s=s-1056964608>>10,l=(ns[1]&1048575)+512>>10),r|s|l&65535}var it=class extends K{};function lt(o){return(r,s,l)=>{if(r.setValid(s,l!=null))return o(r,s,l)}}var qI=(o,r,s)=>{o[r]=Math.floor(s/864e5)},jd=(o,r,s,l)=>{if(s+1<r.length){let A=Ut(r[s]),m=Ut(r[s+1]);o.set(l.subarray(0,m-A),A)}},KI=({offset:o,values:r},s,l)=>{let A=o+s;l?r[A>>3]|=1<<A%8:r[A>>3]&=~(1<<A%8)},jn=({values:o},r,s)=>{o[r]=s},yf=({values:o},r,s)=>{o[r]=s},Ld=({values:o},r,s)=>{o[r]=io(s)},tS=(o,r,s)=>{switch(o.type.precision){case Wt.HALF:return Ld(o,r,s);case Wt.SINGLE:case Wt.DOUBLE:return yf(o,r,s)}},Xu=({values:o},r,s)=>{qI(o,r,s.valueOf())},Gu=({values:o},r,s)=>{o[r]=BigInt(s)},gf=({stride:o,values:r},s,l)=>{r.set(l.subarray(0,o),o*s)},Jd=({values:o,valueOffsets:r},s,l)=>jd(o,r,s,l),Yd=({values:o,valueOffsets:r},s,l)=>jd(o,r,s,pn(l)),vf=(o,r,s)=>{o.type.unit===qt.DAY?Xu(o,r,s):Gu(o,r,s)},Cu=({values:o},r,s)=>{o[r]=BigInt(s/1e3)},ju=({values:o},r,s)=>{o[r]=BigInt(s)},Lu=({values:o},r,s)=>{o[r]=BigInt(s*1e3)},Ju=({values:o},r,s)=>{o[r]=BigInt(s*1e6)},wf=(o,r,s)=>{switch(o.type.unit){case H.SECOND:return Cu(o,r,s);case H.MILLISECOND:return ju(o,r,s);case H.MICROSECOND:return Lu(o,r,s);case H.NANOSECOND:return Ju(o,r,s)}},Yu=({values:o},r,s)=>{o[r]=s},Pu=({values:o},r,s)=>{o[r]=s},Hu=({values:o},r,s)=>{o[r]=s},Qu=({values:o},r,s)=>{o[r]=s},_f=(o,r,s)=>{switch(o.type.unit){case H.SECOND:return Yu(o,r,s);case H.MILLISECOND:return Pu(o,r,s);case H.MICROSECOND:return Hu(o,r,s);case H.NANOSECOND:return Qu(o,r,s)}},Ff=({values:o,stride:r},s,l)=>{o.set(l.subarray(0,r),r*s)},eS=(o,r,s)=>{let l=o.children[0],A=o.valueOffsets,m=Re.getVisitFn(l);if(Array.isArray(s))for(let v=-1,B=A[r],T=A[r+1];B<T;)m(l,B++,s[++v]);else for(let v=-1,B=A[r],T=A[r+1];B<T;)m(l,B++,s.get(++v))},rS=(o,r,s)=>{let l=o.children[0],{valueOffsets:A}=o,m=Re.getVisitFn(l),{[r]:v,[r+1]:B}=A,T=s instanceof Map?s.entries():Object.entries(s);for(let V of T)if(m(l,v,V),++v>=B)break},nS=(o,r)=>(s,l,A,m)=>l&&s(l,o,r[m]),iS=(o,r)=>(s,l,A,m)=>l&&s(l,o,r.get(m)),sS=(o,r)=>(s,l,A,m)=>l&&s(l,o,r.get(A.name)),oS=(o,r)=>(s,l,A,m)=>l&&s(l,o,r[A.name]),uS=(o,r,s)=>{let l=o.type.children.map(m=>Re.getVisitFn(m.type)),A=s instanceof Map?sS(r,s):s instanceof At?iS(r,s):Array.isArray(s)?nS(r,s):oS(r,s);o.type.children.forEach((m,v)=>A(l[v],o.children[v],m,v))},cS=(o,r,s)=>{o.type.mode===Xt.Dense?Pd(o,r,s):Hd(o,r,s)},Pd=(o,r,s)=>{let l=o.type.typeIdToChildIndex[o.typeIds[r]],A=o.children[l];Re.visit(A,o.valueOffsets[r],s)},Hd=(o,r,s)=>{let l=o.type.typeIdToChildIndex[o.typeIds[r]],A=o.children[l];Re.visit(A,r,s)},lS=(o,r,s)=>{var l;(l=o.dictionary)===null||l===void 0||l.set(o.values[r],s)},Bf=(o,r,s)=>{o.type.unit===ue.DAY_TIME?$u(o,r,s):qu(o,r,s)},$u=({values:o},r,s)=>{o.set(s.subarray(0,2),2*r)},qu=({values:o},r,s)=>{o[r]=s[0]*12+s[1]%12},Ku=({values:o},r,s)=>{o[r]=s},tc=({values:o},r,s)=>{o[r]=s},ec=({values:o},r,s)=>{o[r]=s},rc=({values:o},r,s)=>{o[r]=s},If=(o,r,s)=>{switch(o.type.unit){case H.SECOND:return Ku(o,r,s);case H.MILLISECOND:return tc(o,r,s);case H.MICROSECOND:return ec(o,r,s);case H.NANOSECOND:return rc(o,r,s)}},fS=(o,r,s)=>{let{stride:l}=o,A=o.children[0],m=Re.getVisitFn(A);if(Array.isArray(s))for(let v=-1,B=r*l;++v<l;)m(A,B+v,s[v]);else for(let v=-1,B=r*l;++v<l;)m(A,B+v,s.get(v))};it.prototype.visitBool=lt(KI);it.prototype.visitInt=lt(jn);it.prototype.visitInt8=lt(jn);it.prototype.visitInt16=lt(jn);it.prototype.visitInt32=lt(jn);it.prototype.visitInt64=lt(jn);it.prototype.visitUint8=lt(jn);it.prototype.visitUint16=lt(jn);it.prototype.visitUint32=lt(jn);it.prototype.visitUint64=lt(jn);it.prototype.visitFloat=lt(tS);it.prototype.visitFloat16=lt(Ld);it.prototype.visitFloat32=lt(yf);it.prototype.visitFloat64=lt(yf);it.prototype.visitUtf8=lt(Yd);it.prototype.visitLargeUtf8=lt(Yd);it.prototype.visitBinary=lt(Jd);it.prototype.visitLargeBinary=lt(Jd);it.prototype.visitFixedSizeBinary=lt(gf);it.prototype.visitDate=lt(vf);it.prototype.visitDateDay=lt(Xu);it.prototype.visitDateMillisecond=lt(Gu);it.prototype.visitTimestamp=lt(wf);it.prototype.visitTimestampSecond=lt(Cu);it.prototype.visitTimestampMillisecond=lt(ju);it.prototype.visitTimestampMicrosecond=lt(Lu);it.prototype.visitTimestampNanosecond=lt(Ju);it.prototype.visitTime=lt(_f);it.prototype.visitTimeSecond=lt(Yu);it.prototype.visitTimeMillisecond=lt(Pu);it.prototype.visitTimeMicrosecond=lt(Hu);it.prototype.visitTimeNanosecond=lt(Qu);it.prototype.visitDecimal=lt(Ff);it.prototype.visitList=lt(eS);it.prototype.visitStruct=lt(uS);it.prototype.visitUnion=lt(cS);it.prototype.visitDenseUnion=lt(Pd);it.prototype.visitSparseUnion=lt(Hd);it.prototype.visitDictionary=lt(lS);it.prototype.visitInterval=lt(Bf);it.prototype.visitIntervalDayTime=lt($u);it.prototype.visitIntervalYearMonth=lt(qu);it.prototype.visitDuration=lt(If);it.prototype.visitDurationSecond=lt(Ku);it.prototype.visitDurationMillisecond=lt(tc);it.prototype.visitDurationMicrosecond=lt(ec);it.prototype.visitDurationNanosecond=lt(rc);it.prototype.visitFixedSizeList=lt(fS);it.prototype.visitMap=lt(rS);var Re=new it;var qr=Symbol.for("parent"),is=Symbol.for("rowIndex"),hi=class{constructor(r,s){return this[qr]=r,this[is]=s,new Proxy(this,new Tf)}toArray(){return Object.values(this.toJSON())}toJSON(){let r=this[is],s=this[qr],l=s.type.children,A={};for(let m=-1,v=l.length;++m<v;)A[l[m].name]=he.visit(s.children[m],r);return A}toString(){return`{${[...this].map(([r,s])=>`${Qr(r)}: ${Qr(s)}`).join(", ")}}`}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}[Symbol.iterator](){return new Sf(this[qr],this[is])}},Sf=class{constructor(r,s){this.childIndex=0,this.children=r.children,this.rowIndex=s,this.childFields=r.type.children,this.numChildren=this.childFields.length}[Symbol.iterator](){return this}next(){let r=this.childIndex;return r<this.numChildren?(this.childIndex=r+1,{done:!1,value:[this.childFields[r].name,he.visit(this.children[r],this.rowIndex)]}):{done:!0,value:null}}};Object.defineProperties(hi.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:"Row"},[qr]:{writable:!0,enumerable:!1,configurable:!1,value:null},[is]:{writable:!0,enumerable:!1,configurable:!1,value:-1}});var Tf=class{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(r){return r[qr].type.children.map(s=>s.name)}has(r,s){return r[qr].type.children.findIndex(l=>l.name===s)!==-1}getOwnPropertyDescriptor(r,s){if(r[qr].type.children.findIndex(l=>l.name===s)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(r,s){if(Reflect.has(r,s))return r[s];let l=r[qr].type.children.findIndex(A=>A.name===s);if(l!==-1){let A=he.visit(r[qr].children[l],r[is]);return Reflect.set(r,s,A),A}}set(r,s,l){let A=r[qr].type.children.findIndex(m=>m.name===s);return A!==-1?(Re.visit(r[qr].children[A],r[is],l),Reflect.set(r,s,l)):Reflect.has(r,s)||typeof s=="symbol"?Reflect.set(r,s,l):!1}};var tt=class extends K{};function ut(o){return(r,s)=>r.getValid(s)?o(r,s):null}var aS=(o,r)=>864e5*o[r],hS=(o,r)=>null,Qd=(o,r,s)=>{if(s+1>=r.length)return null;let l=Ut(r[s]),A=Ut(r[s+1]);return o.subarray(l,A)},dS=({offset:o,values:r},s)=>{let l=o+s;return(r[l>>3]&1<<l%8)!==0},$d=({values:o},r)=>aS(o,r),qd=({values:o},r)=>Ut(o[r]),di=({stride:o,values:r},s)=>r[o*s],AS=({stride:o,values:r},s)=>Eu(r[o*s]),Kd=({values:o},r)=>o[r],pS=({stride:o,values:r},s)=>r.subarray(o*s,o*(s+1)),tA=({values:o,valueOffsets:r},s)=>Qd(o,r,s),eA=({values:o,valueOffsets:r},s)=>{let l=Qd(o,r,s);return l!==null?Qs(l):null},mS=({values:o},r)=>o[r],yS=({type:o,values:r},s)=>o.precision!==Wt.HALF?r[s]:Eu(r[s]),gS=(o,r)=>o.type.unit===qt.DAY?$d(o,r):qd(o,r),rA=({values:o},r)=>1e3*Ut(o[r]),nA=({values:o},r)=>Ut(o[r]),iA=({values:o},r)=>hf(o[r],BigInt(1e3)),sA=({values:o},r)=>hf(o[r],BigInt(1e6)),vS=(o,r)=>{switch(o.type.unit){case H.SECOND:return rA(o,r);case H.MILLISECOND:return nA(o,r);case H.MICROSECOND:return iA(o,r);case H.NANOSECOND:return sA(o,r)}},oA=({values:o},r)=>o[r],uA=({values:o},r)=>o[r],cA=({values:o},r)=>o[r],lA=({values:o},r)=>o[r],wS=(o,r)=>{switch(o.type.unit){case H.SECOND:return oA(o,r);case H.MILLISECOND:return uA(o,r);case H.MICROSECOND:return cA(o,r);case H.NANOSECOND:return lA(o,r)}},_S=({values:o,stride:r},s)=>Ei.decimal(o.subarray(r*s,r*(s+1))),FS=(o,r)=>{let{valueOffsets:s,stride:l,children:A}=o,{[r*l]:m,[r*l+1]:v}=s,T=A[0].slice(m,v-m);return new At([T])},BS=(o,r)=>{let{valueOffsets:s,children:l}=o,{[r]:A,[r+1]:m}=s,v=l[0];return new xn(v.slice(A,m-A))},IS=(o,r)=>new hi(o,r),SS=(o,r)=>o.type.mode===Xt.Dense?fA(o,r):aA(o,r),fA=(o,r)=>{let s=o.type.typeIdToChildIndex[o.typeIds[r]],l=o.children[s];return he.visit(l,o.valueOffsets[r])},aA=(o,r)=>{let s=o.type.typeIdToChildIndex[o.typeIds[r]],l=o.children[s];return he.visit(l,r)},TS=(o,r)=>{var s;return(s=o.dictionary)===null||s===void 0?void 0:s.get(o.values[r])},RS=(o,r)=>o.type.unit===ue.DAY_TIME?hA(o,r):dA(o,r),hA=({values:o},r)=>o.subarray(2*r,2*(r+1)),dA=({values:o},r)=>{let s=o[r],l=new Int32Array(2);return l[0]=Math.trunc(s/12),l[1]=Math.trunc(s%12),l},AA=({values:o},r)=>o[r],pA=({values:o},r)=>o[r],mA=({values:o},r)=>o[r],yA=({values:o},r)=>o[r],US=(o,r)=>{switch(o.type.unit){case H.SECOND:return AA(o,r);case H.MILLISECOND:return pA(o,r);case H.MICROSECOND:return mA(o,r);case H.NANOSECOND:return yA(o,r)}},VS=(o,r)=>{let{stride:s,children:l}=o,m=l[0].slice(r*s,s);return new At([m])};tt.prototype.visitNull=ut(hS);tt.prototype.visitBool=ut(dS);tt.prototype.visitInt=ut(mS);tt.prototype.visitInt8=ut(di);tt.prototype.visitInt16=ut(di);tt.prototype.visitInt32=ut(di);tt.prototype.visitInt64=ut(Kd);tt.prototype.visitUint8=ut(di);tt.prototype.visitUint16=ut(di);tt.prototype.visitUint32=ut(di);tt.prototype.visitUint64=ut(Kd);tt.prototype.visitFloat=ut(yS);tt.prototype.visitFloat16=ut(AS);tt.prototype.visitFloat32=ut(di);tt.prototype.visitFloat64=ut(di);tt.prototype.visitUtf8=ut(eA);tt.prototype.visitLargeUtf8=ut(eA);tt.prototype.visitBinary=ut(tA);tt.prototype.visitLargeBinary=ut(tA);tt.prototype.visitFixedSizeBinary=ut(pS);tt.prototype.visitDate=ut(gS);tt.prototype.visitDateDay=ut($d);tt.prototype.visitDateMillisecond=ut(qd);tt.prototype.visitTimestamp=ut(vS);tt.prototype.visitTimestampSecond=ut(rA);tt.prototype.visitTimestampMillisecond=ut(nA);tt.prototype.visitTimestampMicrosecond=ut(iA);tt.prototype.visitTimestampNanosecond=ut(sA);tt.prototype.visitTime=ut(wS);tt.prototype.visitTimeSecond=ut(oA);tt.prototype.visitTimeMillisecond=ut(uA);tt.prototype.visitTimeMicrosecond=ut(cA);tt.prototype.visitTimeNanosecond=ut(lA);tt.prototype.visitDecimal=ut(_S);tt.prototype.visitList=ut(FS);tt.prototype.visitStruct=ut(IS);tt.prototype.visitUnion=ut(SS);tt.prototype.visitDenseUnion=ut(fA);tt.prototype.visitSparseUnion=ut(aA);tt.prototype.visitDictionary=ut(TS);tt.prototype.visitInterval=ut(RS);tt.prototype.visitIntervalDayTime=ut(hA);tt.prototype.visitIntervalYearMonth=ut(dA);tt.prototype.visitDuration=ut(US);tt.prototype.visitDurationSecond=ut(AA);tt.prototype.visitDurationMillisecond=ut(pA);tt.prototype.visitDurationMicrosecond=ut(mA);tt.prototype.visitDurationNanosecond=ut(yA);tt.prototype.visitFixedSizeList=ut(VS);tt.prototype.visitMap=ut(BS);var he=new tt;var Ai=Symbol.for("keys"),os=Symbol.for("vals"),ss=Symbol.for("kKeysAsStrings"),Rf=Symbol.for("_kKeysAsStrings"),xn=class{constructor(r){return this[Ai]=new At([r.children[0]]).memoize(),this[os]=r.children[1],new Proxy(this,new Vf)}get[ss](){return this[Rf]||(this[Rf]=Array.from(this[Ai].toArray(),String))}[Symbol.iterator](){return new Uf(this[Ai],this[os])}get size(){return this[Ai].length}toArray(){return Object.values(this.toJSON())}toJSON(){let r=this[Ai],s=this[os],l={};for(let A=-1,m=r.length;++A<m;)l[r.get(A)]=he.visit(s,A);return l}toString(){return`{${[...this].map(([r,s])=>`${Qr(r)}: ${Qr(s)}`).join(", ")}}`}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}},Uf=class{constructor(r,s){this.keys=r,this.vals=s,this.keyIndex=0,this.numKeys=r.length}[Symbol.iterator](){return this}next(){let r=this.keyIndex;return r===this.numKeys?{done:!0,value:null}:(this.keyIndex++,{done:!1,value:[this.keys.get(r),he.visit(this.vals,r)]})}},Vf=class{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(r){return r[ss]}has(r,s){return r[ss].includes(s)}getOwnPropertyDescriptor(r,s){if(r[ss].indexOf(s)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(r,s){if(Reflect.has(r,s))return r[s];let l=r[ss].indexOf(s);if(l!==-1){let A=he.visit(Reflect.get(r,os),l);return Reflect.set(r,s,A),A}}set(r,s,l){let A=r[ss].indexOf(s);return A!==-1?(Re.visit(Reflect.get(r,os),A,l),Reflect.set(r,s,l)):Reflect.has(r,s)?Reflect.set(r,s,l):!1}};Object.defineProperties(xn.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:"Row"},[Ai]:{writable:!0,enumerable:!1,configurable:!1,value:null},[os]:{writable:!0,enumerable:!1,configurable:!1,value:null},[Rf]:{writable:!0,enumerable:!1,configurable:!1,value:null}});var gA;function so(o,r,s,l){let{length:A=0}=o,m=typeof r!="number"?0:r,v=typeof s!="number"?A:s;return m<0&&(m=(m%A+A)%A),v<0&&(v=(v%A+A)%A),v<m&&(gA=m,m=v,v=gA),v>A&&(v=A),l?l(o,m,v):[m,v]}var $i=(o,r)=>o<0?r+o:o,vA=o=>o!==o;function pi(o){if(typeof o!=="object"||o===null)return vA(o)?vA:s=>s===o;if(o instanceof Date){let s=o.valueOf();return l=>l instanceof Date?l.valueOf()===s:!1}return ArrayBuffer.isView(o)?s=>s?uf(o,s):!1:o instanceof Map?bS(o):Array.isArray(o)?xS(o):o instanceof At?MS(o):NS(o,!0)}function xS(o){let r=[];for(let s=-1,l=o.length;++s<l;)r[s]=pi(o[s]);return nc(r)}function bS(o){let r=-1,s=[];for(let l of o.values())s[++r]=pi(l);return nc(s)}function MS(o){let r=[];for(let s=-1,l=o.length;++s<l;)r[s]=pi(o.get(s));return nc(r)}function NS(o,r=!1){let s=Object.keys(o);if(!r&&s.length===0)return()=>!1;let l=[];for(let A=-1,m=s.length;++A<m;)l[A]=pi(o[s[A]]);return nc(l,s)}function nc(o,r){return s=>{if(!s||typeof s!="object")return!1;switch(s.constructor){case Array:return kS(o,s);case Map:return wA(o,s,s.keys());case xn:case hi:case Object:case void 0:return wA(o,s,r||Object.keys(s))}return s instanceof At?OS(o,s):!1}}function kS(o,r){let s=o.length;if(r.length!==s)return!1;for(let l=-1;++l<s;)if(!o[l](r[l]))return!1;return!0}function OS(o,r){let s=o.length;if(r.length!==s)return!1;for(let l=-1;++l<s;)if(!o[l](r.get(l)))return!1;return!0}function wA(o,r,s){let l=s[Symbol.iterator](),A=r instanceof Map?r.keys():Object.keys(r)[Symbol.iterator](),m=r instanceof Map?r.values():Object.values(r)[Symbol.iterator](),v=0,B=o.length,T=m.next(),V=l.next(),O=A.next();for(;v<B&&!V.done&&!O.done&&!T.done&&!(V.value!==O.value||!o[v](T.value));++v,V=l.next(),O=A.next(),T=m.next());return v===B&&V.done&&O.done&&T.done?!0:(l.return&&l.return(),A.return&&A.return(),m.return&&m.return(),!1)}var bf={};fi(bf,{BitIterator:()=>qi,getBit:()=>_A,getBool:()=>sc,packBools:()=>t0,popcnt_array:()=>FA,popcnt_bit_range:()=>oo,popcnt_uint32:()=>ic,setBool:()=>ZS,truncateBitmap:()=>Ki});function sc(o,r,s,l){return(s&1<<l)!==0}function _A(o,r,s,l){return(s&1<<l)>>l}function ZS(o,r,s){return s?!!(o[r>>3]|=1<<r%8)||!0:!(o[r>>3]&=~(1<<r%8))&&!1}function Ki(o,r,s){let l=s.byteLength+7&-8;if(o>0||s.byteLength<l){let A=new Uint8Array(l);return A.set(o%8===0?s.subarray(o>>3):t0(new qi(s,o,r,null,sc)).subarray(0,l)),A}return s}function t0(o){let r=[],s=0,l=0,A=0;for(let v of o)v&&(A|=1<<l),++l===8&&(r[s++]=A,A=l=0);(s===0||l>0)&&(r[s++]=A);let m=new Uint8Array(r.length+7&-8);return m.set(r),m}var qi=class{constructor(r,s,l,A,m){this.bytes=r,this.length=l,this.context=A,this.get=m,this.bit=s%8,this.byteIndex=s>>3,this.byte=r[this.byteIndex++],this.index=0}next(){return this.index<this.length?(this.bit===8&&(this.bit=0,this.byte=this.bytes[this.byteIndex++]),{value:this.get(this.context,this.index++,this.byte,this.bit++)}):{done:!0,value:null}}[Symbol.iterator](){return this}};function oo(o,r,s){if(s-r<=0)return 0;if(s-r<8){let m=0;for(let v of new qi(o,r,s-r,o,_A))m+=v;return m}let l=s>>3<<3,A=r+(r%8===0?0:8-r%8);return oo(o,r,A)+oo(o,l,s)+FA(o,A>>3,l-A>>3)}function FA(o,r,s){let l=0,A=Math.trunc(r),m=new DataView(o.buffer,o.byteOffset,o.byteLength),v=s===void 0?o.byteLength:A+s;for(;v-A>=4;)l+=ic(m.getUint32(A)),A+=4;for(;v-A>=2;)l+=ic(m.getUint16(A)),A+=2;for(;v-A>=1;)l+=ic(m.getUint8(A)),A+=1;return l}function ic(o){let r=Math.trunc(o);return r=r-(r>>>1&1431655765),r=(r&858993459)+(r>>>2&858993459),(r+(r>>>4)&252645135)*16843009>>>24}var DS=-1,wt=class{get typeId(){return this.type.typeId}get ArrayType(){return this.type.ArrayType}get buffers(){return[this.valueOffsets,this.values,this.nullBitmap,this.typeIds]}get nullable(){if(this._nullCount!==0){let{type:r}=this;return P.isSparseUnion(r)?this.children.some(s=>s.nullable):P.isDenseUnion(r)?this.children.some(s=>s.nullable):this.nullBitmap&&this.nullBitmap.byteLength>0}return!0}get byteLength(){let r=0,{valueOffsets:s,values:l,nullBitmap:A,typeIds:m}=this;return s&&(r+=s.byteLength),l&&(r+=l.byteLength),A&&(r+=A.byteLength),m&&(r+=m.byteLength),this.children.reduce((v,B)=>v+B.byteLength,r)}get nullCount(){if(P.isUnion(this.type))return this.children.reduce((l,A)=>l+A.nullCount,0);let r=this._nullCount,s;return r<=DS&&(s=this.nullBitmap)&&(this._nullCount=r=s.length===0?0:this.length-oo(s,this.offset,this.offset+this.length)),r}constructor(r,s,l,A,m,v=[],B){this.type=r,this.children=v,this.dictionary=B,this.offset=Math.floor(Math.max(s||0,0)),this.length=Math.floor(Math.max(l||0,0)),this._nullCount=Math.floor(Math.max(A||0,-1));let T;m instanceof wt?(this.stride=m.stride,this.values=m.values,this.typeIds=m.typeIds,this.nullBitmap=m.nullBitmap,this.valueOffsets=m.valueOffsets):(this.stride=Fr(r),m&&((T=m[0])&&(this.valueOffsets=T),(T=m[1])&&(this.values=T),(T=m[2])&&(this.nullBitmap=T),(T=m[3])&&(this.typeIds=T)))}getValid(r){let{type:s}=this;if(P.isUnion(s)){let l=s,A=this.children[l.typeIdToChildIndex[this.typeIds[r]]],m=l.mode===Xt.Dense?this.valueOffsets[r]:r;return A.getValid(m)}if(this.nullable&&this.nullCount>0){let l=this.offset+r;return(this.nullBitmap[l>>3]&1<<l%8)!==0}return!0}setValid(r,s){let l,{type:A}=this;if(P.isUnion(A)){let m=A,v=this.children[m.typeIdToChildIndex[this.typeIds[r]]],B=m.mode===Xt.Dense?this.valueOffsets[r]:r;l=v.getValid(B),v.setValid(B,s)}else{let{nullBitmap:m}=this,{offset:v,length:B}=this,T=v+r,V=1<<T%8,O=T>>3;(!m||m.byteLength<=O)&&(m=new Uint8Array((v+B+63&-64)>>3).fill(255),this.nullCount>0?(m.set(Ki(v,B,this.nullBitmap),0),Object.assign(this,{nullBitmap:m})):Object.assign(this,{nullBitmap:m,_nullCount:0}));let C=m[O];l=(C&V)!==0,m[O]=s?C|V:C&~V}return l!==!!s&&(this._nullCount=this.nullCount+(s?-1:1)),s}clone(r=this.type,s=this.offset,l=this.length,A=this._nullCount,m=this,v=this.children){return new wt(r,s,l,A,m,v,this.dictionary)}slice(r,s){let{stride:l,typeId:A,children:m}=this,v=+(this._nullCount===0)-1,B=A===16?l:1,T=this._sliceBuffers(r,s,l,A);return this.clone(this.type,this.offset+r,s,v,T,m.length===0||this.valueOffsets?m:this._sliceChildren(m,B*r,B*s))}_changeLengthAndBackfillNullBitmap(r){if(this.typeId===x.Null)return this.clone(this.type,0,r,0);let{length:s,nullCount:l}=this,A=new Uint8Array((r+63&-64)>>3).fill(255,0,s>>3);A[s>>3]=(1<<s-(s&-8))-1,l>0&&A.set(Ki(this.offset,s,this.nullBitmap),0);let m=this.buffers;return m[Ke.VALIDITY]=A,this.clone(this.type,0,r,l+(r-s),m)}_sliceBuffers(r,s,l,A){let m,{buffers:v}=this;return(m=v[Ke.TYPE])&&(v[Ke.TYPE]=m.subarray(r,r+s)),(m=v[Ke.OFFSET])&&(v[Ke.OFFSET]=m.subarray(r,r+s+1))||(m=v[Ke.DATA])&&(v[Ke.DATA]=A===6?m:m.subarray(l*r,l*(r+s))),v}_sliceChildren(r,s,l){return r.map(A=>A.slice(s,l))}};wt.prototype.children=Object.freeze([]);var e0=class extends K{visit(r){return this.getVisitFn(r.type).call(this,r)}visitNull(r){let{["type"]:s,["offset"]:l=0,["length"]:A=0}=r;return new wt(s,l,A,A)}visitBool(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length>>3,["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitInt(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length,["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitFloat(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length,["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitUtf8(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.data),m=st(r.nullBitmap),v=zi(r.valueOffsets),{["length"]:B=v.length-1,["nullCount"]:T=r.nullBitmap?-1:0}=r;return new wt(s,l,B,T,[v,A,m])}visitLargeUtf8(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.data),m=st(r.nullBitmap),v=ku(r.valueOffsets),{["length"]:B=v.length-1,["nullCount"]:T=r.nullBitmap?-1:0}=r;return new wt(s,l,B,T,[v,A,m])}visitBinary(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.data),m=st(r.nullBitmap),v=zi(r.valueOffsets),{["length"]:B=v.length-1,["nullCount"]:T=r.nullBitmap?-1:0}=r;return new wt(s,l,B,T,[v,A,m])}visitLargeBinary(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.data),m=st(r.nullBitmap),v=ku(r.valueOffsets),{["length"]:B=v.length-1,["nullCount"]:T=r.nullBitmap?-1:0}=r;return new wt(s,l,B,T,[v,A,m])}visitFixedSizeBinary(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length/Fr(s),["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitDate(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length/Fr(s),["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitTimestamp(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length/Fr(s),["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitTime(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length/Fr(s),["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitDecimal(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length/Fr(s),["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitList(r){let{["type"]:s,["offset"]:l=0,["child"]:A}=r,m=st(r.nullBitmap),v=zi(r.valueOffsets),{["length"]:B=v.length-1,["nullCount"]:T=r.nullBitmap?-1:0}=r;return new wt(s,l,B,T,[v,void 0,m],[A])}visitStruct(r){let{["type"]:s,["offset"]:l=0,["children"]:A=[]}=r,m=st(r.nullBitmap),{length:v=A.reduce((T,{length:V})=>Math.max(T,V),0),nullCount:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,void 0,m],A)}visitUnion(r){let{["type"]:s,["offset"]:l=0,["children"]:A=[]}=r,m=vt(s.ArrayType,r.typeIds),{["length"]:v=m.length,["nullCount"]:B=-1}=r;if(P.isSparseUnion(s))return new wt(s,l,v,B,[void 0,void 0,void 0,m],A);let T=zi(r.valueOffsets);return new wt(s,l,v,B,[T,void 0,void 0,m],A)}visitDictionary(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.indices.ArrayType,r.data),{["dictionary"]:v=new At([new e0().visit({type:s.dictionary})])}=r,{["length"]:B=m.length,["nullCount"]:T=r.nullBitmap?-1:0}=r;return new wt(s,l,B,T,[void 0,m,A],[],v)}visitInterval(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length/Fr(s),["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitDuration(r){let{["type"]:s,["offset"]:l=0}=r,A=st(r.nullBitmap),m=vt(s.ArrayType,r.data),{["length"]:v=m.length,["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,m,A])}visitFixedSizeList(r){let{["type"]:s,["offset"]:l=0,["child"]:A=new e0().visit({type:s.valueType})}=r,m=st(r.nullBitmap),{["length"]:v=A.length/Fr(s),["nullCount"]:B=r.nullBitmap?-1:0}=r;return new wt(s,l,v,B,[void 0,void 0,m],[A])}visitMap(r){let{["type"]:s,["offset"]:l=0,["child"]:A=new e0().visit({type:s.childType})}=r,m=st(r.nullBitmap),v=zi(r.valueOffsets),{["length"]:B=v.length-1,["nullCount"]:T=r.nullBitmap?-1:0}=r;return new wt(s,l,B,T,[v,void 0,m],[A])}},WS=new e0;function ft(o){return WS.visit(o)}var uo=class{constructor(r=0,s){this.numChunks=r,this.getChunkIterator=s,this.chunkIndex=0,this.chunkIterator=this.getChunkIterator(0)}next(){for(;this.chunkIndex<this.numChunks;){let r=this.chunkIterator.next();if(!r.done)return r;++this.chunkIndex<this.numChunks&&(this.chunkIterator=this.getChunkIterator(this.chunkIndex))}return{done:!0,value:null}}[Symbol.iterator](){return this}};function BA(o){return o.some(r=>r.nullable)}function oc(o){return o.reduce((r,s)=>r+s.nullCount,0)}function uc(o){return o.reduce((r,s,l)=>(r[l+1]=r[l]+s.length,r),new Uint32Array(o.length+1))}function cc(o,r,s,l){let A=[];for(let m=-1,v=o.length;++m<v;){let B=o[m],T=r[m],{length:V}=B;if(T>=l)break;if(s>=T+V)continue;if(T>=s&&T+V<=l){A.push(B);continue}let O=Math.max(0,s-T),C=Math.min(l-T,V);A.push(B.slice(O,C-O))}return A.length===0&&A.push(o[0].slice(0,0)),A}function Mf(o,r,s,l){let A=0,m=0,v=r.length-1;do{if(A>=v-1)return s<r[v]?l(o,A,s-r[A]):null;m=A+Math.trunc((v-A)*.5),s<r[m]?v=m:A=m}while(A<v)}function co(o,r){return o.getValid(r)}function us(o){function r(s,l,A){return o(s[l],A)}return function(s){let l=this.data;return Mf(l,this._offsets,s,r)}}function lc(o){let r;function s(l,A,m){return o(l[A],m,r)}return function(l,A){let m=this.data;r=A;let v=Mf(m,this._offsets,l,s);return r=void 0,v}}function fc(o){let r;function s(l,A,m){let v=m,B=0,T=0;for(let V=A-1,O=l.length;++V<O;){let C=l[V];if(~(B=o(C,r,v)))return T+B;v=0,T+=C.length}return-1}return function(l,A){r=l;let m=this.data,v=typeof A!="number"?s(m,0,0):Mf(m,this._offsets,A,s);return r=void 0,v}}var et=class extends K{};function zS(o,r){return r===null&&o.length>0?0:-1}function ES(o,r){let{nullBitmap:s}=o;if(!s||o.nullCount<=0)return-1;let l=0;for(let A of new qi(s,o.offset+(r||0),o.length,s,sc)){if(!A)return l;++l}return-1}function dt(o,r,s){if(r===void 0)return-1;if(r===null)switch(o.typeId){case x.Union:break;case x.Dictionary:break;default:return ES(o,s)}let l=he.getVisitFn(o),A=pi(r);for(let m=(s||0)-1,v=o.length;++m<v;)if(A(l(o,m)))return m;return-1}function IA(o,r,s){let l=he.getVisitFn(o),A=pi(r);for(let m=(s||0)-1,v=o.length;++m<v;)if(A(l(o,m)))return m;return-1}et.prototype.visitNull=zS;et.prototype.visitBool=dt;et.prototype.visitInt=dt;et.prototype.visitInt8=dt;et.prototype.visitInt16=dt;et.prototype.visitInt32=dt;et.prototype.visitInt64=dt;et.prototype.visitUint8=dt;et.prototype.visitUint16=dt;et.prototype.visitUint32=dt;et.prototype.visitUint64=dt;et.prototype.visitFloat=dt;et.prototype.visitFloat16=dt;et.prototype.visitFloat32=dt;et.prototype.visitFloat64=dt;et.prototype.visitUtf8=dt;et.prototype.visitLargeUtf8=dt;et.prototype.visitBinary=dt;et.prototype.visitLargeBinary=dt;et.prototype.visitFixedSizeBinary=dt;et.prototype.visitDate=dt;et.prototype.visitDateDay=dt;et.prototype.visitDateMillisecond=dt;et.prototype.visitTimestamp=dt;et.prototype.visitTimestampSecond=dt;et.prototype.visitTimestampMillisecond=dt;et.prototype.visitTimestampMicrosecond=dt;et.prototype.visitTimestampNanosecond=dt;et.prototype.visitTime=dt;et.prototype.visitTimeSecond=dt;et.prototype.visitTimeMillisecond=dt;et.prototype.visitTimeMicrosecond=dt;et.prototype.visitTimeNanosecond=dt;et.prototype.visitDecimal=dt;et.prototype.visitList=dt;et.prototype.visitStruct=dt;et.prototype.visitUnion=dt;et.prototype.visitDenseUnion=IA;et.prototype.visitSparseUnion=IA;et.prototype.visitDictionary=dt;et.prototype.visitInterval=dt;et.prototype.visitIntervalDayTime=dt;et.prototype.visitIntervalYearMonth=dt;et.prototype.visitDuration=dt;et.prototype.visitDurationSecond=dt;et.prototype.visitDurationMillisecond=dt;et.prototype.visitDurationMicrosecond=dt;et.prototype.visitDurationNanosecond=dt;et.prototype.visitFixedSizeList=dt;et.prototype.visitMap=dt;var r0=new et;var rt=class extends K{};function ct(o){let{type:r}=o;if(o.nullCount===0&&o.stride===1&&(P.isInt(r)&&r.bitWidth!==64||P.isTime(r)&&r.bitWidth!==64||P.isFloat(r)&&r.precision!==Wt.HALF))return new uo(o.data.length,l=>{let A=o.data[l];return A.values.subarray(0,A.length)[Symbol.iterator]()});let s=0;return new uo(o.data.length,l=>{let m=o.data[l].length,v=o.slice(s,s+m);return s+=m,new Nf(v)})}var Nf=class{constructor(r){this.vector=r,this.index=0}next(){return this.index<this.vector.length?{value:this.vector.get(this.index++)}:{done:!0,value:null}}[Symbol.iterator](){return this}};rt.prototype.visitNull=ct;rt.prototype.visitBool=ct;rt.prototype.visitInt=ct;rt.prototype.visitInt8=ct;rt.prototype.visitInt16=ct;rt.prototype.visitInt32=ct;rt.prototype.visitInt64=ct;rt.prototype.visitUint8=ct;rt.prototype.visitUint16=ct;rt.prototype.visitUint32=ct;rt.prototype.visitUint64=ct;rt.prototype.visitFloat=ct;rt.prototype.visitFloat16=ct;rt.prototype.visitFloat32=ct;rt.prototype.visitFloat64=ct;rt.prototype.visitUtf8=ct;rt.prototype.visitLargeUtf8=ct;rt.prototype.visitBinary=ct;rt.prototype.visitLargeBinary=ct;rt.prototype.visitFixedSizeBinary=ct;rt.prototype.visitDate=ct;rt.prototype.visitDateDay=ct;rt.prototype.visitDateMillisecond=ct;rt.prototype.visitTimestamp=ct;rt.prototype.visitTimestampSecond=ct;rt.prototype.visitTimestampMillisecond=ct;rt.prototype.visitTimestampMicrosecond=ct;rt.prototype.visitTimestampNanosecond=ct;rt.prototype.visitTime=ct;rt.prototype.visitTimeSecond=ct;rt.prototype.visitTimeMillisecond=ct;rt.prototype.visitTimeMicrosecond=ct;rt.prototype.visitTimeNanosecond=ct;rt.prototype.visitDecimal=ct;rt.prototype.visitList=ct;rt.prototype.visitStruct=ct;rt.prototype.visitUnion=ct;rt.prototype.visitDenseUnion=ct;rt.prototype.visitSparseUnion=ct;rt.prototype.visitDictionary=ct;rt.prototype.visitInterval=ct;rt.prototype.visitIntervalDayTime=ct;rt.prototype.visitIntervalYearMonth=ct;rt.prototype.visitDuration=ct;rt.prototype.visitDurationSecond=ct;rt.prototype.visitDurationMillisecond=ct;rt.prototype.visitDurationMicrosecond=ct;rt.prototype.visitDurationNanosecond=ct;rt.prototype.visitFixedSizeList=ct;rt.prototype.visitMap=ct;var cs=new rt;var SA,TA={},RA={},At=class{constructor(r){var s,l,A;let m=r[0]instanceof At?r.flatMap(B=>B.data):r;if(m.length===0||m.some(B=>!(B instanceof wt)))throw new TypeError("Vector constructor expects an Array of Data instances.");let v=(s=m[0])===null||s===void 0?void 0:s.type;switch(m.length){case 0:this._offsets=[0];break;case 1:{let{get:B,set:T,indexOf:V}=TA[v.typeId],O=m[0];this.isValid=C=>co(O,C),this.get=C=>B(O,C),this.set=(C,yt)=>T(O,C,yt),this.indexOf=C=>V(O,C),this._offsets=[0,O.length];break}default:Object.setPrototypeOf(this,RA[v.typeId]),this._offsets=uc(m);break}this.data=m,this.type=v,this.stride=Fr(v),this.numChildren=(A=(l=v.children)===null||l===void 0?void 0:l.length)!==null&&A!==void 0?A:0,this.length=this._offsets.at(-1)}get byteLength(){return this.data.reduce((r,s)=>r+s.byteLength,0)}get nullable(){return BA(this.data)}get nullCount(){return oc(this.data)}get ArrayType(){return this.type.ArrayType}get[Symbol.toStringTag](){return`${this.VectorName}<${this.type[Symbol.toStringTag]}>`}get VectorName(){return`${x[this.type.typeId]}Vector`}isValid(r){return!1}get(r){return null}at(r){return this.get($i(r,this.length))}set(r,s){}indexOf(r,s){return-1}includes(r,s){return this.indexOf(r,s)>-1}[Symbol.iterator](){return cs.visit(this)}concat(...r){return new At(this.data.concat(r.flatMap(s=>s.data).flat(Number.POSITIVE_INFINITY)))}slice(r,s){return new At(so(this,r,s,({data:l,_offsets:A},m,v)=>cc(l,A,m,v)))}toJSON(){return[...this]}toArray(){let{type:r,data:s,length:l,stride:A,ArrayType:m}=this;switch(r.typeId){case x.Int:case x.Float:case x.Decimal:case x.Time:case x.Timestamp:switch(s.length){case 0:return new m;case 1:return s[0].values.subarray(0,l*A);default:return s.reduce((v,{values:B,length:T})=>(v.array.set(B.subarray(0,T*A),v.offset),v.offset+=T*A,v),{array:new m(l*A),offset:0}).array}}return[...this]}toString(){return`[${[...this].join(",")}]`}getChild(r){var s;return this.getChildAt((s=this.type.children)===null||s===void 0?void 0:s.findIndex(l=>l.name===r))}getChildAt(r){return r>-1&&r<this.numChildren?new At(this.data.map(({children:s})=>s[r])):null}get isMemoized(){return P.isDictionary(this.type)?this.data[0].dictionary.isMemoized:!1}memoize(){if(P.isDictionary(this.type)){let r=new ls(this.data[0].dictionary),s=this.data.map(l=>{let A=l.clone();return A.dictionary=r,A});return new At(s)}return new ls(this)}unmemoize(){if(P.isDictionary(this.type)&&this.isMemoized){let r=this.data[0].dictionary.unmemoize(),s=this.data.map(l=>{let A=l.clone();return A.dictionary=r,A});return new At(s)}return this}};SA=Symbol.toStringTag;At[SA]=(o=>{o.type=P.prototype,o.data=[],o.length=0,o.stride=1,o.numChildren=0,o._offsets=new Uint32Array([0]),o[Symbol.isConcatSpreadable]=!0;let r=Object.keys(x).map(s=>x[s]).filter(s=>typeof s=="number"&&s!==x.NONE);for(let s of r){let l=he.getVisitFnByTypeId(s),A=Re.getVisitFnByTypeId(s),m=r0.getVisitFnByTypeId(s);TA[s]={get:l,set:A,indexOf:m},RA[s]=Object.create(o,{isValid:{value:us(co)},get:{value:us(he.getVisitFnByTypeId(s))},set:{value:lc(Re.getVisitFnByTypeId(s))},indexOf:{value:fc(r0.getVisitFnByTypeId(s))}})}return"Vector"})(At.prototype);var ls=class extends At{constructor(r){super(r.data);let s=this.get,l=this.set,A=this.slice,m=new Array(this.length);Object.defineProperty(this,"get",{value(v){let B=m[v];if(B!==void 0)return B;let T=s.call(this,v);return m[v]=T,T}}),Object.defineProperty(this,"set",{value(v,B){l.call(this,v,B),m[v]=B}}),Object.defineProperty(this,"slice",{value:(v,B)=>new ls(A.call(this,v,B))}),Object.defineProperty(this,"isMemoized",{value:!0}),Object.defineProperty(this,"unmemoize",{value:()=>new At(this.data)}),Object.defineProperty(this,"memoize",{value:()=>this})}};function UA(o){if(!o||o.length<=0)return function(A){return!0};let r="",s=o.filter(l=>l===l);return s.length>0&&(r=`
|
|
8
|
+
switch (x) {${s.map(l=>`
|
|
9
|
+
case ${XS(l)}:`).join("")}
|
|
10
|
+
return false;
|
|
11
|
+
}`),o.length!==s.length&&(r=`if (x !== x) return false;
|
|
12
|
+
${r}`),new Function("x",`${r}
|
|
13
|
+
return true;`)}function XS(o){return typeof o!="bigint"?Qr(o):`${Qr(o)}n`}function kf(o,r){let s=Math.ceil(o)*r-1;return(s-s%64+64||64)/r}function VA(o,r=0){return o.length>=r?o.subarray(0,r):qs(new o.constructor(r),o,0)}var Kr=class{constructor(r,s=0,l=1){this.length=Math.ceil(s/l),this.buffer=new r(this.length),this.stride=l,this.BYTES_PER_ELEMENT=r.BYTES_PER_ELEMENT,this.ArrayType=r}get byteLength(){return Math.ceil(this.length*this.stride)*this.BYTES_PER_ELEMENT}get reservedLength(){return this.buffer.length/this.stride}get reservedByteLength(){return this.buffer.byteLength}set(r,s){return this}append(r){return this.set(this.length,r)}reserve(r){if(r>0){this.length+=r;let s=this.stride,l=this.length*s,A=this.buffer.length;l>=A&&this._resize(A===0?kf(l*1,this.BYTES_PER_ELEMENT):kf(l*2,this.BYTES_PER_ELEMENT))}return this}flush(r=this.length){r=kf(r*this.stride,this.BYTES_PER_ELEMENT);let s=VA(this.buffer,r);return this.clear(),s}clear(){return this.length=0,this.buffer=new this.ArrayType,this}_resize(r){return this.buffer=VA(this.buffer,r)}},Ln=class extends Kr{last(){return this.get(this.length-1)}get(r){return this.buffer[r]}set(r,s){return this.reserve(r-this.length+1),this.buffer[r*this.stride]=s,this}},fs=class extends Ln{constructor(){super(Uint8Array,0,1/8),this.numValid=0}get numInvalid(){return this.length-this.numValid}get(r){return this.buffer[r>>3]>>r%8&1}set(r,s){let{buffer:l}=this.reserve(r-this.length+1),A=r>>3,m=r%8,v=l[A]>>m&1;return s?v===0&&(l[A]|=1<<m,++this.numValid):v===1&&(l[A]&=~(1<<m),--this.numValid),this}clear(){return this.numValid=0,super.clear()}},as=class extends Ln{constructor(r){super(r.OffsetArrayType,1,1)}append(r){return this.set(this.length-1,r)}set(r,s){let l=this.length-1,A=this.reserve(r-l+1).buffer;return l<r++&&l>=0&&A.fill(A[l],l,r),A[r]=A[r-1]+s,this}flush(r=this.length-1){return r>this.length&&this.set(r-1,this.BYTES_PER_ELEMENT>4?BigInt(0):0),super.flush(r+1)}};var Kt=class{static throughNode(r){throw new Error('"throughNode" not available in this environment')}static throughDOM(r){throw new Error('"throughDOM" not available in this environment')}constructor({type:r,nullValues:s}){this.length=0,this.finished=!1,this.type=r,this.children=[],this.nullValues=s,this.stride=Fr(r),this._nulls=new fs,s&&s.length>0&&(this._isValid=UA(s))}toVector(){return new At([this.flush()])}get ArrayType(){return this.type.ArrayType}get nullCount(){return this._nulls.numInvalid}get numChildren(){return this.children.length}get byteLength(){let r=0,{_offsets:s,_values:l,_nulls:A,_typeIds:m,children:v}=this;return s&&(r+=s.byteLength),l&&(r+=l.byteLength),A&&(r+=A.byteLength),m&&(r+=m.byteLength),v.reduce((B,T)=>B+T.byteLength,r)}get reservedLength(){return this._nulls.reservedLength}get reservedByteLength(){let r=0;return this._offsets&&(r+=this._offsets.reservedByteLength),this._values&&(r+=this._values.reservedByteLength),this._nulls&&(r+=this._nulls.reservedByteLength),this._typeIds&&(r+=this._typeIds.reservedByteLength),this.children.reduce((s,l)=>s+l.reservedByteLength,r)}get valueOffsets(){return this._offsets?this._offsets.buffer:null}get values(){return this._values?this._values.buffer:null}get nullBitmap(){return this._nulls?this._nulls.buffer:null}get typeIds(){return this._typeIds?this._typeIds.buffer:null}append(r){return this.set(this.length,r)}isValid(r){return this._isValid(r)}set(r,s){return this.setValid(r,this.isValid(s))&&this.setValue(r,s),this}setValue(r,s){this._setValue(this,r,s)}setValid(r,s){return this.length=this._nulls.set(r,+s).length,s}addChild(r,s=`${this.numChildren}`){throw new Error(`Cannot append children to non-nested type "${this.type}"`)}getChildAt(r){return this.children[r]||null}flush(){let r,s,l,A,{type:m,length:v,nullCount:B,_typeIds:T,_offsets:V,_values:O,_nulls:C}=this;(s=T?.flush(v))?A=V?.flush(v):(A=V?.flush(v))?r=O?.flush(V.last()):r=O?.flush(v),B>0&&(l=C?.flush(v));let yt=this.children.map(mt=>mt.flush());return this.clear(),ft({type:m,length:v,nullCount:B,children:yt,child:yt[0],data:r,typeIds:s,nullBitmap:l,valueOffsets:A})}finish(){this.finished=!0;for(let r of this.children)r.finish();return this}clear(){var r,s,l,A;this.length=0,(r=this._nulls)===null||r===void 0||r.clear(),(s=this._values)===null||s===void 0||s.clear(),(l=this._offsets)===null||l===void 0||l.clear(),(A=this._typeIds)===null||A===void 0||A.clear();for(let m of this.children)m.clear();return this}};Kt.prototype.length=1;Kt.prototype.stride=1;Kt.prototype.children=null;Kt.prototype.finished=!1;Kt.prototype.nullValues=null;Kt.prototype._isValid=()=>!0;var de=class extends Kt{constructor(r){super(r),this._values=new Ln(this.ArrayType,0,this.stride)}setValue(r,s){let l=this._values;return l.reserve(r-l.length+1),super.setValue(r,s)}},ir=class extends Kt{constructor(r){super(r),this._pendingLength=0,this._offsets=new as(r.type)}setValue(r,s){let l=this._pending||(this._pending=new Map),A=l.get(r);A&&(this._pendingLength-=A.length),this._pendingLength+=s instanceof xn?s[Ai].length:s.length,l.set(r,s)}setValid(r,s){return super.setValid(r,s)?!0:((this._pending||(this._pending=new Map)).set(r,void 0),!1)}clear(){return this._pendingLength=0,this._pending=void 0,super.clear()}flush(){return this._flush(),super.flush()}finish(){return this._flush(),super.finish()}_flush(){let r=this._pending,s=this._pendingLength;return this._pendingLength=0,this._pending=void 0,r&&r.size>0&&this._flushPending(r,s),this}};var n0=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}offset(){return this.bb.readInt64(this.bb_pos)}metaDataLength(){return this.bb.readInt32(this.bb_pos+8)}bodyLength(){return this.bb.readInt64(this.bb_pos+16)}static sizeOf(){return 24}static createBlock(r,s,l,A){return r.prep(8,24),r.writeInt64(BigInt(A??0)),r.pad(4),r.writeInt32(l),r.writeInt64(BigInt(s??0)),r.offset()}};var Oe=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsFooter(r,s){return(s||new Oe).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsFooter(r,s){return r.setPosition(r.position()+4),(s||new Oe).__init(r.readInt32(r.position())+r.position(),r)}version(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):Ot.V1}schema(r){let s=this.bb.__offset(this.bb_pos,6);return s?(r||new ie).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}dictionaries(r,s){let l=this.bb.__offset(this.bb_pos,8);return l?(s||new n0).__init(this.bb.__vector(this.bb_pos+l)+r*24,this.bb):null}dictionariesLength(){let r=this.bb.__offset(this.bb_pos,8);return r?this.bb.__vector_len(this.bb_pos+r):0}recordBatches(r,s){let l=this.bb.__offset(this.bb_pos,10);return l?(s||new n0).__init(this.bb.__vector(this.bb_pos+l)+r*24,this.bb):null}recordBatchesLength(){let r=this.bb.__offset(this.bb_pos,10);return r?this.bb.__vector_len(this.bb_pos+r):0}customMetadata(r,s){let l=this.bb.__offset(this.bb_pos,12);return l?(s||new Pt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+r*4),this.bb):null}customMetadataLength(){let r=this.bb.__offset(this.bb_pos,12);return r?this.bb.__vector_len(this.bb_pos+r):0}static startFooter(r){r.startObject(5)}static addVersion(r,s){r.addFieldInt16(0,s,Ot.V1)}static addSchema(r,s){r.addFieldOffset(1,s,0)}static addDictionaries(r,s){r.addFieldOffset(2,s,0)}static startDictionariesVector(r,s){r.startVector(24,s,8)}static addRecordBatches(r,s){r.addFieldOffset(3,s,0)}static startRecordBatchesVector(r,s){r.startVector(24,s,8)}static addCustomMetadata(r,s){r.addFieldOffset(4,s,0)}static createCustomMetadataVector(r,s){r.startVector(4,s.length,4);for(let l=s.length-1;l>=0;l--)r.addOffset(s[l]);return r.endVector()}static startCustomMetadataVector(r,s){r.startVector(4,s,4)}static endFooter(r){return r.endObject()}static finishFooterBuffer(r,s){r.finish(s)}static finishSizePrefixedFooterBuffer(r,s){r.finish(s,void 0,!0)}};var _t=class{constructor(r=[],s,l,A=Ot.V5){this.fields=r||[],this.metadata=s||new Map,l||(l=Of(this.fields)),this.dictionaries=l,this.metadataVersion=A}get[Symbol.toStringTag](){return"Schema"}get names(){return this.fields.map(r=>r.name)}toString(){return`Schema<{ ${this.fields.map((r,s)=>`${s}: ${r}`).join(", ")} }>`}select(r){let s=new Set(r),l=this.fields.filter(A=>s.has(A.name));return new _t(l,this.metadata)}selectAt(r){let s=r.map(l=>this.fields[l]).filter(Boolean);return new _t(s,this.metadata)}assign(...r){let s=r[0]instanceof _t?r[0]:Array.isArray(r[0])?new _t(r[0]):new _t(r),l=[...this.fields],A=ac(ac(new Map,this.metadata),s.metadata),m=s.fields.filter(B=>{let T=l.findIndex(V=>V.name===B.name);return~T?(l[T]=B.clone({metadata:ac(ac(new Map,l[T].metadata),B.metadata)}))&&!1:!0}),v=Of(m,new Map);return new _t([...l,...m],A,new Map([...this.dictionaries,...v]))}};_t.prototype.fields=null;_t.prototype.metadata=null;_t.prototype.dictionaries=null;var at=class{static new(...r){let[s,l,A,m]=r;return r[0]&&typeof r[0]=="object"&&({name:s}=r[0],l===void 0&&(l=r[0].type),A===void 0&&(A=r[0].nullable),m===void 0&&(m=r[0].metadata)),new at(`${s}`,l,A,m)}constructor(r,s,l=!1,A){this.name=r,this.type=s,this.nullable=l,this.metadata=A||new Map}get typeId(){return this.type.typeId}get[Symbol.toStringTag](){return"Field"}toString(){return`${this.name}: ${this.type}`}clone(...r){let[s,l,A,m]=r;return!r[0]||typeof r[0]!="object"?[s=this.name,l=this.type,A=this.nullable,m=this.metadata]=r:{name:s=this.name,type:l=this.type,nullable:A=this.nullable,metadata:m=this.metadata}=r[0],at.new(s,l,A,m)}};at.prototype.type=null;at.prototype.name=null;at.prototype.nullable=null;at.prototype.metadata=null;function ac(o,r){return new Map([...o||new Map,...r||new Map])}function Of(o,r=new Map){for(let s=-1,l=o.length;++s<l;){let m=o[s].type;if(P.isDictionary(m)){if(!r.has(m.id))r.set(m.id,m.dictionary);else if(r.get(m.id)!==m.dictionary)throw new Error("Cannot create Schema containing two different dictionaries with the same Id")}m.children&&m.children.length>0&&Of(m.children,r)}return r}var GS=Cn,CS=ze,Jn=class{static decode(r){r=new CS(st(r));let s=Oe.getRootAsFooter(r),l=_t.decode(s.schema(),new Map,s.version());return new Zf(l,s)}static encode(r){let s=new GS,l=_t.encode(s,r.schema);Oe.startRecordBatchesVector(s,r.numRecordBatches);for(let v of[...r.recordBatches()].slice().reverse())tn.encode(s,v);let A=s.endVector();Oe.startDictionariesVector(s,r.numDictionaries);for(let v of[...r.dictionaryBatches()].slice().reverse())tn.encode(s,v);let m=s.endVector();return Oe.startFooter(s),Oe.addSchema(s,l),Oe.addVersion(s,Ot.V5),Oe.addRecordBatches(s,A),Oe.addDictionaries(s,m),Oe.finishFooterBuffer(s,Oe.endFooter(s)),s.asUint8Array()}get numRecordBatches(){return this._recordBatches.length}get numDictionaries(){return this._dictionaryBatches.length}constructor(r,s=Ot.V5,l,A){this.schema=r,this.version=s,l&&(this._recordBatches=l),A&&(this._dictionaryBatches=A)}*recordBatches(){for(let r,s=-1,l=this.numRecordBatches;++s<l;)(r=this.getRecordBatch(s))&&(yield r)}*dictionaryBatches(){for(let r,s=-1,l=this.numDictionaries;++s<l;)(r=this.getDictionaryBatch(s))&&(yield r)}getRecordBatch(r){return r>=0&&r<this.numRecordBatches&&this._recordBatches[r]||null}getDictionaryBatch(r){return r>=0&&r<this.numDictionaries&&this._dictionaryBatches[r]||null}};var Zf=class extends Jn{get numRecordBatches(){return this._footer.recordBatchesLength()}get numDictionaries(){return this._footer.dictionariesLength()}constructor(r,s){super(r,s.version()),this._footer=s}getRecordBatch(r){if(r>=0&&r<this.numRecordBatches){let s=this._footer.recordBatches(r);if(s)return tn.decode(s)}return null}getDictionaryBatch(r){if(r>=0&&r<this.numDictionaries){let s=this._footer.dictionaries(r);if(s)return tn.decode(s)}return null}},tn=class{static decode(r){return new tn(r.metaDataLength(),r.bodyLength(),r.offset())}static encode(r,s){let{metaDataLength:l}=s,A=BigInt(s.offset),m=BigInt(s.bodyLength);return n0.createBlock(r,A,l,m)}constructor(r,s,l){this.metaDataLength=r,this.offset=Ut(l),this.bodyLength=Ut(s)}};var Ht=Object.freeze({done:!0,value:void 0}),lo=class{constructor(r){this._json=r}get schema(){return this._json.schema}get batches(){return this._json.batches||[]}get dictionaries(){return this._json.dictionaries||[]}},i0=class{tee(){return this._getDOMStream().tee()}pipe(r,s){return this._getNodeStream().pipe(r,s)}pipeTo(r,s){return this._getDOMStream().pipeTo(r,s)}pipeThrough(r,s){return this._getDOMStream().pipeThrough(r,s)}_getDOMStream(){return this._DOMStream||(this._DOMStream=this.toDOMStream())}_getNodeStream(){return this._nodeStream||(this._nodeStream=this.toNodeStream())}},hc=class extends i0{constructor(){super(),this._values=[],this.resolvers=[],this._closedPromise=new Promise(r=>this._closedPromiseResolve=r)}get closed(){return this._closedPromise}cancel(r){return Q(this,void 0,void 0,function*(){yield this.return(r)})}write(r){this._ensureOpen()&&(this.resolvers.length<=0?this._values.push(r):this.resolvers.shift().resolve({done:!1,value:r}))}abort(r){this._closedPromiseResolve&&(this.resolvers.length<=0?this._error={error:r}:this.resolvers.shift().reject({done:!0,value:r}))}close(){if(this._closedPromiseResolve){let{resolvers:r}=this;for(;r.length>0;)r.shift().resolve(Ht);this._closedPromiseResolve(),this._closedPromiseResolve=void 0}}[Symbol.asyncIterator](){return this}toDOMStream(r){return Te.toDOMStream(this._closedPromiseResolve||this._error?this:this._values,r)}toNodeStream(r){return Te.toNodeStream(this._closedPromiseResolve||this._error?this:this._values,r)}throw(r){return Q(this,void 0,void 0,function*(){return yield this.abort(r),Ht})}return(r){return Q(this,void 0,void 0,function*(){return yield this.close(),Ht})}read(r){return Q(this,void 0,void 0,function*(){return(yield this.next(r,"read")).value})}peek(r){return Q(this,void 0,void 0,function*(){return(yield this.next(r,"peek")).value})}next(...r){return this._values.length>0?Promise.resolve({done:!1,value:this._values.shift()}):this._error?Promise.reject({done:!0,value:this._error.error}):this._closedPromiseResolve?new Promise((s,l)=>{this.resolvers.push({resolve:s,reject:l})}):Promise.resolve(Ht)}_ensureOpen(){if(this._closedPromiseResolve)return!0;throw new Error("AsyncQueue is closed")}};var bn=class extends hc{write(r){if((r=st(r)).byteLength>0)return super.write(r)}toString(r=!1){return r?Qs(this.toUint8Array(!0)):this.toUint8Array(!1).then(Qs)}toUint8Array(r=!1){return r?yr(this._values)[0]:(()=>Q(this,void 0,void 0,function*(){var s,l,A,m;let v=[],B=0;try{for(var T=!0,V=jr(this),O;O=yield V.next(),s=O.done,!s;T=!0){m=O.value,T=!1;let C=m;v.push(C),B+=C.byteLength}}catch(C){l={error:C}}finally{try{!T&&!s&&(A=V.return)&&(yield A.call(V))}finally{if(l)throw l.error}}return yr(v,B)[0]}))()}},Mn=class{constructor(r){r&&(this.source=new Df(Te.fromIterable(r)))}[Symbol.iterator](){return this}next(r){return this.source.next(r)}throw(r){return this.source.throw(r)}return(r){return this.source.return(r)}peek(r){return this.source.peek(r)}read(r){return this.source.read(r)}},sr=class{constructor(r){r instanceof sr?this.source=r.source:r instanceof bn?this.source=new Yn(Te.fromAsyncIterable(r)):Nu(r)?this.source=new Yn(Te.fromNodeStream(r)):$s(r)?this.source=new Yn(Te.fromDOMStream(r)):bu(r)?this.source=new Yn(Te.fromDOMStream(r.body)):Jr(r)?this.source=new Yn(Te.fromIterable(r)):Lr(r)?this.source=new Yn(Te.fromAsyncIterable(r)):br(r)&&(this.source=new Yn(Te.fromAsyncIterable(r)))}[Symbol.asyncIterator](){return this}next(r){return this.source.next(r)}throw(r){return this.source.throw(r)}return(r){return this.source.return(r)}get closed(){return this.source.closed}cancel(r){return this.source.cancel(r)}peek(r){return this.source.peek(r)}read(r){return this.source.read(r)}},Df=class{constructor(r){this.source=r}cancel(r){this.return(r)}peek(r){return this.next(r,"peek").value}read(r){return this.next(r,"read").value}next(r,s="read"){return this.source.next({cmd:s,size:r})}throw(r){return Object.create(this.source.throw&&this.source.throw(r)||Ht)}return(r){return Object.create(this.source.return&&this.source.return(r)||Ht)}},Yn=class{constructor(r){this.source=r,this._closedPromise=new Promise(s=>this._closedPromiseResolve=s)}cancel(r){return Q(this,void 0,void 0,function*(){yield this.return(r)})}get closed(){return this._closedPromise}read(r){return Q(this,void 0,void 0,function*(){return(yield this.next(r,"read")).value})}peek(r){return Q(this,void 0,void 0,function*(){return(yield this.next(r,"peek")).value})}next(r){return Q(this,arguments,void 0,function*(s,l="read"){return yield this.source.next({cmd:l,size:s})})}throw(r){return Q(this,void 0,void 0,function*(){let s=this.source.throw&&(yield this.source.throw(r))||Ht;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(s)})}return(r){return Q(this,void 0,void 0,function*(){let s=this.source.return&&(yield this.source.return(r))||Ht;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(s)})}};var fo=class extends Mn{constructor(r,s){super(),this.position=0,this.buffer=st(r),this.size=s===void 0?this.buffer.byteLength:s}readInt32(r){let{buffer:s,byteOffset:l}=this.readAt(r,4);return new DataView(s,l).getInt32(0,!0)}seek(r){return this.position=Math.min(r,this.size),r<this.size}read(r){let{buffer:s,size:l,position:A}=this;return s&&A<l?(typeof r!="number"&&(r=Number.POSITIVE_INFINITY),this.position=Math.min(l,A+Math.min(l-A,r)),s.subarray(A,this.position)):null}readAt(r,s){let l=this.buffer,A=Math.min(this.size,r+s);return l?l.subarray(r,A):new Uint8Array(s)}close(){this.buffer&&(this.buffer=null)}throw(r){return this.close(),{done:!0,value:r}}return(r){return this.close(),{done:!0,value:r}}},mi=class extends sr{constructor(r,s){super(),this.position=0,this._handle=r,typeof s=="number"?this.size=s:this._pending=(()=>Q(this,void 0,void 0,function*(){this.size=(yield r.stat()).size,delete this._pending}))()}readInt32(r){return Q(this,void 0,void 0,function*(){let{buffer:s,byteOffset:l}=yield this.readAt(r,4);return new DataView(s,l).getInt32(0,!0)})}seek(r){return Q(this,void 0,void 0,function*(){return this._pending&&(yield this._pending),this.position=Math.min(r,this.size),r<this.size})}read(r){return Q(this,void 0,void 0,function*(){this._pending&&(yield this._pending);let{_handle:s,size:l,position:A}=this;if(s&&A<l){typeof r!="number"&&(r=Number.POSITIVE_INFINITY);let m=A,v=0,B=0,T=Math.min(l,m+Math.min(l-m,r)),V=new Uint8Array(Math.max(0,(this.position=T)-m));for(;(m+=B)<T&&(v+=B)<V.byteLength;)({bytesRead:B}=yield s.read(V,v,V.byteLength-v,m));return V}return null})}readAt(r,s){return Q(this,void 0,void 0,function*(){this._pending&&(yield this._pending);let{_handle:l,size:A}=this;if(l&&r+s<A){let m=Math.min(A,r+s),v=new Uint8Array(m-r);return(yield l.read(v,0,s,r)).buffer}return new Uint8Array(s)})}close(){return Q(this,void 0,void 0,function*(){let r=this._handle;this._handle=null,r&&(yield r.close())})}throw(r){return Q(this,void 0,void 0,function*(){return yield this.close(),{done:!0,value:r}})}return(r){return Q(this,void 0,void 0,function*(){return yield this.close(),{done:!0,value:r}})}};var zf={};fi(zf,{BaseInt64:()=>ao,Int128:()=>or,Int64:()=>Ie,Uint64:()=>Mt});function hs(o){return o<0&&(o=4294967295+o+1),`0x${o.toString(16)}`}var ds=8,Wf=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8],ao=class{constructor(r){this.buffer=r}high(){return this.buffer[1]}low(){return this.buffer[0]}_times(r){let s=new Uint32Array([this.buffer[1]>>>16,this.buffer[1]&65535,this.buffer[0]>>>16,this.buffer[0]&65535]),l=new Uint32Array([r.buffer[1]>>>16,r.buffer[1]&65535,r.buffer[0]>>>16,r.buffer[0]&65535]),A=s[3]*l[3];this.buffer[0]=A&65535;let m=A>>>16;return A=s[2]*l[3],m+=A,A=s[3]*l[2]>>>0,m+=A,this.buffer[0]+=m<<16,this.buffer[1]=m>>>0<A?65536:0,this.buffer[1]+=m>>>16,this.buffer[1]+=s[1]*l[3]+s[2]*l[2]+s[3]*l[1],this.buffer[1]+=s[0]*l[3]+s[1]*l[2]+s[2]*l[1]+s[3]*l[0]<<16,this}_plus(r){let s=this.buffer[0]+r.buffer[0]>>>0;this.buffer[1]+=r.buffer[1],s<this.buffer[0]>>>0&&++this.buffer[1],this.buffer[0]=s}lessThan(r){return this.buffer[1]<r.buffer[1]||this.buffer[1]===r.buffer[1]&&this.buffer[0]<r.buffer[0]}equals(r){return this.buffer[1]===r.buffer[1]&&this.buffer[0]==r.buffer[0]}greaterThan(r){return r.lessThan(this)}hex(){return`${hs(this.buffer[1])} ${hs(this.buffer[0])}`}},Mt=class extends ao{times(r){return this._times(r),this}plus(r){return this._plus(r),this}static from(r,s=new Uint32Array(2)){return Mt.fromString(typeof r=="string"?r:r.toString(),s)}static fromNumber(r,s=new Uint32Array(2)){return Mt.fromString(r.toString(),s)}static fromString(r,s=new Uint32Array(2)){let l=r.length,A=new Mt(s);for(let m=0;m<l;){let v=ds<l-m?ds:l-m,B=new Mt(new Uint32Array([Number.parseInt(r.slice(m,m+v),10),0])),T=new Mt(new Uint32Array([Wf[v],0]));A.times(T),A.plus(B),m+=v}return A}static convertArray(r){let s=new Uint32Array(r.length*2);for(let l=-1,A=r.length;++l<A;)Mt.from(r[l],new Uint32Array(s.buffer,s.byteOffset+2*l*4,2));return s}static multiply(r,s){return new Mt(new Uint32Array(r.buffer)).times(s)}static add(r,s){return new Mt(new Uint32Array(r.buffer)).plus(s)}},Ie=class extends ao{negate(){return this.buffer[0]=~this.buffer[0]+1,this.buffer[1]=~this.buffer[1],this.buffer[0]==0&&++this.buffer[1],this}times(r){return this._times(r),this}plus(r){return this._plus(r),this}lessThan(r){let s=this.buffer[1]<<0,l=r.buffer[1]<<0;return s<l||s===l&&this.buffer[0]<r.buffer[0]}static from(r,s=new Uint32Array(2)){return Ie.fromString(typeof r=="string"?r:r.toString(),s)}static fromNumber(r,s=new Uint32Array(2)){return Ie.fromString(r.toString(),s)}static fromString(r,s=new Uint32Array(2)){let l=r.startsWith("-"),A=r.length,m=new Ie(s);for(let v=l?1:0;v<A;){let B=ds<A-v?ds:A-v,T=new Ie(new Uint32Array([Number.parseInt(r.slice(v,v+B),10),0])),V=new Ie(new Uint32Array([Wf[B],0]));m.times(V),m.plus(T),v+=B}return l?m.negate():m}static convertArray(r){let s=new Uint32Array(r.length*2);for(let l=-1,A=r.length;++l<A;)Ie.from(r[l],new Uint32Array(s.buffer,s.byteOffset+2*l*4,2));return s}static multiply(r,s){return new Ie(new Uint32Array(r.buffer)).times(s)}static add(r,s){return new Ie(new Uint32Array(r.buffer)).plus(s)}},or=class{constructor(r){this.buffer=r}high(){return new Ie(new Uint32Array(this.buffer.buffer,this.buffer.byteOffset+8,2))}low(){return new Ie(new Uint32Array(this.buffer.buffer,this.buffer.byteOffset,2))}negate(){return this.buffer[0]=~this.buffer[0]+1,this.buffer[1]=~this.buffer[1],this.buffer[2]=~this.buffer[2],this.buffer[3]=~this.buffer[3],this.buffer[0]==0&&++this.buffer[1],this.buffer[1]==0&&++this.buffer[2],this.buffer[2]==0&&++this.buffer[3],this}times(r){let s=new Mt(new Uint32Array([this.buffer[3],0])),l=new Mt(new Uint32Array([this.buffer[2],0])),A=new Mt(new Uint32Array([this.buffer[1],0])),m=new Mt(new Uint32Array([this.buffer[0],0])),v=new Mt(new Uint32Array([r.buffer[3],0])),B=new Mt(new Uint32Array([r.buffer[2],0])),T=new Mt(new Uint32Array([r.buffer[1],0])),V=new Mt(new Uint32Array([r.buffer[0],0])),O=Mt.multiply(m,V);this.buffer[0]=O.low();let C=new Mt(new Uint32Array([O.high(),0]));return O=Mt.multiply(A,V),C.plus(O),O=Mt.multiply(m,T),C.plus(O),this.buffer[1]=C.low(),this.buffer[3]=C.lessThan(O)?1:0,this.buffer[2]=C.high(),new Mt(new Uint32Array(this.buffer.buffer,this.buffer.byteOffset+8,2)).plus(Mt.multiply(l,V)).plus(Mt.multiply(A,T)).plus(Mt.multiply(m,B)),this.buffer[3]+=Mt.multiply(s,V).plus(Mt.multiply(l,T)).plus(Mt.multiply(A,B)).plus(Mt.multiply(m,v)).low(),this}plus(r){let s=new Uint32Array(4);return s[3]=this.buffer[3]+r.buffer[3]>>>0,s[2]=this.buffer[2]+r.buffer[2]>>>0,s[1]=this.buffer[1]+r.buffer[1]>>>0,s[0]=this.buffer[0]+r.buffer[0]>>>0,s[0]<this.buffer[0]>>>0&&++s[1],s[1]<this.buffer[1]>>>0&&++s[2],s[2]<this.buffer[2]>>>0&&++s[3],this.buffer[3]=s[3],this.buffer[2]=s[2],this.buffer[1]=s[1],this.buffer[0]=s[0],this}hex(){return`${hs(this.buffer[3])} ${hs(this.buffer[2])} ${hs(this.buffer[1])} ${hs(this.buffer[0])}`}static multiply(r,s){return new or(new Uint32Array(r.buffer)).times(s)}static add(r,s){return new or(new Uint32Array(r.buffer)).plus(s)}static from(r,s=new Uint32Array(4)){return or.fromString(typeof r=="string"?r:r.toString(),s)}static fromNumber(r,s=new Uint32Array(4)){return or.fromString(r.toString(),s)}static fromString(r,s=new Uint32Array(4)){let l=r.startsWith("-"),A=r.length,m=new or(s);for(let v=l?1:0;v<A;){let B=ds<A-v?ds:A-v,T=new or(new Uint32Array([Number.parseInt(r.slice(v,v+B),10),0,0,0])),V=new or(new Uint32Array([Wf[B],0,0,0]));m.times(V),m.plus(T),v+=B}return l?m.negate():m}static convertArray(r){let s=new Uint32Array(r.length*4);for(let l=-1,A=r.length;++l<A;)or.from(r[l],new Uint32Array(s.buffer,s.byteOffset+4*4*l,4));return s}};var ho=class extends K{constructor(r,s,l,A,m=Ot.V5){super(),this.nodesIndex=-1,this.buffersIndex=-1,this.bytes=r,this.nodes=s,this.buffers=l,this.dictionaries=A,this.metadataVersion=m}visit(r){return super.visit(r instanceof at?r.type:r)}visitNull(r,{length:s}=this.nextFieldNode()){return ft({type:r,length:s})}visitBool(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitInt(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitFloat(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitUtf8(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),valueOffsets:this.readOffsets(r),data:this.readData(r)})}visitLargeUtf8(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),valueOffsets:this.readOffsets(r),data:this.readData(r)})}visitBinary(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),valueOffsets:this.readOffsets(r),data:this.readData(r)})}visitLargeBinary(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),valueOffsets:this.readOffsets(r),data:this.readData(r)})}visitFixedSizeBinary(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitDate(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitTimestamp(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitTime(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitDecimal(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitList(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),valueOffsets:this.readOffsets(r),child:this.visit(r.children[0])})}visitStruct(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),children:this.visitMany(r.children)})}visitUnion(r,{length:s,nullCount:l}=this.nextFieldNode()){return this.metadataVersion<Ot.V5&&this.readNullBitmap(r,l),r.mode===Xt.Sparse?this.visitSparseUnion(r,{length:s,nullCount:l}):this.visitDenseUnion(r,{length:s,nullCount:l})}visitDenseUnion(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,typeIds:this.readTypeIds(r),valueOffsets:this.readOffsets(r),children:this.visitMany(r.children)})}visitSparseUnion(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,typeIds:this.readTypeIds(r),children:this.visitMany(r.children)})}visitDictionary(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r.indices),dictionary:this.readDictionary(r)})}visitInterval(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitDuration(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),data:this.readData(r)})}visitFixedSizeList(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),child:this.visit(r.children[0])})}visitMap(r,{length:s,nullCount:l}=this.nextFieldNode()){return ft({type:r,length:s,nullCount:l,nullBitmap:this.readNullBitmap(r,l),valueOffsets:this.readOffsets(r),child:this.visit(r.children[0])})}nextFieldNode(){return this.nodes[++this.nodesIndex]}nextBufferRange(){return this.buffers[++this.buffersIndex]}readNullBitmap(r,s,l=this.nextBufferRange()){return s>0&&this.readData(r,l)||new Uint8Array(0)}readOffsets(r,s){return this.readData(r,s)}readTypeIds(r,s){return this.readData(r,s)}readData(r,{length:s,offset:l}=this.nextBufferRange()){return this.bytes.subarray(l,l+s)}readDictionary(r){return this.dictionaries.get(r.id)}},dc=class extends ho{constructor(r,s,l,A,m){super(new Uint8Array(0),s,l,A,m),this.sources=r}readNullBitmap(r,s,{offset:l}=this.nextBufferRange()){return s<=0?new Uint8Array(0):t0(this.sources[l])}readOffsets(r,{offset:s}=this.nextBufferRange()){return vt(Uint8Array,vt(r.OffsetArrayType,this.sources[s]))}readTypeIds(r,{offset:s}=this.nextBufferRange()){return vt(Uint8Array,vt(r.ArrayType,this.sources[s]))}readData(r,{offset:s}=this.nextBufferRange()){let{sources:l}=this;return P.isTimestamp(r)?vt(Uint8Array,Ie.convertArray(l[s])):(P.isInt(r)||P.isTime(r))&&r.bitWidth===64||P.isDuration(r)?vt(Uint8Array,Ie.convertArray(l[s])):P.isDate(r)&&r.unit===qt.MILLISECOND?vt(Uint8Array,Ie.convertArray(l[s])):P.isDecimal(r)?vt(Uint8Array,or.convertArray(l[s])):P.isBinary(r)||P.isLargeBinary(r)||P.isFixedSizeBinary(r)?jS(l[s]):P.isBool(r)?t0(l[s]):P.isUtf8(r)||P.isLargeUtf8(r)?pn(l[s].join("")):vt(Uint8Array,vt(r.ArrayType,l[s].map(A=>+A)))}};function jS(o){let r=o.join(""),s=new Uint8Array(r.length/2);for(let l=0;l<r.length;l+=2)s[l>>1]=Number.parseInt(r.slice(l,l+2),16);return s}var As=class extends ir{constructor(r){super(r),this._values=new Kr(Uint8Array)}get byteLength(){let r=this._pendingLength+this.length*4;return this._offsets&&(r+=this._offsets.byteLength),this._values&&(r+=this._values.byteLength),this._nulls&&(r+=this._nulls.byteLength),r}setValue(r,s){return super.setValue(r,st(s))}_flushPending(r,s){let l=this._offsets,A=this._values.reserve(s).buffer,m=0;for(let[v,B]of r)if(B===void 0)l.set(v,0);else{let T=B.length;A.set(B,m),l.set(v,T),m+=T}}};var ps=class extends ir{constructor(r){super(r),this._values=new Kr(Uint8Array)}get byteLength(){let r=this._pendingLength+this.length*4;return this._offsets&&(r+=this._offsets.byteLength),this._values&&(r+=this._values.byteLength),this._nulls&&(r+=this._nulls.byteLength),r}setValue(r,s){return super.setValue(r,st(s))}_flushPending(r,s){let l=this._offsets,A=this._values.reserve(s).buffer,m=0;for(let[v,B]of r)if(B===void 0)l.set(v,BigInt(0));else{let T=B.length;A.set(B,m),l.set(v,BigInt(T)),m+=T}}};var Ac=class extends Kt{constructor(r){super(r),this._values=new fs}setValue(r,s){this._values.set(r,+s)}};var s0=class extends de{};s0.prototype._setValue=vf;var Ao=class extends s0{};Ao.prototype._setValue=Xu;var po=class extends s0{};po.prototype._setValue=Gu;var mo=class extends de{};mo.prototype._setValue=Ff;var pc=class extends Kt{constructor({type:r,nullValues:s,dictionaryHashFunction:l}){super({type:new nr(r.dictionary,r.indices,r.id,r.isOrdered)}),this._nulls=null,this._dictionaryOffset=0,this._keysToIndices=Object.create(null),this.indices=o0({type:this.type.indices,nullValues:s}),this.dictionary=o0({type:this.type.dictionary,nullValues:null}),typeof l=="function"&&(this.valueToKey=l)}get values(){return this.indices.values}get nullCount(){return this.indices.nullCount}get nullBitmap(){return this.indices.nullBitmap}get byteLength(){return this.indices.byteLength+this.dictionary.byteLength}get reservedLength(){return this.indices.reservedLength+this.dictionary.reservedLength}get reservedByteLength(){return this.indices.reservedByteLength+this.dictionary.reservedByteLength}isValid(r){return this.indices.isValid(r)}setValid(r,s){let l=this.indices;return s=l.setValid(r,s),this.length=l.length,s}setValue(r,s){let l=this._keysToIndices,A=this.valueToKey(s),m=l[A];return m===void 0&&(l[A]=m=this._dictionaryOffset+this.dictionary.append(s).length-1),this.indices.setValue(r,m)}flush(){let r=this.type,s=this._dictionary,l=this.dictionary.toVector(),A=this.indices.flush().clone(r);return A.dictionary=s?s.concat(l):l,this.finished||(this._dictionaryOffset+=l.length),this._dictionary=A.dictionary,this.clear(),A}finish(){return this.indices.finish(),this.dictionary.finish(),this._dictionaryOffset=0,this._keysToIndices=Object.create(null),super.finish()}clear(){return this.indices.clear(),this.dictionary.clear(),super.clear()}valueToKey(r){return typeof r=="string"?r:`${r}`}};var yo=class extends de{};yo.prototype._setValue=gf;var mc=class extends Kt{setValue(r,s){let[l]=this.children,A=r*this.stride;for(let m=-1,v=s.length;++m<v;)l.set(A+m,s[m])}addChild(r,s="0"){if(this.numChildren>0)throw new Error("FixedSizeListBuilder can only have one child.");let l=this.children.push(r);return this.type=new ke(this.type.listSize,new at(s,r.type,!0)),l}};var u0=class extends de{setValue(r,s){this._values.set(r,s)}},yc=class extends u0{setValue(r,s){super.setValue(r,io(s))}},gc=class extends u0{},vc=class extends u0{};var c0=class extends de{};c0.prototype._setValue=Bf;var go=class extends c0{};go.prototype._setValue=$u;var vo=class extends c0{};vo.prototype._setValue=qu;var Pn=class extends de{};Pn.prototype._setValue=If;var wo=class extends Pn{};wo.prototype._setValue=Ku;var _o=class extends Pn{};_o.prototype._setValue=tc;var Fo=class extends Pn{};Fo.prototype._setValue=ec;var Bo=class extends Pn{};Bo.prototype._setValue=rc;var zr=class extends de{setValue(r,s){this._values.set(r,s)}},wc=class extends zr{},_c=class extends zr{},Fc=class extends zr{},Bc=class extends zr{},Ic=class extends zr{},Sc=class extends zr{},Tc=class extends zr{},Rc=class extends zr{};var Uc=class extends ir{constructor(r){super(r),this._offsets=new as(r.type)}addChild(r,s="0"){if(this.numChildren>0)throw new Error("ListBuilder can only have one child.");return this.children[this.numChildren]=r,this.type=new er(new at(s,r.type,!0)),this.numChildren-1}_flushPending(r){let s=this._offsets,[l]=this.children;for(let[A,m]of r)if(typeof m>"u")s.set(A,0);else{let v=m,B=v.length,T=s.set(A,B).buffer[A];for(let V=-1;++V<B;)l.set(T+V,v[V])}}};var Vc=class extends ir{set(r,s){return super.set(r,s)}setValue(r,s){let l=s instanceof Map?s:new Map(Object.entries(s)),A=this._pending||(this._pending=new Map),m=A.get(r);m&&(this._pendingLength-=m.size),this._pendingLength+=l.size,A.set(r,l)}addChild(r,s=`${this.numChildren}`){if(this.numChildren>0)throw new Error("ListBuilder can only have one child.");return this.children[this.numChildren]=r,this.type=new rr(new at(s,r.type,!0),this.type.keysSorted),this.numChildren-1}_flushPending(r){let s=this._offsets,[l]=this.children;for(let[A,m]of r)if(m===void 0)s.set(A,0);else{let{[A]:v,[A+1]:B}=s.set(A,m.size).buffer;for(let T of m.entries())if(l.set(v,T),++v>=B)break}}};var xc=class extends Kt{setValue(r,s){}setValid(r,s){return this.length=Math.max(r+1,this.length),s}};var bc=class extends Kt{setValue(r,s){let{children:l,type:A}=this;switch(Array.isArray(s)||s.constructor){case!0:return A.children.forEach((m,v)=>l[v].set(r,s[v]));case Map:return A.children.forEach((m,v)=>l[v].set(r,s.get(m.name)));default:return A.children.forEach((m,v)=>l[v].set(r,s[m.name]))}}setValid(r,s){return super.setValid(r,s)||this.children.forEach(l=>l.setValid(r,s)),s}addChild(r,s=`${this.numChildren}`){let l=this.children.push(r);return this.type=new Dt([...this.type.children,new at(s,r.type,!0)]),l}};var Hn=class extends de{};Hn.prototype._setValue=wf;var Io=class extends Hn{};Io.prototype._setValue=Cu;var So=class extends Hn{};So.prototype._setValue=ju;var To=class extends Hn{};To.prototype._setValue=Lu;var Ro=class extends Hn{};Ro.prototype._setValue=Ju;var Qn=class extends de{};Qn.prototype._setValue=_f;var Uo=class extends Qn{};Uo.prototype._setValue=Yu;var Vo=class extends Qn{};Vo.prototype._setValue=Pu;var xo=class extends Qn{};xo.prototype._setValue=Hu;var bo=class extends Qn{};bo.prototype._setValue=Qu;var ms=class extends Kt{constructor(r){super(r),this._typeIds=new Ln(Int8Array,0,1),typeof r.valueToChildTypeId=="function"&&(this._valueToChildTypeId=r.valueToChildTypeId)}get typeIdToChildIndex(){return this.type.typeIdToChildIndex}append(r,s){return this.set(this.length,r,s)}set(r,s,l){return l===void 0&&(l=this._valueToChildTypeId(this,s,r)),this.setValue(r,s,l),this}setValue(r,s,l){this._typeIds.set(r,l);let A=this.type.typeIdToChildIndex[l],m=this.children[A];m?.set(r,s)}addChild(r,s=`${this.children.length}`){let l=this.children.push(r),{type:{children:A,mode:m,typeIds:v}}=this,B=[...A,new at(s,r.type)];return this.type=new Wr(m,[...v,l],B),l}_valueToChildTypeId(r,s,l){throw new Error("Cannot map UnionBuilder value to child typeId. Pass the `childTypeId` as the second argument to unionBuilder.append(), or supply a `valueToChildTypeId` function as part of the UnionBuilder constructor options.")}},Mc=class extends ms{},Nc=class extends ms{constructor(r){super(r),this._offsets=new Ln(Int32Array)}setValue(r,s,l){let A=this._typeIds.set(r,l).buffer[r],m=this.getChildAt(this.type.typeIdToChildIndex[A]),v=this._offsets.set(r,m.length).buffer[r];m?.set(v,s)}};var Mo=class extends ir{constructor(r){super(r),this._values=new Kr(Uint8Array)}get byteLength(){let r=this._pendingLength+this.length*4;return this._offsets&&(r+=this._offsets.byteLength),this._values&&(r+=this._values.byteLength),this._nulls&&(r+=this._nulls.byteLength),r}setValue(r,s){return super.setValue(r,pn(s))}_flushPending(r,s){}};Mo.prototype._flushPending=As.prototype._flushPending;var No=class extends ir{constructor(r){super(r),this._values=new Kr(Uint8Array)}get byteLength(){let r=this._pendingLength+this.length*4;return this._offsets&&(r+=this._offsets.byteLength),this._values&&(r+=this._values.byteLength),this._nulls&&(r+=this._nulls.byteLength),r}setValue(r,s){return super.setValue(r,pn(s))}_flushPending(r,s){}};No.prototype._flushPending=ps.prototype._flushPending;var Ef=class extends K{visitNull(){return xc}visitBool(){return Ac}visitInt(){return zr}visitInt8(){return wc}visitInt16(){return _c}visitInt32(){return Fc}visitInt64(){return Bc}visitUint8(){return Ic}visitUint16(){return Sc}visitUint32(){return Tc}visitUint64(){return Rc}visitFloat(){return u0}visitFloat16(){return yc}visitFloat32(){return gc}visitFloat64(){return vc}visitUtf8(){return Mo}visitLargeUtf8(){return No}visitBinary(){return As}visitLargeBinary(){return ps}visitFixedSizeBinary(){return yo}visitDate(){return s0}visitDateDay(){return Ao}visitDateMillisecond(){return po}visitTimestamp(){return Hn}visitTimestampSecond(){return Io}visitTimestampMillisecond(){return So}visitTimestampMicrosecond(){return To}visitTimestampNanosecond(){return Ro}visitTime(){return Qn}visitTimeSecond(){return Uo}visitTimeMillisecond(){return Vo}visitTimeMicrosecond(){return xo}visitTimeNanosecond(){return bo}visitDecimal(){return mo}visitList(){return Uc}visitStruct(){return bc}visitUnion(){return ms}visitDenseUnion(){return Nc}visitSparseUnion(){return Mc}visitDictionary(){return pc}visitInterval(){return c0}visitIntervalDayTime(){return go}visitIntervalYearMonth(){return vo}visitDuration(){return Pn}visitDurationSecond(){return wo}visitDurationMillisecond(){return _o}visitDurationMicrosecond(){return Fo}visitDurationNanosecond(){return Bo}visitFixedSizeList(){return mc}visitMap(){return Vc}},xA=new Ef;var nt=class extends K{compareSchemas(r,s){return r===s||s instanceof r.constructor&&this.compareManyFields(r.fields,s.fields)}compareManyFields(r,s){return r===s||Array.isArray(r)&&Array.isArray(s)&&r.length===s.length&&r.every((l,A)=>this.compareFields(l,s[A]))}compareFields(r,s){return r===s||s instanceof r.constructor&&r.name===s.name&&r.nullable===s.nullable&&this.visit(r.type,s.type)}};function Ge(o,r){return r instanceof o.constructor}function l0(o,r){return o===r||Ge(o,r)}function $n(o,r){return o===r||Ge(o,r)&&o.bitWidth===r.bitWidth&&o.isSigned===r.isSigned}function kc(o,r){return o===r||Ge(o,r)&&o.precision===r.precision}function LS(o,r){return o===r||Ge(o,r)&&o.byteWidth===r.byteWidth}function Xf(o,r){return o===r||Ge(o,r)&&o.unit===r.unit}function ko(o,r){return o===r||Ge(o,r)&&o.unit===r.unit&&o.timezone===r.timezone}function Oo(o,r){return o===r||Ge(o,r)&&o.unit===r.unit&&o.bitWidth===r.bitWidth}function JS(o,r){return o===r||Ge(o,r)&&o.children.length===r.children.length&&Nn.compareManyFields(o.children,r.children)}function YS(o,r){return o===r||Ge(o,r)&&o.children.length===r.children.length&&Nn.compareManyFields(o.children,r.children)}function Gf(o,r){return o===r||Ge(o,r)&&o.mode===r.mode&&o.typeIds.every((s,l)=>s===r.typeIds[l])&&Nn.compareManyFields(o.children,r.children)}function PS(o,r){return o===r||Ge(o,r)&&o.id===r.id&&o.isOrdered===r.isOrdered&&Nn.visit(o.indices,r.indices)&&Nn.visit(o.dictionary,r.dictionary)}function Cf(o,r){return o===r||Ge(o,r)&&o.unit===r.unit}function Zo(o,r){return o===r||Ge(o,r)&&o.unit===r.unit}function HS(o,r){return o===r||Ge(o,r)&&o.listSize===r.listSize&&o.children.length===r.children.length&&Nn.compareManyFields(o.children,r.children)}function QS(o,r){return o===r||Ge(o,r)&&o.keysSorted===r.keysSorted&&o.children.length===r.children.length&&Nn.compareManyFields(o.children,r.children)}nt.prototype.visitNull=l0;nt.prototype.visitBool=l0;nt.prototype.visitInt=$n;nt.prototype.visitInt8=$n;nt.prototype.visitInt16=$n;nt.prototype.visitInt32=$n;nt.prototype.visitInt64=$n;nt.prototype.visitUint8=$n;nt.prototype.visitUint16=$n;nt.prototype.visitUint32=$n;nt.prototype.visitUint64=$n;nt.prototype.visitFloat=kc;nt.prototype.visitFloat16=kc;nt.prototype.visitFloat32=kc;nt.prototype.visitFloat64=kc;nt.prototype.visitUtf8=l0;nt.prototype.visitLargeUtf8=l0;nt.prototype.visitBinary=l0;nt.prototype.visitLargeBinary=l0;nt.prototype.visitFixedSizeBinary=LS;nt.prototype.visitDate=Xf;nt.prototype.visitDateDay=Xf;nt.prototype.visitDateMillisecond=Xf;nt.prototype.visitTimestamp=ko;nt.prototype.visitTimestampSecond=ko;nt.prototype.visitTimestampMillisecond=ko;nt.prototype.visitTimestampMicrosecond=ko;nt.prototype.visitTimestampNanosecond=ko;nt.prototype.visitTime=Oo;nt.prototype.visitTimeSecond=Oo;nt.prototype.visitTimeMillisecond=Oo;nt.prototype.visitTimeMicrosecond=Oo;nt.prototype.visitTimeNanosecond=Oo;nt.prototype.visitDecimal=l0;nt.prototype.visitList=JS;nt.prototype.visitStruct=YS;nt.prototype.visitUnion=Gf;nt.prototype.visitDenseUnion=Gf;nt.prototype.visitSparseUnion=Gf;nt.prototype.visitDictionary=PS;nt.prototype.visitInterval=Cf;nt.prototype.visitIntervalDayTime=Cf;nt.prototype.visitIntervalYearMonth=Cf;nt.prototype.visitDuration=Zo;nt.prototype.visitDurationSecond=Zo;nt.prototype.visitDurationMillisecond=Zo;nt.prototype.visitDurationMicrosecond=Zo;nt.prototype.visitDurationNanosecond=Zo;nt.prototype.visitFixedSizeList=HS;nt.prototype.visitMap=QS;var Nn=new nt;function f0(o,r){return Nn.compareSchemas(o,r)}function bA(o,r){return Nn.compareFields(o,r)}function MA(o,r){return Nn.visit(o,r)}function o0(o){let r=o.type,s=new(xA.getVisitFn(r)())(o);if(r.children&&r.children.length>0){let l=o.children||[],A={nullValues:o.nullValues},m=Array.isArray(l)?(v,B)=>l[B]||A:({name:v})=>l[v]||A;for(let[v,B]of r.children.entries()){let{type:T}=B,V=m(B,v);s.children.push(o0(Object.assign(Object.assign({},V),{type:T})))}}return s}function Oc(o,r){return $S(o,r.map(s=>s.data.concat()))}function $S(o,r){let s=[...o.fields],l=[],A={numBatches:r.reduce((C,yt)=>Math.max(C,yt.length),0)},m=0,v=0,B=-1,T=r.length,V,O=[];for(;A.numBatches-- >0;){for(v=Number.POSITIVE_INFINITY,B=-1;++B<T;)O[B]=V=r[B].shift(),v=Math.min(v,V?V.length:v);Number.isFinite(v)&&(O=qS(s,v,O,r,A),v>0&&(l[m++]=ft({type:new Dt(s),length:v,nullCount:0,children:O.slice()})))}return[o=o.assign(s),l.map(C=>new zt(o,C))]}function qS(o,r,s,l,A){var m;let v=(r+63&-64)>>3;for(let B=-1,T=l.length;++B<T;){let V=s[B],O=V?.length;if(O>=r)O===r?s[B]=V:(s[B]=V.slice(0,r),A.numBatches=Math.max(A.numBatches,l[B].unshift(V.slice(r,O-r))));else{let C=o[B];o[B]=C.clone({nullable:!0}),s[B]=(m=V?._changeLengthAndBackfillNullBitmap(r))!==null&&m!==void 0?m:ft({type:C.type,length:r,nullCount:r,nullBitmap:new Uint8Array(v)})}}return s}var NA,le=class{constructor(...r){var s,l;if(r.length===0)return this.batches=[],this.schema=new _t([]),this._offsets=[0],this;let A,m;r[0]instanceof _t&&(A=r.shift()),r.at(-1)instanceof Uint32Array&&(m=r.pop());let v=T=>{if(T){if(T instanceof zt)return[T];if(T instanceof le)return T.batches;if(T instanceof wt){if(T.type instanceof Dt)return[new zt(new _t(T.type.children),T)]}else{if(Array.isArray(T))return T.flatMap(V=>v(V));if(typeof T[Symbol.iterator]=="function")return[...T].flatMap(V=>v(V));if(typeof T=="object"){let V=Object.keys(T),O=V.map(mt=>new At([T[mt]])),C=A??new _t(V.map((mt,Ct)=>new at(String(mt),O[Ct].type,O[Ct].nullable))),[,yt]=Oc(C,O);return yt.length===0?[new zt(T)]:yt}}}return[]},B=r.flatMap(T=>v(T));if(A=(l=A??((s=B[0])===null||s===void 0?void 0:s.schema))!==null&&l!==void 0?l:new _t([]),!(A instanceof _t))throw new TypeError("Table constructor expects a [Schema, RecordBatch[]] pair.");for(let T of B){if(!(T instanceof zt))throw new TypeError("Table constructor expects a [Schema, RecordBatch[]] pair.");if(!f0(A,T.schema))throw new TypeError("Table and inner RecordBatch schemas must be equivalent.")}this.schema=A,this.batches=B,this._offsets=m??uc(this.data)}get data(){return this.batches.map(({data:r})=>r)}get numCols(){return this.schema.fields.length}get numRows(){return this.data.reduce((r,s)=>r+s.length,0)}get nullCount(){return this._nullCount===-1&&(this._nullCount=oc(this.data)),this._nullCount}isValid(r){return!1}get(r){return null}at(r){return this.get($i(r,this.numRows))}set(r,s){}indexOf(r,s){return-1}[Symbol.iterator](){return this.batches.length>0?cs.visit(new At(this.data)):new Array(0)[Symbol.iterator]()}toArray(){return[...this]}toString(){return`[
|
|
14
|
+
${this.toArray().join(`,
|
|
15
|
+
`)}
|
|
16
|
+
]`}concat(...r){let s=this.schema,l=this.data.concat(r.flatMap(({data:A})=>A));return new le(s,l.map(A=>new zt(s,A)))}slice(r,s){let l=this.schema;[r,s]=so({length:this.numRows},r,s);let A=cc(this.data,this._offsets,r,s);return new le(l,A.map(m=>new zt(l,m)))}getChild(r){return this.getChildAt(this.schema.fields.findIndex(s=>s.name===r))}getChildAt(r){if(r>-1&&r<this.schema.fields.length){let s=this.data.map(l=>l.children[r]);if(s.length===0){let{type:l}=this.schema.fields[r],A=ft({type:l,length:0,nullCount:0});s.push(A._changeLengthAndBackfillNullBitmap(this.numRows))}return new At(s)}return null}setChild(r,s){var l;return this.setChildAt((l=this.schema.fields)===null||l===void 0?void 0:l.findIndex(A=>A.name===r),s)}setChildAt(r,s){let l=this.schema,A=[...this.batches];if(r>-1&&r<this.numCols){s||(s=new At([ft({type:new Be,length:this.numRows})]));let m=l.fields.slice(),v=m[r].clone({type:s.type}),B=this.schema.fields.map((T,V)=>this.getChildAt(V));[m[r],B[r]]=[v,s],[l,A]=Oc(l,B)}return new le(l,A)}select(r){let s=this.schema.fields.reduce((l,A,m)=>l.set(A.name,m),new Map);return this.selectAt(r.map(l=>s.get(l)).filter(l=>l>-1))}selectAt(r){let s=this.schema.selectAt(r),l=this.batches.map(A=>A.selectAt(r));return new le(s,l)}assign(r){let s=this.schema.fields,[l,A]=r.schema.fields.reduce((B,T,V)=>{let[O,C]=B,yt=s.findIndex(mt=>mt.name===T.name);return~yt?C[yt]=V:O.push(V),B},[[],[]]),m=this.schema.assign(r.schema),v=[...s.map((B,T)=>[T,A[T]]).map(([B,T])=>T===void 0?this.getChildAt(B):r.getChildAt(T)),...l.map(B=>r.getChildAt(B))].filter(Boolean);return new le(...Oc(m,v))}};NA=Symbol.toStringTag;le[NA]=(o=>(o.schema=null,o.batches=[],o._offsets=new Uint32Array([0]),o._nullCount=-1,o[Symbol.isConcatSpreadable]=!0,o.isValid=us(co),o.get=us(he.getVisitFn(x.Struct)),o.set=lc(Re.getVisitFn(x.Struct)),o.indexOf=fc(r0.getVisitFn(x.Struct)),"Table"))(le.prototype);var OA,zt=class{constructor(...r){switch(r.length){case 2:{if([this.schema]=r,!(this.schema instanceof _t))throw new TypeError("RecordBatch constructor expects a [Schema, Data] pair.");if([,this.data=ft({nullCount:0,type:new Dt(this.schema.fields),children:this.schema.fields.map(s=>ft({type:s.type,nullCount:0}))})]=r,!(this.data instanceof wt))throw new TypeError("RecordBatch constructor expects a [Schema, Data] pair.");[this.schema,this.data]=kA(this.schema,this.data.children);break}case 1:{let[s]=r,{fields:l,children:A,length:m}=Object.keys(s).reduce((T,V,O)=>(T.children[O]=s[V],T.length=Math.max(T.length,s[V].length),T.fields[O]=at.new({name:V,type:s[V].type,nullable:!0}),T),{length:0,fields:new Array,children:new Array}),v=new _t(l),B=ft({type:new Dt(l),length:m,children:A,nullCount:0});[this.schema,this.data]=kA(v,B.children,m);break}default:throw new TypeError("RecordBatch constructor expects an Object mapping names to child Data, or a [Schema, Data] pair.")}}get dictionaries(){return this._dictionaries||(this._dictionaries=ZA(this.schema.fields,this.data.children))}get numCols(){return this.schema.fields.length}get numRows(){return this.data.length}get nullCount(){return this.data.nullCount}isValid(r){return this.data.getValid(r)}get(r){return he.visit(this.data,r)}at(r){return this.get($i(r,this.numRows))}set(r,s){return Re.visit(this.data,r,s)}indexOf(r,s){return r0.visit(this.data,r,s)}[Symbol.iterator](){return cs.visit(new At([this.data]))}toArray(){return[...this]}concat(...r){return new le(this.schema,[this,...r])}slice(r,s){let[l]=new At([this.data]).slice(r,s).data;return new zt(this.schema,l)}getChild(r){var s;return this.getChildAt((s=this.schema.fields)===null||s===void 0?void 0:s.findIndex(l=>l.name===r))}getChildAt(r){return r>-1&&r<this.schema.fields.length?new At([this.data.children[r]]):null}setChild(r,s){var l;return this.setChildAt((l=this.schema.fields)===null||l===void 0?void 0:l.findIndex(A=>A.name===r),s)}setChildAt(r,s){let l=this.schema,A=this.data;if(r>-1&&r<this.numCols){s||(s=new At([ft({type:new Be,length:this.numRows})]));let m=l.fields.slice(),v=A.children.slice(),B=m[r].clone({type:s.type});[m[r],v[r]]=[B,s.data[0]],l=new _t(m,new Map(this.schema.metadata)),A=ft({type:new Dt(m),children:v})}return new zt(l,A)}select(r){let s=this.schema.select(r),l=new Dt(s.fields),A=[];for(let m of r){let v=this.schema.fields.findIndex(B=>B.name===m);~v&&(A[v]=this.data.children[v])}return new zt(s,ft({type:l,length:this.numRows,children:A}))}selectAt(r){let s=this.schema.selectAt(r),l=r.map(m=>this.data.children[m]).filter(Boolean),A=ft({type:new Dt(s.fields),length:this.numRows,children:l});return new zt(s,A)}};OA=Symbol.toStringTag;zt[OA]=(o=>(o._nullCount=-1,o[Symbol.isConcatSpreadable]=!0,"RecordBatch"))(zt.prototype);function kA(o,r,s=r.reduce((l,A)=>Math.max(l,A.length),0)){var l;let A=[...o.fields],m=[...r],v=(s+63&-64)>>3;for(let[B,T]of o.fields.entries()){let V=r[B];(!V||V.length!==s)&&(A[B]=T.clone({nullable:!0}),m[B]=(l=V?._changeLengthAndBackfillNullBitmap(s))!==null&&l!==void 0?l:ft({type:T.type,length:s,nullCount:s,nullBitmap:new Uint8Array(v)}))}return[o.assign(A),ft({type:new Dt(A),length:s,children:m})]}function ZA(o,r,s=new Map){var l,A;if(((l=o?.length)!==null&&l!==void 0?l:0)>0&&o?.length===r?.length)for(let m=-1,v=o.length;++m<v;){let{type:B}=o[m],T=r[m];for(let V of[T,...((A=T?.dictionary)===null||A===void 0?void 0:A.data)||[]])ZA(B.children,V?.children,s);if(P.isDictionary(B)){let{id:V}=B;if(!s.has(V))T?.dictionary&&s.set(V,T.dictionary);else if(s.get(V)!==T.dictionary)throw new Error("Cannot create Schema containing two different dictionaries with the same Id")}}return s}var a0=class extends zt{constructor(r){let s=r.fields.map(A=>ft({type:A.type})),l=ft({type:new Dt(r.fields),nullCount:0,children:s});super(r,l)}};var fe=class{constructor(){this.bb=null,this.bb_pos=0}__init(r,s){return this.bb_pos=r,this.bb=s,this}static getRootAsMessage(r,s){return(s||new fe).__init(r.readInt32(r.position())+r.position(),r)}static getSizePrefixedRootAsMessage(r,s){return r.setPosition(r.position()+4),(s||new fe).__init(r.readInt32(r.position())+r.position(),r)}version(){let r=this.bb.__offset(this.bb_pos,4);return r?this.bb.readInt16(this.bb_pos+r):Ot.V1}headerType(){let r=this.bb.__offset(this.bb_pos,6);return r?this.bb.readUint8(this.bb_pos+r):Bt.NONE}header(r){let s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__union(r,this.bb_pos+s):null}bodyLength(){let r=this.bb.__offset(this.bb_pos,10);return r?this.bb.readInt64(this.bb_pos+r):BigInt("0")}customMetadata(r,s){let l=this.bb.__offset(this.bb_pos,12);return l?(s||new Pt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+r*4),this.bb):null}customMetadataLength(){let r=this.bb.__offset(this.bb_pos,12);return r?this.bb.__vector_len(this.bb_pos+r):0}static startMessage(r){r.startObject(5)}static addVersion(r,s){r.addFieldInt16(0,s,Ot.V1)}static addHeaderType(r,s){r.addFieldInt8(1,s,Bt.NONE)}static addHeader(r,s){r.addFieldOffset(2,s,0)}static addBodyLength(r,s){r.addFieldInt64(3,s,BigInt("0"))}static addCustomMetadata(r,s){r.addFieldOffset(4,s,0)}static createCustomMetadataVector(r,s){r.startVector(4,s.length,4);for(let l=s.length-1;l>=0;l--)r.addOffset(s[l]);return r.endVector()}static startCustomMetadataVector(r,s){r.startVector(4,s,4)}static endMessage(r){return r.endObject()}static finishMessageBuffer(r,s){r.finish(s)}static finishSizePrefixedMessageBuffer(r,s){r.finish(s,void 0,!0)}static createMessage(r,s,l,A,m,v){return fe.startMessage(r),fe.addVersion(r,s),fe.addHeaderType(r,l),fe.addHeader(r,A),fe.addBodyLength(r,m),fe.addCustomMetadata(r,v),fe.endMessage(r)}};var jf=class extends K{visit(r,s){return r==null||s==null?void 0:super.visit(r,s)}visitNull(r,s){return Bn.startNull(s),Bn.endNull(s)}visitInt(r,s){return we.startInt(s),we.addBitWidth(s,r.bitWidth),we.addIsSigned(s,r.isSigned),we.endInt(s)}visitFloat(r,s){return Qe.startFloatingPoint(s),Qe.addPrecision(s,r.precision),Qe.endFloatingPoint(s)}visitBinary(r,s){return gn.startBinary(s),gn.endBinary(s)}visitLargeBinary(r,s){return wn.startLargeBinary(s),wn.endLargeBinary(s)}visitBool(r,s){return vn.startBool(s),vn.endBool(s)}visitUtf8(r,s){return Sn.startUtf8(s),Sn.endUtf8(s)}visitLargeUtf8(r,s){return _n.startLargeUtf8(s),_n.endLargeUtf8(s)}visitDecimal(r,s){return _e.startDecimal(s),_e.addScale(s,r.scale),_e.addPrecision(s,r.precision),_e.addBitWidth(s,r.bitWidth),_e.endDecimal(s)}visitDate(r,s){return Je.startDate(s),Je.addUnit(s,r.unit),Je.endDate(s)}visitTime(r,s){return Me.startTime(s),Me.addUnit(s,r.unit),Me.addBitWidth(s,r.bitWidth),Me.endTime(s)}visitTimestamp(r,s){let l=r.timezone&&s.createString(r.timezone)||void 0;return Ne.startTimestamp(s),Ne.addUnit(s,r.unit),l!==void 0&&Ne.addTimezone(s,l),Ne.endTimestamp(s)}visitInterval(r,s){return $e.startInterval(s),$e.addUnit(s,r.unit),$e.endInterval(s)}visitDuration(r,s){return Ye.startDuration(s),Ye.addUnit(s,r.unit),Ye.endDuration(s)}visitList(r,s){return Fn.startList(s),Fn.endList(s)}visitStruct(r,s){return In.startStruct_(s),In.endStruct_(s)}visitUnion(r,s){Fe.startTypeIdsVector(s,r.typeIds.length);let l=Fe.createTypeIdsVector(s,r.typeIds);return Fe.startUnion(s),Fe.addMode(s,r.mode),Fe.addTypeIds(s,l),Fe.endUnion(s)}visitDictionary(r,s){let l=this.visit(r.indices,s);return gr.startDictionaryEncoding(s),gr.addId(s,BigInt(r.id)),gr.addIsOrdered(s,r.isOrdered),l!==void 0&&gr.addIndexType(s,l),gr.endDictionaryEncoding(s)}visitFixedSizeBinary(r,s){return Pe.startFixedSizeBinary(s),Pe.addByteWidth(s,r.byteWidth),Pe.endFixedSizeBinary(s)}visitFixedSizeList(r,s){return He.startFixedSizeList(s),He.addListSize(s,r.listSize),He.endFixedSizeList(s)}visitMap(r,s){return qe.startMap(s),qe.addKeysSorted(s,r.keysSorted),qe.endMap(s)}},Zc=new jf;function EA(o,r=new Map){return new _t(tT(o,r),Dc(o.metadata),r)}function Lf(o){return new Ue(o.count,GA(o.columns),CA(o.columns))}function XA(o){return new cr(Lf(o.data),o.id,o.isDelta)}function tT(o,r){return(o.fields||[]).filter(Boolean).map(s=>at.fromJSON(s,r))}function DA(o,r){return(o.children||[]).filter(Boolean).map(s=>at.fromJSON(s,r))}function GA(o){return(o||[]).reduce((r,s)=>[...r,new Er(s.count,eT(s.VALIDITY)),...GA(s.children)],[])}function CA(o,r=[]){for(let s=-1,l=(o||[]).length;++s<l;){let A=o[s];A.VALIDITY&&r.push(new ur(r.length,A.VALIDITY.length)),A.TYPE_ID&&r.push(new ur(r.length,A.TYPE_ID.length)),A.OFFSET&&r.push(new ur(r.length,A.OFFSET.length)),A.DATA&&r.push(new ur(r.length,A.DATA.length)),r=CA(A.children,r)}return r}function eT(o){return(o||[]).reduce((r,s)=>r+ +(s===0),0)}function jA(o,r){let s,l,A,m,v,B;return!r||!(m=o.dictionary)?(v=zA(o,DA(o,r)),A=new at(o.name,v,o.nullable,Dc(o.metadata))):r.has(s=m.id)?(l=(l=m.indexType)?WA(l):new vr,B=new nr(r.get(s),l,s,m.isOrdered),A=new at(o.name,B,o.nullable,Dc(o.metadata))):(l=(l=m.indexType)?WA(l):new vr,r.set(s,v=zA(o,DA(o,r))),B=new nr(v,l,s,m.isOrdered),A=new at(o.name,B,o.nullable,Dc(o.metadata))),A||null}function Dc(o=[]){return new Map(o.map(({key:r,value:s})=>[r,s]))}function WA(o){return new ce(o.isSigned,o.bitWidth)}function zA(o,r){let s=o.type.name;switch(s){case"NONE":return new Be;case"null":return new Be;case"binary":return new kr;case"largebinary":return new Tn;case"utf8":return new Or;case"largeutf8":return new Rn;case"bool":return new Zr;case"list":return new er((r||[])[0]);case"struct":return new Dt(r||[]);case"struct_":return new Dt(r||[])}switch(s){case"int":{let l=o.type;return new ce(l.isSigned,l.bitWidth)}case"floatingpoint":{let l=o.type;return new tr(Wt[l.precision])}case"decimal":{let l=o.type;return new Dr(l.scale,l.precision,l.bitWidth)}case"date":{let l=o.type;return new wr(qt[l.unit])}case"time":{let l=o.type;return new Ee(H[l.unit],l.bitWidth)}case"timestamp":{let l=o.type;return new Xe(H[l.unit],l.timezone)}case"interval":{let l=o.type;return new _r(ue[l.unit])}case"duration":{let l=o.type;return new Un(H[l.unit])}case"union":{let l=o.type,[A,...m]=(l.mode+"").toLowerCase(),v=A.toUpperCase()+m.join("");return new Wr(Xt[v],l.typeIds||[],r||[])}case"fixedsizebinary":{let l=o.type;return new Vn(l.byteWidth)}case"fixedsizelist":{let l=o.type;return new ke(l.listSize,(r||[])[0])}case"map":{let l=o.type;return new rr((r||[])[0],l.keysSorted)}}throw new Error(`Unrecognized type: "${s}"`)}var rT=Cn,nT=ze,Ae=class{static fromJSON(r,s){let l=new Ae(0,Ot.V5,s);return l._createHeader=iT(r,s),l}static decode(r){r=new nT(st(r));let s=fe.getRootAsMessage(r),l=s.bodyLength(),A=s.version(),m=s.headerType(),v=new Ae(l,A,m);return v._createHeader=sT(s,m),v}static encode(r){let s=new rT,l=-1;return r.isSchema()?l=_t.encode(s,r.header()):r.isRecordBatch()?l=Ue.encode(s,r.header()):r.isDictionaryBatch()&&(l=cr.encode(s,r.header())),fe.startMessage(s),fe.addVersion(s,Ot.V5),fe.addHeader(s,l),fe.addHeaderType(s,r.headerType),fe.addBodyLength(s,BigInt(r.bodyLength)),fe.finishMessageBuffer(s,fe.endMessage(s)),s.asUint8Array()}static from(r,s=0){if(r instanceof _t)return new Ae(0,Ot.V5,Bt.Schema,r);if(r instanceof Ue)return new Ae(s,Ot.V5,Bt.RecordBatch,r);if(r instanceof cr)return new Ae(s,Ot.V5,Bt.DictionaryBatch,r);throw new Error(`Unrecognized Message header: ${r}`)}get type(){return this.headerType}get version(){return this._version}get headerType(){return this._headerType}get bodyLength(){return this._bodyLength}header(){return this._createHeader()}isSchema(){return this.headerType===Bt.Schema}isRecordBatch(){return this.headerType===Bt.RecordBatch}isDictionaryBatch(){return this.headerType===Bt.DictionaryBatch}constructor(r,s,l,A){this._version=s,this._headerType=l,this.body=new Uint8Array(0),A&&(this._createHeader=()=>A),this._bodyLength=Ut(r)}},Ue=class{get nodes(){return this._nodes}get length(){return this._length}get buffers(){return this._buffers}constructor(r,s,l){this._nodes=s,this._buffers=l,this._length=Ut(r)}},cr=class{get id(){return this._id}get data(){return this._data}get isDelta(){return this._isDelta}get length(){return this.data.length}get nodes(){return this.data.nodes}get buffers(){return this.data.buffers}constructor(r,s,l=!1){this._data=r,this._isDelta=l,this._id=Ut(s)}},ur=class{constructor(r,s){this.offset=Ut(r),this.length=Ut(s)}},Er=class{constructor(r,s){this.length=Ut(r),this.nullCount=Ut(s)}};function iT(o,r){return()=>{switch(r){case Bt.Schema:return _t.fromJSON(o);case Bt.RecordBatch:return Ue.fromJSON(o);case Bt.DictionaryBatch:return cr.fromJSON(o)}throw new Error(`Unrecognized Message type: { name: ${Bt[r]}, type: ${r} }`)}}function sT(o,r){return()=>{switch(r){case Bt.Schema:return _t.decode(o.header(new ie),new Map,o.version());case Bt.RecordBatch:return Ue.decode(o.header(new be),o.version());case Bt.DictionaryBatch:return cr.decode(o.header(new Nr),o.version())}throw new Error(`Unrecognized Message type: { name: ${Bt[r]}, type: ${r} }`)}}at.encode=mT;at.decode=AT;at.fromJSON=jA;_t.encode=pT;_t.decode=oT;_t.fromJSON=EA;Ue.encode=yT;Ue.decode=uT;Ue.fromJSON=Lf;cr.encode=gT;cr.decode=cT;cr.fromJSON=XA;Er.encode=vT;Er.decode=fT;ur.encode=wT;ur.decode=lT;function oT(o,r=new Map,s=Ot.V5){let l=dT(o,r);return new _t(l,Wc(o),r,s)}function uT(o,r=Ot.V5){if(o.compression()!==null)throw new Error("Record batch compression not implemented");return new Ue(o.length(),aT(o),hT(o,r))}function cT(o,r=Ot.V5){return new cr(Ue.decode(o.data(),r),o.id(),o.isDelta())}function lT(o){return new ur(o.offset(),o.length())}function fT(o){return new Er(o.length(),o.nullCount())}function aT(o){let r=[];for(let s,l=-1,A=-1,m=o.nodesLength();++l<m;)(s=o.nodes(l))&&(r[++A]=Er.decode(s));return r}function hT(o,r){let s=[];for(let l,A=-1,m=-1,v=o.buffersLength();++A<v;)(l=o.buffers(A))&&(r<Ot.V4&&(l.bb_pos+=8*(A+1)),s[++m]=ur.decode(l));return s}function dT(o,r){let s=[];for(let l,A=-1,m=-1,v=o.fieldsLength();++A<v;)(l=o.fields(A))&&(s[++m]=at.decode(l,r));return s}function LA(o,r){let s=[];for(let l,A=-1,m=-1,v=o.childrenLength();++A<v;)(l=o.children(A))&&(s[++m]=at.decode(l,r));return s}function AT(o,r){let s,l,A,m,v,B;return!r||!(B=o.dictionary())?(A=YA(o,LA(o,r)),l=new at(o.name(),A,o.nullable(),Wc(o))):r.has(s=Ut(B.id()))?(m=(m=B.indexType())?JA(m):new vr,v=new nr(r.get(s),m,s,B.isOrdered()),l=new at(o.name(),v,o.nullable(),Wc(o))):(m=(m=B.indexType())?JA(m):new vr,r.set(s,A=YA(o,LA(o,r))),v=new nr(A,m,s,B.isOrdered()),l=new at(o.name(),v,o.nullable(),Wc(o))),l||null}function Wc(o){let r=new Map;if(o)for(let s,l,A=-1,m=Math.trunc(o.customMetadataLength());++A<m;)(s=o.customMetadata(A))&&(l=s.key())!=null&&r.set(l,s.value());return r}function JA(o){return new ce(o.isSigned(),o.bitWidth())}function YA(o,r){let s=o.typeType();switch(s){case Gt.NONE:return new Be;case Gt.Null:return new Be;case Gt.Binary:return new kr;case Gt.LargeBinary:return new Tn;case Gt.Utf8:return new Or;case Gt.LargeUtf8:return new Rn;case Gt.Bool:return new Zr;case Gt.List:return new er((r||[])[0]);case Gt.Struct_:return new Dt(r||[])}switch(s){case Gt.Int:{let l=o.type(new we);return new ce(l.isSigned(),l.bitWidth())}case Gt.FloatingPoint:{let l=o.type(new Qe);return new tr(l.precision())}case Gt.Decimal:{let l=o.type(new _e);return new Dr(l.scale(),l.precision(),l.bitWidth())}case Gt.Date:{let l=o.type(new Je);return new wr(l.unit())}case Gt.Time:{let l=o.type(new Me);return new Ee(l.unit(),l.bitWidth())}case Gt.Timestamp:{let l=o.type(new Ne);return new Xe(l.unit(),l.timezone())}case Gt.Interval:{let l=o.type(new $e);return new _r(l.unit())}case Gt.Duration:{let l=o.type(new Ye);return new Un(l.unit())}case Gt.Union:{let l=o.type(new Fe);return new Wr(l.mode(),l.typeIdsArray()||[],r||[])}case Gt.FixedSizeBinary:{let l=o.type(new Pe);return new Vn(l.byteWidth())}case Gt.FixedSizeList:{let l=o.type(new He);return new ke(l.listSize(),(r||[])[0])}case Gt.Map:{let l=o.type(new qe);return new rr((r||[])[0],l.keysSorted())}}throw new Error(`Unrecognized type: "${Gt[s]}" (${s})`)}function pT(o,r){let s=r.fields.map(m=>at.encode(o,m));ie.startFieldsVector(o,s.length);let l=ie.createFieldsVector(o,s),A=r.metadata&&r.metadata.size>0?ie.createCustomMetadataVector(o,[...r.metadata].map(([m,v])=>{let B=o.createString(`${m}`),T=o.createString(`${v}`);return Pt.startKeyValue(o),Pt.addKey(o,B),Pt.addValue(o,T),Pt.endKeyValue(o)})):-1;return ie.startSchema(o),ie.addFields(o,l),ie.addEndianness(o,_T?ai.Little:ai.Big),A!==-1&&ie.addCustomMetadata(o,A),ie.endSchema(o)}function mT(o,r){let s=-1,l=-1,A=-1,m=r.type,v=r.typeId;P.isDictionary(m)?(v=m.dictionary.typeId,A=Zc.visit(m,o),l=Zc.visit(m.dictionary,o)):l=Zc.visit(m,o);let B=(m.children||[]).map(O=>at.encode(o,O)),T=ae.createChildrenVector(o,B),V=r.metadata&&r.metadata.size>0?ae.createCustomMetadataVector(o,[...r.metadata].map(([O,C])=>{let yt=o.createString(`${O}`),mt=o.createString(`${C}`);return Pt.startKeyValue(o),Pt.addKey(o,yt),Pt.addValue(o,mt),Pt.endKeyValue(o)})):-1;return r.name&&(s=o.createString(r.name)),ae.startField(o),ae.addType(o,l),ae.addTypeType(o,v),ae.addChildren(o,T),ae.addNullable(o,!!r.nullable),s!==-1&&ae.addName(o,s),A!==-1&&ae.addDictionary(o,A),V!==-1&&ae.addCustomMetadata(o,V),ae.endField(o)}function yT(o,r){let s=r.nodes||[],l=r.buffers||[];be.startNodesVector(o,s.length);for(let v of s.slice().reverse())Er.encode(o,v);let A=o.endVector();be.startBuffersVector(o,l.length);for(let v of l.slice().reverse())ur.encode(o,v);let m=o.endVector();return be.startRecordBatch(o),be.addLength(o,BigInt(r.length)),be.addNodes(o,A),be.addBuffers(o,m),be.endRecordBatch(o)}function gT(o,r){let s=Ue.encode(o,r.data);return Nr.startDictionaryBatch(o),Nr.addId(o,BigInt(r.id)),Nr.addIsDelta(o,r.isDelta),Nr.addData(o,s),Nr.endDictionaryBatch(o)}function vT(o,r){return E0.createFieldNode(o,BigInt(r.length),BigInt(r.nullCount))}function wT(o,r){return z0.createBuffer(o,BigInt(r.offset),BigInt(r.length))}var _T=(()=>{let o=new ArrayBuffer(2);return new DataView(o).setInt16(0,256,!0),new Int16Array(o)[0]===256})();var Yf=o=>`Expected ${Bt[o]} Message in stream, but was null or length 0.`,Pf=o=>`Header pointer of flatbuffer-encoded ${Bt[o]} Message is null or length 0.`,PA=(o,r)=>`Expected to read ${o} metadata bytes, but only read ${r}.`,HA=(o,r)=>`Expected to read ${o} bytes for message body, but only read ${r}.`,ys=class{constructor(r){this.source=r instanceof Mn?r:new Mn(r)}[Symbol.iterator](){return this}next(){let r;return(r=this.readMetadataLength()).done?Ht:r.value===-1&&(r=this.readMetadataLength()).done?Ht:(r=this.readMetadata(r.value)).done?Ht:r}throw(r){return this.source.throw(r)}return(r){return this.source.return(r)}readMessage(r){let s;if((s=this.next()).done)return null;if(r!=null&&s.value.headerType!==r)throw new Error(Yf(r));return s.value}readMessageBody(r){if(r<=0)return new Uint8Array(0);let s=st(this.source.read(r));if(s.byteLength<r)throw new Error(HA(r,s.byteLength));return s.byteOffset%8===0&&s.byteOffset+s.byteLength<=s.buffer.byteLength?s:s.slice()}readSchema(r=!1){let s=Bt.Schema,l=this.readMessage(s),A=l?.header();if(r&&!A)throw new Error(Pf(s));return A}readMetadataLength(){let r=this.source.read(zc),s=r&&new ze(r),l=s?.readInt32(0)||0;return{done:l===0,value:l}}readMetadata(r){let s=this.source.read(r);if(!s)return Ht;if(s.byteLength<r)throw new Error(PA(r,s.byteLength));return{done:!1,value:Ae.decode(s)}}},Do=class{constructor(r,s){this.source=r instanceof sr?r:xu(r)?new mi(r,s):new sr(r)}[Symbol.asyncIterator](){return this}next(){return Q(this,void 0,void 0,function*(){let r;return(r=yield this.readMetadataLength()).done?Ht:r.value===-1&&(r=yield this.readMetadataLength()).done?Ht:(r=yield this.readMetadata(r.value)).done?Ht:r})}throw(r){return Q(this,void 0,void 0,function*(){return yield this.source.throw(r)})}return(r){return Q(this,void 0,void 0,function*(){return yield this.source.return(r)})}readMessage(r){return Q(this,void 0,void 0,function*(){let s;if((s=yield this.next()).done)return null;if(r!=null&&s.value.headerType!==r)throw new Error(Yf(r));return s.value})}readMessageBody(r){return Q(this,void 0,void 0,function*(){if(r<=0)return new Uint8Array(0);let s=st(yield this.source.read(r));if(s.byteLength<r)throw new Error(HA(r,s.byteLength));return s.byteOffset%8===0&&s.byteOffset+s.byteLength<=s.buffer.byteLength?s:s.slice()})}readSchema(){return Q(this,arguments,void 0,function*(r=!1){let s=Bt.Schema,l=yield this.readMessage(s),A=l?.header();if(r&&!A)throw new Error(Pf(s));return A})}readMetadataLength(){return Q(this,void 0,void 0,function*(){let r=yield this.source.read(zc),s=r&&new ze(r),l=s?.readInt32(0)||0;return{done:l===0,value:l}})}readMetadata(r){return Q(this,void 0,void 0,function*(){let s=yield this.source.read(r);if(!s)return Ht;if(s.byteLength<r)throw new Error(PA(r,s.byteLength));return{done:!1,value:Ae.decode(s)}})}},Wo=class extends ys{constructor(r){super(new Uint8Array(0)),this._schema=!1,this._body=[],this._batchIndex=0,this._dictionaryIndex=0,this._json=r instanceof lo?r:new lo(r)}next(){let{_json:r}=this;if(!this._schema)return this._schema=!0,{done:!1,value:Ae.fromJSON(r.schema,Bt.Schema)};if(this._dictionaryIndex<r.dictionaries.length){let s=r.dictionaries[this._dictionaryIndex++];return this._body=s.data.columns,{done:!1,value:Ae.fromJSON(s,Bt.DictionaryBatch)}}if(this._batchIndex<r.batches.length){let s=r.batches[this._batchIndex++];return this._body=s.columns,{done:!1,value:Ae.fromJSON(s,Bt.RecordBatch)}}return this._body=[],Ht}readMessageBody(r){return s(this._body);function s(l){return(l||[]).reduce((A,m)=>[...A,...m.VALIDITY&&[m.VALIDITY]||[],...m.TYPE_ID&&[m.TYPE_ID]||[],...m.OFFSET&&[m.OFFSET]||[],...m.DATA&&[m.DATA]||[],...s(m.children)],[])}}readMessage(r){let s;if((s=this.next()).done)return null;if(r!=null&&s.value.headerType!==r)throw new Error(Yf(r));return s.value}readSchema(){let r=Bt.Schema,s=this.readMessage(r),l=s?.header();if(!s||!l)throw new Error(Pf(r));return l}},zc=4,Jf="ARROW1",gs=new Uint8Array(Jf.length);for(let o=0;o<Jf.length;o+=1)gs[o]=Jf.codePointAt(o);function Ec(o,r=0){for(let s=-1,l=gs.length;++s<l;)if(gs[s]!==o[r+s])return!1;return!0}var vs=gs.length,Hf=vs+zc,QA=vs*2+zc;var Ce=class extends i0{constructor(r){super(),this._impl=r}get closed(){return this._impl.closed}get schema(){return this._impl.schema}get autoDestroy(){return this._impl.autoDestroy}get dictionaries(){return this._impl.dictionaries}get numDictionaries(){return this._impl.numDictionaries}get numRecordBatches(){return this._impl.numRecordBatches}get footer(){return this._impl.isFile()?this._impl.footer:null}isSync(){return this._impl.isSync()}isAsync(){return this._impl.isAsync()}isFile(){return this._impl.isFile()}isStream(){return this._impl.isStream()}next(){return this._impl.next()}throw(r){return this._impl.throw(r)}return(r){return this._impl.return(r)}cancel(){return this._impl.cancel()}reset(r){return this._impl.reset(r),this._DOMStream=void 0,this._nodeStream=void 0,this}open(r){let s=this._impl.open(r);return Lr(s)?s.then(()=>this):this}readRecordBatch(r){return this._impl.isFile()?this._impl.readRecordBatch(r):null}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}toDOMStream(){return Te.toDOMStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this})}toNodeStream(){return Te.toNodeStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this},{objectMode:!0})}static throughNode(r){throw new Error('"throughNode" not available in this environment')}static throughDOM(r,s){throw new Error('"throughDOM" not available in this environment')}static from(r){return r instanceof Ce?r:Uu(r)?BT(r):xu(r)?TT(r):Lr(r)?(()=>Q(this,void 0,void 0,function*(){return yield Ce.from(yield r)}))():bu(r)||$s(r)||Nu(r)||br(r)?ST(new sr(r)):IT(new Mn(r))}static readAll(r){return r instanceof Ce?r.isSync()?$A(r):qA(r):Uu(r)||ArrayBuffer.isView(r)||Jr(r)||Vu(r)?$A(r):qA(r)}},qn=class extends Ce{constructor(r){super(r),this._impl=r}readAll(){return[...this]}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return mr(this,arguments,function*(){yield pt(yield*D0(jr(this[Symbol.iterator]())))})}},h0=class extends Ce{constructor(r){super(r),this._impl=r}readAll(){return Q(this,void 0,void 0,function*(){var r,s,l,A;let m=new Array;try{for(var v=!0,B=jr(this),T;T=yield B.next(),r=T.done,!r;v=!0){A=T.value,v=!1;let V=A;m.push(V)}}catch(V){s={error:V}}finally{try{!v&&!r&&(l=B.return)&&(yield l.call(B))}finally{if(s)throw s.error}}return m})}[Symbol.iterator](){throw new Error("AsyncRecordBatchStreamReader is not Iterable")}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}},d0=class extends qn{constructor(r){super(r),this._impl=r}},Xc=class extends h0{constructor(r){super(r),this._impl=r}},Gc=class{get numDictionaries(){return this._dictionaryIndex}get numRecordBatches(){return this._recordBatchIndex}constructor(r=new Map){this.closed=!1,this.autoDestroy=!0,this._dictionaryIndex=0,this._recordBatchIndex=0,this.dictionaries=r}isSync(){return!1}isAsync(){return!1}isFile(){return!1}isStream(){return!1}reset(r){return this._dictionaryIndex=0,this._recordBatchIndex=0,this.schema=r,this.dictionaries=new Map,this}_loadRecordBatch(r,s){let l=this._loadVectors(r,s,this.schema.fields),A=ft({type:new Dt(this.schema.fields),length:r.length,children:l});return new zt(this.schema,A)}_loadDictionaryBatch(r,s){let{id:l,isDelta:A}=r,{dictionaries:m,schema:v}=this,B=m.get(l),T=v.dictionaries.get(l),V=this._loadVectors(r.data,s,[T]);return(B&&A?B.concat(new At(V)):new At(V)).memoize()}_loadVectors(r,s,l){return new ho(s,r.nodes,r.buffers,this.dictionaries,this.schema.metadataVersion).visitMany(l)}},ws=class extends Gc{constructor(r,s){super(s),this._reader=Uu(r)?new Wo(this._handle=r):new ys(this._handle=r)}isSync(){return!0}isStream(){return!0}[Symbol.iterator](){return this}cancel(){!this.closed&&(this.closed=!0)&&(this.reset()._reader.return(),this._reader=null,this.dictionaries=null)}open(r){return this.closed||(this.autoDestroy=KA(this,r),this.schema||(this.schema=this._reader.readSchema())||this.cancel()),this}throw(r){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.throw(r):Ht}return(r){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.return(r):Ht}next(){if(this.closed)return Ht;let r,{_reader:s}=this;for(;r=this._readNextMessageAndValidate();)if(r.isSchema())this.reset(r.header());else if(r.isRecordBatch()){this._recordBatchIndex++;let l=r.header(),A=s.readMessageBody(r.bodyLength);return{done:!1,value:this._loadRecordBatch(l,A)}}else if(r.isDictionaryBatch()){this._dictionaryIndex++;let l=r.header(),A=s.readMessageBody(r.bodyLength),m=this._loadDictionaryBatch(l,A);this.dictionaries.set(l.id,m)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new a0(this.schema)}):this.return()}_readNextMessageAndValidate(r){return this._reader.readMessage(r)}},_s=class extends Gc{constructor(r,s){super(s),this._reader=new Do(this._handle=r)}isAsync(){return!0}isStream(){return!0}[Symbol.asyncIterator](){return this}cancel(){return Q(this,void 0,void 0,function*(){!this.closed&&(this.closed=!0)&&(yield this.reset()._reader.return(),this._reader=null,this.dictionaries=null)})}open(r){return Q(this,void 0,void 0,function*(){return this.closed||(this.autoDestroy=KA(this,r),this.schema||(this.schema=yield this._reader.readSchema())||(yield this.cancel())),this})}throw(r){return Q(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.throw(r):Ht})}return(r){return Q(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.return(r):Ht})}next(){return Q(this,void 0,void 0,function*(){if(this.closed)return Ht;let r,{_reader:s}=this;for(;r=yield this._readNextMessageAndValidate();)if(r.isSchema())yield this.reset(r.header());else if(r.isRecordBatch()){this._recordBatchIndex++;let l=r.header(),A=yield s.readMessageBody(r.bodyLength);return{done:!1,value:this._loadRecordBatch(l,A)}}else if(r.isDictionaryBatch()){this._dictionaryIndex++;let l=r.header(),A=yield s.readMessageBody(r.bodyLength),m=this._loadDictionaryBatch(l,A);this.dictionaries.set(l.id,m)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new a0(this.schema)}):yield this.return()})}_readNextMessageAndValidate(r){return Q(this,void 0,void 0,function*(){return yield this._reader.readMessage(r)})}},Cc=class extends ws{get footer(){return this._footer}get numDictionaries(){return this._footer?this._footer.numDictionaries:0}get numRecordBatches(){return this._footer?this._footer.numRecordBatches:0}constructor(r,s){super(r instanceof fo?r:new fo(r),s)}isSync(){return!0}isFile(){return!0}open(r){if(!this.closed&&!this._footer){this.schema=(this._footer=this._readFooter()).schema;for(let s of this._footer.dictionaryBatches())s&&this._readDictionaryBatch(this._dictionaryIndex++)}return super.open(r)}readRecordBatch(r){var s;if(this.closed)return null;this._footer||this.open();let l=(s=this._footer)===null||s===void 0?void 0:s.getRecordBatch(r);if(l&&this._handle.seek(l.offset)){let A=this._reader.readMessage(Bt.RecordBatch);if(A?.isRecordBatch()){let m=A.header(),v=this._reader.readMessageBody(A.bodyLength);return this._loadRecordBatch(m,v)}}return null}_readDictionaryBatch(r){var s;let l=(s=this._footer)===null||s===void 0?void 0:s.getDictionaryBatch(r);if(l&&this._handle.seek(l.offset)){let A=this._reader.readMessage(Bt.DictionaryBatch);if(A?.isDictionaryBatch()){let m=A.header(),v=this._reader.readMessageBody(A.bodyLength),B=this._loadDictionaryBatch(m,v);this.dictionaries.set(m.id,B)}}}_readFooter(){let{_handle:r}=this,s=r.size-Hf,l=r.readInt32(s),A=r.readAt(s-l,l);return Jn.decode(A)}_readNextMessageAndValidate(r){var s;if(this._footer||this.open(),this._footer&&this._recordBatchIndex<this.numRecordBatches){let l=(s=this._footer)===null||s===void 0?void 0:s.getRecordBatch(this._recordBatchIndex);if(l&&this._handle.seek(l.offset))return this._reader.readMessage(r)}return null}},Qf=class extends _s{get footer(){return this._footer}get numDictionaries(){return this._footer?this._footer.numDictionaries:0}get numRecordBatches(){return this._footer?this._footer.numRecordBatches:0}constructor(r,...s){let l=typeof s[0]!="number"?s.shift():void 0,A=s[0]instanceof Map?s.shift():void 0;super(r instanceof mi?r:new mi(r,l),A)}isFile(){return!0}isAsync(){return!0}open(r){let s=Object.create(null,{open:{get:()=>super.open}});return Q(this,void 0,void 0,function*(){if(!this.closed&&!this._footer){this.schema=(this._footer=yield this._readFooter()).schema;for(let l of this._footer.dictionaryBatches())l&&(yield this._readDictionaryBatch(this._dictionaryIndex++))}return yield s.open.call(this,r)})}readRecordBatch(r){return Q(this,void 0,void 0,function*(){var s;if(this.closed)return null;this._footer||(yield this.open());let l=(s=this._footer)===null||s===void 0?void 0:s.getRecordBatch(r);if(l&&(yield this._handle.seek(l.offset))){let A=yield this._reader.readMessage(Bt.RecordBatch);if(A?.isRecordBatch()){let m=A.header(),v=yield this._reader.readMessageBody(A.bodyLength);return this._loadRecordBatch(m,v)}}return null})}_readDictionaryBatch(r){return Q(this,void 0,void 0,function*(){var s;let l=(s=this._footer)===null||s===void 0?void 0:s.getDictionaryBatch(r);if(l&&(yield this._handle.seek(l.offset))){let A=yield this._reader.readMessage(Bt.DictionaryBatch);if(A?.isDictionaryBatch()){let m=A.header(),v=yield this._reader.readMessageBody(A.bodyLength),B=this._loadDictionaryBatch(m,v);this.dictionaries.set(m.id,B)}}})}_readFooter(){return Q(this,void 0,void 0,function*(){let{_handle:r}=this;r._pending&&(yield r._pending);let s=r.size-Hf,l=yield r.readInt32(s),A=yield r.readAt(s-l,l);return Jn.decode(A)})}_readNextMessageAndValidate(r){return Q(this,void 0,void 0,function*(){if(this._footer||(yield this.open()),this._footer&&this._recordBatchIndex<this.numRecordBatches){let s=this._footer.getRecordBatch(this._recordBatchIndex);if(s&&(yield this._handle.seek(s.offset)))return yield this._reader.readMessage(r)}return null})}},$f=class extends ws{constructor(r,s){super(r,s)}_loadVectors(r,s,l){return new dc(s,r.nodes,r.buffers,this.dictionaries,this.schema.metadataVersion).visitMany(l)}};function KA(o,r){return r&&typeof r.autoDestroy=="boolean"?r.autoDestroy:o.autoDestroy}function*$A(o){let r=Ce.from(o);try{if(!r.open({autoDestroy:!1}).closed)do yield r;while(!r.reset().open().closed)}finally{r.cancel()}}function qA(o){return mr(this,arguments,function*(){let s=yield pt(Ce.from(o));try{if(!(yield pt(s.open({autoDestroy:!1}))).closed)do yield yield pt(s);while(!(yield pt(s.reset().open())).closed)}finally{yield pt(s.cancel())}})}function BT(o){return new qn(new $f(o))}function IT(o){let r=o.peek(vs+7&-8);return r&&r.byteLength>=4?Ec(r)?new d0(new Cc(o.read())):new qn(new ws(o)):new qn(new ws(function*(){}()))}function ST(o){return Q(this,void 0,void 0,function*(){let r=yield o.peek(vs+7&-8);return r&&r.byteLength>=4?Ec(r)?new d0(new Cc(yield o.read())):new h0(new _s(o)):new h0(new _s(function(){return mr(this,arguments,function*(){})}()))})}function TT(o){return Q(this,void 0,void 0,function*(){let{size:r}=yield o.stat(),s=new mi(o,r);return r>=QA&&Ec(yield s.readAt(0,vs+7&-8))?new Xc(new Qf(s)):new h0(new _s(s))})}var Qt=class extends K{static assemble(...r){let s=A=>A.flatMap(m=>Array.isArray(m)?s(m):m instanceof zt?m.data.children:m.data),l=new Qt;return l.visitMany(s(r)),l}constructor(){super(),this._byteLength=0,this._nodes=[],this._buffers=[],this._bufferRegions=[]}visit(r){if(r instanceof At)return this.visitMany(r.data),this;let{type:s}=r;if(!P.isDictionary(s)){let{length:l}=r;if(l>2147483647)throw new RangeError("Cannot write arrays larger than 2^31 - 1 in length");if(P.isUnion(s))this.nodes.push(new Er(l,0));else{let{nullCount:A}=r;P.isNull(s)||en.call(this,A<=0?new Uint8Array(0):Ki(r.offset,l,r.nullBitmap)),this.nodes.push(new Er(l,A))}}return super.visit(r)}visitNull(r){return this}visitDictionary(r){return this.visit(r.clone(r.type.indices))}get nodes(){return this._nodes}get buffers(){return this._buffers}get byteLength(){return this._byteLength}get bufferRegions(){return this._bufferRegions}};function en(o){let r=o.byteLength+7&-8;return this.buffers.push(o),this.bufferRegions.push(new ur(this._byteLength,r)),this._byteLength+=r,this}function RT(o){var r;let{type:s,length:l,typeIds:A,valueOffsets:m}=o;if(en.call(this,A),s.mode===Xt.Sparse)return qf.call(this,o);if(s.mode===Xt.Dense){if(o.offset<=0)return en.call(this,m),qf.call(this,o);{let v=new Int32Array(l),B=Object.create(null),T=Object.create(null);for(let V,O,C=-1;++C<l;)(V=A[C])!==void 0&&((O=B[V])===void 0&&(O=B[V]=m[C]),v[C]=m[C]-O,T[V]=((r=T[V])!==null&&r!==void 0?r:0)+1);en.call(this,v),this.visitMany(o.children.map((V,O)=>{let C=s.typeIds[O],yt=B[C],mt=T[C];return V.slice(yt,Math.min(l,mt))}))}}return this}function UT(o){let r;return o.nullCount>=o.length?en.call(this,new Uint8Array(0)):(r=o.values)instanceof Uint8Array?en.call(this,Ki(o.offset,o.length,r)):en.call(this,t0(o.values))}function Kn(o){return en.call(this,o.values.subarray(0,o.length*o.stride))}function jc(o){let{length:r,values:s,valueOffsets:l}=o,A=Ut(l[0]),m=Ut(l[r]),v=Math.min(m-A,s.byteLength-A);return en.call(this,Ou(-A,r+1,l)),en.call(this,s.subarray(A,A+v)),this}function Kf(o){let{length:r,valueOffsets:s}=o;if(s){let{[0]:l,[r]:A}=s;return en.call(this,Ou(-l,r+1,s)),this.visit(o.children[0].slice(l,A-l))}return this.visit(o.children[0])}function qf(o){return this.visitMany(o.type.children.map((r,s)=>o.children[s]).filter(Boolean))[0]}Qt.prototype.visitBool=UT;Qt.prototype.visitInt=Kn;Qt.prototype.visitFloat=Kn;Qt.prototype.visitUtf8=jc;Qt.prototype.visitLargeUtf8=jc;Qt.prototype.visitBinary=jc;Qt.prototype.visitLargeBinary=jc;Qt.prototype.visitFixedSizeBinary=Kn;Qt.prototype.visitDate=Kn;Qt.prototype.visitTimestamp=Kn;Qt.prototype.visitTime=Kn;Qt.prototype.visitDecimal=Kn;Qt.prototype.visitList=Kf;Qt.prototype.visitStruct=qf;Qt.prototype.visitUnion=RT;Qt.prototype.visitInterval=Kn;Qt.prototype.visitDuration=Kn;Qt.prototype.visitFixedSizeList=Kf;Qt.prototype.visitMap=Kf;var A0=class extends i0{static throughNode(r){throw new Error('"throughNode" not available in this environment')}static throughDOM(r,s){throw new Error('"throughDOM" not available in this environment')}constructor(r){super(),this._position=0,this._started=!1,this._sink=new bn,this._schema=null,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,We(r)||(r={autoDestroy:!0,writeLegacyIpcFormat:!1}),this._autoDestroy=typeof r.autoDestroy=="boolean"?r.autoDestroy:!0,this._writeLegacyIpcFormat=typeof r.writeLegacyIpcFormat=="boolean"?r.writeLegacyIpcFormat:!1}toString(r=!1){return this._sink.toString(r)}toUint8Array(r=!1){return this._sink.toUint8Array(r)}writeAll(r){return Lr(r)?r.then(s=>this.writeAll(s)):br(r)?ea(this,r):ta(this,r)}get closed(){return this._sink.closed}[Symbol.asyncIterator](){return this._sink[Symbol.asyncIterator]()}toDOMStream(r){return this._sink.toDOMStream(r)}toNodeStream(r){return this._sink.toNodeStream(r)}close(){return this.reset()._sink.close()}abort(r){return this.reset()._sink.abort(r)}finish(){return this._autoDestroy?this.close():this.reset(this._sink,this._schema),this}reset(r=this._sink,s=null){return r===this._sink||r instanceof bn?this._sink=r:(this._sink=new bn,r&&pd(r)?this.toDOMStream({type:"bytes"}).pipeTo(r):r&&md(r)&&this.toNodeStream({objectMode:!1}).pipe(r)),this._started&&this._schema&&this._writeFooter(this._schema),this._started=!1,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,(!s||!f0(s,this._schema))&&(s==null?(this._position=0,this._schema=null):(this._started=!0,this._schema=s,this._writeSchema(s))),this}write(r){let s=null;if(this._sink){if(r==null)return this.finish()&&void 0;if(r instanceof le&&!(s=r.schema))return this.finish()&&void 0;if(r instanceof zt&&!(s=r.schema))return this.finish()&&void 0}else throw new Error("RecordBatchWriter is closed");if(s&&!f0(s,this._schema)){if(this._started&&this._autoDestroy)return this.close();this.reset(this._sink,s)}r instanceof zt?r instanceof a0||this._writeRecordBatch(r):r instanceof le?this.writeAll(r.batches):Jr(r)&&this.writeAll(r)}_writeMessage(r,s=8){let l=s-1,A=Ae.encode(r),m=A.byteLength,v=this._writeLegacyIpcFormat?4:8,B=m+v+l&~l,T=B-m-v;return r.headerType===Bt.RecordBatch?this._recordBatchBlocks.push(new tn(B,r.bodyLength,this._position)):r.headerType===Bt.DictionaryBatch&&this._dictionaryBlocks.push(new tn(B,r.bodyLength,this._position)),this._writeLegacyIpcFormat||this._write(Int32Array.of(-1)),this._write(Int32Array.of(B-v)),m>0&&this._write(A),this._writePadding(T)}_write(r){if(this._started){let s=st(r);s&&s.byteLength>0&&(this._sink.write(s),this._position+=s.byteLength)}return this}_writeSchema(r){return this._writeMessage(Ae.from(r))}_writeFooter(r){return this._writeLegacyIpcFormat?this._write(Int32Array.of(0)):this._write(Int32Array.of(-1,0))}_writeMagic(){return this._write(gs)}_writePadding(r){return r>0?this._write(new Uint8Array(r)):this}_writeRecordBatch(r){let{byteLength:s,nodes:l,bufferRegions:A,buffers:m}=Qt.assemble(r),v=new Ue(r.numRows,l,A),B=Ae.from(v,s);return this._writeDictionaries(r)._writeMessage(B)._writeBodyBuffers(m)}_writeDictionaryBatch(r,s,l=!1){let{byteLength:A,nodes:m,bufferRegions:v,buffers:B}=Qt.assemble(new At([r])),T=new Ue(r.length,m,v),V=new cr(T,s,l),O=Ae.from(V,A);return this._writeMessage(O)._writeBodyBuffers(B)}_writeBodyBuffers(r){let s,l,A;for(let m=-1,v=r.length;++m<v;)(s=r[m])&&(l=s.byteLength)>0&&(this._write(s),(A=(l+7&-8)-l)>0&&this._writePadding(A));return this}_writeDictionaries(r){var s,l;for(let[A,m]of r.dictionaries){let v=(s=m?.data)!==null&&s!==void 0?s:[],B=this._seenDictionaries.get(A),T=(l=this._dictionaryDeltaOffsets.get(A))!==null&&l!==void 0?l:0;if(!B||B.data[0]!==v[0])for(let[V,O]of v.entries())this._writeDictionaryBatch(O,A,V>0);else if(T<v.length)for(let V of v.slice(T))this._writeDictionaryBatch(V,A,!0);this._seenDictionaries.set(A,m),this._dictionaryDeltaOffsets.set(A,v.length)}return this}},p0=class extends A0{static writeAll(r,s){let l=new p0(s);return Lr(r)?r.then(A=>l.writeAll(A)):br(r)?ea(l,r):ta(l,r)}},m0=class extends A0{static writeAll(r){let s=new m0;return Lr(r)?r.then(l=>s.writeAll(l)):br(r)?ea(s,r):ta(s,r)}constructor(){super(),this._autoDestroy=!0}_writeSchema(r){return this._writeMagic()._writePadding(2)}_writeDictionaryBatch(r,s,l=!1){if(!l&&this._seenDictionaries.has(s))throw new Error("The Arrow File format does not support replacement dictionaries. ");return super._writeDictionaryBatch(r,s,l)}_writeFooter(r){let s=Jn.encode(new Jn(r,Ot.V5,this._recordBatchBlocks,this._dictionaryBlocks));return super._writeFooter(r)._write(s)._write(Int32Array.of(s.byteLength))._writeMagic()}};function ta(o,r){let s=r;r instanceof le&&(s=r.batches,o.reset(void 0,r.schema));for(let l of s)o.write(l);return o.finish()}function ea(o,r){return Q(this,void 0,void 0,function*(){var s,l,A,m,v,B,T;try{for(s=!0,l=jr(r);A=yield l.next(),m=A.done,!m;s=!0){T=A.value,s=!1;let V=T;o.write(V)}}catch(V){v={error:V}}finally{try{!s&&!m&&(B=l.return)&&(yield B.call(l))}finally{if(v)throw v.error}}return o.finish()})}function tp(o,r){if(br(o))return xT(o,r);if(Jr(o))return VT(o,r);throw new Error("toDOMStream() must be called with an Iterable or AsyncIterable")}function VT(o,r){let s=null,l=r?.type==="bytes"||!1,A=r?.highWaterMark||Math.pow(2,24);return new ReadableStream(Object.assign(Object.assign({},r),{start(v){m(v,s||(s=o[Symbol.iterator]()))},pull(v){s?m(v,s):v.close()},cancel(){(s?.return&&s.return()||!0)&&(s=null)}}),Object.assign({highWaterMark:l?A:void 0},r));function m(v,B){let T,V=null,O=v.desiredSize||null;for(;!(V=B.next(l?O:null)).done;)if(ArrayBuffer.isView(V.value)&&(T=st(V.value))&&(O!=null&&l&&(O=O-T.byteLength+1),V.value=T),v.enqueue(V.value),O!=null&&--O<=0)return;v.close()}}function xT(o,r){let s=null,l=r?.type==="bytes"||!1,A=r?.highWaterMark||Math.pow(2,24);return new ReadableStream(Object.assign(Object.assign({},r),{start(v){return Q(this,void 0,void 0,function*(){yield m(v,s||(s=o[Symbol.asyncIterator]()))})},pull(v){return Q(this,void 0,void 0,function*(){s?yield m(v,s):v.close()})},cancel(){return Q(this,void 0,void 0,function*(){(s?.return&&(yield s.return())||!0)&&(s=null)})}}),Object.assign({highWaterMark:l?A:void 0},r));function m(v,B){return Q(this,void 0,void 0,function*(){let T,V=null,O=v.desiredSize||null;for(;!(V=yield B.next(l?O:null)).done;)if(ArrayBuffer.isView(V.value)&&(T=st(V.value))&&(O!=null&&l&&(O=O-T.byteLength+1),V.value=T),v.enqueue(V.value),O!=null&&--O<=0)return;v.close()})}}function np(o){return new ra(o)}var ra=class{constructor(r){this._numChunks=0,this._finished=!1,this._bufferedSize=0;let{["readableStrategy"]:s,["writableStrategy"]:l,["queueingStrategy"]:A="count"}=r,m=dd(r,["readableStrategy","writableStrategy","queueingStrategy"]);this._controller=null,this._builder=o0(m),this._getSize=A!=="bytes"?ep:rp;let{["highWaterMark"]:v=A==="bytes"?Math.pow(2,14):1e3}=Object.assign({},s),{["highWaterMark"]:B=A==="bytes"?Math.pow(2,14):1e3}=Object.assign({},l);this.readable=new ReadableStream({cancel:()=>{this._builder.clear()},pull:T=>{this._maybeFlush(this._builder,this._controller=T)},start:T=>{this._maybeFlush(this._builder,this._controller=T)}},{highWaterMark:v,size:A!=="bytes"?ep:rp}),this.writable=new WritableStream({abort:()=>{this._builder.clear()},write:()=>{this._maybeFlush(this._builder,this._controller)},close:()=>{this._maybeFlush(this._builder.finish(),this._controller)}},{highWaterMark:B,size:T=>this._writeValueAndReturnChunkSize(T)})}_writeValueAndReturnChunkSize(r){let s=this._bufferedSize;return this._bufferedSize=this._getSize(this._builder.append(r)),this._bufferedSize-s}_maybeFlush(r,s){s!=null&&(this._bufferedSize>=s.desiredSize&&++this._numChunks&&this._enqueue(s,r.toVector()),r.finished&&((r.length>0||this._numChunks===0)&&++this._numChunks&&this._enqueue(s,r.toVector()),!this._finished&&(this._finished=!0)&&this._enqueue(s,null)))}_enqueue(r,s){this._bufferedSize=0,this._controller=null,s==null?r.close():r.enqueue(s)}},ep=o=>{var r;return(r=o?.length)!==null&&r!==void 0?r:0},rp=o=>{var r;return(r=o?.byteLength)!==null&&r!==void 0?r:0};function Lc(o,r){let s=new bn,l=null,A=new ReadableStream({cancel(){return Q(this,void 0,void 0,function*(){yield s.close()})},start(B){return Q(this,void 0,void 0,function*(){yield v(B,l||(l=yield m()))})},pull(B){return Q(this,void 0,void 0,function*(){l?yield v(B,l):B.close()})}});return{writable:new WritableStream(s,Object.assign({highWaterMark:Math.pow(2,14)},o)),readable:A};function m(){return Q(this,void 0,void 0,function*(){return yield(yield Ce.from(s)).open(r)})}function v(B,T){return Q(this,void 0,void 0,function*(){let V=B.desiredSize,O=null;for(;!(O=yield T.next()).done;)if(B.enqueue(O.value),V!=null&&--V<=0)return;B.close()})}}function Jc(o,r){let s=new this(o),l=new sr(s),A=new ReadableStream({cancel(){return Q(this,void 0,void 0,function*(){yield l.cancel()})},pull(v){return Q(this,void 0,void 0,function*(){yield m(v)})},start(v){return Q(this,void 0,void 0,function*(){yield m(v)})}},Object.assign({highWaterMark:Math.pow(2,14)},r));return{writable:new WritableStream(s,o),readable:A};function m(v){return Q(this,void 0,void 0,function*(){let B=null,T=v.desiredSize;for(;B=yield l.read(T||null);)if(v.enqueue(B),T!=null&&(T-=B.byteLength)<=0)return;v.close()})}}var zT=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},pf),zf),bf),mf),cf),xf),af),{compareSchemas:f0,compareFields:bA,compareTypes:MA});Te.toDOMStream=tp;Kt.throughDOM=np;Ce.throughDOM=Lc;d0.throughDOM=Lc;qn.throughDOM=Lc;A0.throughDOM=Jc;m0.throughDOM=Jc;p0.throughDOM=Jc;function ip(o){return new _t(o.fields.map(r=>zo(r)),sp(o.metadata))}function sp(o){return o?new Map(Object.entries(o)):new Map}function zo(o){return new at(o.name,ia(o.type),o.nullable,sp(o.metadata))}function ia(o){if(typeof o=="object")switch(o.type){case"decimal":return new Dr(o.precision,o.scale,o.bitWidth);case"map":let r=o.children.map(A=>zo(A));return new rr(r,o.keysSorted);case"list":let s=zo(o.children[0]);return new er(s);case"fixed-size-list":let l=zo(o.children[0]);return new ke(o.listSize,l);case"struct":return r=o.children.map(A=>zo(A)),new Dt(r);default:throw new Error("array type not supported")}switch(o){case"null":return new Be;case"binary":return new kr;case"bool":return new Zr;case"int8":return new Xi;case"int16":return new Gi;case"int32":return new vr;case"int64":return new Ci;case"uint8":return new ji;case"uint16":return new Li;case"uint32":return new Ji;case"uint64":return new Yi;case"float16":return new Pi;case"float32":return new Hi;case"float64":return new Qi;case"utf8":return new Or;case"date-day":return new j0;case"date-millisecond":return new L0;case"time-second":return new J0;case"time-millisecond":return new Y0;case"time-microsecond":return new P0;case"time-nanosecond":return new H0;case"timestamp-second":return new Q0;case"timestamp-millisecond":return new $0;case"timestamp-microsecond":return new q0;case"timestamp-nanosecond":return new K0;case"interval-daytime":return new ts;case"interval-yearmonth":return new es;default:throw new Error("array type not supported")}}function sa(o){let r=1/0,s=1/0,l=1/0,A=-1/0,m=-1/0,v=-1/0,B=o.POSITION?o.POSITION.value:[],T=B&&B.length;for(let V=0;V<T;V+=3){let O=B[V],C=B[V+1],yt=B[V+2];r=O<r?O:r,s=C<s?C:s,l=yt<l?yt:l,A=O>A?O:A,m=C>m?C:m,v=yt>v?yt:v}return[[r,s,l],[A,m,v]]}function op(o,r){let s=ET(o,r),l=s.children[0].type,A={[Ke.DATA]:o},m=new wt(l,0,o.length,0,A);return new wt(s,0,o.length/r,0,void 0,[m])}function ET(o,r){let{type:s}=ad(o),l=ia(s);return new ke(r,new at("value",l))}function oa(o,r){switch(r){case"columnar-table":return XT(o);case"arrow-table":return GT(o);default:throw new Error(r)}}function XT(o){let r={};for(let[s,l]of Object.entries(o.attributes))r[s]=l.value;return{shape:"columnar-table",schema:o.schema,data:r}}function GT(o,r){let{schema:s}=o,l=ip(s),A=[];for(let O in o.attributes){let C=o.attributes[O],{value:yt,size:mt=1}=C,Ct=op(yt,mt);A.push(Ct)}let m=new Dt(l.fields),v=A[0].length,B=new wt(m,0,v,0,void 0,A),T=new zt(l,B),V=new le([T]);return{shape:"arrow-table",schema:s,data:V}}function ua(o,r={}){return{fields:CT(o),metadata:r}}function up(o,r,s){let l=ef(r.value),A=s||cp(r);return{name:o,type:{type:"fixed-size-list",listSize:r.size,children:[{name:"value",type:l}]},nullable:!1,metadata:A}}function CT(o){let r=[];for(let s in o){let l=o[s];r.push(up(s,l))}return r}function cp(o){let r={};return"byteOffset"in o&&(r.byteOffset=o.byteOffset.toString(10)),"byteStride"in o&&(r.byteStride=o.byteStride.toString(10)),"normalized"in o&&(r.normalized=o.normalized.toString()),r}function la(){var o=typeof o<"u"?o:{},r={},s;for(s in o)o.hasOwnProperty(s)&&(r[s]=o[s]);var l=[],A="./this.program",m=function(w,_){throw _},v=!1,B=!1,T=!1,V=!1;v=typeof window=="object",B=typeof importScripts=="function",T=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",V=!v&&!T&&!B;var O="";function C(w){return o.locateFile?o.locateFile(w,O):O+w}var yt,mt,Ct,rn,kn,je;T?(B?O=ca().dirname(O)+"/":O=(typeof __dirname<"u"?__dirname:"")+"/",yt=function(_,R){var d=ii(_);return d?R?d:d.toString():(kn||(kn=lp()),je||(je=ca()),_=je.normalize(_),kn.readFileSync(_,R?null:"utf8"))},Ct=function(_){var R=yt(_,!0);return R.buffer||(R=new Uint8Array(R)),v0(R.buffer),R},process.argv.length>1&&(A=process.argv[1].replace(/\\/g,"/")),l=process.argv.slice(2),typeof module<"u"&&(module.exports=o),process.on("uncaughtException",function(w){if(!(w instanceof am))throw w}),process.on("unhandledRejection",_i),m=function(w){process.exit(w)},o.inspect=function(){return"[Emscripten Module object]"}):V?(typeof read<"u"&&(yt=function(_){var R=ii(_);return R?Xa(R):read(_)}),Ct=function(_){var R;return R=ii(_),R||(typeof readbuffer=="function"?new Uint8Array(readbuffer(_)):(R=read(_,"binary"),v0(typeof R=="object"),R))},typeof scriptArgs<"u"?l=scriptArgs:typeof arguments<"u"&&(l=arguments),typeof quit=="function"&&(m=function(w){quit(w)}),typeof print<"u"&&(typeof console>"u"&&(console={}),console.log=print,console.warn=console.error=typeof printErr<"u"?printErr:print)):(v||B)&&(B?O=self.location.href:document.currentScript&&(O=document.currentScript.src),O.indexOf("blob:")!==0?O=O.substr(0,O.lastIndexOf("/")+1):O="",yt=function(_){try{var R=new XMLHttpRequest;return R.open("GET",_,!1),R.send(null),R.responseText}catch(Z){var d=ii(_);if(d)return Xa(d);throw Z}},B&&(Ct=function(_){try{var R=new XMLHttpRequest;return R.open("GET",_,!1),R.responseType="arraybuffer",R.send(null),new Uint8Array(R.response)}catch(Z){var d=ii(_);if(d)return d;throw Z}}),mt=function(_,R,d){var Z=new XMLHttpRequest;Z.open("GET",_,!0),Z.responseType="arraybuffer",Z.onload=function(){if(Z.status==200||Z.status==0&&Z.response){R(Z.response);return}var S=ii(_);if(S){R(S.buffer);return}d()},Z.onerror=d,Z.send(null)},rn=function(w){document.title=w});var Fs=o.print||console.log.bind(console),Co=o.printErr||console.warn.bind(console);for(s in r)r.hasOwnProperty(s)&&(o[s]=r[s]);r=null,o.arguments&&(l=o.arguments),o.thisProgram&&(A=o.thisProgram),o.quit&&(m=o.quit);var On=16;function y0(w){var _=lr[Qc>>2],R=_+w+15&-16;return lr[Qc>>2]=R,_}function ei(w){switch(w){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(w[w.length-1]==="*")return 4;if(w[0]==="i"){var _=Number(w.substr(1));return v0(_%8===0,"getNativeTypeSize invalid bits "+_+", type "+w),_/8}else return 0}}}function g0(w){g0.shown||(g0.shown={}),g0.shown[w]||(g0.shown[w]=1,Co(w))}var da=1,HT=new Array(0),QT={};function $T(w,_,R){return R&&R.length?o["dynCall_"+w].apply(null,[_].concat(R)):o["dynCall_"+w].call(null,_)}var Aa=0,pp=function(w){Aa=w},mp=function(){return Aa},pa=8,yp;o.wasmBinary&&(yp=o.wasmBinary);var ma;o.noExitRuntime&&(ma=o.noExitRuntime);function qT(w,_,R,d){switch(R=R||"i8",R.charAt(R.length-1)==="*"&&(R="i32"),R){case"i1":ri[w>>0]=_;break;case"i8":ri[w>>0]=_;break;case"i16":vi[w>>1]=_;break;case"i32":lr[w>>2]=_;break;case"i64":qc=[_>>>0,(w0=_,+Xp(w0)>=1?w0>0?(jp(+Cp(w0/4294967296),4294967295)|0)>>>0:~~+Gp((w0-+(~~w0>>>0))/4294967296)>>>0:0)],lr[w>>2]=qc[0],lr[w+4>>2]=qc[1];break;case"float":Pc[w>>2]=_;break;case"double":Hc[w>>3]=_;break;default:_i("invalid type for setValue: "+R)}}var ya=!1,gp=0;function v0(w,_){w||_i("Assertion failed: "+_)}function vp(w){var _=o["_"+w];return v0(_,"Cannot call unknown function "+w+", make sure it is exported"),_}function KT(w,_,R,d,Z){var e={string:function(Tt){var te=0;if(Tt!=null&&Tt!==0){var Se=(Tt.length<<2)+1;te=Ga(Se),wa(Tt,te,Se)}return te},array:function(Tt){var te=Ga(Tt.length);return Vp(Tt,te),te}};function S(Tt){return _==="string"?va(Tt):_==="boolean"?Boolean(Tt):Tt}var W=vp(w),j=[],G=0;if(d)for(var k=0;k<d.length;k++){var Rt=e[R[k]];Rt?(G===0&&(G=lm()),j[k]=Rt(d[k])):j[k]=d[k]}var kt=W.apply(null,j);return kt=S(kt),G!==0&&cm(G),kt}var tR=3,ga=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function wp(w,_,R){for(var d=_+R,Z=_;w[Z]&&!(Z>=d);)++Z;if(Z-_>16&&w.subarray&&ga)return ga.decode(w.subarray(_,Z));for(var e="";_<Z;){var S=w[_++];if(!(S&128)){e+=String.fromCharCode(S);continue}var W=w[_++]&63;if((S&224)==192){e+=String.fromCharCode((S&31)<<6|W);continue}var j=w[_++]&63;if((S&240)==224?S=(S&15)<<12|W<<6|j:S=(S&7)<<18|W<<12|j<<6|w[_++]&63,S<65536)e+=String.fromCharCode(S);else{var G=S-65536;e+=String.fromCharCode(55296|G>>10,56320|G&1023)}}return e}function va(w,_){return w?wp(Ze,w,_):""}function _p(w,_,R,d){if(!(d>0))return 0;for(var Z=R,e=R+d-1,S=0;S<w.length;++S){var W=w.charCodeAt(S);if(W>=55296&&W<=57343){var j=w.charCodeAt(++S);W=65536+((W&1023)<<10)|j&1023}if(W<=127){if(R>=e)break;_[R++]=W}else if(W<=2047){if(R+1>=e)break;_[R++]=192|W>>6,_[R++]=128|W&63}else if(W<=65535){if(R+2>=e)break;_[R++]=224|W>>12,_[R++]=128|W>>6&63,_[R++]=128|W&63}else{if(R+3>=e)break;_[R++]=240|W>>18,_[R++]=128|W>>12&63,_[R++]=128|W>>6&63,_[R++]=128|W&63}}return _[R]=0,R-Z}function wa(w,_,R){return _p(w,Ze,_,R)}function Fp(w){for(var _=0,R=0;R<w.length;++R){var d=w.charCodeAt(R);d>=55296&&d<=57343&&(d=65536+((d&1023)<<10)|w.charCodeAt(++R)&1023),d<=127?++_:d<=2047?_+=2:d<=65535?_+=3:_+=4}return _}var _a=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function Bp(w,_){for(var R=w,d=R>>1,Z=d+_/2;!(d>=Z)&&jo[d];)++d;if(R=d<<1,R-w>32&&_a)return _a.decode(Ze.subarray(w,R));for(var e=0,S="";;){var W=vi[w+e*2>>1];if(W==0||e==_/2)return S;++e,S+=String.fromCharCode(W)}}function Ip(w,_,R){if(R===void 0&&(R=2147483647),R<2)return 0;R-=2;for(var d=_,Z=R<w.length*2?R/2:w.length,e=0;e<Z;++e){var S=w.charCodeAt(e);vi[_>>1]=S,_+=2}return vi[_>>1]=0,_-d}function Sp(w){return w.length*2}function Tp(w,_){for(var R=0,d="";!(R>=_/4);){var Z=lr[w+R*4>>2];if(Z==0)break;if(++R,Z>=65536){var e=Z-65536;d+=String.fromCharCode(55296|e>>10,56320|e&1023)}else d+=String.fromCharCode(Z)}return d}function Rp(w,_,R){if(R===void 0&&(R=2147483647),R<4)return 0;for(var d=_,Z=d+R-4,e=0;e<w.length;++e){var S=w.charCodeAt(e);if(S>=55296&&S<=57343){var W=w.charCodeAt(++e);S=65536+((S&1023)<<10)|W&1023}if(lr[_>>2]=S,_+=4,_+4>Z)break}return lr[_>>2]=0,_-d}function Up(w){for(var _=0,R=0;R<w.length;++R){var d=w.charCodeAt(R);d>=55296&&d<=57343&&++R,_+=4}return _}function Vp(w,_){ri.set(w,_)}function eR(w,_,R){for(var d=0;d<w.length;++d)ri[_++>>0]=w.charCodeAt(d);R||(ri[_>>0]=0)}var gi,ri,Ze,vi,jo,lr,Zn,Pc,Hc;function xp(w){gi=w,o.HEAP8=ri=new Int8Array(w),o.HEAP16=vi=new Int16Array(w),o.HEAP32=lr=new Int32Array(w),o.HEAPU8=Ze=new Uint8Array(w),o.HEAPU16=jo=new Uint16Array(w),o.HEAPU32=Zn=new Uint32Array(w),o.HEAPF32=Pc=new Float32Array(w),o.HEAPF64=Hc=new Float64Array(w)}var rR=22384,bp=5265264,Qc=22176,Fa=o.INITIAL_MEMORY||167772160;o.buffer?gi=o.buffer:gi=new ArrayBuffer(Fa),Fa=gi.byteLength,xp(gi),lr[Qc>>2]=bp;function Lo(w){for(;w.length>0;){var _=w.shift();if(typeof _=="function"){_(o);continue}var R=_.func;typeof R=="number"?_.arg===void 0?o.dynCall_v(R):o.dynCall_vi(R,_.arg):R(_.arg===void 0?null:_.arg)}}var Ba=[],Ia=[],Mp=[],Sa=[],Np=!1,kp=!1;function Op(){if(o.preRun)for(typeof o.preRun=="function"&&(o.preRun=[o.preRun]);o.preRun.length;)zp(o.preRun.shift());Lo(Ba)}function Zp(){Np=!0,Lo(Ia)}function Dp(){Lo(Mp)}function nR(){kp=!0}function Wp(){if(o.postRun)for(typeof o.postRun=="function"&&(o.postRun=[o.postRun]);o.postRun.length;)Ep(o.postRun.shift());Lo(Sa)}function zp(w){Ba.unshift(w)}function Ep(w){Sa.unshift(w)}var Xp=Math.abs,Gp=Math.ceil,Cp=Math.floor,jp=Math.min,wi=0,$c=null,Bs=null;function Lp(w){wi++,o.monitorRunDependencies&&o.monitorRunDependencies(wi)}function Jp(w){if(wi--,o.monitorRunDependencies&&o.monitorRunDependencies(wi),wi==0&&($c!==null&&(clearInterval($c),$c=null),Bs)){var _=Bs;Bs=null,_()}}o.preloadedImages={},o.preloadedAudios={};function _i(w){throw o.onAbort&&o.onAbort(w),w+="",Fs(w),Co(w),ya=!0,gp=1,w="abort("+w+"). Build with -s ASSERTIONS=1 for more info.",w}var nn=null;function Yp(w,_){return String.prototype.startsWith?w.startsWith(_):w.indexOf(_)===0}var Ta="data:application/octet-stream;base64,";function Ra(w){return Yp(w,Ta)}var iR="file://",w0,qc;Ia.push({func:function(){um()}}),nn="data:application/octet-stream;base64,AAAAAAAAAAAPDg0MCwoJCA4AAQMGCgoJDQECBAcLCwoMAwQFCAwMCwsGBwgJDQ0MCgoLDA0ODg0JCgsMDQ4PDggJCgsMDQ4PAAECAwQFBgcBAAECAwQFBgIBAAECAwQFAwIBAAECAwQEAwIBAAECAwUEAwIBAAECBgUEAwIBAAEHBgUEAwIBAMgPAAAoDQAAEBAAACAQAADIDwAAUA0AABAQAAAgEAAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAAAAAAAAAAAASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAAAAAADgFgAAmRgAAGAQAAAAAAAA4BYAAEIZAABgEAAAAAAAAOAWAAAqGgAASA8AAAAAAAC4FgAANBsAAOAWAACfGgAAMAoAAAAAAADgFgAAaRsAAEgPAAAAAAAA4BYAAIobAABIDwAAAAAAALgWAAAPHAAA4BYAAHwcAABIDwAAAAAAAOAWAACVHAAASA8AAAAAAADgFgAAHh0AAEgPAAAAAAAA4BYAAHcdAABIDwAAAAAAAOAWAACQHQAASA8AAAAAAADgFgAAQh4AAEgPAAAAAAAA4BYAAIceAABgEAAAAAAAAOAWAACkHwAASA8AAAAAAAC4FgAAZyAAAOAWAADkHwAA8AoAAAAAAADgFgAAjyAAAGAQAAAAAAAAuBYAAMMiAADgFgAAAiIAABgLAAAAAAAA4BYAAOEiAABgEAAAAAAAAOAWAADQJAAAGAsAAAAAAADgFgAAkSUAAGAQAAAAAAAA4BYAAIAnAAAYCwAAAAAAAOAWAAA9KAAAYBAAAAAAAADgFgAAJCoAABgLAAAAAAAA4BYAAOkqAABgEAAAAAAAAOAWAADgLAAA8AoAAAAAAADgFgAAui0AAGAQAAAAAAAA4BYAANsvAADwCgAAAAAAAOAWAADTMAAAYBAAAAAAAADgFgAAMDMAAPAKAAAAAAAA4BYAACQ0AABgEAAAAAAAAOAWAAB5NgAA8AoAAAAAAADgFgAAizcAAGAQAAAAAAAA4BYAABw6AABgEAAAAAAAAOAWAACdOgAAYBAAAAAAAADgFgAAXjsAAPAKAAAAAAAA4BYAALU7AABgEAAAAAAAAOAWAADMPAAAGAsAAAAAAADgFgAATz0AAGAQAAAAAAAA4BYAAL4+AAAYCwAAAAAAAOAWAABBPwAAYBAAAAAAAADgFgAAsEAAABgLAAAAAAAA4BYAADNBAABgEAAAAAAAAOAWAACiQgAAGAsAAAAAAADgFgAAJUMAAGAQAAAAAAAA4BYAAJREAAAYCwAAAAAAAOAWAAAXRQAAYBAAAAAAAADgFgAAhkYAABgLAAAAAAAA4BYAAAlHAABgEAAAAAAAALgWAAB4SAAAiBcAAIBIAAAAAAAAIA0AAIgXAACJSAAAAQAAACANAAC4FgAAqkgAAIgXAAC6SAAAAAAAAEgNAACIFwAAy0gAAAEAAABIDQAAuBYAABhMAAC4FgAAN0wAALgWAABWTAAAuBYAAHVMAAC4FgAAlEwAALgWAACzTAAAuBYAANJMAAC4FgAA8UwAALgWAAAQTQAAuBYAAC9NAAC4FgAATk0AALgWAABtTQAAuBYAAIxNAACkFwAAn00AAAAAAAABAAAA8A0AAAAAAAC4FgAA4U0AAKQXAAAHTgAAAAAAAAEAAADwDQAAAAAAAKQXAABJTgAAAAAAAAEAAADwDQAAAAAAAKQXAACITgAAAAAAAAEAAADwDQAAAAAAAKQXAADHTgAAAAAAAAEAAADwDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALgWAADNTwAA4BYAAC1QAAAADwAAAAAAAOAWAADaTwAAEA8AAAAAAAC4FgAA+08AAOAWAAAIUAAA8A4AAAAAAADgFgAAhlAAAOgOAAAAAAAA4BYAAJNQAADoDgAAAAAAAOAWAACjUAAA6A4AAAAAAADgFgAAtVAAADgPAAAAAAAA4BYAAMZQAAA4DwAAAAAAAOAWAADXUAAAAA8AAAAAAADgFgAA+VAAAHgPAAAAAAAA4BYAAB1RAAAADwAAAAAAAOAWAABCUQAAeA8AAAAAAADgFgAAjlEAAAAPAAAAAAAAbBcAALZRAABsFwAAuFEAAGwXAAC7UQAAbBcAAL1RAABsFwAAv1EAAGwXAADBUQAAbBcAAMNRAABsFwAAxVEAAGwXAADHUQAAbBcAAMlRAABsFwAAy1EAAGwXAADNUQAAbBcAAM9RAABsFwAA0VEAAOAWAADTUQAA8A4AAAAAAADgFgAARlIAAOgOAAAAAAAAuBYAAGJSAACkFwAAe1IAAAAAAAABAAAAWBAAAAAAAADgFgAA9FIAAIgQAAAAAAAA4BYAABdTAACYEAAAAAAAALgWAAAuUwAA4BYAAHBTAACIEAAAAAAAAOAWAACSUwAASA8AAAAAAAAAAAAAAAoAAAEAAAACAAAAAwAAAAEAAAAEAAAAAAAAABAKAAABAAAABQAAAAYAAAACAAAABwAAAAAAAAAgCgAACAAAAAkAAAABAAAAAAAAADgKAAAKAAAACwAAAAIAAAABAAAADAAAAA0AAAACAAAAAwAAAAMAAAAAAAAASAoAAAgAAAAOAAAAAQAAAAAAAABYCgAACAAAAA8AAAABAAAAAAAAAIAKAAAIAAAAEAAAAAEAAAAAAAAAcAoAAAgAAAARAAAAAQAAAAAAAACQCgAACAAAABIAAAABAAAAAAAAAKAKAAAIAAAAEwAAAAEAAAAAAAAAsAoAAAgAAAAUAAAAAQAAAAAAAADACgAACAAAABUAAAABAAAAAAAAANAKAAABAAAAFgAAABcAAAAEAAAAGAAAAAAAAADgCgAACAAAABkAAAABAAAAAAAAAPgKAAAFAAAAGgAAABsAAAAAAAAA8AoAAAEAAAAcAAAAHQAAAAAAAAAICwAAAQAAAB4AAAAfAAAABgAAACAAAAAAAAAAIAsAACEAAAAiAAAABwAAAAgAAAAAAAAAGAsAACMAAAAkAAAABwAAAAkAAAAAAAAAMAsAAAEAAAAlAAAAJgAAAAoAAAAnAAAAAAAAAEALAAAoAAAAKQAAAAcAAAALAAAAAAAAAFALAAABAAAAKgAAACsAAAAMAAAALAAAAAAAAABgCwAALQAAAC4AAAAHAAAADQAAAAAAAABwCwAAAQAAAC8AAAAwAAAADgAAADEAAAAAAAAAgAsAADIAAAAzAAAABwAAAA8AAAAAAAAAkAsAAAEAAAA0AAAANQAAABAAAAA2AAAAAAAAAKALAAARAAAANwAAADgAAAAAAAAAsAsAAAEAAAA5AAAAOgAAABIAAAA7AAAAAAAAAMALAAATAAAAPAAAAD0AAAAAAAAA0AsAAAEAAAA+AAAAPwAAABQAAABAAAAAAAAAAOALAAAVAAAAQQAAAEIAAAAAAAAA8AsAAAEAAABDAAAARAAAABYAAABFAAAAAAAAAAAMAAAXAAAARgAAAEcAAAAAAAAAEAwAAAEAAABIAAAASQAAABgAAABKAAAAAAAAACAMAAABAAAASwAAAEwAAAAZAAAATQAAAAAAAAAwDAAAAQAAAE4AAABPAAAAGgAAAFAAAAAAAAAAQAwAABsAAABRAAAAUgAAAAAAAABQDAAAAQAAAFMAAABUAAAAHAAAAFUAAAAAAAAAYAwAAFYAAABXAAAABwAAAB0AAAAAAAAAcAwAAAEAAABYAAAAWQAAAB4AAABaAAAAAAAAAIAMAABbAAAAXAAAAAcAAAAfAAAAAAAAAJAMAAABAAAAXQAAAF4AAAAgAAAAXwAAAAAAAACgDAAAYAAAAGEAAAAHAAAAIQAAAAAAAACwDAAAAQAAAGIAAABjAAAAIgAAAGQAAAAAAAAAwAwAAGUAAABmAAAABwAAACMAAAAAAAAA0AwAAAEAAABnAAAAaAAAACQAAABpAAAAAAAAAOAMAABqAAAAawAAAAcAAAAlAAAAAAAAAPAMAAABAAAAbAAAAG0AAAAmAAAAbgAAAAAAAAAADQAAbwAAAHAAAAAHAAAAJwAAAAAAAAAQDQAAAQAAAHEAAAByAAAAKAAAAHMAAAAoDQAAyA8AACgNAAAIEAAAEBAAACgNAABQDQAAyA8AAFANAAAgEAAAyA8AAFANAAAIEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwDgAAdAAAAHUAAAB2AAAAdwAAAAIAAAABAAAAAQAAAAEAAAAAAAAAGA8AAHQAAAB4AAAAdgAAAHcAAAACAAAAAgAAAAIAAAACAAAAAAAAACgPAAB5AAAAegAAAAQAAAAAAAAAOA8AAHsAAAB8AAAABQAAAAAAAABIDwAACAAAAH0AAAABAAAAAAAAAFgPAAB7AAAAfgAAAAUAAAAAAAAAaA8AAHsAAAB/AAAABQAAAAAAAAC4DwAAdAAAAIAAAAB2AAAAdwAAAAMAAAAAAAAAiA8AAHQAAACBAAAAdgAAAHcAAAAEAAAAAAAAADgQAAB0AAAAggAAAHYAAAB3AAAAAgAAAAMAAAADAAAAAwAAAAAAAABIEAAAgwAAAIQAAAAGAAAAAAAAAHgQAACFAAAAhgAAAAcAAAABAAAABQAAAAYAAAACAAAAAAAAAKAQAACFAAAAhwAAAAgAAAADAAAABQAAAAYAAAAEAAAA4BcAAAQYAAAAAAAAsBAAAIgAAACJAAAAAQAAAExBU1ppcABvcGVuAGdldFBvaW50AGdldENvdW50AER5bmFtaWNMQVNaaXAAYWRkRmllbGRGbG9hdGluZwBhZGRGaWVsZFNpZ25lZABhZGRGaWVsZFVuc2lnbmVkAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVOU185YWxsb2NhdG9ySVM3X0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFAExBU0YATjZsYXN6aXAxM2ludmFsaWRfbWFnaWNFAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUARmlsZSBtYWdpYyBpcyBub3QgdmFsaWQATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk42bGFzemlwMmlvNnJlYWRlcjEwYmFzaWNfZmlsZUlOUzJfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRTExX3ZhbGlkYXRvcnNFdkVVbFJOUzNfNmhlYWRlckVFX05TXzlhbGxvY2F0b3JJU0JfRUVGdlNBX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONmxhc3ppcDJpbzZoZWFkZXJFRUVFAE42bGFzemlwMjFvbGRfc3R5bGVfY29tcHJlc3Npb25FAE42bGFzemlwMTRub3RfY29tcHJlc3NlZEUAVGhlIGZpbGUgc2VlbXMgdG8gaGF2ZSBvbGQgc3R5bGUgY29tcHJlc3Npb24gd2hpY2ggaXMgbm90IHN1cHBvcnRlZABUaGUgZmlsZSBkb2Vzbid0IHNlZW0gdG8gYmUgY29tcHJlc3NlZABaTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUUxMV92YWxpZGF0b3JzRXZFVWxSTlMwXzZoZWFkZXJFRV8AbGFzemlwIGVuY29kZWQATjZsYXN6aXAxM25vX2xhc3ppcF92bHJFAE42bGFzemlwMjVsYXN6aXBfZm9ybWF0X3Vuc3VwcG9ydGVkRQBPbmx5IExBU3ppcCBQT0lOVFdJU0UgQ0hVTktFRCBkZWNvbXByZXNzb3IgaXMgc3VwcG9ydGVkAE5vIExBU3ppcCBWTFIgd2FzIGZvdW5kIGluIHRoZSBWTFJzIHNlY3Rpb24ATjZsYXN6aXAyMmNodW5rX3RhYmxlX3JlYWRfZXJyb3JFAENodW5rIHRhYmxlIG9mZnNldCA9PSAtMSBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZQBONmxhc3ppcDEzbm90X3N1cHBvcnRlZEUATjZsYXN6aXAyNnVua25vd25fY2h1bmtfdGFibGVfZm9ybWF0RQBjaHVua19zaXplID09IHVpbnQubWF4IGlzIG5vdCBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgBUaGVyZSB3YXMgYSBwcm9ibGVtIHJlYWRpbmcgdGhlIGNodW5rIHRhYmxlAFRoZSBjaHVuayB0YWJsZSB2ZXJzaW9uIG51bWJlciBpcyB1bmtub3duAE42bGFzemlwMTFlbmRfb2ZfZmlsZUUAUmVhY2hlZCBFbmQgb2YgZmlsZQBJbnZhbGlkIG51bWJlciBvZiBzeW1ib2xzAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFTlNfOWFsbG9jYXRvcklTOV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwMTl1bmtub3duX3NjaGVtYV90eXBlRQBUaGUgTEFaIHNjaGVtYSBpcyBub3QgcmVjb2duaXplZABONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMGR5bmFtaWNfZGVjb21wcmVzc29yRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVOU185YWxsb2NhdG9ySVNDX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNDX0VFRUVFRQBONmxhc3ppcDdmb3JtYXRzMTBiYXNlX2ZpZWxkRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF81ZmllbGRJTlMwXzNsYXM3Z3BzdGltZUVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczdncHN0aW1lRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0lfRUVOU185YWxsb2NhdG9ySVNJX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN2dwc3RpbWVFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfNWZpZWxkSU5TMF8zbGFzM3JnYkVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczNyZ2JFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXMzcmdiRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczEwZXh0cmFieXRlc0VOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVNJX0VFTlNfOWFsbG9jYXRvcklTSV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRUVFRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTS19FRU5TXzlhbGxvY2F0b3JJU0tfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNEX0VFRUVOU0JfSU5TQ183Z3BzdGltZUVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU05fRUVOU185YWxsb2NhdG9ySVNOX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMF81ZmllbGRJTlMwXzNsYXM3cG9pbnQxMEVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRF9FRUVFTlNCX0lOU0NfM3JnYkVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU0pfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTTl9FRU5TXzlhbGxvY2F0b3JJU05fRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRU5TRF9JTlNFXzNyZ2JFTlNHX0lTSl9FRUVFRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRU5TQl9JTlNDXzdncHN0aW1lRU5TRV9JU0hfRUVFRU5TQl9JTlNDXzNyZ2JFTlNFX0lTS19FRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRl9FRUVFTlNEX0lOU0VfN2dwc3RpbWVFTlNHX0lTSl9FRUVFTlNEX0lOU0VfM3JnYkVOU0dfSVNNX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU1FfRUVOU185YWxsb2NhdG9ySVNRX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU01fRUVFRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUDEwYnVmX3N0cmVhbU5TXzE0ZGVmYXVsdF9kZWxldGVJUzFfRUVOU185YWxsb2NhdG9ySVMxX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJMTBidWZfc3RyZWFtRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNV9FRU5TXzlhbGxvY2F0b3JJUzVfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM4X0VFTlNfOWFsbG9jYXRvcklTOF9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWlFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWlOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElpRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElpTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJak5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWpFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWpOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElqRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElqTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJakVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJYU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWFFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWFOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElhRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElhTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJYUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJc05TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXNFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXNOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElzRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElzTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJc0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWhFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWhOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEloRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEloTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaEVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJdE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXRFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXROUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEl0RUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEl0TlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJdEVFRUVFRUVFADZMQVNaaXAAUDZMQVNaaXAAUEs2TEFTWmlwAGlpAHYAdmkAdmlpaWkAdmlpaQBpaWkAMTNEeW5hbWljTEFTWmlwAFAxM0R5bmFtaWNMQVNaaXAAUEsxM0R5bmFtaWNMQVNaaXAAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOMTBlbXNjcmlwdGVuM3ZhbEUATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ALgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2MAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIwX19mdW5jdGlvbl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyOV9fcG9pbnRlcl90b19tZW1iZXJfdHlwZV9pbmZvRQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAF9fY3hhX2d1YXJkX2FjcXVpcmUgZGV0ZWN0ZWQgcmVjdXJzaXZlIGluaXRpYWxpemF0aW9uAHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwATlN0M19fMjE3YmFkX2Z1bmN0aW9uX2NhbGxFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQBtdXRleCBsb2NrIGZhaWxlZABiYXNpY19zdHJpbmcAdW5zcGVjaWZpZWQgZ2VuZXJpY19jYXRlZ29yeSBlcnJvcgBVbmtub3duIGVycm9yICVkAGdlbmVyaWMATlN0M19fMjI0X19nZW5lcmljX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJfX2RvX21lc3NhZ2VFAE5TdDNfXzIxNGVycm9yX2NhdGVnb3J5RQB1bnNwZWNpZmllZCBzeXN0ZW1fY2F0ZWdvcnkgZXJyb3IAc3lzdGVtAE5TdDNfXzIyM19fc3lzdGVtX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJzeXN0ZW1fZXJyb3JFADogAHZlY3Rvcg==";var Pp=22368;function sR(w){return w}function oR(w){var _=/\b__Z[\w\d_]+/g;return w.replace(_,function(R){var d=R;return R===d?R:d+" ["+R+"]"})}function uR(){var w=new Error;if(!w.stack){try{throw new Error}catch(_){w=_}if(!w.stack)return"(no stack trace available)"}return w.stack.toString()}function Hp(w){return fl(w)}var _0={},Qp=[];function Ua(w){if(w){var _=_0[w];_.refcount++}}function Va(w){if(!w||_0[w])return w;for(var _ in _0)for(var R=+_,d=_0[R].adjusted,Z=d.length,e=0;e<Z;e++)if(d[e]===w)return R;return w}function $p(w){var _=_0[w];return _&&!_.caught&&(_.caught=!0,Vs.uncaught_exceptions--),_&&(_.rethrown=!1),Qp.push(w),Ua(Va(w)),w}var qp=0;function Kp(w,_,R){throw _0[w]={ptr:w,adjusted:[w],type:_,destructor:R,refcount:0,caught:!1,rethrown:!1},qp=w,"uncaught_exception"in Vs?Vs.uncaught_exceptions++:Vs.uncaught_exceptions=1,w}function t1(){return Vs.uncaught_exceptions}function e1(){}function Kc(w){switch(w){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+w)}}function r1(){for(var w=new Array(256),_=0;_<256;++_)w[_]=String.fromCharCode(_);xa=w}var xa=void 0;function Br(w){for(var _="",R=w;Ze[R];)_+=xa[Ze[R++]];return _}var F0={},B0={},Jo={},n1=48,i1=57;function tl(w){if(w===void 0)return"_unknown";w=w.replace(/[^a-zA-Z0-9_]/g,"$");var _=w.charCodeAt(0);return _>=n1&&_<=i1?"_"+w:w}function el(w,_){return w=tl(w),new Function("body","return function "+w+`() {
|
|
8
17
|
"use strict"; return body.apply(this, arguments);
|
|
9
18
|
};
|
|
10
|
-
`)(
|
|
11
|
-
`+
|
|
12
|
-
`;return
|
|
13
|
-
`,
|
|
14
|
-
`,new Function("dynCall","rawFunction",
|
|
15
|
-
if (arguments.length !== `+(
|
|
16
|
-
throwBindingError('function `+
|
|
19
|
+
`)(_)}function rl(w,_){var R=el(_,function(d){this.name=_,this.message=d;var Z=new Error(d).stack;Z!==void 0&&(this.stack=this.toString()+`
|
|
20
|
+
`+Z.replace(/^Error(:[^\n]*)?\n/,""))});return R.prototype=Object.create(w.prototype),R.prototype.constructor=R,R.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},R}var I0=void 0;function Nt(w){throw new I0(w)}var ba=void 0;function Yo(w){throw new ba(w)}function Is(w,_,R){w.forEach(function(W){Jo[W]=_});function d(W){var j=R(W);j.length!==w.length&&Yo("Mismatched type converter count");for(var G=0;G<w.length;++G)Dn(w[G],j[G])}var Z=new Array(_.length),e=[],S=0;_.forEach(function(W,j){B0.hasOwnProperty(W)?Z[j]=B0[W]:(e.push(W),F0.hasOwnProperty(W)||(F0[W]=[]),F0[W].push(function(){Z[j]=B0[W],++S,S===e.length&&d(Z)}))}),e.length===0&&d(Z)}function Dn(w,_,R){if(R=R||{},!("argPackAdvance"in _))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=_.name;if(w||Nt('type "'+d+'" must have a positive integer typeid pointer'),B0.hasOwnProperty(w)){if(R.ignoreDuplicateRegistrations)return;Nt("Cannot register type '"+d+"' twice")}if(B0[w]=_,delete Jo[w],F0.hasOwnProperty(w)){var Z=F0[w];delete F0[w],Z.forEach(function(e){e()})}}function s1(w,_,R,d,Z){var e=Kc(R);_=Br(_),Dn(w,{name:_,fromWireType:function(S){return!!S},toWireType:function(S,W){return W?d:Z},argPackAdvance:8,readValueFromPointer:function(S){var W;if(R===1)W=ri;else if(R===2)W=vi;else if(R===4)W=lr;else throw new TypeError("Unknown boolean type size: "+_);return this.fromWireType(W[S>>e])},destructorFunction:null})}function o1(w){if(!(this instanceof ni)||!(w instanceof ni))return!1;for(var _=this.$$.ptrType.registeredClass,R=this.$$.ptr,d=w.$$.ptrType.registeredClass,Z=w.$$.ptr;_.baseClass;)R=_.upcast(R),_=_.baseClass;for(;d.baseClass;)Z=d.upcast(Z),d=d.baseClass;return _===d&&R===Z}function u1(w){return{count:w.count,deleteScheduled:w.deleteScheduled,preservePointerOnDelete:w.preservePointerOnDelete,ptr:w.ptr,ptrType:w.ptrType,smartPtr:w.smartPtr,smartPtrType:w.smartPtrType}}function nl(w){function _(R){return R.$$.ptrType.registeredClass.name}Nt(_(w)+" instance already deleted")}var il=!1;function Ma(w){}function c1(w){w.smartPtr?w.smartPtrType.rawDestructor(w.smartPtr):w.ptrType.registeredClass.rawDestructor(w.ptr)}function Na(w){w.count.value-=1;var _=w.count.value===0;_&&c1(w)}function Ss(w){return typeof FinalizationGroup>"u"?(Ss=function(_){return _},w):(il=new FinalizationGroup(function(_){for(var R=_.next();!R.done;R=_.next()){var d=R.value;d.ptr?Na(d):console.warn("object already deleted: "+d.ptr)}}),Ss=function(_){return il.register(_,_.$$,_.$$),_},Ma=function(_){il.unregister(_.$$)},Ss(w))}function l1(){if(this.$$.ptr||nl(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var w=Ss(Object.create(Object.getPrototypeOf(this),{$$:{value:u1(this.$$)}}));return w.$$.count.value+=1,w.$$.deleteScheduled=!1,w}function f1(){this.$$.ptr||nl(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Nt("Object already scheduled for deletion"),Ma(this),Na(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function a1(){return!this.$$.ptr}var Ts=void 0,Rs=[];function sl(){for(;Rs.length;){var w=Rs.pop();w.$$.deleteScheduled=!1,w.delete()}}function h1(){return this.$$.ptr||nl(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Nt("Object already scheduled for deletion"),Rs.push(this),Rs.length===1&&Ts&&Ts(sl),this.$$.deleteScheduled=!0,this}function d1(){ni.prototype.isAliasOf=o1,ni.prototype.clone=l1,ni.prototype.delete=f1,ni.prototype.isDeleted=a1,ni.prototype.deleteLater=h1}function ni(){}var ka={};function Oa(w,_,R){if(w[_].overloadTable===void 0){var d=w[_];w[_]=function(){return w[_].overloadTable.hasOwnProperty(arguments.length)||Nt("Function '"+R+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+w[_].overloadTable+")!"),w[_].overloadTable[arguments.length].apply(this,arguments)},w[_].overloadTable=[],w[_].overloadTable[d.argCount]=d}}function A1(w,_,R){o.hasOwnProperty(w)?((R===void 0||o[w].overloadTable!==void 0&&o[w].overloadTable[R]!==void 0)&&Nt("Cannot register public name '"+w+"' twice"),Oa(o,w,w),o.hasOwnProperty(R)&&Nt("Cannot register multiple overloads of a function with the same number of arguments ("+R+")!"),o[w].overloadTable[R]=_):(o[w]=_,R!==void 0&&(o[w].numArguments=R))}function p1(w,_,R,d,Z,e,S,W){this.name=w,this.constructor=_,this.instancePrototype=R,this.rawDestructor=d,this.baseClass=Z,this.getActualType=e,this.upcast=S,this.downcast=W,this.pureVirtualFunctions=[]}function ol(w,_,R){for(;_!==R;)_.upcast||Nt("Expected null or instance of "+R.name+", got an instance of "+_.name),w=_.upcast(w),_=_.baseClass;return w}function m1(w,_){if(_===null)return this.isReference&&Nt("null is not a valid "+this.name),0;_.$$||Nt('Cannot pass "'+Fi(_)+'" as a '+this.name),_.$$.ptr||Nt("Cannot pass deleted object as a pointer of type "+this.name);var R=_.$$.ptrType.registeredClass,d=ol(_.$$.ptr,R,this.registeredClass);return d}function y1(w,_){var R;if(_===null)return this.isReference&&Nt("null is not a valid "+this.name),this.isSmartPointer?(R=this.rawConstructor(),w!==null&&w.push(this.rawDestructor,R),R):0;_.$$||Nt('Cannot pass "'+Fi(_)+'" as a '+this.name),_.$$.ptr||Nt("Cannot pass deleted object as a pointer of type "+this.name),!this.isConst&&_.$$.ptrType.isConst&&Nt("Cannot convert argument of type "+(_.$$.smartPtrType?_.$$.smartPtrType.name:_.$$.ptrType.name)+" to parameter type "+this.name);var d=_.$$.ptrType.registeredClass;if(R=ol(_.$$.ptr,d,this.registeredClass),this.isSmartPointer)switch(_.$$.smartPtr===void 0&&Nt("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:_.$$.smartPtrType===this?R=_.$$.smartPtr:Nt("Cannot convert argument of type "+(_.$$.smartPtrType?_.$$.smartPtrType.name:_.$$.ptrType.name)+" to parameter type "+this.name);break;case 1:R=_.$$.smartPtr;break;case 2:if(_.$$.smartPtrType===this)R=_.$$.smartPtr;else{var Z=_.clone();R=this.rawShare(R,ll(function(){Z.delete()})),w!==null&&w.push(this.rawDestructor,R)}break;default:Nt("Unsupporting sharing policy")}return R}function g1(w,_){if(_===null)return this.isReference&&Nt("null is not a valid "+this.name),0;_.$$||Nt('Cannot pass "'+Fi(_)+'" as a '+this.name),_.$$.ptr||Nt("Cannot pass deleted object as a pointer of type "+this.name),_.$$.ptrType.isConst&&Nt("Cannot convert argument of type "+_.$$.ptrType.name+" to parameter type "+this.name);var R=_.$$.ptrType.registeredClass,d=ol(_.$$.ptr,R,this.registeredClass);return d}function Po(w){return this.fromWireType(Zn[w>>2])}function v1(w){return this.rawGetPointee&&(w=this.rawGetPointee(w)),w}function w1(w){this.rawDestructor&&this.rawDestructor(w)}function _1(w){w!==null&&w.delete()}function Za(w,_,R){if(_===R)return w;if(R.baseClass===void 0)return null;var d=Za(w,_,R.baseClass);return d===null?null:R.downcast(d)}function F1(){return Object.keys(Us).length}function B1(){var w=[];for(var _ in Us)Us.hasOwnProperty(_)&&w.push(Us[_]);return w}function I1(w){Ts=w,Rs.length&&Ts&&Ts(sl)}function S1(){o.getInheritedInstanceCount=F1,o.getLiveInheritedInstances=B1,o.flushPendingDeletes=sl,o.setDelayFunction=I1}var Us={};function T1(w,_){for(_===void 0&&Nt("ptr should not be undefined");w.baseClass;)_=w.upcast(_),w=w.baseClass;return _}function R1(w,_){return _=T1(w,_),Us[_]}function Ho(w,_){(!_.ptrType||!_.ptr)&&Yo("makeClassHandle requires ptr and ptrType");var R=!!_.smartPtrType,d=!!_.smartPtr;return R!==d&&Yo("Both smartPtrType and smartPtr must be specified"),_.count={value:1},Ss(Object.create(w,{$$:{value:_}}))}function U1(w){var _=this.getPointee(w);if(!_)return this.destructor(w),null;var R=R1(this.registeredClass,_);if(R!==void 0){if(R.$$.count.value===0)return R.$$.ptr=_,R.$$.smartPtr=w,R.clone();var d=R.clone();return this.destructor(w),d}function Z(){return this.isSmartPointer?Ho(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:_,smartPtrType:this,smartPtr:w}):Ho(this.registeredClass.instancePrototype,{ptrType:this,ptr:w})}var e=this.registeredClass.getActualType(_),S=ka[e];if(!S)return Z.call(this);var W;this.isConst?W=S.constPointerType:W=S.pointerType;var j=Za(_,this.registeredClass,W.registeredClass);return j===null?Z.call(this):this.isSmartPointer?Ho(W.registeredClass.instancePrototype,{ptrType:W,ptr:j,smartPtrType:this,smartPtr:w}):Ho(W.registeredClass.instancePrototype,{ptrType:W,ptr:j})}function V1(){Wn.prototype.getPointee=v1,Wn.prototype.destructor=w1,Wn.prototype.argPackAdvance=8,Wn.prototype.readValueFromPointer=Po,Wn.prototype.deleteObject=_1,Wn.prototype.fromWireType=U1}function Wn(w,_,R,d,Z,e,S,W,j,G,k){this.name=w,this.registeredClass=_,this.isReference=R,this.isConst=d,this.isSmartPointer=Z,this.pointeeType=e,this.sharingPolicy=S,this.rawGetPointee=W,this.rawConstructor=j,this.rawShare=G,this.rawDestructor=k,!Z&&_.baseClass===void 0?d?(this.toWireType=m1,this.destructorFunction=null):(this.toWireType=g1,this.destructorFunction=null):this.toWireType=y1}function x1(w,_,R){o.hasOwnProperty(w)||Yo("Replacing nonexistant public symbol"),o[w].overloadTable!==void 0&&R!==void 0?o[w].overloadTable[R]=_:(o[w]=_,o[w].argCount=R)}function S0(w,_){w=Br(w);function R(e){for(var S=[],W=1;W<w.length;++W)S.push("a"+W);var j="dynCall_"+w+"_"+_,G="return function "+j+"("+S.join(", ")+`) {
|
|
21
|
+
`;return G+=" return dynCall(rawFunction"+(S.length?", ":"")+S.join(", ")+`);
|
|
22
|
+
`,G+=`};
|
|
23
|
+
`,new Function("dynCall","rawFunction",G)(e,_)}var d=o["dynCall_"+w],Z=R(d);return typeof Z!="function"&&Nt("unknown function pointer with signature "+w+": "+_),Z}var Da=void 0;function b1(w){var _=om(w),R=Br(_);return si(_),R}function ul(w,_){var R=[],d={};function Z(e){if(!d[e]&&!B0[e]){if(Jo[e]){Jo[e].forEach(Z);return}R.push(e),d[e]=!0}}throw _.forEach(Z),new Da(w+": "+R.map(b1).join([", "]))}function M1(w,_,R,d,Z,e,S,W,j,G,k,Rt,kt){k=Br(k),e=S0(Z,e),W&&(W=S0(S,W)),G&&(G=S0(j,G)),kt=S0(Rt,kt);var Tt=tl(k);A1(Tt,function(){ul("Cannot construct "+k+" due to unbound types",[d])}),Is([w,_,R],d?[d]:[],function(te){te=te[0];var Se,Xr;d?(Se=te.registeredClass,Xr=Se.instancePrototype):Xr=ni.prototype;var Bi=el(Tt,function(){if(Object.getPrototypeOf(this)!==$o)throw new I0("Use 'new' to construct "+k);if(It.constructor_body===void 0)throw new I0(k+" has no accessible constructor");var Vt=It.constructor_body[arguments.length];if(Vt===void 0)throw new I0("Tried to invoke ctor of "+k+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(It.constructor_body).toString()+") parameters instead!");return Vt.apply(this,arguments)}),$o=Object.create(Xr,{constructor:{value:Bi}});Bi.prototype=$o;var It=new p1(k,Bi,$o,kt,Se,e,W,G),zn=new Wn(k,It,!0,!1,!1),De=new Wn(k+"*",It,!1,!1,!1),jt=new Wn(k+" const*",It,!1,!0,!1);return ka[w]={pointerType:De,constPointerType:jt},x1(Tt,Bi),[zn,De,jt]})}function Wa(w,_){for(var R=[],d=0;d<w;d++)R.push(lr[(_>>2)+d]);return R}function za(w){for(;w.length;){var _=w.pop(),R=w.pop();R(_)}}function N1(w,_,R,d,Z,e){v0(_>0);var S=Wa(_,R);Z=S0(d,Z);var W=[e],j=[];Is([],[w],function(G){G=G[0];var k="constructor "+G.name;if(G.registeredClass.constructor_body===void 0&&(G.registeredClass.constructor_body=[]),G.registeredClass.constructor_body[_-1]!==void 0)throw new I0("Cannot register multiple constructors with identical number of parameters ("+(_-1)+") for class '"+G.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return G.registeredClass.constructor_body[_-1]=function(){ul("Cannot construct "+G.name+" due to unbound types",S)},Is([],S,function(Rt){return G.registeredClass.constructor_body[_-1]=function(){arguments.length!==_-1&&Nt(k+" called with "+arguments.length+" arguments, expected "+(_-1)),j.length=0,W.length=_;for(var Tt=1;Tt<_;++Tt)W[Tt]=Rt[Tt].toWireType(j,arguments[Tt-1]);var te=Z.apply(null,W);return za(j),Rt[0].fromWireType(te)},[]}),[]})}function k1(w,_){if(!(w instanceof Function))throw new TypeError("new_ called with constructor type "+typeof w+" which is not a function");var R=el(w.name||"unknownFunctionName",function(){});R.prototype=w.prototype;var d=new R,Z=w.apply(d,_);return Z instanceof Object?Z:d}function O1(w,_,R,d,Z){var e=_.length;e<2&&Nt("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var S=_[1]!==null&&R!==null,W=!1,j=1;j<_.length;++j)if(_[j]!==null&&_[j].destructorFunction===void 0){W=!0;break}for(var G=_[0].name!=="void",k="",Rt="",j=0;j<e-2;++j)k+=(j!==0?", ":"")+"arg"+j,Rt+=(j!==0?", ":"")+"arg"+j+"Wired";var kt="return function "+tl(w)+"("+k+`) {
|
|
24
|
+
if (arguments.length !== `+(e-2)+`) {
|
|
25
|
+
throwBindingError('function `+w+" called with ' + arguments.length + ' arguments, expected "+(e-2)+` args!');
|
|
17
26
|
}
|
|
18
|
-
`;
|
|
19
|
-
`);var
|
|
20
|
-
`);for(var
|
|
21
|
-
`,
|
|
22
|
-
`,
|
|
23
|
-
`;else for(var
|
|
24
|
-
`,
|
|
27
|
+
`;W&&(kt+=`var destructors = [];
|
|
28
|
+
`);var Tt=W?"destructors":"null",te=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],Se=[Nt,d,Z,za,_[0],_[1]];S&&(kt+="var thisWired = classParam.toWireType("+Tt+`, this);
|
|
29
|
+
`);for(var j=0;j<e-2;++j)kt+="var arg"+j+"Wired = argType"+j+".toWireType("+Tt+", arg"+j+"); // "+_[j+2].name+`
|
|
30
|
+
`,te.push("argType"+j),Se.push(_[j+2]);if(S&&(Rt="thisWired"+(Rt.length>0?", ":"")+Rt),kt+=(G?"var rv = ":"")+"invoker(fn"+(Rt.length>0?", ":"")+Rt+`);
|
|
31
|
+
`,W)kt+=`runDestructors(destructors);
|
|
32
|
+
`;else for(var j=S?1:2;j<_.length;++j){var Xr=j===1?"thisWired":"arg"+(j-2)+"Wired";_[j].destructorFunction!==null&&(kt+=Xr+"_dtor("+Xr+"); // "+_[j].name+`
|
|
33
|
+
`,te.push(Xr+"_dtor"),Se.push(_[j].destructorFunction))}G&&(kt+=`var ret = retType.fromWireType(rv);
|
|
25
34
|
return ret;
|
|
26
|
-
`),
|
|
27
|
-
`,s0.push(e0);var T2=Rf(Function,s0).apply(null,W0);return T2}function Ff(m,v,R,l,g,r,y,G){var B=Rt(R,l);v=E0(v),r=nn(g,r),pn([],[m],function(M){M=M[0];var X=M.name+"."+v;G&&M.registeredClass.pureVirtualFunctions.push(v);function L(){Hr("Cannot call "+X+" due to unbound types",B)}var e0=M.registeredClass.instancePrototype,$=e0[v];return $===void 0||$.overloadTable===void 0&&$.className!==M.name&&$.argCount===R-2?(L.argCount=R-2,L.className=M.name,e0[v]=L):(Zt(e0,v,X),e0[v].overloadTable[R-2]=L),pn([],B,function(s0){var W0=Vf(X,s0,M,r,y);return e0[v].overloadTable===void 0?(W0.argCount=R-2,e0[v]=W0):e0[v].overloadTable[R-2]=W0,[]}),[]})}var Qr=[],L0=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Ft(m){m>4&&--L0[m].refcount===0&&(L0[m]=void 0,Qr.push(m))}function wf(){for(var m=0,v=5;v<L0.length;++v)L0[v]!==void 0&&++m;return m}function kf(){for(var m=5;m<L0.length;++m)if(L0[m]!==void 0)return L0[m];return null}function Wf(){F.count_emval_handles=wf,F.get_first_emval=kf}function Dr(m){switch(m){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{var v=Qr.length?Qr.pop():L0.length;return L0[v]={refcount:1,value:m},v}}}function Xf(m,v){v=E0(v),u2(m,{name:v,fromWireType:function(R){var l=L0[R].value;return Ft(R),l},toWireType:function(R,l){return Dr(l)},argPackAdvance:8,readValueFromPointer:Ln,destructorFunction:null})}function G2(m){if(m===null)return"null";var v=typeof m;return v==="object"||v==="array"||v==="function"?m.toString():""+m}function gf(m,v){switch(v){case 2:return function(R){return this.fromWireType(zr[R>>2])};case 3:return function(R){return this.fromWireType(Mr[R>>3])};default:throw new TypeError("Unknown float type: "+m)}}function Uf(m,v,R){var l=_r(R);v=E0(v),u2(m,{name:v,fromWireType:function(g){return g},toWireType:function(g,r){if(typeof r!="number"&&typeof r!="boolean")throw new TypeError('Cannot convert "'+G2(r)+'" to '+this.name);return r},argPackAdvance:8,readValueFromPointer:gf(v,l),destructorFunction:null})}function df(m,v,R){switch(v){case 0:return R?function(g){return Z2[g]}:function(g){return d0[g]};case 1:return R?function(g){return g2[g>>1]}:function(g){return Qn[g>>1]};case 2:return R?function(g){return N0[g>>2]}:function(g){return f2[g>>2]};default:throw new TypeError("Unknown integer type: "+m)}}function Gf(m,v,R,l,g){v=E0(v),g===-1&&(g=4294967295);var r=_r(R),y=function(M){return M};if(l===0){var G=32-8*R;y=function(M){return M<<G>>>G}}var B=v.indexOf("unsigned")!=-1;u2(m,{name:v,fromWireType:y,toWireType:function(M,X){if(typeof X!="number"&&typeof X!="boolean")throw new TypeError('Cannot convert "'+G2(X)+'" to '+this.name);if(X<l||X>g)throw new TypeError('Passing a number "'+G2(X)+'" from JS side to C/C++ side to an argument of type "'+v+'", which is outside the valid range ['+l+", "+g+"]!");return B?X>>>0:X|0},argPackAdvance:8,readValueFromPointer:df(v,r,l!==0),destructorFunction:null})}function Tf(m,v,R){var l=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],g=l[v];function r(y){y=y>>2;var G=f2,B=G[y],M=G[y+1];return new g(X2,M,B)}R=E0(R),u2(m,{name:R,fromWireType:r,argPackAdvance:8,readValueFromPointer:r},{ignoreDuplicateRegistrations:!0})}function Nf(m,v){v=E0(v);var R=v==="std::string";u2(m,{name:v,fromWireType:function(l){var g=f2[l>>2],r;if(R)for(var y=l+4,G=0;G<=g;++G){var B=l+4+G;if(d0[B]==0||G==g){var M=B-y,X=be(y,M);r===void 0?r=X:(r+=String.fromCharCode(0),r+=X),y=B+1}}else{for(var L=new Array(g),G=0;G<g;++G)L[G]=String.fromCharCode(d0[l+4+G]);r=L.join("")}return R2(l),r},toWireType:function(l,g){g instanceof ArrayBuffer&&(g=new Uint8Array(g));var r,y=typeof g=="string";y||g instanceof Uint8Array||g instanceof Uint8ClampedArray||g instanceof Int8Array||r0("Cannot pass non-string to std::string"),R&&y?r=function(){return A1(g)}:r=function(){return g.length};var G=r(),B=Pr(4+G+1);if(f2[B>>2]=G,R&&y)nt(g,B+4,G+1);else if(y)for(var M=0;M<G;++M){var X=g.charCodeAt(M);X>255&&(R2(B),r0("String has UTF-16 code units that do not fit in 8 bits")),d0[B+4+M]=X}else for(var M=0;M<G;++M)d0[B+4+M]=g[M];return l!==null&&l.push(R2,B),B},argPackAdvance:8,readValueFromPointer:Ln,destructorFunction:function(l){R2(l)}})}function zf(m,v,R){R=E0(R);var l,g,r,y,G;v===2?(l=f1,g=u1,y=o1,r=function(){return Qn},G=1):v===4&&(l=l1,g=c1,y=s1,r=function(){return f2},G=2),u2(m,{name:R,fromWireType:function(B){for(var M=f2[B>>2],X=r(),L,e0=B+4,$=0;$<=M;++$){var s0=B+4+$*v;if(X[s0>>G]==0||$==M){var W0=s0-e0,Q0=l(e0,W0);L===void 0?L=Q0:(L+=String.fromCharCode(0),L+=Q0),e0=s0+v}}return R2(B),L},toWireType:function(B,M){typeof M!="string"&&r0("Cannot pass non-string to C++ string type "+R);var X=y(M),L=Pr(4+X+v);return f2[L>>2]=X>>G,g(M,L+4,X+v),B!==null&&B.push(R2,L),L},argPackAdvance:8,readValueFromPointer:Ln,destructorFunction:function(B){R2(B)}})}function Mf(m,v){v=E0(v),u2(m,{isVoid:!0,name:v,argPackAdvance:0,fromWireType:function(){},toWireType:function(R,l){}})}function Bf(){d2()}function Jf(){return d0.length}function Yf(m){d2("OOM")}function _f(m){m=m>>>0,Yf(m)}function Ef(){d2("trap!")}function jf(m,v,R){d0.copyWithin(m,v,v+R)}x1(),b2=F.BindingError=xr(Error,"BindingError"),st=F.InternalError=xr(Error,"InternalError"),q1(),mf(),lf(),yt=F.UnboundTypeError=xr(Error,"UnboundTypeError"),Wf();var xf=!1;function wt(m){for(var v=[],R=0;R<m.length;R++){var l=m[R];l>255&&(xf&&$2(!1,"Character code "+l+" ("+String.fromCharCode(l)+") at offset "+R+" not in 0x00-0xFF."),l&=255),v.push(String.fromCharCode(l))}return v.join("")}var Sf=typeof atob=="function"?atob:function(m){var v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",R="",l,g,r,y,G,B,M,X=0;m=m.replace(/[^A-Za-z0-9\+\/\=]/g,"");do y=v.indexOf(m.charAt(X++)),G=v.indexOf(m.charAt(X++)),B=v.indexOf(m.charAt(X++)),M=v.indexOf(m.charAt(X++)),l=y<<2|G>>4,g=(G&15)<<4|B>>2,r=(B&3)<<6|M,R=R+String.fromCharCode(l),B!==64&&(R=R+String.fromCharCode(g)),M!==64&&(R=R+String.fromCharCode(r));while(X<m.length);return R};function Cf(m){if(typeof q=="boolean"&&q){var v;try{v=Buffer.from(m,"base64")}catch{v=new Buffer(m,"base64")}return new Uint8Array(v.buffer,v.byteOffset,v.byteLength)}try{for(var R=Sf(m),l=new Uint8Array(R.length),g=0;g<R.length;++g)l[g]=R.charCodeAt(g);return l}catch{throw new Error("Converting base64 string to bytes failed.")}}function y2(m){if(ut(m))return Cf(m.slice(ft.length))}var Of={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Float32Array,Float64Array},If={A:jf,B:_f,C:Ef,D:z1,a:d2,b:aA,c:bA,d:M1,e:J1,f:_1,g:E1,h:ot,i:lt,j:j1,k:O1,l:pf,m:yf,n:Ff,o:Xf,p:Uf,q:Gf,r:Tf,s:Nf,t:zf,u:Mf,v:Ft,w:Dr,x:Bf,y:G2,z:Jf},P=function(m,v,R){var l=new m.Int8Array(R),g=new m.Int16Array(R),r=new m.Int32Array(R),y=new m.Uint8Array(R),G=new m.Uint16Array(R),B=new m.Float32Array(R),M=new m.Float64Array(R),X=v.D|0,L=0,e0=0,$=0,s0=0,W0=0,Q0=0,T2=0,an=0,D=m.Math.imul,l2=m.Math.clz32,G0=v.a,f0=v.b,a=v.c,u0=v.d,qf=v.e,o0=v.f,Kf=v.g,$Z=v.h,LZ=v.i,qZ=v.j,af=v.k,Ut=v.l,dt=v.m,rn=v.n,bf=v.o,Gt=v.p,c2=v.q,j0=v.r,Tt=v.s,qr=v.t,nu=v.u,KZ=v.v,aZ=v.w,ru=v.x,bZ=v.y,eu=v.z,tu=v.A,iu=v.B,Nt=v.C,s=22384,np=5265264,rp=0;function Au(){O5(),I5()}function fu(){uu(0)}function uu(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0;n=s,s=s+16|0,e=n+8|0,t=n,p=k3()|0,f=W3()|0,A=Bn()|0,u=g3()|0,o=U3()|0,c=ai()|0,h=Zr()|0,Z=pr()|0,i=pr()|0,Ut(A|0,u|0,o|0,c|0,h|0,9,Z|0,p|0,i|0,f|0,6204,bi()|0,138),B3(1),r[t>>2]=5,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],S3(6211,e),r[t>>2]=3,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],D3(6216,e),r[t>>2]=10,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],a3(6225,e),f=u5()|0,i=o5()|0,p=Jn()|0,Z=c5()|0,h=s5()|0,c=ai()|0,o=Zr()|0,u=pr()|0,A=pr()|0,Ut(p|0,Z|0,h|0,c|0,o|0,11,u|0,f|0,A|0,i|0,6234,bi()|0,139),R5(2),r[t>>2]=6,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],g5(6211,e),r[t>>2]=4,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],ke(6248,e),r[t>>2]=5,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],ke(6265,e),r[t>>2]=6,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],ke(6280,e),r[t>>2]=7,r[t+4>>2]=0,r[e>>2]=r[t>>2],r[e+4>>2]=r[t+4>>2],_5(6216,e),s=n}function ou(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0;i=s,s=s+32|0,u=i+16|0,A=i+8|0,o=i,f=E(20)|0,pu(f,e,t),r[o>>2]=0,r[u>>2]=r[o>>2],Ru(A,f,u),e=r[A>>2]|0,r[A>>2]=r[n>>2],r[n>>2]=e,e=A+4|0,t=n+4|0,f=r[e>>2]|0,r[e>>2]=r[t>>2],r[t>>2]=f,Kr(A),t=E(352)|0,yu(t,r[n>>2]|0),f=n+8|0,r[o>>2]=0,r[u>>2]=r[o>>2],gu(A,t,u),t=r[A>>2]|0,r[A>>2]=r[f>>2],r[f>>2]=t,f=A+4|0,t=n+12|0,e=r[f>>2]|0,r[f>>2]=r[t>>2],r[t>>2]=e,ar(A),s=i}function lu(n,e){n=n|0,e=e|0,tl(r[n+8>>2]|0,e)}function cu(n){return n=n|0,n=(us(r[n+8>>2]|0)|0)+107|0,y[n>>0]|y[n+1>>0]<<8|y[n+2>>0]<<16|y[n+3>>0]<<24|0}function su(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0;i=s,s=s+32|0,f=i+16|0,A=i+8|0,u=i,o=E(12)|0,os(o,e,t),r[u>>2]=0,r[f>>2]=r[u>>2],ss(A,o,f),o=r[A>>2]|0,r[A>>2]=r[n>>2],r[n>>2]=o,o=A+4|0,t=n+4|0,e=r[o>>2]|0,r[o>>2]=r[t>>2],r[t>>2]=e,Ze(A),t=n+8|0,e=E(12)|0,ls(e,r[n>>2]|0),r[u>>2]=0,r[f>>2]=r[u>>2],ys(A,e,f),e=r[A>>2]|0,r[A>>2]=r[t>>2],r[t>>2]=e,e=A+4|0,u=n+12|0,o=r[e>>2]|0,r[e>>2]=r[u>>2],r[u>>2]=o,Ii(A),cs(A,r[t>>2]|0),t=n+16|0,u=r[A>>2]|0,o=A+4|0,e=r[o>>2]|0,r[A>>2]=0,r[o>>2]=0,r[f>>2]=r[t>>2],r[t>>2]=u,t=n+20|0,r[f+4>>2]=r[t>>2],r[t>>2]=e,Mn(f),Mn(A),s=i}function hu(n,e){n=n|0,e=e|0;var t=0;n=n+16|0,t=r[n>>2]|0;n:do if(t|0)switch(e|0){case 4:{pe(t);break n}case 8:{mr(t),mr(r[n>>2]|0);break n}default:break n}while(0)}function mu(n,e){n=n|0,e=e|0;var t=0;t=n+16|0,n=r[t>>2]|0;n:do if(n|0){switch(e|0){case 1:{s8(n);break n}case 2:{h8(n);break n}case 8:{pe(n),n=r[t>>2]|0;break}case 4:break;default:break n}pe(n)}while(0)}function vu(n,e){n=n|0,e=e|0;var t=0;t=n+16|0,n=r[t>>2]|0;n:do if(n|0){switch(e|0){case 1:{Q8(n);break n}case 2:{D8(n);break n}case 8:{mr(n),n=r[t>>2]|0;break}case 4:break;default:break n}mr(n)}while(0)}function Zu(n,e){n=n|0,e=e|0,n=r[n+16>>2]|0,n|0&&jn[r[r[n>>2]>>2]&63](n,e)|0}function pu(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,r[n+4>>2]=t,r[n+8>>2]=0,l[n+12>>0]=0,l[n+13>>0]=0,r[n+16>>2]=0}function yu(n,e){n=n|0,e=e|0,r[n>>2]=e,Bt(n+4|0,e),Yu(n+247|0),r[n+288>>2]=0,r[n+292>>2]=0,r[n+296>>2]=0,Jt(n+300|0),e=n+312|0,r[e>>2]=0,r[e+4>>2]=0,r[e+8>>2]=0,r[e+12>>2]=0,_u(n+328|0),Eu(n)}function Ru(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4296,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,Vu(n,i),s=t}function Kr(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function Vu(n,e){n=n|0,e=e|0}function ep(n){n=n|0,qf(n|0)|0,mm()}function Fu(n){n=n|0,y0(n),Y(n)}function wu(n){n=n|0,n=r[n+12>>2]|0,n|0&&Y(n)}function ku(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==6407?n+12|0:0)|0}function Wu(n){n=n|0,H(n,16)}function H(n,e){n=n|0,e=e|0,Xu(n)}function Xu(n){n=n|0,Y(n)}function gu(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4324,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,Uu(n,i),s=t}function ar(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function Uu(n,e){n=n|0,e=e|0}function du(n){n=n|0,y0(n),Y(n)}function Gu(n){n=n|0,n=r[n+12>>2]|0,n|0&&(zu(n),Y(n))}function Tu(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==6605?n+12|0:0)|0}function Nu(n){n=n|0,H(n,16)}function zu(n){n=n|0,bn(n+320|0),br(n+312|0),zt(n+300|0),Ju(n+288|0),Mu(n+247|0),Mt(n+4|0)}function bn(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function br(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function zt(n){n=n|0,Bu(n)}function Mu(n){n=n|0,n=n+34|0,n=y[n>>0]|y[n+1>>0]<<8|y[n+2>>0]<<16|y[n+3>>0]<<24,n|0&&TA(n)}function Mt(n){n=n|0,nr(r[n+12>>2]|0)}function Bu(n){n=n|0;var e=0,t=0;e=r[n>>2]|0,t=e,e|0&&(r[n+4>>2]=t,H(e,(r[n+8>>2]|0)-t|0))}function Ju(n){n=n|0;var e=0,t=0;e=r[n>>2]|0,t=e,e|0&&(r[n+4>>2]=t,H(e,(r[n+8>>2]|0)-t|0))}function nr(n){n=n|0,Ne(r[n+-4>>2]|0)}function Bt(n,e){n=n|0,e=e|0,r[n>>2]=e,r[n+4>>2]=0,r[n+8>>2]=0,r[n+12>>2]=N2(1048576)|0}function Yu(n){n=n|0;var e=0;e=n+32|0,l[e>>0]=0,l[e+1>>0]=0,n=n+34|0,l[n>>0]=0,l[n+1>>0]=0,l[n+2>>0]=0,l[n+3>>0]=0}function Jt(n){n=n|0,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0}function _u(n){n=n|0,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,r[n+12>>2]=0,n=n+16|0,r[n>>2]=-1,r[n+4>>2]=-1}function Eu(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0;if(u=s,s=s+64|0,A=u+32|0,t=u+56|0,e=u+16|0,f=u,z2(r[n>>2]|0,t,4),Pu(A,t,t+4|0),t=en(6693)|0,i=l[A+11>>0]|0,(t|0)==((i<<24>>24<0?r[A+4>>2]|0:i&255)|0)){if(i=(uv(A,0,-1,6693,t)|0)==0,En(A),i){if(t=r[n>>2]|0,r[e>>2]=0,r[e+4>>2]=0,r[e+8>>2]=0,r[e+12>>2]=0,r[A>>2]=r[e>>2],r[A+4>>2]=r[e+4>>2],r[A+8>>2]=r[e+8>>2],r[A+12>>2]=r[e+12>>2],kn(t,A),t=n+20|0,z2(r[n>>2]|0,t,227),xu(n,t),i=Su()|0,e=r[i>>2]|0,i=r[i+4>>2]|0,(e|0)!=(i|0))do Cu(A,e),Ou(A,t),ne(A),e=e+24|0;while((e|0)!=(i|0));Iu(n),Hu(n),Qu(r[n>>2]|0),i=r[n>>2]|0,e=(r[n+116>>2]|0)+8|0,t=f,r[t>>2]=0,r[t+4>>2]=0,t=f+8|0,r[t>>2]=e,r[t+4>>2]=0,r[A>>2]=r[f>>2],r[A+4>>2]=r[f+4>>2],r[A+8>>2]=r[f+8>>2],r[A+12>>2]=r[f+12>>2],kn(i,A),Du(n+4|0),s=u;return}}else En(A);u=u0(8)|0,ju(u),o0(u|0,2592,8)}function N2(n){n=n|0;var e=0;return e=wr(n+68|0)|0,n=e+68&-64,r[n+-4>>2]=e,n|0}function z2(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0;u=n+13|0,l[u>>0]|0?l[n+12>>0]=1:(f=n+4|0,i=r[f>>2]|0,o=n+8|0,A=r[o>>2]|0,c=i-A|0,t=(c|0)<(t|0)?c:t,t&&(I0(e|0,(r[n>>2]|0)+A|0,t|0)|0,A=r[o>>2]|0,i=r[f>>2]|0),c=A+t|0,r[o>>2]=c,r[n+16>>2]=t,(c|0)>=(i|0)&&(l[u>>0]=1))}function ju(n){n=n|0,D0(n,6791),r[n>>2]=4352}function kn(n,e){n=n|0,e=e|0;var t=0,i=0,A=0;A=e+8|0,e=r[A>>2]|0,A=r[A+4>>2]|0,t=r[n+4>>2]|0,i=((t|0)<0)<<31>>31,(A|0)<(i|0)|(A|0)==(i|0)&e>>>0<t>>>0?r[n+8>>2]=e:l[n+12>>0]=1}function xu(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0;Z=e+179|0,l[X>>0]=l[Z>>0],l[X+1>>0]=l[Z+1>>0],l[X+2>>0]=l[Z+2>>0],l[X+3>>0]=l[Z+3>>0],l[X+4>>0]=l[Z+4>>0],l[X+5>>0]=l[Z+5>>0],l[X+6>>0]=l[Z+6>>0],l[X+7>>0]=l[Z+7>>0],h=+M[X>>3],u=e+187|0,l[X>>0]=l[u>>0],l[X+1>>0]=l[u+1>>0],l[X+2>>0]=l[u+2>>0],l[X+3>>0]=l[u+3>>0],l[X+4>>0]=l[u+4>>0],l[X+5>>0]=l[u+5>>0],l[X+6>>0]=l[u+6>>0],l[X+7>>0]=l[u+7>>0],p=+M[X>>3],n=e+195|0,l[X>>0]=l[n>>0],l[X+1>>0]=l[n+1>>0],l[X+2>>0]=l[n+2>>0],l[X+3>>0]=l[n+3>>0],l[X+4>>0]=l[n+4>>0],l[X+5>>0]=l[n+5>>0],l[X+6>>0]=l[n+6>>0],l[X+7>>0]=l[n+7>>0],f=+M[X>>3],c=e+203|0,l[X>>0]=l[c>>0],l[X+1>>0]=l[c+1>>0],l[X+2>>0]=l[c+2>>0],l[X+3>>0]=l[c+3>>0],l[X+4>>0]=l[c+4>>0],l[X+5>>0]=l[c+5>>0],l[X+6>>0]=l[c+6>>0],l[X+7>>0]=l[c+7>>0],o=+M[X>>3],A=e+211|0,l[X>>0]=l[A>>0],l[X+1>>0]=l[A+1>>0],l[X+2>>0]=l[A+2>>0],l[X+3>>0]=l[A+3>>0],l[X+4>>0]=l[A+4>>0],l[X+5>>0]=l[A+5>>0],l[X+6>>0]=l[A+6>>0],l[X+7>>0]=l[A+7>>0],t=+M[X>>3],e=e+219|0,l[X>>0]=l[e>>0],l[X+1>>0]=l[e+1>>0],l[X+2>>0]=l[e+2>>0],l[X+3>>0]=l[e+3>>0],l[X+4>>0]=l[e+4>>0],l[X+5>>0]=l[e+5>>0],l[X+6>>0]=l[e+6>>0],l[X+7>>0]=l[e+7>>0],i=+M[X>>3],M[X>>3]=p,l[Z>>0]=l[X>>0],l[Z+1>>0]=l[X+1>>0],l[Z+2>>0]=l[X+2>>0],l[Z+3>>0]=l[X+3>>0],l[Z+4>>0]=l[X+4>>0],l[Z+5>>0]=l[X+5>>0],l[Z+6>>0]=l[X+6>>0],l[Z+7>>0]=l[X+7>>0],M[X>>3]=h,l[c>>0]=l[X>>0],l[c+1>>0]=l[X+1>>0],l[c+2>>0]=l[X+2>>0],l[c+3>>0]=l[X+3>>0],l[c+4>>0]=l[X+4>>0],l[c+5>>0]=l[X+5>>0],l[c+6>>0]=l[X+6>>0],l[c+7>>0]=l[X+7>>0],M[X>>3]=o,l[u>>0]=l[X>>0],l[u+1>>0]=l[X+1>>0],l[u+2>>0]=l[X+2>>0],l[u+3>>0]=l[X+3>>0],l[u+4>>0]=l[X+4>>0],l[u+5>>0]=l[X+5>>0],l[u+6>>0]=l[X+6>>0],l[u+7>>0]=l[X+7>>0],M[X>>3]=f,l[A>>0]=l[X>>0],l[A+1>>0]=l[X+1>>0],l[A+2>>0]=l[X+2>>0],l[A+3>>0]=l[X+3>>0],l[A+4>>0]=l[X+4>>0],l[A+5>>0]=l[X+5>>0],l[A+6>>0]=l[X+6>>0],l[A+7>>0]=l[X+7>>0],M[X>>3]=i,l[n>>0]=l[X>>0],l[n+1>>0]=l[X+1>>0],l[n+2>>0]=l[X+2>>0],l[n+3>>0]=l[X+3>>0],l[n+4>>0]=l[X+4>>0],l[n+5>>0]=l[X+5>>0],l[n+6>>0]=l[X+6>>0],l[n+7>>0]=l[X+7>>0],M[X>>3]=t,l[e>>0]=l[X>>0],l[e+1>>0]=l[X+1>>0],l[e+2>>0]=l[X+2>>0],l[e+3>>0]=l[X+3>>0],l[e+4>>0]=l[X+4>>0],l[e+5>>0]=l[X+5>>0],l[e+6>>0]=l[X+6>>0],l[e+7>>0]=l[X+7>>0]}function Su(){var n=0,e=0,t=0,i=0,A=0,f=0,u=0,o=0;if(A=s,s=s+48|0,t=A+24|0,i=A,n=A+44|0,!(l[21440]|0)&&x2(21440)|0&&(r[5374]=0,r[5375]=0,r[5376]=0,S2(21440)),!(l[21448]|0)&&x2(21448)|0&&S2(21448),(r[5374]|0)==(r[5375]|0)){if(bm(21508),(r[5374]|0)==(r[5375]|0)){l[t>>0]=l[n>>0]|0,Lu(i,t),n=r[5375]|0;do if(n>>>0>=(r[5376]|0)>>>0)if(n=((n-(r[5374]|0)|0)/24|0)+1|0,e=ro(21496)|0,e>>>0<n>>>0)g0(21496);else{f=r[5374]|0,o=((r[5376]|0)-f|0)/24|0,u=o<<1,au(t,o>>>0<e>>>1>>>0?u>>>0<n>>>0?n:u:e,((r[5375]|0)-f|0)/24|0,21504),e=t+8|0,re(r[e>>2]|0,i),r[e>>2]=(r[e>>2]|0)+24,bu(21496,t),no(t);break}else qu(t,21496,1),o=t+4|0,re(r[o>>2]|0,i),r[o>>2]=(r[o>>2]|0)+24,Ku(t);while(0);ne(i)}nv(21508)}return s=A,21496}function Cu(n,e){n=n|0,e=e|0;var t=0,i=0;t=e+16|0,i=r[t>>2]|0;do if(i)if((e|0)==(i|0)){i=Yt(n)|0,r[n+16>>2]=i,t=r[t>>2]|0,k2[r[(r[t>>2]|0)+12>>2]&15](t,i);break}else{r[n+16>>2]=Wr[r[(r[i>>2]|0)+8>>2]&15](i)|0;break}else r[n+16>>2]=0;while(0)}function Ou(n,e){if(n=n|0,e=e|0,n=r[n+16>>2]|0,!n)e=u0(4)|0,r[e>>2]=0,yo(e),o0(e|0,4168,131);else{k2[r[(r[n>>2]|0)+24>>2]&15](n,e);return}}function ne(n){n=n|0;var e=0;e=r[n+16>>2]|0,(n|0)!=(e|0)?e|0&&A0[r[(r[e>>2]|0)+20>>2]&255](e):A0[r[(r[e>>2]|0)+16>>2]&255](e)}function Iu(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0;V=s,s=s+96|0,A=V+16|0,Z=V,o=V+72|0,f=r[n>>2]|0,c=G[n+114>>1]|0,h=Z,r[h>>2]=0,r[h+4>>2]=0,h=Z+8|0,r[h>>2]=c,r[h+4>>2]=0,r[A>>2]=r[Z>>2],r[A+4>>2]=r[Z+4>>2],r[A+8>>2]=r[Z+8>>2],r[A+12>>2]=r[Z+12>>2],kn(f,A),f=n+120|0;n:do if(r[f>>2]|0){for(u=A+2|0,c=A+16|0,h=A+20|0,Z=A+18|0,t=0;;){if(!(rr(r[n>>2]|0)|0)||Ro(r[n>>2]|0)|0)break n;for(z2(r[n>>2]|0,A,54),e=7277,i=u;(l[i>>0]|0)==(l[e>>0]|0);)if(i=i+1|0,(i|0)==(c|0)){p=8;break}else e=e+1|0;if((p|0)==8&&(p=0,(y[Z>>0]|y[Z+1>>0]<<8)<<16>>16==22204))break;if(Fo(r[n>>2]|0,(y[h>>0]|y[h+1>>0]<<8)&65535,0,1),t=t+1|0,t>>>0>=(r[f>>2]|0)>>>0)break n}Z=(y[h>>0]|y[h+1>>0]<<8)&65535,p=GA(Z)|0,z2(r[n>>2]|0,p,Z),Vo(n,p),Y(p),p=n+125|0,ko(o,n+247|0,(y[p>>0]|y[p+1>>0]<<8)&65535),Wo(n+300|0,o)|0,zt(o),s=V;return}while(0);V=u0(8)|0,wo(V),o0(V|0,2672,8)}function Hu(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0;if(p=s,s=s+176|0,A=p+40|0,f=p+24|0,e=p+16|0,i=p,c=p+152|0,h=p+136|0,Z=p+56|0,o=r[n>>2]|0,u=n+116|0,V=r[u>>2]|0,t=f,r[t>>2]=0,r[t+4>>2]=0,t=f+8|0,r[t>>2]=V,r[t+4>>2]=0,r[A>>2]=r[f>>2],r[A+4>>2]=r[f+4>>2],r[A+8>>2]=r[f+8>>2],r[A+12>>2]=r[f+12>>2],kn(o,A),o=e,r[o>>2]=0,r[o+4>>2]=0,z2(r[n>>2]|0,e,8),rr(r[n>>2]|0)|0||(V=u0(8)|0,ee(V),o0(V|0,2704,8)),t=e,e=r[t>>2]|0,t=r[t+4>>2]|0,(e|0)==-1&(t|0)==-1&&(V=u0(8)|0,jt(V,7488),o0(V|0,2720,8)),V=r[n>>2]|0,o=i,r[o>>2]=0,r[o+4>>2]=0,o=i+8|0,r[o>>2]=e,r[o+4>>2]=t,r[A>>2]=r[i>>2],r[A+4>>2]=r[i+4>>2],r[A+8>>2]=r[i+8>>2],r[A+12>>2]=r[i+12>>2],kn(V,A),rr(r[n>>2]|0)|0||(V=u0(8)|0,ee(V),o0(V|0,2704,8)),z2(r[n>>2]|0,A,8),rr(r[n>>2]|0)|0||(V=u0(8)|0,ee(V),o0(V|0,2704,8)),r[A>>2]|0&&(V=u0(8)|0,_o(V),o0(V|0,2736,8)),f=n+288|0,o=n+292|0,r[o>>2]=r[f>>2],V=n+259|0,(y[V>>0]|y[V+1>>0]<<8|y[V+2>>0]<<16|y[V+3>>0]<<24|0)==-1&&(V=u0(8)|0,jt(V,7606),o0(V|0,2720,8)),i=A+4|0,Eo(f,(r[i>>2]|0)+1|0),V=r[f>>2]|0,r[V>>2]=(r[u>>2]|0)+8,r[V+4>>2]=0,(r[i>>2]|0)>>>0>1){if(Bt(c,r[n>>2]|0),xt(h,c),z0(Z,32,2,8,0),te(h),M0(Z),!(r[i>>2]|0))f=r[f>>2]|0,t=f;else{t=1;do t>>>0>1?e=r[(r[f>>2]|0)+(t+-1<<3)>>2]|0:e=0,u=X0(Z,h,e,1)|0,e=r[f>>2]|0,V=e+(t<<3)|0,r[V>>2]=u,r[V+4>>2]=((u|0)<0)<<31>>31,t=t+1|0;while(t>>>0<=(r[i>>2]|0)>>>0);t=e,f=e}if(e=r[o>>2]|0,e-t>>3>>>0>1){A=e-f>>3,i=f,e=1,t=r[i>>2]|0,i=r[i+4>>2]|0;do V=f+(e<<3)|0,o=V,t=O0(r[o>>2]|0,r[o+4>>2]|0,t|0,i|0)|0,i=a()|0,r[V>>2]=t,r[V+4>>2]=i,e=e+1|0;while(e>>>0<A>>>0)}B0(Z),St(h),Mt(c)}s=p}function Qu(n){n=n|0,l[n+12>>0]=0,l[n+13>>0]=0}function Du(n){n=n|0,r[n+8>>2]=0,r[n+4>>2]=0}function en(n){return n=n|0,yr(n)|0}function Pu(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0;if(u=s,s=s+16|0,A=e,f=u,i=t-A|0,i>>>0>4294967279&&Te(n),i>>>0<11?l[n+11>>0]=i:(c=i+16&-16,o=E(c)|0,r[n>>2]=o,r[n+8>>2]=c|-2147483648,r[n+4>>2]=i,n=o),(e|0)!=(t|0)){for(A=t-A|0,i=n;Wn(i,e),e=e+1|0,(e|0)!=(t|0);)i=i+1|0;n=n+A|0}l[f>>0]=0,Wn(n,f),s=u}function Wn(n,e){n=n|0,e=e|0,l[n>>0]=l[e>>0]|0}function $u(n){n=n|0,Y0(n),Y(n)}function Lu(n,e){n=n|0,e=e|0,r[n>>2]=4372,r[n+16>>2]=n}function qu(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,e=r[e+4>>2]|0,r[n+4>>2]=e,r[n+8>>2]=e+(t*24|0)}function Ku(n){n=n|0,r[(r[n>>2]|0)+4>>2]=r[n+4>>2]}function re(n,e){n=n|0,e=e|0;var t=0,i=0;t=e+16|0,i=r[t>>2]|0;do if(i)if((e|0)==(i|0)){i=Yt(n)|0,r[n+16>>2]=i,t=r[t>>2]|0,k2[r[(r[t>>2]|0)+12>>2]&15](t,i);break}else{r[n+16>>2]=i,r[t>>2]=0;break}else r[n+16>>2]=0;while(0)}function Yt(n){return n=n|0,n|0}function au(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;A=n+12|0,r[A>>2]=0,r[n+16>>2]=i;do if(e)if(e>>>0>178956970)A=u0(8)|0,h2(A,6723),r[A>>2]=5956,o0(A|0,3928,123);else{i=E(e*24|0)|0;break}else i=0;while(0);r[n>>2]=i,t=i+(t*24|0)|0,r[n+8>>2]=t,r[n+4>>2]=t,r[A>>2]=i+(e*24|0)}function bu(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;if(o=r[n>>2]|0,c=n+4|0,t=r[c>>2]|0,u=e+4|0,(t|0)==(o|0))A=u,f=n,i=r[u>>2]|0,t=o;else{i=r[u>>2]|0;do t=t+-24|0,re(i+-24|0,t),i=(r[u>>2]|0)+-24|0,r[u>>2]=i;while((t|0)!=(o|0));A=u,f=n,t=r[n>>2]|0}r[f>>2]=i,r[A>>2]=t,o=e+8|0,u=r[c>>2]|0,r[c>>2]=r[o>>2],r[o>>2]=u,o=n+8|0,c=e+12|0,n=r[o>>2]|0,r[o>>2]=r[c>>2],r[c>>2]=n,r[e>>2]=r[A>>2]}function no(n){n=n|0;var e=0,t=0,i=0,A=0;if(t=r[n+4>>2]|0,i=n+8|0,e=r[i>>2]|0,(e|0)!=(t|0))do A=e+-24|0,r[i>>2]=A,ne(A),e=r[i>>2]|0;while((e|0)!=(t|0));e=r[n>>2]|0,e|0&&H(e,(r[n+12>>2]|0)-e|0)}function ro(n){return n=n|0,178956970}function eo(n){n=n|0,Y(n)}function to(n){return n=n|0,n=E(8)|0,r[n>>2]=4372,n|0}function io(n,e){n=n|0,e=e|0,r[e>>2]=4372}function Ao(n){n=n|0}function fo(n){n=n|0,H(n,8)}function uo(n,e){n=n|0,e=e|0,so(n+4|0,e)}function oo(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==7183?n+4|0:0)|0}function lo(n){return n=n|0,2664}function co(n){n=n|0}function so(n,e){n=n|0,e=e|0,ho(n,e)}function ho(n,e){n=n|0,e=e|0;var t=0,i=0;if(n=e+104|0,e=y[n>>0]|0,t=e>>>7,i=e>>>6&1,(t|0)==1&(i|0)!=0&&(i=u0(8)|0,mo(i),o0(i|0,2632,8)),(t|0)==(i|0))i=u0(8)|0,vo(i),o0(i|0,2648,8);else{l[n>>0]=e&63;return}}function mo(n){n=n|0,D0(n,7076),r[n>>2]=4416}function vo(n){n=n|0,D0(n,7144),r[n>>2]=4436}function Zo(n){n=n|0,Y0(n),Y(n)}function po(n){n=n|0,Y0(n),Y(n)}function yo(n){n=n|0,r[n>>2]=6092}function rr(n){n=n|0;var e=0;return e=n+12|0,n=(l[e>>0]|0)==0,l[e>>0]=0,n|0}function Ro(n){return n=n|0,(l[n+13>>0]|0)!=0|0}function Vo(n,e){n=n|0,e=e|0,n=n+247|0,Xo(n,e),(y[n>>0]|y[n+1>>0]<<8)<<16>>16!=2&&(e=u0(8)|0,_t(e),o0(e|0,2688,8))}function Fo(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;switch(i|0){case 0:break;case 2:{i=r[n+4>>2]|0,e=O0(O0(e|0,t|0,-1,-1)|0,a()|0,i|0,((i|0)<0)<<31>>31|0)|0,t=a()|0;break}case 1:{i=r[n+8>>2]|0,e=O0(i|0,((i|0)<0)<<31>>31|0,e|0,t|0)|0,t=a()|0;break}default:t=0,e=0}A=r[n+4>>2]|0,f=((A|0)<0)<<31>>31,i=n+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,r[n+8>>2]=e)}function wo(n){n=n|0,D0(n,7410),r[n>>2]=4476}function ko(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0,h=0;if(u=s,s=s+16|0,f=u,Jt(n),A=e+32|0,(y[A>>0]|y[A+1>>0]<<8)<<16>>16){i=e+34|0,e=0;do c=y[i>>0]|y[i+1>>0]<<8|y[i+2>>0]<<16|y[i+3>>0]<<24,h=c+(e*6|0)|0,o=c+(e*6|0)+2|0,c=c+(e*6|0)+4|0,Xn(f,(y[h>>0]|y[h+1>>0]<<8)&65535,(y[o>>0]|y[o+1>>0]<<8)&65535,(y[c>>0]|y[c+1>>0]<<8)&65535),Et(n,f),t=t-((y[o>>0]|y[o+1>>0]<<8)&65535)|0,e=e+1|0;while(e>>>0<((y[A>>0]|y[A+1>>0]<<8)&65535)>>>0)}(t|0)<0&&(h=u0(8)|0,_t(h),o0(h|0,2688,8)),t|0&&(Xn(f,0,t,2),Et(n,f)),s=u}function Wo(n,e){n=n|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,Jo(n,e,i),s=t,n|0}function Xo(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;if(i=e+2|0,f=y[e>>0]|y[e+1>>0]<<8,l[n>>0]=f,l[n+1>>0]=f>>8,f=n+2|0,i=y[i>>0]|y[i+1>>0]<<8,l[f>>0]=i,l[f+1>>0]=i>>8,l[n+4>>0]=l[e+4>>0]|0,f=e+6|0,l[n+5>>0]=l[e+5>>0]|0,i=e+8|0,t=n+6|0,f=y[f>>0]|y[f+1>>0]<<8,l[t>>0]=f,l[t+1>>0]=f>>8,t=e+12|0,f=n+8|0,i=y[i>>0]|y[i+1>>0]<<8|y[i+2>>0]<<16|y[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=n+12|0,t=y[t>>0]|y[t+1>>0]<<8|y[t+2>>0]<<16|y[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=y[t>>0]|y[t+1>>0]<<8|y[t+2>>0]<<16|y[t+3>>0]<<24,f=f+4|0,f=y[f>>0]|y[f+1>>0]<<8|y[f+2>>0]<<16|y[f+3>>0]<<24,i=n+16|0,u=i,l[u>>0]=t,l[u+1>>0]=t>>8,l[u+2>>0]=t>>16,l[u+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,u=f,u=y[u>>0]|y[u+1>>0]<<8|y[u+2>>0]<<16|y[u+3>>0]<<24,f=f+4|0,f=y[f>>0]|y[f+1>>0]<<8|y[f+2>>0]<<16|y[f+3>>0]<<24,t=n+24|0,A=t,l[A>>0]=u,l[A+1>>0]=u>>8,l[A+2>>0]=u>>16,l[A+3>>0]=u>>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=n+32|0,i=y[i>>0]|y[i+1>>0]<<8,l[f>>0]=i,l[f+1>>0]=i>>8,A=n+34|0,n=y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[A+3>>0]<<24,n?(TA(n),n=y[f>>0]|y[f+1>>0]<<8):n=i,i=GA((n&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,n<<16>>16&&(n=e+36|0,u=y[t>>0]|y[t+1>>0]<<8,l[i>>0]=u,l[i+1>>0]=u>>8,e=e+38|0,u=i+2|0,n=y[n>>0]|y[n+1>>0]<<8,l[u>>0]=n,l[u+1>>0]=n>>8,u=i+4|0,e=y[e>>0]|y[e+1>>0]<<8,l[u>>0]=e,l[u+1>>0]=e>>8,((y[f>>0]|y[f+1>>0]<<8)&65535)>1)){n=1;do e=t,t=t+6|0,u=y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[A+3>>0]<<24,o=e+8|0,i=u+(n*6|0)|0,c=y[t>>0]|y[t+1>>0]<<8,l[i>>0]=c,l[i+1>>0]=c>>8,e=e+10|0,i=u+(n*6|0)+2|0,o=y[o>>0]|y[o+1>>0]<<8,l[i>>0]=o,l[i+1>>0]=o>>8,u=u+(n*6|0)+4|0,e=y[e>>0]|y[e+1>>0]<<8,l[u>>0]=e,l[u+1>>0]=e>>8,n=n+1|0;while(n>>>0<((y[f>>0]|y[f+1>>0]<<8)&65535)>>>0)}}function _t(n){n=n|0,D0(n,7354),r[n>>2]=4456}function go(n){n=n|0,Y0(n),Y(n)}function Uo(n){n=n|0,Y0(n),Y(n)}function Et(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0;o=s,s=s+32|0,A=o,f=n+4|0,t=r[f>>2]|0,u=n+8|0;do if((t|0)==(r[u>>2]|0))if(t=((t-(r[n>>2]|0)|0)/12|0)+1|0,i=Bo(n)|0,i>>>0<t>>>0)g0(n);else{c=r[n>>2]|0,h=((r[u>>2]|0)-c|0)/12|0,u=h<<1,No(A,h>>>0<i>>>1>>>0?u>>>0<t>>>0?t:u:i,((r[f>>2]|0)-c|0)/12|0,n+8|0),u=A+8|0,f=r[u>>2]|0,r[f>>2]=r[e>>2],r[f+4>>2]=r[e+4>>2],r[f+8>>2]=r[e+8>>2],r[u>>2]=(r[u>>2]|0)+12,zo(n,A),Mo(A);break}else Go(A,n,1),h=A+4|0,c=r[h>>2]|0,r[c>>2]=r[e>>2],r[c+4>>2]=r[e+4>>2],r[c+8>>2]=r[e+8>>2],r[h>>2]=(r[h>>2]|0)+12,To(A);while(0);s=o}function Xn(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0,r[n>>2]=e,r[n+4>>2]=t,r[n+8>>2]=i}function Go(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,e=r[e+4>>2]|0,r[n+4>>2]=e,r[n+8>>2]=e+(t*12|0)}function To(n){n=n|0,r[(r[n>>2]|0)+4>>2]=r[n+4>>2]}function No(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;A=n+12|0,r[A>>2]=0,r[n+16>>2]=i;do if(e)if(e>>>0>357913941)A=u0(8)|0,h2(A,6723),r[A>>2]=5956,o0(A|0,3928,123);else{i=E(e*12|0)|0;break}else i=0;while(0);r[n>>2]=i,t=i+(t*12|0)|0,r[n+8>>2]=t,r[n+4>>2]=t,r[A>>2]=i+(e*12|0)}function zo(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;i=r[n>>2]|0,u=n+4|0,f=e+4|0,A=(r[u>>2]|0)-i|0,t=(r[f>>2]|0)+(((A|0)/-12|0)*12|0)|0,r[f>>2]=t,(A|0)>0?(_0(t|0,i|0,A|0)|0,i=f,t=r[f>>2]|0):i=f,f=r[n>>2]|0,r[n>>2]=t,r[i>>2]=f,f=e+8|0,A=r[u>>2]|0,r[u>>2]=r[f>>2],r[f>>2]=A,f=n+8|0,u=e+12|0,n=r[f>>2]|0,r[f>>2]=r[u>>2],r[u>>2]=n,r[e>>2]=r[i>>2]}function Mo(n){n=n|0;var e=0,t=0,i=0;e=r[n+4>>2]|0,t=n+8|0,i=r[t>>2]|0,(i|0)!=(e|0)&&(r[t>>2]=i+(~(((i+-12-e|0)>>>0)/12|0)*12|0)),e=r[n>>2]|0,e|0&&H(e,(r[n+12>>2]|0)-e|0)}function Bo(n){return n=n|0,357913941}function Jo(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;Yo(n),r[n>>2]=r[e>>2],t=e+4|0,r[n+4>>2]=r[t>>2],i=e+8|0,r[n+8>>2]=r[i>>2],r[i>>2]=0,r[t>>2]=0,r[e>>2]=0}function Yo(n){n=n|0;var e=0,t=0,i=0,A=0;e=r[n>>2]|0,t=e,e|0&&(i=n+4|0,r[i>>2]=t,A=n+8|0,H(e,(r[A>>2]|0)-t|0),r[A>>2]=0,r[i>>2]=0,r[n>>2]=0)}function ee(n){n=n|0,D0(n,7660),r[n>>2]=4496}function jt(n,e){n=n|0,e=e|0,D0(n,e),r[n>>2]=4516}function _o(n){n=n|0,D0(n,7704),r[n>>2]=4536}function Eo(n,e){n=n|0,e=e|0;var t=0,i=0,A=0;t=n+4|0,A=r[n>>2]|0,i=(r[t>>2]|0)-A>>3,i>>>0>=e>>>0?i>>>0>e>>>0&&(r[t>>2]=A+(e<<3)):Co(n,e-i|0)}function xt(n,e){n=n|0,e=e|0,r[n>>2]=e,r[n+4>>2]=0,r[n+8>>2]=-1}function z0(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0;r[n+4>>2]=e,r[n+8>>2]=t,r[n+12>>2]=i,r[n+16>>2]=A,r[n+36>>2]=0,r[n+40>>2]=0,r[n+44>>2]=0,Ct(n+48|0),r[n+68>>2]=0,r[n+72>>2]=0,r[n+76>>2]=0;do if(A){for(i=n+20|0,r[i>>2]=0,r[n+24>>2]=A,t=A,f=0;t=t>>>1,e=f+1|0,t;)f=e;r[i>>2]=(1<<f|0)==(A|0)?f:e,t=A>>>1,r[n+28>>2]=0-t,t=A+-1-t|0}else if(t=n+20|0,(e+-1|0)>>>0<31){r[t>>2]=e,A=1<<e,r[n+24>>2]=A,t=A>>>1,r[n+28>>2]=0-t,t=A+-1-t|0;break}else{r[t>>2]=32,r[n+24>>2]=0,r[n+28>>2]=-2147483648,t=2147483647;break}while(0);r[n+32>>2]=t,r[n>>2]=0}function te(n){n=n|0;var e=0;e=((gn(r[n>>2]|0)|0)&255)<<24,e=((gn(r[n>>2]|0)|0)&255)<<16|e,e=e|((gn(r[n>>2]|0)|0)&255)<<8,r[n+4>>2]=e|(gn(r[n>>2]|0)|0)&255}function M0(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0,S=0,z=0,N=0;w=s,s=s+64|0,k=w+44|0,W=w,h=n+36|0,Z=n+40|0;n:do if((r[h>>2]|0)==(r[Z>>2]|0)){p=n+8|0;r:do if(!(r[p>>2]|0))V=n+20|0;else{for(A=n+20|0,f=n+44|0,u=k+4|0,o=n+44|0,c=k+8|0,i=0;;){if(F0(W,(r[A>>2]|0)+1|0,0,0),e=r[Z>>2]|0,e>>>0<(r[f>>2]|0)>>>0)It(k,h,1),tr(r[u>>2]|0,W),r[u>>2]=(r[u>>2]|0)+44,Ht(k);else{if(e=((e-(r[h>>2]|0)|0)/44|0)+1|0,t=$t(h)|0,t>>>0<e>>>0)break;S=r[h>>2]|0,N=((r[f>>2]|0)-S|0)/44|0,z=N<<1,Qt(k,N>>>0<t>>>1>>>0?z>>>0<e>>>0?e:z:t,((r[Z>>2]|0)-S|0)/44|0,o),tr(r[c>>2]|0,W),r[c>>2]=(r[c>>2]|0)+44,Dt(h,k),Pt(k)}if(m0(W),i=i+1|0,i>>>0>=(r[p>>2]|0)>>>0){V=A;break r}}g0(h)}while(0);if(r[V>>2]|0){for(u=n+12|0,o=n+68|0,c=n+72|0,h=n+76|0,Z=k+4|0,A=n+76|0,f=k+8|0,i=1;;){if(e=r[u>>2]|0,F0(W,1<<(i>>>0>e>>>0?e:i),0,0),e=r[c>>2]|0,e>>>0<(r[h>>2]|0)>>>0)It(k,o,1),tr(r[Z>>2]|0,W),r[Z>>2]=(r[Z>>2]|0)+44,Ht(k);else{if(e=((e-(r[o>>2]|0)|0)/44|0)+1|0,t=$t(o)|0,t>>>0<e>>>0)break;N=r[o>>2]|0,S=((r[h>>2]|0)-N|0)/44|0,z=S<<1,Qt(k,S>>>0<t>>>1>>>0?z>>>0<e>>>0?e:z:t,((r[c>>2]|0)-N|0)/44|0,A),tr(r[f>>2]|0,W),r[f>>2]=(r[f>>2]|0)+44,Dt(o,k),Pt(k)}if(m0(W),i=i+1|0,i>>>0>(r[V>>2]|0)>>>0)break n}g0(o)}}while(0);s=w}function X0(n,e,t,i){return n=n|0,e=e|0,t=t|0,i=i|0,t=(rl(n,e,(r[n+36>>2]|0)+(i*44|0)|0)|0)+t|0,e=r[n+24>>2]|0,(t|0)<0?t+e|0:t-(t>>>0<e>>>0?0:e)|0}function B0(n){n=n|0,er(n+68|0),er(n+36|0)}function St(n){n=n|0}function jo(n){n=n|0,Y0(n),Y(n)}function xo(n){n=n|0,Y0(n),Y(n)}function So(n){n=n|0,Y0(n),Y(n)}function Co(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0;o=s,s=s+32|0,A=o,f=n+8|0,u=n+4|0,t=r[u>>2]|0;do if((r[f>>2]|0)-t>>3>>>0<e>>>0)if(t=(t-(r[n>>2]|0)>>3)+e|0,i=Lo(n)|0,i>>>0<t>>>0)g0(n);else{c=r[n>>2]|0,h=(r[f>>2]|0)-c|0,f=h>>2,Io(A,h>>3>>>0<i>>>1>>>0?f>>>0<t>>>0?t:f:i,(r[u>>2]|0)-c>>3,n+8|0),Ho(A,e),Qo(n,A),Do(A);break}else Oo(n,e);while(0);s=o}function Oo(n,e){n=n|0,e=e|0;var t=0,i=0,A=0;A=s,s=s+16|0,i=A,Po(i,n,e),n=i+4|0,e=r[n>>2]|0,t=r[i+8>>2]|0,(e|0)!=(t|0)&&(t=t+-8-e|0,O2(e|0,0,t+8&-8|0)|0,r[n>>2]=e+((t>>>3)+1<<3)),$o(i),s=A}function Io(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;A=n+12|0,r[A>>2]=0,r[n+16>>2]=i;do if(e)if(e>>>0>536870911)A=u0(8)|0,h2(A,6723),r[A>>2]=5956,o0(A|0,3928,123);else{i=E(e<<3)|0;break}else i=0;while(0);r[n>>2]=i,t=i+(t<<3)|0,r[n+8>>2]=t,r[n+4>>2]=t,r[A>>2]=i+(e<<3)}function Ho(n,e){n=n|0,e=e|0;var t=0,i=0;i=s,s=s+16|0,t=i,qo(t,n+8|0,e),n=r[t>>2]|0,e=r[t+4>>2]|0,(n|0)!=(e|0)&&(e=e+-8-n|0,O2(n|0,0,e+8&-8|0)|0,r[t>>2]=n+((e>>>3)+1<<3)),Ko(t),s=i}function Qo(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;i=r[n>>2]|0,u=n+4|0,f=e+4|0,A=(r[u>>2]|0)-i|0,t=(r[f>>2]|0)+(0-(A>>3)<<3)|0,r[f>>2]=t,(A|0)>0?(_0(t|0,i|0,A|0)|0,i=f,t=r[f>>2]|0):i=f,f=r[n>>2]|0,r[n>>2]=t,r[i>>2]=f,f=e+8|0,A=r[u>>2]|0,r[u>>2]=r[f>>2],r[f>>2]=A,f=n+8|0,u=e+12|0,n=r[f>>2]|0,r[f>>2]=r[u>>2],r[u>>2]=n,r[e>>2]=r[i>>2]}function Do(n){n=n|0;var e=0,t=0,i=0;e=r[n+4>>2]|0,t=n+8|0,i=r[t>>2]|0,(i|0)!=(e|0)&&(r[t>>2]=i+(~((i+-8-e|0)>>>3)<<3)),e=r[n>>2]|0,e|0&&H(e,(r[n+12>>2]|0)-e|0)}function Po(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,e=r[e+4>>2]|0,r[n+4>>2]=e,r[n+8>>2]=e+(t<<3)}function $o(n){n=n|0,r[(r[n>>2]|0)+4>>2]=r[n+4>>2]}function Lo(n){return n=n|0,536870911}function qo(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=r[e>>2],r[n+4>>2]=(r[e>>2]|0)+(t<<3),r[n+8>>2]=e}function Ko(n){n=n|0,r[r[n+8>>2]>>2]=r[n>>2]}function Ct(n){n=n|0,r[n+12>>2]=1,r[n+16>>2]=2,r[n+8>>2]=4096,r[n+4>>2]=4,r[n>>2]=4}function er(n){n=n|0;var e=0,t=0,i=0;if(t=r[n>>2]|0,t|0){if(i=n+4|0,e=r[i>>2]|0,(e|0)==(t|0))e=t;else{do e=e+-44|0,m0(e);while((e|0)!=(t|0));e=r[n>>2]|0}r[i>>2]=t,H(e,(r[n+8>>2]|0)-e|0)}}function m0(n){n=n|0;var e=0;e=r[n+8>>2]|0,e|0&&nr(e),e=r[n+12>>2]|0,e|0&&nr(e),e=r[n+16>>2]|0,e|0&&nr(e)}function gn(n){n=n|0;var e=0,t=0;return t=n+4|0,e=r[t>>2]|0,(e|0)>=(r[n+8>>2]|0)&&(Ot(n),e=r[t>>2]|0),n=r[n+12>>2]|0,r[t>>2]=e+1,l[n+e>>0]|0}function Ot(n){n=n|0;var e=0;if(r[n+4>>2]=0,z2(r[n>>2]|0,r[n+12>>2]|0,1048576),e=ao(r[n>>2]|0)|0,r[n+8>>2]=e,!e)e=u0(8)|0,bo(e),o0(e|0,2752,8);else return}function ao(n){return n=n|0,r[n+16>>2]|0}function bo(n){n=n|0,D0(n,7769),r[n>>2]=4556}function nl(n){n=n|0,Y0(n),Y(n)}function F0(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,u=0;if(r[n>>2]=e,l[n+4>>0]=t&1,f=n+8|0,r[f>>2]=0,u=n+12|0,r[u>>2]=0,A=n+16|0,r[A>>2]=0,(e+-2|0)>>>0>2046&&(n=u0(8)|0,D0(n,7789),o0(n|0,3912,8)),r[n+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,r[n+36>>2]=e,r[n+40>>2]=15-t,r[A>>2]=N2((e<<2)+8|0)|0,e=r[n>>2]|0}else r[A>>2]=0,r[n+40>>2]=0,r[n+36>>2]=0;if(r[f>>2]=N2(e<<2)|0,A=N2(r[n>>2]<<2)|0,r[u>>2]=A,r[n+20>>2]=0,e=r[n>>2]|0,t=n+24|0,r[t>>2]=e,e=(e|0)!=0,i){if(e){e=0;do r[A+(e<<2)>>2]=r[i+(e<<2)>>2],e=e+1|0;while(e>>>0<(r[n>>2]|0)>>>0)}}else if(e){e=0;do r[A+(e<<2)>>2]=1,e=e+1|0;while(e>>>0<(r[n>>2]|0)>>>0)}Ae(n),i=((r[n>>2]|0)+6|0)>>>1,r[t>>2]=i,r[n+28>>2]=i}function It(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,e=r[e+4>>2]|0,r[n+4>>2]=e,r[n+8>>2]=e+(t*44|0)}function Ht(n){n=n|0,r[(r[n>>2]|0)+4>>2]=r[n+4>>2]}function tr(n,e){n=n|0,e=e|0;var t=0;r[n>>2]=r[e>>2],l[n+4>>0]=l[e+4>>0]|0,t=e+8|0,r[n+8>>2]=r[t>>2],r[n+12>>2]=r[e+12>>2],r[n+16>>2]=r[e+16>>2],r[n+20>>2]=r[e+20>>2],r[n+24>>2]=r[e+24>>2],r[n+28>>2]=r[e+28>>2],r[n+32>>2]=r[e+32>>2],r[n+36>>2]=r[e+36>>2],r[n+40>>2]=r[e+40>>2],r[t>>2]=0,r[t+4>>2]=0,r[t+8>>2]=0}function Qt(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;A=n+12|0,r[A>>2]=0,r[n+16>>2]=i;do if(e)if(e>>>0>97612893)A=u0(8)|0,h2(A,6723),r[A>>2]=5956,o0(A|0,3928,123);else{i=E(e*44|0)|0;break}else i=0;while(0);r[n>>2]=i,t=i+(t*44|0)|0,r[n+8>>2]=t,r[n+4>>2]=t,r[A>>2]=i+(e*44|0)}function Dt(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;if(o=r[n>>2]|0,c=n+4|0,t=r[c>>2]|0,u=e+4|0,(t|0)==(o|0))A=u,f=n,i=r[u>>2]|0,t=o;else{i=r[u>>2]|0;do t=t+-44|0,ie(i+-44|0,t),i=(r[u>>2]|0)+-44|0,r[u>>2]=i;while((t|0)!=(o|0));A=u,f=n,t=r[n>>2]|0}r[f>>2]=i,r[A>>2]=t,o=e+8|0,u=r[c>>2]|0,r[c>>2]=r[o>>2],r[o>>2]=u,o=n+8|0,c=e+12|0,n=r[o>>2]|0,r[o>>2]=r[c>>2],r[c>>2]=n,r[e>>2]=r[A>>2]}function Pt(n){n=n|0;var e=0,t=0,i=0,A=0;if(t=r[n+4>>2]|0,i=n+8|0,e=r[i>>2]|0,(e|0)!=(t|0))do A=e+-44|0,r[i>>2]=A,m0(A),e=r[i>>2]|0;while((e|0)!=(t|0));e=r[n>>2]|0,e|0&&H(e,(r[n+12>>2]|0)-e|0)}function $t(n){return n=n|0,97612893}function ie(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;t=r[e>>2]|0,r[n>>2]=t,l[n+4>>0]=l[e+4>>0]|0,r[n+20>>2]=r[e+20>>2],r[n+24>>2]=r[e+24>>2],r[n+28>>2]=r[e+28>>2],r[n+32>>2]=r[e+32>>2],f=n+36|0,r[f>>2]=r[e+36>>2],r[n+40>>2]=r[e+40>>2],t=t<<2,i=N2(t)|0,r[n+8>>2]=i,A=r[n>>2]|0,A|0&&I0(i|0,r[e+8>>2]|0,A<<2|0)|0,t=N2(t)|0,r[n+12>>2]=t,i=r[n>>2]|0,i|0&&I0(t|0,r[e+12>>2]|0,i<<2|0)|0,t=r[f>>2]|0,t?(i=N2((t<<2)+8|0)|0,r[n+16>>2]=i,t=(r[f>>2]<<2)+8|0,t|0&&I0(i|0,r[e+16>>2]|0,t|0)|0):r[n+16>>2]=0}function Ae(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0;if(W=n+24|0,A=n+20|0,e=(r[A>>2]|0)+(r[W>>2]|0)|0,r[A>>2]=e,e>>>0>32768)if(r[A>>2]=0,!(r[n>>2]|0))e=0;else{i=r[n+12>>2]|0,t=0;do p=i+(t<<2)|0,e=((r[p>>2]|0)+1|0)>>>1,r[p>>2]=e,e=(r[A>>2]|0)+e|0,r[A>>2]=e,t=t+1|0;while(t>>>0<(r[n>>2]|0)>>>0)}p=2147483648/(e>>>0)|0;do if(!(l[n+4>>0]|0)&&(V=n+36|0,(r[V>>2]|0)!=0)){if(r[n>>2]|0){o=r[n+8>>2]|0,c=r[n+12>>2]|0,h=n+40|0,Z=n+16|0,e=0,f=0,u=0;do{if(t=(D(f,p)|0)>>>16,r[o+(u<<2)>>2]=t,f=(r[c+(u<<2)>>2]|0)+f|0,t=t>>>(r[h>>2]|0),e>>>0<t>>>0){i=u+-1|0,A=r[Z>>2]|0;do e=e+1|0,r[A+(e<<2)>>2]=i;while((e|0)!=(t|0));e=t}u=u+1|0}while(u>>>0<(r[n>>2]|0)>>>0);if(t=r[Z>>2]|0,r[t>>2]=0,e>>>0>(r[V>>2]|0)>>>0){e=n;break}}else t=r[n+16>>2]|0,r[t>>2]=0,e=0;do e=e+1|0,r[t+(e<<2)>>2]=(r[n>>2]|0)+-1;while(e>>>0<=(r[V>>2]|0)>>>0);e=n}else k=7;while(0);if((k|0)==7)if(!(r[n>>2]|0))e=n;else{i=r[n+8>>2]|0,A=r[n+12>>2]|0,e=0,t=0;do r[i+(e<<2)>>2]=(D(t,p)|0)>>>16,t=(r[A+(e<<2)>>2]|0)+t|0,e=e+1|0;while(e>>>0<(r[n>>2]|0)>>>0);e=n}k=((r[W>>2]|0)*5|0)>>>2,V=(r[e>>2]<<3)+48|0,k=k>>>0>V>>>0?V:k,r[W>>2]=k,r[n+28>>2]=k}function rl(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;t=w0(e,t)|0,r[n>>2]=t;do if(t){if(t>>>0>=32){t=r[n+28>>2]|0;break}if(i=r[n+12>>2]|0,t>>>0>i>>>0?(i=t-i|0,t=w0(e,(r[n+68>>2]|0)+((t+-1|0)*44|0)|0)|0,i=t<<i|(Lt(e,i)|0)):i=w0(e,(r[n+68>>2]|0)+((t+-1|0)*44|0)|0)|0,t=r[n>>2]|0,(i|0)<(1<<t+-1|0)){t=i+1+(-1<<t)|0;break}else{t=i+1|0;break}}else t=el(e,n+48|0)|0;while(0);return t|0}function w0(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0;if(V=n+8|0,p=r[V>>2]|0,A=r[e+16>>2]|0,A){if(i=n+4|0,t=r[i>>2]|0,Z=p>>>15,r[V>>2]=Z,c=(t>>>0)/(Z>>>0)|0,o=c>>>(r[e+40>>2]|0),f=r[A+(o<<2)>>2]|0,o=(r[A+(o+1<<2)>>2]|0)+1|0,u=f+1|0,h=r[e+8>>2]|0,o>>>0>u>>>0){A=f,f=o;do u=(f+A|0)>>>1,o=(r[h+(u<<2)>>2]|0)>>>0>c>>>0,A=o?A:u,f=o?u:f,u=A+1|0;while(f>>>0>u>>>0);f=A}A=D(r[h+(f<<2)>>2]|0,Z)|0,(f|0)==(r[e+32>>2]|0)?u=p:u=D(r[h+(u<<2)>>2]|0,Z)|0}else{h=p>>>15,r[V>>2]=h,o=r[e>>2]|0,Z=r[e+8>>2]|0,i=n+4|0,t=r[i>>2]|0,c=o>>>1,A=0,u=p,f=0;do k=D(r[Z+(c<<2)>>2]|0,h)|0,p=k>>>0>t>>>0,u=p?k:u,A=p?A:k,f=p?f:c,o=p?c:o,c=(f+o|0)>>>1;while((c|0)!=(f|0))}return r[i>>2]=t-A,k=u-A|0,r[V>>2]=k,k>>>0<16777216&&ir(n),V=(r[e+12>>2]|0)+(f<<2)|0,r[V>>2]=(r[V>>2]|0)+1,V=e+28|0,k=(r[V>>2]|0)+-1|0,r[V>>2]=k,k||Ae(e),f|0}function Lt(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;return e>>>0>19?(t=(fe(n)|0)&65535,(Lt(n,e+-16|0)|0)<<16|t|0):(i=n+4|0,A=r[i>>2]|0,f=n+8|0,t=(r[f>>2]|0)>>>e,r[f>>2]=t,e=(A>>>0)/(t>>>0)|0,r[i>>2]=A-(D(e,t)|0),t>>>0<16777216&&ir(n),e|0)}function el(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0;return i=n+8|0,A=r[i>>2]|0,t=D(A>>>13,r[e+8>>2]|0)|0,f=n+4|0,u=r[f>>2]|0,o=u>>>0>=t>>>0,o?(r[f>>2]=u-t,t=A-t|0,r[i>>2]=t):(r[i>>2]=t,u=e+12|0,r[u>>2]=(r[u>>2]|0)+1),t>>>0<16777216&&ir(n),u=e+4|0,n=(r[u>>2]|0)+-1|0,r[u>>2]=n,n||qt(e),o&1|0}function ir(n){n=n|0;var e=0,t=0,i=0,A=0;e=n+4|0,t=n+8|0,i=r[e>>2]|0;do i=i<<8|(gn(r[n>>2]|0)|0)&255,r[e>>2]=i,A=r[t>>2]<<8,r[t>>2]=A;while(A>>>0<16777216)}function fe(n){n=n|0;var e=0,t=0,i=0,A=0;return t=n+4|0,A=r[t>>2]|0,e=n+8|0,i=(r[e>>2]|0)>>>16,r[e>>2]=i,e=(A>>>0)/(i>>>0)|0,r[t>>2]=A-(D(e,i)|0),ir(n),e&65535|0}function qt(n){n=n|0;var e=0,t=0,i=0,A=0,f=0;A=r[n>>2]|0,t=n+16|0,e=(r[t>>2]|0)+A|0,r[t>>2]=e,e>>>0>8192?(i=(e+1|0)>>>1,r[t>>2]=i,f=n+12|0,e=((r[f>>2]|0)+1|0)>>>1,r[f>>2]=e,(e|0)==(i|0)?(e=i+1|0,r[t>>2]=e,t=e,e=i):t=i):(t=e,e=r[n+12>>2]|0),r[n+8>>2]=(D(e,2147483648/(t>>>0)|0)|0)>>>18,f=A*5|0,f=f>>>0>259?64:f>>>2,r[n>>2]=f,r[n+4>>2]=f}function tl(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0;Z=s,s=s+32|0,f=Z+16|0,u=Z+8|0,o=Z,c=n+336|0,i=c,A=n+259|0,!(r[i+4>>2]|0)&&(r[i>>2]|0)==(y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[A+3>>0]<<24|0)?(i=n+320|0,t=r[n+320>>2]|0,h=5):(i=n+320|0,t=r[i>>2]|0,A=t,t|0&&r[n+312>>2]|0||(t=A,h=5)),(h|0)==5&&(h=n+320|0,r[f>>2]=t,r[h>>2]=0,t=n+324|0,r[f+4>>2]=r[t>>2],r[t>>2]=0,bn(f),A=n+312|0,r[f>>2]=r[A>>2],r[A>>2]=0,p=n+316|0,r[f+4>>2]=r[p>>2],r[p>>2]=0,br(f),V=E(12)|0,xt(V,n+4|0),r[o>>2]=0,r[f>>2]=r[o>>2],Al(u,V,f),V=r[u>>2]|0,r[u>>2]=r[A>>2],r[A>>2]=V,V=u+4|0,o=r[V>>2]|0,r[V>>2]=r[p>>2],r[p>>2]=o,br(u),il(u,r[A>>2]|0,n+300|0),A=r[u>>2]|0,p=u+4|0,o=r[p>>2]|0,r[u>>2]=0,r[p>>2]=0,r[f>>2]=r[h>>2],r[h>>2]=A,r[f+4>>2]=r[t>>2],r[t>>2]=o,bn(f),bn(u),t=n+328|0,o=t,o=O0(r[o>>2]|0,r[o+4>>2]|0,1,0)|0,h=a()|0,r[t>>2]=o,r[t+4>>2]=h,t=c,r[t>>2]=0,r[t+4>>2]=0,t=r[i>>2]|0),jn[r[r[t>>2]>>2]&63](t,e)|0,h=c,h=O0(r[h>>2]|0,r[h+4>>2]|0,1,0)|0,p=a()|0,V=c,r[V>>2]=h,r[V+4>>2]=p,s=Z}function il(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;u=s,s=s+64|0,i=u+56|0,A=u,f=sl(t)|0,(f|0)==-1&&(u=u0(8)|0,hl(u),o0(u|0,2784,8)),t=Kt(t)|0;n:do if(t)ml(i,e),vl(r[i>>2]|0),(f|2|0)==3&&Zl(r[i>>2]|0),(f|1|0)==3&&pl(r[i>>2]|0),f=r[i>>2]|0,Rl(A,t),yl(f,A),at(A),r[n>>2]=r[i>>2],f=i+4|0,r[n+4>>2]=r[f>>2],r[i>>2]=0,r[f>>2]=0,Vl(i);else switch(f|0){case 0:{f=E(4788)|0,wl(f),Fl(n,e,f);break n}case 1:{f=E(5116)|0,Wl(f),kl(n,e,f);break n}case 2:{f=E(5104)|0,gl(f),Xl(n,e,f);break n}case 3:{f=E(5432)|0,dl(f),Ul(n,e,f);break n}default:{r[n>>2]=0,r[n+4>>2]=0;break n}}while(0);s=u}function Al(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4576,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,fl(n,i),s=t}function fl(n,e){n=n|0,e=e|0}function ul(n){n=n|0,y0(n),Y(n)}function ol(n){n=n|0,n=r[n+12>>2]|0,n|0&&(St(n),Y(n))}function ll(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==7983?n+12|0:0)|0}function cl(n){n=n|0,H(n,16)}function sl(n){n=n|0;var e=0,t=0;e=(r[n+4>>2]|0)-(r[n>>2]|0)|0;n:do if(e|0&&(t=((e|0)/12|0)+(((Kt(n)|0)!=0)<<31>>31)|0,(t|0)!=0)&&(e=r[n>>2]|0,!(Gl(e,Tl()|0)|0))){switch(t|0){case 1:{n=0;break n}case 2:{if(Un((r[n>>2]|0)+12|0,bt()|0)|0){n=1;break n}if(Un((r[n>>2]|0)+12|0,ni()|0)|0){n=2;break n}break}case 3:{if(Un((r[n>>2]|0)+12|0,bt()|0)|0&&(t=(r[n>>2]|0)+24|0,Un(t,ni()|0)|0)){n=3;break n}break}default:}n=-1}else n=-1;while(0);return n|0}function hl(n){n=n|0,D0(n,8131),r[n>>2]=4604}function Kt(n){n=n|0;var e=0,t=0;return e=r[n+4>>2]|0,(e|0)!=(r[n>>2]|0)&&(t=e,(r[t+-12>>2]|0)==0)&&(r[t+-4>>2]|0)==2?n=r[t+-8>>2]|0:n=0,n|0}function ml(n,e){n=n|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=E(24)|0,zl(A,e),r[f>>2]=0,r[i>>2]=r[f>>2],Ml(n,A,i),s=t}function vl(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(4792)|0,Cl(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],Ol(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function Zl(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(336)|0,lc(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],cc(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function pl(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(324)|0,Gc(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],Tc(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function yl(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,u=c+12|0,o=c,i=c+8|0,f=E(64)|0,xc(f,r[n+4>>2]|0,e),A=n+8|0,r[i>>2]=0,r[u>>2]=r[i>>2],Sc(o,f,u),f=n+12|0,e=r[f>>2]|0,i=n+16|0;do if(e>>>0>=(r[i>>2]|0)>>>0)if(e=(e-(r[A>>2]|0)>>3)+1|0,t=r2(A)|0,t>>>0<e>>>0)g0(A);else{h=r[A>>2]|0,Z=(r[i>>2]|0)-h|0,i=Z>>2,a0(u,Z>>3>>>0<t>>>1>>>0?i>>>0<e>>>0?e:i:t,(r[f>>2]|0)-h>>3,n+16|0),n=u+8|0,f=r[n>>2]|0,r[f>>2]=r[o>>2],i=o+4|0,r[f+4>>2]=r[i>>2],r[o>>2]=0,r[i>>2]=0,r[n>>2]=f+8,b0(A,u),n2(u);break}else q0(u,A,1),Z=u+4|0,h=r[Z>>2]|0,r[h>>2]=r[o>>2],n=o+4|0,r[h+4>>2]=r[n>>2],r[o>>2]=0,r[n>>2]=0,r[Z>>2]=h+8,K0(u);while(0);T0(o),s=c}function Rl(n,e){n=n|0,e=e|0;var t=0,i=0;t=s,s=s+48|0,i=t,r[n>>2]=e,l[n+4>>0]=0,Yi(n+8|0,e),Yi(n+20|0,e),F0(i,256,0,0),s4(n+32|0,e,i),m0(i),s=t}function at(n){n=n|0,v4(n+32|0),Wi(n+20|0),Wi(n+8|0)}function Vl(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function Fl(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;i=s,s=s+16|0,A=i+4|0,u=i,f=E(12)|0,Z4(f,e,t),r[u>>2]=0,r[A>>2]=r[u>>2],p4(n,f,A),s=i}function wl(n){n=n|0,dn(n),ve(n+4784|0)}function kl(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;i=s,s=s+16|0,A=i+4|0,u=i,f=E(12)|0,g4(f,e,t),r[u>>2]=0,r[A>>2]=r[u>>2],U4(n,f,A),s=i}function Wl(n){n=n|0,dn(n),E4(n+4784|0)}function Xl(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;i=s,s=s+16|0,A=i+4|0,u=i,f=E(12)|0,j4(f,e,t),r[u>>2]=0,r[A>>2]=r[u>>2],x4(n,f,A),s=i}function gl(n){n=n|0,dn(n),Ci(n+4784|0)}function Ul(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;i=s,s=s+16|0,A=i+4|0,u=i,f=E(12)|0,$4(f,e,t),r[u>>2]=0,r[A>>2]=r[u>>2],L4(n,f,A),s=i}function dl(n){n=n|0,dn(n),fs(n+4784|0)}function Gl(n,e){return n=n|0,e=e|0,(Un(n,e)|0)^1|0}function Tl(){return!(l[21456]|0)&&x2(21456)|0&&(Xn(21536,6,20,2),S2(21456)),21536}function Un(n,e){return n=n|0,e=e|0,(r[n>>2]|0)==(r[e>>2]|0)&&(r[n+8>>2]|0)==(r[e+8>>2]|0)?n=(r[n+4>>2]|0)==(r[e+4>>2]|0):n=0,n|0}function bt(){return!(l[21464]|0)&&x2(21464)|0&&(Xn(21548,7,8,2),S2(21464)),21548}function ni(){return!(l[21472]|0)&&x2(21472)|0&&(Xn(21560,8,6,2),S2(21472)),21560}function Nl(n){n=n|0,Y0(n),Y(n)}function zl(n,e){n=n|0,e=e|0,tn(n),r[n>>2]=4624,r[n+4>>2]=e,r[n+8>>2]=0,r[n+12>>2]=0,r[n+16>>2]=0,l[n+20>>0]=1}function Ml(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4664,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,_l(n,i),s=t}function tn(n){n=n|0,r[n>>2]=4644}function Bl(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;if(c=s,s=s+16|0,f=c,t=r[n+8>>2]|0,u=r[n+12>>2]|0,(t|0)!=(u|0)){o=f+4|0;do i=r[t>>2]|0,r[f>>2]=i,A=r[t+4>>2]|0,r[o>>2]=A,A|0&&(A=A+4|0,r[A>>2]=(r[A>>2]|0)+1),e=jn[r[(r[i>>2]|0)+12>>2]&63](i,e)|0,T0(f),t=t+8|0;while((t|0)!=(u|0))}return t=n+20|0,l[t>>0]|0&&(l[t>>0]=0,te(r[n+4>>2]|0)),s=c,e|0}function ri(n){n=n|0,r[n>>2]=4624,ei(n+8|0),M2(n)}function Jl(n){n=n|0,ri(n),Y(n)}function M2(n){n=n|0}function Yl(n){n=n|0,Nt()}function T0(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function ei(n){n=n|0;var e=0,t=0,i=0;if(t=r[n>>2]|0,t|0){if(i=n+4|0,e=r[i>>2]|0,(e|0)==(t|0))e=t;else{do e=e+-8|0,T0(e);while((e|0)!=(t|0));e=r[n>>2]|0}r[i>>2]=t,H(e,(r[n+8>>2]|0)-e|0)}}function _l(n,e){n=n|0,e=e|0}function El(n){n=n|0,y0(n),Y(n)}function jl(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+8>>2]&255](n)}function xl(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==8546?n+12|0:0)|0}function Sl(n){n=n|0,H(n,16)}function Cl(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=4692,r[n+4>>2]=e,dn(n+8|0)}function Ol(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4740,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function q0(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,e=r[e+4>>2]|0,r[n+4>>2]=e,r[n+8>>2]=e+(t<<3)}function K0(n){n=n|0,r[(r[n>>2]|0)+4>>2]=r[n+4>>2]}function a0(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;A=n+12|0,r[A>>2]=0,r[n+16>>2]=i;do if(e)if(e>>>0>536870911)A=u0(8)|0,h2(A,6723),r[A>>2]=5956,o0(A|0,3928,123);else{i=E(e<<3)|0;break}else i=0;while(0);r[n>>2]=i,t=i+(t<<3)|0,r[n+8>>2]=t,r[n+4>>2]=t,r[A>>2]=i+(e<<3)}function b0(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;if(o=r[n>>2]|0,c=n+4|0,t=r[c>>2]|0,u=e+4|0,(t|0)==(o|0))A=u,f=n,i=r[u>>2]|0,t=o;else{i=r[u>>2]|0;do f=t,t=t+-8|0,r[i+-8>>2]=r[t>>2],f=f+-4|0,r[i+-4>>2]=r[f>>2],r[t>>2]=0,r[f>>2]=0,i=(r[u>>2]|0)+-8|0,r[u>>2]=i;while((t|0)!=(o|0));A=u,f=n,t=r[n>>2]|0}r[f>>2]=i,r[A>>2]=t,o=e+8|0,u=r[c>>2]|0,r[c>>2]=r[o>>2],r[o>>2]=u,o=n+8|0,c=e+12|0,n=r[o>>2]|0,r[o>>2]=r[c>>2],r[c>>2]=n,r[e>>2]=r[A>>2]}function n2(n){n=n|0;var e=0,t=0,i=0,A=0;if(t=r[n+4>>2]|0,i=n+8|0,e=r[i>>2]|0,(e|0)!=(t|0))do A=e+-8|0,r[i>>2]=A,T0(A),e=r[i>>2]|0;while((e|0)!=(t|0));e=r[n>>2]|0,e|0&&H(e,(r[n+12>>2]|0)-e|0)}function r2(n){return n=n|0,536870911}function e2(n){n=n|0,r[n>>2]=4716}function dn(n){n=n|0,$l(n),Ll(n+3980|0),ql(n+4380|0),l[n+4780>>0]=0,l[n+4781>>0]=0}function ti(n){n=n|0,r[n>>2]=4692,Gn(n+8|0),x0(n)}function Il(n){n=n|0,ti(n),Y(n)}function Hl(n,e){return n=n|0,e=e|0,e|0}function Ql(n,e){return n=n|0,e=e|0,Tn(n+8|0,r[n+4>>2]|0,e)|0}function x0(n){n=n|0}function Dl(n){n=n|0,x0(n),Y(n)}function Pl(n,e){return n=n|0,e=e|0,e|0}function $l(n){n=n|0;var e=0,t=0;ii(n),Ai(n+52|0),Ai(n+436|0),F0(n+852|0,64,0,0),l[n+3976>>0]=0,e=n+20|0,t=e+32|0;do g[e>>1]=0,e=e+2|0;while((e|0)<(t|0));e=E(44)|0,F0(e,256,0,0),r[n+896>>2]=e,e=E(44)|0,F0(e,256,0,0),r[n+900>>2]=e,e=n+820|0,r[e>>2]=0,r[e+4>>2]=0,r[e+8>>2]=0,r[e+12>>2]=0,r[e+16>>2]=0,r[e+20>>2]=0,r[e+24>>2]=0,r[e+28>>2]=0,e=0;do t=E(44)|0,F0(t,256,0,0),r[n+904+(e<<2)>>2]=t,t=E(44)|0,F0(t,256,0,0),r[n+1928+(e<<2)>>2]=t,t=E(44)|0,F0(t,256,0,0),r[n+2952+(e<<2)>>2]=t,e=e+1|0;while(e>>>0<256)}function Ll(n){n=n|0,S0(n,16,4,8,0),S0(n+80|0,16,1,8,0),S0(n+160|0,32,2,8,0),S0(n+240|0,32,22,8,0),S0(n+320|0,32,20,8,0)}function ql(n){n=n|0,z0(n,16,4,8,0),z0(n+80|0,16,1,8,0),z0(n+160|0,32,2,8,0),z0(n+240|0,32,22,8,0),z0(n+320|0,32,20,8,0)}function Kl(n){n=n|0,C0(n+320|0),C0(n+240|0),C0(n+160|0),C0(n+80|0),C0(n)}function al(n){n=n|0;var e=0,t=0;e=r[n+896>>2]|0,e|0&&(m0(e),Y(e)),e=r[n+900>>2]|0,e|0&&(m0(e),Y(e)),t=0;do e=r[n+904+(t<<2)>>2]|0,e|0&&(m0(e),Y(e)),e=r[n+1928+(t<<2)>>2]|0,e|0&&(m0(e),Y(e)),e=r[n+2952+(t<<2)>>2]|0,e|0&&(m0(e),Y(e)),t=t+1|0;while((t|0)!=256);m0(n+852|0)}function ii(n){n=n|0;var e=0;l[n>>0]=0,l[n+1>>0]=0,l[n+2>>0]=0,l[n+3>>0]=0,e=n+4|0,l[e>>0]=0,l[e+1>>0]=0,l[e+2>>0]=0,l[e+3>>0]=0,n=n+12|0,e=n,l[e>>0]=0,l[e+1>>0]=0,l[e+2>>0]=0,l[e+3>>0]=0,n=n+4|0,l[n>>0]=0,l[n+1>>0]=0,l[n+2>>0]=0,l[n+3>>0]=0}function Ai(n){n=n|0;var e=0;e=n+384|0;do bl(n),n=n+24|0;while((n|0)!=(e|0))}function bl(n){n=n|0,nc(n)}function nc(n){n=n|0,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,r[n+12>>2]=0,r[n+16>>2]=0,l[n+20>>0]=1}function S0(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0;r[n+4>>2]=e,r[n+8>>2]=t,r[n+12>>2]=i,r[n+16>>2]=A,r[n+36>>2]=0,r[n+40>>2]=0,r[n+44>>2]=0,Ct(n+48|0),r[n+68>>2]=0,r[n+72>>2]=0,r[n+76>>2]=0;do if(A){for(i=n+20|0,r[i>>2]=0,r[n+24>>2]=A,t=A,f=0;t=t>>>1,e=f+1|0,t;)f=e;r[i>>2]=(1<<f|0)==(A|0)?f:e,t=A>>>1,r[n+28>>2]=0-t,t=A+-1-t|0}else if(t=n+20|0,(e+-1|0)>>>0<31){r[t>>2]=e,A=1<<e,r[n+24>>2]=A,t=A>>>1,r[n+28>>2]=0-t,t=A+-1-t|0;break}else{r[t>>2]=32,r[n+24>>2]=0,r[n+28>>2]=-2147483648,t=2147483647;break}while(0);r[n+32>>2]=t,r[n>>2]=0}function C0(n){n=n|0;var e=0,t=0,i=0,A=0,f=0;if(f=n+36|0,t=r[f>>2]|0,i=n+40|0,e=r[i>>2]|0,(e|0)!=(t|0))do e=e+-44|0,m0(e);while((e|0)!=(t|0));if(r[i>>2]=t,i=n+68|0,A=r[i>>2]|0,t=n+72|0,e=r[t>>2]|0,(e|0)!=(A|0))do e=e+-44|0,m0(e);while((e|0)!=(A|0));r[t>>2]=A,er(i),er(f)}function Gn(n){n=n|0,rc(n+4380|0),Kl(n+3980|0),al(n)}function rc(n){n=n|0,B0(n+320|0),B0(n+240|0),B0(n+160|0),B0(n+80|0),B0(n)}function Tn(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0;if(Z=s,s=s+32|0,h=Z,i=n+4781|0,l[i>>0]|0||(ec(n+4380|0),l[i>>0]=1),i=n+3976|0,l[i>>0]|0)o=w0(e,n+852|0)|0,o?(o&32|0&&ui((w0(e,r[n+904+(((fi(n)|0)&255)<<2)>>2]|0)|0)&255,n),c=n+14|0,f=l[c>>0]|0,i=f&7,f=(f&255)>>>3&7,A=y[16+(f<<3)+i>>0]|0,i=y[80+(f<<3)+i>>0]|0,o&16?(p=n+20+(A<<1)|0,u=(X0(n+4380|0,e,G[p>>1]|0,A>>>0<3?A:3)|0)&65535,g[p>>1]=u):u=g[n+20+(A<<1)>>1]|0,g[n+12>>1]=u,o&8|0&&(p=n+15|0,l[p>>0]=w0(e,r[n+1928+(y[p>>0]<<2)>>2]|0)|0),o&4|0&&(c=w0(e,r[n+896+(((y[c>>0]|0)>>>6&1)<<2)>>2]|0)|0,p=n+16|0,l[p>>0]=B2(c+(l[p>>0]|0)|0)|0),o&2|0&&(p=n+17|0,l[p>>0]=w0(e,r[n+2952+(y[p>>0]<<2)>>2]|0)|0),o&1&&(p=n+18|0,g[p>>1]=X0(n+4460|0,e,G[p>>1]|0,0)|0)):(p=l[n+14>>0]|0,i=p&7,p=(p&255)>>>3&7,f=p,A=y[16+(p<<3)+i>>0]|0,i=y[80+(p<<3)+i>>0]|0),u=n+52+(A*24|0)|0,o=n+4540|0,c=(f|0)==1&1,f=X0(o,e,oi(u)|0,c)|0,r[h>>2]=f,r[n>>2]=(r[n>>2]|0)+f,li(u,h),u=n+436+(A*24|0)|0,f=oi(u)|0,A=ue(o)|0,p=n+4620|0,A=X0(p,e,f,(A>>>0<20?A&-2:20)|c)|0,r[h>>2]=A,f=n+4|0,r[f>>2]=(r[f>>2]|0)+A,li(u,h),h=ue(o)|0,h=(ue(p)|0)+h|0,p=n+820+(i<<2)|0,h=X0(n+4700|0,e,r[p>>2]|0,(h>>>0<36?h>>>1&2147483646:18)|c)|0,r[n+8>>2]=h,r[p>>2]=h,ic(n,t);else{l[i>>0]=1,fr(Ar(e)|0,t,20),tc(h,t),f=n,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[n+12>>1]=0}return s=Z,t+20|0}function ec(n){n=n|0,M0(n),M0(n+80|0),M0(n+160|0),M0(n+240|0),M0(n+320|0)}function Ar(n){return n=n|0,r[n>>2]|0}function fr(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0;if(c=n+4|0,i=r[c>>2]|0,o=(r[n+8>>2]|0)-i|0,o=o>>>0>t>>>0?t:o,u=n+12|0,A=(r[u>>2]|0)+i|0,f=A+o|0,o){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=r[c>>2]|0}if(r[c>>2]=i+o,t=t-o|0,t|0){for(Ot(n),A=(r[u>>2]|0)+(r[c>>2]|0)|0,f=A+t|0,i=e+o|0;l[i>>0]=l[A>>0]|0,A=A+1|0,(A|0)!=(f|0);)i=i+1|0;r[c>>2]=(r[c>>2]|0)+t}}function tc(n,e){n=n|0,e=e|0,ii(n),r[n>>2]=ur(e)|0,r[n+4>>2]=ur(e+4|0)|0,r[n+8>>2]=ur(e+8|0)|0,g[n+12>>1]=J2(e+12|0)|0,ui(oe(e+14|0)|0,n),l[n+15>>0]=oe(e+15|0)|0,l[n+16>>0]=ci(e+16|0)|0,l[n+17>>0]=ci(e+17|0)|0,g[n+18>>1]=J2(e+18|0)|0}function fi(n){return n=n|0,l[n+14>>0]|0}function ui(n,e){n=n|0,e=e|0,l[e+14>>0]=n}function B2(n){return n=n|0,n&255|0}function oi(n){return n=n|0,r[n+8>>2]|0}function li(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;c=n+20|0;do if(l[c>>0]|0){if(A=r[e>>2]|0,u=n+8|0,t=r[u>>2]|0,f=n+12|0,i=r[f>>2]|0,(A|0)>=(t|0)){t=n+16|0,(A|0)<(i|0)?(r[t>>2]=i,r[f>>2]=r[e>>2]):r[t>>2]=A,l[c>>0]=0;break}if(r[n+16>>2]=i,r[f>>2]=t,t=r[e>>2]|0,i=r[n>>2]|0,A=n+4|0,f=r[A>>2]|0,(t|0)<(i|0)){r[u>>2]=f,r[A>>2]=i,r[n>>2]=r[e>>2];break}if((t|0)<(f|0)){r[u>>2]=f,r[A>>2]=r[e>>2];break}else{r[u>>2]=t;break}}else{if(o=n+8|0,t=r[o>>2]|0,i=r[e>>2]|0,A=n+4|0,f=r[A>>2]|0,(t|0)>=(i|0)){(f|0)<(i|0)?(r[n>>2]=f,r[A>>2]=r[e>>2]):r[n>>2]=i,l[c>>0]=1;break}if(r[n>>2]=f,r[A>>2]=t,A=n+16|0,f=r[A>>2]|0,u=r[e>>2]|0,t=n+12|0,i=r[t>>2]|0,(f|0)<(u|0)){r[o>>2]=i,r[t>>2]=f,r[A>>2]=r[e>>2];break}if((i|0)<(u|0)){r[o>>2]=i,r[t>>2]=r[e>>2];break}else{r[o>>2]=u;break}}while(0)}function ue(n){return n=n|0,r[n>>2]|0}function ic(n,e){n=n|0,e=e|0;var t=0;lr(y[n>>0]|y[n+1>>0]<<8|y[n+2>>0]<<16|y[n+3>>0]<<24,e),t=n+4|0,lr(y[t>>0]|y[t+1>>0]<<8|y[t+2>>0]<<16|y[t+3>>0]<<24,e+4|0),t=n+8|0,lr(y[t>>0]|y[t+1>>0]<<8|y[t+2>>0]<<16|y[t+3>>0]<<24,e+8|0),t=n+12|0,Y2(y[t>>0]|y[t+1>>0]<<8,e+12|0),le(fi(n)|0,e+14|0),le(l[n+15>>0]|0,e+15|0),si(l[n+16>>0]|0,e+16|0),si(l[n+17>>0]|0,e+17|0),n=n+18|0,Y2(y[n>>0]|y[n+1>>0]<<8,e+18|0)}function ur(n){return n=n|0,or(n)|0}function J2(n){return n=n|0,(l[n+1>>0]<<8|y[n>>0])&65535|0}function oe(n){return n=n|0,l[n>>0]|0}function ci(n){return n=n|0,l[n>>0]|0}function or(n){return n=n|0,(y[n+1>>0]|0)<<8|(y[n>>0]|0)|(y[n+2>>0]|0)<<16|(y[n+3>>0]|0)<<24|0}function lr(n,e){n=n|0,e=e|0,cr(n,e)}function Y2(n,e){n=n|0,e=e|0,l[e+1>>0]=(n&65535)>>>8,l[e>>0]=n}function le(n,e){n=n|0,e=e|0,l[e>>0]=n}function si(n,e){n=n|0,e=e|0,l[e>>0]=n}function cr(n,e){n=n|0,e=e|0,l[e+3>>0]=n>>>24,l[e+2>>0]=n>>>16,l[e+1>>0]=n>>>8,l[e>>0]=n}function t2(n,e){n=n|0,e=e|0}function Ac(n){n=n|0,y0(n),Y(n)}function fc(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function uc(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==9202?n+12|0:0)|0}function oc(n){n=n|0,H(n,16)}function lc(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=4768,r[n+4>>2]=e,ce(n+8|0)}function cc(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4792,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function ce(n){n=n|0,mc(n),vc(n+164|0),Zc(n+244|0),l[n+324>>0]=0,l[n+325>>0]=0}function hi(n){n=n|0,r[n>>2]=4768,se(n+8|0),x0(n)}function sc(n){n=n|0,hi(n),Y(n)}function hc(n,e){return n=n|0,e=e|0,Nn(n+8|0,r[n+4>>2]|0,e)|0}function mc(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0;for(f=s,s=s+16|0,i=f,l[n>>0]=0,F0(n+4|0,516,0,0),F0(n+48|0,6,0,0),r[n+92>>2]=0,r[n+96>>2]=0,t=n+100|0,Rc(t),mi(i),A=r[i>>2]|0,i=r[i+4>>2]|0,e=4;u=t,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]=i,l[u+1>>0]=i>>8,l[u+2>>0]=i>>16,l[u+3>>0]=i>>24,e=e+-1|0,e;)t=t+8|0;o=n+132|0,r[o>>2]=0,r[o+4>>2]=0,r[o+8>>2]=0,r[o+12>>2]=0,r[o+16>>2]=0,r[o+20>>2]=0,r[o+24>>2]=0,r[o+28>>2]=0,s=f}function vc(n){n=n|0,S0(n,32,9,8,0)}function Zc(n){n=n|0,z0(n,32,9,8,0)}function pc(n){n=n|0,C0(n)}function yc(n){n=n|0,m0(n+48|0),m0(n+4|0)}function Rc(n){n=n|0;var e=0;e=n+32|0;do mi(n),n=n+8|0;while((n|0)!=(e|0))}function mi(n){n=n|0;var e=0;e=n,l[e>>0]=0,l[e+1>>0]=0,l[e+2>>0]=0,l[e+3>>0]=0,n=n+4|0,l[n>>0]=0,l[n+1>>0]=0,l[n+2>>0]=0,l[n+3>>0]=0}function se(n){n=n|0,Vc(n+244|0),pc(n+164|0),yc(n)}function Vc(n){n=n|0,B0(n)}function Nn(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0;if(i=n+325|0,l[i>>0]|0||(Fc(n+244|0),l[i>>0]=1),!(l[n>>0]|0))l[n>>0]=1,fr(Ar(e)|0,t,8),f=wc(t)|0,u=a()|0,n=n+100|0,e=n,l[e>>0]=f,l[e+1>>0]=f>>8,l[e+2>>0]=f>>16,l[e+3>>0]=f>>24,n=n+4|0,l[n>>0]=u,l[n+1>>0]=u>>8,l[n+2>>0]=u>>16,l[n+3>>0]=u>>24;else{u=n+92|0;n:do if(r[n+132+(r[u>>2]<<2)>>2]|0){if(f=w0(e,n+4|0)|0,(f|0)==1){i=X0(n+244|0,e,r[n+132+(r[u>>2]<<2)>>2]|0,1)|0,o=r[u>>2]|0,e=n+100+(o<<3)|0,f=e,A=f,f=f+4|0,i=O0(y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[A+3>>0]<<24|0,y[f>>0]|y[f+1>>0]<<8|y[f+2>>0]<<16|y[f+3>>0]<<24|0,i|0,((i|0)<0)<<31>>31|0)|0,f=a()|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,r[n+148+(o<<2)>>2]=0;break}if((f|0)>=511){if((f|0)==512){o=n+96|0,r[o>>2]=(r[o>>2]|0)+1&3,f=n+100+(r[u>>2]<<3)+4|0,f=X0(n+244|0,e,y[f>>0]|y[f+1>>0]<<8|y[f+2>>0]<<16|y[f+3>>0]<<24,8)|0,i=n+100+(r[o>>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=vi(e)|0,o=r[o>>2]|0,e=n+100+(o<<3)|0,f=e,A=f,f=f+4|0,f=y[f>>0]|y[f+1>>0]<<8|y[f+2>>0]<<16|y[f+3>>0]<<24,i=y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[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,r[u>>2]=o,r[n+132+(o<<2)>>2]=0,r[n+148+(r[u>>2]<<2)>>2]=0;break}if((f|0)<=511)break;r[u>>2]=(r[u>>2]|0)+f&3,Nn(n,e,t)|0;break}do if(!f)i=X0(n+244|0,e,0,7)|0,A=n+148+(r[u>>2]<<2)|0,r[A>>2]=(r[A>>2]|0)+1,A=r[u>>2]|0,(r[n+148+(A<<2)>>2]|0)>3&&(r[n+132+(A<<2)>>2]=i,r[n+148+(r[u>>2]<<2)>>2]=0);else{if((f|0)<500)if(i=n+244|0,A=D(r[n+132+(r[u>>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(n+244|0,e,(r[n+132+(r[u>>2]<<2)>>2]|0)*500|0,4)|0,A=n+148+(r[u>>2]<<2)|0,r[A>>2]=(r[A>>2]|0)+1,A=r[u>>2]|0,(r[n+148+(A<<2)>>2]|0)<=3)break;r[n+132+(A<<2)>>2]=i,r[n+148+(r[u>>2]<<2)>>2]=0;break}if(i=500-f|0,A=n+244|0,f=r[n+132+(r[u>>2]<<2)>>2]|0,(i|0)>-10){i=X0(A,e,D(f,i)|0,5)|0;break}i=X0(A,e,D(f,-10)|0,6)|0,A=n+148+(r[u>>2]<<2)|0,r[A>>2]=(r[A>>2]|0)+1,A=r[u>>2]|0,(r[n+148+(A<<2)>>2]|0)>3&&(r[n+132+(A<<2)>>2]=i,r[n+148+(r[u>>2]<<2)>>2]=0)}while(0);o=n+100+(r[u>>2]<<3)|0,A=o,e=A,A=A+4|0,A=O0(y[e>>0]|y[e+1>>0]<<8|y[e+2>>0]<<16|y[e+3>>0]<<24|0,y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[A+3>>0]<<24|0,i|0,((i|0)<0)<<31>>31|0)|0,e=a()|0,f=o,l[f>>0]=A,l[f+1>>0]=A>>8,l[f+2>>0]=A>>16,l[f+3>>0]=A>>24,o=o+4|0,l[o>>0]=e,l[o+1>>0]=e>>8,l[o+2>>0]=e>>16,l[o+3>>0]=e>>24}else switch(i=w0(e,n+48|0)|0,i|0){case 1:{e=X0(n+244|0,e,0,0)|0,r[n+132+(r[u>>2]<<2)>>2]=e,e=r[u>>2]|0,o=r[n+132+(e<<2)>>2]|0,f=n+100+(e<<3)|0,A=f,i=A,A=A+4|0,o=O0(y[i>>0]|y[i+1>>0]<<8|y[i+2>>0]<<16|y[i+3>>0]<<24|0,y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[A+3>>0]<<24|0,o|0,((o|0)<0)<<31>>31|0)|0,A=a()|0,i=f,l[i>>0]=o,l[i+1>>0]=o>>8,l[i+2>>0]=o>>16,l[i+3>>0]=o>>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,r[n+148+(e<<2)>>2]=0;break n}case 2:{o=n+96|0,r[o>>2]=(r[o>>2]|0)+1&3,f=n+100+(r[u>>2]<<3)+4|0,f=X0(n+244|0,e,y[f>>0]|y[f+1>>0]<<8|y[f+2>>0]<<16|y[f+3>>0]<<24,8)|0,i=n+100+(r[o>>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=vi(e)|0,o=r[o>>2]|0,e=n+100+(o<<3)|0,f=e,A=f,f=f+4|0,f=y[f>>0]|y[f+1>>0]<<8|y[f+2>>0]<<16|y[f+3>>0]<<24,i=y[A>>0]|y[A+1>>0]<<8|y[A+2>>0]<<16|y[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,r[u>>2]=o,r[n+132+(o<<2)>>2]=0,r[n+148+(r[u>>2]<<2)>>2]=0;break n}default:{if((i|0)<=2)break n;r[u>>2]=i+2+(r[u>>2]|0)&3,Nn(n,e,t)|0;break n}}while(0);kc(n+100+(r[u>>2]<<3)|0,t)}return t+8|0}function Fc(n){n=n|0,M0(n)}function wc(n){n=n|0;var e=0,t=0,i=0;return e=s,s=s+16|0,t=e,i=or(n)|0,Wc(t,i,or(n+4|0)|0),n=r[t>>2]|0,f0(r[t+4>>2]|0),s=e,n|0}function vi(n){n=n|0;var e=0;return e=(fe(n)|0)&65535,((fe(n)|0)&65535)<<16|e|0}function kc(n,e){n=n|0,e=e|0;var t=0;t=n,cr(y[t>>0]|y[t+1>>0]<<8|y[t+2>>0]<<16|y[t+3>>0]<<24,e),n=n+4|0,cr(y[n>>0]|y[n+1>>0]<<8|y[n+2>>0]<<16|y[n+3>>0]<<24,e+4|0)}function Wc(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;i=n,l[i>>0]=e,l[i+1>>0]=e>>8,l[i+2>>0]=e>>16,l[i+3>>0]=e>>24,e=n+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 Xc(n){n=n|0,y0(n),Y(n)}function gc(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function Uc(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==9890?n+12|0:0)|0}function dc(n){n=n|0,H(n,16)}function Gc(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=4820,r[n+4>>2]=e,Zi(n+8|0)}function Tc(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4844,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function Zi(n){n=n|0,l[n>>0]=0,yi(n+1|0),F0(n+8|0,128,0,0),F0(n+52|0,256,0,0),F0(n+96|0,256,0,0),F0(n+140|0,256,0,0),F0(n+184|0,256,0,0),F0(n+228|0,256,0,0),F0(n+272|0,256,0,0)}function pi(n){n=n|0,r[n>>2]=4820,Ri(n+8|0),x0(n)}function Nc(n){n=n|0,pi(n),Y(n)}function zc(n,e){return n=n|0,e=e|0,Vi(n+8|0,r[n+4>>2]|0,e)|0}function yi(n){n=n|0;var e=0;l[n>>0]=0,l[n+1>>0]=0,e=n+2|0,l[e>>0]=0,l[e+1>>0]=0,n=n+4|0,l[n>>0]=0,l[n+1>>0]=0}function Ri(n){n=n|0,m0(n+272|0),m0(n+228|0),m0(n+184|0),m0(n+140|0),m0(n+96|0),m0(n+52|0),m0(n+8|0)}function Vi(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0;if(Z=s,s=s+16|0,c=Z,!(l[n>>0]|0))l[n>>0]=1,fr(Ar(e)|0,t,6),Mc(c,t),h=n+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,n+8|0)|0,yi(c),h&1?(o=(w0(e,n+52|0)|0)&255,i=n+1|0,i=(B2(o+((y[i>>0]|y[i+1>>0]<<8)&255)|0)|0)&255):(i=n+1|0,i=(y[i>>0]|y[i+1>>0]<<8)&255),g[c>>1]=i,h&2?(i=(w0(e,n+96|0)|0)&255,o=n+1|0,i=((B2((((y[o>>0]|y[o+1>>0]<<8)&65535)>>>8)+i|0)|0)&255)<<8,i=(i|G[c>>1])&65535):(o=n+1|0,i=i|(y[o>>0]|y[o+1>>0]<<8)&-256),g[c>>1]=i;do if(h&64)if(u=n+1|0,A=(i&255)-((y[u>>0]|y[u+1>>0]<<8)&255)|0,h&4?(i=(w0(e,n+140|0)|0)&255,o=n+3|0,o=A+((y[o>>0]|y[o+1>>0]<<8)&255)|0,i=(B2(((o|0)<1?0:(o|0)>254?255:o&255)+i|0)|0)&255):(i=n+3|0,i=(y[i>>0]|y[i+1>>0]<<8)&255),o=c+2|0,g[o>>1]=i,h&16?(i=w0(e,n+228|0)|0,p=n+3|0,f=n+5|0,f=((A+(g[o>>1]&255)-((y[p>>0]|y[p+1>>0]<<8)&255)|0)/2|0)+((y[f>>0]|y[f+1>>0]<<8)&255)|0,i=(B2(((f|0)<1?0:(f|0)>254?255:f&255)+(i&255)|0)|0)&255):(i=n+5|0,i=(y[i>>0]|y[i+1>>0]<<8)&255),f=c+4|0,g[f>>1]=i,i=((G[c>>1]|0)>>>8)-(((y[u>>0]|y[u+1>>0]<<8)&65535)>>>8)|0,h&8?(A=(w0(e,n+184|0)|0)&255,p=n+3|0,p=(((y[p>>0]|y[p+1>>0]<<8)&65535)>>>8)+i|0,A=((B2(((p|0)<1?0:(p|0)>254?255:p&255)+A|0)|0)&255)<<8,A=(A|G[o>>1])&65535):(A=n+3|0,A=g[o>>1]|(y[A>>0]|y[A+1>>0]<<8)&-256),g[o>>1]=A,h&32){p=w0(e,n+272|0)|0,e=n+3|0,h=n+5|0,h=((((G[o>>1]|0)>>>8)+i-(((y[e>>0]|y[e+1>>0]<<8)&65535)>>>8)|0)/2|0)+(((y[h>>0]|y[h+1>>0]<<8)&65535)>>>8)|0,p=((B2(((h|0)<1?0:(h|0)>254?255:h&255)+(p&255)|0)|0)&255)<<8,g[f>>1]=p|G[f>>1];break}else{p=n+5|0,g[f>>1]=g[f>>1]|(y[p>>0]|y[p+1>>0]<<8)&-256;break}else g[c+2>>1]=i,g[c+4>>1]=i;while(0);p=n+1|0,l[p>>0]=l[c>>0]|0,l[p+1>>0]=l[c+1>>0]|0,l[p+2>>0]=l[c+2>>0]|0,l[p+3>>0]=l[c+3>>0]|0,l[p+4>>0]=l[c+4>>0]|0,l[p+5>>0]=l[c+5>>0]|0,Bc(p,t)}return s=Z,t+6|0}function Mc(n,e){n=n|0,e=e|0;var t=0,i=0;i=J2(e)|0,t=J2(e+2|0)|0,Jc(n,i,t,J2(e+4|0)|0)}function Bc(n,e){n=n|0,e=e|0;var t=0;Y2(y[n>>0]|y[n+1>>0]<<8,e),t=n+2|0,Y2(y[t>>0]|y[t+1>>0]<<8,e+2|0),n=n+4|0,Y2(y[n>>0]|y[n+1>>0]<<8,e+4|0)}function Jc(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0,l[n>>0]=e,l[n+1>>0]=e>>8,e=n+2|0,l[e>>0]=t,l[e+1>>0]=t>>8,t=n+4|0,l[t>>0]=i,l[t+1>>0]=i>>8}function Yc(n){n=n|0,y0(n),Y(n)}function _c(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function Ec(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==10570?n+12|0:0)|0}function jc(n){n=n|0,H(n,16)}function xc(n,e,t){n=n|0,e=e|0,t=t|0,e2(n),r[n>>2]=4872,r[n+4>>2]=e,Cc(n+8|0,t)}function Sc(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4896,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function Cc(n,e){n=n|0,e=e|0,r[n>>2]=r[e>>2],l[n+4>>0]=l[e+4>>0]|0,wi(n+8|0,e+8|0),wi(n+20|0,e+20|0),Hc(n+32|0,e+32|0)}function Fi(n){n=n|0,r[n>>2]=4872,at(n+8|0),x0(n)}function Oc(n){n=n|0,Fi(n),Y(n)}function Ic(n,e){return n=n|0,e=e|0,A4(n+8|0,r[n+4>>2]|0,e)|0}function wi(n,e){n=n|0,e=e|0;var t=0,i=0;r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,t=e+4|0,i=(r[t>>2]|0)-(r[e>>2]|0)|0,i|0&&(ki(n,i),Qc(n,r[e>>2]|0,r[t>>2]|0,i))}function Hc(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;t=s,s=s+32|0,i=t+24|0,A=t+16|0,u=t+8|0,f=t,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,r[n+12>>2]=0,r[n+16>>2]=0,r[n+20>>2]=0,e4(u,e),t4(f,e),r[A>>2]=r[u>>2],r[A+4>>2]=r[u+4>>2],r[i>>2]=r[f>>2],r[i+4>>2]=r[f+4>>2],Pc(n,A,i,0),s=t}function ki(n,e){n=n|0,e=e|0;var t=0;if((Dc(n)|0)>>>0<e>>>0)g0(n);else{t=E(e)|0,r[n+4>>2]=t,r[n>>2]=t,r[n+8>>2]=t+e;return}}function Qc(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=s,s=s+16|0,A=f,Xi(A,n,i),i=A+4|0,n=t-e|0,(n|0)>0&&(_0(r[i>>2]|0,e|0,n|0)|0,r[i>>2]=(r[i>>2]|0)+n),gi(A),s=f}function Wi(n){n=n|0;var e=0,t=0;e=r[n>>2]|0,t=e,e|0&&(r[n+4>>2]=t,H(e,(r[n+8>>2]|0)-t|0))}function Dc(n){return n=n|0,2147483647}function Xi(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,e=r[e+4>>2]|0,r[n+4>>2]=e,r[n+8>>2]=e+t}function gi(n){n=n|0,r[(r[n>>2]|0)+4>>2]=r[n+4>>2]}function Pc(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0;if(w=s,s=s+96|0,W=w+80|0,p=w+64|0,c=w+48|0,h=w+40|0,Z=w+8|0,o=w,V=w+32|0,k=w+16|0,u=e,f=r[u>>2]|0,u=r[u+4>>2]|0,A=t,t=r[A>>2]|0,A=r[A+4>>2]|0,i=f,(A|0)==(u|0)?u=0:u=((A-(r[t>>2]|0)|0)/44|0)+((t-f>>2)*93|0)+((u-(r[f>>2]|0)|0)/-44|0)|0,t=(r[n+8>>2]|0)-(r[n+4>>2]|0)|0,t=(t|0?((t>>2)*93|0)+-1|0:0)-((r[n+20>>2]|0)+(r[n+16>>2]|0))|0,u>>>0>t>>>0&&Ui(n,u-t|0),zn(h,n),zn(o,n),A=o,t=r[A>>2]|0,A=r[A+4>>2]|0,f=Z,r[f>>2]=t,r[f+4>>2]=A,f=t,u|0&&(t=((A-(r[t>>2]|0)|0)/44|0)+u|0,(t|0)>0?(o=(t>>>0)/93|0,u=f+(o<<2)|0,r[Z>>2]=u,t=(r[u>>2]|0)+((t-(o*93|0)|0)*44|0)|0):(t=92-t|0,o=f+(((t|0)/-93|0)<<2)|0,r[Z>>2]=o,t=(r[o>>2]|0)+((92-((t|0)%93|0)|0)*44|0)|0),r[Z+4>>2]=t),r[p>>2]=r[h>>2],r[p+4>>2]=r[h+4>>2],r[W>>2]=r[Z>>2],r[W+4>>2]=r[Z+4>>2],he(c,p,W),di(W,c),Gi(p,c),sr(W,p)|0){f=k+4|0,u=e+4|0;do{if(Ti(V,W),Ni(k,n,V),t=r[k>>2]|0,(t|0)!=(r[f>>2]|0)){A=r[u>>2]|0;do ie(t,A),t=(r[k>>2]|0)+44|0,r[k>>2]=t,A=A+44|0,r[u>>2]=A,(A-(r[i>>2]|0)|0)==4092&&(i=i+4|0,r[e>>2]=i,A=r[i>>2]|0,r[u>>2]=A);while((t|0)!=(r[f>>2]|0))}zi(k),Mi(W)|0}while(sr(W,p)|0)}s=w}function $c(n){n=n|0;var e=0,t=0,i=0;e=r[n+4>>2]|0,t=n+8|0,i=r[t>>2]|0,(i|0)!=(e|0)&&(r[t>>2]=i+(~((i+-4-e|0)>>>2)<<2)),e=r[n>>2]|0,e|0&&H(e,(r[n+12>>2]|0)-e|0)}function Ui(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0,S=0,z=0,N=0,j=0,U=0,b=0,c0=0,n0=0,I=0,l0=0,C=0;l0=s,s=s+64|0,j=l0+52|0,N=l0+48|0,U=l0+28|0,b=l0+24|0,c0=l0+20|0,W=l0,n0=n+8|0,t=r[n0>>2]|0,I=n+4|0,c=r[I>>2]|0,S=((t|0)==(c|0)&1)+e|0,u=(S>>>0)/93|0,u=u+((S-(u*93|0)|0)!=0&1)|0,S=n+16|0,i=r[S>>2]|0,o=(i>>>0)/93|0,w=u>>>0<o>>>0?u:o,e=u-w|0,f=t;n:do if(e)if(z=n+12|0,i=r[z>>2]|0,A=i-(r[n>>2]|0)|0,t=f-c>>2,e>>>0>((A>>2)-t|0)>>>0){k=A>>1,V=t+e|0,V2(W,k>>>0<V>>>0?V:k,t-w|0,n+12|0);do r[j>>2]=E(4092)|0,Kc(W,j),e=e+-1|0;while(e|0);if(!w)t=r[I>>2]|0;else{o=W+8|0,c=W+12|0,h=W+4|0,Z=W+16|0,p=U+4|0,V=U+8|0,k=U+12|0,u=w,e=r[o>>2]|0,t=r[I>>2]|0;do{f=r[c>>2]|0,i=f;do if((e|0)==(f|0)){if(A=r[h>>2]|0,f=r[W>>2]|0,e=f,A>>>0<=f>>>0){e=i-e|0,e=e|0?e>>1:1,V2(U,e,e>>>2,r[Z>>2]|0),r[b>>2]=r[h>>2],r[c0>>2]=r[o>>2],r[N>>2]=r[b>>2],r[j>>2]=r[c0>>2],_2(U,N,j),e=r[W>>2]|0,r[W>>2]=r[U>>2],r[U>>2]=e,e=r[h>>2]|0,r[h>>2]=r[p>>2],r[p>>2]=e,e=r[o>>2]|0,r[o>>2]=r[V>>2],r[V>>2]=e,e=r[c>>2]|0,r[c>>2]=r[k>>2],r[k>>2]=e,F2(U),e=r[o>>2]|0;break}C=A,e=((C-e>>2)+1|0)/-2|0,f=A+(e<<2)|0,i=i-C|0,i?(I0(f|0,A|0,i|0)|0,e=(r[h>>2]|0)+(e<<2)|0):e=f,C=f+(i>>2<<2)|0,r[o>>2]=C,r[h>>2]=e,e=C}while(0);r[e>>2]=r[t>>2],e=(r[o>>2]|0)+4|0,r[o>>2]=e,t=(r[I>>2]|0)+4|0,r[I>>2]=t,u=u+-1|0}while(u|0)}if(e=r[n0>>2]|0,(e|0)!=(t|0)){do e=e+-4|0,ac(W,e),t=r[I>>2]|0;while((e|0)!=(t|0));e=r[n0>>2]|0}C=r[n>>2]|0,r[n>>2]=r[W>>2],r[W>>2]=C,C=W+4|0,r[I>>2]=r[C>>2],r[C>>2]=t,C=W+8|0,r[n0>>2]=r[C>>2],r[C>>2]=e,C=W+12|0,I=r[z>>2]|0,r[z>>2]=r[C>>2],r[C>>2]=I,r[S>>2]=(r[S>>2]|0)+(D(w,-93)|0),F2(W);break}else{r:do if((i|0)==(f|0))h=18;else{for(;r[j>>2]=E(4092)|0,Lc(n,j),e=e+-1|0,!!e;)if((r[z>>2]|0)==(r[n0>>2]|0)){h=18;break r}t=w,e=r[S>>2]|0}while(0);if((h|0)==18){i=~(u>>>0>o>>>0?o:u),t=e;do r[j>>2]=E(4092)|0,qc(n,j),t=t+-1|0,A=(((r[n0>>2]|0)-(r[I>>2]|0)|0)==4?92:93)+(r[S>>2]|0)|0,r[S>>2]=A;while(t|0);t=e+-1-i|0,e=A}if(r[S>>2]=e+(D(t,-93)|0),!t)break;o=n+12|0,c=U+4|0,h=U+8|0,Z=U+12|0,e=r[n0>>2]|0;do{f=r[I>>2]|0,u=r[f>>2]|0,f=f+4|0,r[I>>2]=f,C=r[z>>2]|0,i=C;do if((e|0)==(C|0)){if(C=r[n>>2]|0,e=C,f>>>0<=C>>>0){e=i-e|0,e=e|0?e>>1:1,V2(U,e,e>>>2,o),r[b>>2]=r[I>>2],r[c0>>2]=r[n0>>2],r[N>>2]=r[b>>2],r[j>>2]=r[c0>>2],_2(U,N,j),e=r[n>>2]|0,r[n>>2]=r[U>>2],r[U>>2]=e,e=r[I>>2]|0,r[I>>2]=r[c>>2],r[c>>2]=e,e=r[n0>>2]|0,r[n0>>2]=r[h>>2],r[h>>2]=e,e=r[z>>2]|0,r[z>>2]=r[Z>>2],r[Z>>2]=e,F2(U),e=r[n0>>2]|0;break}C=f,e=((C-e>>2)+1|0)/-2|0,A=f+(e<<2)|0,i=i-C|0,i?(I0(A|0,f|0,i|0)|0,e=(r[I>>2]|0)+(e<<2)|0):e=A,C=A+(i>>2<<2)|0,r[n0>>2]=C,r[I>>2]=e,e=C}while(0);r[e>>2]=u,e=(r[n0>>2]|0)+4|0,r[n0>>2]=e,t=t+-1|0}while(t|0)}else if(r[S>>2]=(D(w,-93)|0)+i,w|0)for(o=n+12|0,h=n+12|0,Z=U+4|0,p=U+8|0,V=U+12|0,e=w,i=c;;){u=r[i>>2]|0,f=i+4|0,r[I>>2]=f,z=r[o>>2]|0,i=z;do if((t|0)==(z|0)){if(z=r[n>>2]|0,t=z,f>>>0<=z>>>0){t=i-t|0,t=t|0?t>>1:1,V2(U,t,t>>>2,h),r[b>>2]=r[I>>2],r[c0>>2]=r[n0>>2],r[N>>2]=r[b>>2],r[j>>2]=r[c0>>2],_2(U,N,j),t=r[n>>2]|0,r[n>>2]=r[U>>2],r[U>>2]=t,t=r[I>>2]|0,r[I>>2]=r[Z>>2],r[Z>>2]=t,t=r[n0>>2]|0,r[n0>>2]=r[p>>2],r[p>>2]=t,t=r[o>>2]|0,r[o>>2]=r[V>>2],r[V>>2]=t,F2(U),t=r[n0>>2]|0;break}z=f,t=((z-t>>2)+1|0)/-2|0,A=f+(t<<2)|0,i=i-z|0,i?(I0(A|0,f|0,i|0)|0,t=(r[I>>2]|0)+(t<<2)|0):t=A,z=A+(i>>2<<2)|0,r[n0>>2]=z,r[I>>2]=t,t=z}while(0);if(r[t>>2]=u,t=(r[n0>>2]|0)+4|0,r[n0>>2]=t,e=e+-1|0,!e)break n;i=r[I>>2]|0}while(0);s=l0}function zn(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;t=(r[e+16>>2]|0)+(r[e+20>>2]|0)|0,f=r[e+4>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(r[e+8>>2]|0)==(f|0)?e=0:e=(r[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,r[n>>2]=A,r[n+4>>2]=e}function he(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;A=e,e=r[A+4>>2]|0,i=n,r[i>>2]=r[A>>2],r[i+4>>2]=e,i=t,e=r[i+4>>2]|0,t=n+8|0,r[t>>2]=r[i>>2],r[t+4>>2]=e}function di(n,e){n=n|0,e=e|0,r[n>>2]=r[e>>2],r[n+4>>2]=r[e+4>>2],r[n+8>>2]=r[e+8>>2],r[n+12>>2]=r[e+12>>2]}function Gi(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;t=s,s=s+32|0,i=t+24|0,A=t+16|0,u=t+8|0,f=t,o=e+8|0,c=r[o>>2]|0,o=r[o+4>>2]|0,e=u,r[e>>2]=c,r[e+4>>2]=o,e=f,r[e>>2]=c,r[e+4>>2]=o,r[A>>2]=r[u>>2],r[A+4>>2]=r[u+4>>2],r[i>>2]=r[f>>2],r[i+4>>2]=r[f+4>>2],he(n,A,i),s=t}function sr(n,e){return n=n|0,e=e|0,(r4(n,e)|0)^1|0}function Ti(n,e){n=n|0,e=e|0;var t=0,i=0;t=r[e>>2]|0,i=r[e+4>>2]|0,(t|0)==(r[e+8>>2]|0)?Bi(n,i,r[e+12>>2]|0):Bi(n,i,(r[t>>2]|0)+4092|0)}function Ni(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;i=r[t>>2]|0,r[n>>2]=i,r[n+4>>2]=r[t+4>>2],r[n+8>>2]=i,r[n+12>>2]=e}function zi(n){n=n|0;var e=0;e=(r[n+12>>2]|0)+20|0,r[e>>2]=(r[e>>2]|0)+(((r[n>>2]|0)-(r[n+8>>2]|0)|0)/44|0)}function Mi(n){n=n|0;var e=0,t=0,i=0;return e=r[n>>2]|0,t=n+8|0,(e|0)==(r[t>>2]|0)?(i=t,e=r[i+4>>2]|0,t=n,r[t>>2]=r[i>>2],r[t+4>>2]=e):(i=e+4|0,r[n>>2]=i,r[n+4>>2]=r[i>>2]),n|0}function Lc(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0;W=s,s=s+48|0,A=W+32|0,i=W+28|0,o=W+8|0,c=W+4|0,h=W,k=n+8|0,t=r[k>>2]|0,Z=n+12|0,V=r[Z>>2]|0,f=V;do if((t|0)==(V|0)){if(V=n+4|0,p=r[V>>2]|0,w=r[n>>2]|0,u=w,p>>>0<=w>>>0){t=f-u|0,t=t|0?t>>1:1,V2(o,t,t>>>2,n+12|0),r[c>>2]=r[V>>2],r[h>>2]=r[k>>2],r[i>>2]=r[c>>2],r[A>>2]=r[h>>2],_2(o,i,A),t=r[n>>2]|0,r[n>>2]=r[o>>2],r[o>>2]=t,t=o+4|0,w=r[V>>2]|0,r[V>>2]=r[t>>2],r[t>>2]=w,t=o+8|0,w=r[k>>2]|0,r[k>>2]=r[t>>2],r[t>>2]=w,t=o+12|0,w=r[Z>>2]|0,r[Z>>2]=r[t>>2],r[t>>2]=w,F2(o),t=r[k>>2]|0;break}A=p,i=((A-u>>2)+1|0)/-2|0,n=p+(i<<2)|0,A=t-A|0,A?(I0(n|0,p|0,A|0)|0,t=(r[V>>2]|0)+(i<<2)|0):t=n,w=n+(A>>2<<2)|0,r[k>>2]=w,r[V>>2]=t,t=w}while(0);r[t>>2]=r[e>>2],r[k>>2]=(r[k>>2]|0)+4,s=W}function qc(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0;W=s,s=s+48|0,i=W+32|0,t=W+28|0,u=W+8|0,o=W+4|0,c=W,k=n+4|0,p=r[k>>2]|0,V=r[n>>2]|0,h=V;do if((p|0)==(V|0)){if(V=n+8|0,Z=r[V>>2]|0,f=n+12|0,w=r[f>>2]|0,A=w,Z>>>0>=w>>>0){w=A-h|0,w=w|0?w>>1:1,V2(u,w,(w+3|0)>>>2,n+12|0),r[o>>2]=r[k>>2],r[c>>2]=r[V>>2],r[t>>2]=r[o>>2],r[i>>2]=r[c>>2],_2(u,t,i),t=r[n>>2]|0,r[n>>2]=r[u>>2],r[u>>2]=t,t=u+4|0,w=r[k>>2]|0,r[k>>2]=r[t>>2],r[t>>2]=w,t=u+8|0,w=r[V>>2]|0,r[V>>2]=r[t>>2],r[t>>2]=w,t=u+12|0,w=r[f>>2]|0,r[f>>2]=r[t>>2],r[t>>2]=w,F2(u),t=r[k>>2]|0;break}i=Z,n=((A-i>>2)+1|0)/2|0,A=Z+(n<<2)|0,i=i-p|0,t=A+(0-(i>>2)<<2)|0,i?(I0(t|0,p|0,i|0)|0,i=(r[V>>2]|0)+(n<<2)|0):(t=A,i=A),r[k>>2]=t,r[V>>2]=i}else t=p;while(0);r[t+-4>>2]=r[e>>2],r[k>>2]=(r[k>>2]|0)+-4,s=W}function V2(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;A=n+12|0,r[A>>2]=0,r[n+16>>2]=i;do if(e)if(e>>>0>1073741823)A=u0(8)|0,h2(A,6723),r[A>>2]=5956,o0(A|0,3928,123);else{i=E(e<<2)|0;break}else i=0;while(0);r[n>>2]=i,t=i+(t<<2)|0,r[n+8>>2]=t,r[n+4>>2]=t,r[A>>2]=i+(e<<2)}function Kc(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0;W=s,s=s+48|0,A=W+32|0,i=W+28|0,o=W+8|0,c=W+4|0,h=W,k=n+8|0,t=r[k>>2]|0,Z=n+12|0,V=r[Z>>2]|0,f=V;do if((t|0)==(V|0)){if(V=n+4|0,p=r[V>>2]|0,w=r[n>>2]|0,u=w,p>>>0<=w>>>0){t=f-u|0,t=t|0?t>>1:1,V2(o,t,t>>>2,r[n+16>>2]|0),r[c>>2]=r[V>>2],r[h>>2]=r[k>>2],r[i>>2]=r[c>>2],r[A>>2]=r[h>>2],_2(o,i,A),t=r[n>>2]|0,r[n>>2]=r[o>>2],r[o>>2]=t,t=o+4|0,w=r[V>>2]|0,r[V>>2]=r[t>>2],r[t>>2]=w,t=o+8|0,w=r[k>>2]|0,r[k>>2]=r[t>>2],r[t>>2]=w,t=o+12|0,w=r[Z>>2]|0,r[Z>>2]=r[t>>2],r[t>>2]=w,F2(o),t=r[k>>2]|0;break}A=p,i=((A-u>>2)+1|0)/-2|0,n=p+(i<<2)|0,A=t-A|0,A?(I0(n|0,p|0,A|0)|0,t=(r[V>>2]|0)+(i<<2)|0):t=n,w=n+(A>>2<<2)|0,r[k>>2]=w,r[V>>2]=t,t=w}while(0);r[t>>2]=r[e>>2],r[k>>2]=(r[k>>2]|0)+4,s=W}function ac(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0;W=s,s=s+48|0,i=W+32|0,t=W+28|0,u=W+8|0,o=W+4|0,c=W,k=n+4|0,p=r[k>>2]|0,V=r[n>>2]|0,h=V;do if((p|0)==(V|0)){if(V=n+8|0,Z=r[V>>2]|0,f=n+12|0,w=r[f>>2]|0,A=w,Z>>>0>=w>>>0){w=A-h|0,w=w|0?w>>1:1,V2(u,w,(w+3|0)>>>2,r[n+16>>2]|0),r[o>>2]=r[k>>2],r[c>>2]=r[V>>2],r[t>>2]=r[o>>2],r[i>>2]=r[c>>2],_2(u,t,i),t=r[n>>2]|0,r[n>>2]=r[u>>2],r[u>>2]=t,t=u+4|0,w=r[k>>2]|0,r[k>>2]=r[t>>2],r[t>>2]=w,t=u+8|0,w=r[V>>2]|0,r[V>>2]=r[t>>2],r[t>>2]=w,t=u+12|0,w=r[f>>2]|0,r[f>>2]=r[t>>2],r[t>>2]=w,F2(u),t=r[k>>2]|0;break}i=Z,n=((A-i>>2)+1|0)/2|0,A=Z+(n<<2)|0,i=i-p|0,t=A+(0-(i>>2)<<2)|0,i?(I0(t|0,p|0,i|0)|0,i=(r[V>>2]|0)+(n<<2)|0):(t=A,i=A),r[k>>2]=t,r[V>>2]=i}else t=p;while(0);r[t+-4>>2]=r[e>>2],r[k>>2]=(r[k>>2]|0)+-4,s=W}function F2(n){n=n|0;var e=0,t=0,i=0;e=r[n+4>>2]|0,t=n+8|0,i=r[t>>2]|0,(i|0)!=(e|0)&&(r[t>>2]=i+(~((i+-4-e|0)>>>2)<<2)),e=r[n>>2]|0,e|0&&H(e,(r[n+12>>2]|0)-e|0)}function _2(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;if(u=s,s=s+16|0,f=u,A=r[e>>2]|0,bc(f,n+8|0,(r[t>>2]|0)-A>>2),n=r[f>>2]|0,i=f+4|0,(n|0)!=(r[i>>2]|0)){t=A;do r[n>>2]=r[t>>2],n=(r[f>>2]|0)+4|0,r[f>>2]=n,t=t+4|0;while((n|0)!=(r[i>>2]|0));r[e>>2]=t}n4(f),s=u}function bc(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=r[e>>2],r[n+4>>2]=(r[e>>2]|0)+(t<<2),r[n+8>>2]=e}function n4(n){n=n|0,r[r[n+8>>2]>>2]=r[n>>2]}function r4(n,e){return n=n|0,e=e|0,(r[n+4>>2]|0)==(r[e+4>>2]|0)|0}function Bi(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,r[n+4>>2]=t}function e4(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;f=r[e+4>>2]|0,t=r[e+16>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(r[e+8>>2]|0)==(f|0)?e=0:e=(r[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,r[n>>2]=A,r[n+4>>2]=e}function t4(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;t=(r[e+16>>2]|0)+(r[e+20>>2]|0)|0,f=r[e+4>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(r[e+8>>2]|0)==(f|0)?e=0:e=(r[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,r[n>>2]=A,r[n+4>>2]=e}function i4(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0;if(o=s,s=s+16|0,i=o+8|0,f=o,Ji(i,n),zn(f,n),A=i+4|0,e=r[A>>2]|0,f=f+4|0,(e|0)!=(r[f>>2]|0))do m0(e),e=(r[A>>2]|0)+44|0,r[A>>2]=e,t=r[i>>2]|0,(e-(r[t>>2]|0)|0)==4092&&(e=t+4|0,r[i>>2]=e,e=r[e>>2]|0,r[A>>2]=e);while((e|0)!=(r[f>>2]|0));if(r[n+20>>2]=0,A=n+8|0,i=n+4|0,t=r[i>>2]|0,e=(r[A>>2]|0)-t>>2,e>>>0>2)do H(r[t>>2]|0,4092),t=(r[i>>2]|0)+4|0,r[i>>2]=t,e=(r[A>>2]|0)-t>>2;while(e>>>0>2);switch(e|0){case 1:{e=46,u=11;break}case 2:{e=93,u=11;break}default:}(u|0)==11&&(r[n+16>>2]=e),s=o}function Ji(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;f=r[e+4>>2]|0,t=r[e+16>>2]|0,i=(t>>>0)/93|0,A=f+(i<<2)|0,(r[e+8>>2]|0)==(f|0)?e=0:e=(r[A>>2]|0)+((t-(i*93|0)|0)*44|0)|0,r[n>>2]=A,r[n+4>>2]=e}function A4(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0,h=0;if(h=s,s=s+16|0,c=h,u=n+4|0,l[u>>0]|0){if(A=r[n+20>>2]|0,i=r[n+8>>2]|0,Ji(c,n+32|0),n=n+12|0,(i|0)!=(r[n>>2]|0))for(o=c+4|0,u=i,f=A,i=r[o>>2]|0;A=y[u>>0]|0,A=f4((w0(e,i)|0)+A|0)|0,l[f>>0]=A,l[t>>0]=A,l[u>>0]=A,u=u+1|0,t=t+1|0,A=r[c>>2]|0,i=(r[o>>2]|0)+44|0,r[o>>2]=i,(i-(r[A>>2]|0)|0)==4092&&(i=A+4|0,r[c>>2]=i,i=r[i>>2]|0,r[o>>2]=i),(u|0)!=(r[n>>2]|0);)f=f+1|0}else{if(c=Ar(e)|0,fr(c,t,r[n>>2]|0),c=r[n>>2]|0,f=t+c|0,!c)i=0;else{for(i=t,A=r[n+8>>2]|0;l[A>>0]=l[i>>0]|0,i=i+1|0,(i|0)!=(f|0);)A=A+1|0;i=r[n>>2]|0}l[u>>0]=1,t=t+i|0}return s=h,t|0}function f4(n){return n=n|0,n&255|0}function u4(n){n=n|0,y0(n),Y(n)}function o4(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function l4(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==11262?n+12|0:0)|0}function c4(n){n=n|0,H(n,16)}function Yi(n,e){n=n|0,e=e|0,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,e|0&&(ki(n,e),h4(n,e))}function s4(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,r[n+12>>2]=0,r[n+16>>2]=0,r[n+20>>2]=0,e|0&&m4(n,e,t)}function h4(n,e){n=n|0,e=e|0;var t=0,i=0,A=0;if(A=s,s=s+16|0,i=A,Xi(i,n,e),e=i+4|0,n=r[e>>2]|0,t=i+8|0,(n|0)!=(r[t>>2]|0))do l[n>>0]=0,n=(r[e>>2]|0)+1|0,r[e>>2]=n;while((n|0)!=(r[t>>2]|0));gi(i),s=A}function m4(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0;if(k=s,s=s+96|0,V=k+80|0,h=k+64|0,u=k+48|0,o=k+40|0,c=k+8|0,A=k,Z=k+32|0,p=k+16|0,i=(r[n+8>>2]|0)-(r[n+4>>2]|0)|0,i=(i|0?((i>>2)*93|0)+-1|0:0)-((r[n+20>>2]|0)+(r[n+16>>2]|0))|0,i>>>0<e>>>0&&Ui(n,e-i|0),zn(o,n),zn(A,n),i=r[A>>2]|0,A=r[A+4>>2]|0,f=c,r[f>>2]=i,r[f+4>>2]=A,f=i,e|0&&(i=((A-(r[i>>2]|0)|0)/44|0)+e|0,(i|0)>0?(e=(i>>>0)/93|0,f=f+(e<<2)|0,r[c>>2]=f,i=(r[f>>2]|0)+((i-(e*93|0)|0)*44|0)|0):(i=92-i|0,e=f+(((i|0)/-93|0)<<2)|0,r[c>>2]=e,i=(r[e>>2]|0)+((92-((i|0)%93|0)|0)*44|0)|0),r[c+4>>2]=i),r[h>>2]=r[o>>2],r[h+4>>2]=r[o+4>>2],r[V>>2]=r[c>>2],r[V+4>>2]=r[c+4>>2],he(u,h,V),di(V,u),Gi(h,u),sr(V,h)|0){A=p+4|0;do{if(Ti(Z,V),Ni(p,n,Z),i=r[p>>2]|0,(i|0)!=(r[A>>2]|0))do ie(i,t),i=(r[p>>2]|0)+44|0,r[p>>2]=i;while((i|0)!=(r[A>>2]|0));zi(p),Mi(V)|0}while(sr(V,h)|0)}s=k}function v4(n){n=n|0;var e=0,t=0;if(i4(n),e=r[n+4>>2]|0,t=r[n+8>>2]|0,(e|0)!=(t|0))do H(r[e>>2]|0,4092),e=e+4|0;while((e|0)!=(t|0));$c(n)}function Z4(n,e,t){n=n|0,e=e|0,t=t|0,tn(n),r[n>>2]=4924,r[n+4>>2]=e,r[n+8>>2]=t}function p4(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4944,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,hr(n,i),s=t}function y4(n,e){return n=n|0,e=e|0,V4(r[n+8>>2]|0,r[n+4>>2]|0,e)|0}function _i(n){n=n|0;var e=0,t=0;r[n>>2]=4924,t=n+8|0,e=r[t>>2]|0,r[t>>2]=0,e|0&&(F4(e),Y(e)),M2(n)}function R4(n){n=n|0,_i(n),Y(n)}function V4(n,e,t){return n=n|0,e=e|0,t=t|0,me(n+4784|0,e,Tn(n,e,t)|0)|0}function me(n,e,t){return n=n|0,e=e|0,t=t|0,l[n>>0]|0&&(te(e),l[n>>0]=0),t|0}function F4(n){n=n|0,Gn(n)}function hr(n,e){n=n|0,e=e|0}function w4(n){n=n|0,y0(n),Y(n)}function k4(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+8>>2]&255](n)}function W4(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==12004?n+12|0:0)|0}function X4(n){n=n|0,H(n,16)}function ve(n){n=n|0,l[n>>0]=1}function g4(n,e,t){n=n|0,e=e|0,t=t|0,tn(n),r[n>>2]=4972,r[n+4>>2]=e,r[n+8>>2]=t}function U4(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=4992,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,hr(n,i),s=t}function d4(n,e){return n=n|0,e=e|0,T4(r[n+8>>2]|0,r[n+4>>2]|0,e)|0}function Ei(n){n=n|0;var e=0,t=0;r[n>>2]=4972,t=n+8|0,e=r[t>>2]|0,r[t>>2]=0,e|0&&(z4(e),Y(e)),M2(n)}function G4(n){n=n|0,Ei(n),Y(n)}function T4(n,e,t){return n=n|0,e=e|0,t=t|0,N4(n+4784|0,e,Tn(n,e,t)|0)|0}function N4(n,e,t){return n=n|0,e=e|0,t=t|0,me(n+328|0,e,Nn(n,e,t)|0)|0}function z4(n){n=n|0,M4(n+4784|0),Gn(n)}function M4(n){n=n|0,se(n)}function B4(n){n=n|0,y0(n),Y(n)}function J4(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+8>>2]&255](n)}function Y4(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==12827?n+12|0:0)|0}function _4(n){n=n|0,H(n,16)}function E4(n){n=n|0,ce(n),ve(n+328|0)}function j4(n,e,t){n=n|0,e=e|0,t=t|0,tn(n),r[n>>2]=5020,r[n+4>>2]=e,r[n+8>>2]=t}function x4(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5040,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,hr(n,i),s=t}function S4(n,e){return n=n|0,e=e|0,O4(r[n+8>>2]|0,r[n+4>>2]|0,e)|0}function ji(n){n=n|0;var e=0,t=0;r[n>>2]=5020,t=n+8|0,e=r[t>>2]|0,r[t>>2]=0,e|0&&(I4(e),Y(e)),M2(n)}function C4(n){n=n|0,ji(n),Y(n)}function O4(n,e,t){return n=n|0,e=e|0,t=t|0,xi(n+4784|0,e,Tn(n,e,t)|0)|0}function xi(n,e,t){return n=n|0,e=e|0,t=t|0,me(n+316|0,e,Vi(n,e,t)|0)|0}function I4(n){n=n|0,Si(n+4784|0),Gn(n)}function Si(n){n=n|0,Ri(n)}function H4(n){n=n|0,y0(n),Y(n)}function Q4(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+8>>2]&255](n)}function D4(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==13672?n+12|0:0)|0}function P4(n){n=n|0,H(n,16)}function Ci(n){n=n|0,Zi(n),ve(n+316|0)}function $4(n,e,t){n=n|0,e=e|0,t=t|0,tn(n),r[n>>2]=5068,r[n+4>>2]=e,r[n+8>>2]=t}function L4(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5088,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,hr(n,i),s=t}function q4(n,e){return n=n|0,e=e|0,a4(r[n+8>>2]|0,r[n+4>>2]|0,e)|0}function Oi(n){n=n|0;var e=0,t=0;r[n>>2]=5068,t=n+8|0,e=r[t>>2]|0,r[t>>2]=0,e|0&&(ns(e),Y(e)),M2(n)}function K4(n){n=n|0,Oi(n),Y(n)}function a4(n,e,t){return n=n|0,e=e|0,t=t|0,b4(n+4784|0,e,Tn(n,e,t)|0)|0}function b4(n,e,t){return n=n|0,e=e|0,t=t|0,xi(n+328|0,e,Nn(n,e,t)|0)|0}function ns(n){n=n|0,rs(n+4784|0),Gn(n)}function rs(n){n=n|0,Si(n+328|0),se(n)}function es(n){n=n|0,y0(n),Y(n)}function ts(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+8>>2]&255](n)}function is(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==14573?n+12|0:0)|0}function As(n){n=n|0,H(n,16)}function fs(n){n=n|0,ce(n),Ci(n+328|0)}function us(n){return n=n|0,n+20|0}function os(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=e,r[n+4>>2]=t,r[n+8>>2]=0}function ls(n,e){n=n|0,e=e|0,r[n>>2]=e,r[n+4>>2]=0,r[n+8>>2]=-1}function cs(n,e){n=n|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=E(24)|0,Xs(A,e),r[f>>2]=0,r[i>>2]=r[f>>2],gs(n,A,i),s=t}function Mn(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function ss(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5116,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,hs(n,i),s=t}function Ze(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function hs(n,e){n=n|0,e=e|0}function ms(n){n=n|0,y0(n),Y(n)}function vs(n){n=n|0,n=r[n+12>>2]|0,n|0&&Y(n)}function Zs(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==14966?n+12|0:0)|0}function ps(n){n=n|0,H(n,16)}function ys(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5144,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,Rs(n,i),s=t}function Ii(n){n=n|0;var e=0,t=0;n=r[n+4>>2]|0,n|0&&(t=n+4|0,e=r[t>>2]|0,r[t>>2]=e+-1,(e|0)==0)&&(A0[r[(r[n>>2]|0)+8>>2]&255](n),s2(n))}function Rs(n,e){n=n|0,e=e|0}function Vs(n){n=n|0,y0(n),Y(n)}function Fs(n){n=n|0,n=r[n+12>>2]|0,n|0&&(Ws(n),Y(n))}function ws(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==15127?n+12|0:0)|0}function ks(n){n=n|0,H(n,16)}function Ws(n){n=n|0}function Xs(n,e){n=n|0,e=e|0,tn(n),r[n>>2]=5172,r[n+4>>2]=e,r[n+8>>2]=0,r[n+12>>2]=0,r[n+16>>2]=0,l[n+20>>0]=1}function gs(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5192,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,Ts(n,i),s=t}function Us(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0;if(c=s,s=s+16|0,f=c,t=r[n+8>>2]|0,u=r[n+12>>2]|0,(t|0)!=(u|0)){o=f+4|0;do i=r[t>>2]|0,r[f>>2]=i,A=r[t+4>>2]|0,r[o>>2]=A,A|0&&(A=A+4|0,r[A>>2]=(r[A>>2]|0)+1),e=jn[r[(r[i>>2]|0)+12>>2]&63](i,e)|0,T0(f),t=t+8|0;while((t|0)!=(u|0))}return t=n+20|0,l[t>>0]|0&&(l[t>>0]=0,Gs(r[n+4>>2]|0)),s=c,e|0}function Hi(n){n=n|0,r[n>>2]=5172,ei(n+8|0),M2(n)}function ds(n){n=n|0,Hi(n),Y(n)}function Gs(n){n=n|0;var e=0;e=((An(r[n>>2]|0)|0)&255)<<24,e=((An(r[n>>2]|0)|0)&255)<<16|e,e=e|((An(r[n>>2]|0)|0)&255)<<8,r[n+4>>2]=e|(An(r[n>>2]|0)|0)&255}function An(n){n=n|0;var e=0,t=0;return e=r[n>>2]|0,t=n+8|0,n=r[t>>2]|0,r[t>>2]=n+1,l[e+n>>0]|0}function Ts(n,e){n=n|0,e=e|0}function Ns(n){n=n|0,y0(n),Y(n)}function zs(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+8>>2]&255](n)}function Ms(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==15450?n+12|0:0)|0}function Bs(n){n=n|0,H(n,16)}function pe(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(180)|0,Js(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],Ys(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function mr(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(180)|0,Ks(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],as(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function Js(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=5220,r[n+4>>2]=e,_s(n+8|0)}function Ys(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5244,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function _s(n){n=n|0,S0(n,32,1,8,0),z0(n+80|0,32,1,8,0),l[n+160>>0]=0,l[n+161>>0]=0,xs(n+164|0)}function Qi(n){n=n|0,r[n>>2]=5220,Ss(n+8|0),x0(n)}function Es(n){n=n|0,Qi(n),Y(n)}function js(n,e){return n=n|0,e=e|0,Cs(n+8|0,r[n+4>>2]|0,e)|0}function xs(n){n=n|0,l[n+4>>0]=0}function Ss(n){n=n|0,B0(n+80|0),C0(n)}function Cs(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[n+161>>0]|0||M0(n+80|0),A=n+164|0,Os(A)|0?(e=fn(n+80|0,e,r[A>>2]|0,0)|0,r[i>>2]=e,lr(e,t)):(on(un(e)|0,t,4),r[i>>2]=ur(t)|0),Is(A,i),s=f,t+4|0}function Os(n){return n=n|0,(l[n+4>>0]|0)!=0|0}function fn(n,e,t,i){return n=n|0,e=e|0,t=t|0,i=i|0,t=(Hs(n,e,(r[n+36>>2]|0)+(i*44|0)|0)|0)+t|0,e=r[n+24>>2]|0,(t|0)<0?t+e|0:t-(t>>>0<e>>>0?0:e)|0}function un(n){return n=n|0,r[n>>2]|0}function on(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;if((t|0)>0){i=0;do l[e+i>>0]=An(n)|0,i=i+1|0;while((i|0)!=(t|0))}}function Is(n,e){n=n|0,e=e|0;var t=0;t=n+4|0,l[t>>0]|0||(l[t>>0]=1),r[n>>2]=r[e>>2]}function Hs(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;t=ye(e,t)|0,r[n>>2]=t;do if(t){if(t>>>0>=32){t=r[n+28>>2]|0;break}if(i=r[n+12>>2]|0,t>>>0>i>>>0?(i=t-i|0,t=ye(e,(r[n+68>>2]|0)+((t+-1|0)*44|0)|0)|0,i=t<<i|(Di(e,i)|0)):i=ye(e,(r[n+68>>2]|0)+((t+-1|0)*44|0)|0)|0,t=r[n>>2]|0,(i|0)<(1<<t+-1|0)){t=i+1+(-1<<t)|0;break}else{t=i+1|0;break}}else t=Qs(e,n+48|0)|0;while(0);return t|0}function ye(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0;if(V=n+8|0,p=r[V>>2]|0,A=r[e+16>>2]|0,A){if(i=n+4|0,t=r[i>>2]|0,Z=p>>>15,r[V>>2]=Z,c=(t>>>0)/(Z>>>0)|0,o=c>>>(r[e+40>>2]|0),f=r[A+(o<<2)>>2]|0,o=(r[A+(o+1<<2)>>2]|0)+1|0,u=f+1|0,h=r[e+8>>2]|0,o>>>0>u>>>0){A=f,f=o;do u=(f+A|0)>>>1,o=(r[h+(u<<2)>>2]|0)>>>0>c>>>0,A=o?A:u,f=o?u:f,u=A+1|0;while(f>>>0>u>>>0);f=A}A=D(r[h+(f<<2)>>2]|0,Z)|0,(f|0)==(r[e+32>>2]|0)?u=p:u=D(r[h+(u<<2)>>2]|0,Z)|0}else{h=p>>>15,r[V>>2]=h,o=r[e>>2]|0,Z=r[e+8>>2]|0,i=n+4|0,t=r[i>>2]|0,c=o>>>1,A=0,u=p,f=0;do k=D(r[Z+(c<<2)>>2]|0,h)|0,p=k>>>0>t>>>0,u=p?k:u,A=p?A:k,f=p?f:c,o=p?c:o,c=(f+o|0)>>>1;while((c|0)!=(f|0))}return r[i>>2]=t-A,k=u-A|0,r[V>>2]=k,k>>>0<16777216&&vr(n),V=(r[e+12>>2]|0)+(f<<2)|0,r[V>>2]=(r[V>>2]|0)+1,V=e+28|0,k=(r[V>>2]|0)+-1|0,r[V>>2]=k,k||Ae(e),f|0}function Di(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;return e>>>0>19?(t=(Ds(n)|0)&65535,(Di(n,e+-16|0)|0)<<16|t|0):(i=n+4|0,A=r[i>>2]|0,f=n+8|0,t=(r[f>>2]|0)>>>e,r[f>>2]=t,e=(A>>>0)/(t>>>0)|0,r[i>>2]=A-(D(e,t)|0),t>>>0<16777216&&vr(n),e|0)}function Qs(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0,o=0;return i=n+8|0,A=r[i>>2]|0,t=D(A>>>13,r[e+8>>2]|0)|0,f=n+4|0,u=r[f>>2]|0,o=u>>>0>=t>>>0,o?(r[f>>2]=u-t,t=A-t|0,r[i>>2]=t):(r[i>>2]=t,u=e+12|0,r[u>>2]=(r[u>>2]|0)+1),t>>>0<16777216&&vr(n),u=e+4|0,n=(r[u>>2]|0)+-1|0,r[u>>2]=n,n||qt(e),o&1|0}function vr(n){n=n|0;var e=0,t=0,i=0,A=0;e=n+4|0,t=n+8|0,i=r[e>>2]|0;do i=i<<8|(An(r[n>>2]|0)|0)&255,r[e>>2]=i,A=r[t>>2]<<8,r[t>>2]=A;while(A>>>0<16777216)}function Ds(n){n=n|0;var e=0,t=0,i=0,A=0;return t=n+4|0,A=r[t>>2]|0,e=n+8|0,i=(r[e>>2]|0)>>>16,r[e>>2]=i,e=(A>>>0)/(i>>>0)|0,r[t>>2]=A-(D(e,i)|0),vr(n),e&65535|0}function Ps(n){n=n|0,y0(n),Y(n)}function $s(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function Ls(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==15904?n+12|0:0)|0}function qs(n){n=n|0,H(n,16)}function Ks(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=5272,r[n+4>>2]=e,bs(n+8|0)}function as(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5296,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function bs(n){n=n|0,S0(n,32,1,8,0),z0(n+80|0,32,1,8,0),l[n+160>>0]=0,l[n+161>>0]=0,e8(n+164|0)}function Pi(n){n=n|0,r[n>>2]=5272,t8(n+8|0),x0(n)}function n8(n){n=n|0,Pi(n),Y(n)}function r8(n,e){return n=n|0,e=e|0,i8(n+8|0,r[n+4>>2]|0,e)|0}function e8(n){n=n|0,l[n+4>>0]=0}function t8(n){n=n|0,B0(n+80|0),C0(n)}function i8(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[n+161>>0]|0||M0(n+80|0),A=n+164|0,A8(A)|0?(e=fn(n+80|0,e,r[A>>2]|0,0)|0,r[i>>2]=e,cr(e,t)):(on(un(e)|0,t,4),r[i>>2]=or(t)|0),f8(A,i),s=f,t+4|0}function A8(n){return n=n|0,(l[n+4>>0]|0)!=0|0}function f8(n,e){n=n|0,e=e|0;var t=0;t=n+4|0,l[t>>0]|0||(l[t>>0]=1),r[n>>2]=r[e>>2]}function u8(n){n=n|0,y0(n),Y(n)}function o8(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function l8(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==16402?n+12|0:0)|0}function c8(n){n=n|0,H(n,16)}function s8(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(172)|0,m8(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],v8(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function h8(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(176)|0,T8(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],N8(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function m8(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=5324,r[n+4>>2]=e,Z8(n+8|0)}function v8(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5348,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function Z8(n){n=n|0,S0(n,8,1,8,0),z0(n+80|0,8,1,8,0),l[n+160>>0]=0,l[n+161>>0]=0,R8(n+162|0)}function $i(n){n=n|0,r[n>>2]=5324,V8(n+8|0),x0(n)}function p8(n){n=n|0,$i(n),Y(n)}function y8(n,e){return n=n|0,e=e|0,F8(n+8|0,r[n+4>>2]|0,e)|0}function R8(n){n=n|0,l[n+1>>0]=0}function V8(n){n=n|0,B0(n+80|0),C0(n)}function F8(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[n+161>>0]|0||M0(n+80|0),A=n+162|0,w8(A)|0?(e=(fn(n+80|0,e,l[A>>0]|0,0)|0)&255,l[i>>0]=e,k8(e,t)):(on(un(e)|0,t,1),l[i>>0]=W8(t)|0),X8(A,i),s=f,t+1|0}function w8(n){return n=n|0,(l[n+1>>0]|0)!=0|0}function k8(n,e){n=n|0,e=e|0,l[e>>0]=n}function W8(n){return n=n|0,l[n>>0]|0}function X8(n,e){n=n|0,e=e|0;var t=0;t=n+1|0,l[t>>0]|0||(l[t>>0]=1),l[n>>0]=l[e>>0]|0}function g8(n){n=n|0,y0(n),Y(n)}function U8(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function d8(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==16900?n+12|0:0)|0}function G8(n){n=n|0,H(n,16)}function T8(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=5376,r[n+4>>2]=e,z8(n+8|0)}function N8(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5400,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function z8(n){n=n|0,S0(n,16,1,8,0),z0(n+80|0,16,1,8,0),l[n+160>>0]=0,l[n+161>>0]=0,J8(n+162|0)}function Li(n){n=n|0,r[n>>2]=5376,Y8(n+8|0),x0(n)}function M8(n){n=n|0,Li(n),Y(n)}function B8(n,e){return n=n|0,e=e|0,_8(n+8|0,r[n+4>>2]|0,e)|0}function J8(n){n=n|0,l[n+2>>0]=0}function Y8(n){n=n|0,B0(n+80|0),C0(n)}function _8(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[n+161>>0]|0||M0(n+80|0),A=n+162|0,E8(A)|0?(e=(fn(n+80|0,e,g[A>>1]|0,0)|0)&65535,g[i>>1]=e,j8(e,t)):(on(un(e)|0,t,2),g[i>>1]=x8(t)|0),S8(A,i),s=f,t+2|0}function E8(n){return n=n|0,(l[n+2>>0]|0)!=0|0}function j8(n,e){n=n|0,e=e|0,Y2(n,e)}function x8(n){return n=n|0,J2(n)|0}function S8(n,e){n=n|0,e=e|0;var t=0;t=n+2|0,l[t>>0]|0||(l[t>>0]=1),g[n>>1]=g[e>>1]|0}function C8(n){n=n|0,y0(n),Y(n)}function O8(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function I8(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==17398?n+12|0:0)|0}function H8(n){n=n|0,H(n,16)}function Q8(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(172)|0,P8(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],$8(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function D8(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;c=s,s=s+32|0,i=c+12|0,A=c,e=c+8|0,u=E(176)|0,u3(u,r[n+4>>2]|0),f=n+8|0,r[e>>2]=0,r[i>>2]=r[e>>2],o3(A,u,i),u=n+12|0,e=r[u>>2]|0,o=n+16|0;do if(e>>>0>=(r[o>>2]|0)>>>0)if(e=(e-(r[f>>2]|0)>>3)+1|0,t=r2(f)|0,t>>>0<e>>>0)g0(f);else{h=r[f>>2]|0,Z=(r[o>>2]|0)-h|0,o=Z>>2,a0(i,Z>>3>>>0<t>>>1>>>0?o>>>0<e>>>0?e:o:t,(r[u>>2]|0)-h>>3,n+16|0),o=i+8|0,u=r[o>>2]|0,r[u>>2]=r[A>>2],n=A+4|0,r[u+4>>2]=r[n>>2],r[A>>2]=0,r[n>>2]=0,r[o>>2]=u+8,b0(f,i),n2(i);break}else q0(i,f,1),Z=i+4|0,h=r[Z>>2]|0,r[h>>2]=r[A>>2],o=A+4|0,r[h+4>>2]=r[o>>2],r[A>>2]=0,r[o>>2]=0,r[Z>>2]=h+8,K0(i);while(0);T0(A),s=c}function P8(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=5428,r[n+4>>2]=e,L8(n+8|0)}function $8(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5452,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function L8(n){n=n|0,S0(n,8,1,8,0),z0(n+80|0,8,1,8,0),l[n+160>>0]=0,l[n+161>>0]=0,a8(n+162|0)}function qi(n){n=n|0,r[n>>2]=5428,b8(n+8|0),x0(n)}function q8(n){n=n|0,qi(n),Y(n)}function K8(n,e){return n=n|0,e=e|0,n3(n+8|0,r[n+4>>2]|0,e)|0}function a8(n){n=n|0,l[n+1>>0]=0}function b8(n){n=n|0,B0(n+80|0),C0(n)}function n3(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[n+161>>0]|0||M0(n+80|0),A=n+162|0,r3(A)|0?(e=(fn(n+80|0,e,y[A>>0]|0,0)|0)&255,l[i>>0]=e,le(e,t)):(on(un(e)|0,t,1),l[i>>0]=oe(t)|0),e3(A,i),s=f,t+1|0}function r3(n){return n=n|0,(l[n+1>>0]|0)!=0|0}function e3(n,e){n=n|0,e=e|0;var t=0;t=n+1|0,l[t>>0]|0||(l[t>>0]=1),l[n>>0]=l[e>>0]|0}function t3(n){n=n|0,y0(n),Y(n)}function i3(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function A3(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==17896?n+12|0:0)|0}function f3(n){n=n|0,H(n,16)}function u3(n,e){n=n|0,e=e|0,e2(n),r[n>>2]=5480,r[n+4>>2]=e,l3(n+8|0)}function o3(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;t=s,s=s+16|0,i=t,r[n>>2]=e,A=E(16)|0,r[A+4>>2]=0,r[A+8>>2]=0,r[A>>2]=5504,r[A+12>>2]=e,r[n+4>>2]=A,r[i>>2]=e,r[i+4>>2]=e,t2(n,i),s=t}function l3(n){n=n|0,S0(n,16,1,8,0),z0(n+80|0,16,1,8,0),l[n+160>>0]=0,l[n+161>>0]=0,h3(n+162|0)}function Ki(n){n=n|0,r[n>>2]=5480,m3(n+8|0),x0(n)}function c3(n){n=n|0,Ki(n),Y(n)}function s3(n,e){return n=n|0,e=e|0,v3(n+8|0,r[n+4>>2]|0,e)|0}function h3(n){n=n|0,l[n+2>>0]=0}function m3(n){n=n|0,B0(n+80|0),C0(n)}function v3(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;return f=s,s=s+16|0,i=f,l[n+161>>0]|0||M0(n+80|0),A=n+162|0,Z3(A)|0?(e=(fn(n+80|0,e,G[A>>1]|0,0)|0)&65535,g[i>>1]=e,Y2(e,t)):(on(un(e)|0,t,2),g[i>>1]=J2(t)|0),p3(A,i),s=f,t+2|0}function Z3(n){return n=n|0,(l[n+2>>0]|0)!=0|0}function p3(n,e){n=n|0,e=e|0;var t=0;t=n+2|0,l[t>>0]|0||(l[t>>0]=1),g[n>>1]=g[e>>1]|0}function y3(n){n=n|0,y0(n),Y(n)}function R3(n){n=n|0,n=r[n+12>>2]|0,n|0&&A0[r[(r[n>>2]|0)+4>>2]&255](n)}function V3(n,e){return n=n|0,e=e|0,((r[e+4>>2]|0)==18394?n+12|0:0)|0}function F3(n){n=n|0,H(n,16)}function tp(){}function w3(n){return n=n|0,d3(n)|0}function k3(){return 0}function W3(){return 0}function X3(n){n=n|0,n|0&&(G3(n),Y(n))}function Bn(){return T3()|0}function g3(){return N3()|0}function U3(){return z3()|0}function ai(){return 0}function d3(n){return n=n|0,3360}function G3(n){n=n|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,i=e,r[i>>2]=r[n>>2],r[n>>2]=0,t=n+4|0,r[i+4>>2]=r[t>>2],r[t>>2]=0,Kr(i),t=n+8|0,r[i>>2]=r[t>>2],r[t>>2]=0,A=n+12|0,r[i+4>>2]=r[A>>2],r[A>>2]=0,ar(i),ar(t),Kr(n),s=e}function T3(){return 3360}function N3(){return 3368}function z3(){return 3384}function Zr(){return 18579}function pr(){return 18582}function bi(){return 18584}function M3(){var n=0;return n=E(16)|0,x3(n),n|0}function B3(n){n=n|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,t=e,A=Bn()|0,i=Y3(t)|0,t=_3(t)|0,dt(A|0,i|0,t|0,Zr()|0,12,n|0),s=e}function J3(n){return n=n|0,E3(Ye[n&3]()|0)|0}function Y3(n){return n=n|0,1}function _3(n){return n=n|0,j3()|0}function E3(n){return n=n|0,n|0}function j3(){return 5524}function x3(n){n=n|0,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,r[n+12>>2]=0}function S3(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;t=s,s=s+16|0,i=t,A=t+8|0,u=r[e+4>>2]|0,r[i>>2]=r[e>>2],r[i+4>>2]=u,u=Bn()|0,f=O3(A)|0,A=I3(A)|0,e=rA()|0,rn(u|0,n|0,f|0,A|0,e|0,4,H3(i)|0,0),s=t}function C3(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=Re(e)|0,e=r[n>>2]|0,A=r[n+4>>2]|0,n=f+(A>>1)|0,A&1&&(e=r[(r[n>>2]|0)+e>>2]|0),A=nA(t)|0,f=Ve(i)|0,xn[e&15](n,A,f)}function O3(n){return n=n|0,4}function I3(n){return n=n|0,Q3()|0}function H3(n){n=n|0;var e=0,t=0;return e=E(8)|0,t=r[n+4>>2]|0,r[e>>2]=r[n>>2],r[e+4>>2]=t,e|0}function Re(n){return n=n|0,n|0}function nA(n){return n=n|0,n|0}function Ve(n){return n=n|0,n|0}function Q3(){return 144}function rA(){return 18587}function D3(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;t=s,s=s+16|0,i=t,A=t+8|0,u=r[e+4>>2]|0,r[i>>2]=r[e>>2],r[i+4>>2]=u,u=Bn()|0,f=$3(A)|0,A=L3(A)|0,e=Fe()|0,rn(u|0,n|0,f|0,A|0,e|0,7,q3(i)|0,0),s=t}function P3(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;A=Re(e)|0,e=r[n>>2]|0,i=r[n+4>>2]|0,n=A+(i>>1)|0,i&1&&(e=r[(r[n>>2]|0)+e>>2]|0),A=eA(t)|0,k2[e&15](n,A)}function $3(n){return n=n|0,3}function L3(n){return n=n|0,K3()|0}function q3(n){n=n|0;var e=0,t=0;return e=E(8)|0,t=r[n+4>>2]|0,r[e>>2]=r[n>>2],r[e+4>>2]=t,e|0}function eA(n){return n=n|0,n|0}function K3(){return 5528}function Fe(){return 18593}function a3(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;t=s,s=s+16|0,i=t,A=t+8|0,u=r[e+4>>2]|0,r[i>>2]=r[e>>2],r[i+4>>2]=u,u=Bn()|0,f=n5(A)|0,A=r5(A)|0,e=A5()|0,rn(u|0,n|0,f|0,A|0,e|0,41,e5(i)|0,0),s=t}function b3(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;return i=s,s=s+16|0,t=i,f=Re(e)|0,e=r[n>>2]|0,A=r[n+4>>2]|0,n=f+(A>>1)|0,A&1&&(e=r[(r[n>>2]|0)+e>>2]|0),r[t>>2]=Wr[e&15](n)|0,f=t5(t)|0,s=i,f|0}function n5(n){return n=n|0,2}function r5(n){return n=n|0,i5()|0}function e5(n){n=n|0;var e=0,t=0;return e=E(8)|0,t=r[n+4>>2]|0,r[e>>2]=r[n>>2],r[e+4>>2]=t,e|0}function t5(n){return n=n|0,r[n>>2]|0}function i5(){return 5540}function A5(){return 18598}function ip(){}function f5(n){return n=n|0,h5(n)|0}function u5(){return 0}function o5(){return 0}function l5(n){n=n|0,n|0&&(m5(n),Y(n))}function Jn(){return v5()|0}function c5(){return Z5()|0}function s5(){return p5()|0}function h5(n){return n=n|0,3400}function m5(n){n=n|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,i=e,r[i>>2]=r[n>>2],r[n>>2]=0,t=n+4|0,r[i+4>>2]=r[t>>2],r[t>>2]=0,Ze(i),t=n+16|0,r[i>>2]=r[t>>2],r[t>>2]=0,A=n+20|0,r[i+4>>2]=r[A>>2],r[A>>2]=0,Mn(i),r[i>>2]=r[t>>2],r[t>>2]=0,r[i+4>>2]=r[A>>2],r[A>>2]=0,Mn(i),Mn(t),Ii(n+8|0),Ze(n),s=e}function v5(){return 3400}function Z5(){return 3408}function p5(){return 3424}function y5(){var n=0;return n=E(24)|0,X5(n),n|0}function R5(n){n=n|0;var e=0,t=0,i=0,A=0;e=s,s=s+16|0,t=e,A=Jn()|0,i=F5(t)|0,t=w5(t)|0,dt(A|0,i|0,t|0,Zr()|0,13,n|0),s=e}function V5(n){return n=n|0,k5(Ye[n&3]()|0)|0}function F5(n){return n=n|0,1}function w5(n){return n=n|0,W5()|0}function k5(n){return n=n|0,n|0}function W5(){return 5548}function X5(n){n=n|0,r[n>>2]=0,r[n+4>>2]=0,r[n+8>>2]=0,r[n+12>>2]=0,r[n+16>>2]=0,r[n+20>>2]=0}function g5(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;t=s,s=s+16|0,i=t,A=t+8|0,u=r[e+4>>2]|0,r[i>>2]=r[e>>2],r[i+4>>2]=u,u=Jn()|0,f=d5(A)|0,A=G5(A)|0,e=rA()|0,rn(u|0,n|0,f|0,A|0,e|0,5,T5(i)|0,0),s=t}function U5(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=we(e)|0,e=r[n>>2]|0,A=r[n+4>>2]|0,n=f+(A>>1)|0,A&1&&(e=r[(r[n>>2]|0)+e>>2]|0),A=nA(t)|0,f=Ve(i)|0,xn[e&15](n,A,f)}function d5(n){return n=n|0,4}function G5(n){return n=n|0,N5()|0}function T5(n){n=n|0;var e=0,t=0;return e=E(8)|0,t=r[n+4>>2]|0,r[e>>2]=r[n>>2],r[e+4>>2]=t,e|0}function we(n){return n=n|0,n|0}function N5(){return 160}function ke(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;t=s,s=s+16|0,i=t,A=t+8|0,u=r[e+4>>2]|0,r[i>>2]=r[e>>2],r[i+4>>2]=u,u=Jn()|0,f=M5(A)|0,A=B5(A)|0,e=Fe()|0,rn(u|0,n|0,f|0,A|0,e|0,8,J5(i)|0,0),s=t}function z5(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;A=we(e)|0,e=r[n>>2]|0,i=r[n+4>>2]|0,n=A+(i>>1)|0,i&1&&(e=r[(r[n>>2]|0)+e>>2]|0),A=Ve(t)|0,k2[e&15](n,A)}function M5(n){return n=n|0,3}function B5(n){return n=n|0,Y5()|0}function J5(n){n=n|0;var e=0,t=0;return e=E(8)|0,t=r[n+4>>2]|0,r[e>>2]=r[n>>2],r[e+4>>2]=t,e|0}function Y5(){return 5552}function _5(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;t=s,s=s+16|0,i=t,A=t+8|0,u=r[e+4>>2]|0,r[i>>2]=r[e>>2],r[i+4>>2]=u,u=Jn()|0,f=j5(A)|0,A=x5(A)|0,e=Fe()|0,rn(u|0,n|0,f|0,A|0,e|0,9,S5(i)|0,0),s=t}function E5(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;A=we(e)|0,e=r[n>>2]|0,i=r[n+4>>2]|0,n=A+(i>>1)|0,i&1&&(e=r[(r[n>>2]|0)+e>>2]|0),A=eA(t)|0,k2[e&15](n,A)}function j5(n){return n=n|0,3}function x5(n){return n=n|0,C5()|0}function S5(n){n=n|0;var e=0,t=0;return e=E(8)|0,t=r[n+4>>2]|0,r[e>>2]=r[n>>2],r[e+4>>2]=t,e|0}function C5(){return 5564}function O5(){fu()}function I5(){H5()}function H5(){Q5(22144)}function Q5(n){n=n|0;var e=0;e=s,s=s+16|0,r[e>>2]=n,tA(),s=e}function tA(){nu(D5()|0,18653),af(P5()|0,18658,1,1,0),$5(18663),L5(18668),q5(18680),K5(18694),a5(18700),b5(18715),nh(18719),rh(18732),eh(18737),th(18751),ih(18757),Tt(Ah()|0,18764),Tt(fh()|0,18776),qr(uh()|0,4,18809),qr(oh()|0,2,18822),qr(lh()|0,4,18837),bf(ch()|0,18852),sh(18868),iA(18898),AA(18935),fA(18974),uA(19005),oA(19045),lA(19074),hh(19112),mh(19142),iA(19181),AA(19213),fA(19246),uA(19279),oA(19313),lA(19346),vh(19380),Zh(19411),ph(19443)}function D5(){return G6()|0}function P5(){return d6()|0}function $5(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=g6()|0,c2(n|0,r[t>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),s=e}function L5(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=W6()|0,c2(n|0,r[t>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),s=e}function q5(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=w6()|0,c2(n|0,r[t>>2]|0,1,0,255),s=e}function K5(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=V6()|0,c2(n|0,r[t>>2]|0,2,-32768<<16>>16|0,32767<<16>>16|0),s=e}function a5(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=y6()|0,c2(n|0,r[t>>2]|0,2,0,65535),s=e}function b5(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=Z6()|0,c2(n|0,r[t>>2]|0,4,-2147483648,2147483647),s=e}function nh(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=m6()|0,c2(n|0,r[t>>2]|0,4,0,-1),s=e}function rh(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=s6()|0,c2(n|0,r[t>>2]|0,4,-2147483648,2147483647),s=e}function eh(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=l6()|0,c2(n|0,r[t>>2]|0,4,0,-1),s=e}function th(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=u6()|0,Gt(n|0,r[t>>2]|0,4),s=e}function ih(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,r[t>>2]=n,n=A6()|0,Gt(n|0,r[t>>2]|0,8),s=e}function Ah(){return i6()|0}function fh(){return t6()|0}function uh(){return e6()|0}function oh(){return r6()|0}function lh(){return n6()|0}function ch(){return bh()|0}function sh(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=qh()|0,n=Kh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function iA(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Ph()|0,n=$h()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function AA(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Hh()|0,n=Qh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function fA(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Ch()|0,n=Oh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function uA(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=jh()|0,n=xh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function oA(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Yh()|0,n=_h()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function lA(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Mh()|0,n=Bh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function hh(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Th()|0,n=Nh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function mh(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Uh()|0,n=dh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function vh(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Wh()|0,n=Xh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function Zh(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=Fh()|0,n=wh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function ph(n){n=n|0;var e=0,t=0,i=0;e=s,s=s+16|0,t=e,r[t>>2]=n,i=yh()|0,n=Rh()|0,j0(i|0,n|0,r[t>>2]|0),s=e}function yh(){return Vh()|0}function Rh(){return 7}function Vh(){return 3440}function Fh(){return kh()|0}function wh(){return 7}function kh(){return 3448}function Wh(){return gh()|0}function Xh(){return 6}function gh(){return 3456}function Uh(){return Gh()|0}function dh(){return 5}function Gh(){return 3464}function Th(){return zh()|0}function Nh(){return 4}function zh(){return 3472}function Mh(){return Jh()|0}function Bh(){return 5}function Jh(){return 3480}function Yh(){return Eh()|0}function _h(){return 4}function Eh(){return 3488}function jh(){return Sh()|0}function xh(){return 3}function Sh(){return 3496}function Ch(){return Ih()|0}function Oh(){return 2}function Ih(){return 3504}function Hh(){return Dh()|0}function Qh(){return 1}function Dh(){return 3512}function Ph(){return Lh()|0}function $h(){return 0}function Lh(){return 3520}function qh(){return ah()|0}function Kh(){return 0}function ah(){return 3528}function bh(){return 3536}function n6(){return 3544}function r6(){return 3576}function e6(){return 3600}function t6(){return 3624}function i6(){return 3648}function A6(){return f6()|0}function f6(){return 4144}function u6(){return o6()|0}function o6(){return 4136}function l6(){return c6()|0}function c6(){return 4128}function s6(){return h6()|0}function h6(){return 4120}function m6(){return v6()|0}function v6(){return 4112}function Z6(){return p6()|0}function p6(){return 4104}function y6(){return R6()|0}function R6(){return 4096}function V6(){return F6()|0}function F6(){return 4088}function w6(){return k6()|0}function k6(){return 4072}function W6(){return X6()|0}function X6(){return 4080}function g6(){return U6()|0}function U6(){return 4064}function d6(){return 4056}function G6(){return 4040}function T6(n){n=n|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,r[A>>2]=n,r[i>>2]=r[A>>2],r[t>>2]=r[(r[i>>2]|0)+4>>2],n=L6(r[t>>2]|0)|0,s=e,n|0}function i2(){return 21636}function Yn(n){return n=n|0,(n+-48|0)>>>0<10|0}function cA(){return 5576}function sA(n,e){n=n|0,e=e|0;var t=0,i=0;if(t=l[n>>0]|0,i=l[e>>0]|0,!(t<<24>>24)||t<<24>>24!=i<<24>>24)n=i;else{do n=n+1|0,e=e+1|0,t=l[n>>0]|0,i=l[e>>0]|0;while(!(!(t<<24>>24)||t<<24>>24!=i<<24>>24));n=i}return(t&255)-(n&255)|0}function yr(n){n=n|0;var e=0,t=0,i=0;i=n;n:do if(!(i&3))t=5;else for(e=i;;){if(!(l[n>>0]|0)){n=e;break n}if(n=n+1|0,e=n,!(e&3)){t=5;break}}while(0);if((t|0)==5){for(;e=r[n>>2]|0,!((e&-2139062144^-2139062144)&e+-16843009);)n=n+4|0;if((e&255)<<24>>24)do n=n+1|0;while(l[n>>0]|0)}return n-i|0}function N6(n){n=n|0}function z6(n){return n=n|0,1}function M6(n){n=n|0;var e=0,t=0;return e=n+74|0,t=l[e>>0]|0,l[e>>0]=t+255|t,e=r[n>>2]|0,e&8?(r[n>>2]=e|32,n=-1):(r[n+8>>2]=0,r[n+4>>2]=0,t=r[n+44>>2]|0,r[n+28>>2]=t,r[n+20>>2]=t,r[n+16>>2]=t+(r[n+48>>2]|0),n=0),n|0}function B6(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0;i=t+16|0,A=r[i>>2]|0,A?f=5:M6(t)|0?i=0:(A=r[i>>2]|0,f=5);n:do if((f|0)==5){if(o=t+20|0,u=r[o>>2]|0,i=u,(A-u|0)>>>0<e>>>0){i=hn[r[t+36>>2]&7](t,n,e)|0;break}r:do if((l[t+75>>0]|0)<0|(e|0)==0)f=0,A=n;else{for(u=e;A=u+-1|0,(l[n+A>>0]|0)!=10;)if(A)u=A;else{f=0,A=n;break r}if(i=hn[r[t+36>>2]&7](t,n,u)|0,i>>>0<u>>>0)break n;f=u,A=n+u|0,e=e-u|0,i=r[o>>2]|0}while(0);_0(i|0,A|0,e|0)|0,r[o>>2]=(r[o>>2]|0)+e,i=f+e|0}while(0);return i|0}function J6(n,e){return n=n|0,e=e|0,e?e=Y6(r[e>>2]|0,r[e+4>>2]|0,n)|0:e=0,(e|0?e:n)|0}function Y6(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0;V=(r[n>>2]|0)+1794895138|0,f=E2(r[n+8>>2]|0,V)|0,i=E2(r[n+12>>2]|0,V)|0,A=E2(r[n+16>>2]|0,V)|0;n:do if(f>>>0<e>>>2>>>0&&(p=e-(f<<2)|0,i>>>0<p>>>0&A>>>0<p>>>0)&&!((A|i)&3|0)){for(p=i>>>2,Z=A>>>2,h=0;;){if(o=f>>>1,c=h+o|0,u=c<<1,A=u+p|0,i=E2(r[n+(A<<2)>>2]|0,V)|0,A=E2(r[n+(A+1<<2)>>2]|0,V)|0,!(A>>>0<e>>>0&i>>>0<(e-A|0)>>>0)){i=0;break n}if(l[n+(A+i)>>0]|0){i=0;break n}if(i=sA(t,n+A|0)|0,!i)break;if(i=(i|0)<0,(f|0)==1){i=0;break n}h=i?h:c,f=i?o:f-o|0}i=u+Z|0,A=E2(r[n+(i<<2)>>2]|0,V)|0,i=E2(r[n+(i+1<<2)>>2]|0,V)|0,i>>>0<e>>>0&A>>>0<(e-i|0)>>>0?i=l[n+(i+A)>>0]|0?0:n+i|0:i=0}else i=0;while(0);return i|0}function E2(n,e){n=n|0,e=e|0;var t=0;return t=jA(n|0)|0,(e|0?t:n)|0}function _6(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;f=e&255,i=(t|0)!=0;n:do if(i&(n&3|0)!=0)for(A=e&255;;){if((l[n>>0]|0)==A<<24>>24){A=6;break n}if(n=n+1|0,t=t+-1|0,i=(t|0)!=0,!(i&(n&3|0)!=0)){A=5;break}}else A=5;while(0);(A|0)==5&&(i?A=6:n=0);n:do if((A|0)==6){if((l[n>>0]|0)!=(e&255)<<24>>24){i=D(f,16843009)|0;r:do if(t>>>0>3)do{if(f=r[n>>2]^i,(f&-2139062144^-2139062144)&f+-16843009|0)break r;n=n+4|0,t=t+-4|0}while(t>>>0>3);while(0)}if(!t)n=0;else for(i=e&255;;){if((l[n>>0]|0)==i<<24>>24)break n;if(t=t+-1|0,t)n=n+1|0;else{n=0;break}}}while(0);return n|0}function E6(n,e,t){return n=n|0,e=e|0,t=t|0,S6(n,e,t,1,8)|0}function j6(n,e,t,i,A,f){n=n|0,e=+e,t=t|0,i=i|0,A=A|0,f=f|0;var u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0,S=0,z=0,N=0,j=0,U=0,b=0,c0=0,n0=0,I=0,l0=0,C=0,O=0,P0=0;P0=s,s=s+560|0,c=P0+32|0,z=P0+536|0,O=P0,C=O,h=P0+540|0,r[z>>2]=0,l0=h+12|0,ZA(e)|0,u=a()|0,(u|0)<0?(e=-e,ZA(e)|0,I=1,n0=20247,u=a()|0):(I=(A&2049|0)!=0&1,n0=A&2048|0?20250:A&1|0?20253:20248);do if(!0&(u&2146435072|0)==2146435072)O=(f&32|0)!=0,u=I+3|0,k0(n,32,t,u,A&-65537),V0(n,n0,I),V0(n,e!=e|!1?O?20274:20278:O?20266:20270,3),k0(n,32,t,u,A^8192);else{if(k=+pA(e,z)*2,u=k!=0,u&&(r[z>>2]=(r[z>>2]|0)+-1),S=f|32,(S|0)==97){p=f&32,W=p|0?n0+9|0:n0,V=I|2,u=12-i|0;do if(i>>>0>11|(u|0)==0)e=k;else{e=8;do u=u+-1|0,e=e*16;while(u|0);if((l[W>>0]|0)==45){e=-(e+(-k-e));break}else{e=k+e-e;break}}while(0);o=r[z>>2]|0,u=(o|0)<0?0-o|0:o,u=ln(u,((u|0)<0)<<31>>31,l0)|0,(u|0)==(l0|0)&&(u=h+11|0,l[u>>0]=48),l[u+-1>>0]=(o>>31&2)+43,Z=u+-2|0,l[Z>>0]=f+15,o=(i|0)<1,c=(A&8|0)==0,h=O;do I=~~e,u=h+1|0,l[h>>0]=p|y[640+I>>0],e=(e-+(I|0))*16,(u-C|0)==1&&!(c&(o&e==0))?(l[u>>0]=46,h=h+2|0):h=u;while(e!=0);i|0&&(-2-C+h|0)<(i|0)?(o=l0,c=Z,u=i+2+o-c|0):(o=l0,c=Z,u=o-C-c+h|0),l0=u+V|0,k0(n,32,t,l0,A),V0(n,W,V),k0(n,48,t,l0,A^65536),C=h-C|0,V0(n,O,C),O=o-c|0,k0(n,48,u-(C+O)|0,0,0),V0(n,Z,O),k0(n,32,t,l0,A^8192),u=l0;break}o=(i|0)<0?6:i,u?(u=(r[z>>2]|0)+-28|0,r[z>>2]=u,e=k*268435456):(e=k,u=r[z>>2]|0),c0=(u|0)<0?c:c+288|0,c=c0;do U=~~e>>>0,r[c>>2]=U,c=c+4|0,e=(e-+(U>>>0))*1e9;while(e!=0);if(U=c0,(u|0)>0)for(p=c0;;){if(Z=(u|0)<29?u:29,u=c+-4|0,u>>>0>=p>>>0){h=0;do w=_A(r[u>>2]|0,0,Z|0)|0,w=O0(w|0,a()|0,h|0,0)|0,N=a()|0,h=Me(w|0,N|0,1e9,0)|0,j=ze(h|0,a()|0,1e9,0)|0,j=sn(w|0,N|0,j|0,a()|0)|0,a()|0,r[u>>2]=j,u=u+-4|0;while(u>>>0>=p>>>0);h?(j=p+-4|0,r[j>>2]=h,h=j):h=p}else h=p;n:do if(c>>>0>h>>>0)for(u=c;;){if(c=u+-4|0,r[c>>2]|0){c=u;break n}if(c>>>0>h>>>0)u=c;else break}while(0);if(u=(r[z>>2]|0)-Z|0,r[z>>2]=u,(u|0)>0)p=h;else break}else h=c0;if((u|0)<0){i=((o+25|0)/9|0)+1|0,w=(S|0)==102;do{if(W=0-u|0,W=(W|0)<9?W:9,h>>>0<c>>>0){Z=(1<<W)+-1|0,p=1e9>>>W,V=0,u=h;do j=r[u>>2]|0,r[u>>2]=(j>>>W)+V,V=D(j&Z,p)|0,u=u+4|0;while(u>>>0<c>>>0);h=r[h>>2]|0?h:h+4|0,V&&(r[c>>2]=V,c=c+4|0)}else h=r[h>>2]|0?h:h+4|0;u=w?c0:h,c=(c-u>>2|0)>(i|0)?u+(i<<2)|0:c,u=(r[z>>2]|0)+W|0,r[z>>2]=u}while((u|0)<0);w=h}else w=h;if(w>>>0<c>>>0){if(u=(U-w>>2)*9|0,Z=r[w>>2]|0,Z>>>0>=10){h=10;do h=h*10|0,u=u+1|0;while(Z>>>0>=h>>>0)}}else u=0;if(N=(S|0)==103,j=(o|0)!=0,h=o-((S|0)==102?0:u)+((j&N)<<31>>31)|0,(h|0)<(((c-U>>2)*9|0)+-9|0)){if(z=h+9216|0,h=(z|0)/9|0,i=c0+4+(h+-1024<<2)|0,h=z-(h*9|0)|0,(h|0)<8)for(Z=10;Z=Z*10|0,(h|0)<7;)h=h+1|0;else Z=10;if(V=r[i>>2]|0,h=(V>>>0)/(Z>>>0)|0,W=V-(D(h,Z)|0)|0,p=(i+4|0)==(c|0),p&(W|0)==0)h=i,Z=w;else if(k=h&1|0?9007199254740994:9007199254740992,z=Z>>>1,e=W>>>0<z>>>0?.5:p&(W|0)==(z|0)?1:1.5,I&&(z=(l[n0>>0]|0)==45,e=z?-e:e,k=z?-k:k),h=V-W|0,r[i>>2]=h,k+e!=k){if(z=h+Z|0,r[i>>2]=z,z>>>0>999999999)for(Z=i,u=w;;)if(h=Z+-4|0,r[Z>>2]=0,h>>>0<u>>>0&&(u=u+-4|0,r[u>>2]=0),z=(r[h>>2]|0)+1|0,r[h>>2]=z,z>>>0>999999999)Z=h;else{Z=u;break}else h=i,Z=w;if(u=(U-Z>>2)*9|0,V=r[Z>>2]|0,V>>>0>=10){p=10;do p=p*10|0,u=u+1|0;while(V>>>0>=p>>>0)}}else h=i,Z=w;z=h+4|0,c=c>>>0>z>>>0?z:c}else Z=w;i=0-u|0;n:do if(c>>>0>Z>>>0)for(;;){if(h=c+-4|0,r[h>>2]|0){z=c,S=1;break n}if(h>>>0>Z>>>0)c=h;else{z=h,S=0;break}}else z=c,S=0;while(0);do if(N){if(o=o+((j^1)&1)|0,(o|0)>(u|0)&(u|0)>-5?(p=f+-1|0,o=o+-1-u|0):(p=f+-2|0,o=o+-1|0),!(A&8)){if(S&&(b=r[z+-4>>2]|0,(b|0)!=0))if((b>>>0)%10|0)h=0;else{h=0,c=10;do c=c*10|0,h=h+1|0;while(!((b>>>0)%(c>>>0)|0|0))}else h=9;if(c=((z-U>>2)*9|0)+-9|0,(p|32|0)==102){f=c-h|0,f=(f|0)>0?f:0,o=(o|0)<(f|0)?o:f;break}else{f=c+u-h|0,f=(f|0)>0?f:0,o=(o|0)<(f|0)?o:f;break}}}else p=f;while(0);if(w=(o|0)!=0,V=w?1:A>>>3&1,W=(p|32|0)==102,W)N=0,u=(u|0)>0?u:0;else{if(c=(u|0)<0?i:u,c=ln(c,((c|0)<0)<<31>>31,l0)|0,h=l0,(h-c|0)<2)do c=c+-1|0,l[c>>0]=48;while((h-c|0)<2);l[c+-1>>0]=(u>>31&2)+43,u=c+-2|0,l[u>>0]=p,N=u,u=h-u|0}if(u=I+1+o+V+u|0,k0(n,32,t,u,A),V0(n,n0,I),k0(n,48,t,u,A^65536),W){V=Z>>>0>c0>>>0?c0:Z,W=O+9|0,Z=W,p=O+8|0,h=V;do{if(c=ln(r[h>>2]|0,0,W)|0,(h|0)==(V|0))(c|0)==(W|0)&&(l[p>>0]=48,c=p);else if(c>>>0>O>>>0){O2(O|0,48,c-C|0)|0;do c=c+-1|0;while(c>>>0>O>>>0)}V0(n,c,Z-c|0),h=h+4|0}while(h>>>0<=c0>>>0);if((A&8|0)==0&(w^1)||V0(n,20282,1),h>>>0<z>>>0&(o|0)>0)for(;;){if(c=ln(r[h>>2]|0,0,W)|0,c>>>0>O>>>0){O2(O|0,48,c-C|0)|0;do c=c+-1|0;while(c>>>0>O>>>0)}if(V0(n,c,(o|0)<9?o:9),h=h+4|0,c=o+-9|0,h>>>0<z>>>0&(o|0)>9)o=c;else{o=c;break}}k0(n,48,o+9|0,9,0)}else{if(z=S?z:Z+4|0,Z>>>0<z>>>0&(o|0)>-1){i=O+9|0,w=(A&8|0)==0,S=i,V=0-C|0,W=O+8|0,p=Z;do{c=ln(r[p>>2]|0,0,i)|0,(c|0)==(i|0)&&(l[W>>0]=48,c=W);do if((p|0)==(Z|0)){if(h=c+1|0,V0(n,c,1),w&(o|0)<1){c=h;break}V0(n,20282,1),c=h}else{if(c>>>0<=O>>>0)break;O2(O|0,48,c+V|0)|0;do c=c+-1|0;while(c>>>0>O>>>0)}while(0);C=S-c|0,V0(n,c,(o|0)>(C|0)?C:o),o=o-C|0,p=p+4|0}while(p>>>0<z>>>0&(o|0)>-1)}k0(n,48,o+18|0,18,0),V0(n,N,l0-N|0)}k0(n,32,t,u,A^8192)}while(0);return s=P0,((u|0)<(t|0)?t:u)|0}function x6(n,e){n=n|0,e=e|0;var t=0,i=0;i=(r[e>>2]|0)+(8-1)&~(8-1),t=+M[i>>3],r[e>>2]=i+8,M[n>>3]=t}function S6(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0,S=0,z=0;z=s,s=s+224|0,k=z+208|0,W=z+160|0,w=z+80|0,S=z,f=W,u=f+40|0;do r[f>>2]=0,f=f+4|0;while((f|0)<(u|0));return r[k>>2]=r[t>>2],(We(0,e,k,w,W,i,A)|0)<0?t=-1:((r[n+76>>2]|0)>-1?V=z6(n)|0:V=0,t=r[n>>2]|0,p=t&32,(l[n+74>>0]|0)<1&&(r[n>>2]=t&-33),f=n+48|0,r[f>>2]|0?t=We(n,e,k,w,W,i,A)|0:(u=n+44|0,o=r[u>>2]|0,r[u>>2]=S,c=n+28|0,r[c>>2]=S,h=n+20|0,r[h>>2]=S,r[f>>2]=80,Z=n+16|0,r[Z>>2]=S+80,t=We(n,e,k,w,W,i,A)|0,o&&(hn[r[n+36>>2]&7](n,0,0)|0,t=r[h>>2]|0?t:-1,r[u>>2]=o,r[f>>2]=0,r[Z>>2]=0,r[c>>2]=0,r[h>>2]=0)),f=r[n>>2]|0,r[n>>2]=f|p,V|0&&N6(n),t=f&32|0?-1:t),s=z,t|0}function We(n,e,t,i,A,f,u){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,u=u|0;var o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0,S=0,z=0,N=0,j=0,U=0,b=0,c0=0,n0=0,I=0,l0=0,C=0,O=0,P0=0,h0=0,H2=0,H0=0;H2=s,s=s+64|0,O=H2+56|0,h0=H2+40|0,c0=H2,I=H2+48|0,l0=H2+60|0,r[O>>2]=e,j=(n|0)!=0,U=c0+40|0,b=U,c0=c0+39|0,n0=I+4|0,o=0,e=0,h=0;n:for(;;){do{do if((e|0)>-1)if((o|0)>(2147483647-e|0)){r[(i2()|0)>>2]=61,e=-1;break}else{e=o+e|0;break}while(0);if(k=r[O>>2]|0,o=l[k>>0]|0,!(o<<24>>24)){N=92;break n}c=k;r:for(;;){switch(o<<24>>24){case 37:{N=10;break r}case 0:{o=c;break r}default:}z=c+1|0,r[O>>2]=z,o=l[z>>0]|0,c=z}r:do if((N|0)==10){N=0,o=c;do{if((l[c+1>>0]|0)!=37)break r;o=o+1|0,c=c+2|0,r[O>>2]=c}while((l[c>>0]|0)==37)}while(0);o=o-k|0,j&&V0(n,k,o)}while(o|0);if(z=(Yn(l[(r[O>>2]|0)+1>>0]|0)|0)==0,c=r[O>>2]|0,!z&&(l[c+2>>0]|0)==36?(w=(l[c+1>>0]|0)+-48|0,p=1,o=3):(w=-1,p=h,o=1),o=c+o|0,r[O>>2]=o,c=l[o>>0]|0,h=(c<<24>>24)+-32|0,h>>>0>31|(1<<h&75913|0)==0)Z=0;else{Z=0;do Z=1<<h|Z,o=o+1|0,r[O>>2]=o,c=l[o>>0]|0,h=(c<<24>>24)+-32|0;while(!(h>>>0>31|(1<<h&75913|0)==0))}if(c<<24>>24==42){if(Yn(l[o+1>>0]|0)|0&&(P0=r[O>>2]|0,(l[P0+2>>0]|0)==36))o=P0+1|0,r[A+((l[o>>0]|0)+-48<<2)>>2]=10,o=r[i+((l[o>>0]|0)+-48<<3)>>2]|0,h=1,c=P0+3|0;else{if(p|0){e=-1;break}j?(z=(r[t>>2]|0)+(4-1)&~(4-1),o=r[z>>2]|0,r[t>>2]=z+4):o=0,h=0,c=(r[O>>2]|0)+1|0}r[O>>2]=c,z=(o|0)<0,S=z?0-o|0:o,Z=z?Z|8192:Z,z=h}else{if(o=hA(O)|0,(o|0)<0){e=-1;break}S=o,z=p,c=r[O>>2]|0}do if((l[c>>0]|0)==46){if(o=c+1|0,(l[o>>0]|0)!=42){r[O>>2]=o,o=hA(O)|0,c=r[O>>2]|0;break}if(Yn(l[c+2>>0]|0)|0&&(C=r[O>>2]|0,(l[C+3>>0]|0)==36)){o=C+2|0,r[A+((l[o>>0]|0)+-48<<2)>>2]=10,o=r[i+((l[o>>0]|0)+-48<<3)>>2]|0,c=C+4|0,r[O>>2]=c;break}if(z|0){e=-1;break n}j?(W=(r[t>>2]|0)+(4-1)&~(4-1),o=r[W>>2]|0,r[t>>2]=W+4):o=0,c=(r[O>>2]|0)+2|0,r[O>>2]=c}else o=-1;while(0);for(W=0;;){if(((l[c>>0]|0)+-65|0)>>>0>57){e=-1;break n}if(h=c,c=c+1|0,r[O>>2]=c,h=l[(l[h>>0]|0)+-65+(176+(W*58|0))>>0]|0,p=h&255,(p+-1|0)>>>0>=8)break;W=p}if(!(h<<24>>24)){e=-1;break}V=(w|0)>-1;do if(h<<24>>24==19)if(V){e=-1;break n}else N=54;else{if(V){r[A+(w<<2)>>2]=p,V=i+(w<<3)|0,w=r[V+4>>2]|0,N=h0,r[N>>2]=r[V>>2],r[N+4>>2]=w,N=54;break}if(!j){e=0;break n}mA(h0,p,t,u),c=r[O>>2]|0,N=55}while(0);(N|0)==54&&(N=0,j?N=55:o=0);r:do if((N|0)==55){N=0,c=l[c+-1>>0]|0,c=(W|0)!=0&(c&15|0)==3?c&-33:c,h=Z&-65537,w=Z&8192|0?h:Z;e:do switch(c|0){case 110:switch((W&255)<<24>>24){case 0:{r[r[h0>>2]>>2]=e,o=0;break r}case 1:{r[r[h0>>2]>>2]=e,o=0;break r}case 2:{o=r[h0>>2]|0,r[o>>2]=e,r[o+4>>2]=((e|0)<0)<<31>>31,o=0;break r}case 3:{g[r[h0>>2]>>1]=e,o=0;break r}case 4:{l[r[h0>>2]>>0]=e,o=0;break r}case 6:{r[r[h0>>2]>>2]=e,o=0;break r}case 7:{o=r[h0>>2]|0,r[o>>2]=e,r[o+4>>2]=((e|0)<0)<<31>>31,o=0;break r}default:{o=0;break r}}case 112:{c=120,o=o>>>0>8?o:8,h=w|8,N=67;break}case 88:case 120:{h=w,N=67;break}case 111:{V=h0,V=O6(r[V>>2]|0,r[V+4>>2]|0,U)|0,h=b-V|0,Z=0,p=20230,o=(w&8|0)==0|(o|0)>(h|0)?o:h+1|0,h=w,N=73;break}case 105:case 100:if(h=h0,c=r[h>>2]|0,h=r[h+4>>2]|0,(h|0)<0){c=sn(0,0,c|0,h|0)|0,h=a()|0,Z=h0,r[Z>>2]=c,r[Z+4>>2]=h,Z=1,p=20230,N=72;break e}else{Z=(w&2049|0)!=0&1,p=w&2048|0?20231:w&1|0?20232:20230,N=72;break e}case 117:{h=h0,Z=0,p=20230,c=r[h>>2]|0,h=r[h+4>>2]|0,N=72;break}case 99:{l[c0>>0]=r[h0>>2],k=c0,Z=0,p=20230,V=1,c=h,o=b;break}case 115:{W=r[h0>>2]|0,W=W|0?W:20240,w=_6(W,0,o)|0,H0=(w|0)==0,k=W,Z=0,p=20230,V=H0?o:w-W|0,c=h,o=H0?W+o|0:w;break}case 67:{r[I>>2]=r[h0>>2],r[n0>>2]=0,r[h0>>2]=I,p=-1,N=79;break}case 83:{o?(p=o,N=79):(k0(n,32,S,0,w),o=0,N=89);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{o=OA[f&1](n,+M[h0>>3],S,o,w,c)|0;break r}default:Z=0,p=20230,V=o,c=w,o=b}while(0);e:do if((N|0)==67)V=h0,V=C6(r[V>>2]|0,r[V+4>>2]|0,U,c&32)|0,p=h0,p=(h&8|0)==0|(r[p>>2]|0)==0&(r[p+4>>2]|0)==0,Z=p?0:2,p=p?20230:20230+(c>>>4)|0,N=73;else if((N|0)==72)V=ln(c,h,U)|0,h=w,N=73;else if((N|0)==79){for(N=0,Z=r[h0>>2]|0,o=0;c=r[Z>>2]|0,!!c;){if(c=vA(l0,c)|0,h=(c|0)<0,h|c>>>0>(p-o|0)>>>0){N=83;break}if(o=c+o|0,p>>>0>o>>>0)Z=Z+4|0;else break}if((N|0)==83&&(N=0,h)){e=-1;break n}if(k0(n,32,S,o,w),!o)o=0,N=89;else for(h=r[h0>>2]|0,Z=0;;){if(c=r[h>>2]|0,!c){N=89;break e}if(c=vA(l0,c)|0,Z=c+Z|0,(Z|0)>(o|0)){N=89;break e}if(V0(n,l0,c),Z>>>0>=o>>>0){N=89;break}else h=h+4|0}}while(0);if((N|0)==73)N=0,c=h0,c=(r[c>>2]|0)!=0|(r[c+4>>2]|0)!=0,H0=(o|0)!=0|c,c=b-V+((c^1)&1)|0,k=H0?V:U,V=H0?(o|0)>(c|0)?o:c:0,c=(o|0)>-1?h&-65537:h,o=b;else if((N|0)==89){N=0,k0(n,32,S,o,w^8192),o=(S|0)>(o|0)?S:o;break}w=o-k|0,W=(V|0)<(w|0)?w:V,H0=W+Z|0,o=(S|0)<(H0|0)?H0:S,k0(n,32,o,H0,c),V0(n,p,Z),k0(n,48,o,H0,c^65536),k0(n,48,W,w,0),V0(n,k,w),k0(n,32,o,H0,c^8192)}while(0);h=z}n:do if((N|0)==92&&!n)if(!h)e=0;else{for(e=1;o=r[A+(e<<2)>>2]|0,!!o;)if(mA(i+(e<<3)|0,o,t,u),e=e+1|0,e>>>0>=10){e=1;break n}for(;;){if(r[A+(e<<2)>>2]|0){e=-1;break n}if(e=e+1|0,e>>>0>=10){e=1;break}}}while(0);return s=H2,e|0}function V0(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]&32||B6(e,t,n)|0}function hA(n){n=n|0;var e=0,t=0;if(!(Yn(l[r[n>>2]>>0]|0)|0))e=0;else{e=0;do t=r[n>>2]|0,e=(e*10|0)+-48+(l[t>>0]|0)|0,t=t+1|0,r[n>>2]=t;while(Yn(l[t>>0]|0)|0)}return e|0}function mA(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;n:do if(e>>>0<=20)do switch(e|0){case 9:{e=(r[t>>2]|0)+(4-1)&~(4-1),i=r[e>>2]|0,r[t>>2]=e+4,r[n>>2]=i;break n}case 10:{i=(r[t>>2]|0)+(4-1)&~(4-1),e=r[i>>2]|0,r[t>>2]=i+4,i=n,r[i>>2]=e,r[i+4>>2]=((e|0)<0)<<31>>31;break n}case 11:{i=(r[t>>2]|0)+(4-1)&~(4-1),e=r[i>>2]|0,r[t>>2]=i+4,i=n,r[i>>2]=e,r[i+4>>2]=0;break n}case 12:{i=(r[t>>2]|0)+(8-1)&~(8-1),e=i,A=r[e>>2]|0,e=r[e+4>>2]|0,r[t>>2]=i+8,i=n,r[i>>2]=A,r[i+4>>2]=e;break n}case 13:{A=(r[t>>2]|0)+(4-1)&~(4-1),i=r[A>>2]|0,r[t>>2]=A+4,i=(i&65535)<<16>>16,A=n,r[A>>2]=i,r[A+4>>2]=((i|0)<0)<<31>>31;break n}case 14:{A=(r[t>>2]|0)+(4-1)&~(4-1),i=r[A>>2]|0,r[t>>2]=A+4,A=n,r[A>>2]=i&65535,r[A+4>>2]=0;break n}case 15:{A=(r[t>>2]|0)+(4-1)&~(4-1),i=r[A>>2]|0,r[t>>2]=A+4,i=(i&255)<<24>>24,A=n,r[A>>2]=i,r[A+4>>2]=((i|0)<0)<<31>>31;break n}case 16:{A=(r[t>>2]|0)+(4-1)&~(4-1),i=r[A>>2]|0,r[t>>2]=A+4,A=n,r[A>>2]=i&255,r[A+4>>2]=0;break n}case 17:{A=(r[t>>2]|0)+(8-1)&~(8-1),f=+M[A>>3],r[t>>2]=A+8,M[n>>3]=f;break n}case 18:{k2[i&15](n,t);break n}default:break n}while(0);while(0)}function C6(n,e,t,i){if(n=n|0,e=e|0,t=t|0,i=i|0,!((n|0)==0&(e|0)==0))do t=t+-1|0,l[t>>0]=y[640+(n&15)>>0]|0|i,n=kr(n|0,e|0,4)|0,e=a()|0;while(!((n|0)==0&(e|0)==0));return t|0}function O6(n,e,t){if(n=n|0,e=e|0,t=t|0,!((n|0)==0&(e|0)==0))do t=t+-1|0,l[t>>0]=n&7|48,n=kr(n|0,e|0,3)|0,e=a()|0;while(!((n|0)==0&(e|0)==0));return t|0}function ln(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;if(e>>>0>0|(e|0)==0&n>>>0>4294967295){do i=n,n=Me(n|0,e|0,10,0)|0,A=e,e=a()|0,f=ze(n|0,e|0,10,0)|0,f=sn(i|0,A|0,f|0,a()|0)|0,a()|0,t=t+-1|0,l[t>>0]=f&255|48;while(A>>>0>9|(A|0)==9&i>>>0>4294967295);e=n}else e=n;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(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,u=0;if(u=s,s=s+256|0,f=u,(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(n,f,256),A=A+-256|0;while(A>>>0>255);A=e&255}V0(n,f,A)}s=u}function vA(n,e){return n=n|0,e=e|0,n?n=I6(n,e,0)|0:n=0,n|0}function I6(n,e,t){n=n|0,e=e|0,t=t|0;do if(n){if(e>>>0<128){l[n>>0]=e,n=1;break}if(!(r[r[(H6()|0)+176>>2]>>2]|0))if((e&-128|0)==57216){l[n>>0]=e,n=1;break}else{r[(i2()|0)>>2]=25,n=-1;break}if(e>>>0<2048){l[n>>0]=e>>>6|192,l[n+1>>0]=e&63|128,n=2;break}if(e>>>0<55296|(e&-8192|0)==57344){l[n>>0]=e>>>12|224,l[n+1>>0]=e>>>6&63|128,l[n+2>>0]=e&63|128,n=3;break}if((e+-65536|0)>>>0<1048576){l[n>>0]=e>>>18|240,l[n+1>>0]=e>>>12&63|128,l[n+2>>0]=e>>>6&63|128,l[n+3>>0]=e&63|128,n=4;break}else{r[(i2()|0)>>2]=25,n=-1;break}}else n=1;while(0);return n|0}function H6(){return cA()|0}function ZA(n){n=+n;var e=0;return M[X>>3]=n,e=r[X>>2]|0,f0(r[X+4>>2]|0),e|0}function pA(n,e){n=+n,e=e|0;var t=0,i=0,A=0;switch(M[X>>3]=n,t=r[X>>2]|0,i=r[X+4>>2]|0,A=kr(t|0,i|0,52)|0,a()|0,A&2047){case 0:{n!=0?(n=+pA(n*18446744073709552e3,e),t=(r[e>>2]|0)+-64|0):t=0,r[e>>2]=t;break}case 2047:break;default:r[e>>2]=(A&2047)+-1022,r[X>>2]=t,r[X+4>>2]=i&-2146435073|1071644672,n=+M[X>>3]}return+n}function Q6(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;n:do if(!t)n=0;else{for(;i=l[n>>0]|0,A=l[e>>0]|0,i<<24>>24==A<<24>>24;)if(t=t+-1|0,t)n=n+1|0,e=e+1|0;else{n=0;break n}n=(i&255)-(A&255)|0}while(0);return n|0}function D6(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;return A=s,s=s+16|0,f=A,r[f>>2]=i,i=P6(n,e,t,f)|0,s=A,i|0}function P6(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,u=0,o=0;return o=s,s=s+160|0,A=o+144|0,u=o,_0(u|0,3672,144)|0,(e+-1|0)>>>0>2147483646?e?(r[(i2()|0)>>2]=61,e=-1):(n=A,e=1,f=4):f=4,(f|0)==4&&(f=-2-n|0,f=e>>>0>f>>>0?f:e,r[u+48>>2]=f,A=u+20|0,r[A>>2]=n,r[u+44>>2]=n,e=n+f|0,n=u+16|0,r[n>>2]=e,r[u+28>>2]=e,e=E6(u,t,i)|0,f&&(u=r[A>>2]|0,l[u+(((u|0)==(r[n>>2]|0))<<31>>31)>>0]=0)),s=o,e|0}function $6(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;return i=n+20|0,A=r[i>>2]|0,n=(r[n+16>>2]|0)-A|0,n=n>>>0>t>>>0?t:n,_0(A|0,e|0,n|0)|0,r[i>>2]=(r[i>>2]|0)+n,t|0}function L6(n){n=n|0;var e=0,t=0;return e=(yr(n)|0)+1|0,t=wr(e)|0,t?n=_0(t|0,n|0,e|0)|0:n=0,n|0}function q6(n,e){n=n|0,e=e|0;var t=0,i=0;for(t=0;;){if((y[656+t>>0]|0)==(n|0)){i=4;break}if(t=t+1|0,(t|0)==87){n=87,i=5;break}}if((i|0)==4&&(t?(n=t,i=5):t=752),(i|0)==5){t=752;do{do i=t,t=t+1|0;while(l[i>>0]|0);n=n+-1|0}while(n|0)}return K6(t,r[e+20>>2]|0)|0}function K6(n,e){return n=n|0,e=e|0,J6(n,e)|0}function a6(n){return n=n|0,q6(n,r[(b6()|0)+176>>2]|0)|0}function b6(){return cA()|0}function nm(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;return i=a6(n)|0,n=yr(i)|0,n>>>0>=t>>>0?(n=t+-1|0,t&&(_0(e|0,i|0,n|0)|0,l[e+n>>0]=0),n=68):(_0(e|0,i|0,n+1|0)|0,n=0),n|0}function rm(){var n=0,e=0,t=0,i=0,A=0,f=0,u=0;i=s,s=s+48|0,f=i+32|0,e=i+24|0,u=i+16|0,A=i,i=i+36|0,n=yA()|0,n|0&&(t=r[n>>2]|0,t|0)&&(n=t+48|0,RA(n)|0||(r[e>>2]=20420,j2(20370,e)),e=VA(n)|0,(e|0)==1126902529&(a()|0)==1129074247?n=r[t+44>>2]|0:n=t+80|0,r[i>>2]=n,t=r[t>>2]|0,n=r[t+4>>2]|0,hn[r[(r[954]|0)+16>>2]&7](3816,t,i)|0?(u=r[i>>2]|0,u=Wr[r[(r[u>>2]|0)+8>>2]&15](u)|0,r[A>>2]=20420,r[A+4>>2]=n,r[A+8>>2]=u,j2(20284,A)):(r[u>>2]=20420,r[u+4>>2]=n,j2(20329,u))),j2(20408,f)}function yA(){return 21640}function RA(n){return n=n|0,n=VA(n)|0,(n&-256|0)==1126902528&(a()|0)==1129074247|0}function VA(n){n=n|0;var e=0;return e=n,n=r[e>>2]|0,f0(r[e+4>>2]|0),n|0}function j2(n,e){n=n|0,e=e|0,Nt()}function cn(n){n=n|0}function em(n){n=n|0,cn(n),Y(n)}function tm(n){n=n|0}function im(n){n=n|0}function Am(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0;if(c=s,s=s+64|0,u=c,p0(n,e,0)|0)n=1;else if(e|0&&(o=J0(e,3840,3824,0)|0,(o|0)!=0)){r[u>>2]=o,r[u+4>>2]=0,r[u+8>>2]=n,r[u+12>>2]=-1,n=u+16|0,e=u+24|0,i=u+48|0,A=n,f=A+36|0;do r[A>>2]=0,A=A+4|0;while((A|0)<(f|0));g[n+36>>1]=0,l[n+38>>0]=0,r[i>>2]=1,Sn[r[(r[o>>2]|0)+28>>2]&7](o,u,r[t>>2]|0,1),(r[e>>2]|0)==1?(r[t>>2]=r[n>>2],n=1):n=0}else n=0;return s=c,n|0}function fm(n,e,t,i,A,f){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,p0(n,r[e+8>>2]|0,f)|0&&Ue(0,e,t,i,A)}function um(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0;do if(p0(n,r[e+8>>2]|0,A)|0)ge(0,e,t,i);else if(p0(n,r[e>>2]|0,A)|0){if((r[e+16>>2]|0)!=(t|0)&&(f=e+20|0,(r[f>>2]|0)!=(t|0))){r[e+32>>2]=i,r[f>>2]=t,A=e+40|0,r[A>>2]=(r[A>>2]|0)+1,(r[e+36>>2]|0)==1&&(r[e+24>>2]|0)==2&&(l[e+54>>0]=1),r[e+44>>2]=4;break}(i|0)==1&&(r[e+32>>2]=1)}while(0)}function om(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0,p0(n,r[e+8>>2]|0,0)|0&&Xe(0,e,t,i)}function p0(n,e,t){return n=n|0,e=e|0,t=t|0,t?(n|0)==(e|0)?n=1:n=(sA(r[n+4>>2]|0,r[e+4>>2]|0)|0)==0:n=(r[n+4>>2]|0)==(r[e+4>>2]|0),n|0}function Xe(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;n=e+16|0,A=r[n>>2]|0;do if(A){if((A|0)!=(t|0)){i=e+36|0,r[i>>2]=(r[i>>2]|0)+1,r[e+24>>2]=2,l[e+54>>0]=1;break}n=e+24|0,(r[n>>2]|0)==2&&(r[n>>2]=i)}else r[n>>2]=t,r[e+24>>2]=i,r[e+36>>2]=1;while(0)}function ge(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0;(r[e+4>>2]|0)==(t|0)&&(A=e+28|0,(r[A>>2]|0)!=1)&&(r[A>>2]=i)}function Ue(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,l[e+53>>0]=1;do if((r[e+4>>2]|0)==(i|0)){if(l[e+52>>0]=1,n=e+16|0,i=r[n>>2]|0,!i){if(r[n>>2]=t,r[e+24>>2]=A,r[e+36>>2]=1,!((A|0)==1&&(r[e+48>>2]|0)==1))break;l[e+54>>0]=1;break}if((i|0)!=(t|0)){A=e+36|0,r[A>>2]=(r[A>>2]|0)+1,l[e+54>>0]=1;break}i=e+24|0,n=r[i>>2]|0,(n|0)==2&&(r[i>>2]=A,n=A),(n|0)==1&&(r[e+48>>2]|0)==1&&(l[e+54>>0]=1)}while(0)}function J0(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0;V=s,s=s+64|0,Z=V,h=r[n>>2]|0,p=n+(r[h+-8>>2]|0)|0,h=r[h+-4>>2]|0,r[Z>>2]=t,r[Z+4>>2]=n,r[Z+8>>2]=e,r[Z+12>>2]=i,n=Z+16|0,e=Z+20|0,i=Z+24|0,A=Z+28|0,f=Z+32|0,u=Z+40|0,o=n,c=o+36|0;do r[o>>2]=0,o=o+4|0;while((o|0)<(c|0));g[n+36>>1]=0,l[n+38>>0]=0;n:do if(p0(h,t,0)|0)r[Z+48>>2]=1,Cn[r[(r[h>>2]|0)+20>>2]&3](h,Z,p,p,1,0),n=(r[i>>2]|0)==1?p:0;else{switch(Xr[r[(r[h>>2]|0)+24>>2]&3](h,Z,p,1,0),r[Z+36>>2]|0){case 0:{n=(r[u>>2]|0)==1&(r[A>>2]|0)==1&(r[f>>2]|0)==1?r[e>>2]|0:0;break n}case 1:break;default:{n=0;break n}}if((r[i>>2]|0)!=1&&!((r[u>>2]|0)==0&(r[A>>2]|0)==1&(r[f>>2]|0)==1)){n=0;break}n=r[n>>2]|0}while(0);return s=V,n|0}function lm(n){n=n|0,cn(n),Y(n)}function cm(n,e,t,i,A,f){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,p0(n,r[e+8>>2]|0,f)|0?Ue(0,e,t,i,A):(n=r[n+8>>2]|0,Cn[r[(r[n>>2]|0)+20>>2]&3](n,e,t,i,A,f))}function sm(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,u=0,o=0;n:do if(p0(n,r[e+8>>2]|0,A)|0)ge(0,e,t,i);else{if(!(p0(n,r[e>>2]|0,A)|0)){u=r[n+8>>2]|0,Xr[r[(r[u>>2]|0)+24>>2]&3](u,e,t,i,A);break}if((r[e+16>>2]|0)!=(t|0)&&(u=e+20|0,(r[u>>2]|0)!=(t|0))){r[e+32>>2]=i,i=e+44|0;do if((r[i>>2]|0)!=4)if(f=e+52|0,l[f>>0]=0,o=e+53|0,l[o>>0]=0,n=r[n+8>>2]|0,Cn[r[(r[n>>2]|0)+20>>2]&3](n,e,t,t,1,A),l[o>>0]|0){if(o=(l[f>>0]|0)==0,r[i>>2]=3,o)break;break n}else{r[i>>2]=4;break}while(0);if(r[u>>2]=t,o=e+40|0,r[o>>2]=(r[o>>2]|0)+1,(r[e+36>>2]|0)!=1||(r[e+24>>2]|0)!=2)break;l[e+54>>0]=1;break}(i|0)==1&&(r[e+32>>2]=1)}while(0)}function hm(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0,p0(n,r[e+8>>2]|0,0)|0?Xe(0,e,t,i):(n=r[n+8>>2]|0,Sn[r[(r[n>>2]|0)+28>>2]&7](n,e,t,i))}function Y(n){n=n|0,Ne(n)}function Ap(n){n=n|0}function mm(){var n=0,e=0;n=yA()|0,n|0&&(e=r[n>>2]|0,e|0)&&RA(e+48|0)|0&&FA(r[e+12>>2]|0),FA(vm()|0)}function FA(n){n=n|0;var e=0;e=s,s=s+16|0,_e[n&3](),j2(20559,e)}function vm(){return 2}function Zm(n){n=n|0}function pm(n){n=n|0,Y(n)}function ym(n){return n=n|0,20599}function Rr(n){n=n|0,r[n>>2]=5916,kA(n+4|0)}function Rm(n){n=n|0,Rr(n),Y(n)}function Vm(n){return n=n|0,wA(n+4|0)|0}function wA(n){return n=n|0,r[n>>2]|0}function kA(n){n=n|0;var e=0,t=0;Fm(n)|0&&(e=wm(r[n>>2]|0)|0,t=e+8|0,n=r[t>>2]|0,r[t>>2]=n+-1,(n|0)<1)&&Y(e)}function Fm(n){return n=n|0,1}function wm(n){return n=n|0,n+-12|0}function Y0(n){n=n|0,r[n>>2]=5936,kA(n+4|0)}function km(n){n=n|0,Y0(n),Y(n)}function Wm(n){return n=n|0,wA(n+4|0)|0}function Xm(n){n=n|0,Rr(n),Y(n)}function gm(n){n=n|0,Rr(n),Y(n)}function Um(){var n=0;n=s,s=s+16|0,j2(20848,n)}function dm(n){n=n|0,cn(n),Y(n)}function Gm(n,e,t){return n=n|0,e=e|0,t=t|0,p0(n,e,0)|0}function Tm(n){n=n|0,cn(n),Y(n)}function Nm(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0;Z=s,s=s+64|0,c=Z;do if(p0(e,4048,0)|0)r[t>>2]=0,e=1;else{if(zm(n,e,0)|0){if(e=r[t>>2]|0,!e){e=1;break}r[t>>2]=r[e>>2],e=1;break}if(e|0&&(i=J0(e,3840,3976,0)|0,(i|0)!=0))if(e=r[t>>2]|0,e|0&&(r[t>>2]=r[e>>2]),e=r[i+8>>2]|0,f=n+8|0,A=r[f>>2]|0,!(e&7&(A^7)|0)&&!((e&96^96)&A|0))if(A=n+12|0,n=r[A>>2]|0,i=i+12|0,e=r[i>>2]|0,p0(n,e,0)|0)e=1;else{if(p0(n,4040,0)|0){if(!e){e=1;break}e=(J0(e,3840,3992,0)|0)==0;break}if(n){if(e=J0(n,3840,3976,0)|0,e|0){if(!(r[f>>2]&1)){e=0;break}e=Mm(e,r[i>>2]|0)|0;break}if(e=r[A>>2]|0,e){if(e=J0(e,3840,4008,0)|0,e|0){if(!(r[f>>2]&1)){e=0;break}e=WA(e,r[i>>2]|0)|0;break}if(e=r[A>>2]|0,e|0&&(u=J0(e,3840,3824,0)|0,(u|0)!=0)&&(o=r[i>>2]|0,(o|0)!=0)&&(h=J0(o,3840,3824,0)|0,(h|0)!=0)){r[c>>2]=h,r[c+4>>2]=0,r[c+8>>2]=u,r[c+12>>2]=-1,e=c+16|0,n=c+24|0,i=c+48|0,A=e,f=A+36|0;do r[A>>2]=0,A=A+4|0;while((A|0)<(f|0));g[e+36>>1]=0,l[e+38>>0]=0,r[i>>2]=1,Sn[r[(r[h>>2]|0)+28>>2]&7](h,c,r[t>>2]|0,1);do if((r[n>>2]|0)==1){if(!(r[t>>2]|0)){e=1;break}r[t>>2]=r[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=Z,e|0}function zm(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;return r[n+8>>2]&24?(t=1,A=5):e|0&&(i=J0(e,3840,3960,0)|0,(i|0)!=0)?(t=(r[i+8>>2]&24|0)!=0,A=5):t=0,(A|0)==5&&(t=p0(n,e,t)|0),t|0}function Mm(n,e){n=n|0,e=e|0;for(var t=0,i=0,A=0,f=0,u=0;;){if(!e){e=0;break}if(t=J0(e,3840,3976,0)|0,!t){e=0;break}if(A=r[n+8>>2]|0,r[t+8>>2]&~A|0){e=0;break}if(i=n+12|0,e=r[i>>2]|0,t=t+12|0,p0(e,r[t>>2]|0,0)|0){e=1;break}if((A&1|0)==0|(e|0)==0){e=0;break}if(n=J0(e,3840,3976,0)|0,!n){u=9;break}e=r[t>>2]|0}return(u|0)==9&&(e=r[i>>2]|0,e|0&&(f=J0(e,3840,4008,0)|0,(f|0)!=0)?e=WA(f,r[t>>2]|0)|0:e=0),e|0}function WA(n,e){n=n|0,e=e|0;var t=0;return e|0&&(t=J0(e,3840,4008,0)|0,(t|0)!=0)&&!(r[t+8>>2]&~r[n+8>>2]|0)&&p0(r[n+12>>2]|0,r[t+12>>2]|0,0)|0?n=p0(r[n+16>>2]|0,r[t+16>>2]|0,0)|0:n=0,n|0}function Bm(n){n=n|0,cn(n),Y(n)}function Jm(n,e,t,i,A,f){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0;var u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0;if(p0(n,r[e+8>>2]|0,f)|0)Ue(0,e,t,i,A);else{w=e+52|0,o=l[w>>0]|0,W=e+53|0,u=l[W>>0]|0,k=r[n+12>>2]|0,Z=n+16+(k<<3)|0,l[w>>0]=0,l[W>>0]=0,de(n+16|0,e,t,i,A,f),c=l[w>>0]|0,o=c|o,h=l[W>>0]|0,u=h|u;n:do if((k|0)>1){p=e+24|0,V=n+8|0,k=e+54|0,n=n+24|0;do{if(u=u&1,o=o&1,l[k>>0]|0)break n;if(c<<24>>24){if((r[p>>2]|0)==1||!(r[V>>2]&2))break n}else if(h<<24>>24&&!(r[V>>2]&1|0))break n;l[w>>0]=0,l[W>>0]=0,de(n,e,t,i,A,f),c=l[w>>0]|0,o=c|o,h=l[W>>0]|0,u=h|u,n=n+8|0}while(n>>>0<Z>>>0)}while(0);l[w>>0]=o<<24>>24!=0&1,l[W>>0]=u<<24>>24!=0&1}}function Ym(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0;n:do if(p0(n,r[e+8>>2]|0,A)|0)ge(0,e,t,i);else{if(!(p0(n,r[e>>2]|0,A)|0)){if(k=r[n+12>>2]|0,c=n+16+(k<<3)|0,Vr(n+16|0,e,t,i,A),f=n+24|0,(k|0)<=1)break;if(n=r[n+8>>2]|0,!(n&2|0)&&(o=e+36|0,(r[o>>2]|0)!=1)){if(!(n&1)){for(n=e+54|0;;)if(l[n>>0]|0||(r[o>>2]|0)==1||(Vr(f,e,t,i,A),f=f+8|0,f>>>0>=c>>>0))break n}for(n=e+24|0,u=e+54|0;;)if(l[u>>0]|0||(r[o>>2]|0)==1&&(r[n>>2]|0)==1||(Vr(f,e,t,i,A),f=f+8|0,f>>>0>=c>>>0))break n}for(n=e+54|0;;)if(l[n>>0]|0||(Vr(f,e,t,i,A),f=f+8|0,f>>>0>=c>>>0))break n}if((r[e+16>>2]|0)!=(t|0)&&(k=e+20|0,(r[k>>2]|0)!=(t|0))){if(r[e+32>>2]=i,V=e+44|0,(r[V>>2]|0)!=4){o=n+16+(r[n+12>>2]<<3)|0,c=e+52|0,i=e+53|0,h=e+54|0,Z=n+8|0,p=e+24|0,f=0,u=n+16|0,n=0;r:for(;;){if(u>>>0>=o>>>0){u=18;break}if(l[c>>0]=0,l[i>>0]=0,de(u,e,t,t,1,A),l[h>>0]|0){u=18;break}do if(l[i>>0]|0){if(!(l[c>>0]|0))if(r[Z>>2]&1){n=1;break}else{u=19;break r}if((r[p>>2]|0)==1){f=1,u=19;break r}if(r[Z>>2]&2)f=1,n=1;else{f=1,u=19;break r}}while(0);u=u+8|0}if((u|0)==18&&(n?u=19:n=4),(u|0)==19&&(n=3),r[V>>2]=n,f&1)break}if(r[k>>2]=t,t=e+40|0,r[t>>2]=(r[t>>2]|0)+1,(r[e+36>>2]|0)!=1||(r[e+24>>2]|0)!=2)break;l[e+54>>0]=1;break}(i|0)==1&&(r[e+32>>2]=1)}while(0)}function _m(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;n:do if(p0(n,r[e+8>>2]|0,0)|0)Xe(0,e,t,i);else if(f=r[n+12>>2]|0,A=n+16+(f<<3)|0,XA(n+16|0,e,t,i),(f|0)>1){f=e+54|0,n=n+24|0;do{if(XA(n,e,t,i),l[f>>0]|0)break n;n=n+8|0}while(n>>>0<A>>>0)}while(0)}function XA(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;f=r[n+4>>2]|0,t?(A=f>>8,f&1&&(A=r[(r[t>>2]|0)+A>>2]|0)):A=0,n=r[n>>2]|0,Sn[r[(r[n>>2]|0)+28>>2]&7](n,e,t+A|0,f&2|0?i:2)}function de(n,e,t,i,A,f){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0;var u=0,o=0;o=r[n+4>>2]|0,u=o>>8,o&1&&(u=r[(r[i>>2]|0)+u>>2]|0),n=r[n>>2]|0,Cn[r[(r[n>>2]|0)+20>>2]&3](n,e,t,i+u|0,o&2|0?A:2,f)}function Vr(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,u=0;u=r[n+4>>2]|0,f=u>>8,u&1&&(f=r[(r[t>>2]|0)+f>>2]|0),n=r[n>>2]|0,Xr[r[(r[n>>2]|0)+24>>2]&3](n,e,t+f|0,u&2|0?i:2,A)}function Em(n){n=n|0,r[n>>2]=5896}function x2(n){n=n|0;var e=0,t=0;return e=s,s=s+16|0,t=e,gA(t,n),n=jm(t)|0,s=e,n|0}function gA(n,e){n=n|0,e=e|0,Cm(n,e)}function jm(n){n=n|0;var e=0,t=0;return e=s,s=s+16|0,t=e,UA(t,r[n+4>>2]|0),(xm(t)|0)<<24>>24?n=0:n=Sm(dA(n)|0)|0,s=e,n|0}function UA(n,e){n=n|0,e=e|0,r[n>>2]=e}function xm(n){return n=n|0,l[r[n>>2]>>0]|0}function dA(n){return n=n|0,n|0}function Sm(n){n=n|0;var e=0,t=0,i=0,A=0;A=s,s=s+16|0,i=A,n=r[n+8>>2]|0,e=l[n>>0]|0;do if(e<<24>>24!=1)if(e&2)j2(20985,i);else{l[n>>0]=2,t=1;break}else t=0;while(0);return s=A,t|0}function Cm(n,e){n=n|0,e=e|0,r[n>>2]=e,r[n+4>>2]=e,r[n+8>>2]=e+1,r[n+12>>2]=0}function S2(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,gA(t,n),Om(t),s=e}function Om(n){n=n|0;var e=0,t=0;e=s,s=s+16|0,t=e,UA(t,r[n+4>>2]|0),Im(t),Hm(dA(n)|0),s=e}function Im(n){n=n|0,l[r[n>>2]>>0]=1}function Hm(n){n=n|0,l[r[n+8>>2]>>0]=1}function Qm(){return 0}function E(n){n=n|0;var e=0,t=0;for(t=n|0?n:1;;){if(e=wr(t)|0,e|0){n=6;break}if(n=Qm()|0,!n){n=5;break}_e[n&3]()}if((n|0)==5)t=u0(4)|0,Em(t),o0(t|0,3880,121);else if((n|0)==6)return e|0;return 0}function GA(n){return n=n|0,E(n)|0}function TA(n){n=n|0,Y(n)}function Dm(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;return A=s,s=s+16|0,i=A,r[i>>2]=r[t>>2],n=hn[r[(r[n>>2]|0)+16>>2]&7](n,e,i)|0,n&&(r[t>>2]=r[i>>2]),s=A,n&1|0}function Pm(n){return n=n|0,n?n=(J0(n,3840,3976,0)|0)!=0&1:n=0,n|0}function $m(n){return n=n|0,0}function Lm(){return(qm()|0)>0|0}function qm(){return Kf()|0}function NA(n){n=n|0}function Km(n){n=n|0,NA(n),Y(n)}function am(n){return n=n|0,21039}function y0(n){n=n|0}function s2(n){n=n|0;var e=0,t=0;e=n+8|0,r[e>>2]|0&&(t=r[e>>2]|0,r[e>>2]=t+-1,(t|0)!=0)||A0[r[(r[n>>2]|0)+16>>2]&255](n)}function bm(n){if(n=n|0,n=$m(n)|0,n)Uv(n,21145);else return}function nv(n){n=n|0}function Ge(n,e){n=n|0,e=e|0;var t=0,i=0;i=yr(e)|0,t=E(i+13|0)|0,r[t>>2]=i,r[t+4>>2]=i,r[t+8>>2]=0,t=rv(t)|0,_0(t|0,e|0,i+1|0)|0,r[n>>2]=t}function rv(n){return n=n|0,n+12|0}function h2(n,e){n=n|0,e=e|0,r[n>>2]=5916,Ge(n+4|0,e)}function ev(n,e){n=n|0,e=e|0,r[n>>2]=5936,Ge(n+4|0,(l[e+11>>0]|0)<0?r[e>>2]|0:e)}function D0(n,e){n=n|0,e=e|0,r[n>>2]=5936,Ge(n+4|0,e)}function Te(n){n=n|0,n=u0(8)|0,h2(n,21163),r[n>>2]=5956,o0(n|0,3928,123)}function tv(n){n=n|0,n=u0(8)|0,h2(n,21163),r[n>>2]=5976,o0(n|0,3944,123)}function Fr(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;A=s,s=s+16|0,i=A,t>>>0>4294967279&&Te(n),t>>>0<11?l[n+11>>0]=t:(u=t+16&-16,f=E(u)|0,r[n>>2]=f,r[n+8>>2]=u|-2147483648,r[n+4>>2]=t,n=f),_n(n,e,t)|0,l[i>>0]=0,Wn(n+t|0,i),s=A}function _n(n,e,t){return n=n|0,e=e|0,t=t|0,t|0&&_0(n|0,e|0,t|0)|0,n|0}function En(n){n=n|0,(l[n+11>>0]|0)<0&&H(r[n>>2]|0,r[n+8>>2]&2147483647)}function iv(n,e,t,i,A,f,u,o){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,u=u|0,o=o|0;var c=0,h=0,Z=0,p=0,V=0;V=s,s=s+16|0,p=V,(-18-e|0)>>>0<t>>>0&&Te(n),(l[n+11>>0]|0)<0?Z=r[n>>2]|0:Z=n,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=E(c)|0,A|0&&_n(h,Z,A)|0,u|0&&_n(h+A|0,o,u)|0,i=i-f|0,t=i-A|0,t|0&&_n(h+A+u|0,Z+A+f|0,t)|0,t=e+1|0,(t|0)!=11&&H(Z,t),r[n>>2]=h,r[n+8>>2]=c|-2147483648,u=i+u|0,r[n+4>>2]=u,l[p>>0]=0,Wn(h+u|0,p),s=V}function zA(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0,o=0,c=0;return c=s,s=s+16|0,u=c,o=n+11|0,i=l[o>>0]|0,f=i<<24>>24<0,f?(A=(r[n+8>>2]&2147483647)+-1|0,i=r[n+4>>2]|0):(A=10,i=i&255),(A-i|0)>>>0>=t>>>0?t|0&&(f?A=r[n>>2]|0:A=n,_n(A+i|0,e,t)|0,i=i+t|0,(l[o>>0]|0)<0?r[n+4>>2]=i:l[o>>0]=i,l[u>>0]=0,Wn(A+i|0,u)):iv(n,A,i+t-A|0,i,i,0,t,e),s=c,n|0}function Av(n,e){return n=n|0,e=e|0,zA(n,e,en(e)|0)|0}function fv(n,e,t){return n=n|0,e=e|0,t=t|0,t?n=Q6(n,e,t)|0:n=0,n|0}function uv(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,u=0;return f=l[n+11>>0]|0,u=f<<24>>24<0,u?f=r[n+4>>2]|0:f=f&255,(A|0)==-1|f>>>0<e>>>0&&tv(n),f=f-e|0,t=f>>>0<t>>>0?f:t,u&&(n=r[n>>2]|0),f=t>>>0>A>>>0,n=fv(n+e|0,i,f?A:t)|0,n?n|0:(t>>>0<A>>>0?-1:f&1)|0}function ov(n){n=n|0}function lv(n){n=n|0,Y(n)}function cv(n){return n=n|0,21228}function sv(n,e,t){n=n|0,e=e|0,t=t|0,r[n>>2]=t,r[n+4>>2]=e}function hv(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0;return A=s,s=s+16|0,i=A,xn[r[(r[n>>2]|0)+12>>2]&15](i,n,e),(r[i+4>>2]|0)==(r[t+4>>2]|0)?n=(r[i>>2]|0)==(r[t>>2]|0):n=0,s=A,n|0}function mv(n,e,t){return n=n|0,e=e|0,t=t|0,((r[e>>2]|0)==(t|0)?(r[e+4>>2]|0)==(n|0):0)|0}function vv(n,e,t){n=n|0,e=e|0,t=t|0,(t|0)>256?Fr(n,21176,en(21176)|0):MA(n,0,t)}function MA(n,e,t){n=n|0,e=e|0,t=t|0,Zv(n,t)}function Zv(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0,u=0;u=s,s=s+1040|0,A=u+1024|0,t=u,f=r[(i2()|0)>>2]|0,i=pv(nm(e,t,1024)|0,t)|0,l[i>>0]|0?t=i:(r[A>>2]=e,D6(t,1024,21211,A)|0),r[(i2()|0)>>2]=f,Fr(n,t,en(t)|0),s=u}function pv(n,e){n=n|0,e=e|0;var t=0,i=0;switch(n|0){case 0:{t=e;break}case-1:{n=r[(i2()|0)>>2]|0,i=3;break}default:i=3}return(i|0)==3&&((n|0)==28?t=22145:ru()),t|0}function yv(n){n=n|0,Y(n)}function Rv(n){return n=n|0,21353}function Vv(n,e,t){n=n|0,e=e|0,t=t|0,(t|0)>256?(BA()|0,e=6180):(wv()|0,e=6176),r[n>>2]=t,r[n+4>>2]=e}function Fv(n,e,t){n=n|0,e=e|0,t=t|0,(t|0)>256?Fr(n,21319,en(21319)|0):MA(n,0,t)}function BA(){return!(l[21488]|0)&&x2(21488)|0&&S2(21488),6180}function wv(){return!(l[21480]|0)&&x2(21480)|0&&S2(21480),6176}function JA(n){n=n|0,Y0(n)}function kv(n){n=n|0,JA(n),Y(n)}function Wv(n,e){n=n|0,e=e|0;var t=0;t=r[e+4>>2]|0,xn[r[(r[t>>2]|0)+24>>2]&15](n,t,r[e>>2]|0)}function Xv(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;for(f=s,s=s+16|0,A=f,r[e>>2]|0&&(i=l[t+11>>0]|0,i<<24>>24<0?i=r[t+4>>2]|0:i=i&255,i|0&&Av(t,21417)|0,Wv(A,e),e=l[A+11>>0]|0,i=e<<24>>24<0,zA(t,i?r[A>>2]|0:A,i?r[A+4>>2]|0:e&255)|0,En(A)),r[n>>2]=r[t>>2],r[n+4>>2]=r[t+4>>2],r[n+8>>2]=r[t+8>>2],i=0;(i|0)!=3;)r[t+(i<<2)>>2]=0,i=i+1|0;s=f}function gv(n,e,t){n=n|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,Fr(A,t,en(t)|0),Xv(f,e,A),ev(n,f),En(f),En(A),r[n>>2]=6192,A=e,e=r[A+4>>2]|0,t=n+8|0,r[t>>2]=r[A>>2],r[t+4>>2]=e,s=i}function Uv(n,e){n=n|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,BA()|0,r[A>>2]=n,r[A+4>>2]=6180,r[i>>2]=r[A>>2],r[i+4>>2]=r[A+4>>2],gv(t,i,e),o0(t|0,4272,136)}function g0(n){n=n|0,n=u0(8)|0,h2(n,21420),r[n>>2]=5956,o0(n|0,3928,123)}function wr(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0,w=0,S=0,z=0,N=0,j=0,U=0,b=0;b=s,s=s+16|0,V=b;do if(n>>>0<245){if(h=n>>>0<11?16:n+11&-8,n=h>>>3,p=r[5412]|0,t=p>>>n,t&3|0)return e=(t&1^1)+n|0,n=21688+(e<<1<<2)|0,t=n+8|0,i=r[t>>2]|0,A=i+8|0,f=r[A>>2]|0,(f|0)==(n|0)?r[5412]=p&~(1<<e):(r[f+12>>2]=n,r[t>>2]=f),U=e<<3,r[i+4>>2]=U|3,U=i+U+4|0,r[U>>2]=r[U>>2]|1,U=A,s=b,U|0;if(Z=r[5414]|0,h>>>0>Z>>>0){if(t|0)return e=2<<n,e=t<<n&(e|0-e),e=(e&0-e)+-1|0,o=e>>>12&16,e=e>>>o,t=e>>>5&8,e=e>>>t,f=e>>>2&4,e=e>>>f,n=e>>>1&2,e=e>>>n,i=e>>>1&1,i=(t|o|f|n|i)+(e>>>i)|0,e=21688+(i<<1<<2)|0,n=e+8|0,f=r[n>>2]|0,o=f+8|0,t=r[o>>2]|0,(t|0)==(e|0)?(n=p&~(1<<i),r[5412]=n):(r[t+12>>2]=e,r[n>>2]=t,n=p),U=i<<3,u=U-h|0,r[f+4>>2]=h|3,A=f+h|0,r[A+4>>2]=u|1,r[f+U>>2]=u,Z|0&&(i=r[5417]|0,e=Z>>>3,t=21688+(e<<1<<2)|0,e=1<<e,n&e?(n=t+8|0,e=r[n>>2]|0):(r[5412]=n|e,e=t,n=t+8|0),r[n>>2]=i,r[e+12>>2]=i,r[i+8>>2]=e,r[i+12>>2]=t),r[5414]=u,r[5417]=A,U=o,s=b,U|0;if(f=r[5413]|0,f){for(t=(f&0-f)+-1|0,A=t>>>12&16,t=t>>>A,i=t>>>5&8,t=t>>>i,u=t>>>2&4,t=t>>>u,o=t>>>1&2,t=t>>>o,c=t>>>1&1,c=r[21952+((i|A|u|o|c)+(t>>>c)<<2)>>2]|0,t=c,o=c,c=(r[c+4>>2]&-8)-h|0;n=r[t+16>>2]|0,!(!n&&(n=r[t+20>>2]|0,!n));)u=(r[n+4>>2]&-8)-h|0,A=u>>>0<c>>>0,t=n,o=A?n:o,c=A?u:c;if(u=o+h|0,u>>>0>o>>>0){A=r[o+24>>2]|0,e=r[o+12>>2]|0;do if((e|0)==(o|0)){if(n=o+20|0,e=r[n>>2]|0,!e&&(n=o+16|0,e=r[n>>2]|0,!e)){t=0;break}for(;;)if(i=e+20|0,t=r[i>>2]|0,t)e=t,n=i;else if(i=e+16|0,t=r[i>>2]|0,t)e=t,n=i;else break;r[n>>2]=0,t=e}else t=r[o+8>>2]|0,r[t+12>>2]=e,r[e+8>>2]=t,t=e;while(0);do if(A|0){if(e=r[o+28>>2]|0,n=21952+(e<<2)|0,(o|0)==(r[n>>2]|0)){if(r[n>>2]=t,!t){r[5413]=f&~(1<<e);break}}else if(U=A+16|0,r[((r[U>>2]|0)==(o|0)?U:A+20|0)>>2]=t,!t)break;r[t+24>>2]=A,e=r[o+16>>2]|0,e|0&&(r[t+16>>2]=e,r[e+24>>2]=t),e=r[o+20>>2]|0,e|0&&(r[t+20>>2]=e,r[e+24>>2]=t)}while(0);return c>>>0<16?(U=c+h|0,r[o+4>>2]=U|3,U=o+U+4|0,r[U>>2]=r[U>>2]|1):(r[o+4>>2]=h|3,r[u+4>>2]=c|1,r[u+c>>2]=c,Z|0&&(i=r[5417]|0,e=Z>>>3,t=21688+(e<<1<<2)|0,e=1<<e,e&p?(n=t+8|0,e=r[n>>2]|0):(r[5412]=e|p,e=t,n=t+8|0),r[n>>2]=i,r[e+12>>2]=i,r[i+8>>2]=e,r[i+12>>2]=t),r[5414]=c,r[5417]=u),U=o+8|0,s=b,U|0}else p=h}else p=h}else p=h}else if(n>>>0<=4294967231)if(n=n+11|0,h=n&-8,i=r[5413]|0,i){A=0-h|0,n=n>>>8,n?h>>>0>16777215?c=31:(p=(n+1048320|0)>>>16&8,w=n<<p,o=(w+520192|0)>>>16&4,w=w<<o,c=(w+245760|0)>>>16&2,c=14-(o|p|c)+(w<<c>>>15)|0,c=h>>>(c+7|0)&1|c<<1):c=0,t=r[21952+(c<<2)>>2]|0;n:do if(!t)t=0,n=0,w=61;else for(n=0,o=h<<((c|0)==31?0:25-(c>>>1)|0),f=0;;){if(u=(r[t+4>>2]&-8)-h|0,u>>>0<A>>>0)if(u)n=t,A=u;else{n=t,A=0,w=65;break n}if(w=r[t+20>>2]|0,t=r[t+16+(o>>>31<<2)>>2]|0,f=(w|0)==0|(w|0)==(t|0)?f:w,t)o=o<<1;else{t=f,w=61;break}}while(0);if((w|0)==61){if((t|0)==0&(n|0)==0){if(n=2<<c,n=(n|0-n)&i,!n){p=h;break}p=(n&0-n)+-1|0,u=p>>>12&16,p=p>>>u,f=p>>>5&8,p=p>>>f,o=p>>>2&4,p=p>>>o,c=p>>>1&2,p=p>>>c,t=p>>>1&1,n=0,t=r[21952+((f|u|o|c|t)+(p>>>t)<<2)>>2]|0}t?w=65:(o=n,u=A)}if((w|0)==65)for(f=t;;)if(p=(r[f+4>>2]&-8)-h|0,t=p>>>0<A>>>0,A=t?p:A,n=t?f:n,t=r[f+16>>2]|0,t||(t=r[f+20>>2]|0),t)f=t;else{o=n,u=A;break}if(o|0&&u>>>0<((r[5414]|0)-h|0)>>>0&&(Z=o+h|0,Z>>>0>o>>>0)){f=r[o+24>>2]|0,e=r[o+12>>2]|0;do if((e|0)==(o|0)){if(n=o+20|0,e=r[n>>2]|0,!e&&(n=o+16|0,e=r[n>>2]|0,!e)){e=0;break}for(;;)if(A=e+20|0,t=r[A>>2]|0,t)e=t,n=A;else if(A=e+16|0,t=r[A>>2]|0,t)e=t,n=A;else break;r[n>>2]=0}else U=r[o+8>>2]|0,r[U+12>>2]=e,r[e+8>>2]=U;while(0);do if(f){if(n=r[o+28>>2]|0,t=21952+(n<<2)|0,(o|0)==(r[t>>2]|0)){if(r[t>>2]=e,!e){i=i&~(1<<n),r[5413]=i;break}}else if(U=f+16|0,r[((r[U>>2]|0)==(o|0)?U:f+20|0)>>2]=e,!e)break;r[e+24>>2]=f,n=r[o+16>>2]|0,n|0&&(r[e+16>>2]=n,r[n+24>>2]=e),n=r[o+20>>2]|0,n&&(r[e+20>>2]=n,r[n+24>>2]=e)}while(0);n:do if(u>>>0<16)U=u+h|0,r[o+4>>2]=U|3,U=o+U+4|0,r[U>>2]=r[U>>2]|1;else{if(r[o+4>>2]=h|3,r[Z+4>>2]=u|1,r[Z+u>>2]=u,e=u>>>3,u>>>0<256){t=21688+(e<<1<<2)|0,n=r[5412]|0,e=1<<e,n&e?(n=t+8|0,e=r[n>>2]|0):(r[5412]=n|e,e=t,n=t+8|0),r[n>>2]=Z,r[e+12>>2]=Z,r[Z+8>>2]=e,r[Z+12>>2]=t;break}if(e=u>>>8,e?u>>>0>16777215?t=31:(j=(e+1048320|0)>>>16&8,U=e<<j,N=(U+520192|0)>>>16&4,U=U<<N,t=(U+245760|0)>>>16&2,t=14-(N|j|t)+(U<<t>>>15)|0,t=u>>>(t+7|0)&1|t<<1):t=0,e=21952+(t<<2)|0,r[Z+28>>2]=t,n=Z+16|0,r[n+4>>2]=0,r[n>>2]=0,n=1<<t,!(i&n)){r[5413]=i|n,r[e>>2]=Z,r[Z+24>>2]=e,r[Z+12>>2]=Z,r[Z+8>>2]=Z;break}e=r[e>>2]|0;r:do if((r[e+4>>2]&-8|0)!=(u|0)){for(i=u<<((t|0)==31?0:25-(t>>>1)|0);t=e+16+(i>>>31<<2)|0,n=r[t>>2]|0,!!n;)if((r[n+4>>2]&-8|0)==(u|0)){e=n;break r}else i=i<<1,e=n;r[t>>2]=Z,r[Z+24>>2]=e,r[Z+12>>2]=Z,r[Z+8>>2]=Z;break n}while(0);j=e+8|0,U=r[j>>2]|0,r[U+12>>2]=Z,r[j>>2]=Z,r[Z+8>>2]=U,r[Z+12>>2]=e,r[Z+24>>2]=0}while(0);return U=o+8|0,s=b,U|0}else p=h}else p=h;else p=-1;while(0);if(t=r[5414]|0,t>>>0>=p>>>0)return e=t-p|0,n=r[5417]|0,e>>>0>15?(U=n+p|0,r[5417]=U,r[5414]=e,r[U+4>>2]=e|1,r[n+t>>2]=e,r[n+4>>2]=p|3):(r[5414]=0,r[5417]=0,r[n+4>>2]=t|3,U=n+t+4|0,r[U>>2]=r[U>>2]|1),U=n+8|0,s=b,U|0;if(u=r[5415]|0,u>>>0>p>>>0)return N=u-p|0,r[5415]=N,U=r[5418]|0,j=U+p|0,r[5418]=j,r[j+4>>2]=N|1,r[U+4>>2]=p|3,U=U+8|0,s=b,U|0;if(r[5530]|0?n=r[5532]|0:(r[5532]=4096,r[5531]=4096,r[5533]=-1,r[5534]=-1,r[5535]=0,r[5523]=0,r[5530]=V&-16^1431655768,n=4096),o=p+48|0,c=p+47|0,f=n+c|0,A=0-n|0,h=f&A,h>>>0<=p>>>0||(n=r[5522]|0,n|0&&(Z=r[5520]|0,V=Z+h|0,V>>>0<=Z>>>0|V>>>0>n>>>0)))return U=0,s=b,U|0;n:do if(r[5523]&4)e=0,w=143;else{t=r[5418]|0;r:do if(t){for(i=22096;V=r[i>>2]|0,!(V>>>0<=t>>>0&&(V+(r[i+4>>2]|0)|0)>>>0>t>>>0);)if(n=r[i+8>>2]|0,n)i=n;else{w=128;break r}if(e=f-u&A,e>>>0<2147483647)if(n=C2(e)|0,(n|0)==((r[i>>2]|0)+(r[i+4>>2]|0)|0)){if((n|0)!=-1){u=e,f=n,w=145;break n}}else i=n,w=136;else e=0}else w=128;while(0);do if((w|0)==128)if(t=C2(0)|0,(t|0)!=-1&&(e=t,k=r[5531]|0,W=k+-1|0,e=(W&e|0?(W+e&0-k)-e|0:0)+h|0,k=r[5520]|0,W=e+k|0,e>>>0>p>>>0&e>>>0<2147483647)){if(V=r[5522]|0,V|0&&W>>>0<=k>>>0|W>>>0>V>>>0){e=0;break}if(n=C2(e)|0,(n|0)==(t|0)){u=e,f=t,w=145;break n}else i=n,w=136}else e=0;while(0);do if((w|0)==136){if(t=0-e|0,!(o>>>0>e>>>0&(e>>>0<2147483647&(i|0)!=-1)))if((i|0)==-1){e=0;break}else{u=e,f=i,w=145;break n}if(n=r[5532]|0,n=c-e+n&0-n,n>>>0>=2147483647){u=e,f=i,w=145;break n}if((C2(n)|0)==-1){C2(t)|0,e=0;break}else{u=n+e|0,f=i,w=145;break n}}while(0);r[5523]=r[5523]|4,w=143}while(0);if((w|0)==143&&h>>>0<2147483647&&(N=C2(h)|0,W=C2(0)|0,S=W-N|0,z=S>>>0>(p+40|0)>>>0,!((N|0)==-1|z^1|N>>>0<W>>>0&((N|0)!=-1&(W|0)!=-1)^1))&&(u=z?S:e,f=N,w=145),(w|0)==145){e=(r[5520]|0)+u|0,r[5520]=e,e>>>0>(r[5521]|0)>>>0&&(r[5521]=e),c=r[5418]|0;n:do if(c){for(e=22096;;){if(n=r[e>>2]|0,t=r[e+4>>2]|0,(f|0)==(n+t|0)){w=154;break}if(i=r[e+8>>2]|0,i)e=i;else break}if((w|0)==154&&(j=e+4|0,(r[e+12>>2]&8|0)==0)&&f>>>0>c>>>0&n>>>0<=c>>>0){r[j>>2]=t+u,U=(r[5415]|0)+u|0,N=c+8|0,N=N&7|0?0-N&7:0,j=c+N|0,N=U-N|0,r[5418]=j,r[5415]=N,r[j+4>>2]=N|1,r[c+U+4>>2]=40,r[5419]=r[5534];break}for(f>>>0<(r[5416]|0)>>>0&&(r[5416]=f),t=f+u|0,e=22096;;){if((r[e>>2]|0)==(t|0)){w=162;break}if(n=r[e+8>>2]|0,n)e=n;else break}if((w|0)==162&&!(r[e+12>>2]&8|0)){r[e>>2]=f,Z=e+4|0,r[Z>>2]=(r[Z>>2]|0)+u,Z=f+8|0,Z=f+(Z&7|0?0-Z&7:0)|0,e=t+8|0,e=t+(e&7|0?0-e&7:0)|0,h=Z+p|0,o=e-Z-p|0,r[Z+4>>2]=p|3;r:do if((c|0)==(e|0))U=(r[5415]|0)+o|0,r[5415]=U,r[5418]=h,r[h+4>>2]=U|1;else{if((r[5417]|0)==(e|0)){U=(r[5414]|0)+o|0,r[5414]=U,r[5417]=h,r[h+4>>2]=U|1,r[h+U>>2]=U;break}if(n=r[e+4>>2]|0,(n&3|0)==1){u=n&-8,i=n>>>3;e:do if(n>>>0<256)if(n=r[e+8>>2]|0,t=r[e+12>>2]|0,(t|0)==(n|0)){r[5412]=r[5412]&~(1<<i);break}else{r[n+12>>2]=t,r[t+8>>2]=n;break}else{f=r[e+24>>2]|0,n=r[e+12>>2]|0;do if((n|0)==(e|0)){if(t=e+16|0,i=t+4|0,n=r[i>>2]|0,n)t=i;else if(n=r[t>>2]|0,!n){n=0;break}for(;;)if(A=n+20|0,i=r[A>>2]|0,i)n=i,t=A;else if(A=n+16|0,i=r[A>>2]|0,i)n=i,t=A;else break;r[t>>2]=0}else U=r[e+8>>2]|0,r[U+12>>2]=n,r[n+8>>2]=U;while(0);if(!f)break;t=r[e+28>>2]|0,i=21952+(t<<2)|0;do if((r[i>>2]|0)!=(e|0)){if(U=f+16|0,r[((r[U>>2]|0)==(e|0)?U:f+20|0)>>2]=n,!n)break e}else{if(r[i>>2]=n,n|0)break;r[5413]=r[5413]&~(1<<t);break e}while(0);if(r[n+24>>2]=f,t=e+16|0,i=r[t>>2]|0,i|0&&(r[n+16>>2]=i,r[i+24>>2]=n),t=r[t+4>>2]|0,!t)break;r[n+20>>2]=t,r[t+24>>2]=n}while(0);e=e+u|0,A=u+o|0}else A=o;if(e=e+4|0,r[e>>2]=r[e>>2]&-2,r[h+4>>2]=A|1,r[h+A>>2]=A,e=A>>>3,A>>>0<256){t=21688+(e<<1<<2)|0,n=r[5412]|0,e=1<<e,n&e?(n=t+8|0,e=r[n>>2]|0):(r[5412]=n|e,e=t,n=t+8|0),r[n>>2]=h,r[e+12>>2]=h,r[h+8>>2]=e,r[h+12>>2]=t;break}e=A>>>8;do if(!e)i=0;else{if(A>>>0>16777215){i=31;break}j=(e+1048320|0)>>>16&8,U=e<<j,N=(U+520192|0)>>>16&4,U=U<<N,i=(U+245760|0)>>>16&2,i=14-(N|j|i)+(U<<i>>>15)|0,i=A>>>(i+7|0)&1|i<<1}while(0);if(e=21952+(i<<2)|0,r[h+28>>2]=i,n=h+16|0,r[n+4>>2]=0,r[n>>2]=0,n=r[5413]|0,t=1<<i,!(n&t)){r[5413]=n|t,r[e>>2]=h,r[h+24>>2]=e,r[h+12>>2]=h,r[h+8>>2]=h;break}e=r[e>>2]|0;e:do if((r[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,n=r[t>>2]|0,!!n;)if((r[n+4>>2]&-8|0)==(A|0)){e=n;break e}else i=i<<1,e=n;r[t>>2]=h,r[h+24>>2]=e,r[h+12>>2]=h,r[h+8>>2]=h;break r}while(0);j=e+8|0,U=r[j>>2]|0,r[U+12>>2]=h,r[j>>2]=h,r[h+8>>2]=U,r[h+12>>2]=e,r[h+24>>2]=0}while(0);return U=Z+8|0,s=b,U|0}for(e=22096;n=r[e>>2]|0,!(n>>>0<=c>>>0&&(U=n+(r[e+4>>2]|0)|0,U>>>0>c>>>0));)e=r[e+8>>2]|0;A=U+-47|0,n=A+8|0,n=A+(n&7|0?0-n&7:0)|0,A=c+16|0,n=n>>>0<A>>>0?c:n,e=n+8|0,t=u+-40|0,N=f+8|0,N=N&7|0?0-N&7:0,j=f+N|0,N=t-N|0,r[5418]=j,r[5415]=N,r[j+4>>2]=N|1,r[f+t+4>>2]=40,r[5419]=r[5534],t=n+4|0,r[t>>2]=27,r[e>>2]=r[5524],r[e+4>>2]=r[5525],r[e+8>>2]=r[5526],r[e+12>>2]=r[5527],r[5524]=f,r[5525]=u,r[5527]=0,r[5526]=e,e=n+24|0;do j=e,e=e+4|0,r[e>>2]=7;while((j+8|0)>>>0<U>>>0);if((n|0)!=(c|0)){if(f=n-c|0,r[t>>2]=r[t>>2]&-2,r[c+4>>2]=f|1,r[n>>2]=f,e=f>>>3,f>>>0<256){t=21688+(e<<1<<2)|0,n=r[5412]|0,e=1<<e,n&e?(n=t+8|0,e=r[n>>2]|0):(r[5412]=n|e,e=t,n=t+8|0),r[n>>2]=c,r[e+12>>2]=c,r[c+8>>2]=e,r[c+12>>2]=t;break}if(e=f>>>8,e?f>>>0>16777215?i=31:(j=(e+1048320|0)>>>16&8,U=e<<j,N=(U+520192|0)>>>16&4,U=U<<N,i=(U+245760|0)>>>16&2,i=14-(N|j|i)+(U<<i>>>15)|0,i=f>>>(i+7|0)&1|i<<1):i=0,t=21952+(i<<2)|0,r[c+28>>2]=i,r[c+20>>2]=0,r[A>>2]=0,e=r[5413]|0,n=1<<i,!(e&n)){r[5413]=e|n,r[t>>2]=c,r[c+24>>2]=t,r[c+12>>2]=c,r[c+8>>2]=c;break}e=r[t>>2]|0;r:do if((r[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,n=r[t>>2]|0,!!n;)if((r[n+4>>2]&-8|0)==(f|0)){e=n;break r}else i=i<<1,e=n;r[t>>2]=c,r[c+24>>2]=e,r[c+12>>2]=c,r[c+8>>2]=c;break n}while(0);j=e+8|0,U=r[j>>2]|0,r[U+12>>2]=c,r[j>>2]=c,r[c+8>>2]=U,r[c+12>>2]=e,r[c+24>>2]=0}}else U=r[5416]|0,(U|0)==0|f>>>0<U>>>0&&(r[5416]=f),r[5524]=f,r[5525]=u,r[5527]=0,r[5421]=r[5530],r[5420]=-1,r[5425]=21688,r[5424]=21688,r[5427]=21696,r[5426]=21696,r[5429]=21704,r[5428]=21704,r[5431]=21712,r[5430]=21712,r[5433]=21720,r[5432]=21720,r[5435]=21728,r[5434]=21728,r[5437]=21736,r[5436]=21736,r[5439]=21744,r[5438]=21744,r[5441]=21752,r[5440]=21752,r[5443]=21760,r[5442]=21760,r[5445]=21768,r[5444]=21768,r[5447]=21776,r[5446]=21776,r[5449]=21784,r[5448]=21784,r[5451]=21792,r[5450]=21792,r[5453]=21800,r[5452]=21800,r[5455]=21808,r[5454]=21808,r[5457]=21816,r[5456]=21816,r[5459]=21824,r[5458]=21824,r[5461]=21832,r[5460]=21832,r[5463]=21840,r[5462]=21840,r[5465]=21848,r[5464]=21848,r[5467]=21856,r[5466]=21856,r[5469]=21864,r[5468]=21864,r[5471]=21872,r[5470]=21872,r[5473]=21880,r[5472]=21880,r[5475]=21888,r[5474]=21888,r[5477]=21896,r[5476]=21896,r[5479]=21904,r[5478]=21904,r[5481]=21912,r[5480]=21912,r[5483]=21920,r[5482]=21920,r[5485]=21928,r[5484]=21928,r[5487]=21936,r[5486]=21936,U=u+-40|0,N=f+8|0,N=N&7|0?0-N&7:0,j=f+N|0,N=U-N|0,r[5418]=j,r[5415]=N,r[j+4>>2]=N|1,r[f+U+4>>2]=40,r[5419]=r[5534];while(0);if(e=r[5415]|0,e>>>0>p>>>0)return N=e-p|0,r[5415]=N,U=r[5418]|0,j=U+p|0,r[5418]=j,r[j+4>>2]=N|1,r[U+4>>2]=p|3,U=U+8|0,s=b,U|0}return r[(i2()|0)>>2]=48,U=0,s=b,U|0}function Ne(n){n=n|0;var e=0,t=0,i=0,A=0,f=0,u=0,o=0,c=0;if(!n)return;t=n+-8|0,A=r[5416]|0,n=r[n+-4>>2]|0,e=n&-8,c=t+e|0;do if(n&1)o=t,u=t;else{if(i=r[t>>2]|0,!(n&3)||(u=t+(0-i)|0,f=i+e|0,u>>>0<A>>>0))return;if((r[5417]|0)==(u|0)){if(n=c+4|0,e=r[n>>2]|0,(e&3|0)!=3){o=u,e=f;break}r[5414]=f,r[n>>2]=e&-2,r[u+4>>2]=f|1,r[u+f>>2]=f;return}if(t=i>>>3,i>>>0<256)if(n=r[u+8>>2]|0,e=r[u+12>>2]|0,(e|0)==(n|0)){r[5412]=r[5412]&~(1<<t),o=u,e=f;break}else{r[n+12>>2]=e,r[e+8>>2]=n,o=u,e=f;break}A=r[u+24>>2]|0,n=r[u+12>>2]|0;do if((n|0)==(u|0)){if(e=u+16|0,t=e+4|0,n=r[t>>2]|0,n)e=t;else if(n=r[e>>2]|0,!n){n=0;break}for(;;)if(i=n+20|0,t=r[i>>2]|0,t)n=t,e=i;else if(i=n+16|0,t=r[i>>2]|0,t)n=t,e=i;else break;r[e>>2]=0}else o=r[u+8>>2]|0,r[o+12>>2]=n,r[n+8>>2]=o;while(0);if(A){if(e=r[u+28>>2]|0,t=21952+(e<<2)|0,(r[t>>2]|0)==(u|0)){if(r[t>>2]=n,!n){r[5413]=r[5413]&~(1<<e),o=u,e=f;break}}else if(o=A+16|0,r[((r[o>>2]|0)==(u|0)?o:A+20|0)>>2]=n,!n){o=u,e=f;break}r[n+24>>2]=A,e=u+16|0,t=r[e>>2]|0,t|0&&(r[n+16>>2]=t,r[t+24>>2]=n),e=r[e+4>>2]|0,e?(r[n+20>>2]=e,r[e+24>>2]=n,o=u,e=f):(o=u,e=f)}else o=u,e=f}while(0);if(u>>>0>=c>>>0||(n=c+4|0,i=r[n>>2]|0,!(i&1)))return;if(i&2)r[n>>2]=i&-2,r[o+4>>2]=e|1,r[u+e>>2]=e,A=e;else{if((r[5418]|0)==(c|0)){if(c=(r[5415]|0)+e|0,r[5415]=c,r[5418]=o,r[o+4>>2]=c|1,(o|0)!=(r[5417]|0))return;r[5417]=0,r[5414]=0;return}if((r[5417]|0)==(c|0)){c=(r[5414]|0)+e|0,r[5414]=c,r[5417]=u,r[o+4>>2]=c|1,r[u+c>>2]=c;return}A=(i&-8)+e|0,t=i>>>3;do if(i>>>0<256)if(e=r[c+8>>2]|0,n=r[c+12>>2]|0,(n|0)==(e|0)){r[5412]=r[5412]&~(1<<t);break}else{r[e+12>>2]=n,r[n+8>>2]=e;break}else{f=r[c+24>>2]|0,n=r[c+12>>2]|0;do if((n|0)==(c|0)){if(e=c+16|0,t=e+4|0,n=r[t>>2]|0,n)e=t;else if(n=r[e>>2]|0,!n){t=0;break}for(;;)if(i=n+20|0,t=r[i>>2]|0,t)n=t,e=i;else if(i=n+16|0,t=r[i>>2]|0,t)n=t,e=i;else break;r[e>>2]=0,t=n}else t=r[c+8>>2]|0,r[t+12>>2]=n,r[n+8>>2]=t,t=n;while(0);if(f|0){if(n=r[c+28>>2]|0,e=21952+(n<<2)|0,(r[e>>2]|0)==(c|0)){if(r[e>>2]=t,!t){r[5413]=r[5413]&~(1<<n);break}}else if(i=f+16|0,r[((r[i>>2]|0)==(c|0)?i:f+20|0)>>2]=t,!t)break;r[t+24>>2]=f,n=c+16|0,e=r[n>>2]|0,e|0&&(r[t+16>>2]=e,r[e+24>>2]=t),n=r[n+4>>2]|0,n|0&&(r[t+20>>2]=n,r[n+24>>2]=t)}}while(0);if(r[o+4>>2]=A|1,r[u+A>>2]=A,(o|0)==(r[5417]|0)){r[5414]=A;return}}if(n=A>>>3,A>>>0<256){t=21688+(n<<1<<2)|0,e=r[5412]|0,n=1<<n,e&n?(e=t+8|0,n=r[e>>2]|0):(r[5412]=e|n,n=t,e=t+8|0),r[e>>2]=o,r[n+12>>2]=o,r[o+8>>2]=n,r[o+12>>2]=t;return}n=A>>>8,n?A>>>0>16777215?i=31:(u=(n+1048320|0)>>>16&8,c=n<<u,f=(c+520192|0)>>>16&4,c=c<<f,i=(c+245760|0)>>>16&2,i=14-(f|u|i)+(c<<i>>>15)|0,i=A>>>(i+7|0)&1|i<<1):i=0,n=21952+(i<<2)|0,r[o+28>>2]=i,r[o+20>>2]=0,r[o+16>>2]=0,e=r[5413]|0,t=1<<i;n:do if(!(e&t))r[5413]=e|t,r[n>>2]=o,r[o+24>>2]=n,r[o+12>>2]=o,r[o+8>>2]=o;else{n=r[n>>2]|0;r:do if((r[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,e=r[t>>2]|0,!!e;)if((r[e+4>>2]&-8|0)==(A|0)){n=e;break r}else i=i<<1,n=e;r[t>>2]=o,r[o+24>>2]=n,r[o+12>>2]=o,r[o+8>>2]=o;break n}while(0);u=n+8|0,c=r[u>>2]|0,r[c+12>>2]=o,r[u>>2]=o,r[o+8>>2]=c,r[o+12>>2]=n,r[o+24>>2]=0}while(0);if(c=(r[5420]|0)+-1|0,r[5420]=c,!(c|0)){for(n=22104;n=r[n>>2]|0,n;)n=n+8|0;r[5420]=-1}}function C2(n){n=n|0;var e=0,t=0,i=0;i=n+3&-4,n=EA()|0,e=r[n>>2]|0,t=e+i|0;do if((i|0)<1|t>>>0>e>>>0){if(t>>>0>(eu()|0)>>>0&&!(iu(t|0)|0))break;return r[n>>2]=t,i=e,i|0}while(0);return r[(i2()|0)>>2]=48,i=-1,i|0}function dv(n){n=n|0;var e=0;return e=s,s=s+n|0,s=s+15&-16,e|0}function Gv(n){n=n|0,s=n}function Tv(){return s|0}function Nv(n,e){n=n|0,e=e|0;var t=0,i=0,A=0,f=0;return f=n&65535,A=e&65535,t=D(A,f)|0,i=n>>>16,n=(t>>>16)+(D(A,i)|0)|0,A=e>>>16,e=D(A,f)|0,f0((n>>>16)+(D(A,i)|0)+(((n&65535)+e|0)>>>16)|0),n+e<<16|t&65535|0|0}function ze(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0;var A=0,f=0;return A=n,f=t,t=Nv(A,f)|0,n=a()|0,f0((D(e,f)|0)+(D(i,A)|0)+n|n&0|0),t|0|0|0}function O0(n,e,t,i){return n=n|0,e=e|0,t=t|0,i=i|0,t=n+t>>>0,f0(e+i+(t>>>0<n>>>0|0)>>>0|0),t|0|0}function sn(n,e,t,i){return n=n|0,e=e|0,t=t|0,i=i|0,i=e-i-(t>>>0>n>>>0|0)>>>0,f0(i|0),n-t>>>0|0|0}function YA(n){return n=n|0,(n?31-(l2(n^n-1)|0)|0:32)|0}function zv(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0;var f=0,u=0,o=0,c=0,h=0,Z=0,p=0,V=0,k=0,W=0;if(Z=n,c=e,h=c,u=t,V=i,o=V,!h)return f=(A|0)!=0,o?f?(r[A>>2]=n|0,r[A+4>>2]=e&0,V=0,A=0,f0(V|0),A|0):(V=0,A=0,f0(V|0),A|0):(f&&(r[A>>2]=(Z>>>0)%(u>>>0),r[A+4>>2]=0),V=0,A=(Z>>>0)/(u>>>0)>>>0,f0(V|0),A|0);f=(o|0)==0;do if(u){if(!f){if(f=(l2(o|0)|0)-(l2(h|0)|0)|0,f>>>0<=31){p=f+1|0,o=31-f|0,e=f-31>>31,u=p,n=Z>>>(p>>>0)&e|h<<o,e=h>>>(p>>>0)&e,f=0,o=Z<<o;break}return A?(r[A>>2]=n|0,r[A+4>>2]=c|e&0,V=0,A=0,f0(V|0),A|0):(V=0,A=0,f0(V|0),A|0)}if(f=u-1|0,f&u|0){o=(l2(u|0)|0)+33-(l2(h|0)|0)|0,W=64-o|0,p=32-o|0,c=p>>31,k=o-32|0,e=k>>31,u=o,n=p-1>>31&h>>>(k>>>0)|(h<<p|Z>>>(o>>>0))&e,e=e&h>>>(o>>>0),f=Z<<W&c,o=(h<<W|Z>>>(k>>>0))&c|Z<<p&o-33>>31;break}return A|0&&(r[A>>2]=f&Z,r[A+4>>2]=0),(u|0)==1?(k=c|e&0,W=n|0|0,f0(k|0),W|0):(W=YA(u|0)|0,k=h>>>(W>>>0)|0,W=h<<32-W|Z>>>(W>>>0)|0,f0(k|0),W|0)}else{if(f)return A|0&&(r[A>>2]=(h>>>0)%(u>>>0),r[A+4>>2]=0),k=0,W=(h>>>0)/(u>>>0)>>>0,f0(k|0),W|0;if(!Z)return A|0&&(r[A>>2]=0,r[A+4>>2]=(h>>>0)%(o>>>0)),k=0,W=(h>>>0)/(o>>>0)>>>0,f0(k|0),W|0;if(f=o-1|0,!(f&o))return A|0&&(r[A>>2]=n|0,r[A+4>>2]=f&h|e&0),k=0,W=h>>>((YA(o|0)|0)>>>0),f0(k|0),W|0;if(f=(l2(o|0)|0)-(l2(h|0)|0)|0,f>>>0<=30){e=f+1|0,o=31-f|0,u=e,n=h<<o|Z>>>(e>>>0),e=h>>>(e>>>0),f=0,o=Z<<o;break}return A?(r[A>>2]=n|0,r[A+4>>2]=c|e&0,k=0,W=0,f0(k|0),W|0):(k=0,W=0,f0(k|0),W|0)}while(0);if(!u)h=o,c=0,o=0;else{p=t|0|0,Z=V|i&0,h=O0(p|0,Z|0,-1,-1)|0,t=a()|0,c=o,o=0;do i=c,c=f>>>31|c<<1,f=o|f<<1,i=n<<1|i>>>31|0,V=n>>>31|e<<1|0,sn(h|0,t|0,i|0,V|0)|0,W=a()|0,k=W>>31|((W|0)<0?-1:0)<<1,o=k&1,n=sn(i|0,V|0,k&p|0,(((W|0)<0?-1:0)>>31|((W|0)<0?-1:0)<<1)&Z|0)|0,e=a()|0,u=u-1|0;while(u|0);h=c,c=0}return u=0,A|0&&(r[A>>2]=n,r[A+4>>2]=e),k=(f|0)>>>31|(h|u)<<1|(u<<1|f>>>31)&0|c,W=(f<<1|0>>>31)&-2|o,f0(k|0),W|0}function Me(n,e,t,i){return n=n|0,e=e|0,t=t|0,i=i|0,zv(n,e,t,i,0)|0}function kr(n,e,t){return n=n|0,e=e|0,t=t|0,(t|0)<32?(f0(e>>>t|0),n>>>t|(e&(1<<t)-1)<<32-t):(f0(0),e>>>t-32|0)}function _A(n,e,t){return n=n|0,e=e|0,t=t|0,(t|0)<32?(f0(e<<t|(n&(1<<t)-1<<32-t)>>>32-t|0),n<<t):(f0(n<<t-32|0),0)}function EA(){return 22176}function jA(n){return n=n|0,(n&255)<<24|(n>>8&255)<<16|(n>>16&255)<<8|n>>>24|0}function _0(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0;if((t|0)>=512)return tu(n|0,e|0,t|0)|0,n|0;if(f=n|0,A=n+t|0,(n&3)==(e&3)){for(;n&3;){if(!t)return f|0;l[n>>0]=l[e>>0]|0,n=n+1|0,e=e+1|0,t=t-1|0}for(t=A&-4|0,i=t-64|0;(n|0)<=(i|0);)r[n>>2]=r[e>>2],r[n+4>>2]=r[e+4>>2],r[n+8>>2]=r[e+8>>2],r[n+12>>2]=r[e+12>>2],r[n+16>>2]=r[e+16>>2],r[n+20>>2]=r[e+20>>2],r[n+24>>2]=r[e+24>>2],r[n+28>>2]=r[e+28>>2],r[n+32>>2]=r[e+32>>2],r[n+36>>2]=r[e+36>>2],r[n+40>>2]=r[e+40>>2],r[n+44>>2]=r[e+44>>2],r[n+48>>2]=r[e+48>>2],r[n+52>>2]=r[e+52>>2],r[n+56>>2]=r[e+56>>2],r[n+60>>2]=r[e+60>>2],n=n+64|0,e=e+64|0;for(;(n|0)<(t|0);)r[n>>2]=r[e>>2],n=n+4|0,e=e+4|0}else for(t=A-4|0;(n|0)<(t|0);)l[n>>0]=l[e>>0]|0,l[n+1>>0]=l[e+1>>0]|0,l[n+2>>0]=l[e+2>>0]|0,l[n+3>>0]=l[e+3>>0]|0,n=n+4|0,e=e+4|0;for(;(n|0)<(A|0);)l[n>>0]=l[e>>0]|0,n=n+1|0,e=e+1|0;return f|0}function I0(n,e,t){n=n|0,e=e|0,t=t|0;var i=0;if((e|0)<(n|0)&(n|0)<(e+t|0)){for(i=n,e=e+t|0,n=n+t|0;(t|0)>0;)n=n-1|0,e=e-1|0,t=t-1|0,l[n>>0]=l[e>>0]|0;n=i}else _0(n,e,t)|0;return n|0}function O2(n,e,t){n=n|0,e=e|0,t=t|0;var i=0,A=0,f=0,u=0;if(f=n+t|0,e=e&255,(t|0)>=67){for(;n&3;)l[n>>0]=e,n=n+1|0;for(i=f&-4|0,u=e|e<<8|e<<16|e<<24,A=i-64|0;(n|0)<=(A|0);)r[n>>2]=u,r[n+4>>2]=u,r[n+8>>2]=u,r[n+12>>2]=u,r[n+16>>2]=u,r[n+20>>2]=u,r[n+24>>2]=u,r[n+28>>2]=u,r[n+32>>2]=u,r[n+36>>2]=u,r[n+40>>2]=u,r[n+44>>2]=u,r[n+48>>2]=u,r[n+52>>2]=u,r[n+56>>2]=u,r[n+60>>2]=u,n=n+64|0;for(;(n|0)<(i|0);)r[n>>2]=u,n=n+4|0}for(;(n|0)<(f|0);)l[n>>0]=e,n=n+1|0;return f-t|0}function Mv(n){return n=n|0,Ye[n&3]()|0}function Bv(n,e){return n=n|0,e=e|0,Wr[n&15](e|0)|0}function Jv(n,e,t,i,A,f,u){return n=n|0,e=e|0,t=+t,i=i|0,A=A|0,f=f|0,u=u|0,OA[n&1](e|0,+t,i|0,A|0,f|0,u|0)|0}function Yv(n,e,t){return n=n|0,e=e|0,t=t|0,jn[n&63](e|0,t|0)|0}function _v(n,e,t,i){return n=n|0,e=e|0,t=t|0,i=i|0,hn[n&7](e|0,t|0,i|0)|0}function Ev(n){n=n|0,_e[n&3]()}function jv(n,e){n=n|0,e=e|0,A0[n&255](e|0)}function xv(n,e,t){n=n|0,e=e|0,t=t|0,k2[n&15](e|0,t|0)}function Sv(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0,xn[n&15](e|0,t|0,i|0)}function Cv(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,Sn[n&7](e|0,t|0,i|0,A|0)}function Ov(n,e,t,i,A,f){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,Xr[n&3](e|0,t|0,i|0,A|0,f|0)}function Iv(n,e,t,i,A,f,u){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,u=u|0,Cn[n&3](e|0,t|0,i|0,A|0,f|0,u|0)}function xA(){return G0(0),0}function Be(n){return n=n|0,G0(1),0}function Hv(n,e,t,i,A,f){return n=n|0,e=+e,t=t|0,i=i|0,A=A|0,f=f|0,G0(2),0}function v0(n,e){return n=n|0,e=e|0,G0(3),0}function SA(n,e,t){return n=n|0,e=e|0,t=t|0,G0(4),0}function CA(){G0(5)}function T(n){n=n|0,G0(6)}function w2(n,e){n=n|0,e=e|0,G0(7)}function I2(n,e,t){n=n|0,e=e|0,t=t|0,G0(8)}function Je(n,e,t,i){n=n|0,e=e|0,t=t|0,i=i|0,G0(9)}function Qv(n,e,t,i,A){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,G0(10)}function Dv(n,e,t,i,A,f){n=n|0,e=e|0,t=t|0,i=i|0,A=A|0,f=f|0,G0(11)}var Ye=[xA,M3,y5,xA],Wr=[Be,Wm,to,lo,ym,Vm,am,cv,Rv,w3,cu,f5,J3,V5,Be,Be],OA=[Hv,j6],jn=[v0,ku,Tu,oo,ll,Bl,xl,Hl,Ql,Pl,uc,hc,Uc,zc,Ec,Ic,l4,y4,W4,d4,Y4,S4,D4,q4,is,Zs,ws,Us,Ms,js,Ls,r8,l8,y8,d8,B8,I8,K8,A3,s3,V3,b3,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0,v0],hn=[SA,$6,Am,Gm,Nm,hv,mv,SA],_e=[CA,Um,rm,CA],A0=[T,y0,Fu,wu,Wu,du,Gu,Nu,Y0,$u,co,eo,Ao,fo,Zo,po,go,Uo,jo,xo,So,nl,ul,ol,cl,Nl,ri,Jl,M2,Yl,El,jl,Sl,ti,Il,x0,Dl,Ac,fc,oc,hi,sc,Xc,gc,dc,pi,Nc,Yc,_c,jc,Fi,Oc,u4,o4,c4,_i,R4,w4,k4,X4,Ei,G4,B4,J4,_4,ji,C4,H4,Q4,P4,Oi,K4,es,ts,As,ms,vs,ps,Vs,Fs,ks,Hi,ds,Ns,zs,Bs,Qi,Es,Ps,$s,qs,Pi,n8,u8,o8,c8,$i,p8,g8,U8,G8,Li,M8,C8,O8,H8,qi,q8,t3,i3,f3,Ki,c3,y3,R3,F3,cn,em,tm,im,lm,Zm,pm,Rr,Rm,km,Xm,gm,dm,Tm,Bm,NA,Km,ov,lv,yv,JA,kv,X3,l5,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T],k2=[w2,io,uo,lu,hu,mu,vu,Zu,x6,w2,w2,w2,w2,w2,w2,w2],xn=[I2,sv,vv,Vv,Fv,ou,su,P3,z5,E5,I2,I2,I2,I2,I2,I2],Sn=[Je,om,hm,_m,C3,U5,Je,Je],Xr=[Qv,um,sm,Ym],Cn=[Dv,fm,cm,Jm];return{__ZSt18uncaught_exceptionv:Lm,___cxa_can_catch:Dm,___cxa_is_pointer_type:Pm,___embind_register_native_and_builtin_types:tA,___errno_location:i2,___getTypeName:T6,___muldi3:ze,___udivdi3:Me,_bitshift64Lshr:kr,_bitshift64Shl:_A,_emscripten_get_sbrk_ptr:EA,_free:Ne,_i64Add:O0,_i64Subtract:sn,_llvm_bswap_i32:jA,_malloc:wr,_memcpy:_0,_memmove:I0,_memset:O2,dynCall_i:Mv,dynCall_ii:Bv,dynCall_iidiiii:Jv,dynCall_iii:Yv,dynCall_iiii:_v,dynCall_v:Ev,dynCall_vi:jv,dynCall_vii:xv,dynCall_viii:Sv,dynCall_viiii:Cv,dynCall_viiiii:Ov,dynCall_viiiiii:Iv,globalCtors:Au,stackAlloc:dv,stackRestore:Gv,stackSave:Tv}}(Of,If,X2),wn=F.__ZSt18uncaught_exceptionv=P.__ZSt18uncaught_exceptionv,wZ=F.___cxa_can_catch=P.___cxa_can_catch,kZ=F.___cxa_is_pointer_type=P.___cxa_is_pointer_type,WZ=F.___embind_register_native_and_builtin_types=P.___embind_register_native_and_builtin_types,XZ=F.___errno_location=P.___errno_location,Hf=F.___getTypeName=P.___getTypeName,gZ=F.___muldi3=P.___muldi3,UZ=F.___udivdi3=P.___udivdi3,dZ=F._bitshift64Lshr=P._bitshift64Lshr,GZ=F._bitshift64Shl=P._bitshift64Shl,TZ=F._emscripten_get_sbrk_ptr=P._emscripten_get_sbrk_ptr,R2=F._free=P._free,NZ=F._i64Add=P._i64Add,zZ=F._i64Subtract=P._i64Subtract,MZ=F._llvm_bswap_i32=P._llvm_bswap_i32,Pr=F._malloc=P._malloc,BZ=F._memcpy=P._memcpy,JZ=F._memmove=P._memmove,YZ=F._memset=P._memset,Qf=F.globalCtors=P.globalCtors,kt=F.stackAlloc=P.stackAlloc,Df=F.stackRestore=P.stackRestore,Pf=F.stackSave=P.stackSave,_Z=F.dynCall_i=P.dynCall_i,EZ=F.dynCall_ii=P.dynCall_ii,jZ=F.dynCall_iidiiii=P.dynCall_iidiiii,xZ=F.dynCall_iii=P.dynCall_iii,SZ=F.dynCall_iiii=P.dynCall_iiii,CZ=F.dynCall_v=P.dynCall_v,OZ=F.dynCall_vi=P.dynCall_vi,IZ=F.dynCall_vii=P.dynCall_vii,HZ=F.dynCall_viii=P.dynCall_viii,QZ=F.dynCall_viiii=P.dynCall_viiii,DZ=F.dynCall_viiiii=P.dynCall_viiiii,PZ=F.dynCall_viiiiii=P.dynCall_viiiiii;if(F.asm=P,$0)if(ut($0)||($0=R0($0)),q||Z0){var $f=Q2($0);d0.set($f,Le)}else{G1("memory initializer");var $r=function(m){m.byteLength&&(m=new Uint8Array(m)),d0.set(m,Le),F.memoryInitializerRequest&&delete F.memoryInitializerRequest.response,T1("memory initializer")},Wt=function(){In($0,$r,function(){var m=new Error("could not load memory initializer "+$0);throw m})},Xt=y2($0);if(Xt)$r(Xt.buffer);else if(F.memoryInitializerRequest){var gt=function(){var m=F.memoryInitializerRequest,v=m.response;if(m.status!==200&&m.status!==0){var R=y2(F.memoryInitializerRequestURL);if(R)v=R.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+m.status+", retrying "+$0),Wt();return}}$r(v)};F.memoryInitializerRequest.response?setTimeout(gt,0):F.memoryInitializerRequest.addEventListener("load",gt)}else Wt()}var Kn;function Lf(m){this.name="ExitStatus",this.message="Program terminated with exit("+m+")",this.status=m}Zn=function m(){Kn||Lr(),Kn||(Zn=m)};function Lr(m){if(m=m||J,U2>0||(R1(),U2>0))return;function v(){Kn||(Kn=!0,F.calledRun=!0,!Ke&&(V1(),F1(),F.onRuntimeInitialized&&F.onRuntimeInitialized(),w1()))}F.setStatus?(F.setStatus("Running..."),setTimeout(function(){setTimeout(function(){F.setStatus("")},1),v()},1)):v()}if(F.run=Lr,F.preInit)for(typeof F.preInit=="function"&&(F.preInit=[F.preInit]);F.preInit.length>0;)F.preInit.pop()();return qe=!0,Lr(),F}var m2=null,LA={0:F=>({position:[F.getInt32(0,!0),F.getInt32(4,!0),F.getInt32(8,!0)],intensity:F.getUint16(12,!0),classification:F.getUint8(15)}),1:F=>({position:[F.getInt32(0,!0),F.getInt32(4,!0),F.getInt32(8,!0)],intensity:F.getUint16(12,!0),classification:F.getUint8(15)}),2:F=>({position:[F.getInt32(0,!0),F.getInt32(4,!0),F.getInt32(8,!0)],intensity:F.getUint16(12,!0),classification:F.getUint8(15),color:[F.getUint16(20,!0),F.getUint16(22,!0),F.getUint16(24,!0)]}),3:F=>({position:[F.getInt32(0,!0),F.getInt32(4,!0),F.getInt32(8,!0)],intensity:F.getUint16(12,!0),classification:F.getUint8(15),color:[F.getUint16(28,!0),F.getUint16(30,!0),F.getUint16(32,!0)]})};function W2(F,d={},_,J){J=J===void 0||J===0?1:J;let x=F.slice(_,_+d.BYTES_PER_ELEMENT*J),Q=new d(x);if(J===1)return Q[0];let t0=[];for(let i0=0;i0<J;i0++)t0.push(Q[i0]);return t0}function qA(F){let d=131,_={pointsOffset:W2(F,Uint32Array,32*3),pointsFormatId:W2(F,Uint8Array,32*3+8),pointsStructSize:W2(F,Uint16Array,32*3+8+1),pointsCount:W2(F,Uint32Array,32*3+11),scale:W2(F,Float64Array,d,3)};d+=24,_.offset=W2(F,Float64Array,d,3),d+=24;let J=W2(F,Float64Array,d,6);return d+=48,_.maxs=[J[0],J[2],J[4]],_.mins=[J[1],J[3],J[5]],_}var Ie=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(d){this.arraybuffer=d}open(){return!0}getHeader(){return this.header=qA(this.arraybuffer),this.header}readData(d,_){let{header:J,arraybuffer:x}=this;if(!J)throw new Error("Cannot start reading data till a header request is issued");let{readOffset:Q}=this,t0;if(_<=1){d=Math.min(d,J.pointsCount-Q),t0=J.pointsOffset+Q*J.pointsStructSize;let R0=t0+d*J.pointsStructSize;return Q+=d,this.readOffset=Q,{buffer:x.slice(t0,R0),count:d,hasMoreData:Q<J.pointsCount}}let i0=Math.min(d*_,J.pointsCount-Q),q=Math.ceil(i0/_),Z0=0,K=new Uint8Array(q*J.pointsStructSize);for(let R0=0;R0<i0;R0++){if(R0%_===0){t0=J.pointsOffset+Q*J.pointsStructSize;let U0=new Uint8Array(x,t0,J.pointsStructSize);K.set(U0,Z0*J.pointsStructSize),Z0++}Q++}return this.readOffset=Q,{buffer:K.buffer,count:Z0,hasMoreData:Q<J.pointsCount}}close(){return this.arraybuffer=null,!0}},He=class{arraybuffer;instance=null;header=null;constructor(d){this.arraybuffer=d,m2||(m2=Oe())}open(){try{let{arraybuffer:d}=this;this.instance=new m2.LASZip;let _=new Uint8Array(d),J=m2._malloc(d.byteLength);return this.instance.arraybuffer=d,this.instance.buf=J,m2.HEAPU8.set(_,J),this.instance.open(J,d.byteLength),this.instance.readOffset=0,!0}catch(d){throw new Error(`Failed to open file: ${d.message}`)}}getHeader(){if(!this.instance)throw new Error("You need to open the file before trying to read header");try{let d=qA(this.instance.arraybuffer);return d.pointsFormatId&=63,this.header=d,d}catch(d){throw new Error(`Failed to get header: ${d.message}`)}}readData(d,_,J){if(!this.instance)throw new Error("You need to open the file before trying to read stuff");let{header:x,instance:Q}=this;if(!x)throw new Error("You need to query header before reading, I maintain state that way, sorry :(");try{let t0=Math.min(d*J,x.pointsCount-Q.readOffset),i0=Math.ceil(t0/J),q=0,Z0=new Uint8Array(i0*x.pointsStructSize),K=m2._malloc(x.pointsStructSize);for(let R0=0;R0<t0;R0++){if(Q.getPoint(K),R0%J===0){let U0=new Uint8Array(m2.HEAPU8.buffer,K,x.pointsStructSize);Z0.set(U0,q*x.pointsStructSize),q++}Q.readOffset++}return m2._free(K),{buffer:Z0.buffer,count:q,hasMoreData:Q.readOffset<x.pointsCount}}catch(t0){throw new Error(`Failed to read data: ${t0.message}`)}}close(){try{return this.instance!==null&&(m2._free(this.instance.buf),this.instance.delete(),this.instance=null),!0}catch(d){throw new Error(`Failed to close file: ${d.message}`)}}},Qe=class{arrayb;decoder;pointsCount;pointSize;scale;offset;mins;maxs;constructor(d,_,J){this.arrayb=d,this.decoder=LA[J.pointsFormatId],this.pointsCount=_,this.pointSize=J.pointsStructSize,this.scale=J.scale,this.offset=J.offset,this.mins=J.mins,this.maxs=J.maxs}getPoint(d){if(d<0||d>=this.pointsCount)throw new Error("Point index out of range");let _=new DataView(this.arrayb,d*this.pointSize,this.pointSize);return this.decoder(_)}},Gr=class{arraybuffer;formatId=0;loader;isCompressed=!0;isOpen=!1;version=0;versionAsString="";constructor(d){if(this.arraybuffer=d,this.determineVersion()>13)throw new Error("Only file versions <= 1.3 are supported at this time");if(this.determineFormat(),LA[this.formatId]===void 0)throw new Error("The point format ID is not supported");this.loader=this.isCompressed?new He(this.arraybuffer):new Ie(this.arraybuffer)}determineFormat(){let d=W2(this.arraybuffer,Uint8Array,104),_=(d&128)>>7,J=(d&64)>>6;if(_===1&&J===1)throw new Error("Old style compression not supported");this.formatId=d&63,this.isCompressed=_===1||J===1}determineVersion(){let d=new Int8Array(this.arraybuffer,24,2);return this.version=d[0]*10+d[1],this.versionAsString=`${d[0]}.${d[1]}`,this.version}open(){this.loader.open()&&(this.isOpen=!0)}getHeader(){return this.loader.getHeader()}readData(d,_,J){return this.loader.readData(d,_,J)}close(){this.loader.close()&&(this.isOpen=!1)}getUnpacker(){return Qe}};function KA(F,d){let _=tZ(F);return Se(d,_)}function tZ(F){let d={};return d.las_pointsOffset=F.pointsOffset.toString(10),d.las_pointsFormatId=F.pointsFormatId.toString(10),d.las_pointsStructSize=F.pointsStructSize.toString(10),d.las_pointsCount=F.pointsCount.toString(10),d.las_scale=JSON.stringify(F.scale),d.las_offset=JSON.stringify(F.offset),F.maxs!==void 0&&(d.las_maxs=JSON.stringify(F.maxs)),F.mins!==void 0&&(d.las_mins=JSON.stringify(F.mins)),d.las_totalToRead=F.totalToRead.toString(10),d.las_pointsFortotalReadmatId=F.totalRead.toString(10),F.versionAsString!==void 0&&(d.las_versionAsString=F.versionAsString),F.isCompressed!==void 0&&(d.las_isCompressed=F.isCompressed.toString()),d}function De(F,d){return iZ(F,d)}function iZ(F,d={}){let _=0,J,x,Q,t0,i0,q={loader:"las",loaderData:{},schema:{fields:[],metadata:{}},header:{vertexCount:0,boundingBox:[[0,0,0],[0,0,0]]},attributes:{},topology:"point-list",mode:0};return AZ(F,d.las?.skip,(Z0={},K)=>{if(!i0){i0=K;let A2=K.totalToRead,D2=d.las?.fp64?Float64Array:Float32Array;J=new D2(A2*3),x=K.pointsFormatId>=2?new Uint8Array(A2*4):null,Q=new Uint16Array(A2),t0=new Uint8Array(A2),q.loaderData=K,q.attributes={POSITION:{value:J,size:3},intensity:{value:Q,size:1},classification:{value:t0,size:1}},x&&(q.attributes.COLOR_0={value:x,size:4})}let R0=Z0.pointsCount,{scale:[U0,In,Q2],offset:[Tr,mn,vn]}=K,Nr=fZ(Z0,R0,d.las?.colorDepth);for(let A2=0;A2<R0;A2++){let{position:D2,color:v2,intensity:P2,classification:Pe}=Z0.getPoint(A2);J[_*3]=D2[0]*U0+Tr,J[_*3+1]=D2[1]*In+mn,J[_*3+2]=D2[2]*Q2+vn,v2&&x&&(Nr?(x[_*4]=v2[0]/256,x[_*4+1]=v2[1]/256,x[_*4+2]=v2[2]/256):(x[_*4]=v2[0],x[_*4+1]=v2[1],x[_*4+2]=v2[2]),x[_*4+3]=255),Q[_]=P2,t0[_]=Pe,_++}let Hn={...q,header:{vertexCount:K.totalRead},progress:K.totalRead/K.totalToRead};d?.onProgress?.(Hn)}),q.header={vertexCount:i0.totalToRead,boundingBox:xe(q?.attributes||{})},q&&(q.schema=KA(q.loaderData,q.attributes)),q}function AZ(F,d,_={}){let J=new Gr(F);try{J.open();let x=J.getHeader(),Q=J.getUnpacker(),t0=Math.ceil(x.pointsCount/Math.max(1,d));x.totalToRead=t0;let i0=0;for(;;){let q=J.readData(1e5,0,d);i0+=q.count,x.totalRead=i0,x.versionAsString=q.versionAsString,x.isCompressed=q.isCompressed;let Z0=new Q(q.buffer,q.count,x);if(_(Z0,x),!q.hasMoreData||i0>=t0)break}}catch(x){throw x}finally{J.close()}}function fZ(F={},d,_){let J=!1;switch(_){case 8:J=!1;break;case 16:J=!0;break;case"auto":if(F.getPoint(0).color)for(let x=0;x<d;x++){let{color:Q}=F.getPoint(x);(Q[0]>255||Q[1]>255||Q[2]>255)&&(J=!0)}break;default:console.warn("las: illegal value for options.las.colorDepth");break}return J}var uZ={...je,parse:async(F,d)=>De(F,d),parseSync:(F,d)=>De(F,d)};return nZ(On);})();
|
|
35
|
+
`),kt+=`}
|
|
36
|
+
`,te.push(kt);var Bi=k1(Function,te).apply(null,Se);return Bi}function Z1(w,_,R,d,Z,e,S,W){var j=Wa(R,d);_=Br(_),e=S0(Z,e),Is([],[w],function(G){G=G[0];var k=G.name+"."+_;W&&G.registeredClass.pureVirtualFunctions.push(_);function Rt(){ul("Cannot call "+k+" due to unbound types",j)}var kt=G.registeredClass.instancePrototype,Tt=kt[_];return Tt===void 0||Tt.overloadTable===void 0&&Tt.className!==G.name&&Tt.argCount===R-2?(Rt.argCount=R-2,Rt.className=G.name,kt[_]=Rt):(Oa(kt,_,k),kt[_].overloadTable[R-2]=Rt),Is([],j,function(te){var Se=O1(k,te,G,e,S);return kt[_].overloadTable===void 0?(Se.argCount=R-2,kt[_]=Se):kt[_].overloadTable[R-2]=Se,[]}),[]})}var cl=[],sn=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Ea(w){w>4&&--sn[w].refcount===0&&(sn[w]=void 0,cl.push(w))}function D1(){for(var w=0,_=5;_<sn.length;++_)sn[_]!==void 0&&++w;return w}function W1(){for(var w=5;w<sn.length;++w)if(sn[w]!==void 0)return sn[w];return null}function z1(){o.count_emval_handles=D1,o.get_first_emval=W1}function ll(w){switch(w){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{var _=cl.length?cl.pop():sn.length;return sn[_]={refcount:1,value:w},_}}}function E1(w,_){_=Br(_),Dn(w,{name:_,fromWireType:function(R){var d=sn[R].value;return Ea(R),d},toWireType:function(R,d){return ll(d)},argPackAdvance:8,readValueFromPointer:Po,destructorFunction:null})}function Fi(w){if(w===null)return"null";var _=typeof w;return _==="object"||_==="array"||_==="function"?w.toString():""+w}function X1(w,_){switch(_){case 2:return function(R){return this.fromWireType(Pc[R>>2])};case 3:return function(R){return this.fromWireType(Hc[R>>3])};default:throw new TypeError("Unknown float type: "+w)}}function G1(w,_,R){var d=Kc(R);_=Br(_),Dn(w,{name:_,fromWireType:function(Z){return Z},toWireType:function(Z,e){if(typeof e!="number"&&typeof e!="boolean")throw new TypeError('Cannot convert "'+Fi(e)+'" to '+this.name);return e},argPackAdvance:8,readValueFromPointer:X1(_,d),destructorFunction:null})}function C1(w,_,R){switch(_){case 0:return R?function(Z){return ri[Z]}:function(Z){return Ze[Z]};case 1:return R?function(Z){return vi[Z>>1]}:function(Z){return jo[Z>>1]};case 2:return R?function(Z){return lr[Z>>2]}:function(Z){return Zn[Z>>2]};default:throw new TypeError("Unknown integer type: "+w)}}function j1(w,_,R,d,Z){_=Br(_),Z===-1&&(Z=4294967295);var e=Kc(R),S=function(G){return G};if(d===0){var W=32-8*R;S=function(G){return G<<W>>>W}}var j=_.indexOf("unsigned")!=-1;Dn(w,{name:_,fromWireType:S,toWireType:function(G,k){if(typeof k!="number"&&typeof k!="boolean")throw new TypeError('Cannot convert "'+Fi(k)+'" to '+this.name);if(k<d||k>Z)throw new TypeError('Passing a number "'+Fi(k)+'" from JS side to C/C++ side to an argument of type "'+_+'", which is outside the valid range ['+d+", "+Z+"]!");return j?k>>>0:k|0},argPackAdvance:8,readValueFromPointer:C1(_,e,d!==0),destructorFunction:null})}function L1(w,_,R){var d=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],Z=d[_];function e(S){S=S>>2;var W=Zn,j=W[S],G=W[S+1];return new Z(gi,G,j)}R=Br(R),Dn(w,{name:R,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{ignoreDuplicateRegistrations:!0})}function J1(w,_){_=Br(_);var R=_==="std::string";Dn(w,{name:_,fromWireType:function(d){var Z=Zn[d>>2],e;if(R)for(var S=d+4,W=0;W<=Z;++W){var j=d+4+W;if(Ze[j]==0||W==Z){var G=j-S,k=va(S,G);e===void 0?e=k:(e+=String.fromCharCode(0),e+=k),S=j+1}}else{for(var Rt=new Array(Z),W=0;W<Z;++W)Rt[W]=String.fromCharCode(Ze[d+4+W]);e=Rt.join("")}return si(d),e},toWireType:function(d,Z){Z instanceof ArrayBuffer&&(Z=new Uint8Array(Z));var e,S=typeof Z=="string";S||Z instanceof Uint8Array||Z instanceof Uint8ClampedArray||Z instanceof Int8Array||Nt("Cannot pass non-string to std::string"),R&&S?e=function(){return Fp(Z)}:e=function(){return Z.length};var W=e(),j=fl(4+W+1);if(Zn[j>>2]=W,R&&S)wa(Z,j+4,W+1);else if(S)for(var G=0;G<W;++G){var k=Z.charCodeAt(G);k>255&&(si(j),Nt("String has UTF-16 code units that do not fit in 8 bits")),Ze[j+4+G]=k}else for(var G=0;G<W;++G)Ze[j+4+G]=Z[G];return d!==null&&d.push(si,j),j},argPackAdvance:8,readValueFromPointer:Po,destructorFunction:function(d){si(d)}})}function Y1(w,_,R){R=Br(R);var d,Z,e,S,W;_===2?(d=Bp,Z=Ip,S=Sp,e=function(){return jo},W=1):_===4&&(d=Tp,Z=Rp,S=Up,e=function(){return Zn},W=2),Dn(w,{name:R,fromWireType:function(j){for(var G=Zn[j>>2],k=e(),Rt,kt=j+4,Tt=0;Tt<=G;++Tt){var te=j+4+Tt*_;if(k[te>>W]==0||Tt==G){var Se=te-kt,Xr=d(kt,Se);Rt===void 0?Rt=Xr:(Rt+=String.fromCharCode(0),Rt+=Xr),kt=te+_}}return si(j),Rt},toWireType:function(j,G){typeof G!="string"&&Nt("Cannot pass non-string to C++ string type "+R);var k=S(G),Rt=fl(4+k+_);return Zn[Rt>>2]=k>>W,Z(G,Rt+4,k+_),j!==null&&j.push(si,Rt),Rt},argPackAdvance:8,readValueFromPointer:Po,destructorFunction:function(j){si(j)}})}function P1(w,_){_=Br(_),Dn(w,{isVoid:!0,name:_,argPackAdvance:0,fromWireType:function(){},toWireType:function(R,d){}})}function H1(){_i()}function Q1(){return Ze.length}function $1(w){_i("OOM")}function q1(w){w=w>>>0,$1(w)}function K1(){_i("trap!")}function tm(w,_,R){Ze.copyWithin(w,_,_+R)}r1(),I0=o.BindingError=rl(Error,"BindingError"),ba=o.InternalError=rl(Error,"InternalError"),d1(),V1(),S1(),Da=o.UnboundTypeError=rl(Error,"UnboundTypeError"),z1();var em=!1;function Xa(w){for(var _=[],R=0;R<w.length;R++){var d=w[R];d>255&&(em&&v0(!1,"Character code "+d+" ("+String.fromCharCode(d)+") at offset "+R+" not in 0x00-0xFF."),d&=255),_.push(String.fromCharCode(d))}return _.join("")}var rm=typeof atob=="function"?atob:function(w){var _="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",R="",d,Z,e,S,W,j,G,k=0;w=w.replace(/[^A-Za-z0-9\+\/\=]/g,"");do S=_.indexOf(w.charAt(k++)),W=_.indexOf(w.charAt(k++)),j=_.indexOf(w.charAt(k++)),G=_.indexOf(w.charAt(k++)),d=S<<2|W>>4,Z=(W&15)<<4|j>>2,e=(j&3)<<6|G,R=R+String.fromCharCode(d),j!==64&&(R=R+String.fromCharCode(Z)),G!==64&&(R=R+String.fromCharCode(e));while(k<w.length);return R};function nm(w){if(typeof T=="boolean"&&T){var _;try{_=Buffer.from(w,"base64")}catch{_=new Buffer(w,"base64")}return new Uint8Array(_.buffer,_.byteOffset,_.byteLength)}try{for(var R=rm(w),d=new Uint8Array(R.length),Z=0;Z<R.length;++Z)d[Z]=R.charCodeAt(Z);return d}catch{throw new Error("Converting base64 string to bytes failed.")}}function ii(w){if(Ra(w))return nm(w.slice(Ta.length))}var im={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Float32Array,Float64Array},sm={A:tm,B:q1,C:K1,D:Pp,a:_i,b:pp,c:mp,d:Hp,e:$p,f:Kp,g:t1,h:Ua,i:Va,j:e1,k:s1,l:M1,m:N1,n:Z1,o:E1,p:G1,q:j1,r:L1,s:J1,t:Y1,u:P1,v:Ea,w:ll,x:H1,y:Fi,z:Q1},St=function(w,_,R){var d=new w.Int8Array(R),Z=new w.Int16Array(R),e=new w.Int32Array(R),S=new w.Uint8Array(R),W=new w.Uint16Array(R),j=new w.Float32Array(R),G=new w.Float64Array(R),k=_.D|0,Rt=0,kt=0,Tt=0,te=0,Se=0,Xr=0,Bi=0,$o=0,It=w.Math.imul,zn=w.Math.clz32,De=_.a,jt=_.b,Vt=_.c,Lt=_.d,hm=_.e,Jt=_.f,dm=_.g,OR=_.h,ZR=_.i,DR=_.j,Am=_.k,Ja=_.l,Ya=_.m,T0=_.n,pm=_.o,Pa=_.p,En=_.q,Ir=_.r,Ha=_.s,dl=_.t,mm=_.u,WR=_.v,zR=_.w,ym=_.x,ER=_.y,gm=_.z,vm=_.A,wm=_.B,Qa=_.C,y=22384,XR=5265264,GR=0;function _m(){n6(),i6()}function Fm(){Bm(0)}function Bm(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0;t=y,y=y+16|0,n=t+8|0,i=t,I=D3()|0,f=W3()|0,c=Xs()|0,a=E3()|0,h=X3()|0,p=gh()|0,g=Au()|0,F=pu()|0,u=pu()|0,Ja(c|0,a|0,h|0,p|0,g|0,9,F|0,I|0,u|0,f|0,6204,vh()|0,138),P3(1),e[i>>2]=5,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],e8(6211,n),e[i>>2]=3,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],u8(6216,n),e[i>>2]=10,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],d8(6225,n),f=F8()|0,u=B8()|0,I=Gs()|0,F=S8()|0,g=T8()|0,p=gh()|0,h=Au()|0,a=pu()|0,c=pu()|0,Ja(I|0,F|0,g|0,p|0,h|0,11,a|0,f|0,c|0,u|0,6234,vh()|0,139),N8(2),e[i>>2]=6,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],E8(6211,n),e[i>>2]=4,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],zl(6248,n),e[i>>2]=5,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],zl(6265,n),e[i>>2]=6,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],zl(6280,n),e[i>>2]=7,e[i+4>>2]=0,e[n>>2]=e[i>>2],e[n+4>>2]=e[i+4>>2],$8(6216,n),y=t}function Im(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0;u=y,y=y+32|0,a=u+16|0,c=u+8|0,h=u,f=J(20)|0,Mm(f,n,i),e[h>>2]=0,e[a>>2]=e[h>>2],km(c,f,a),n=e[c>>2]|0,e[c>>2]=e[t>>2],e[t>>2]=n,n=c+4|0,i=t+4|0,f=e[n>>2]|0,e[n>>2]=e[i>>2],e[i>>2]=f,Al(c),i=J(352)|0,Nm(i,e[t>>2]|0),f=t+8|0,e[h>>2]=0,e[a>>2]=e[h>>2],Xm(c,i,a),i=e[c>>2]|0,e[c>>2]=e[f>>2],e[f>>2]=i,f=c+4|0,i=t+12|0,n=e[f>>2]|0,e[f>>2]=e[i>>2],e[i>>2]=n,pl(c),y=u}function Sm(t,n){t=t|0,n=n|0,g4(e[t+8>>2]|0,n)}function Tm(t){return t=t|0,t=(Fw(e[t+8>>2]|0)|0)+107|0,S[t>>0]|S[t+1>>0]<<8|S[t+2>>0]<<16|S[t+3>>0]<<24|0}function Rm(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0;u=y,y=y+32|0,f=u+16|0,c=u+8|0,a=u,h=J(12)|0,Bw(h,n,i),e[a>>2]=0,e[f>>2]=e[a>>2],Tw(c,h,f),h=e[c>>2]|0,e[c>>2]=e[t>>2],e[t>>2]=h,h=c+4|0,i=t+4|0,n=e[h>>2]|0,e[h>>2]=e[i>>2],e[i>>2]=n,Ml(c),i=t+8|0,n=J(12)|0,Iw(n,e[t>>2]|0),e[a>>2]=0,e[f>>2]=e[a>>2],Mw(c,n,f),n=e[c>>2]|0,e[c>>2]=e[i>>2],e[i>>2]=n,n=c+4|0,a=t+12|0,h=e[n>>2]|0,e[n>>2]=e[a>>2],e[a>>2]=h,lh(c),Sw(c,e[i>>2]|0),i=t+16|0,a=e[c>>2]|0,h=c+4|0,n=e[h>>2]|0,e[c>>2]=0,e[h>>2]=0,e[f>>2]=e[i>>2],e[i>>2]=a,i=t+20|0,e[f+4>>2]=e[i>>2],e[i>>2]=n,Es(f),Es(c),y=u}function Um(t,n){t=t|0,n=n|0;var i=0;t=t+16|0,i=e[t>>2]|0;t:do if(i|0)switch(n|0){case 4:{Nl(i);break t}case 8:{hu(i),hu(e[t>>2]|0);break t}default:break t}while(0)}function Vm(t,n){t=t|0,n=n|0;var i=0;i=t+16|0,t=e[i>>2]|0;t:do if(t|0){switch(n|0){case 1:{T_(t);break t}case 2:{R_(t);break t}case 8:{Nl(t),t=e[i>>2]|0;break}case 4:break;default:break t}Nl(t)}while(0)}function xm(t,n){t=t|0,n=n|0;var i=0;i=t+16|0,t=e[i>>2]|0;t:do if(t|0){switch(n|0){case 1:{o3(t);break t}case 2:{u3(t);break t}case 8:{hu(t),t=e[i>>2]|0;break}case 4:break;default:break t}hu(t)}while(0)}function bm(t,n){t=t|0,n=n|0,t=e[t+16>>2]|0,t|0&&Js[e[e[t>>2]>>2]&63](t,n)|0}function Mm(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,e[t+4>>2]=i,e[t+8>>2]=0,d[t+12>>0]=0,d[t+13>>0]=0,e[t+16>>2]=0}function Nm(t,n){t=t|0,n=n|0,e[t>>2]=n,Ka(t+4|0,n),$m(t+247|0),e[t+288>>2]=0,e[t+292>>2]=0,e[t+296>>2]=0,t2(t+300|0),n=t+312|0,e[n>>2]=0,e[n+4>>2]=0,e[n+8>>2]=0,e[n+12>>2]=0,qm(t+328|0),Km(t)}function km(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4296,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,Om(t,u),y=i}function Al(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function Om(t,n){t=t|0,n=n|0}function CR(t){t=t|0,hm(t|0)|0,UB()}function Zm(t){t=t|0,oe(t),L(t)}function Dm(t){t=t|0,t=e[t+12>>2]|0,t|0&&L(t)}function Wm(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==6407?t+12|0:0)|0}function zm(t){t=t|0,Ft(t,16)}function Ft(t,n){t=t|0,n=n|0,Em(t)}function Em(t){t=t|0,L(t)}function Xm(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4324,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,Gm(t,u),y=i}function pl(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function Gm(t,n){t=t|0,n=n|0}function Cm(t){t=t|0,oe(t),L(t)}function jm(t){t=t|0,t=e[t+12>>2]|0,t|0&&(Ym(t),L(t))}function Lm(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==6605?t+12|0:0)|0}function Jm(t){t=t|0,Ft(t,16)}function Ym(t){t=t|0,qo(t+320|0),ml(t+312|0),$a(t+300|0),Qm(t+288|0),Pm(t+247|0),qa(t+4|0)}function qo(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function ml(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function $a(t){t=t|0,Hm(t)}function Pm(t){t=t|0,t=t+34|0,t=S[t>>0]|S[t+1>>0]<<8|S[t+2>>0]<<16|S[t+3>>0]<<24,t|0&&Hh(t)}function qa(t){t=t|0,Ko(e[t+12>>2]|0)}function Hm(t){t=t|0;var n=0,i=0;n=e[t>>2]|0,i=n,n|0&&(e[t+4>>2]=i,Ft(n,(e[t+8>>2]|0)-i|0))}function Qm(t){t=t|0;var n=0,i=0;n=e[t>>2]|0,i=n,n|0&&(e[t+4>>2]=i,Ft(n,(e[t+8>>2]|0)-i|0))}function Ko(t){t=t|0,Yl(e[t+-4>>2]|0)}function Ka(t,n){t=t|0,n=n|0,e[t>>2]=n,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=Ii(1048576)|0}function $m(t){t=t|0;var n=0;n=t+32|0,d[n>>0]=0,d[n+1>>0]=0,t=t+34|0,d[t>>0]=0,d[t+1>>0]=0,d[t+2>>0]=0,d[t+3>>0]=0}function t2(t){t=t|0,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0}function qm(t){t=t|0,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,t=t+16|0,e[t>>2]=-1,e[t+4>>2]=-1}function Km(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0;if(a=y,y=y+64|0,c=a+32|0,i=a+56|0,n=a+16|0,f=a,Si(e[t>>2]|0,i,4),ly(c,i,i+4|0),i=R0(6693)|0,u=d[c+11>>0]|0,(i|0)==((u<<24>>24<0?e[c+4>>2]|0:u&255)|0)){if(u=(F5(c,0,-1,6693,i)|0)==0,Ls(c),u){if(i=e[t>>2]|0,e[n>>2]=0,e[n+4>>2]=0,e[n+8>>2]=0,e[n+12>>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[c+12>>2]=e[n+12>>2],xs(i,c),i=t+20|0,Si(e[t>>2]|0,i,227),ey(t,i),u=ry()|0,n=e[u>>2]|0,u=e[u+4>>2]|0,(n|0)!=(u|0))do ny(c,n),iy(c,i),yl(c),n=n+24|0;while((n|0)!=(u|0));sy(t),oy(t),uy(e[t>>2]|0),u=e[t>>2]|0,n=(e[t+116>>2]|0)+8|0,i=f,e[i>>2]=0,e[i+4>>2]=0,i=f+8|0,e[i>>2]=n,e[i+4>>2]=0,e[c>>2]=e[f>>2],e[c+4>>2]=e[f+4>>2],e[c+8>>2]=e[f+8>>2],e[c+12>>2]=e[f+12>>2],xs(u,c),cy(t+4|0),y=a;return}}else Ls(c);a=Lt(8)|0,ty(a),Jt(a|0,2592,8)}function Ii(t){t=t|0;var n=0;return n=wu(t+68|0)|0,t=n+68&-64,e[t+-4>>2]=n,t|0}function Si(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0;a=t+13|0,d[a>>0]|0?d[t+12>>0]=1:(f=t+4|0,u=e[f>>2]|0,h=t+8|0,c=e[h>>2]|0,p=u-c|0,i=(p|0)<(i|0)?p:i,i&&(Vr(n|0,(e[t>>2]|0)+c|0,i|0)|0,c=e[h>>2]|0,u=e[f>>2]|0),p=c+i|0,e[h>>2]=p,e[t+16>>2]=i,(p|0)>=(u|0)&&(d[a>>0]=1))}function ty(t){t=t|0,Gr(t,6791),e[t>>2]=4352}function xs(t,n){t=t|0,n=n|0;var i=0,u=0,c=0;c=n+8|0,n=e[c>>2]|0,c=e[c+4>>2]|0,i=e[t+4>>2]|0,u=((i|0)<0)<<31>>31,(c|0)<(u|0)|(c|0)==(u|0)&n>>>0<i>>>0?e[t+8>>2]=n:d[t+12>>0]=1}function ey(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0;F=n+179|0,d[k>>0]=d[F>>0],d[k+1>>0]=d[F+1>>0],d[k+2>>0]=d[F+2>>0],d[k+3>>0]=d[F+3>>0],d[k+4>>0]=d[F+4>>0],d[k+5>>0]=d[F+5>>0],d[k+6>>0]=d[F+6>>0],d[k+7>>0]=d[F+7>>0],g=+G[k>>3],a=n+187|0,d[k>>0]=d[a>>0],d[k+1>>0]=d[a+1>>0],d[k+2>>0]=d[a+2>>0],d[k+3>>0]=d[a+3>>0],d[k+4>>0]=d[a+4>>0],d[k+5>>0]=d[a+5>>0],d[k+6>>0]=d[a+6>>0],d[k+7>>0]=d[a+7>>0],I=+G[k>>3],t=n+195|0,d[k>>0]=d[t>>0],d[k+1>>0]=d[t+1>>0],d[k+2>>0]=d[t+2>>0],d[k+3>>0]=d[t+3>>0],d[k+4>>0]=d[t+4>>0],d[k+5>>0]=d[t+5>>0],d[k+6>>0]=d[t+6>>0],d[k+7>>0]=d[t+7>>0],f=+G[k>>3],p=n+203|0,d[k>>0]=d[p>>0],d[k+1>>0]=d[p+1>>0],d[k+2>>0]=d[p+2>>0],d[k+3>>0]=d[p+3>>0],d[k+4>>0]=d[p+4>>0],d[k+5>>0]=d[p+5>>0],d[k+6>>0]=d[p+6>>0],d[k+7>>0]=d[p+7>>0],h=+G[k>>3],c=n+211|0,d[k>>0]=d[c>>0],d[k+1>>0]=d[c+1>>0],d[k+2>>0]=d[c+2>>0],d[k+3>>0]=d[c+3>>0],d[k+4>>0]=d[c+4>>0],d[k+5>>0]=d[c+5>>0],d[k+6>>0]=d[c+6>>0],d[k+7>>0]=d[c+7>>0],i=+G[k>>3],n=n+219|0,d[k>>0]=d[n>>0],d[k+1>>0]=d[n+1>>0],d[k+2>>0]=d[n+2>>0],d[k+3>>0]=d[n+3>>0],d[k+4>>0]=d[n+4>>0],d[k+5>>0]=d[n+5>>0],d[k+6>>0]=d[n+6>>0],d[k+7>>0]=d[n+7>>0],u=+G[k>>3],G[k>>3]=I,d[F>>0]=d[k>>0],d[F+1>>0]=d[k+1>>0],d[F+2>>0]=d[k+2>>0],d[F+3>>0]=d[k+3>>0],d[F+4>>0]=d[k+4>>0],d[F+5>>0]=d[k+5>>0],d[F+6>>0]=d[k+6>>0],d[F+7>>0]=d[k+7>>0],G[k>>3]=g,d[p>>0]=d[k>>0],d[p+1>>0]=d[k+1>>0],d[p+2>>0]=d[k+2>>0],d[p+3>>0]=d[k+3>>0],d[p+4>>0]=d[k+4>>0],d[p+5>>0]=d[k+5>>0],d[p+6>>0]=d[k+6>>0],d[p+7>>0]=d[k+7>>0],G[k>>3]=h,d[a>>0]=d[k>>0],d[a+1>>0]=d[k+1>>0],d[a+2>>0]=d[k+2>>0],d[a+3>>0]=d[k+3>>0],d[a+4>>0]=d[k+4>>0],d[a+5>>0]=d[k+5>>0],d[a+6>>0]=d[k+6>>0],d[a+7>>0]=d[k+7>>0],G[k>>3]=f,d[c>>0]=d[k>>0],d[c+1>>0]=d[k+1>>0],d[c+2>>0]=d[k+2>>0],d[c+3>>0]=d[k+3>>0],d[c+4>>0]=d[k+4>>0],d[c+5>>0]=d[k+5>>0],d[c+6>>0]=d[k+6>>0],d[c+7>>0]=d[k+7>>0],G[k>>3]=u,d[t>>0]=d[k>>0],d[t+1>>0]=d[k+1>>0],d[t+2>>0]=d[k+2>>0],d[t+3>>0]=d[k+3>>0],d[t+4>>0]=d[k+4>>0],d[t+5>>0]=d[k+5>>0],d[t+6>>0]=d[k+6>>0],d[t+7>>0]=d[k+7>>0],G[k>>3]=i,d[n>>0]=d[k>>0],d[n+1>>0]=d[k+1>>0],d[n+2>>0]=d[k+2>>0],d[n+3>>0]=d[k+3>>0],d[n+4>>0]=d[k+4>>0],d[n+5>>0]=d[k+5>>0],d[n+6>>0]=d[k+6>>0],d[n+7>>0]=d[k+7>>0]}function ry(){var t=0,n=0,i=0,u=0,c=0,f=0,a=0,h=0;if(c=y,y=y+48|0,i=c+24|0,u=c,t=c+44|0,!(d[21440]|0)&&Ni(21440)|0&&(e[5374]=0,e[5375]=0,e[5376]=0,ki(21440)),!(d[21448]|0)&&Ni(21448)|0&&ki(21448),(e[5374]|0)==(e[5375]|0)){if(A5(21508),(e[5374]|0)==(e[5375]|0)){d[i>>0]=d[t>>0]|0,ay(u,i),t=e[5375]|0;do if(t>>>0>=(e[5376]|0)>>>0)if(t=((t-(e[5374]|0)|0)/24|0)+1|0,n=yy(21496)|0,n>>>0<t>>>0)xe(21496);else{f=e[5374]|0,h=((e[5376]|0)-f|0)/24|0,a=h<<1,Ay(i,h>>>0<n>>>1>>>0?a>>>0<t>>>0?t:a:n,((e[5375]|0)-f|0)/24|0,21504),n=i+8|0,gl(e[n>>2]|0,u),e[n>>2]=(e[n>>2]|0)+24,py(21496,i),my(i);break}else hy(i,21496,1),h=i+4|0,gl(e[h>>2]|0,u),e[h>>2]=(e[h>>2]|0)+24,dy(i);while(0);yl(u)}p5(21508)}return y=c,21496}function ny(t,n){t=t|0,n=n|0;var i=0,u=0;i=n+16|0,u=e[i>>2]|0;do if(u)if((n|0)==(u|0)){u=e2(t)|0,e[t+16>>2]=u,i=e[i>>2]|0,li[e[(e[i>>2]|0)+12>>2]&15](i,u);break}else{e[t+16>>2]=Fu[e[(e[u>>2]|0)+8>>2]&15](u)|0;break}else e[t+16>>2]=0;while(0)}function iy(t,n){if(t=t|0,n=n|0,t=e[t+16>>2]|0,!t)n=Lt(4)|0,e[n>>2]=0,Ny(n),Jt(n|0,4168,131);else{li[e[(e[t>>2]|0)+24>>2]&15](t,n);return}}function yl(t){t=t|0;var n=0;n=e[t+16>>2]|0,(t|0)!=(n|0)?n|0&&Et[e[(e[n>>2]|0)+20>>2]&255](n):Et[e[(e[n>>2]|0)+16>>2]&255](n)}function sy(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0;U=y,y=y+96|0,c=U+16|0,F=U,h=U+72|0,f=e[t>>2]|0,p=W[t+114>>1]|0,g=F,e[g>>2]=0,e[g+4>>2]=0,g=F+8|0,e[g>>2]=p,e[g+4>>2]=0,e[c>>2]=e[F>>2],e[c+4>>2]=e[F+4>>2],e[c+8>>2]=e[F+8>>2],e[c+12>>2]=e[F+12>>2],xs(f,c),f=t+120|0;t:do if(e[f>>2]|0){for(a=c+2|0,p=c+16|0,g=c+20|0,F=c+18|0,i=0;;){if(!(tu(e[t>>2]|0)|0)||ky(e[t>>2]|0)|0)break t;for(Si(e[t>>2]|0,c,54),n=7277,u=a;(d[u>>0]|0)==(d[n>>0]|0);)if(u=u+1|0,(u|0)==(p|0)){I=8;break}else n=n+1|0;if((I|0)==8&&(I=0,(S[F>>0]|S[F+1>>0]<<8)<<16>>16==22204))break;if(Zy(e[t>>2]|0,(S[g>>0]|S[g+1>>0]<<8)&65535,0,1),i=i+1|0,i>>>0>=(e[f>>2]|0)>>>0)break t}F=(S[g>>0]|S[g+1>>0]<<8)&65535,I=Ph(F)|0,Si(e[t>>2]|0,I,F),Oy(t,I),L(I),I=t+125|0,Wy(h,t+247|0,(S[I>>0]|S[I+1>>0]<<8)&65535),zy(t+300|0,h)|0,$a(h),y=U;return}while(0);U=Lt(8)|0,Dy(U),Jt(U|0,2672,8)}function oy(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0;if(I=y,y=y+176|0,c=I+40|0,f=I+24|0,n=I+16|0,u=I,p=I+152|0,g=I+136|0,F=I+56|0,h=e[t>>2]|0,a=t+116|0,U=e[a>>2]|0,i=f,e[i>>2]=0,e[i+4>>2]=0,i=f+8|0,e[i>>2]=U,e[i+4>>2]=0,e[c>>2]=e[f>>2],e[c+4>>2]=e[f+4>>2],e[c+8>>2]=e[f+8>>2],e[c+12>>2]=e[f+12>>2],xs(h,c),h=n,e[h>>2]=0,e[h+4>>2]=0,Si(e[t>>2]|0,n,8),tu(e[t>>2]|0)|0||(U=Lt(8)|0,vl(U),Jt(U|0,2704,8)),i=n,n=e[i>>2]|0,i=e[i+4>>2]|0,(n|0)==-1&(i|0)==-1&&(U=Lt(8)|0,i2(U,7488),Jt(U|0,2720,8)),U=e[t>>2]|0,h=u,e[h>>2]=0,e[h+4>>2]=0,h=u+8|0,e[h>>2]=n,e[h+4>>2]=i,e[c>>2]=e[u>>2],e[c+4>>2]=e[u+4>>2],e[c+8>>2]=e[u+8>>2],e[c+12>>2]=e[u+12>>2],xs(U,c),tu(e[t>>2]|0)|0||(U=Lt(8)|0,vl(U),Jt(U|0,2704,8)),Si(e[t>>2]|0,c,8),tu(e[t>>2]|0)|0||(U=Lt(8)|0,vl(U),Jt(U|0,2704,8)),e[c>>2]|0&&(U=Lt(8)|0,$y(U),Jt(U|0,2736,8)),f=t+288|0,h=t+292|0,e[h>>2]=e[f>>2],U=t+259|0,(S[U>>0]|S[U+1>>0]<<8|S[U+2>>0]<<16|S[U+3>>0]<<24|0)==-1&&(U=Lt(8)|0,i2(U,7606),Jt(U|0,2720,8)),u=c+4|0,qy(f,(e[u>>2]|0)+1|0),U=e[f>>2]|0,e[U>>2]=(e[a>>2]|0)+8,e[U+4>>2]=0,(e[u>>2]|0)>>>0>1){if(Ka(p,e[t>>2]|0),s2(g,p),fr(F,32,2,8,0),wl(g),ar(F),!(e[u>>2]|0))f=e[f>>2]|0,i=f;else{i=1;do i>>>0>1?n=e[(e[f>>2]|0)+(i+-1<<3)>>2]|0:n=0,a=Ve(F,g,n,1)|0,n=e[f>>2]|0,U=n+(i<<3)|0,e[U>>2]=a,e[U+4>>2]=((a|0)<0)<<31>>31,i=i+1|0;while(i>>>0<=(e[u>>2]|0)>>>0);i=n,f=n}if(n=e[h>>2]|0,n-i>>3>>>0>1){c=n-f>>3,u=f,n=1,i=e[u>>2]|0,u=e[u+4>>2]|0;do U=f+(n<<3)|0,h=U,i=Ur(e[h>>2]|0,e[h+4>>2]|0,i|0,u|0)|0,u=Vt()|0,e[U>>2]=i,e[U+4>>2]=u,n=n+1|0;while(n>>>0<c>>>0)}hr(F),o2(g),qa(p)}y=I}function uy(t){t=t|0,d[t+12>>0]=0,d[t+13>>0]=0}function cy(t){t=t|0,e[t+8>>2]=0,e[t+4>>2]=0}function R0(t){return t=t|0,mu(t)|0}function ly(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0;if(a=y,y=y+16|0,c=n,f=a,u=i-c|0,u>>>0>4294967279&&Jl(t),u>>>0<11?d[t+11>>0]=u:(p=u+16&-16,h=J(p)|0,e[t>>2]=h,e[t+8>>2]=p|-2147483648,e[t+4>>2]=u,t=h),(n|0)!=(i|0)){for(c=i-c|0,u=t;bs(u,n),n=n+1|0,(n|0)!=(i|0);)u=u+1|0;t=t+c|0}d[f>>0]=0,bs(t,f),y=a}function bs(t,n){t=t|0,n=n|0,d[t>>0]=d[n>>0]|0}function fy(t){t=t|0,Ar(t),L(t)}function ay(t,n){t=t|0,n=n|0,e[t>>2]=4372,e[t+16>>2]=t}function hy(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,n=e[n+4>>2]|0,e[t+4>>2]=n,e[t+8>>2]=n+(i*24|0)}function dy(t){t=t|0,e[(e[t>>2]|0)+4>>2]=e[t+4>>2]}function gl(t,n){t=t|0,n=n|0;var i=0,u=0;i=n+16|0,u=e[i>>2]|0;do if(u)if((n|0)==(u|0)){u=e2(t)|0,e[t+16>>2]=u,i=e[i>>2]|0,li[e[(e[i>>2]|0)+12>>2]&15](i,u);break}else{e[t+16>>2]=u,e[i>>2]=0;break}else e[t+16>>2]=0;while(0)}function e2(t){return t=t|0,t|0}function Ay(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;c=t+12|0,e[c>>2]=0,e[t+16>>2]=u;do if(n)if(n>>>0>178956970)c=Lt(8)|0,Gn(c,6723),e[c>>2]=5956,Jt(c|0,3928,123);else{u=J(n*24|0)|0;break}else u=0;while(0);e[t>>2]=u,i=u+(i*24|0)|0,e[t+8>>2]=i,e[t+4>>2]=i,e[c>>2]=u+(n*24|0)}function py(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;if(h=e[t>>2]|0,p=t+4|0,i=e[p>>2]|0,a=n+4|0,(i|0)==(h|0))c=a,f=t,u=e[a>>2]|0,i=h;else{u=e[a>>2]|0;do i=i+-24|0,gl(u+-24|0,i),u=(e[a>>2]|0)+-24|0,e[a>>2]=u;while((i|0)!=(h|0));c=a,f=t,i=e[t>>2]|0}e[f>>2]=u,e[c>>2]=i,h=n+8|0,a=e[p>>2]|0,e[p>>2]=e[h>>2],e[h>>2]=a,h=t+8|0,p=n+12|0,t=e[h>>2]|0,e[h>>2]=e[p>>2],e[p>>2]=t,e[n>>2]=e[c>>2]}function my(t){t=t|0;var n=0,i=0,u=0,c=0;if(i=e[t+4>>2]|0,u=t+8|0,n=e[u>>2]|0,(n|0)!=(i|0))do c=n+-24|0,e[u>>2]=c,yl(c),n=e[u>>2]|0;while((n|0)!=(i|0));n=e[t>>2]|0,n|0&&Ft(n,(e[t+12>>2]|0)-n|0)}function yy(t){return t=t|0,178956970}function gy(t){t=t|0,L(t)}function vy(t){return t=t|0,t=J(8)|0,e[t>>2]=4372,t|0}function wy(t,n){t=t|0,n=n|0,e[n>>2]=4372}function _y(t){t=t|0}function Fy(t){t=t|0,Ft(t,8)}function By(t,n){t=t|0,n=n|0,Ry(t+4|0,n)}function Iy(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==7183?t+4|0:0)|0}function Sy(t){return t=t|0,2664}function Ty(t){t=t|0}function Ry(t,n){t=t|0,n=n|0,Uy(t,n)}function Uy(t,n){t=t|0,n=n|0;var i=0,u=0;if(t=n+104|0,n=S[t>>0]|0,i=n>>>7,u=n>>>6&1,(i|0)==1&(u|0)!=0&&(u=Lt(8)|0,Vy(u),Jt(u|0,2632,8)),(i|0)==(u|0))u=Lt(8)|0,xy(u),Jt(u|0,2648,8);else{d[t>>0]=n&63;return}}function Vy(t){t=t|0,Gr(t,7076),e[t>>2]=4416}function xy(t){t=t|0,Gr(t,7144),e[t>>2]=4436}function by(t){t=t|0,Ar(t),L(t)}function My(t){t=t|0,Ar(t),L(t)}function Ny(t){t=t|0,e[t>>2]=6092}function tu(t){t=t|0;var n=0;return n=t+12|0,t=(d[n>>0]|0)==0,d[n>>0]=0,t|0}function ky(t){return t=t|0,(d[t+13>>0]|0)!=0|0}function Oy(t,n){t=t|0,n=n|0,t=t+247|0,Ey(t,n),(S[t>>0]|S[t+1>>0]<<8)<<16>>16!=2&&(n=Lt(8)|0,r2(n),Jt(n|0,2688,8))}function Zy(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;switch(u|0){case 0:break;case 2:{u=e[t+4>>2]|0,n=Ur(Ur(n|0,i|0,-1,-1)|0,Vt()|0,u|0,((u|0)<0)<<31>>31|0)|0,i=Vt()|0;break}case 1:{u=e[t+8>>2]|0,n=Ur(u|0,((u|0)<0)<<31>>31|0,n|0,i|0)|0,i=Vt()|0;break}default:i=0,n=0}c=e[t+4>>2]|0,f=((c|0)<0)<<31>>31,u=t+12|0,(i|0)<0|((i|0)>(f|0)|(i|0)==(f|0)&n>>>0>=c>>>0)?d[u>>0]=1:(d[u>>0]=0,e[t+8>>2]=n)}function Dy(t){t=t|0,Gr(t,7410),e[t>>2]=4476}function Wy(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0,g=0;if(a=y,y=y+16|0,f=a,t2(t),c=n+32|0,(S[c>>0]|S[c+1>>0]<<8)<<16>>16){u=n+34|0,n=0;do p=S[u>>0]|S[u+1>>0]<<8|S[u+2>>0]<<16|S[u+3>>0]<<24,g=p+(n*6|0)|0,h=p+(n*6|0)+2|0,p=p+(n*6|0)+4|0,Ms(f,(S[g>>0]|S[g+1>>0]<<8)&65535,(S[h>>0]|S[h+1>>0]<<8)&65535,(S[p>>0]|S[p+1>>0]<<8)&65535),n2(t,f),i=i-((S[h>>0]|S[h+1>>0]<<8)&65535)|0,n=n+1|0;while(n>>>0<((S[c>>0]|S[c+1>>0]<<8)&65535)>>>0)}(i|0)<0&&(g=Lt(8)|0,r2(g),Jt(g|0,2688,8)),i|0&&(Ms(f,0,i,2),n2(t,f)),y=a}function zy(t,n){t=t|0,n=n|0;var i=0,u=0;return i=y,y=y+16|0,u=i+1|0,d[u>>0]=d[i>>0]|0,Hy(t,n,u),y=i,t|0}function Ey(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;if(u=n+2|0,f=S[n>>0]|S[n+1>>0]<<8,d[t>>0]=f,d[t+1>>0]=f>>8,f=t+2|0,u=S[u>>0]|S[u+1>>0]<<8,d[f>>0]=u,d[f+1>>0]=u>>8,d[t+4>>0]=d[n+4>>0]|0,f=n+6|0,d[t+5>>0]=d[n+5>>0]|0,u=n+8|0,i=t+6|0,f=S[f>>0]|S[f+1>>0]<<8,d[i>>0]=f,d[i+1>>0]=f>>8,i=n+12|0,f=t+8|0,u=S[u>>0]|S[u+1>>0]<<8|S[u+2>>0]<<16|S[u+3>>0]<<24,d[f>>0]=u,d[f+1>>0]=u>>8,d[f+2>>0]=u>>16,d[f+3>>0]=u>>24,f=t+12|0,i=S[i>>0]|S[i+1>>0]<<8|S[i+2>>0]<<16|S[i+3>>0]<<24,d[f>>0]=i,d[f+1>>0]=i>>8,d[f+2>>0]=i>>16,d[f+3>>0]=i>>24,f=n+16|0,i=f,i=S[i>>0]|S[i+1>>0]<<8|S[i+2>>0]<<16|S[i+3>>0]<<24,f=f+4|0,f=S[f>>0]|S[f+1>>0]<<8|S[f+2>>0]<<16|S[f+3>>0]<<24,u=t+16|0,a=u,d[a>>0]=i,d[a+1>>0]=i>>8,d[a+2>>0]=i>>16,d[a+3>>0]=i>>24,u=u+4|0,d[u>>0]=f,d[u+1>>0]=f>>8,d[u+2>>0]=f>>16,d[u+3>>0]=f>>24,u=n+32|0,f=n+24|0,a=f,a=S[a>>0]|S[a+1>>0]<<8|S[a+2>>0]<<16|S[a+3>>0]<<24,f=f+4|0,f=S[f>>0]|S[f+1>>0]<<8|S[f+2>>0]<<16|S[f+3>>0]<<24,i=t+24|0,c=i,d[c>>0]=a,d[c+1>>0]=a>>8,d[c+2>>0]=a>>16,d[c+3>>0]=a>>24,i=i+4|0,d[i>>0]=f,d[i+1>>0]=f>>8,d[i+2>>0]=f>>16,d[i+3>>0]=f>>24,i=n+34|0,f=t+32|0,u=S[u>>0]|S[u+1>>0]<<8,d[f>>0]=u,d[f+1>>0]=u>>8,c=t+34|0,t=S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24,t?(Hh(t),t=S[f>>0]|S[f+1>>0]<<8):t=u,u=Ph((t&65535)*6|0)|0,d[c>>0]=u,d[c+1>>0]=u>>8,d[c+2>>0]=u>>16,d[c+3>>0]=u>>24,t<<16>>16&&(t=n+36|0,a=S[i>>0]|S[i+1>>0]<<8,d[u>>0]=a,d[u+1>>0]=a>>8,n=n+38|0,a=u+2|0,t=S[t>>0]|S[t+1>>0]<<8,d[a>>0]=t,d[a+1>>0]=t>>8,a=u+4|0,n=S[n>>0]|S[n+1>>0]<<8,d[a>>0]=n,d[a+1>>0]=n>>8,((S[f>>0]|S[f+1>>0]<<8)&65535)>1)){t=1;do n=i,i=i+6|0,a=S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24,h=n+8|0,u=a+(t*6|0)|0,p=S[i>>0]|S[i+1>>0]<<8,d[u>>0]=p,d[u+1>>0]=p>>8,n=n+10|0,u=a+(t*6|0)+2|0,h=S[h>>0]|S[h+1>>0]<<8,d[u>>0]=h,d[u+1>>0]=h>>8,a=a+(t*6|0)+4|0,n=S[n>>0]|S[n+1>>0]<<8,d[a>>0]=n,d[a+1>>0]=n>>8,t=t+1|0;while(t>>>0<((S[f>>0]|S[f+1>>0]<<8)&65535)>>>0)}}function r2(t){t=t|0,Gr(t,7354),e[t>>2]=4456}function Xy(t){t=t|0,Ar(t),L(t)}function Gy(t){t=t|0,Ar(t),L(t)}function n2(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0;h=y,y=y+32|0,c=h,f=t+4|0,i=e[f>>2]|0,a=t+8|0;do if((i|0)==(e[a>>2]|0))if(i=((i-(e[t>>2]|0)|0)/12|0)+1|0,u=Py(t)|0,u>>>0<i>>>0)xe(t);else{p=e[t>>2]|0,g=((e[a>>2]|0)-p|0)/12|0,a=g<<1,Ly(c,g>>>0<u>>>1>>>0?a>>>0<i>>>0?i:a:u,((e[f>>2]|0)-p|0)/12|0,t+8|0),a=c+8|0,f=e[a>>2]|0,e[f>>2]=e[n>>2],e[f+4>>2]=e[n+4>>2],e[f+8>>2]=e[n+8>>2],e[a>>2]=(e[a>>2]|0)+12,Jy(t,c),Yy(c);break}else Cy(c,t,1),g=c+4|0,p=e[g>>2]|0,e[p>>2]=e[n>>2],e[p+4>>2]=e[n+4>>2],e[p+8>>2]=e[n+8>>2],e[g>>2]=(e[g>>2]|0)+12,jy(c);while(0);y=h}function Ms(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0,e[t>>2]=n,e[t+4>>2]=i,e[t+8>>2]=u}function Cy(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,n=e[n+4>>2]|0,e[t+4>>2]=n,e[t+8>>2]=n+(i*12|0)}function jy(t){t=t|0,e[(e[t>>2]|0)+4>>2]=e[t+4>>2]}function Ly(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;c=t+12|0,e[c>>2]=0,e[t+16>>2]=u;do if(n)if(n>>>0>357913941)c=Lt(8)|0,Gn(c,6723),e[c>>2]=5956,Jt(c|0,3928,123);else{u=J(n*12|0)|0;break}else u=0;while(0);e[t>>2]=u,i=u+(i*12|0)|0,e[t+8>>2]=i,e[t+4>>2]=i,e[c>>2]=u+(n*12|0)}function Jy(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;u=e[t>>2]|0,a=t+4|0,f=n+4|0,c=(e[a>>2]|0)-u|0,i=(e[f>>2]|0)+(((c|0)/-12|0)*12|0)|0,e[f>>2]=i,(c|0)>0?(pr(i|0,u|0,c|0)|0,u=f,i=e[f>>2]|0):u=f,f=e[t>>2]|0,e[t>>2]=i,e[u>>2]=f,f=n+8|0,c=e[a>>2]|0,e[a>>2]=e[f>>2],e[f>>2]=c,f=t+8|0,a=n+12|0,t=e[f>>2]|0,e[f>>2]=e[a>>2],e[a>>2]=t,e[n>>2]=e[u>>2]}function Yy(t){t=t|0;var n=0,i=0,u=0;n=e[t+4>>2]|0,i=t+8|0,u=e[i>>2]|0,(u|0)!=(n|0)&&(e[i>>2]=u+(~(((u+-12-n|0)>>>0)/12|0)*12|0)),n=e[t>>2]|0,n|0&&Ft(n,(e[t+12>>2]|0)-n|0)}function Py(t){return t=t|0,357913941}function Hy(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;Qy(t),e[t>>2]=e[n>>2],i=n+4|0,e[t+4>>2]=e[i>>2],u=n+8|0,e[t+8>>2]=e[u>>2],e[u>>2]=0,e[i>>2]=0,e[n>>2]=0}function Qy(t){t=t|0;var n=0,i=0,u=0,c=0;n=e[t>>2]|0,i=n,n|0&&(u=t+4|0,e[u>>2]=i,c=t+8|0,Ft(n,(e[c>>2]|0)-i|0),e[c>>2]=0,e[u>>2]=0,e[t>>2]=0)}function vl(t){t=t|0,Gr(t,7660),e[t>>2]=4496}function i2(t,n){t=t|0,n=n|0,Gr(t,n),e[t>>2]=4516}function $y(t){t=t|0,Gr(t,7704),e[t>>2]=4536}function qy(t,n){t=t|0,n=n|0;var i=0,u=0,c=0;i=t+4|0,c=e[t>>2]|0,u=(e[i>>2]|0)-c>>3,u>>>0>=n>>>0?u>>>0>n>>>0&&(e[i>>2]=c+(n<<3)):r4(t,n-u|0)}function s2(t,n){t=t|0,n=n|0,e[t>>2]=n,e[t+4>>2]=0,e[t+8>>2]=-1}function fr(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0;e[t+4>>2]=n,e[t+8>>2]=i,e[t+12>>2]=u,e[t+16>>2]=c,e[t+36>>2]=0,e[t+40>>2]=0,e[t+44>>2]=0,u2(t+48|0),e[t+68>>2]=0,e[t+72>>2]=0,e[t+76>>2]=0;do if(c){for(u=t+20|0,e[u>>2]=0,e[t+24>>2]=c,i=c,f=0;i=i>>>1,n=f+1|0,i;)f=n;e[u>>2]=(1<<f|0)==(c|0)?f:n,i=c>>>1,e[t+28>>2]=0-i,i=c+-1-i|0}else if(i=t+20|0,(n+-1|0)>>>0<31){e[i>>2]=n,c=1<<n,e[t+24>>2]=c,i=c>>>1,e[t+28>>2]=0-i,i=c+-1-i|0;break}else{e[i>>2]=32,e[t+24>>2]=0,e[t+28>>2]=-2147483648,i=2147483647;break}while(0);e[t+32>>2]=i,e[t>>2]=0}function wl(t){t=t|0;var n=0;n=((Ns(e[t>>2]|0)|0)&255)<<24,n=((Ns(e[t>>2]|0)|0)&255)<<16|n,n=n|((Ns(e[t>>2]|0)|0)&255)<<8,e[t+4>>2]=n|(Ns(e[t>>2]|0)|0)&255}function ar(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0,q=0,X=0,E=0;b=y,y=y+64|0,M=b+44|0,N=b,g=t+36|0,F=t+40|0;t:do if((e[g>>2]|0)==(e[F>>2]|0)){I=t+8|0;e:do if(!(e[I>>2]|0))U=t+20|0;else{for(c=t+20|0,f=t+44|0,a=M+4|0,h=t+44|0,p=M+8|0,u=0;;){if(ye(N,(e[c>>2]|0)+1|0,0,0),n=e[F>>2]|0,n>>>0<(e[f>>2]|0)>>>0)l2(M,g,1),ru(e[a>>2]|0,N),e[a>>2]=(e[a>>2]|0)+44,f2(M);else{if(n=((n-(e[g>>2]|0)|0)/44|0)+1|0,i=A2(g)|0,i>>>0<n>>>0)break;q=e[g>>2]|0,E=((e[f>>2]|0)-q|0)/44|0,X=E<<1,a2(M,E>>>0<i>>>1>>>0?X>>>0<n>>>0?n:X:i,((e[F>>2]|0)-q|0)/44|0,h),ru(e[p>>2]|0,N),e[p>>2]=(e[p>>2]|0)+44,h2(g,M),d2(M)}if(re(N),u=u+1|0,u>>>0>=(e[I>>2]|0)>>>0){U=c;break e}}xe(g)}while(0);if(e[U>>2]|0){for(a=t+12|0,h=t+68|0,p=t+72|0,g=t+76|0,F=M+4|0,c=t+76|0,f=M+8|0,u=1;;){if(n=e[a>>2]|0,ye(N,1<<(u>>>0>n>>>0?n:u),0,0),n=e[p>>2]|0,n>>>0<(e[g>>2]|0)>>>0)l2(M,h,1),ru(e[F>>2]|0,N),e[F>>2]=(e[F>>2]|0)+44,f2(M);else{if(n=((n-(e[h>>2]|0)|0)/44|0)+1|0,i=A2(h)|0,i>>>0<n>>>0)break;E=e[h>>2]|0,q=((e[g>>2]|0)-E|0)/44|0,X=q<<1,a2(M,q>>>0<i>>>1>>>0?X>>>0<n>>>0?n:X:i,((e[p>>2]|0)-E|0)/44|0,c),ru(e[f>>2]|0,N),e[f>>2]=(e[f>>2]|0)+44,h2(h,M),d2(M)}if(re(N),u=u+1|0,u>>>0>(e[U>>2]|0)>>>0)break t}xe(h)}}while(0);y=b}function Ve(t,n,i,u){return t=t|0,n=n|0,i=i|0,u=u|0,i=(m4(t,n,(e[t+36>>2]|0)+(u*44|0)|0)|0)+i|0,n=e[t+24>>2]|0,(i|0)<0?i+n|0:i-(i>>>0<n>>>0?0:n)|0}function hr(t){t=t|0,eu(t+68|0),eu(t+36|0)}function o2(t){t=t|0}function Ky(t){t=t|0,Ar(t),L(t)}function t4(t){t=t|0,Ar(t),L(t)}function e4(t){t=t|0,Ar(t),L(t)}function r4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0;h=y,y=y+32|0,c=h,f=t+8|0,a=t+4|0,i=e[a>>2]|0;do if((e[f>>2]|0)-i>>3>>>0<n>>>0)if(i=(i-(e[t>>2]|0)>>3)+n|0,u=f4(t)|0,u>>>0<i>>>0)xe(t);else{p=e[t>>2]|0,g=(e[f>>2]|0)-p|0,f=g>>2,i4(c,g>>3>>>0<u>>>1>>>0?f>>>0<i>>>0?i:f:u,(e[a>>2]|0)-p>>3,t+8|0),s4(c,n),o4(t,c),u4(c);break}else n4(t,n);while(0);y=h}function n4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0;c=y,y=y+16|0,u=c,c4(u,t,n),t=u+4|0,n=e[t>>2]|0,i=e[u+8>>2]|0,(n|0)!=(i|0)&&(i=i+-8-n|0,Zi(n|0,0,i+8&-8|0)|0,e[t>>2]=n+((i>>>3)+1<<3)),l4(u),y=c}function i4(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;c=t+12|0,e[c>>2]=0,e[t+16>>2]=u;do if(n)if(n>>>0>536870911)c=Lt(8)|0,Gn(c,6723),e[c>>2]=5956,Jt(c|0,3928,123);else{u=J(n<<3)|0;break}else u=0;while(0);e[t>>2]=u,i=u+(i<<3)|0,e[t+8>>2]=i,e[t+4>>2]=i,e[c>>2]=u+(n<<3)}function s4(t,n){t=t|0,n=n|0;var i=0,u=0;u=y,y=y+16|0,i=u,a4(i,t+8|0,n),t=e[i>>2]|0,n=e[i+4>>2]|0,(t|0)!=(n|0)&&(n=n+-8-t|0,Zi(t|0,0,n+8&-8|0)|0,e[i>>2]=t+((n>>>3)+1<<3)),h4(i),y=u}function o4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;u=e[t>>2]|0,a=t+4|0,f=n+4|0,c=(e[a>>2]|0)-u|0,i=(e[f>>2]|0)+(0-(c>>3)<<3)|0,e[f>>2]=i,(c|0)>0?(pr(i|0,u|0,c|0)|0,u=f,i=e[f>>2]|0):u=f,f=e[t>>2]|0,e[t>>2]=i,e[u>>2]=f,f=n+8|0,c=e[a>>2]|0,e[a>>2]=e[f>>2],e[f>>2]=c,f=t+8|0,a=n+12|0,t=e[f>>2]|0,e[f>>2]=e[a>>2],e[a>>2]=t,e[n>>2]=e[u>>2]}function u4(t){t=t|0;var n=0,i=0,u=0;n=e[t+4>>2]|0,i=t+8|0,u=e[i>>2]|0,(u|0)!=(n|0)&&(e[i>>2]=u+(~((u+-8-n|0)>>>3)<<3)),n=e[t>>2]|0,n|0&&Ft(n,(e[t+12>>2]|0)-n|0)}function c4(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,n=e[n+4>>2]|0,e[t+4>>2]=n,e[t+8>>2]=n+(i<<3)}function l4(t){t=t|0,e[(e[t>>2]|0)+4>>2]=e[t+4>>2]}function f4(t){return t=t|0,536870911}function a4(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=e[n>>2],e[t+4>>2]=(e[n>>2]|0)+(i<<3),e[t+8>>2]=n}function h4(t){t=t|0,e[e[t+8>>2]>>2]=e[t>>2]}function u2(t){t=t|0,e[t+12>>2]=1,e[t+16>>2]=2,e[t+8>>2]=4096,e[t+4>>2]=4,e[t>>2]=4}function eu(t){t=t|0;var n=0,i=0,u=0;if(i=e[t>>2]|0,i|0){if(u=t+4|0,n=e[u>>2]|0,(n|0)==(i|0))n=i;else{do n=n+-44|0,re(n);while((n|0)!=(i|0));n=e[t>>2]|0}e[u>>2]=i,Ft(n,(e[t+8>>2]|0)-n|0)}}function re(t){t=t|0;var n=0;n=e[t+8>>2]|0,n|0&&Ko(n),n=e[t+12>>2]|0,n|0&&Ko(n),n=e[t+16>>2]|0,n|0&&Ko(n)}function Ns(t){t=t|0;var n=0,i=0;return i=t+4|0,n=e[i>>2]|0,(n|0)>=(e[t+8>>2]|0)&&(c2(t),n=e[i>>2]|0),t=e[t+12>>2]|0,e[i>>2]=n+1,d[t+n>>0]|0}function c2(t){t=t|0;var n=0;if(e[t+4>>2]=0,Si(e[t>>2]|0,e[t+12>>2]|0,1048576),n=d4(e[t>>2]|0)|0,e[t+8>>2]=n,!n)n=Lt(8)|0,A4(n),Jt(n|0,2752,8);else return}function d4(t){return t=t|0,e[t+16>>2]|0}function A4(t){t=t|0,Gr(t,7769),e[t>>2]=4556}function p4(t){t=t|0,Ar(t),L(t)}function ye(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0,a=0;if(e[t>>2]=n,d[t+4>>0]=i&1,f=t+8|0,e[f>>2]=0,a=t+12|0,e[a>>2]=0,c=t+16|0,e[c>>2]=0,(n+-2|0)>>>0>2046&&(t=Lt(8)|0,Gr(t,7789),Jt(t|0,3912,8)),e[t+32>>2]=n+-1,n>>>0>16&(i^1)){for(i=3;1<<i+2>>>0<n>>>0;)i=i+1|0;n=1<<i,e[t+36>>2]=n,e[t+40>>2]=15-i,e[c>>2]=Ii((n<<2)+8|0)|0,n=e[t>>2]|0}else e[c>>2]=0,e[t+40>>2]=0,e[t+36>>2]=0;if(e[f>>2]=Ii(n<<2)|0,c=Ii(e[t>>2]<<2)|0,e[a>>2]=c,e[t+20>>2]=0,n=e[t>>2]|0,i=t+24|0,e[i>>2]=n,n=(n|0)!=0,u){if(n){n=0;do e[c+(n<<2)>>2]=e[u+(n<<2)>>2],n=n+1|0;while(n>>>0<(e[t>>2]|0)>>>0)}}else if(n){n=0;do e[c+(n<<2)>>2]=1,n=n+1|0;while(n>>>0<(e[t>>2]|0)>>>0)}Fl(t),u=((e[t>>2]|0)+6|0)>>>1,e[i>>2]=u,e[t+28>>2]=u}function l2(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,n=e[n+4>>2]|0,e[t+4>>2]=n,e[t+8>>2]=n+(i*44|0)}function f2(t){t=t|0,e[(e[t>>2]|0)+4>>2]=e[t+4>>2]}function ru(t,n){t=t|0,n=n|0;var i=0;e[t>>2]=e[n>>2],d[t+4>>0]=d[n+4>>0]|0,i=n+8|0,e[t+8>>2]=e[i>>2],e[t+12>>2]=e[n+12>>2],e[t+16>>2]=e[n+16>>2],e[t+20>>2]=e[n+20>>2],e[t+24>>2]=e[n+24>>2],e[t+28>>2]=e[n+28>>2],e[t+32>>2]=e[n+32>>2],e[t+36>>2]=e[n+36>>2],e[t+40>>2]=e[n+40>>2],e[i>>2]=0,e[i+4>>2]=0,e[i+8>>2]=0}function a2(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;c=t+12|0,e[c>>2]=0,e[t+16>>2]=u;do if(n)if(n>>>0>97612893)c=Lt(8)|0,Gn(c,6723),e[c>>2]=5956,Jt(c|0,3928,123);else{u=J(n*44|0)|0;break}else u=0;while(0);e[t>>2]=u,i=u+(i*44|0)|0,e[t+8>>2]=i,e[t+4>>2]=i,e[c>>2]=u+(n*44|0)}function h2(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;if(h=e[t>>2]|0,p=t+4|0,i=e[p>>2]|0,a=n+4|0,(i|0)==(h|0))c=a,f=t,u=e[a>>2]|0,i=h;else{u=e[a>>2]|0;do i=i+-44|0,_l(u+-44|0,i),u=(e[a>>2]|0)+-44|0,e[a>>2]=u;while((i|0)!=(h|0));c=a,f=t,i=e[t>>2]|0}e[f>>2]=u,e[c>>2]=i,h=n+8|0,a=e[p>>2]|0,e[p>>2]=e[h>>2],e[h>>2]=a,h=t+8|0,p=n+12|0,t=e[h>>2]|0,e[h>>2]=e[p>>2],e[p>>2]=t,e[n>>2]=e[c>>2]}function d2(t){t=t|0;var n=0,i=0,u=0,c=0;if(i=e[t+4>>2]|0,u=t+8|0,n=e[u>>2]|0,(n|0)!=(i|0))do c=n+-44|0,e[u>>2]=c,re(c),n=e[u>>2]|0;while((n|0)!=(i|0));n=e[t>>2]|0,n|0&&Ft(n,(e[t+12>>2]|0)-n|0)}function A2(t){return t=t|0,97612893}function _l(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;i=e[n>>2]|0,e[t>>2]=i,d[t+4>>0]=d[n+4>>0]|0,e[t+20>>2]=e[n+20>>2],e[t+24>>2]=e[n+24>>2],e[t+28>>2]=e[n+28>>2],e[t+32>>2]=e[n+32>>2],f=t+36|0,e[f>>2]=e[n+36>>2],e[t+40>>2]=e[n+40>>2],i=i<<2,u=Ii(i)|0,e[t+8>>2]=u,c=e[t>>2]|0,c|0&&Vr(u|0,e[n+8>>2]|0,c<<2|0)|0,i=Ii(i)|0,e[t+12>>2]=i,u=e[t>>2]|0,u|0&&Vr(i|0,e[n+12>>2]|0,u<<2|0)|0,i=e[f>>2]|0,i?(u=Ii((i<<2)+8|0)|0,e[t+16>>2]=u,i=(e[f>>2]<<2)+8|0,i|0&&Vr(u|0,e[n+16>>2]|0,i|0)|0):e[t+16>>2]=0}function Fl(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0;if(N=t+24|0,c=t+20|0,n=(e[c>>2]|0)+(e[N>>2]|0)|0,e[c>>2]=n,n>>>0>32768)if(e[c>>2]=0,!(e[t>>2]|0))n=0;else{u=e[t+12>>2]|0,i=0;do I=u+(i<<2)|0,n=((e[I>>2]|0)+1|0)>>>1,e[I>>2]=n,n=(e[c>>2]|0)+n|0,e[c>>2]=n,i=i+1|0;while(i>>>0<(e[t>>2]|0)>>>0)}I=2147483648/(n>>>0)|0;do if(!(d[t+4>>0]|0)&&(U=t+36|0,(e[U>>2]|0)!=0)){if(e[t>>2]|0){h=e[t+8>>2]|0,p=e[t+12>>2]|0,g=t+40|0,F=t+16|0,n=0,f=0,a=0;do{if(i=(It(f,I)|0)>>>16,e[h+(a<<2)>>2]=i,f=(e[p+(a<<2)>>2]|0)+f|0,i=i>>>(e[g>>2]|0),n>>>0<i>>>0){u=a+-1|0,c=e[F>>2]|0;do n=n+1|0,e[c+(n<<2)>>2]=u;while((n|0)!=(i|0));n=i}a=a+1|0}while(a>>>0<(e[t>>2]|0)>>>0);if(i=e[F>>2]|0,e[i>>2]=0,n>>>0>(e[U>>2]|0)>>>0){n=t;break}}else i=e[t+16>>2]|0,e[i>>2]=0,n=0;do n=n+1|0,e[i+(n<<2)>>2]=(e[t>>2]|0)+-1;while(n>>>0<=(e[U>>2]|0)>>>0);n=t}else M=7;while(0);if((M|0)==7)if(!(e[t>>2]|0))n=t;else{u=e[t+8>>2]|0,c=e[t+12>>2]|0,n=0,i=0;do e[u+(n<<2)>>2]=(It(i,I)|0)>>>16,i=(e[c+(n<<2)>>2]|0)+i|0,n=n+1|0;while(n>>>0<(e[t>>2]|0)>>>0);n=t}M=((e[N>>2]|0)*5|0)>>>2,U=(e[n>>2]<<3)+48|0,M=M>>>0>U>>>0?U:M,e[N>>2]=M,e[t+28>>2]=M}function m4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;i=ge(n,i)|0,e[t>>2]=i;do if(i){if(i>>>0>=32){i=e[t+28>>2]|0;break}if(u=e[t+12>>2]|0,i>>>0>u>>>0?(u=i-u|0,i=ge(n,(e[t+68>>2]|0)+((i+-1|0)*44|0)|0)|0,u=i<<u|(p2(n,u)|0)):u=ge(n,(e[t+68>>2]|0)+((i+-1|0)*44|0)|0)|0,i=e[t>>2]|0,(u|0)<(1<<i+-1|0)){i=u+1+(-1<<i)|0;break}else{i=u+1|0;break}}else i=y4(n,t+48|0)|0;while(0);return i|0}function ge(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0;if(U=t+8|0,I=e[U>>2]|0,c=e[n+16>>2]|0,c){if(u=t+4|0,i=e[u>>2]|0,F=I>>>15,e[U>>2]=F,p=(i>>>0)/(F>>>0)|0,h=p>>>(e[n+40>>2]|0),f=e[c+(h<<2)>>2]|0,h=(e[c+(h+1<<2)>>2]|0)+1|0,a=f+1|0,g=e[n+8>>2]|0,h>>>0>a>>>0){c=f,f=h;do a=(f+c|0)>>>1,h=(e[g+(a<<2)>>2]|0)>>>0>p>>>0,c=h?c:a,f=h?a:f,a=c+1|0;while(f>>>0>a>>>0);f=c}c=It(e[g+(f<<2)>>2]|0,F)|0,(f|0)==(e[n+32>>2]|0)?a=I:a=It(e[g+(a<<2)>>2]|0,F)|0}else{g=I>>>15,e[U>>2]=g,h=e[n>>2]|0,F=e[n+8>>2]|0,u=t+4|0,i=e[u>>2]|0,p=h>>>1,c=0,a=I,f=0;do M=It(e[F+(p<<2)>>2]|0,g)|0,I=M>>>0>i>>>0,a=I?M:a,c=I?c:M,f=I?f:p,h=I?p:h,p=(f+h|0)>>>1;while((p|0)!=(f|0))}return e[u>>2]=i-c,M=a-c|0,e[U>>2]=M,M>>>0<16777216&&nu(t),U=(e[n+12>>2]|0)+(f<<2)|0,e[U>>2]=(e[U>>2]|0)+1,U=n+28|0,M=(e[U>>2]|0)+-1|0,e[U>>2]=M,M||Fl(n),f|0}function p2(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;return n>>>0>19?(i=(Bl(t)|0)&65535,(p2(t,n+-16|0)|0)<<16|i|0):(u=t+4|0,c=e[u>>2]|0,f=t+8|0,i=(e[f>>2]|0)>>>n,e[f>>2]=i,n=(c>>>0)/(i>>>0)|0,e[u>>2]=c-(It(n,i)|0),i>>>0<16777216&&nu(t),n|0)}function y4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0;return u=t+8|0,c=e[u>>2]|0,i=It(c>>>13,e[n+8>>2]|0)|0,f=t+4|0,a=e[f>>2]|0,h=a>>>0>=i>>>0,h?(e[f>>2]=a-i,i=c-i|0,e[u>>2]=i):(e[u>>2]=i,a=n+12|0,e[a>>2]=(e[a>>2]|0)+1),i>>>0<16777216&&nu(t),a=n+4|0,t=(e[a>>2]|0)+-1|0,e[a>>2]=t,t||m2(n),h&1|0}function nu(t){t=t|0;var n=0,i=0,u=0,c=0;n=t+4|0,i=t+8|0,u=e[n>>2]|0;do u=u<<8|(Ns(e[t>>2]|0)|0)&255,e[n>>2]=u,c=e[i>>2]<<8,e[i>>2]=c;while(c>>>0<16777216)}function Bl(t){t=t|0;var n=0,i=0,u=0,c=0;return i=t+4|0,c=e[i>>2]|0,n=t+8|0,u=(e[n>>2]|0)>>>16,e[n>>2]=u,n=(c>>>0)/(u>>>0)|0,e[i>>2]=c-(It(n,u)|0),nu(t),n&65535|0}function m2(t){t=t|0;var n=0,i=0,u=0,c=0,f=0;c=e[t>>2]|0,i=t+16|0,n=(e[i>>2]|0)+c|0,e[i>>2]=n,n>>>0>8192?(u=(n+1|0)>>>1,e[i>>2]=u,f=t+12|0,n=((e[f>>2]|0)+1|0)>>>1,e[f>>2]=n,(n|0)==(u|0)?(n=u+1|0,e[i>>2]=n,i=n,n=u):i=u):(i=n,n=e[t+12>>2]|0),e[t+8>>2]=(It(n,2147483648/(i>>>0)|0)|0)>>>18,f=c*5|0,f=f>>>0>259?64:f>>>2,e[t>>2]=f,e[t+4>>2]=f}function g4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0;F=y,y=y+32|0,f=F+16|0,a=F+8|0,h=F,p=t+336|0,u=p,c=t+259|0,!(e[u+4>>2]|0)&&(e[u>>2]|0)==(S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24|0)?(u=t+320|0,i=e[t+320>>2]|0,g=5):(u=t+320|0,i=e[u>>2]|0,c=i,i|0&&e[t+312>>2]|0||(i=c,g=5)),(g|0)==5&&(g=t+320|0,e[f>>2]=i,e[g>>2]=0,i=t+324|0,e[f+4>>2]=e[i>>2],e[i>>2]=0,qo(f),c=t+312|0,e[f>>2]=e[c>>2],e[c>>2]=0,I=t+316|0,e[f+4>>2]=e[I>>2],e[I>>2]=0,ml(f),U=J(12)|0,s2(U,t+4|0),e[h>>2]=0,e[f>>2]=e[h>>2],w4(a,U,f),U=e[a>>2]|0,e[a>>2]=e[c>>2],e[c>>2]=U,U=a+4|0,h=e[U>>2]|0,e[U>>2]=e[I>>2],e[I>>2]=h,ml(a),v4(a,e[c>>2]|0,t+300|0),c=e[a>>2]|0,I=a+4|0,h=e[I>>2]|0,e[a>>2]=0,e[I>>2]=0,e[f>>2]=e[g>>2],e[g>>2]=c,e[f+4>>2]=e[i>>2],e[i>>2]=h,qo(f),qo(a),i=t+328|0,h=i,h=Ur(e[h>>2]|0,e[h+4>>2]|0,1,0)|0,g=Vt()|0,e[i>>2]=h,e[i+4>>2]=g,i=p,e[i>>2]=0,e[i+4>>2]=0,i=e[u>>2]|0),Js[e[e[i>>2]>>2]&63](i,n)|0,g=p,g=Ur(e[g>>2]|0,e[g+4>>2]|0,1,0)|0,I=Vt()|0,U=p,e[U>>2]=g,e[U+4>>2]=I,y=F}function v4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;a=y,y=y+64|0,u=a+56|0,c=a,f=T4(i)|0,(f|0)==-1&&(a=Lt(8)|0,R4(a),Jt(a|0,2784,8)),i=y2(i)|0;t:do if(i)U4(u,n),V4(e[u>>2]|0),(f|2|0)==3&&x4(e[u>>2]|0),(f|1|0)==3&&b4(e[u>>2]|0),f=e[u>>2]|0,N4(c,i),M4(f,c),g2(c),e[t>>2]=e[u>>2],f=u+4|0,e[t+4>>2]=e[f>>2],e[u>>2]=0,e[f>>2]=0,k4(u);else switch(f|0){case 0:{f=J(4788)|0,Z4(f),O4(t,n,f);break t}case 1:{f=J(5116)|0,W4(f),D4(t,n,f);break t}case 2:{f=J(5104)|0,E4(f),z4(t,n,f);break t}case 3:{f=J(5432)|0,G4(f),X4(t,n,f);break t}default:{e[t>>2]=0,e[t+4>>2]=0;break t}}while(0);y=a}function w4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4576,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,_4(t,u),y=i}function _4(t,n){t=t|0,n=n|0}function F4(t){t=t|0,oe(t),L(t)}function B4(t){t=t|0,t=e[t+12>>2]|0,t|0&&(o2(t),L(t))}function I4(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==7983?t+12|0:0)|0}function S4(t){t=t|0,Ft(t,16)}function T4(t){t=t|0;var n=0,i=0;n=(e[t+4>>2]|0)-(e[t>>2]|0)|0;t:do if(n|0&&(i=((n|0)/12|0)+(((y2(t)|0)!=0)<<31>>31)|0,(i|0)!=0)&&(n=e[t>>2]|0,!(C4(n,j4()|0)|0))){switch(i|0){case 1:{t=0;break t}case 2:{if(ks((e[t>>2]|0)+12|0,v2()|0)|0){t=1;break t}if(ks((e[t>>2]|0)+12|0,w2()|0)|0){t=2;break t}break}case 3:{if(ks((e[t>>2]|0)+12|0,v2()|0)|0&&(i=(e[t>>2]|0)+24|0,ks(i,w2()|0)|0)){t=3;break t}break}default:}t=-1}else t=-1;while(0);return t|0}function R4(t){t=t|0,Gr(t,8131),e[t>>2]=4604}function y2(t){t=t|0;var n=0,i=0;return n=e[t+4>>2]|0,(n|0)!=(e[t>>2]|0)&&(i=n,(e[i+-12>>2]|0)==0)&&(e[i+-4>>2]|0)==2?t=e[i+-8>>2]|0:t=0,t|0}function U4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;i=y,y=y+16|0,u=i+4|0,f=i,c=J(24)|0,J4(c,n),e[f>>2]=0,e[u>>2]=e[f>>2],Y4(t,c,u),y=i}function V4(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(4792)|0,rg(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],ng(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function x4(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(336)|0,Ig(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],Sg(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function b4(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(324)|0,Cg(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],jg(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function M4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,a=p+12|0,h=p,u=p+8|0,f=J(64)|0,tv(f,e[t+4>>2]|0,n),c=t+8|0,e[u>>2]=0,e[a>>2]=e[u>>2],ev(h,f,a),f=t+12|0,n=e[f>>2]|0,u=t+16|0;do if(n>>>0>=(e[u>>2]|0)>>>0)if(n=(n-(e[c>>2]|0)>>3)+1|0,i=an(c)|0,i>>>0<n>>>0)xe(c);else{g=e[c>>2]|0,F=(e[u>>2]|0)-g|0,u=F>>2,cn(a,F>>3>>>0<i>>>1>>>0?u>>>0<n>>>0?n:u:i,(e[f>>2]|0)-g>>3,t+16|0),t=a+8|0,f=e[t>>2]|0,e[f>>2]=e[h>>2],u=h+4|0,e[f+4>>2]=e[u>>2],e[h>>2]=0,e[u>>2]=0,e[t>>2]=f+8,ln(c,a),fn(a);break}else on(a,c,1),F=a+4|0,g=e[F>>2]|0,e[g>>2]=e[h>>2],t=h+4|0,e[g+4>>2]=e[t>>2],e[h>>2]=0,e[t>>2]=0,e[F>>2]=g+8,un(a);while(0);Le(h),y=p}function N4(t,n){t=t|0,n=n|0;var i=0,u=0;i=y,y=y+48|0,u=i,e[t>>2]=n,d[t+4>>0]=0,eh(t+8|0,n),eh(t+20|0,n),ye(u,256,0,0),Tv(t+32|0,n,u),re(u),y=i}function g2(t){t=t|0,Vv(t+32|0),C2(t+20|0),C2(t+8|0)}function k4(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function O4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;u=y,y=y+16|0,c=u+4|0,a=u,f=J(12)|0,xv(f,n,i),e[a>>2]=0,e[c>>2]=e[a>>2],bv(t,f,c),y=u}function Z4(t){t=t|0,Os(t),bl(t+4784|0)}function D4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;u=y,y=y+16|0,c=u+4|0,a=u,f=J(12)|0,Ev(f,n,i),e[a>>2]=0,e[c>>2]=e[a>>2],Xv(t,f,c),y=u}function W4(t){t=t|0,Os(t),qv(t+4784|0)}function z4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;u=y,y=y+16|0,c=u+4|0,a=u,f=J(12)|0,Kv(f,n,i),e[a>>2]=0,e[c>>2]=e[a>>2],tw(t,f,c),y=u}function E4(t){t=t|0,Os(t),uh(t+4784|0)}function X4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;u=y,y=y+16|0,c=u+4|0,a=u,f=J(12)|0,lw(f,n,i),e[a>>2]=0,e[c>>2]=e[a>>2],fw(t,f,c),y=u}function G4(t){t=t|0,Os(t),_w(t+4784|0)}function C4(t,n){return t=t|0,n=n|0,(ks(t,n)|0)^1|0}function j4(){return!(d[21456]|0)&&Ni(21456)|0&&(Ms(21536,6,20,2),ki(21456)),21536}function ks(t,n){return t=t|0,n=n|0,(e[t>>2]|0)==(e[n>>2]|0)&&(e[t+8>>2]|0)==(e[n+8>>2]|0)?t=(e[t+4>>2]|0)==(e[n+4>>2]|0):t=0,t|0}function v2(){return!(d[21464]|0)&&Ni(21464)|0&&(Ms(21548,7,8,2),ki(21464)),21548}function w2(){return!(d[21472]|0)&&Ni(21472)|0&&(Ms(21560,8,6,2),ki(21472)),21560}function L4(t){t=t|0,Ar(t),L(t)}function J4(t,n){t=t|0,n=n|0,U0(t),e[t>>2]=4624,e[t+4>>2]=n,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,d[t+20>>0]=1}function Y4(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4664,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,$4(t,u),y=i}function U0(t){t=t|0,e[t>>2]=4644}function P4(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;if(p=y,y=y+16|0,f=p,i=e[t+8>>2]|0,a=e[t+12>>2]|0,(i|0)!=(a|0)){h=f+4|0;do u=e[i>>2]|0,e[f>>2]=u,c=e[i+4>>2]|0,e[h>>2]=c,c|0&&(c=c+4|0,e[c>>2]=(e[c>>2]|0)+1),n=Js[e[(e[u>>2]|0)+12>>2]&63](u,n)|0,Le(f),i=i+8|0;while((i|0)!=(a|0))}return i=t+20|0,d[i>>0]|0&&(d[i>>0]=0,wl(e[t+4>>2]|0)),y=p,n|0}function _2(t){t=t|0,e[t>>2]=4624,F2(t+8|0),Ti(t)}function H4(t){t=t|0,_2(t),L(t)}function Ti(t){t=t|0}function Q4(t){t=t|0,Qa()}function Le(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function F2(t){t=t|0;var n=0,i=0,u=0;if(i=e[t>>2]|0,i|0){if(u=t+4|0,n=e[u>>2]|0,(n|0)==(i|0))n=i;else{do n=n+-8|0,Le(n);while((n|0)!=(i|0));n=e[t>>2]|0}e[u>>2]=i,Ft(n,(e[t+8>>2]|0)-n|0)}}function $4(t,n){t=t|0,n=n|0}function q4(t){t=t|0,oe(t),L(t)}function K4(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+8>>2]&255](t)}function tg(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==8546?t+12|0:0)|0}function eg(t){t=t|0,Ft(t,16)}function rg(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=4692,e[t+4>>2]=n,Os(t+8|0)}function ng(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4740,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function on(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,n=e[n+4>>2]|0,e[t+4>>2]=n,e[t+8>>2]=n+(i<<3)}function un(t){t=t|0,e[(e[t>>2]|0)+4>>2]=e[t+4>>2]}function cn(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;c=t+12|0,e[c>>2]=0,e[t+16>>2]=u;do if(n)if(n>>>0>536870911)c=Lt(8)|0,Gn(c,6723),e[c>>2]=5956,Jt(c|0,3928,123);else{u=J(n<<3)|0;break}else u=0;while(0);e[t>>2]=u,i=u+(i<<3)|0,e[t+8>>2]=i,e[t+4>>2]=i,e[c>>2]=u+(n<<3)}function ln(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;if(h=e[t>>2]|0,p=t+4|0,i=e[p>>2]|0,a=n+4|0,(i|0)==(h|0))c=a,f=t,u=e[a>>2]|0,i=h;else{u=e[a>>2]|0;do f=i,i=i+-8|0,e[u+-8>>2]=e[i>>2],f=f+-4|0,e[u+-4>>2]=e[f>>2],e[i>>2]=0,e[f>>2]=0,u=(e[a>>2]|0)+-8|0,e[a>>2]=u;while((i|0)!=(h|0));c=a,f=t,i=e[t>>2]|0}e[f>>2]=u,e[c>>2]=i,h=n+8|0,a=e[p>>2]|0,e[p>>2]=e[h>>2],e[h>>2]=a,h=t+8|0,p=n+12|0,t=e[h>>2]|0,e[h>>2]=e[p>>2],e[p>>2]=t,e[n>>2]=e[c>>2]}function fn(t){t=t|0;var n=0,i=0,u=0,c=0;if(i=e[t+4>>2]|0,u=t+8|0,n=e[u>>2]|0,(n|0)!=(i|0))do c=n+-8|0,e[u>>2]=c,Le(c),n=e[u>>2]|0;while((n|0)!=(i|0));n=e[t>>2]|0,n|0&&Ft(n,(e[t+12>>2]|0)-n|0)}function an(t){return t=t|0,536870911}function hn(t){t=t|0,e[t>>2]=4716}function Os(t){t=t|0,lg(t),fg(t+3980|0),ag(t+4380|0),d[t+4780>>0]=0,d[t+4781>>0]=0}function B2(t){t=t|0,e[t>>2]=4692,Zs(t+8|0),Sr(t)}function ig(t){t=t|0,B2(t),L(t)}function sg(t,n){return t=t|0,n=n|0,n|0}function og(t,n){return t=t|0,n=n|0,Ds(t+8|0,e[t+4>>2]|0,n)|0}function Sr(t){t=t|0}function ug(t){t=t|0,Sr(t),L(t)}function cg(t,n){return t=t|0,n=n|0,n|0}function lg(t){t=t|0;var n=0,i=0;I2(t),S2(t+52|0),S2(t+436|0),ye(t+852|0,64,0,0),d[t+3976>>0]=0,n=t+20|0,i=n+32|0;do Z[n>>1]=0,n=n+2|0;while((n|0)<(i|0));n=J(44)|0,ye(n,256,0,0),e[t+896>>2]=n,n=J(44)|0,ye(n,256,0,0),e[t+900>>2]=n,n=t+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 i=J(44)|0,ye(i,256,0,0),e[t+904+(n<<2)>>2]=i,i=J(44)|0,ye(i,256,0,0),e[t+1928+(n<<2)>>2]=i,i=J(44)|0,ye(i,256,0,0),e[t+2952+(n<<2)>>2]=i,n=n+1|0;while(n>>>0<256)}function fg(t){t=t|0,Tr(t,16,4,8,0),Tr(t+80|0,16,1,8,0),Tr(t+160|0,32,2,8,0),Tr(t+240|0,32,22,8,0),Tr(t+320|0,32,20,8,0)}function ag(t){t=t|0,fr(t,16,4,8,0),fr(t+80|0,16,1,8,0),fr(t+160|0,32,2,8,0),fr(t+240|0,32,22,8,0),fr(t+320|0,32,20,8,0)}function hg(t){t=t|0,Rr(t+320|0),Rr(t+240|0),Rr(t+160|0),Rr(t+80|0),Rr(t)}function dg(t){t=t|0;var n=0,i=0;n=e[t+896>>2]|0,n|0&&(re(n),L(n)),n=e[t+900>>2]|0,n|0&&(re(n),L(n)),i=0;do n=e[t+904+(i<<2)>>2]|0,n|0&&(re(n),L(n)),n=e[t+1928+(i<<2)>>2]|0,n|0&&(re(n),L(n)),n=e[t+2952+(i<<2)>>2]|0,n|0&&(re(n),L(n)),i=i+1|0;while((i|0)!=256);re(t+852|0)}function I2(t){t=t|0;var n=0;d[t>>0]=0,d[t+1>>0]=0,d[t+2>>0]=0,d[t+3>>0]=0,n=t+4|0,d[n>>0]=0,d[n+1>>0]=0,d[n+2>>0]=0,d[n+3>>0]=0,t=t+12|0,n=t,d[n>>0]=0,d[n+1>>0]=0,d[n+2>>0]=0,d[n+3>>0]=0,t=t+4|0,d[t>>0]=0,d[t+1>>0]=0,d[t+2>>0]=0,d[t+3>>0]=0}function S2(t){t=t|0;var n=0;n=t+384|0;do Ag(t),t=t+24|0;while((t|0)!=(n|0))}function Ag(t){t=t|0,pg(t)}function pg(t){t=t|0,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,d[t+20>>0]=1}function Tr(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0;e[t+4>>2]=n,e[t+8>>2]=i,e[t+12>>2]=u,e[t+16>>2]=c,e[t+36>>2]=0,e[t+40>>2]=0,e[t+44>>2]=0,u2(t+48|0),e[t+68>>2]=0,e[t+72>>2]=0,e[t+76>>2]=0;do if(c){for(u=t+20|0,e[u>>2]=0,e[t+24>>2]=c,i=c,f=0;i=i>>>1,n=f+1|0,i;)f=n;e[u>>2]=(1<<f|0)==(c|0)?f:n,i=c>>>1,e[t+28>>2]=0-i,i=c+-1-i|0}else if(i=t+20|0,(n+-1|0)>>>0<31){e[i>>2]=n,c=1<<n,e[t+24>>2]=c,i=c>>>1,e[t+28>>2]=0-i,i=c+-1-i|0;break}else{e[i>>2]=32,e[t+24>>2]=0,e[t+28>>2]=-2147483648,i=2147483647;break}while(0);e[t+32>>2]=i,e[t>>2]=0}function Rr(t){t=t|0;var n=0,i=0,u=0,c=0,f=0;if(f=t+36|0,i=e[f>>2]|0,u=t+40|0,n=e[u>>2]|0,(n|0)!=(i|0))do n=n+-44|0,re(n);while((n|0)!=(i|0));if(e[u>>2]=i,u=t+68|0,c=e[u>>2]|0,i=t+72|0,n=e[i>>2]|0,(n|0)!=(c|0))do n=n+-44|0,re(n);while((n|0)!=(c|0));e[i>>2]=c,eu(u),eu(f)}function Zs(t){t=t|0,mg(t+4380|0),hg(t+3980|0),dg(t)}function mg(t){t=t|0,hr(t+320|0),hr(t+240|0),hr(t+160|0),hr(t+80|0),hr(t)}function Ds(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0;if(F=y,y=y+32|0,g=F,u=t+4781|0,d[u>>0]|0||(yg(t+4380|0),d[u>>0]=1),u=t+3976|0,d[u>>0]|0)h=ge(n,t+852|0)|0,h?(h&32|0&&R2((ge(n,e[t+904+(((T2(t)|0)&255)<<2)>>2]|0)|0)&255,t),p=t+14|0,f=d[p>>0]|0,u=f&7,f=(f&255)>>>3&7,c=S[16+(f<<3)+u>>0]|0,u=S[80+(f<<3)+u>>0]|0,h&16?(I=t+20+(c<<1)|0,a=(Ve(t+4380|0,n,W[I>>1]|0,c>>>0<3?c:3)|0)&65535,Z[I>>1]=a):a=Z[t+20+(c<<1)>>1]|0,Z[t+12>>1]=a,h&8|0&&(I=t+15|0,d[I>>0]=ge(n,e[t+1928+(S[I>>0]<<2)>>2]|0)|0),h&4|0&&(p=ge(n,e[t+896+(((S[p>>0]|0)>>>6&1)<<2)>>2]|0)|0,I=t+16|0,d[I>>0]=Ri(p+(d[I>>0]|0)|0)|0),h&2|0&&(I=t+17|0,d[I>>0]=ge(n,e[t+2952+(S[I>>0]<<2)>>2]|0)|0),h&1&&(I=t+18|0,Z[I>>1]=Ve(t+4460|0,n,W[I>>1]|0,0)|0)):(I=d[t+14>>0]|0,u=I&7,I=(I&255)>>>3&7,f=I,c=S[16+(I<<3)+u>>0]|0,u=S[80+(I<<3)+u>>0]|0),a=t+52+(c*24|0)|0,h=t+4540|0,p=(f|0)==1&1,f=Ve(h,n,U2(a)|0,p)|0,e[g>>2]=f,e[t>>2]=(e[t>>2]|0)+f,V2(a,g),a=t+436+(c*24|0)|0,f=U2(a)|0,c=Il(h)|0,I=t+4620|0,c=Ve(I,n,f,(c>>>0<20?c&-2:20)|p)|0,e[g>>2]=c,f=t+4|0,e[f>>2]=(e[f>>2]|0)+c,V2(a,g),g=Il(h)|0,g=(Il(I)|0)+g|0,I=t+820+(u<<2)|0,g=Ve(t+4700|0,n,e[I>>2]|0,(g>>>0<36?g>>>1&2147483646:18)|p)|0,e[t+8>>2]=g,e[I>>2]=g,vg(t,i);else{d[u>>0]=1,su(iu(n)|0,i,20),gg(g,i),f=t,u=g,c=f+20|0;do d[f>>0]=d[u>>0]|0,f=f+1|0,u=u+1|0;while((f|0)<(c|0));Z[t+12>>1]=0}return y=F,i+20|0}function yg(t){t=t|0,ar(t),ar(t+80|0),ar(t+160|0),ar(t+240|0),ar(t+320|0)}function iu(t){return t=t|0,e[t>>2]|0}function su(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0;if(p=t+4|0,u=e[p>>2]|0,h=(e[t+8>>2]|0)-u|0,h=h>>>0>i>>>0?i:h,a=t+12|0,c=(e[a>>2]|0)+u|0,f=c+h|0,h){for(u=c,c=n;d[c>>0]=d[u>>0]|0,u=u+1|0,(u|0)!=(f|0);)c=c+1|0;u=e[p>>2]|0}if(e[p>>2]=u+h,i=i-h|0,i|0){for(c2(t),c=(e[a>>2]|0)+(e[p>>2]|0)|0,f=c+i|0,u=n+h|0;d[u>>0]=d[c>>0]|0,c=c+1|0,(c|0)!=(f|0);)u=u+1|0;e[p>>2]=(e[p>>2]|0)+i}}function gg(t,n){t=t|0,n=n|0,I2(t),e[t>>2]=ou(n)|0,e[t+4>>2]=ou(n+4|0)|0,e[t+8>>2]=ou(n+8|0)|0,Z[t+12>>1]=Ui(n+12|0)|0,R2(Sl(n+14|0)|0,t),d[t+15>>0]=Sl(n+15|0)|0,d[t+16>>0]=x2(n+16|0)|0,d[t+17>>0]=x2(n+17|0)|0,Z[t+18>>1]=Ui(n+18|0)|0}function T2(t){return t=t|0,d[t+14>>0]|0}function R2(t,n){t=t|0,n=n|0,d[n+14>>0]=t}function Ri(t){return t=t|0,t&255|0}function U2(t){return t=t|0,e[t+8>>2]|0}function V2(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;p=t+20|0;do if(d[p>>0]|0){if(c=e[n>>2]|0,a=t+8|0,i=e[a>>2]|0,f=t+12|0,u=e[f>>2]|0,(c|0)>=(i|0)){i=t+16|0,(c|0)<(u|0)?(e[i>>2]=u,e[f>>2]=e[n>>2]):e[i>>2]=c,d[p>>0]=0;break}if(e[t+16>>2]=u,e[f>>2]=i,i=e[n>>2]|0,u=e[t>>2]|0,c=t+4|0,f=e[c>>2]|0,(i|0)<(u|0)){e[a>>2]=f,e[c>>2]=u,e[t>>2]=e[n>>2];break}if((i|0)<(f|0)){e[a>>2]=f,e[c>>2]=e[n>>2];break}else{e[a>>2]=i;break}}else{if(h=t+8|0,i=e[h>>2]|0,u=e[n>>2]|0,c=t+4|0,f=e[c>>2]|0,(i|0)>=(u|0)){(f|0)<(u|0)?(e[t>>2]=f,e[c>>2]=e[n>>2]):e[t>>2]=u,d[p>>0]=1;break}if(e[t>>2]=f,e[c>>2]=i,c=t+16|0,f=e[c>>2]|0,a=e[n>>2]|0,i=t+12|0,u=e[i>>2]|0,(f|0)<(a|0)){e[h>>2]=u,e[i>>2]=f,e[c>>2]=e[n>>2];break}if((u|0)<(a|0)){e[h>>2]=u,e[i>>2]=e[n>>2];break}else{e[h>>2]=a;break}}while(0)}function Il(t){return t=t|0,e[t>>2]|0}function vg(t,n){t=t|0,n=n|0;var i=0;cu(S[t>>0]|S[t+1>>0]<<8|S[t+2>>0]<<16|S[t+3>>0]<<24,n),i=t+4|0,cu(S[i>>0]|S[i+1>>0]<<8|S[i+2>>0]<<16|S[i+3>>0]<<24,n+4|0),i=t+8|0,cu(S[i>>0]|S[i+1>>0]<<8|S[i+2>>0]<<16|S[i+3>>0]<<24,n+8|0),i=t+12|0,Vi(S[i>>0]|S[i+1>>0]<<8,n+12|0),Tl(T2(t)|0,n+14|0),Tl(d[t+15>>0]|0,n+15|0),b2(d[t+16>>0]|0,n+16|0),b2(d[t+17>>0]|0,n+17|0),t=t+18|0,Vi(S[t>>0]|S[t+1>>0]<<8,n+18|0)}function ou(t){return t=t|0,uu(t)|0}function Ui(t){return t=t|0,(d[t+1>>0]<<8|S[t>>0])&65535|0}function Sl(t){return t=t|0,d[t>>0]|0}function x2(t){return t=t|0,d[t>>0]|0}function uu(t){return t=t|0,(S[t+1>>0]|0)<<8|(S[t>>0]|0)|(S[t+2>>0]|0)<<16|(S[t+3>>0]|0)<<24|0}function cu(t,n){t=t|0,n=n|0,lu(t,n)}function Vi(t,n){t=t|0,n=n|0,d[n+1>>0]=(t&65535)>>>8,d[n>>0]=t}function Tl(t,n){t=t|0,n=n|0,d[n>>0]=t}function b2(t,n){t=t|0,n=n|0,d[n>>0]=t}function lu(t,n){t=t|0,n=n|0,d[n+3>>0]=t>>>24,d[n+2>>0]=t>>>16,d[n+1>>0]=t>>>8,d[n>>0]=t}function dn(t,n){t=t|0,n=n|0}function wg(t){t=t|0,oe(t),L(t)}function _g(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function Fg(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==9202?t+12|0:0)|0}function Bg(t){t=t|0,Ft(t,16)}function Ig(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=4768,e[t+4>>2]=n,Rl(t+8|0)}function Sg(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4792,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function Rl(t){t=t|0,Ug(t),Vg(t+164|0),xg(t+244|0),d[t+324>>0]=0,d[t+325>>0]=0}function M2(t){t=t|0,e[t>>2]=4768,Ul(t+8|0),Sr(t)}function Tg(t){t=t|0,M2(t),L(t)}function Rg(t,n){return t=t|0,n=n|0,Ws(t+8|0,e[t+4>>2]|0,n)|0}function Ug(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0;for(f=y,y=y+16|0,u=f,d[t>>0]=0,ye(t+4|0,516,0,0),ye(t+48|0,6,0,0),e[t+92>>2]=0,e[t+96>>2]=0,i=t+100|0,Ng(i),N2(u),c=e[u>>2]|0,u=e[u+4>>2]|0,n=4;a=i,h=a,d[h>>0]=c,d[h+1>>0]=c>>8,d[h+2>>0]=c>>16,d[h+3>>0]=c>>24,a=a+4|0,d[a>>0]=u,d[a+1>>0]=u>>8,d[a+2>>0]=u>>16,d[a+3>>0]=u>>24,n=n+-1|0,n;)i=i+8|0;h=t+132|0,e[h>>2]=0,e[h+4>>2]=0,e[h+8>>2]=0,e[h+12>>2]=0,e[h+16>>2]=0,e[h+20>>2]=0,e[h+24>>2]=0,e[h+28>>2]=0,y=f}function Vg(t){t=t|0,Tr(t,32,9,8,0)}function xg(t){t=t|0,fr(t,32,9,8,0)}function bg(t){t=t|0,Rr(t)}function Mg(t){t=t|0,re(t+48|0),re(t+4|0)}function Ng(t){t=t|0;var n=0;n=t+32|0;do N2(t),t=t+8|0;while((t|0)!=(n|0))}function N2(t){t=t|0;var n=0;n=t,d[n>>0]=0,d[n+1>>0]=0,d[n+2>>0]=0,d[n+3>>0]=0,t=t+4|0,d[t>>0]=0,d[t+1>>0]=0,d[t+2>>0]=0,d[t+3>>0]=0}function Ul(t){t=t|0,kg(t+244|0),bg(t+164|0),Mg(t)}function kg(t){t=t|0,hr(t)}function Ws(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0;if(u=t+325|0,d[u>>0]|0||(Og(t+244|0),d[u>>0]=1),!(d[t>>0]|0))d[t>>0]=1,su(iu(n)|0,i,8),f=Zg(i)|0,a=Vt()|0,t=t+100|0,n=t,d[n>>0]=f,d[n+1>>0]=f>>8,d[n+2>>0]=f>>16,d[n+3>>0]=f>>24,t=t+4|0,d[t>>0]=a,d[t+1>>0]=a>>8,d[t+2>>0]=a>>16,d[t+3>>0]=a>>24;else{a=t+92|0;t:do if(e[t+132+(e[a>>2]<<2)>>2]|0){if(f=ge(n,t+4|0)|0,(f|0)==1){u=Ve(t+244|0,n,e[t+132+(e[a>>2]<<2)>>2]|0,1)|0,h=e[a>>2]|0,n=t+100+(h<<3)|0,f=n,c=f,f=f+4|0,u=Ur(S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24|0,S[f>>0]|S[f+1>>0]<<8|S[f+2>>0]<<16|S[f+3>>0]<<24|0,u|0,((u|0)<0)<<31>>31|0)|0,f=Vt()|0,c=n,d[c>>0]=u,d[c+1>>0]=u>>8,d[c+2>>0]=u>>16,d[c+3>>0]=u>>24,n=n+4|0,d[n>>0]=f,d[n+1>>0]=f>>8,d[n+2>>0]=f>>16,d[n+3>>0]=f>>24,e[t+148+(h<<2)>>2]=0;break}if((f|0)>=511){if((f|0)==512){h=t+96|0,e[h>>2]=(e[h>>2]|0)+1&3,f=t+100+(e[a>>2]<<3)+4|0,f=Ve(t+244|0,n,S[f>>0]|S[f+1>>0]<<8|S[f+2>>0]<<16|S[f+3>>0]<<24,8)|0,u=t+100+(e[h>>2]<<3)|0,c=u,d[c>>0]=0,d[c+1>>0]=0,d[c+2>>0]=0,d[c+3>>0]=0,u=u+4|0,d[u>>0]=f,d[u+1>>0]=f>>8,d[u+2>>0]=f>>16,d[u+3>>0]=f>>24,u=k2(n)|0,h=e[h>>2]|0,n=t+100+(h<<3)|0,f=n,c=f,f=f+4|0,f=S[f>>0]|S[f+1>>0]<<8|S[f+2>>0]<<16|S[f+3>>0]<<24,u=S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24|u,c=n,d[c>>0]=u,d[c+1>>0]=u>>8,d[c+2>>0]=u>>16,d[c+3>>0]=u>>24,n=n+4|0,d[n>>0]=f,d[n+1>>0]=f>>8,d[n+2>>0]=f>>16,d[n+3>>0]=f>>24,e[a>>2]=h,e[t+132+(h<<2)>>2]=0,e[t+148+(e[a>>2]<<2)>>2]=0;break}if((f|0)<=511)break;e[a>>2]=(e[a>>2]|0)+f&3,Ws(t,n,i)|0;break}do if(!f)u=Ve(t+244|0,n,0,7)|0,c=t+148+(e[a>>2]<<2)|0,e[c>>2]=(e[c>>2]|0)+1,c=e[a>>2]|0,(e[t+148+(c<<2)>>2]|0)>3&&(e[t+132+(c<<2)>>2]=u,e[t+148+(e[a>>2]<<2)>>2]=0);else{if((f|0)<500)if(u=t+244|0,c=It(e[t+132+(e[a>>2]<<2)>>2]|0,f)|0,(f|0)<10){u=Ve(u,n,c,2)|0;break}else{u=Ve(u,n,c,3)|0;break}if((f|0)==500){if(u=Ve(t+244|0,n,(e[t+132+(e[a>>2]<<2)>>2]|0)*500|0,4)|0,c=t+148+(e[a>>2]<<2)|0,e[c>>2]=(e[c>>2]|0)+1,c=e[a>>2]|0,(e[t+148+(c<<2)>>2]|0)<=3)break;e[t+132+(c<<2)>>2]=u,e[t+148+(e[a>>2]<<2)>>2]=0;break}if(u=500-f|0,c=t+244|0,f=e[t+132+(e[a>>2]<<2)>>2]|0,(u|0)>-10){u=Ve(c,n,It(f,u)|0,5)|0;break}u=Ve(c,n,It(f,-10)|0,6)|0,c=t+148+(e[a>>2]<<2)|0,e[c>>2]=(e[c>>2]|0)+1,c=e[a>>2]|0,(e[t+148+(c<<2)>>2]|0)>3&&(e[t+132+(c<<2)>>2]=u,e[t+148+(e[a>>2]<<2)>>2]=0)}while(0);h=t+100+(e[a>>2]<<3)|0,c=h,n=c,c=c+4|0,c=Ur(S[n>>0]|S[n+1>>0]<<8|S[n+2>>0]<<16|S[n+3>>0]<<24|0,S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24|0,u|0,((u|0)<0)<<31>>31|0)|0,n=Vt()|0,f=h,d[f>>0]=c,d[f+1>>0]=c>>8,d[f+2>>0]=c>>16,d[f+3>>0]=c>>24,h=h+4|0,d[h>>0]=n,d[h+1>>0]=n>>8,d[h+2>>0]=n>>16,d[h+3>>0]=n>>24}else switch(u=ge(n,t+48|0)|0,u|0){case 1:{n=Ve(t+244|0,n,0,0)|0,e[t+132+(e[a>>2]<<2)>>2]=n,n=e[a>>2]|0,h=e[t+132+(n<<2)>>2]|0,f=t+100+(n<<3)|0,c=f,u=c,c=c+4|0,h=Ur(S[u>>0]|S[u+1>>0]<<8|S[u+2>>0]<<16|S[u+3>>0]<<24|0,S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24|0,h|0,((h|0)<0)<<31>>31|0)|0,c=Vt()|0,u=f,d[u>>0]=h,d[u+1>>0]=h>>8,d[u+2>>0]=h>>16,d[u+3>>0]=h>>24,f=f+4|0,d[f>>0]=c,d[f+1>>0]=c>>8,d[f+2>>0]=c>>16,d[f+3>>0]=c>>24,e[t+148+(n<<2)>>2]=0;break t}case 2:{h=t+96|0,e[h>>2]=(e[h>>2]|0)+1&3,f=t+100+(e[a>>2]<<3)+4|0,f=Ve(t+244|0,n,S[f>>0]|S[f+1>>0]<<8|S[f+2>>0]<<16|S[f+3>>0]<<24,8)|0,u=t+100+(e[h>>2]<<3)|0,c=u,d[c>>0]=0,d[c+1>>0]=0,d[c+2>>0]=0,d[c+3>>0]=0,u=u+4|0,d[u>>0]=f,d[u+1>>0]=f>>8,d[u+2>>0]=f>>16,d[u+3>>0]=f>>24,u=k2(n)|0,h=e[h>>2]|0,n=t+100+(h<<3)|0,f=n,c=f,f=f+4|0,f=S[f>>0]|S[f+1>>0]<<8|S[f+2>>0]<<16|S[f+3>>0]<<24,u=S[c>>0]|S[c+1>>0]<<8|S[c+2>>0]<<16|S[c+3>>0]<<24|u,c=n,d[c>>0]=u,d[c+1>>0]=u>>8,d[c+2>>0]=u>>16,d[c+3>>0]=u>>24,n=n+4|0,d[n>>0]=f,d[n+1>>0]=f>>8,d[n+2>>0]=f>>16,d[n+3>>0]=f>>24,e[a>>2]=h,e[t+132+(h<<2)>>2]=0,e[t+148+(e[a>>2]<<2)>>2]=0;break t}default:{if((u|0)<=2)break t;e[a>>2]=u+2+(e[a>>2]|0)&3,Ws(t,n,i)|0;break t}}while(0);Dg(t+100+(e[a>>2]<<3)|0,i)}return i+8|0}function Og(t){t=t|0,ar(t)}function Zg(t){t=t|0;var n=0,i=0,u=0;return n=y,y=y+16|0,i=n,u=uu(t)|0,Wg(i,u,uu(t+4|0)|0),t=e[i>>2]|0,jt(e[i+4>>2]|0),y=n,t|0}function k2(t){t=t|0;var n=0;return n=(Bl(t)|0)&65535,((Bl(t)|0)&65535)<<16|n|0}function Dg(t,n){t=t|0,n=n|0;var i=0;i=t,lu(S[i>>0]|S[i+1>>0]<<8|S[i+2>>0]<<16|S[i+3>>0]<<24,n),t=t+4|0,lu(S[t>>0]|S[t+1>>0]<<8|S[t+2>>0]<<16|S[t+3>>0]<<24,n+4|0)}function Wg(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;u=t,d[u>>0]=n,d[u+1>>0]=n>>8,d[u+2>>0]=n>>16,d[u+3>>0]=n>>24,n=t+4|0,d[n>>0]=i,d[n+1>>0]=i>>8,d[n+2>>0]=i>>16,d[n+3>>0]=i>>24}function zg(t){t=t|0,oe(t),L(t)}function Eg(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function Xg(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==9890?t+12|0:0)|0}function Gg(t){t=t|0,Ft(t,16)}function Cg(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=4820,e[t+4>>2]=n,O2(t+8|0)}function jg(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4844,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function O2(t){t=t|0,d[t>>0]=0,D2(t+1|0),ye(t+8|0,128,0,0),ye(t+52|0,256,0,0),ye(t+96|0,256,0,0),ye(t+140|0,256,0,0),ye(t+184|0,256,0,0),ye(t+228|0,256,0,0),ye(t+272|0,256,0,0)}function Z2(t){t=t|0,e[t>>2]=4820,W2(t+8|0),Sr(t)}function Lg(t){t=t|0,Z2(t),L(t)}function Jg(t,n){return t=t|0,n=n|0,z2(t+8|0,e[t+4>>2]|0,n)|0}function D2(t){t=t|0;var n=0;d[t>>0]=0,d[t+1>>0]=0,n=t+2|0,d[n>>0]=0,d[n+1>>0]=0,t=t+4|0,d[t>>0]=0,d[t+1>>0]=0}function W2(t){t=t|0,re(t+272|0),re(t+228|0),re(t+184|0),re(t+140|0),re(t+96|0),re(t+52|0),re(t+8|0)}function z2(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0;if(F=y,y=y+16|0,p=F,!(d[t>>0]|0))d[t>>0]=1,su(iu(n)|0,i,6),Yg(p,i),g=t+1|0,d[g>>0]=d[p>>0]|0,d[g+1>>0]=d[p+1>>0]|0,d[g+2>>0]=d[p+2>>0]|0,d[g+3>>0]=d[p+3>>0]|0,d[g+4>>0]=d[p+4>>0]|0,d[g+5>>0]=d[p+5>>0]|0;else{g=ge(n,t+8|0)|0,D2(p),g&1?(h=(ge(n,t+52|0)|0)&255,u=t+1|0,u=(Ri(h+((S[u>>0]|S[u+1>>0]<<8)&255)|0)|0)&255):(u=t+1|0,u=(S[u>>0]|S[u+1>>0]<<8)&255),Z[p>>1]=u,g&2?(u=(ge(n,t+96|0)|0)&255,h=t+1|0,u=((Ri((((S[h>>0]|S[h+1>>0]<<8)&65535)>>>8)+u|0)|0)&255)<<8,u=(u|W[p>>1])&65535):(h=t+1|0,u=u|(S[h>>0]|S[h+1>>0]<<8)&-256),Z[p>>1]=u;do if(g&64)if(a=t+1|0,c=(u&255)-((S[a>>0]|S[a+1>>0]<<8)&255)|0,g&4?(u=(ge(n,t+140|0)|0)&255,h=t+3|0,h=c+((S[h>>0]|S[h+1>>0]<<8)&255)|0,u=(Ri(((h|0)<1?0:(h|0)>254?255:h&255)+u|0)|0)&255):(u=t+3|0,u=(S[u>>0]|S[u+1>>0]<<8)&255),h=p+2|0,Z[h>>1]=u,g&16?(u=ge(n,t+228|0)|0,I=t+3|0,f=t+5|0,f=((c+(Z[h>>1]&255)-((S[I>>0]|S[I+1>>0]<<8)&255)|0)/2|0)+((S[f>>0]|S[f+1>>0]<<8)&255)|0,u=(Ri(((f|0)<1?0:(f|0)>254?255:f&255)+(u&255)|0)|0)&255):(u=t+5|0,u=(S[u>>0]|S[u+1>>0]<<8)&255),f=p+4|0,Z[f>>1]=u,u=((W[p>>1]|0)>>>8)-(((S[a>>0]|S[a+1>>0]<<8)&65535)>>>8)|0,g&8?(c=(ge(n,t+184|0)|0)&255,I=t+3|0,I=(((S[I>>0]|S[I+1>>0]<<8)&65535)>>>8)+u|0,c=((Ri(((I|0)<1?0:(I|0)>254?255:I&255)+c|0)|0)&255)<<8,c=(c|W[h>>1])&65535):(c=t+3|0,c=Z[h>>1]|(S[c>>0]|S[c+1>>0]<<8)&-256),Z[h>>1]=c,g&32){I=ge(n,t+272|0)|0,n=t+3|0,g=t+5|0,g=((((W[h>>1]|0)>>>8)+u-(((S[n>>0]|S[n+1>>0]<<8)&65535)>>>8)|0)/2|0)+(((S[g>>0]|S[g+1>>0]<<8)&65535)>>>8)|0,I=((Ri(((g|0)<1?0:(g|0)>254?255:g&255)+(I&255)|0)|0)&255)<<8,Z[f>>1]=I|W[f>>1];break}else{I=t+5|0,Z[f>>1]=Z[f>>1]|(S[I>>0]|S[I+1>>0]<<8)&-256;break}else Z[p+2>>1]=u,Z[p+4>>1]=u;while(0);I=t+1|0,d[I>>0]=d[p>>0]|0,d[I+1>>0]=d[p+1>>0]|0,d[I+2>>0]=d[p+2>>0]|0,d[I+3>>0]=d[p+3>>0]|0,d[I+4>>0]=d[p+4>>0]|0,d[I+5>>0]=d[p+5>>0]|0,Pg(I,i)}return y=F,i+6|0}function Yg(t,n){t=t|0,n=n|0;var i=0,u=0;u=Ui(n)|0,i=Ui(n+2|0)|0,Hg(t,u,i,Ui(n+4|0)|0)}function Pg(t,n){t=t|0,n=n|0;var i=0;Vi(S[t>>0]|S[t+1>>0]<<8,n),i=t+2|0,Vi(S[i>>0]|S[i+1>>0]<<8,n+2|0),t=t+4|0,Vi(S[t>>0]|S[t+1>>0]<<8,n+4|0)}function Hg(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0,d[t>>0]=n,d[t+1>>0]=n>>8,n=t+2|0,d[n>>0]=i,d[n+1>>0]=i>>8,i=t+4|0,d[i>>0]=u,d[i+1>>0]=u>>8}function Qg(t){t=t|0,oe(t),L(t)}function $g(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function qg(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==10570?t+12|0:0)|0}function Kg(t){t=t|0,Ft(t,16)}function tv(t,n,i){t=t|0,n=n|0,i=i|0,hn(t),e[t>>2]=4872,e[t+4>>2]=n,rv(t+8|0,i)}function ev(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4896,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function rv(t,n){t=t|0,n=n|0,e[t>>2]=e[n>>2],d[t+4>>0]=d[n+4>>0]|0,X2(t+8|0,n+8|0),X2(t+20|0,n+20|0),sv(t+32|0,n+32|0)}function E2(t){t=t|0,e[t>>2]=4872,g2(t+8|0),Sr(t)}function nv(t){t=t|0,E2(t),L(t)}function iv(t,n){return t=t|0,n=n|0,wv(t+8|0,e[t+4>>2]|0,n)|0}function X2(t,n){t=t|0,n=n|0;var i=0,u=0;e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,i=n+4|0,u=(e[i>>2]|0)-(e[n>>2]|0)|0,u|0&&(G2(t,u),ov(t,e[n>>2]|0,e[i>>2]|0,u))}function sv(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;i=y,y=y+32|0,u=i+24|0,c=i+16|0,a=i+8|0,f=i,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,yv(a,n),gv(f,n),e[c>>2]=e[a>>2],e[c+4>>2]=e[a+4>>2],e[u>>2]=e[f>>2],e[u+4>>2]=e[f+4>>2],cv(t,c,u,0),y=i}function G2(t,n){t=t|0,n=n|0;var i=0;if((uv(t)|0)>>>0<n>>>0)xe(t);else{i=J(n)|0,e[t+4>>2]=i,e[t>>2]=i,e[t+8>>2]=i+n;return}}function ov(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;f=y,y=y+16|0,c=f,j2(c,t,u),u=c+4|0,t=i-n|0,(t|0)>0&&(pr(e[u>>2]|0,n|0,t|0)|0,e[u>>2]=(e[u>>2]|0)+t),L2(c),y=f}function C2(t){t=t|0;var n=0,i=0;n=e[t>>2]|0,i=n,n|0&&(e[t+4>>2]=i,Ft(n,(e[t+8>>2]|0)-i|0))}function uv(t){return t=t|0,2147483647}function j2(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,n=e[n+4>>2]|0,e[t+4>>2]=n,e[t+8>>2]=n+i}function L2(t){t=t|0,e[(e[t>>2]|0)+4>>2]=e[t+4>>2]}function cv(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0;if(b=y,y=y+96|0,N=b+80|0,I=b+64|0,p=b+48|0,g=b+40|0,F=b+8|0,h=b,U=b+32|0,M=b+16|0,a=n,f=e[a>>2]|0,a=e[a+4>>2]|0,c=i,i=e[c>>2]|0,c=e[c+4>>2]|0,u=f,(c|0)==(a|0)?a=0:a=((c-(e[i>>2]|0)|0)/44|0)+((i-f>>2)*93|0)+((a-(e[f>>2]|0)|0)/-44|0)|0,i=(e[t+8>>2]|0)-(e[t+4>>2]|0)|0,i=(i|0?((i>>2)*93|0)+-1|0:0)-((e[t+20>>2]|0)+(e[t+16>>2]|0))|0,a>>>0>i>>>0&&J2(t,a-i|0),zs(g,t),zs(h,t),c=h,i=e[c>>2]|0,c=e[c+4>>2]|0,f=F,e[f>>2]=i,e[f+4>>2]=c,f=i,a|0&&(i=((c-(e[i>>2]|0)|0)/44|0)+a|0,(i|0)>0?(h=(i>>>0)/93|0,a=f+(h<<2)|0,e[F>>2]=a,i=(e[a>>2]|0)+((i-(h*93|0)|0)*44|0)|0):(i=92-i|0,h=f+(((i|0)/-93|0)<<2)|0,e[F>>2]=h,i=(e[h>>2]|0)+((92-((i|0)%93|0)|0)*44|0)|0),e[F+4>>2]=i),e[I>>2]=e[g>>2],e[I+4>>2]=e[g+4>>2],e[N>>2]=e[F>>2],e[N+4>>2]=e[F+4>>2],Vl(p,I,N),Y2(N,p),P2(I,p),fu(N,I)|0){f=M+4|0,a=n+4|0;do{if(H2(U,N),Q2(M,t,U),i=e[M>>2]|0,(i|0)!=(e[f>>2]|0)){c=e[a>>2]|0;do _l(i,c),i=(e[M>>2]|0)+44|0,e[M>>2]=i,c=c+44|0,e[a>>2]=c,(c-(e[u>>2]|0)|0)==4092&&(u=u+4|0,e[n>>2]=u,c=e[u>>2]|0,e[a>>2]=c);while((i|0)!=(e[f>>2]|0))}$2(M),q2(N)|0}while(fu(N,I)|0)}y=b}function lv(t){t=t|0;var n=0,i=0,u=0;n=e[t+4>>2]|0,i=t+8|0,u=e[i>>2]|0,(u|0)!=(n|0)&&(e[i>>2]=u+(~((u+-4-n|0)>>>2)<<2)),n=e[t>>2]|0,n|0&&Ft(n,(e[t+12>>2]|0)-n|0)}function J2(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0,q=0,X=0,E=0,Y=0,D=0,xt=0,$t=0,bt=0,gt=0,Yt=0,ot=0;Yt=y,y=y+64|0,Y=Yt+52|0,E=Yt+48|0,D=Yt+28|0,xt=Yt+24|0,$t=Yt+20|0,N=Yt,bt=t+8|0,i=e[bt>>2]|0,gt=t+4|0,p=e[gt>>2]|0,q=((i|0)==(p|0)&1)+n|0,a=(q>>>0)/93|0,a=a+((q-(a*93|0)|0)!=0&1)|0,q=t+16|0,u=e[q>>2]|0,h=(u>>>0)/93|0,b=a>>>0<h>>>0?a:h,n=a-b|0,f=i;t:do if(n)if(X=t+12|0,u=e[X>>2]|0,c=u-(e[t>>2]|0)|0,i=f-p>>2,n>>>0>((c>>2)-i|0)>>>0){M=c>>1,U=i+n|0,oi(N,M>>>0<U>>>0?U:M,i-b|0,t+12|0);do e[Y>>2]=J(4092)|0,hv(N,Y),n=n+-1|0;while(n|0);if(!b)i=e[gt>>2]|0;else{h=N+8|0,p=N+12|0,g=N+4|0,F=N+16|0,I=D+4|0,U=D+8|0,M=D+12|0,a=b,n=e[h>>2]|0,i=e[gt>>2]|0;do{f=e[p>>2]|0,u=f;do if((n|0)==(f|0)){if(c=e[g>>2]|0,f=e[N>>2]|0,n=f,c>>>0<=f>>>0){n=u-n|0,n=n|0?n>>1:1,oi(D,n,n>>>2,e[F>>2]|0),e[xt>>2]=e[g>>2],e[$t>>2]=e[h>>2],e[E>>2]=e[xt>>2],e[Y>>2]=e[$t>>2],xi(D,E,Y),n=e[N>>2]|0,e[N>>2]=e[D>>2],e[D>>2]=n,n=e[g>>2]|0,e[g>>2]=e[I>>2],e[I>>2]=n,n=e[h>>2]|0,e[h>>2]=e[U>>2],e[U>>2]=n,n=e[p>>2]|0,e[p>>2]=e[M>>2],e[M>>2]=n,ui(D),n=e[h>>2]|0;break}ot=c,n=((ot-n>>2)+1|0)/-2|0,f=c+(n<<2)|0,u=u-ot|0,u?(Vr(f|0,c|0,u|0)|0,n=(e[g>>2]|0)+(n<<2)|0):n=f,ot=f+(u>>2<<2)|0,e[h>>2]=ot,e[g>>2]=n,n=ot}while(0);e[n>>2]=e[i>>2],n=(e[h>>2]|0)+4|0,e[h>>2]=n,i=(e[gt>>2]|0)+4|0,e[gt>>2]=i,a=a+-1|0}while(a|0)}if(n=e[bt>>2]|0,(n|0)!=(i|0)){do n=n+-4|0,dv(N,n),i=e[gt>>2]|0;while((n|0)!=(i|0));n=e[bt>>2]|0}ot=e[t>>2]|0,e[t>>2]=e[N>>2],e[N>>2]=ot,ot=N+4|0,e[gt>>2]=e[ot>>2],e[ot>>2]=i,ot=N+8|0,e[bt>>2]=e[ot>>2],e[ot>>2]=n,ot=N+12|0,gt=e[X>>2]|0,e[X>>2]=e[ot>>2],e[ot>>2]=gt,e[q>>2]=(e[q>>2]|0)+(It(b,-93)|0),ui(N);break}else{e:do if((u|0)==(f|0))g=18;else{for(;e[Y>>2]=J(4092)|0,fv(t,Y),n=n+-1|0,!!n;)if((e[X>>2]|0)==(e[bt>>2]|0)){g=18;break e}i=b,n=e[q>>2]|0}while(0);if((g|0)==18){u=~(a>>>0>h>>>0?h:a),i=n;do e[Y>>2]=J(4092)|0,av(t,Y),i=i+-1|0,c=(((e[bt>>2]|0)-(e[gt>>2]|0)|0)==4?92:93)+(e[q>>2]|0)|0,e[q>>2]=c;while(i|0);i=n+-1-u|0,n=c}if(e[q>>2]=n+(It(i,-93)|0),!i)break;h=t+12|0,p=D+4|0,g=D+8|0,F=D+12|0,n=e[bt>>2]|0;do{f=e[gt>>2]|0,a=e[f>>2]|0,f=f+4|0,e[gt>>2]=f,ot=e[X>>2]|0,u=ot;do if((n|0)==(ot|0)){if(ot=e[t>>2]|0,n=ot,f>>>0<=ot>>>0){n=u-n|0,n=n|0?n>>1:1,oi(D,n,n>>>2,h),e[xt>>2]=e[gt>>2],e[$t>>2]=e[bt>>2],e[E>>2]=e[xt>>2],e[Y>>2]=e[$t>>2],xi(D,E,Y),n=e[t>>2]|0,e[t>>2]=e[D>>2],e[D>>2]=n,n=e[gt>>2]|0,e[gt>>2]=e[p>>2],e[p>>2]=n,n=e[bt>>2]|0,e[bt>>2]=e[g>>2],e[g>>2]=n,n=e[X>>2]|0,e[X>>2]=e[F>>2],e[F>>2]=n,ui(D),n=e[bt>>2]|0;break}ot=f,n=((ot-n>>2)+1|0)/-2|0,c=f+(n<<2)|0,u=u-ot|0,u?(Vr(c|0,f|0,u|0)|0,n=(e[gt>>2]|0)+(n<<2)|0):n=c,ot=c+(u>>2<<2)|0,e[bt>>2]=ot,e[gt>>2]=n,n=ot}while(0);e[n>>2]=a,n=(e[bt>>2]|0)+4|0,e[bt>>2]=n,i=i+-1|0}while(i|0)}else if(e[q>>2]=(It(b,-93)|0)+u,b|0)for(h=t+12|0,g=t+12|0,F=D+4|0,I=D+8|0,U=D+12|0,n=b,u=p;;){a=e[u>>2]|0,f=u+4|0,e[gt>>2]=f,X=e[h>>2]|0,u=X;do if((i|0)==(X|0)){if(X=e[t>>2]|0,i=X,f>>>0<=X>>>0){i=u-i|0,i=i|0?i>>1:1,oi(D,i,i>>>2,g),e[xt>>2]=e[gt>>2],e[$t>>2]=e[bt>>2],e[E>>2]=e[xt>>2],e[Y>>2]=e[$t>>2],xi(D,E,Y),i=e[t>>2]|0,e[t>>2]=e[D>>2],e[D>>2]=i,i=e[gt>>2]|0,e[gt>>2]=e[F>>2],e[F>>2]=i,i=e[bt>>2]|0,e[bt>>2]=e[I>>2],e[I>>2]=i,i=e[h>>2]|0,e[h>>2]=e[U>>2],e[U>>2]=i,ui(D),i=e[bt>>2]|0;break}X=f,i=((X-i>>2)+1|0)/-2|0,c=f+(i<<2)|0,u=u-X|0,u?(Vr(c|0,f|0,u|0)|0,i=(e[gt>>2]|0)+(i<<2)|0):i=c,X=c+(u>>2<<2)|0,e[bt>>2]=X,e[gt>>2]=i,i=X}while(0);if(e[i>>2]=a,i=(e[bt>>2]|0)+4|0,e[bt>>2]=i,n=n+-1|0,!n)break t;u=e[gt>>2]|0}while(0);y=Yt}function zs(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;i=(e[n+16>>2]|0)+(e[n+20>>2]|0)|0,f=e[n+4>>2]|0,u=(i>>>0)/93|0,c=f+(u<<2)|0,(e[n+8>>2]|0)==(f|0)?n=0:n=(e[c>>2]|0)+((i-(u*93|0)|0)*44|0)|0,e[t>>2]=c,e[t+4>>2]=n}function Vl(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;c=n,n=e[c+4>>2]|0,u=t,e[u>>2]=e[c>>2],e[u+4>>2]=n,u=i,n=e[u+4>>2]|0,i=t+8|0,e[i>>2]=e[u>>2],e[i+4>>2]=n}function Y2(t,n){t=t|0,n=n|0,e[t>>2]=e[n>>2],e[t+4>>2]=e[n+4>>2],e[t+8>>2]=e[n+8>>2],e[t+12>>2]=e[n+12>>2]}function P2(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;i=y,y=y+32|0,u=i+24|0,c=i+16|0,a=i+8|0,f=i,h=n+8|0,p=e[h>>2]|0,h=e[h+4>>2]|0,n=a,e[n>>2]=p,e[n+4>>2]=h,n=f,e[n>>2]=p,e[n+4>>2]=h,e[c>>2]=e[a>>2],e[c+4>>2]=e[a+4>>2],e[u>>2]=e[f>>2],e[u+4>>2]=e[f+4>>2],Vl(t,c,u),y=i}function fu(t,n){return t=t|0,n=n|0,(mv(t,n)|0)^1|0}function H2(t,n){t=t|0,n=n|0;var i=0,u=0;i=e[n>>2]|0,u=e[n+4>>2]|0,(i|0)==(e[n+8>>2]|0)?K2(t,u,e[n+12>>2]|0):K2(t,u,(e[i>>2]|0)+4092|0)}function Q2(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;u=e[i>>2]|0,e[t>>2]=u,e[t+4>>2]=e[i+4>>2],e[t+8>>2]=u,e[t+12>>2]=n}function $2(t){t=t|0;var n=0;n=(e[t+12>>2]|0)+20|0,e[n>>2]=(e[n>>2]|0)+(((e[t>>2]|0)-(e[t+8>>2]|0)|0)/44|0)}function q2(t){t=t|0;var n=0,i=0,u=0;return n=e[t>>2]|0,i=t+8|0,(n|0)==(e[i>>2]|0)?(u=i,n=e[u+4>>2]|0,i=t,e[i>>2]=e[u>>2],e[i+4>>2]=n):(u=n+4|0,e[t>>2]=u,e[t+4>>2]=e[u>>2]),t|0}function fv(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0;N=y,y=y+48|0,c=N+32|0,u=N+28|0,h=N+8|0,p=N+4|0,g=N,M=t+8|0,i=e[M>>2]|0,F=t+12|0,U=e[F>>2]|0,f=U;do if((i|0)==(U|0)){if(U=t+4|0,I=e[U>>2]|0,b=e[t>>2]|0,a=b,I>>>0<=b>>>0){i=f-a|0,i=i|0?i>>1:1,oi(h,i,i>>>2,t+12|0),e[p>>2]=e[U>>2],e[g>>2]=e[M>>2],e[u>>2]=e[p>>2],e[c>>2]=e[g>>2],xi(h,u,c),i=e[t>>2]|0,e[t>>2]=e[h>>2],e[h>>2]=i,i=h+4|0,b=e[U>>2]|0,e[U>>2]=e[i>>2],e[i>>2]=b,i=h+8|0,b=e[M>>2]|0,e[M>>2]=e[i>>2],e[i>>2]=b,i=h+12|0,b=e[F>>2]|0,e[F>>2]=e[i>>2],e[i>>2]=b,ui(h),i=e[M>>2]|0;break}c=I,u=((c-a>>2)+1|0)/-2|0,t=I+(u<<2)|0,c=i-c|0,c?(Vr(t|0,I|0,c|0)|0,i=(e[U>>2]|0)+(u<<2)|0):i=t,b=t+(c>>2<<2)|0,e[M>>2]=b,e[U>>2]=i,i=b}while(0);e[i>>2]=e[n>>2],e[M>>2]=(e[M>>2]|0)+4,y=N}function av(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0;N=y,y=y+48|0,u=N+32|0,i=N+28|0,a=N+8|0,h=N+4|0,p=N,M=t+4|0,I=e[M>>2]|0,U=e[t>>2]|0,g=U;do if((I|0)==(U|0)){if(U=t+8|0,F=e[U>>2]|0,f=t+12|0,b=e[f>>2]|0,c=b,F>>>0>=b>>>0){b=c-g|0,b=b|0?b>>1:1,oi(a,b,(b+3|0)>>>2,t+12|0),e[h>>2]=e[M>>2],e[p>>2]=e[U>>2],e[i>>2]=e[h>>2],e[u>>2]=e[p>>2],xi(a,i,u),i=e[t>>2]|0,e[t>>2]=e[a>>2],e[a>>2]=i,i=a+4|0,b=e[M>>2]|0,e[M>>2]=e[i>>2],e[i>>2]=b,i=a+8|0,b=e[U>>2]|0,e[U>>2]=e[i>>2],e[i>>2]=b,i=a+12|0,b=e[f>>2]|0,e[f>>2]=e[i>>2],e[i>>2]=b,ui(a),i=e[M>>2]|0;break}u=F,t=((c-u>>2)+1|0)/2|0,c=F+(t<<2)|0,u=u-I|0,i=c+(0-(u>>2)<<2)|0,u?(Vr(i|0,I|0,u|0)|0,u=(e[U>>2]|0)+(t<<2)|0):(i=c,u=c),e[M>>2]=i,e[U>>2]=u}else i=I;while(0);e[i+-4>>2]=e[n>>2],e[M>>2]=(e[M>>2]|0)+-4,y=N}function oi(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;c=t+12|0,e[c>>2]=0,e[t+16>>2]=u;do if(n)if(n>>>0>1073741823)c=Lt(8)|0,Gn(c,6723),e[c>>2]=5956,Jt(c|0,3928,123);else{u=J(n<<2)|0;break}else u=0;while(0);e[t>>2]=u,i=u+(i<<2)|0,e[t+8>>2]=i,e[t+4>>2]=i,e[c>>2]=u+(n<<2)}function hv(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0;N=y,y=y+48|0,c=N+32|0,u=N+28|0,h=N+8|0,p=N+4|0,g=N,M=t+8|0,i=e[M>>2]|0,F=t+12|0,U=e[F>>2]|0,f=U;do if((i|0)==(U|0)){if(U=t+4|0,I=e[U>>2]|0,b=e[t>>2]|0,a=b,I>>>0<=b>>>0){i=f-a|0,i=i|0?i>>1:1,oi(h,i,i>>>2,e[t+16>>2]|0),e[p>>2]=e[U>>2],e[g>>2]=e[M>>2],e[u>>2]=e[p>>2],e[c>>2]=e[g>>2],xi(h,u,c),i=e[t>>2]|0,e[t>>2]=e[h>>2],e[h>>2]=i,i=h+4|0,b=e[U>>2]|0,e[U>>2]=e[i>>2],e[i>>2]=b,i=h+8|0,b=e[M>>2]|0,e[M>>2]=e[i>>2],e[i>>2]=b,i=h+12|0,b=e[F>>2]|0,e[F>>2]=e[i>>2],e[i>>2]=b,ui(h),i=e[M>>2]|0;break}c=I,u=((c-a>>2)+1|0)/-2|0,t=I+(u<<2)|0,c=i-c|0,c?(Vr(t|0,I|0,c|0)|0,i=(e[U>>2]|0)+(u<<2)|0):i=t,b=t+(c>>2<<2)|0,e[M>>2]=b,e[U>>2]=i,i=b}while(0);e[i>>2]=e[n>>2],e[M>>2]=(e[M>>2]|0)+4,y=N}function dv(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0;N=y,y=y+48|0,u=N+32|0,i=N+28|0,a=N+8|0,h=N+4|0,p=N,M=t+4|0,I=e[M>>2]|0,U=e[t>>2]|0,g=U;do if((I|0)==(U|0)){if(U=t+8|0,F=e[U>>2]|0,f=t+12|0,b=e[f>>2]|0,c=b,F>>>0>=b>>>0){b=c-g|0,b=b|0?b>>1:1,oi(a,b,(b+3|0)>>>2,e[t+16>>2]|0),e[h>>2]=e[M>>2],e[p>>2]=e[U>>2],e[i>>2]=e[h>>2],e[u>>2]=e[p>>2],xi(a,i,u),i=e[t>>2]|0,e[t>>2]=e[a>>2],e[a>>2]=i,i=a+4|0,b=e[M>>2]|0,e[M>>2]=e[i>>2],e[i>>2]=b,i=a+8|0,b=e[U>>2]|0,e[U>>2]=e[i>>2],e[i>>2]=b,i=a+12|0,b=e[f>>2]|0,e[f>>2]=e[i>>2],e[i>>2]=b,ui(a),i=e[M>>2]|0;break}u=F,t=((c-u>>2)+1|0)/2|0,c=F+(t<<2)|0,u=u-I|0,i=c+(0-(u>>2)<<2)|0,u?(Vr(i|0,I|0,u|0)|0,u=(e[U>>2]|0)+(t<<2)|0):(i=c,u=c),e[M>>2]=i,e[U>>2]=u}else i=I;while(0);e[i+-4>>2]=e[n>>2],e[M>>2]=(e[M>>2]|0)+-4,y=N}function ui(t){t=t|0;var n=0,i=0,u=0;n=e[t+4>>2]|0,i=t+8|0,u=e[i>>2]|0,(u|0)!=(n|0)&&(e[i>>2]=u+(~((u+-4-n|0)>>>2)<<2)),n=e[t>>2]|0,n|0&&Ft(n,(e[t+12>>2]|0)-n|0)}function xi(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;if(a=y,y=y+16|0,f=a,c=e[n>>2]|0,Av(f,t+8|0,(e[i>>2]|0)-c>>2),t=e[f>>2]|0,u=f+4|0,(t|0)!=(e[u>>2]|0)){i=c;do e[t>>2]=e[i>>2],t=(e[f>>2]|0)+4|0,e[f>>2]=t,i=i+4|0;while((t|0)!=(e[u>>2]|0));e[n>>2]=i}pv(f),y=a}function Av(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=e[n>>2],e[t+4>>2]=(e[n>>2]|0)+(i<<2),e[t+8>>2]=n}function pv(t){t=t|0,e[e[t+8>>2]>>2]=e[t>>2]}function mv(t,n){return t=t|0,n=n|0,(e[t+4>>2]|0)==(e[n+4>>2]|0)|0}function K2(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,e[t+4>>2]=i}function yv(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;f=e[n+4>>2]|0,i=e[n+16>>2]|0,u=(i>>>0)/93|0,c=f+(u<<2)|0,(e[n+8>>2]|0)==(f|0)?n=0:n=(e[c>>2]|0)+((i-(u*93|0)|0)*44|0)|0,e[t>>2]=c,e[t+4>>2]=n}function gv(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;i=(e[n+16>>2]|0)+(e[n+20>>2]|0)|0,f=e[n+4>>2]|0,u=(i>>>0)/93|0,c=f+(u<<2)|0,(e[n+8>>2]|0)==(f|0)?n=0:n=(e[c>>2]|0)+((i-(u*93|0)|0)*44|0)|0,e[t>>2]=c,e[t+4>>2]=n}function vv(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0;if(h=y,y=y+16|0,u=h+8|0,f=h,th(u,t),zs(f,t),c=u+4|0,n=e[c>>2]|0,f=f+4|0,(n|0)!=(e[f>>2]|0))do re(n),n=(e[c>>2]|0)+44|0,e[c>>2]=n,i=e[u>>2]|0,(n-(e[i>>2]|0)|0)==4092&&(n=i+4|0,e[u>>2]=n,n=e[n>>2]|0,e[c>>2]=n);while((n|0)!=(e[f>>2]|0));if(e[t+20>>2]=0,c=t+8|0,u=t+4|0,i=e[u>>2]|0,n=(e[c>>2]|0)-i>>2,n>>>0>2)do Ft(e[i>>2]|0,4092),i=(e[u>>2]|0)+4|0,e[u>>2]=i,n=(e[c>>2]|0)-i>>2;while(n>>>0>2);switch(n|0){case 1:{n=46,a=11;break}case 2:{n=93,a=11;break}default:}(a|0)==11&&(e[t+16>>2]=n),y=h}function th(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;f=e[n+4>>2]|0,i=e[n+16>>2]|0,u=(i>>>0)/93|0,c=f+(u<<2)|0,(e[n+8>>2]|0)==(f|0)?n=0:n=(e[c>>2]|0)+((i-(u*93|0)|0)*44|0)|0,e[t>>2]=c,e[t+4>>2]=n}function wv(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0,g=0;if(g=y,y=y+16|0,p=g,a=t+4|0,d[a>>0]|0){if(c=e[t+20>>2]|0,u=e[t+8>>2]|0,th(p,t+32|0),t=t+12|0,(u|0)!=(e[t>>2]|0))for(h=p+4|0,a=u,f=c,u=e[h>>2]|0;c=S[a>>0]|0,c=_v((ge(n,u)|0)+c|0)|0,d[f>>0]=c,d[i>>0]=c,d[a>>0]=c,a=a+1|0,i=i+1|0,c=e[p>>2]|0,u=(e[h>>2]|0)+44|0,e[h>>2]=u,(u-(e[c>>2]|0)|0)==4092&&(u=c+4|0,e[p>>2]=u,u=e[u>>2]|0,e[h>>2]=u),(a|0)!=(e[t>>2]|0);)f=f+1|0}else{if(p=iu(n)|0,su(p,i,e[t>>2]|0),p=e[t>>2]|0,f=i+p|0,!p)u=0;else{for(u=i,c=e[t+8>>2]|0;d[c>>0]=d[u>>0]|0,u=u+1|0,(u|0)!=(f|0);)c=c+1|0;u=e[t>>2]|0}d[a>>0]=1,i=i+u|0}return y=g,i|0}function _v(t){return t=t|0,t&255|0}function Fv(t){t=t|0,oe(t),L(t)}function Bv(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function Iv(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==11262?t+12|0:0)|0}function Sv(t){t=t|0,Ft(t,16)}function eh(t,n){t=t|0,n=n|0,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,n|0&&(G2(t,n),Rv(t,n))}function Tv(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,n|0&&Uv(t,n,i)}function Rv(t,n){t=t|0,n=n|0;var i=0,u=0,c=0;if(c=y,y=y+16|0,u=c,j2(u,t,n),n=u+4|0,t=e[n>>2]|0,i=u+8|0,(t|0)!=(e[i>>2]|0))do d[t>>0]=0,t=(e[n>>2]|0)+1|0,e[n>>2]=t;while((t|0)!=(e[i>>2]|0));L2(u),y=c}function Uv(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0;if(M=y,y=y+96|0,U=M+80|0,g=M+64|0,a=M+48|0,h=M+40|0,p=M+8|0,c=M,F=M+32|0,I=M+16|0,u=(e[t+8>>2]|0)-(e[t+4>>2]|0)|0,u=(u|0?((u>>2)*93|0)+-1|0:0)-((e[t+20>>2]|0)+(e[t+16>>2]|0))|0,u>>>0<n>>>0&&J2(t,n-u|0),zs(h,t),zs(c,t),u=e[c>>2]|0,c=e[c+4>>2]|0,f=p,e[f>>2]=u,e[f+4>>2]=c,f=u,n|0&&(u=((c-(e[u>>2]|0)|0)/44|0)+n|0,(u|0)>0?(n=(u>>>0)/93|0,f=f+(n<<2)|0,e[p>>2]=f,u=(e[f>>2]|0)+((u-(n*93|0)|0)*44|0)|0):(u=92-u|0,n=f+(((u|0)/-93|0)<<2)|0,e[p>>2]=n,u=(e[n>>2]|0)+((92-((u|0)%93|0)|0)*44|0)|0),e[p+4>>2]=u),e[g>>2]=e[h>>2],e[g+4>>2]=e[h+4>>2],e[U>>2]=e[p>>2],e[U+4>>2]=e[p+4>>2],Vl(a,g,U),Y2(U,a),P2(g,a),fu(U,g)|0){c=I+4|0;do{if(H2(F,U),Q2(I,t,F),u=e[I>>2]|0,(u|0)!=(e[c>>2]|0))do _l(u,i),u=(e[I>>2]|0)+44|0,e[I>>2]=u;while((u|0)!=(e[c>>2]|0));$2(I),q2(U)|0}while(fu(U,g)|0)}y=M}function Vv(t){t=t|0;var n=0,i=0;if(vv(t),n=e[t+4>>2]|0,i=e[t+8>>2]|0,(n|0)!=(i|0))do Ft(e[n>>2]|0,4092),n=n+4|0;while((n|0)!=(i|0));lv(t)}function xv(t,n,i){t=t|0,n=n|0,i=i|0,U0(t),e[t>>2]=4924,e[t+4>>2]=n,e[t+8>>2]=i}function bv(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4944,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,au(t,u),y=i}function Mv(t,n){return t=t|0,n=n|0,kv(e[t+8>>2]|0,e[t+4>>2]|0,n)|0}function rh(t){t=t|0;var n=0,i=0;e[t>>2]=4924,i=t+8|0,n=e[i>>2]|0,e[i>>2]=0,n|0&&(Ov(n),L(n)),Ti(t)}function Nv(t){t=t|0,rh(t),L(t)}function kv(t,n,i){return t=t|0,n=n|0,i=i|0,xl(t+4784|0,n,Ds(t,n,i)|0)|0}function xl(t,n,i){return t=t|0,n=n|0,i=i|0,d[t>>0]|0&&(wl(n),d[t>>0]=0),i|0}function Ov(t){t=t|0,Zs(t)}function au(t,n){t=t|0,n=n|0}function Zv(t){t=t|0,oe(t),L(t)}function Dv(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+8>>2]&255](t)}function Wv(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==12004?t+12|0:0)|0}function zv(t){t=t|0,Ft(t,16)}function bl(t){t=t|0,d[t>>0]=1}function Ev(t,n,i){t=t|0,n=n|0,i=i|0,U0(t),e[t>>2]=4972,e[t+4>>2]=n,e[t+8>>2]=i}function Xv(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=4992,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,au(t,u),y=i}function Gv(t,n){return t=t|0,n=n|0,jv(e[t+8>>2]|0,e[t+4>>2]|0,n)|0}function nh(t){t=t|0;var n=0,i=0;e[t>>2]=4972,i=t+8|0,n=e[i>>2]|0,e[i>>2]=0,n|0&&(Jv(n),L(n)),Ti(t)}function Cv(t){t=t|0,nh(t),L(t)}function jv(t,n,i){return t=t|0,n=n|0,i=i|0,Lv(t+4784|0,n,Ds(t,n,i)|0)|0}function Lv(t,n,i){return t=t|0,n=n|0,i=i|0,xl(t+328|0,n,Ws(t,n,i)|0)|0}function Jv(t){t=t|0,Yv(t+4784|0),Zs(t)}function Yv(t){t=t|0,Ul(t)}function Pv(t){t=t|0,oe(t),L(t)}function Hv(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+8>>2]&255](t)}function Qv(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==12827?t+12|0:0)|0}function $v(t){t=t|0,Ft(t,16)}function qv(t){t=t|0,Rl(t),bl(t+328|0)}function Kv(t,n,i){t=t|0,n=n|0,i=i|0,U0(t),e[t>>2]=5020,e[t+4>>2]=n,e[t+8>>2]=i}function tw(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5040,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,au(t,u),y=i}function ew(t,n){return t=t|0,n=n|0,nw(e[t+8>>2]|0,e[t+4>>2]|0,n)|0}function ih(t){t=t|0;var n=0,i=0;e[t>>2]=5020,i=t+8|0,n=e[i>>2]|0,e[i>>2]=0,n|0&&(iw(n),L(n)),Ti(t)}function rw(t){t=t|0,ih(t),L(t)}function nw(t,n,i){return t=t|0,n=n|0,i=i|0,sh(t+4784|0,n,Ds(t,n,i)|0)|0}function sh(t,n,i){return t=t|0,n=n|0,i=i|0,xl(t+316|0,n,z2(t,n,i)|0)|0}function iw(t){t=t|0,oh(t+4784|0),Zs(t)}function oh(t){t=t|0,W2(t)}function sw(t){t=t|0,oe(t),L(t)}function ow(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+8>>2]&255](t)}function uw(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==13672?t+12|0:0)|0}function cw(t){t=t|0,Ft(t,16)}function uh(t){t=t|0,O2(t),bl(t+316|0)}function lw(t,n,i){t=t|0,n=n|0,i=i|0,U0(t),e[t>>2]=5068,e[t+4>>2]=n,e[t+8>>2]=i}function fw(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5088,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,au(t,u),y=i}function aw(t,n){return t=t|0,n=n|0,dw(e[t+8>>2]|0,e[t+4>>2]|0,n)|0}function ch(t){t=t|0;var n=0,i=0;e[t>>2]=5068,i=t+8|0,n=e[i>>2]|0,e[i>>2]=0,n|0&&(pw(n),L(n)),Ti(t)}function hw(t){t=t|0,ch(t),L(t)}function dw(t,n,i){return t=t|0,n=n|0,i=i|0,Aw(t+4784|0,n,Ds(t,n,i)|0)|0}function Aw(t,n,i){return t=t|0,n=n|0,i=i|0,sh(t+328|0,n,Ws(t,n,i)|0)|0}function pw(t){t=t|0,mw(t+4784|0),Zs(t)}function mw(t){t=t|0,oh(t+328|0),Ul(t)}function yw(t){t=t|0,oe(t),L(t)}function gw(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+8>>2]&255](t)}function vw(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==14573?t+12|0:0)|0}function ww(t){t=t|0,Ft(t,16)}function _w(t){t=t|0,Rl(t),uh(t+328|0)}function Fw(t){return t=t|0,t+20|0}function Bw(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=n,e[t+4>>2]=i,e[t+8>>2]=0}function Iw(t,n){t=t|0,n=n|0,e[t>>2]=n,e[t+4>>2]=0,e[t+8>>2]=-1}function Sw(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;i=y,y=y+16|0,u=i+4|0,f=i,c=J(24)|0,zw(c,n),e[f>>2]=0,e[u>>2]=e[f>>2],Ew(t,c,u),y=i}function Es(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function Tw(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5116,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,Rw(t,u),y=i}function Ml(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function Rw(t,n){t=t|0,n=n|0}function Uw(t){t=t|0,oe(t),L(t)}function Vw(t){t=t|0,t=e[t+12>>2]|0,t|0&&L(t)}function xw(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==14966?t+12|0:0)|0}function bw(t){t=t|0,Ft(t,16)}function Mw(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5144,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,Nw(t,u),y=i}function lh(t){t=t|0;var n=0,i=0;t=e[t+4>>2]|0,t|0&&(i=t+4|0,n=e[i>>2]|0,e[i>>2]=n+-1,(n|0)==0)&&(Et[e[(e[t>>2]|0)+8>>2]&255](t),Xn(t))}function Nw(t,n){t=t|0,n=n|0}function kw(t){t=t|0,oe(t),L(t)}function Ow(t){t=t|0,t=e[t+12>>2]|0,t|0&&(Ww(t),L(t))}function Zw(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==15127?t+12|0:0)|0}function Dw(t){t=t|0,Ft(t,16)}function Ww(t){t=t|0}function zw(t,n){t=t|0,n=n|0,U0(t),e[t>>2]=5172,e[t+4>>2]=n,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,d[t+20>>0]=1}function Ew(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5192,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,jw(t,u),y=i}function Xw(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0;if(p=y,y=y+16|0,f=p,i=e[t+8>>2]|0,a=e[t+12>>2]|0,(i|0)!=(a|0)){h=f+4|0;do u=e[i>>2]|0,e[f>>2]=u,c=e[i+4>>2]|0,e[h>>2]=c,c|0&&(c=c+4|0,e[c>>2]=(e[c>>2]|0)+1),n=Js[e[(e[u>>2]|0)+12>>2]&63](u,n)|0,Le(f),i=i+8|0;while((i|0)!=(a|0))}return i=t+20|0,d[i>>0]|0&&(d[i>>0]=0,Cw(e[t+4>>2]|0)),y=p,n|0}function fh(t){t=t|0,e[t>>2]=5172,F2(t+8|0),Ti(t)}function Gw(t){t=t|0,fh(t),L(t)}function Cw(t){t=t|0;var n=0;n=((V0(e[t>>2]|0)|0)&255)<<24,n=((V0(e[t>>2]|0)|0)&255)<<16|n,n=n|((V0(e[t>>2]|0)|0)&255)<<8,e[t+4>>2]=n|(V0(e[t>>2]|0)|0)&255}function V0(t){t=t|0;var n=0,i=0;return n=e[t>>2]|0,i=t+8|0,t=e[i>>2]|0,e[i>>2]=t+1,d[n+t>>0]|0}function jw(t,n){t=t|0,n=n|0}function Lw(t){t=t|0,oe(t),L(t)}function Jw(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+8>>2]&255](t)}function Yw(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==15450?t+12|0:0)|0}function Pw(t){t=t|0,Ft(t,16)}function Nl(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(180)|0,Hw(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],Qw(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function hu(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(180)|0,h_(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],d_(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function Hw(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=5220,e[t+4>>2]=n,$w(t+8|0)}function Qw(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5244,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function $w(t){t=t|0,Tr(t,32,1,8,0),fr(t+80|0,32,1,8,0),d[t+160>>0]=0,d[t+161>>0]=0,t_(t+164|0)}function ah(t){t=t|0,e[t>>2]=5220,e_(t+8|0),Sr(t)}function qw(t){t=t|0,ah(t),L(t)}function Kw(t,n){return t=t|0,n=n|0,r_(t+8|0,e[t+4>>2]|0,n)|0}function t_(t){t=t|0,d[t+4>>0]=0}function e_(t){t=t|0,hr(t+80|0),Rr(t)}function r_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;return f=y,y=y+16|0,u=f,d[t+161>>0]|0||ar(t+80|0),c=t+164|0,n_(c)|0?(n=x0(t+80|0,n,e[c>>2]|0,0)|0,e[u>>2]=n,cu(n,i)):(M0(b0(n)|0,i,4),e[u>>2]=ou(i)|0),i_(c,u),y=f,i+4|0}function n_(t){return t=t|0,(d[t+4>>0]|0)!=0|0}function x0(t,n,i,u){return t=t|0,n=n|0,i=i|0,u=u|0,i=(s_(t,n,(e[t+36>>2]|0)+(u*44|0)|0)|0)+i|0,n=e[t+24>>2]|0,(i|0)<0?i+n|0:i-(i>>>0<n>>>0?0:n)|0}function b0(t){return t=t|0,e[t>>2]|0}function M0(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;if((i|0)>0){u=0;do d[n+u>>0]=V0(t)|0,u=u+1|0;while((u|0)!=(i|0))}}function i_(t,n){t=t|0,n=n|0;var i=0;i=t+4|0,d[i>>0]|0||(d[i>>0]=1),e[t>>2]=e[n>>2]}function s_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;i=kl(n,i)|0,e[t>>2]=i;do if(i){if(i>>>0>=32){i=e[t+28>>2]|0;break}if(u=e[t+12>>2]|0,i>>>0>u>>>0?(u=i-u|0,i=kl(n,(e[t+68>>2]|0)+((i+-1|0)*44|0)|0)|0,u=i<<u|(hh(n,u)|0)):u=kl(n,(e[t+68>>2]|0)+((i+-1|0)*44|0)|0)|0,i=e[t>>2]|0,(u|0)<(1<<i+-1|0)){i=u+1+(-1<<i)|0;break}else{i=u+1|0;break}}else i=o_(n,t+48|0)|0;while(0);return i|0}function kl(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0;if(U=t+8|0,I=e[U>>2]|0,c=e[n+16>>2]|0,c){if(u=t+4|0,i=e[u>>2]|0,F=I>>>15,e[U>>2]=F,p=(i>>>0)/(F>>>0)|0,h=p>>>(e[n+40>>2]|0),f=e[c+(h<<2)>>2]|0,h=(e[c+(h+1<<2)>>2]|0)+1|0,a=f+1|0,g=e[n+8>>2]|0,h>>>0>a>>>0){c=f,f=h;do a=(f+c|0)>>>1,h=(e[g+(a<<2)>>2]|0)>>>0>p>>>0,c=h?c:a,f=h?a:f,a=c+1|0;while(f>>>0>a>>>0);f=c}c=It(e[g+(f<<2)>>2]|0,F)|0,(f|0)==(e[n+32>>2]|0)?a=I:a=It(e[g+(a<<2)>>2]|0,F)|0}else{g=I>>>15,e[U>>2]=g,h=e[n>>2]|0,F=e[n+8>>2]|0,u=t+4|0,i=e[u>>2]|0,p=h>>>1,c=0,a=I,f=0;do M=It(e[F+(p<<2)>>2]|0,g)|0,I=M>>>0>i>>>0,a=I?M:a,c=I?c:M,f=I?f:p,h=I?p:h,p=(f+h|0)>>>1;while((p|0)!=(f|0))}return e[u>>2]=i-c,M=a-c|0,e[U>>2]=M,M>>>0<16777216&&du(t),U=(e[n+12>>2]|0)+(f<<2)|0,e[U>>2]=(e[U>>2]|0)+1,U=n+28|0,M=(e[U>>2]|0)+-1|0,e[U>>2]=M,M||Fl(n),f|0}function hh(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;return n>>>0>19?(i=(u_(t)|0)&65535,(hh(t,n+-16|0)|0)<<16|i|0):(u=t+4|0,c=e[u>>2]|0,f=t+8|0,i=(e[f>>2]|0)>>>n,e[f>>2]=i,n=(c>>>0)/(i>>>0)|0,e[u>>2]=c-(It(n,i)|0),i>>>0<16777216&&du(t),n|0)}function o_(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0,h=0;return u=t+8|0,c=e[u>>2]|0,i=It(c>>>13,e[n+8>>2]|0)|0,f=t+4|0,a=e[f>>2]|0,h=a>>>0>=i>>>0,h?(e[f>>2]=a-i,i=c-i|0,e[u>>2]=i):(e[u>>2]=i,a=n+12|0,e[a>>2]=(e[a>>2]|0)+1),i>>>0<16777216&&du(t),a=n+4|0,t=(e[a>>2]|0)+-1|0,e[a>>2]=t,t||m2(n),h&1|0}function du(t){t=t|0;var n=0,i=0,u=0,c=0;n=t+4|0,i=t+8|0,u=e[n>>2]|0;do u=u<<8|(V0(e[t>>2]|0)|0)&255,e[n>>2]=u,c=e[i>>2]<<8,e[i>>2]=c;while(c>>>0<16777216)}function u_(t){t=t|0;var n=0,i=0,u=0,c=0;return i=t+4|0,c=e[i>>2]|0,n=t+8|0,u=(e[n>>2]|0)>>>16,e[n>>2]=u,n=(c>>>0)/(u>>>0)|0,e[i>>2]=c-(It(n,u)|0),du(t),n&65535|0}function c_(t){t=t|0,oe(t),L(t)}function l_(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function f_(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==15904?t+12|0:0)|0}function a_(t){t=t|0,Ft(t,16)}function h_(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=5272,e[t+4>>2]=n,A_(t+8|0)}function d_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5296,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function A_(t){t=t|0,Tr(t,32,1,8,0),fr(t+80|0,32,1,8,0),d[t+160>>0]=0,d[t+161>>0]=0,y_(t+164|0)}function dh(t){t=t|0,e[t>>2]=5272,g_(t+8|0),Sr(t)}function p_(t){t=t|0,dh(t),L(t)}function m_(t,n){return t=t|0,n=n|0,v_(t+8|0,e[t+4>>2]|0,n)|0}function y_(t){t=t|0,d[t+4>>0]=0}function g_(t){t=t|0,hr(t+80|0),Rr(t)}function v_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;return f=y,y=y+16|0,u=f,d[t+161>>0]|0||ar(t+80|0),c=t+164|0,w_(c)|0?(n=x0(t+80|0,n,e[c>>2]|0,0)|0,e[u>>2]=n,lu(n,i)):(M0(b0(n)|0,i,4),e[u>>2]=uu(i)|0),__(c,u),y=f,i+4|0}function w_(t){return t=t|0,(d[t+4>>0]|0)!=0|0}function __(t,n){t=t|0,n=n|0;var i=0;i=t+4|0,d[i>>0]|0||(d[i>>0]=1),e[t>>2]=e[n>>2]}function F_(t){t=t|0,oe(t),L(t)}function B_(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function I_(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==16402?t+12|0:0)|0}function S_(t){t=t|0,Ft(t,16)}function T_(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(172)|0,U_(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],V_(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function R_(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(176)|0,j_(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],L_(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function U_(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=5324,e[t+4>>2]=n,x_(t+8|0)}function V_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5348,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function x_(t){t=t|0,Tr(t,8,1,8,0),fr(t+80|0,8,1,8,0),d[t+160>>0]=0,d[t+161>>0]=0,N_(t+162|0)}function Ah(t){t=t|0,e[t>>2]=5324,k_(t+8|0),Sr(t)}function b_(t){t=t|0,Ah(t),L(t)}function M_(t,n){return t=t|0,n=n|0,O_(t+8|0,e[t+4>>2]|0,n)|0}function N_(t){t=t|0,d[t+1>>0]=0}function k_(t){t=t|0,hr(t+80|0),Rr(t)}function O_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;return f=y,y=y+16|0,u=f,d[t+161>>0]|0||ar(t+80|0),c=t+162|0,Z_(c)|0?(n=(x0(t+80|0,n,d[c>>0]|0,0)|0)&255,d[u>>0]=n,D_(n,i)):(M0(b0(n)|0,i,1),d[u>>0]=W_(i)|0),z_(c,u),y=f,i+1|0}function Z_(t){return t=t|0,(d[t+1>>0]|0)!=0|0}function D_(t,n){t=t|0,n=n|0,d[n>>0]=t}function W_(t){return t=t|0,d[t>>0]|0}function z_(t,n){t=t|0,n=n|0;var i=0;i=t+1|0,d[i>>0]|0||(d[i>>0]=1),d[t>>0]=d[n>>0]|0}function E_(t){t=t|0,oe(t),L(t)}function X_(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function G_(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==16900?t+12|0:0)|0}function C_(t){t=t|0,Ft(t,16)}function j_(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=5376,e[t+4>>2]=n,J_(t+8|0)}function L_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5400,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function J_(t){t=t|0,Tr(t,16,1,8,0),fr(t+80|0,16,1,8,0),d[t+160>>0]=0,d[t+161>>0]=0,H_(t+162|0)}function ph(t){t=t|0,e[t>>2]=5376,Q_(t+8|0),Sr(t)}function Y_(t){t=t|0,ph(t),L(t)}function P_(t,n){return t=t|0,n=n|0,$_(t+8|0,e[t+4>>2]|0,n)|0}function H_(t){t=t|0,d[t+2>>0]=0}function Q_(t){t=t|0,hr(t+80|0),Rr(t)}function $_(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;return f=y,y=y+16|0,u=f,d[t+161>>0]|0||ar(t+80|0),c=t+162|0,q_(c)|0?(n=(x0(t+80|0,n,Z[c>>1]|0,0)|0)&65535,Z[u>>1]=n,K_(n,i)):(M0(b0(n)|0,i,2),Z[u>>1]=t3(i)|0),e3(c,u),y=f,i+2|0}function q_(t){return t=t|0,(d[t+2>>0]|0)!=0|0}function K_(t,n){t=t|0,n=n|0,Vi(t,n)}function t3(t){return t=t|0,Ui(t)|0}function e3(t,n){t=t|0,n=n|0;var i=0;i=t+2|0,d[i>>0]|0||(d[i>>0]=1),Z[t>>1]=Z[n>>1]|0}function r3(t){t=t|0,oe(t),L(t)}function n3(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function i3(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==17398?t+12|0:0)|0}function s3(t){t=t|0,Ft(t,16)}function o3(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(172)|0,c3(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],l3(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function u3(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;p=y,y=y+32|0,u=p+12|0,c=p,n=p+8|0,a=J(176)|0,F3(a,e[t+4>>2]|0),f=t+8|0,e[n>>2]=0,e[u>>2]=e[n>>2],B3(c,a,u),a=t+12|0,n=e[a>>2]|0,h=t+16|0;do if(n>>>0>=(e[h>>2]|0)>>>0)if(n=(n-(e[f>>2]|0)>>3)+1|0,i=an(f)|0,i>>>0<n>>>0)xe(f);else{g=e[f>>2]|0,F=(e[h>>2]|0)-g|0,h=F>>2,cn(u,F>>3>>>0<i>>>1>>>0?h>>>0<n>>>0?n:h:i,(e[a>>2]|0)-g>>3,t+16|0),h=u+8|0,a=e[h>>2]|0,e[a>>2]=e[c>>2],t=c+4|0,e[a+4>>2]=e[t>>2],e[c>>2]=0,e[t>>2]=0,e[h>>2]=a+8,ln(f,u),fn(u);break}else on(u,f,1),F=u+4|0,g=e[F>>2]|0,e[g>>2]=e[c>>2],h=c+4|0,e[g+4>>2]=e[h>>2],e[c>>2]=0,e[h>>2]=0,e[F>>2]=g+8,un(u);while(0);Le(c),y=p}function c3(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=5428,e[t+4>>2]=n,f3(t+8|0)}function l3(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5452,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function f3(t){t=t|0,Tr(t,8,1,8,0),fr(t+80|0,8,1,8,0),d[t+160>>0]=0,d[t+161>>0]=0,d3(t+162|0)}function mh(t){t=t|0,e[t>>2]=5428,A3(t+8|0),Sr(t)}function a3(t){t=t|0,mh(t),L(t)}function h3(t,n){return t=t|0,n=n|0,p3(t+8|0,e[t+4>>2]|0,n)|0}function d3(t){t=t|0,d[t+1>>0]=0}function A3(t){t=t|0,hr(t+80|0),Rr(t)}function p3(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;return f=y,y=y+16|0,u=f,d[t+161>>0]|0||ar(t+80|0),c=t+162|0,m3(c)|0?(n=(x0(t+80|0,n,S[c>>0]|0,0)|0)&255,d[u>>0]=n,Tl(n,i)):(M0(b0(n)|0,i,1),d[u>>0]=Sl(i)|0),y3(c,u),y=f,i+1|0}function m3(t){return t=t|0,(d[t+1>>0]|0)!=0|0}function y3(t,n){t=t|0,n=n|0;var i=0;i=t+1|0,d[i>>0]|0||(d[i>>0]=1),d[t>>0]=d[n>>0]|0}function g3(t){t=t|0,oe(t),L(t)}function v3(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function w3(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==17896?t+12|0:0)|0}function _3(t){t=t|0,Ft(t,16)}function F3(t,n){t=t|0,n=n|0,hn(t),e[t>>2]=5480,e[t+4>>2]=n,I3(t+8|0)}function B3(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;i=y,y=y+16|0,u=i,e[t>>2]=n,c=J(16)|0,e[c+4>>2]=0,e[c+8>>2]=0,e[c>>2]=5504,e[c+12>>2]=n,e[t+4>>2]=c,e[u>>2]=n,e[u+4>>2]=n,dn(t,u),y=i}function I3(t){t=t|0,Tr(t,16,1,8,0),fr(t+80|0,16,1,8,0),d[t+160>>0]=0,d[t+161>>0]=0,R3(t+162|0)}function yh(t){t=t|0,e[t>>2]=5480,U3(t+8|0),Sr(t)}function S3(t){t=t|0,yh(t),L(t)}function T3(t,n){return t=t|0,n=n|0,V3(t+8|0,e[t+4>>2]|0,n)|0}function R3(t){t=t|0,d[t+2>>0]=0}function U3(t){t=t|0,hr(t+80|0),Rr(t)}function V3(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;return f=y,y=y+16|0,u=f,d[t+161>>0]|0||ar(t+80|0),c=t+162|0,x3(c)|0?(n=(x0(t+80|0,n,W[c>>1]|0,0)|0)&65535,Z[u>>1]=n,Vi(n,i)):(M0(b0(n)|0,i,2),Z[u>>1]=Ui(i)|0),b3(c,u),y=f,i+2|0}function x3(t){return t=t|0,(d[t+2>>0]|0)!=0|0}function b3(t,n){t=t|0,n=n|0;var i=0;i=t+2|0,d[i>>0]|0||(d[i>>0]=1),Z[t>>1]=Z[n>>1]|0}function M3(t){t=t|0,oe(t),L(t)}function N3(t){t=t|0,t=e[t+12>>2]|0,t|0&&Et[e[(e[t>>2]|0)+4>>2]&255](t)}function k3(t,n){return t=t|0,n=n|0,((e[n+4>>2]|0)==18394?t+12|0:0)|0}function O3(t){t=t|0,Ft(t,16)}function jR(){}function Z3(t){return t=t|0,G3(t)|0}function D3(){return 0}function W3(){return 0}function z3(t){t=t|0,t|0&&(C3(t),L(t))}function Xs(){return j3()|0}function E3(){return L3()|0}function X3(){return J3()|0}function gh(){return 0}function G3(t){return t=t|0,3360}function C3(t){t=t|0;var n=0,i=0,u=0,c=0;n=y,y=y+16|0,u=n,e[u>>2]=e[t>>2],e[t>>2]=0,i=t+4|0,e[u+4>>2]=e[i>>2],e[i>>2]=0,Al(u),i=t+8|0,e[u>>2]=e[i>>2],e[i>>2]=0,c=t+12|0,e[u+4>>2]=e[c>>2],e[c>>2]=0,pl(u),pl(i),Al(t),y=n}function j3(){return 3360}function L3(){return 3368}function J3(){return 3384}function Au(){return 18579}function pu(){return 18582}function vh(){return 18584}function Y3(){var t=0;return t=J(16)|0,t8(t),t|0}function P3(t){t=t|0;var n=0,i=0,u=0,c=0;n=y,y=y+16|0,i=n,c=Xs()|0,u=Q3(i)|0,i=$3(i)|0,Ya(c|0,u|0,i|0,Au()|0,12,t|0),y=n}function H3(t){return t=t|0,q3(ql[t&3]()|0)|0}function Q3(t){return t=t|0,1}function $3(t){return t=t|0,K3()|0}function q3(t){return t=t|0,t|0}function K3(){return 5524}function t8(t){t=t|0,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}function e8(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;i=y,y=y+16|0,u=i,c=i+8|0,a=e[n+4>>2]|0,e[u>>2]=e[n>>2],e[u+4>>2]=a,a=Xs()|0,f=n8(c)|0,c=i8(c)|0,n=_h()|0,T0(a|0,t|0,f|0,c|0,n|0,4,s8(u)|0,0),y=i}function r8(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;f=Ol(n)|0,n=e[t>>2]|0,c=e[t+4>>2]|0,t=f+(c>>1)|0,c&1&&(n=e[(e[t>>2]|0)+n>>2]|0),c=wh(i)|0,f=Zl(u)|0,Ys[n&15](t,c,f)}function n8(t){return t=t|0,4}function i8(t){return t=t|0,o8()|0}function s8(t){t=t|0;var n=0,i=0;return n=J(8)|0,i=e[t+4>>2]|0,e[n>>2]=e[t>>2],e[n+4>>2]=i,n|0}function Ol(t){return t=t|0,t|0}function wh(t){return t=t|0,t|0}function Zl(t){return t=t|0,t|0}function o8(){return 144}function _h(){return 18587}function u8(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;i=y,y=y+16|0,u=i,c=i+8|0,a=e[n+4>>2]|0,e[u>>2]=e[n>>2],e[u+4>>2]=a,a=Xs()|0,f=l8(c)|0,c=f8(c)|0,n=Dl()|0,T0(a|0,t|0,f|0,c|0,n|0,7,a8(u)|0,0),y=i}function c8(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;c=Ol(n)|0,n=e[t>>2]|0,u=e[t+4>>2]|0,t=c+(u>>1)|0,u&1&&(n=e[(e[t>>2]|0)+n>>2]|0),c=Fh(i)|0,li[n&15](t,c)}function l8(t){return t=t|0,3}function f8(t){return t=t|0,h8()|0}function a8(t){t=t|0;var n=0,i=0;return n=J(8)|0,i=e[t+4>>2]|0,e[n>>2]=e[t>>2],e[n+4>>2]=i,n|0}function Fh(t){return t=t|0,t|0}function h8(){return 5528}function Dl(){return 18593}function d8(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;i=y,y=y+16|0,u=i,c=i+8|0,a=e[n+4>>2]|0,e[u>>2]=e[n>>2],e[u+4>>2]=a,a=Xs()|0,f=p8(c)|0,c=m8(c)|0,n=w8()|0,T0(a|0,t|0,f|0,c|0,n|0,41,y8(u)|0,0),y=i}function A8(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;return u=y,y=y+16|0,i=u,f=Ol(n)|0,n=e[t>>2]|0,c=e[t+4>>2]|0,t=f+(c>>1)|0,c&1&&(n=e[(e[t>>2]|0)+n>>2]|0),e[i>>2]=Fu[n&15](t)|0,f=g8(i)|0,y=u,f|0}function p8(t){return t=t|0,2}function m8(t){return t=t|0,v8()|0}function y8(t){t=t|0;var n=0,i=0;return n=J(8)|0,i=e[t+4>>2]|0,e[n>>2]=e[t>>2],e[n+4>>2]=i,n|0}function g8(t){return t=t|0,e[t>>2]|0}function v8(){return 5540}function w8(){return 18598}function LR(){}function _8(t){return t=t|0,R8(t)|0}function F8(){return 0}function B8(){return 0}function I8(t){t=t|0,t|0&&(U8(t),L(t))}function Gs(){return V8()|0}function S8(){return x8()|0}function T8(){return b8()|0}function R8(t){return t=t|0,3400}function U8(t){t=t|0;var n=0,i=0,u=0,c=0;n=y,y=y+16|0,u=n,e[u>>2]=e[t>>2],e[t>>2]=0,i=t+4|0,e[u+4>>2]=e[i>>2],e[i>>2]=0,Ml(u),i=t+16|0,e[u>>2]=e[i>>2],e[i>>2]=0,c=t+20|0,e[u+4>>2]=e[c>>2],e[c>>2]=0,Es(u),e[u>>2]=e[i>>2],e[i>>2]=0,e[u+4>>2]=e[c>>2],e[c>>2]=0,Es(u),Es(i),lh(t+8|0),Ml(t),y=n}function V8(){return 3400}function x8(){return 3408}function b8(){return 3424}function M8(){var t=0;return t=J(24)|0,z8(t),t|0}function N8(t){t=t|0;var n=0,i=0,u=0,c=0;n=y,y=y+16|0,i=n,c=Gs()|0,u=O8(i)|0,i=Z8(i)|0,Ya(c|0,u|0,i|0,Au()|0,13,t|0),y=n}function k8(t){return t=t|0,D8(ql[t&3]()|0)|0}function O8(t){return t=t|0,1}function Z8(t){return t=t|0,W8()|0}function D8(t){return t=t|0,t|0}function W8(){return 5548}function z8(t){t=t|0,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0}function E8(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;i=y,y=y+16|0,u=i,c=i+8|0,a=e[n+4>>2]|0,e[u>>2]=e[n>>2],e[u+4>>2]=a,a=Gs()|0,f=G8(c)|0,c=C8(c)|0,n=_h()|0,T0(a|0,t|0,f|0,c|0,n|0,5,j8(u)|0,0),y=i}function X8(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;f=Wl(n)|0,n=e[t>>2]|0,c=e[t+4>>2]|0,t=f+(c>>1)|0,c&1&&(n=e[(e[t>>2]|0)+n>>2]|0),c=wh(i)|0,f=Zl(u)|0,Ys[n&15](t,c,f)}function G8(t){return t=t|0,4}function C8(t){return t=t|0,L8()|0}function j8(t){t=t|0;var n=0,i=0;return n=J(8)|0,i=e[t+4>>2]|0,e[n>>2]=e[t>>2],e[n+4>>2]=i,n|0}function Wl(t){return t=t|0,t|0}function L8(){return 160}function zl(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;i=y,y=y+16|0,u=i,c=i+8|0,a=e[n+4>>2]|0,e[u>>2]=e[n>>2],e[u+4>>2]=a,a=Gs()|0,f=Y8(c)|0,c=P8(c)|0,n=Dl()|0,T0(a|0,t|0,f|0,c|0,n|0,8,H8(u)|0,0),y=i}function J8(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;c=Wl(n)|0,n=e[t>>2]|0,u=e[t+4>>2]|0,t=c+(u>>1)|0,u&1&&(n=e[(e[t>>2]|0)+n>>2]|0),c=Zl(i)|0,li[n&15](t,c)}function Y8(t){return t=t|0,3}function P8(t){return t=t|0,Q8()|0}function H8(t){t=t|0;var n=0,i=0;return n=J(8)|0,i=e[t+4>>2]|0,e[n>>2]=e[t>>2],e[n+4>>2]=i,n|0}function Q8(){return 5552}function $8(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;i=y,y=y+16|0,u=i,c=i+8|0,a=e[n+4>>2]|0,e[u>>2]=e[n>>2],e[u+4>>2]=a,a=Gs()|0,f=K8(c)|0,c=t6(c)|0,n=Dl()|0,T0(a|0,t|0,f|0,c|0,n|0,9,e6(u)|0,0),y=i}function q8(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;c=Wl(n)|0,n=e[t>>2]|0,u=e[t+4>>2]|0,t=c+(u>>1)|0,u&1&&(n=e[(e[t>>2]|0)+n>>2]|0),c=Fh(i)|0,li[n&15](t,c)}function K8(t){return t=t|0,3}function t6(t){return t=t|0,r6()|0}function e6(t){t=t|0;var n=0,i=0;return n=J(8)|0,i=e[t+4>>2]|0,e[n>>2]=e[t>>2],e[n+4>>2]=i,n|0}function r6(){return 5564}function n6(){Fm()}function i6(){s6()}function s6(){o6(22144)}function o6(t){t=t|0;var n=0;n=y,y=y+16|0,e[n>>2]=t,Bh(),y=n}function Bh(){mm(u6()|0,18653),Am(c6()|0,18658,1,1,0),l6(18663),f6(18668),a6(18680),h6(18694),d6(18700),A6(18715),p6(18719),m6(18732),y6(18737),g6(18751),v6(18757),Ha(w6()|0,18764),Ha(_6()|0,18776),dl(F6()|0,4,18809),dl(B6()|0,2,18822),dl(I6()|0,4,18837),pm(S6()|0,18852),T6(18868),Ih(18898),Sh(18935),Th(18974),Rh(19005),Uh(19045),Vh(19074),R6(19112),U6(19142),Ih(19181),Sh(19213),Th(19246),Rh(19279),Uh(19313),Vh(19346),V6(19380),x6(19411),b6(19443)}function u6(){return CF()|0}function c6(){return GF()|0}function l6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=EF()|0,En(t|0,e[i>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),y=n}function f6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=WF()|0,En(t|0,e[i>>2]|0,1,-128<<24>>24|0,127<<24>>24|0),y=n}function a6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=ZF()|0,En(t|0,e[i>>2]|0,1,0,255),y=n}function h6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=kF()|0,En(t|0,e[i>>2]|0,2,-32768<<16>>16|0,32767<<16>>16|0),y=n}function d6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=MF()|0,En(t|0,e[i>>2]|0,2,0,65535),y=n}function A6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=xF()|0,En(t|0,e[i>>2]|0,4,-2147483648,2147483647),y=n}function p6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=UF()|0,En(t|0,e[i>>2]|0,4,0,-1),y=n}function m6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=TF()|0,En(t|0,e[i>>2]|0,4,-2147483648,2147483647),y=n}function y6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=IF()|0,En(t|0,e[i>>2]|0,4,0,-1),y=n}function g6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=FF()|0,Pa(t|0,e[i>>2]|0,4),y=n}function v6(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,e[i>>2]=t,t=wF()|0,Pa(t|0,e[i>>2]|0,8),y=n}function w6(){return vF()|0}function _6(){return gF()|0}function F6(){return yF()|0}function B6(){return mF()|0}function I6(){return pF()|0}function S6(){return AF()|0}function T6(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=aF()|0,t=hF()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function Ih(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=cF()|0,t=lF()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function Sh(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=sF()|0,t=oF()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function Th(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=rF()|0,t=nF()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function Rh(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=K6()|0,t=tF()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function Uh(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=Q6()|0,t=$6()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function Vh(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=Y6()|0,t=P6()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function R6(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=j6()|0,t=L6()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function U6(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=X6()|0,t=G6()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function V6(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=W6()|0,t=z6()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function x6(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=O6()|0,t=Z6()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function b6(t){t=t|0;var n=0,i=0,u=0;n=y,y=y+16|0,i=n,e[i>>2]=t,u=M6()|0,t=N6()|0,Ir(u|0,t|0,e[i>>2]|0),y=n}function M6(){return k6()|0}function N6(){return 7}function k6(){return 3440}function O6(){return D6()|0}function Z6(){return 7}function D6(){return 3448}function W6(){return E6()|0}function z6(){return 6}function E6(){return 3456}function X6(){return C6()|0}function G6(){return 5}function C6(){return 3464}function j6(){return J6()|0}function L6(){return 4}function J6(){return 3472}function Y6(){return H6()|0}function P6(){return 5}function H6(){return 3480}function Q6(){return q6()|0}function $6(){return 4}function q6(){return 3488}function K6(){return eF()|0}function tF(){return 3}function eF(){return 3496}function rF(){return iF()|0}function nF(){return 2}function iF(){return 3504}function sF(){return uF()|0}function oF(){return 1}function uF(){return 3512}function cF(){return fF()|0}function lF(){return 0}function fF(){return 3520}function aF(){return dF()|0}function hF(){return 0}function dF(){return 3528}function AF(){return 3536}function pF(){return 3544}function mF(){return 3576}function yF(){return 3600}function gF(){return 3624}function vF(){return 3648}function wF(){return _F()|0}function _F(){return 4144}function FF(){return BF()|0}function BF(){return 4136}function IF(){return SF()|0}function SF(){return 4128}function TF(){return RF()|0}function RF(){return 4120}function UF(){return VF()|0}function VF(){return 4112}function xF(){return bF()|0}function bF(){return 4104}function MF(){return NF()|0}function NF(){return 4096}function kF(){return OF()|0}function OF(){return 4088}function ZF(){return DF()|0}function DF(){return 4072}function WF(){return zF()|0}function zF(){return 4080}function EF(){return XF()|0}function XF(){return 4064}function GF(){return 4056}function CF(){return 4040}function jF(t){t=t|0;var n=0,i=0,u=0,c=0;return n=y,y=y+16|0,i=n+8|0,u=n+4|0,c=n,e[c>>2]=t,e[u>>2]=e[c>>2],e[i>>2]=e[(e[u>>2]|0)+4>>2],t=fB(e[i>>2]|0)|0,y=n,t|0}function An(){return 21636}function Cs(t){return t=t|0,(t+-48|0)>>>0<10|0}function xh(){return 5576}function bh(t,n){t=t|0,n=n|0;var i=0,u=0;if(i=d[t>>0]|0,u=d[n>>0]|0,!(i<<24>>24)||i<<24>>24!=u<<24>>24)t=u;else{do t=t+1|0,n=n+1|0,i=d[t>>0]|0,u=d[n>>0]|0;while(!(!(i<<24>>24)||i<<24>>24!=u<<24>>24));t=u}return(i&255)-(t&255)|0}function mu(t){t=t|0;var n=0,i=0,u=0;u=t;t:do if(!(u&3))i=5;else for(n=u;;){if(!(d[t>>0]|0)){t=n;break t}if(t=t+1|0,n=t,!(n&3)){i=5;break}}while(0);if((i|0)==5){for(;n=e[t>>2]|0,!((n&-2139062144^-2139062144)&n+-16843009);)t=t+4|0;if((n&255)<<24>>24)do t=t+1|0;while(d[t>>0]|0)}return t-u|0}function LF(t){t=t|0}function JF(t){return t=t|0,1}function YF(t){t=t|0;var n=0,i=0;return n=t+74|0,i=d[n>>0]|0,d[n>>0]=i+255|i,n=e[t>>2]|0,n&8?(e[t>>2]=n|32,t=-1):(e[t+8>>2]=0,e[t+4>>2]=0,i=e[t+44>>2]|0,e[t+28>>2]=i,e[t+20>>2]=i,e[t+16>>2]=i+(e[t+48>>2]|0),t=0),t|0}function PF(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0;u=i+16|0,c=e[u>>2]|0,c?f=5:YF(i)|0?u=0:(c=e[u>>2]|0,f=5);t:do if((f|0)==5){if(h=i+20|0,a=e[h>>2]|0,u=a,(c-a|0)>>>0<n>>>0){u=Z0[e[i+36>>2]&7](i,t,n)|0;break}e:do if((d[i+75>>0]|0)<0|(n|0)==0)f=0,c=t;else{for(a=n;c=a+-1|0,(d[t+c>>0]|0)!=10;)if(c)a=c;else{f=0,c=t;break e}if(u=Z0[e[i+36>>2]&7](i,t,a)|0,u>>>0<a>>>0)break t;f=a,c=t+a|0,n=n-a|0,u=e[h>>2]|0}while(0);pr(u|0,c|0,n|0)|0,e[h>>2]=(e[h>>2]|0)+n,u=f+n|0}while(0);return u|0}function HF(t,n){return t=t|0,n=n|0,n?n=QF(e[n>>2]|0,e[n+4>>2]|0,t)|0:n=0,(n|0?n:t)|0}function QF(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0;U=(e[t>>2]|0)+1794895138|0,f=bi(e[t+8>>2]|0,U)|0,u=bi(e[t+12>>2]|0,U)|0,c=bi(e[t+16>>2]|0,U)|0;t:do if(f>>>0<n>>>2>>>0&&(I=n-(f<<2)|0,u>>>0<I>>>0&c>>>0<I>>>0)&&!((c|u)&3|0)){for(I=u>>>2,F=c>>>2,g=0;;){if(h=f>>>1,p=g+h|0,a=p<<1,c=a+I|0,u=bi(e[t+(c<<2)>>2]|0,U)|0,c=bi(e[t+(c+1<<2)>>2]|0,U)|0,!(c>>>0<n>>>0&u>>>0<(n-c|0)>>>0)){u=0;break t}if(d[t+(c+u)>>0]|0){u=0;break t}if(u=bh(i,t+c|0)|0,!u)break;if(u=(u|0)<0,(f|0)==1){u=0;break t}g=u?g:p,f=u?h:f-h|0}u=a+F|0,c=bi(e[t+(u<<2)>>2]|0,U)|0,u=bi(e[t+(u+1<<2)>>2]|0,U)|0,u>>>0<n>>>0&c>>>0<(n-u|0)>>>0?u=d[t+(u+c)>>0]|0?0:t+u|0:u=0}else u=0;while(0);return u|0}function bi(t,n){t=t|0,n=n|0;var i=0;return i=id(t|0)|0,(n|0?i:t)|0}function $F(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;f=n&255,u=(i|0)!=0;t:do if(u&(t&3|0)!=0)for(c=n&255;;){if((d[t>>0]|0)==c<<24>>24){c=6;break t}if(t=t+1|0,i=i+-1|0,u=(i|0)!=0,!(u&(t&3|0)!=0)){c=5;break}}else c=5;while(0);(c|0)==5&&(u?c=6:t=0);t:do if((c|0)==6){if((d[t>>0]|0)!=(n&255)<<24>>24){u=It(f,16843009)|0;e:do if(i>>>0>3)do{if(f=e[t>>2]^u,(f&-2139062144^-2139062144)&f+-16843009|0)break e;t=t+4|0,i=i+-4|0}while(i>>>0>3);while(0)}if(!i)t=0;else for(u=n&255;;){if((d[t>>0]|0)==u<<24>>24)break t;if(i=i+-1|0,i)t=t+1|0;else{t=0;break}}}while(0);return t|0}function qF(t,n,i){return t=t|0,n=n|0,i=i|0,eB(t,n,i,1,8)|0}function KF(t,n,i,u,c,f){t=t|0,n=+n,i=i|0,u=u|0,c=c|0,f=f|0;var a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0,q=0,X=0,E=0,Y=0,D=0,xt=0,$t=0,bt=0,gt=0,Yt=0,ot=0,ht=0,Cr=0;Cr=y,y=y+560|0,p=Cr+32|0,X=Cr+536|0,ht=Cr,ot=ht,g=Cr+540|0,e[X>>2]=0,Yt=g+12|0,Oh(n)|0,a=Vt()|0,(a|0)<0?(n=-n,Oh(n)|0,gt=1,bt=20247,a=Vt()|0):(gt=(c&2049|0)!=0&1,bt=c&2048|0?20250:c&1|0?20253:20248);do if(!0&(a&2146435072|0)==2146435072)ht=(f&32|0)!=0,a=gt+3|0,ve(t,32,i,a,c&-65537),pe(t,bt,gt),pe(t,n!=n|!1?ht?20274:20278:ht?20266:20270,3),ve(t,32,i,a,c^8192);else{if(M=+Zh(n,X)*2,a=M!=0,a&&(e[X>>2]=(e[X>>2]|0)+-1),q=f|32,(q|0)==97){I=f&32,N=I|0?bt+9|0:bt,U=gt|2,a=12-u|0;do if(u>>>0>11|(a|0)==0)n=M;else{n=8;do a=a+-1|0,n=n*16;while(a|0);if((d[N>>0]|0)==45){n=-(n+(-M-n));break}else{n=M+n-n;break}}while(0);h=e[X>>2]|0,a=(h|0)<0?0-h|0:h,a=N0(a,((a|0)<0)<<31>>31,Yt)|0,(a|0)==(Yt|0)&&(a=g+11|0,d[a>>0]=48),d[a+-1>>0]=(h>>31&2)+43,F=a+-2|0,d[F>>0]=f+15,h=(u|0)<1,p=(c&8|0)==0,g=ht;do gt=~~n,a=g+1|0,d[g>>0]=I|S[640+gt>>0],n=(n-+(gt|0))*16,(a-ot|0)==1&&!(p&(h&n==0))?(d[a>>0]=46,g=g+2|0):g=a;while(n!=0);u|0&&(-2-ot+g|0)<(u|0)?(h=Yt,p=F,a=u+2+h-p|0):(h=Yt,p=F,a=h-ot-p+g|0),Yt=a+U|0,ve(t,32,i,Yt,c),pe(t,N,U),ve(t,48,i,Yt,c^65536),ot=g-ot|0,pe(t,ht,ot),ht=h-p|0,ve(t,48,a-(ot+ht)|0,0,0),pe(t,F,ht),ve(t,32,i,Yt,c^8192),a=Yt;break}h=(u|0)<0?6:u,a?(a=(e[X>>2]|0)+-28|0,e[X>>2]=a,n=M*268435456):(n=M,a=e[X>>2]|0),$t=(a|0)<0?p:p+288|0,p=$t;do D=~~n>>>0,e[p>>2]=D,p=p+4|0,n=(n-+(D>>>0))*1e9;while(n!=0);if(D=$t,(a|0)>0)for(I=$t;;){if(F=(a|0)<29?a:29,a=p+-4|0,a>>>0>=I>>>0){g=0;do b=rd(e[a>>2]|0,0,F|0)|0,b=Ur(b|0,Vt()|0,g|0,0)|0,E=Vt()|0,g=Hl(b|0,E|0,1e9,0)|0,Y=Pl(g|0,Vt()|0,1e9,0)|0,Y=O0(b|0,E|0,Y|0,Vt()|0)|0,Vt()|0,e[a>>2]=Y,a=a+-4|0;while(a>>>0>=I>>>0);g?(Y=I+-4|0,e[Y>>2]=g,g=Y):g=I}else g=I;t:do if(p>>>0>g>>>0)for(a=p;;){if(p=a+-4|0,e[p>>2]|0){p=a;break t}if(p>>>0>g>>>0)a=p;else break}while(0);if(a=(e[X>>2]|0)-F|0,e[X>>2]=a,(a|0)>0)I=g;else break}else g=$t;if((a|0)<0){u=((h+25|0)/9|0)+1|0,b=(q|0)==102;do{if(N=0-a|0,N=(N|0)<9?N:9,g>>>0<p>>>0){F=(1<<N)+-1|0,I=1e9>>>N,U=0,a=g;do Y=e[a>>2]|0,e[a>>2]=(Y>>>N)+U,U=It(Y&F,I)|0,a=a+4|0;while(a>>>0<p>>>0);g=e[g>>2]|0?g:g+4|0,U&&(e[p>>2]=U,p=p+4|0)}else g=e[g>>2]|0?g:g+4|0;a=b?$t:g,p=(p-a>>2|0)>(u|0)?a+(u<<2)|0:p,a=(e[X>>2]|0)+N|0,e[X>>2]=a}while((a|0)<0);b=g}else b=g;if(b>>>0<p>>>0){if(a=(D-b>>2)*9|0,F=e[b>>2]|0,F>>>0>=10){g=10;do g=g*10|0,a=a+1|0;while(F>>>0>=g>>>0)}}else a=0;if(E=(q|0)==103,Y=(h|0)!=0,g=h-((q|0)==102?0:a)+((Y&E)<<31>>31)|0,(g|0)<(((p-D>>2)*9|0)+-9|0)){if(X=g+9216|0,g=(X|0)/9|0,u=$t+4+(g+-1024<<2)|0,g=X-(g*9|0)|0,(g|0)<8)for(F=10;F=F*10|0,(g|0)<7;)g=g+1|0;else F=10;if(U=e[u>>2]|0,g=(U>>>0)/(F>>>0)|0,N=U-(It(g,F)|0)|0,I=(u+4|0)==(p|0),I&(N|0)==0)g=u,F=b;else if(M=g&1|0?9007199254740994:9007199254740992,X=F>>>1,n=N>>>0<X>>>0?.5:I&(N|0)==(X|0)?1:1.5,gt&&(X=(d[bt>>0]|0)==45,n=X?-n:n,M=X?-M:M),g=U-N|0,e[u>>2]=g,M+n!=M){if(X=g+F|0,e[u>>2]=X,X>>>0>999999999)for(F=u,a=b;;)if(g=F+-4|0,e[F>>2]=0,g>>>0<a>>>0&&(a=a+-4|0,e[a>>2]=0),X=(e[g>>2]|0)+1|0,e[g>>2]=X,X>>>0>999999999)F=g;else{F=a;break}else g=u,F=b;if(a=(D-F>>2)*9|0,U=e[F>>2]|0,U>>>0>=10){I=10;do I=I*10|0,a=a+1|0;while(U>>>0>=I>>>0)}}else g=u,F=b;X=g+4|0,p=p>>>0>X>>>0?X:p}else F=b;u=0-a|0;t:do if(p>>>0>F>>>0)for(;;){if(g=p+-4|0,e[g>>2]|0){X=p,q=1;break t}if(g>>>0>F>>>0)p=g;else{X=g,q=0;break}}else X=p,q=0;while(0);do if(E){if(h=h+((Y^1)&1)|0,(h|0)>(a|0)&(a|0)>-5?(I=f+-1|0,h=h+-1-a|0):(I=f+-2|0,h=h+-1|0),!(c&8)){if(q&&(xt=e[X+-4>>2]|0,(xt|0)!=0))if((xt>>>0)%10|0)g=0;else{g=0,p=10;do p=p*10|0,g=g+1|0;while(!((xt>>>0)%(p>>>0)|0|0))}else g=9;if(p=((X-D>>2)*9|0)+-9|0,(I|32|0)==102){f=p-g|0,f=(f|0)>0?f:0,h=(h|0)<(f|0)?h:f;break}else{f=p+a-g|0,f=(f|0)>0?f:0,h=(h|0)<(f|0)?h:f;break}}}else I=f;while(0);if(b=(h|0)!=0,U=b?1:c>>>3&1,N=(I|32|0)==102,N)E=0,a=(a|0)>0?a:0;else{if(p=(a|0)<0?u:a,p=N0(p,((p|0)<0)<<31>>31,Yt)|0,g=Yt,(g-p|0)<2)do p=p+-1|0,d[p>>0]=48;while((g-p|0)<2);d[p+-1>>0]=(a>>31&2)+43,a=p+-2|0,d[a>>0]=I,E=a,a=g-a|0}if(a=gt+1+h+U+a|0,ve(t,32,i,a,c),pe(t,bt,gt),ve(t,48,i,a,c^65536),N){U=F>>>0>$t>>>0?$t:F,N=ht+9|0,F=N,I=ht+8|0,g=U;do{if(p=N0(e[g>>2]|0,0,N)|0,(g|0)==(U|0))(p|0)==(N|0)&&(d[I>>0]=48,p=I);else if(p>>>0>ht>>>0){Zi(ht|0,48,p-ot|0)|0;do p=p+-1|0;while(p>>>0>ht>>>0)}pe(t,p,F-p|0),g=g+4|0}while(g>>>0<=$t>>>0);if((c&8|0)==0&(b^1)||pe(t,20282,1),g>>>0<X>>>0&(h|0)>0)for(;;){if(p=N0(e[g>>2]|0,0,N)|0,p>>>0>ht>>>0){Zi(ht|0,48,p-ot|0)|0;do p=p+-1|0;while(p>>>0>ht>>>0)}if(pe(t,p,(h|0)<9?h:9),g=g+4|0,p=h+-9|0,g>>>0<X>>>0&(h|0)>9)h=p;else{h=p;break}}ve(t,48,h+9|0,9,0)}else{if(X=q?X:F+4|0,F>>>0<X>>>0&(h|0)>-1){u=ht+9|0,b=(c&8|0)==0,q=u,U=0-ot|0,N=ht+8|0,I=F;do{p=N0(e[I>>2]|0,0,u)|0,(p|0)==(u|0)&&(d[N>>0]=48,p=N);do if((I|0)==(F|0)){if(g=p+1|0,pe(t,p,1),b&(h|0)<1){p=g;break}pe(t,20282,1),p=g}else{if(p>>>0<=ht>>>0)break;Zi(ht|0,48,p+U|0)|0;do p=p+-1|0;while(p>>>0>ht>>>0)}while(0);ot=q-p|0,pe(t,p,(h|0)>(ot|0)?ot:h),h=h-ot|0,I=I+4|0}while(I>>>0<X>>>0&(h|0)>-1)}ve(t,48,h+18|0,18,0),pe(t,E,Yt-E|0)}ve(t,32,i,a,c^8192)}while(0);return y=Cr,((a|0)<(i|0)?i:a)|0}function tB(t,n){t=t|0,n=n|0;var i=0,u=0;u=(e[n>>2]|0)+(8-1)&~(8-1),i=+G[u>>3],e[n>>2]=u+8,G[t>>3]=i}function eB(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0,q=0,X=0;X=y,y=y+224|0,M=X+208|0,N=X+160|0,b=X+80|0,q=X,f=N,a=f+40|0;do e[f>>2]=0,f=f+4|0;while((f|0)<(a|0));return e[M>>2]=e[i>>2],(El(0,n,M,b,N,u,c)|0)<0?i=-1:((e[t+76>>2]|0)>-1?U=JF(t)|0:U=0,i=e[t>>2]|0,I=i&32,(d[t+74>>0]|0)<1&&(e[t>>2]=i&-33),f=t+48|0,e[f>>2]|0?i=El(t,n,M,b,N,u,c)|0:(a=t+44|0,h=e[a>>2]|0,e[a>>2]=q,p=t+28|0,e[p>>2]=q,g=t+20|0,e[g>>2]=q,e[f>>2]=80,F=t+16|0,e[F>>2]=q+80,i=El(t,n,M,b,N,u,c)|0,h&&(Z0[e[t+36>>2]&7](t,0,0)|0,i=e[g>>2]|0?i:-1,e[a>>2]=h,e[f>>2]=0,e[F>>2]=0,e[p>>2]=0,e[g>>2]=0)),f=e[t>>2]|0,e[t>>2]=f|I,U|0&&LF(t),i=f&32|0?-1:i),y=X,i|0}function El(t,n,i,u,c,f,a){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0,a=a|0;var h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0,q=0,X=0,E=0,Y=0,D=0,xt=0,$t=0,bt=0,gt=0,Yt=0,ot=0,ht=0,Cr=0,ee=0,Wi=0,xr=0;Wi=y,y=y+64|0,ht=Wi+56|0,ee=Wi+40|0,$t=Wi,gt=Wi+48|0,Yt=Wi+60|0,e[ht>>2]=n,Y=(t|0)!=0,D=$t+40|0,xt=D,$t=$t+39|0,bt=gt+4|0,h=0,n=0,g=0;t:for(;;){do{do if((n|0)>-1)if((h|0)>(2147483647-n|0)){e[(An()|0)>>2]=61,n=-1;break}else{n=h+n|0;break}while(0);if(M=e[ht>>2]|0,h=d[M>>0]|0,!(h<<24>>24)){E=92;break t}p=M;e:for(;;){switch(h<<24>>24){case 37:{E=10;break e}case 0:{h=p;break e}default:}X=p+1|0,e[ht>>2]=X,h=d[X>>0]|0,p=X}e:do if((E|0)==10){E=0,h=p;do{if((d[p+1>>0]|0)!=37)break e;h=h+1|0,p=p+2|0,e[ht>>2]=p}while((d[p>>0]|0)==37)}while(0);h=h-M|0,Y&&pe(t,M,h)}while(h|0);if(X=(Cs(d[(e[ht>>2]|0)+1>>0]|0)|0)==0,p=e[ht>>2]|0,!X&&(d[p+2>>0]|0)==36?(b=(d[p+1>>0]|0)+-48|0,I=1,h=3):(b=-1,I=g,h=1),h=p+h|0,e[ht>>2]=h,p=d[h>>0]|0,g=(p<<24>>24)+-32|0,g>>>0>31|(1<<g&75913|0)==0)F=0;else{F=0;do F=1<<g|F,h=h+1|0,e[ht>>2]=h,p=d[h>>0]|0,g=(p<<24>>24)+-32|0;while(!(g>>>0>31|(1<<g&75913|0)==0))}if(p<<24>>24==42){if(Cs(d[h+1>>0]|0)|0&&(Cr=e[ht>>2]|0,(d[Cr+2>>0]|0)==36))h=Cr+1|0,e[c+((d[h>>0]|0)+-48<<2)>>2]=10,h=e[u+((d[h>>0]|0)+-48<<3)>>2]|0,g=1,p=Cr+3|0;else{if(I|0){n=-1;break}Y?(X=(e[i>>2]|0)+(4-1)&~(4-1),h=e[X>>2]|0,e[i>>2]=X+4):h=0,g=0,p=(e[ht>>2]|0)+1|0}e[ht>>2]=p,X=(h|0)<0,q=X?0-h|0:h,F=X?F|8192:F,X=g}else{if(h=Mh(ht)|0,(h|0)<0){n=-1;break}q=h,X=I,p=e[ht>>2]|0}do if((d[p>>0]|0)==46){if(h=p+1|0,(d[h>>0]|0)!=42){e[ht>>2]=h,h=Mh(ht)|0,p=e[ht>>2]|0;break}if(Cs(d[p+2>>0]|0)|0&&(ot=e[ht>>2]|0,(d[ot+3>>0]|0)==36)){h=ot+2|0,e[c+((d[h>>0]|0)+-48<<2)>>2]=10,h=e[u+((d[h>>0]|0)+-48<<3)>>2]|0,p=ot+4|0,e[ht>>2]=p;break}if(X|0){n=-1;break t}Y?(N=(e[i>>2]|0)+(4-1)&~(4-1),h=e[N>>2]|0,e[i>>2]=N+4):h=0,p=(e[ht>>2]|0)+2|0,e[ht>>2]=p}else h=-1;while(0);for(N=0;;){if(((d[p>>0]|0)+-65|0)>>>0>57){n=-1;break t}if(g=p,p=p+1|0,e[ht>>2]=p,g=d[(d[g>>0]|0)+-65+(176+(N*58|0))>>0]|0,I=g&255,(I+-1|0)>>>0>=8)break;N=I}if(!(g<<24>>24)){n=-1;break}U=(b|0)>-1;do if(g<<24>>24==19)if(U){n=-1;break t}else E=54;else{if(U){e[c+(b<<2)>>2]=I,U=u+(b<<3)|0,b=e[U+4>>2]|0,E=ee,e[E>>2]=e[U>>2],e[E+4>>2]=b,E=54;break}if(!Y){n=0;break t}Nh(ee,I,i,a),p=e[ht>>2]|0,E=55}while(0);(E|0)==54&&(E=0,Y?E=55:h=0);e:do if((E|0)==55){E=0,p=d[p+-1>>0]|0,p=(N|0)!=0&(p&15|0)==3?p&-33:p,g=F&-65537,b=F&8192|0?g:F;r:do switch(p|0){case 110:switch((N&255)<<24>>24){case 0:{e[e[ee>>2]>>2]=n,h=0;break e}case 1:{e[e[ee>>2]>>2]=n,h=0;break e}case 2:{h=e[ee>>2]|0,e[h>>2]=n,e[h+4>>2]=((n|0)<0)<<31>>31,h=0;break e}case 3:{Z[e[ee>>2]>>1]=n,h=0;break e}case 4:{d[e[ee>>2]>>0]=n,h=0;break e}case 6:{e[e[ee>>2]>>2]=n,h=0;break e}case 7:{h=e[ee>>2]|0,e[h>>2]=n,e[h+4>>2]=((n|0)<0)<<31>>31,h=0;break e}default:{h=0;break e}}case 112:{p=120,h=h>>>0>8?h:8,g=b|8,E=67;break}case 88:case 120:{g=b,E=67;break}case 111:{U=ee,U=nB(e[U>>2]|0,e[U+4>>2]|0,D)|0,g=xt-U|0,F=0,I=20230,h=(b&8|0)==0|(h|0)>(g|0)?h:g+1|0,g=b,E=73;break}case 105:case 100:if(g=ee,p=e[g>>2]|0,g=e[g+4>>2]|0,(g|0)<0){p=O0(0,0,p|0,g|0)|0,g=Vt()|0,F=ee,e[F>>2]=p,e[F+4>>2]=g,F=1,I=20230,E=72;break r}else{F=(b&2049|0)!=0&1,I=b&2048|0?20231:b&1|0?20232:20230,E=72;break r}case 117:{g=ee,F=0,I=20230,p=e[g>>2]|0,g=e[g+4>>2]|0,E=72;break}case 99:{d[$t>>0]=e[ee>>2],M=$t,F=0,I=20230,U=1,p=g,h=xt;break}case 115:{N=e[ee>>2]|0,N=N|0?N:20240,b=$F(N,0,h)|0,xr=(b|0)==0,M=N,F=0,I=20230,U=xr?h:b-N|0,p=g,h=xr?N+h|0:b;break}case 67:{e[gt>>2]=e[ee>>2],e[bt>>2]=0,e[ee>>2]=gt,I=-1,E=79;break}case 83:{h?(I=h,E=79):(ve(t,32,q,0,b),h=0,E=89);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{h=cd[f&1](t,+G[ee>>3],q,h,b,p)|0;break e}default:F=0,I=20230,U=h,p=b,h=xt}while(0);r:do if((E|0)==67)U=ee,U=rB(e[U>>2]|0,e[U+4>>2]|0,D,p&32)|0,I=ee,I=(g&8|0)==0|(e[I>>2]|0)==0&(e[I+4>>2]|0)==0,F=I?0:2,I=I?20230:20230+(p>>>4)|0,E=73;else if((E|0)==72)U=N0(p,g,D)|0,g=b,E=73;else if((E|0)==79){for(E=0,F=e[ee>>2]|0,h=0;p=e[F>>2]|0,!!p;){if(p=kh(Yt,p)|0,g=(p|0)<0,g|p>>>0>(I-h|0)>>>0){E=83;break}if(h=p+h|0,I>>>0>h>>>0)F=F+4|0;else break}if((E|0)==83&&(E=0,g)){n=-1;break t}if(ve(t,32,q,h,b),!h)h=0,E=89;else for(g=e[ee>>2]|0,F=0;;){if(p=e[g>>2]|0,!p){E=89;break r}if(p=kh(Yt,p)|0,F=p+F|0,(F|0)>(h|0)){E=89;break r}if(pe(t,Yt,p),F>>>0>=h>>>0){E=89;break}else g=g+4|0}}while(0);if((E|0)==73)E=0,p=ee,p=(e[p>>2]|0)!=0|(e[p+4>>2]|0)!=0,xr=(h|0)!=0|p,p=xt-U+((p^1)&1)|0,M=xr?U:D,U=xr?(h|0)>(p|0)?h:p:0,p=(h|0)>-1?g&-65537:g,h=xt;else if((E|0)==89){E=0,ve(t,32,q,h,b^8192),h=(q|0)>(h|0)?q:h;break}b=h-M|0,N=(U|0)<(b|0)?b:U,xr=N+F|0,h=(q|0)<(xr|0)?xr:q,ve(t,32,h,xr,p),pe(t,I,F),ve(t,48,h,xr,p^65536),ve(t,48,N,b,0),pe(t,M,b),ve(t,32,h,xr,p^8192)}while(0);g=X}t:do if((E|0)==92&&!t)if(!g)n=0;else{for(n=1;h=e[c+(n<<2)>>2]|0,!!h;)if(Nh(u+(n<<3)|0,h,i,a),n=n+1|0,n>>>0>=10){n=1;break t}for(;;){if(e[c+(n<<2)>>2]|0){n=-1;break t}if(n=n+1|0,n>>>0>=10){n=1;break}}}while(0);return y=Wi,n|0}function pe(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]&32||PF(n,i,t)|0}function Mh(t){t=t|0;var n=0,i=0;if(!(Cs(d[e[t>>2]>>0]|0)|0))n=0;else{n=0;do i=e[t>>2]|0,n=(n*10|0)+-48+(d[i>>0]|0)|0,i=i+1|0,e[t>>2]=i;while(Cs(d[i>>0]|0)|0)}return n|0}function Nh(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;t:do if(n>>>0<=20)do switch(n|0){case 9:{n=(e[i>>2]|0)+(4-1)&~(4-1),u=e[n>>2]|0,e[i>>2]=n+4,e[t>>2]=u;break t}case 10:{u=(e[i>>2]|0)+(4-1)&~(4-1),n=e[u>>2]|0,e[i>>2]=u+4,u=t,e[u>>2]=n,e[u+4>>2]=((n|0)<0)<<31>>31;break t}case 11:{u=(e[i>>2]|0)+(4-1)&~(4-1),n=e[u>>2]|0,e[i>>2]=u+4,u=t,e[u>>2]=n,e[u+4>>2]=0;break t}case 12:{u=(e[i>>2]|0)+(8-1)&~(8-1),n=u,c=e[n>>2]|0,n=e[n+4>>2]|0,e[i>>2]=u+8,u=t,e[u>>2]=c,e[u+4>>2]=n;break t}case 13:{c=(e[i>>2]|0)+(4-1)&~(4-1),u=e[c>>2]|0,e[i>>2]=c+4,u=(u&65535)<<16>>16,c=t,e[c>>2]=u,e[c+4>>2]=((u|0)<0)<<31>>31;break t}case 14:{c=(e[i>>2]|0)+(4-1)&~(4-1),u=e[c>>2]|0,e[i>>2]=c+4,c=t,e[c>>2]=u&65535,e[c+4>>2]=0;break t}case 15:{c=(e[i>>2]|0)+(4-1)&~(4-1),u=e[c>>2]|0,e[i>>2]=c+4,u=(u&255)<<24>>24,c=t,e[c>>2]=u,e[c+4>>2]=((u|0)<0)<<31>>31;break t}case 16:{c=(e[i>>2]|0)+(4-1)&~(4-1),u=e[c>>2]|0,e[i>>2]=c+4,c=t,e[c>>2]=u&255,e[c+4>>2]=0;break t}case 17:{c=(e[i>>2]|0)+(8-1)&~(8-1),f=+G[c>>3],e[i>>2]=c+8,G[t>>3]=f;break t}case 18:{li[u&15](t,i);break t}default:break t}while(0);while(0)}function rB(t,n,i,u){if(t=t|0,n=n|0,i=i|0,u=u|0,!((t|0)==0&(n|0)==0))do i=i+-1|0,d[i>>0]=S[640+(t&15)>>0]|0|u,t=_u(t|0,n|0,4)|0,n=Vt()|0;while(!((t|0)==0&(n|0)==0));return i|0}function nB(t,n,i){if(t=t|0,n=n|0,i=i|0,!((t|0)==0&(n|0)==0))do i=i+-1|0,d[i>>0]=t&7|48,t=_u(t|0,n|0,3)|0,n=Vt()|0;while(!((t|0)==0&(n|0)==0));return i|0}function N0(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;if(n>>>0>0|(n|0)==0&t>>>0>4294967295){do u=t,t=Hl(t|0,n|0,10,0)|0,c=n,n=Vt()|0,f=Pl(t|0,n|0,10,0)|0,f=O0(u|0,c|0,f|0,Vt()|0)|0,Vt()|0,i=i+-1|0,d[i>>0]=f&255|48;while(c>>>0>9|(c|0)==9&u>>>0>4294967295);n=t}else n=t;if(n)do f=n,n=(n>>>0)/10|0,i=i+-1|0,d[i>>0]=f-(n*10|0)|48;while(f>>>0>=10);return i|0}function ve(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0,a=0;if(a=y,y=y+256|0,f=a,(i|0)>(u|0)&(c&73728|0)==0){if(c=i-u|0,Zi(f|0,n<<24>>24|0,(c>>>0<256?c:256)|0)|0,c>>>0>255){n=i-u|0;do pe(t,f,256),c=c+-256|0;while(c>>>0>255);c=n&255}pe(t,f,c)}y=a}function kh(t,n){return t=t|0,n=n|0,t?t=iB(t,n,0)|0:t=0,t|0}function iB(t,n,i){t=t|0,n=n|0,i=i|0;do if(t){if(n>>>0<128){d[t>>0]=n,t=1;break}if(!(e[e[(sB()|0)+176>>2]>>2]|0))if((n&-128|0)==57216){d[t>>0]=n,t=1;break}else{e[(An()|0)>>2]=25,t=-1;break}if(n>>>0<2048){d[t>>0]=n>>>6|192,d[t+1>>0]=n&63|128,t=2;break}if(n>>>0<55296|(n&-8192|0)==57344){d[t>>0]=n>>>12|224,d[t+1>>0]=n>>>6&63|128,d[t+2>>0]=n&63|128,t=3;break}if((n+-65536|0)>>>0<1048576){d[t>>0]=n>>>18|240,d[t+1>>0]=n>>>12&63|128,d[t+2>>0]=n>>>6&63|128,d[t+3>>0]=n&63|128,t=4;break}else{e[(An()|0)>>2]=25,t=-1;break}}else t=1;while(0);return t|0}function sB(){return xh()|0}function Oh(t){t=+t;var n=0;return G[k>>3]=t,n=e[k>>2]|0,jt(e[k+4>>2]|0),n|0}function Zh(t,n){t=+t,n=n|0;var i=0,u=0,c=0;switch(G[k>>3]=t,i=e[k>>2]|0,u=e[k+4>>2]|0,c=_u(i|0,u|0,52)|0,Vt()|0,c&2047){case 0:{t!=0?(t=+Zh(t*18446744073709552e3,n),i=(e[n>>2]|0)+-64|0):i=0,e[n>>2]=i;break}case 2047:break;default:e[n>>2]=(c&2047)+-1022,e[k>>2]=i,e[k+4>>2]=u&-2146435073|1071644672,t=+G[k>>3]}return+t}function oB(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;t:do if(!i)t=0;else{for(;u=d[t>>0]|0,c=d[n>>0]|0,u<<24>>24==c<<24>>24;)if(i=i+-1|0,i)t=t+1|0,n=n+1|0;else{t=0;break t}t=(u&255)-(c&255)|0}while(0);return t|0}function uB(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;return c=y,y=y+16|0,f=c,e[f>>2]=u,u=cB(t,n,i,f)|0,y=c,u|0}function cB(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0,a=0,h=0;return h=y,y=y+160|0,c=h+144|0,a=h,pr(a|0,3672,144)|0,(n+-1|0)>>>0>2147483646?n?(e[(An()|0)>>2]=61,n=-1):(t=c,n=1,f=4):f=4,(f|0)==4&&(f=-2-t|0,f=n>>>0>f>>>0?f:n,e[a+48>>2]=f,c=a+20|0,e[c>>2]=t,e[a+44>>2]=t,n=t+f|0,t=a+16|0,e[t>>2]=n,e[a+28>>2]=n,n=qF(a,i,u)|0,f&&(a=e[c>>2]|0,d[a+(((a|0)==(e[t>>2]|0))<<31>>31)>>0]=0)),y=h,n|0}function lB(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;return u=t+20|0,c=e[u>>2]|0,t=(e[t+16>>2]|0)-c|0,t=t>>>0>i>>>0?i:t,pr(c|0,n|0,t|0)|0,e[u>>2]=(e[u>>2]|0)+t,i|0}function fB(t){t=t|0;var n=0,i=0;return n=(mu(t)|0)+1|0,i=wu(n)|0,i?t=pr(i|0,t|0,n|0)|0:t=0,t|0}function aB(t,n){t=t|0,n=n|0;var i=0,u=0;for(i=0;;){if((S[656+i>>0]|0)==(t|0)){u=4;break}if(i=i+1|0,(i|0)==87){t=87,u=5;break}}if((u|0)==4&&(i?(t=i,u=5):i=752),(u|0)==5){i=752;do{do u=i,i=i+1|0;while(d[u>>0]|0);t=t+-1|0}while(t|0)}return hB(i,e[n+20>>2]|0)|0}function hB(t,n){return t=t|0,n=n|0,HF(t,n)|0}function dB(t){return t=t|0,aB(t,e[(AB()|0)+176>>2]|0)|0}function AB(){return xh()|0}function pB(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;return u=dB(t)|0,t=mu(u)|0,t>>>0>=i>>>0?(t=i+-1|0,i&&(pr(n|0,u|0,t|0)|0,d[n+t>>0]=0),t=68):(pr(n|0,u|0,t+1|0)|0,t=0),t|0}function mB(){var t=0,n=0,i=0,u=0,c=0,f=0,a=0;u=y,y=y+48|0,f=u+32|0,n=u+24|0,a=u+16|0,c=u,u=u+36|0,t=Dh()|0,t|0&&(i=e[t>>2]|0,i|0)&&(t=i+48|0,Wh(t)|0||(e[n>>2]=20420,Mi(20370,n)),n=zh(t)|0,(n|0)==1126902529&(Vt()|0)==1129074247?t=e[i+44>>2]|0:t=i+80|0,e[u>>2]=t,i=e[i>>2]|0,t=e[i+4>>2]|0,Z0[e[(e[954]|0)+16>>2]&7](3816,i,u)|0?(a=e[u>>2]|0,a=Fu[e[(e[a>>2]|0)+8>>2]&15](a)|0,e[c>>2]=20420,e[c+4>>2]=t,e[c+8>>2]=a,Mi(20284,c)):(e[a>>2]=20420,e[a+4>>2]=t,Mi(20329,a))),Mi(20408,f)}function Dh(){return 21640}function Wh(t){return t=t|0,t=zh(t)|0,(t&-256|0)==1126902528&(Vt()|0)==1129074247|0}function zh(t){t=t|0;var n=0;return n=t,t=e[n>>2]|0,jt(e[n+4>>2]|0),t|0}function Mi(t,n){t=t|0,n=n|0,Qa()}function k0(t){t=t|0}function yB(t){t=t|0,k0(t),L(t)}function gB(t){t=t|0}function vB(t){t=t|0}function wB(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0;if(p=y,y=y+64|0,a=p,se(t,n,0)|0)t=1;else if(n|0&&(h=dr(n,3840,3824,0)|0,(h|0)!=0)){e[a>>2]=h,e[a+4>>2]=0,e[a+8>>2]=t,e[a+12>>2]=-1,t=a+16|0,n=a+24|0,u=a+48|0,c=t,f=c+36|0;do e[c>>2]=0,c=c+4|0;while((c|0)<(f|0));Z[t+36>>1]=0,d[t+38>>0]=0,e[u>>2]=1,Ps[e[(e[h>>2]|0)+28>>2]&7](h,a,e[i>>2]|0,1),(e[n>>2]|0)==1?(e[i>>2]=e[t>>2],t=1):t=0}else t=0;return y=p,t|0}function _B(t,n,i,u,c,f){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0,se(t,e[n+8>>2]|0,f)|0&&Cl(0,n,i,u,c)}function FB(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0;do if(se(t,e[n+8>>2]|0,c)|0)Gl(0,n,i,u);else if(se(t,e[n>>2]|0,c)|0){if((e[n+16>>2]|0)!=(i|0)&&(f=n+20|0,(e[f>>2]|0)!=(i|0))){e[n+32>>2]=u,e[f>>2]=i,c=n+40|0,e[c>>2]=(e[c>>2]|0)+1,(e[n+36>>2]|0)==1&&(e[n+24>>2]|0)==2&&(d[n+54>>0]=1),e[n+44>>2]=4;break}(u|0)==1&&(e[n+32>>2]=1)}while(0)}function BB(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0,se(t,e[n+8>>2]|0,0)|0&&Xl(0,n,i,u)}function se(t,n,i){return t=t|0,n=n|0,i=i|0,i?(t|0)==(n|0)?t=1:t=(bh(e[t+4>>2]|0,e[n+4>>2]|0)|0)==0:t=(e[t+4>>2]|0)==(e[n+4>>2]|0),t|0}function Xl(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;t=n+16|0,c=e[t>>2]|0;do if(c){if((c|0)!=(i|0)){u=n+36|0,e[u>>2]=(e[u>>2]|0)+1,e[n+24>>2]=2,d[n+54>>0]=1;break}t=n+24|0,(e[t>>2]|0)==2&&(e[t>>2]=u)}else e[t>>2]=i,e[n+24>>2]=u,e[n+36>>2]=1;while(0)}function Gl(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0;(e[n+4>>2]|0)==(i|0)&&(c=n+28|0,(e[c>>2]|0)!=1)&&(e[c>>2]=u)}function Cl(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,d[n+53>>0]=1;do if((e[n+4>>2]|0)==(u|0)){if(d[n+52>>0]=1,t=n+16|0,u=e[t>>2]|0,!u){if(e[t>>2]=i,e[n+24>>2]=c,e[n+36>>2]=1,!((c|0)==1&&(e[n+48>>2]|0)==1))break;d[n+54>>0]=1;break}if((u|0)!=(i|0)){c=n+36|0,e[c>>2]=(e[c>>2]|0)+1,d[n+54>>0]=1;break}u=n+24|0,t=e[u>>2]|0,(t|0)==2&&(e[u>>2]=c,t=c),(t|0)==1&&(e[n+48>>2]|0)==1&&(d[n+54>>0]=1)}while(0)}function dr(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0;U=y,y=y+64|0,F=U,g=e[t>>2]|0,I=t+(e[g+-8>>2]|0)|0,g=e[g+-4>>2]|0,e[F>>2]=i,e[F+4>>2]=t,e[F+8>>2]=n,e[F+12>>2]=u,t=F+16|0,n=F+20|0,u=F+24|0,c=F+28|0,f=F+32|0,a=F+40|0,h=t,p=h+36|0;do e[h>>2]=0,h=h+4|0;while((h|0)<(p|0));Z[t+36>>1]=0,d[t+38>>0]=0;t:do if(se(g,i,0)|0)e[F+48>>2]=1,Hs[e[(e[g>>2]|0)+20>>2]&3](g,F,I,I,1,0),t=(e[u>>2]|0)==1?I:0;else{switch(Bu[e[(e[g>>2]|0)+24>>2]&3](g,F,I,1,0),e[F+36>>2]|0){case 0:{t=(e[a>>2]|0)==1&(e[c>>2]|0)==1&(e[f>>2]|0)==1?e[n>>2]|0:0;break t}case 1:break;default:{t=0;break t}}if((e[u>>2]|0)!=1&&!((e[a>>2]|0)==0&(e[c>>2]|0)==1&(e[f>>2]|0)==1)){t=0;break}t=e[t>>2]|0}while(0);return y=U,t|0}function IB(t){t=t|0,k0(t),L(t)}function SB(t,n,i,u,c,f){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0,se(t,e[n+8>>2]|0,f)|0?Cl(0,n,i,u,c):(t=e[t+8>>2]|0,Hs[e[(e[t>>2]|0)+20>>2]&3](t,n,i,u,c,f))}function TB(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0,a=0,h=0;t:do if(se(t,e[n+8>>2]|0,c)|0)Gl(0,n,i,u);else{if(!(se(t,e[n>>2]|0,c)|0)){a=e[t+8>>2]|0,Bu[e[(e[a>>2]|0)+24>>2]&3](a,n,i,u,c);break}if((e[n+16>>2]|0)!=(i|0)&&(a=n+20|0,(e[a>>2]|0)!=(i|0))){e[n+32>>2]=u,u=n+44|0;do if((e[u>>2]|0)!=4)if(f=n+52|0,d[f>>0]=0,h=n+53|0,d[h>>0]=0,t=e[t+8>>2]|0,Hs[e[(e[t>>2]|0)+20>>2]&3](t,n,i,i,1,c),d[h>>0]|0){if(h=(d[f>>0]|0)==0,e[u>>2]=3,h)break;break t}else{e[u>>2]=4;break}while(0);if(e[a>>2]=i,h=n+40|0,e[h>>2]=(e[h>>2]|0)+1,(e[n+36>>2]|0)!=1||(e[n+24>>2]|0)!=2)break;d[n+54>>0]=1;break}(u|0)==1&&(e[n+32>>2]=1)}while(0)}function RB(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0,se(t,e[n+8>>2]|0,0)|0?Xl(0,n,i,u):(t=e[t+8>>2]|0,Ps[e[(e[t>>2]|0)+28>>2]&7](t,n,i,u))}function L(t){t=t|0,Yl(t)}function JR(t){t=t|0}function UB(){var t=0,n=0;t=Dh()|0,t|0&&(n=e[t>>2]|0,n|0)&&Wh(n+48|0)|0&&Eh(e[n+12>>2]|0),Eh(VB()|0)}function Eh(t){t=t|0;var n=0;n=y,y=y+16|0,Kl[t&3](),Mi(20559,n)}function VB(){return 2}function xB(t){t=t|0}function bB(t){t=t|0,L(t)}function MB(t){return t=t|0,20599}function yu(t){t=t|0,e[t>>2]=5916,Gh(t+4|0)}function NB(t){t=t|0,yu(t),L(t)}function kB(t){return t=t|0,Xh(t+4|0)|0}function Xh(t){return t=t|0,e[t>>2]|0}function Gh(t){t=t|0;var n=0,i=0;OB(t)|0&&(n=ZB(e[t>>2]|0)|0,i=n+8|0,t=e[i>>2]|0,e[i>>2]=t+-1,(t|0)<1)&&L(n)}function OB(t){return t=t|0,1}function ZB(t){return t=t|0,t+-12|0}function Ar(t){t=t|0,e[t>>2]=5936,Gh(t+4|0)}function DB(t){t=t|0,Ar(t),L(t)}function WB(t){return t=t|0,Xh(t+4|0)|0}function zB(t){t=t|0,yu(t),L(t)}function EB(t){t=t|0,yu(t),L(t)}function XB(){var t=0;t=y,y=y+16|0,Mi(20848,t)}function GB(t){t=t|0,k0(t),L(t)}function CB(t,n,i){return t=t|0,n=n|0,i=i|0,se(t,n,0)|0}function jB(t){t=t|0,k0(t),L(t)}function LB(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0;F=y,y=y+64|0,p=F;do if(se(n,4048,0)|0)e[i>>2]=0,n=1;else{if(JB(t,n,0)|0){if(n=e[i>>2]|0,!n){n=1;break}e[i>>2]=e[n>>2],n=1;break}if(n|0&&(u=dr(n,3840,3976,0)|0,(u|0)!=0))if(n=e[i>>2]|0,n|0&&(e[i>>2]=e[n>>2]),n=e[u+8>>2]|0,f=t+8|0,c=e[f>>2]|0,!(n&7&(c^7)|0)&&!((n&96^96)&c|0))if(c=t+12|0,t=e[c>>2]|0,u=u+12|0,n=e[u>>2]|0,se(t,n,0)|0)n=1;else{if(se(t,4040,0)|0){if(!n){n=1;break}n=(dr(n,3840,3992,0)|0)==0;break}if(t){if(n=dr(t,3840,3976,0)|0,n|0){if(!(e[f>>2]&1)){n=0;break}n=YB(n,e[u>>2]|0)|0;break}if(n=e[c>>2]|0,n){if(n=dr(n,3840,4008,0)|0,n|0){if(!(e[f>>2]&1)){n=0;break}n=Ch(n,e[u>>2]|0)|0;break}if(n=e[c>>2]|0,n|0&&(a=dr(n,3840,3824,0)|0,(a|0)!=0)&&(h=e[u>>2]|0,(h|0)!=0)&&(g=dr(h,3840,3824,0)|0,(g|0)!=0)){e[p>>2]=g,e[p+4>>2]=0,e[p+8>>2]=a,e[p+12>>2]=-1,n=p+16|0,t=p+24|0,u=p+48|0,c=n,f=c+36|0;do e[c>>2]=0,c=c+4|0;while((c|0)<(f|0));Z[n+36>>1]=0,d[n+38>>0]=0,e[u>>2]=1,Ps[e[(e[g>>2]|0)+28>>2]&7](g,p,e[i>>2]|0,1);do if((e[t>>2]|0)==1){if(!(e[i>>2]|0)){n=1;break}e[i>>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 y=F,n|0}function JB(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;return e[t+8>>2]&24?(i=1,c=5):n|0&&(u=dr(n,3840,3960,0)|0,(u|0)!=0)?(i=(e[u+8>>2]&24|0)!=0,c=5):i=0,(c|0)==5&&(i=se(t,n,i)|0),i|0}function YB(t,n){t=t|0,n=n|0;for(var i=0,u=0,c=0,f=0,a=0;;){if(!n){n=0;break}if(i=dr(n,3840,3976,0)|0,!i){n=0;break}if(c=e[t+8>>2]|0,e[i+8>>2]&~c|0){n=0;break}if(u=t+12|0,n=e[u>>2]|0,i=i+12|0,se(n,e[i>>2]|0,0)|0){n=1;break}if((c&1|0)==0|(n|0)==0){n=0;break}if(t=dr(n,3840,3976,0)|0,!t){a=9;break}n=e[i>>2]|0}return(a|0)==9&&(n=e[u>>2]|0,n|0&&(f=dr(n,3840,4008,0)|0,(f|0)!=0)?n=Ch(f,e[i>>2]|0)|0:n=0),n|0}function Ch(t,n){t=t|0,n=n|0;var i=0;return n|0&&(i=dr(n,3840,4008,0)|0,(i|0)!=0)&&!(e[i+8>>2]&~e[t+8>>2]|0)&&se(e[t+12>>2]|0,e[i+12>>2]|0,0)|0?t=se(e[t+16>>2]|0,e[i+16>>2]|0,0)|0:t=0,t|0}function PB(t){t=t|0,k0(t),L(t)}function HB(t,n,i,u,c,f){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0;var a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0;if(se(t,e[n+8>>2]|0,f)|0)Cl(0,n,i,u,c);else{b=n+52|0,h=d[b>>0]|0,N=n+53|0,a=d[N>>0]|0,M=e[t+12>>2]|0,F=t+16+(M<<3)|0,d[b>>0]=0,d[N>>0]=0,jl(t+16|0,n,i,u,c,f),p=d[b>>0]|0,h=p|h,g=d[N>>0]|0,a=g|a;t:do if((M|0)>1){I=n+24|0,U=t+8|0,M=n+54|0,t=t+24|0;do{if(a=a&1,h=h&1,d[M>>0]|0)break t;if(p<<24>>24){if((e[I>>2]|0)==1||!(e[U>>2]&2))break t}else if(g<<24>>24&&!(e[U>>2]&1|0))break t;d[b>>0]=0,d[N>>0]=0,jl(t,n,i,u,c,f),p=d[b>>0]|0,h=p|h,g=d[N>>0]|0,a=g|a,t=t+8|0}while(t>>>0<F>>>0)}while(0);d[b>>0]=h<<24>>24!=0&1,d[N>>0]=a<<24>>24!=0&1}}function QB(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0;t:do if(se(t,e[n+8>>2]|0,c)|0)Gl(0,n,i,u);else{if(!(se(t,e[n>>2]|0,c)|0)){if(M=e[t+12>>2]|0,p=t+16+(M<<3)|0,gu(t+16|0,n,i,u,c),f=t+24|0,(M|0)<=1)break;if(t=e[t+8>>2]|0,!(t&2|0)&&(h=n+36|0,(e[h>>2]|0)!=1)){if(!(t&1)){for(t=n+54|0;;)if(d[t>>0]|0||(e[h>>2]|0)==1||(gu(f,n,i,u,c),f=f+8|0,f>>>0>=p>>>0))break t}for(t=n+24|0,a=n+54|0;;)if(d[a>>0]|0||(e[h>>2]|0)==1&&(e[t>>2]|0)==1||(gu(f,n,i,u,c),f=f+8|0,f>>>0>=p>>>0))break t}for(t=n+54|0;;)if(d[t>>0]|0||(gu(f,n,i,u,c),f=f+8|0,f>>>0>=p>>>0))break t}if((e[n+16>>2]|0)!=(i|0)&&(M=n+20|0,(e[M>>2]|0)!=(i|0))){if(e[n+32>>2]=u,U=n+44|0,(e[U>>2]|0)!=4){h=t+16+(e[t+12>>2]<<3)|0,p=n+52|0,u=n+53|0,g=n+54|0,F=t+8|0,I=n+24|0,f=0,a=t+16|0,t=0;e:for(;;){if(a>>>0>=h>>>0){a=18;break}if(d[p>>0]=0,d[u>>0]=0,jl(a,n,i,i,1,c),d[g>>0]|0){a=18;break}do if(d[u>>0]|0){if(!(d[p>>0]|0))if(e[F>>2]&1){t=1;break}else{a=19;break e}if((e[I>>2]|0)==1){f=1,a=19;break e}if(e[F>>2]&2)f=1,t=1;else{f=1,a=19;break e}}while(0);a=a+8|0}if((a|0)==18&&(t?a=19:t=4),(a|0)==19&&(t=3),e[U>>2]=t,f&1)break}if(e[M>>2]=i,i=n+40|0,e[i>>2]=(e[i>>2]|0)+1,(e[n+36>>2]|0)!=1||(e[n+24>>2]|0)!=2)break;d[n+54>>0]=1;break}(u|0)==1&&(e[n+32>>2]=1)}while(0)}function $B(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;t:do if(se(t,e[n+8>>2]|0,0)|0)Xl(0,n,i,u);else if(f=e[t+12>>2]|0,c=t+16+(f<<3)|0,jh(t+16|0,n,i,u),(f|0)>1){f=n+54|0,t=t+24|0;do{if(jh(t,n,i,u),d[f>>0]|0)break t;t=t+8|0}while(t>>>0<c>>>0)}while(0)}function jh(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;f=e[t+4>>2]|0,i?(c=f>>8,f&1&&(c=e[(e[i>>2]|0)+c>>2]|0)):c=0,t=e[t>>2]|0,Ps[e[(e[t>>2]|0)+28>>2]&7](t,n,i+c|0,f&2|0?u:2)}function jl(t,n,i,u,c,f){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0;var a=0,h=0;h=e[t+4>>2]|0,a=h>>8,h&1&&(a=e[(e[u>>2]|0)+a>>2]|0),t=e[t>>2]|0,Hs[e[(e[t>>2]|0)+20>>2]&3](t,n,i,u+a|0,h&2|0?c:2,f)}function gu(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0,a=0;a=e[t+4>>2]|0,f=a>>8,a&1&&(f=e[(e[i>>2]|0)+f>>2]|0),t=e[t>>2]|0,Bu[e[(e[t>>2]|0)+24>>2]&3](t,n,i+f|0,a&2|0?u:2,c)}function qB(t){t=t|0,e[t>>2]=5896}function Ni(t){t=t|0;var n=0,i=0;return n=y,y=y+16|0,i=n,Lh(i,t),t=KB(i)|0,y=n,t|0}function Lh(t,n){t=t|0,n=n|0,r5(t,n)}function KB(t){t=t|0;var n=0,i=0;return n=y,y=y+16|0,i=n,Jh(i,e[t+4>>2]|0),(t5(i)|0)<<24>>24?t=0:t=e5(Yh(t)|0)|0,y=n,t|0}function Jh(t,n){t=t|0,n=n|0,e[t>>2]=n}function t5(t){return t=t|0,d[e[t>>2]>>0]|0}function Yh(t){return t=t|0,t|0}function e5(t){t=t|0;var n=0,i=0,u=0,c=0;c=y,y=y+16|0,u=c,t=e[t+8>>2]|0,n=d[t>>0]|0;do if(n<<24>>24!=1)if(n&2)Mi(20985,u);else{d[t>>0]=2,i=1;break}else i=0;while(0);return y=c,i|0}function r5(t,n){t=t|0,n=n|0,e[t>>2]=n,e[t+4>>2]=n,e[t+8>>2]=n+1,e[t+12>>2]=0}function ki(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,Lh(i,t),n5(i),y=n}function n5(t){t=t|0;var n=0,i=0;n=y,y=y+16|0,i=n,Jh(i,e[t+4>>2]|0),i5(i),s5(Yh(t)|0),y=n}function i5(t){t=t|0,d[e[t>>2]>>0]=1}function s5(t){t=t|0,d[e[t+8>>2]>>0]=1}function o5(){return 0}function J(t){t=t|0;var n=0,i=0;for(i=t|0?t:1;;){if(n=wu(i)|0,n|0){t=6;break}if(t=o5()|0,!t){t=5;break}Kl[t&3]()}if((t|0)==5)i=Lt(4)|0,qB(i),Jt(i|0,3880,121);else if((t|0)==6)return n|0;return 0}function Ph(t){return t=t|0,J(t)|0}function Hh(t){t=t|0,L(t)}function u5(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;return c=y,y=y+16|0,u=c,e[u>>2]=e[i>>2],t=Z0[e[(e[t>>2]|0)+16>>2]&7](t,n,u)|0,t&&(e[i>>2]=e[u>>2]),y=c,t&1|0}function c5(t){return t=t|0,t?t=(dr(t,3840,3976,0)|0)!=0&1:t=0,t|0}function l5(t){return t=t|0,0}function f5(){return(a5()|0)>0|0}function a5(){return dm()|0}function Qh(t){t=t|0}function h5(t){t=t|0,Qh(t),L(t)}function d5(t){return t=t|0,21039}function oe(t){t=t|0}function Xn(t){t=t|0;var n=0,i=0;n=t+8|0,e[n>>2]|0&&(i=e[n>>2]|0,e[n>>2]=i+-1,(i|0)!=0)||Et[e[(e[t>>2]|0)+16>>2]&255](t)}function A5(t){if(t=t|0,t=l5(t)|0,t)X5(t,21145);else return}function p5(t){t=t|0}function Ll(t,n){t=t|0,n=n|0;var i=0,u=0;u=mu(n)|0,i=J(u+13|0)|0,e[i>>2]=u,e[i+4>>2]=u,e[i+8>>2]=0,i=m5(i)|0,pr(i|0,n|0,u+1|0)|0,e[t>>2]=i}function m5(t){return t=t|0,t+12|0}function Gn(t,n){t=t|0,n=n|0,e[t>>2]=5916,Ll(t+4|0,n)}function y5(t,n){t=t|0,n=n|0,e[t>>2]=5936,Ll(t+4|0,(d[n+11>>0]|0)<0?e[n>>2]|0:n)}function Gr(t,n){t=t|0,n=n|0,e[t>>2]=5936,Ll(t+4|0,n)}function Jl(t){t=t|0,t=Lt(8)|0,Gn(t,21163),e[t>>2]=5956,Jt(t|0,3928,123)}function g5(t){t=t|0,t=Lt(8)|0,Gn(t,21163),e[t>>2]=5976,Jt(t|0,3944,123)}function vu(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;c=y,y=y+16|0,u=c,i>>>0>4294967279&&Jl(t),i>>>0<11?d[t+11>>0]=i:(a=i+16&-16,f=J(a)|0,e[t>>2]=f,e[t+8>>2]=a|-2147483648,e[t+4>>2]=i,t=f),js(t,n,i)|0,d[u>>0]=0,bs(t+i|0,u),y=c}function js(t,n,i){return t=t|0,n=n|0,i=i|0,i|0&&pr(t|0,n|0,i|0)|0,t|0}function Ls(t){t=t|0,(d[t+11>>0]|0)<0&&Ft(e[t>>2]|0,e[t+8>>2]&2147483647)}function v5(t,n,i,u,c,f,a,h){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0,a=a|0,h=h|0;var p=0,g=0,F=0,I=0,U=0;U=y,y=y+16|0,I=U,(-18-n|0)>>>0<i>>>0&&Jl(t),(d[t+11>>0]|0)<0?F=e[t>>2]|0:F=t,n>>>0<2147483623?(p=i+n|0,g=n<<1,p=p>>>0<g>>>0?g:p,p=p>>>0<11?11:p+16&-16):p=-17,g=J(p)|0,c|0&&js(g,F,c)|0,a|0&&js(g+c|0,h,a)|0,u=u-f|0,i=u-c|0,i|0&&js(g+c+a|0,F+c+f|0,i)|0,i=n+1|0,(i|0)!=11&&Ft(F,i),e[t>>2]=g,e[t+8>>2]=p|-2147483648,a=u+a|0,e[t+4>>2]=a,d[I>>0]=0,bs(g+a|0,I),y=U}function $h(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0,h=0,p=0;return p=y,y=y+16|0,a=p,h=t+11|0,u=d[h>>0]|0,f=u<<24>>24<0,f?(c=(e[t+8>>2]&2147483647)+-1|0,u=e[t+4>>2]|0):(c=10,u=u&255),(c-u|0)>>>0>=i>>>0?i|0&&(f?c=e[t>>2]|0:c=t,js(c+u|0,n,i)|0,u=u+i|0,(d[h>>0]|0)<0?e[t+4>>2]=u:d[h>>0]=u,d[a>>0]=0,bs(c+u|0,a)):v5(t,c,u+i-c|0,u,u,0,i,n),y=p,t|0}function w5(t,n){return t=t|0,n=n|0,$h(t,n,R0(n)|0)|0}function _5(t,n,i){return t=t|0,n=n|0,i=i|0,i?t=oB(t,n,i)|0:t=0,t|0}function F5(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0,a=0;return f=d[t+11>>0]|0,a=f<<24>>24<0,a?f=e[t+4>>2]|0:f=f&255,(c|0)==-1|f>>>0<n>>>0&&g5(t),f=f-n|0,i=f>>>0<i>>>0?f:i,a&&(t=e[t>>2]|0),f=i>>>0>c>>>0,t=_5(t+n|0,u,f?c:i)|0,t?t|0:(i>>>0<c>>>0?-1:f&1)|0}function B5(t){t=t|0}function I5(t){t=t|0,L(t)}function S5(t){return t=t|0,21228}function T5(t,n,i){t=t|0,n=n|0,i=i|0,e[t>>2]=i,e[t+4>>2]=n}function R5(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0;return c=y,y=y+16|0,u=c,Ys[e[(e[t>>2]|0)+12>>2]&15](u,t,n),(e[u+4>>2]|0)==(e[i+4>>2]|0)?t=(e[u>>2]|0)==(e[i>>2]|0):t=0,y=c,t|0}function U5(t,n,i){return t=t|0,n=n|0,i=i|0,((e[n>>2]|0)==(i|0)?(e[n+4>>2]|0)==(t|0):0)|0}function V5(t,n,i){t=t|0,n=n|0,i=i|0,(i|0)>256?vu(t,21176,R0(21176)|0):qh(t,0,i)}function qh(t,n,i){t=t|0,n=n|0,i=i|0,x5(t,i)}function x5(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0,a=0;a=y,y=y+1040|0,c=a+1024|0,i=a,f=e[(An()|0)>>2]|0,u=b5(pB(n,i,1024)|0,i)|0,d[u>>0]|0?i=u:(e[c>>2]=n,uB(i,1024,21211,c)|0),e[(An()|0)>>2]=f,vu(t,i,R0(i)|0),y=a}function b5(t,n){t=t|0,n=n|0;var i=0,u=0;switch(t|0){case 0:{i=n;break}case-1:{t=e[(An()|0)>>2]|0,u=3;break}default:u=3}return(u|0)==3&&((t|0)==28?i=22145:ym()),i|0}function M5(t){t=t|0,L(t)}function N5(t){return t=t|0,21353}function k5(t,n,i){t=t|0,n=n|0,i=i|0,(i|0)>256?(Kh()|0,n=6180):(Z5()|0,n=6176),e[t>>2]=i,e[t+4>>2]=n}function O5(t,n,i){t=t|0,n=n|0,i=i|0,(i|0)>256?vu(t,21319,R0(21319)|0):qh(t,0,i)}function Kh(){return!(d[21488]|0)&&Ni(21488)|0&&ki(21488),6180}function Z5(){return!(d[21480]|0)&&Ni(21480)|0&&ki(21480),6176}function td(t){t=t|0,Ar(t)}function D5(t){t=t|0,td(t),L(t)}function W5(t,n){t=t|0,n=n|0;var i=0;i=e[n+4>>2]|0,Ys[e[(e[i>>2]|0)+24>>2]&15](t,i,e[n>>2]|0)}function z5(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;for(f=y,y=y+16|0,c=f,e[n>>2]|0&&(u=d[i+11>>0]|0,u<<24>>24<0?u=e[i+4>>2]|0:u=u&255,u|0&&w5(i,21417)|0,W5(c,n),n=d[c+11>>0]|0,u=n<<24>>24<0,$h(i,u?e[c>>2]|0:c,u?e[c+4>>2]|0:n&255)|0,Ls(c)),e[t>>2]=e[i>>2],e[t+4>>2]=e[i+4>>2],e[t+8>>2]=e[i+8>>2],u=0;(u|0)!=3;)e[i+(u<<2)>>2]=0,u=u+1|0;y=f}function E5(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;u=y,y=y+32|0,f=u+12|0,c=u,vu(c,i,R0(i)|0),z5(f,n,c),y5(t,f),Ls(f),Ls(c),e[t>>2]=6192,c=n,n=e[c+4>>2]|0,i=t+8|0,e[i>>2]=e[c>>2],e[i+4>>2]=n,y=u}function X5(t,n){t=t|0,n=n|0;var i=0,u=0,c=0;c=y,y=y+16|0,u=c+8|0,i=Lt(16)|0,Kh()|0,e[c>>2]=t,e[c+4>>2]=6180,e[u>>2]=e[c>>2],e[u+4>>2]=e[c+4>>2],E5(i,u,n),Jt(i|0,4272,136)}function xe(t){t=t|0,t=Lt(8)|0,Gn(t,21420),e[t>>2]=5956,Jt(t|0,3928,123)}function wu(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0,b=0,q=0,X=0,E=0,Y=0,D=0,xt=0;xt=y,y=y+16|0,U=xt;do if(t>>>0<245){if(g=t>>>0<11?16:t+11&-8,t=g>>>3,I=e[5412]|0,i=I>>>t,i&3|0)return n=(i&1^1)+t|0,t=21688+(n<<1<<2)|0,i=t+8|0,u=e[i>>2]|0,c=u+8|0,f=e[c>>2]|0,(f|0)==(t|0)?e[5412]=I&~(1<<n):(e[f+12>>2]=t,e[i>>2]=f),D=n<<3,e[u+4>>2]=D|3,D=u+D+4|0,e[D>>2]=e[D>>2]|1,D=c,y=xt,D|0;if(F=e[5414]|0,g>>>0>F>>>0){if(i|0)return n=2<<t,n=i<<t&(n|0-n),n=(n&0-n)+-1|0,h=n>>>12&16,n=n>>>h,i=n>>>5&8,n=n>>>i,f=n>>>2&4,n=n>>>f,t=n>>>1&2,n=n>>>t,u=n>>>1&1,u=(i|h|f|t|u)+(n>>>u)|0,n=21688+(u<<1<<2)|0,t=n+8|0,f=e[t>>2]|0,h=f+8|0,i=e[h>>2]|0,(i|0)==(n|0)?(t=I&~(1<<u),e[5412]=t):(e[i+12>>2]=n,e[t>>2]=i,t=I),D=u<<3,a=D-g|0,e[f+4>>2]=g|3,c=f+g|0,e[c+4>>2]=a|1,e[f+D>>2]=a,F|0&&(u=e[5417]|0,n=F>>>3,i=21688+(n<<1<<2)|0,n=1<<n,t&n?(t=i+8|0,n=e[t>>2]|0):(e[5412]=t|n,n=i,t=i+8|0),e[t>>2]=u,e[n+12>>2]=u,e[u+8>>2]=n,e[u+12>>2]=i),e[5414]=a,e[5417]=c,D=h,y=xt,D|0;if(f=e[5413]|0,f){for(i=(f&0-f)+-1|0,c=i>>>12&16,i=i>>>c,u=i>>>5&8,i=i>>>u,a=i>>>2&4,i=i>>>a,h=i>>>1&2,i=i>>>h,p=i>>>1&1,p=e[21952+((u|c|a|h|p)+(i>>>p)<<2)>>2]|0,i=p,h=p,p=(e[p+4>>2]&-8)-g|0;t=e[i+16>>2]|0,!(!t&&(t=e[i+20>>2]|0,!t));)a=(e[t+4>>2]&-8)-g|0,c=a>>>0<p>>>0,i=t,h=c?t:h,p=c?a:p;if(a=h+g|0,a>>>0>h>>>0){c=e[h+24>>2]|0,n=e[h+12>>2]|0;do if((n|0)==(h|0)){if(t=h+20|0,n=e[t>>2]|0,!n&&(t=h+16|0,n=e[t>>2]|0,!n)){i=0;break}for(;;)if(u=n+20|0,i=e[u>>2]|0,i)n=i,t=u;else if(u=n+16|0,i=e[u>>2]|0,i)n=i,t=u;else break;e[t>>2]=0,i=n}else i=e[h+8>>2]|0,e[i+12>>2]=n,e[n+8>>2]=i,i=n;while(0);do if(c|0){if(n=e[h+28>>2]|0,t=21952+(n<<2)|0,(h|0)==(e[t>>2]|0)){if(e[t>>2]=i,!i){e[5413]=f&~(1<<n);break}}else if(D=c+16|0,e[((e[D>>2]|0)==(h|0)?D:c+20|0)>>2]=i,!i)break;e[i+24>>2]=c,n=e[h+16>>2]|0,n|0&&(e[i+16>>2]=n,e[n+24>>2]=i),n=e[h+20>>2]|0,n|0&&(e[i+20>>2]=n,e[n+24>>2]=i)}while(0);return p>>>0<16?(D=p+g|0,e[h+4>>2]=D|3,D=h+D+4|0,e[D>>2]=e[D>>2]|1):(e[h+4>>2]=g|3,e[a+4>>2]=p|1,e[a+p>>2]=p,F|0&&(u=e[5417]|0,n=F>>>3,i=21688+(n<<1<<2)|0,n=1<<n,n&I?(t=i+8|0,n=e[t>>2]|0):(e[5412]=n|I,n=i,t=i+8|0),e[t>>2]=u,e[n+12>>2]=u,e[u+8>>2]=n,e[u+12>>2]=i),e[5414]=p,e[5417]=a),D=h+8|0,y=xt,D|0}else I=g}else I=g}else I=g}else if(t>>>0<=4294967231)if(t=t+11|0,g=t&-8,u=e[5413]|0,u){c=0-g|0,t=t>>>8,t?g>>>0>16777215?p=31:(I=(t+1048320|0)>>>16&8,b=t<<I,h=(b+520192|0)>>>16&4,b=b<<h,p=(b+245760|0)>>>16&2,p=14-(h|I|p)+(b<<p>>>15)|0,p=g>>>(p+7|0)&1|p<<1):p=0,i=e[21952+(p<<2)>>2]|0;t:do if(!i)i=0,t=0,b=61;else for(t=0,h=g<<((p|0)==31?0:25-(p>>>1)|0),f=0;;){if(a=(e[i+4>>2]&-8)-g|0,a>>>0<c>>>0)if(a)t=i,c=a;else{t=i,c=0,b=65;break t}if(b=e[i+20>>2]|0,i=e[i+16+(h>>>31<<2)>>2]|0,f=(b|0)==0|(b|0)==(i|0)?f:b,i)h=h<<1;else{i=f,b=61;break}}while(0);if((b|0)==61){if((i|0)==0&(t|0)==0){if(t=2<<p,t=(t|0-t)&u,!t){I=g;break}I=(t&0-t)+-1|0,a=I>>>12&16,I=I>>>a,f=I>>>5&8,I=I>>>f,h=I>>>2&4,I=I>>>h,p=I>>>1&2,I=I>>>p,i=I>>>1&1,t=0,i=e[21952+((f|a|h|p|i)+(I>>>i)<<2)>>2]|0}i?b=65:(h=t,a=c)}if((b|0)==65)for(f=i;;)if(I=(e[f+4>>2]&-8)-g|0,i=I>>>0<c>>>0,c=i?I:c,t=i?f:t,i=e[f+16>>2]|0,i||(i=e[f+20>>2]|0),i)f=i;else{h=t,a=c;break}if(h|0&&a>>>0<((e[5414]|0)-g|0)>>>0&&(F=h+g|0,F>>>0>h>>>0)){f=e[h+24>>2]|0,n=e[h+12>>2]|0;do if((n|0)==(h|0)){if(t=h+20|0,n=e[t>>2]|0,!n&&(t=h+16|0,n=e[t>>2]|0,!n)){n=0;break}for(;;)if(c=n+20|0,i=e[c>>2]|0,i)n=i,t=c;else if(c=n+16|0,i=e[c>>2]|0,i)n=i,t=c;else break;e[t>>2]=0}else D=e[h+8>>2]|0,e[D+12>>2]=n,e[n+8>>2]=D;while(0);do if(f){if(t=e[h+28>>2]|0,i=21952+(t<<2)|0,(h|0)==(e[i>>2]|0)){if(e[i>>2]=n,!n){u=u&~(1<<t),e[5413]=u;break}}else if(D=f+16|0,e[((e[D>>2]|0)==(h|0)?D:f+20|0)>>2]=n,!n)break;e[n+24>>2]=f,t=e[h+16>>2]|0,t|0&&(e[n+16>>2]=t,e[t+24>>2]=n),t=e[h+20>>2]|0,t&&(e[n+20>>2]=t,e[t+24>>2]=n)}while(0);t:do if(a>>>0<16)D=a+g|0,e[h+4>>2]=D|3,D=h+D+4|0,e[D>>2]=e[D>>2]|1;else{if(e[h+4>>2]=g|3,e[F+4>>2]=a|1,e[F+a>>2]=a,n=a>>>3,a>>>0<256){i=21688+(n<<1<<2)|0,t=e[5412]|0,n=1<<n,t&n?(t=i+8|0,n=e[t>>2]|0):(e[5412]=t|n,n=i,t=i+8|0),e[t>>2]=F,e[n+12>>2]=F,e[F+8>>2]=n,e[F+12>>2]=i;break}if(n=a>>>8,n?a>>>0>16777215?i=31:(Y=(n+1048320|0)>>>16&8,D=n<<Y,E=(D+520192|0)>>>16&4,D=D<<E,i=(D+245760|0)>>>16&2,i=14-(E|Y|i)+(D<<i>>>15)|0,i=a>>>(i+7|0)&1|i<<1):i=0,n=21952+(i<<2)|0,e[F+28>>2]=i,t=F+16|0,e[t+4>>2]=0,e[t>>2]=0,t=1<<i,!(u&t)){e[5413]=u|t,e[n>>2]=F,e[F+24>>2]=n,e[F+12>>2]=F,e[F+8>>2]=F;break}n=e[n>>2]|0;e:do if((e[n+4>>2]&-8|0)!=(a|0)){for(u=a<<((i|0)==31?0:25-(i>>>1)|0);i=n+16+(u>>>31<<2)|0,t=e[i>>2]|0,!!t;)if((e[t+4>>2]&-8|0)==(a|0)){n=t;break e}else u=u<<1,n=t;e[i>>2]=F,e[F+24>>2]=n,e[F+12>>2]=F,e[F+8>>2]=F;break t}while(0);Y=n+8|0,D=e[Y>>2]|0,e[D+12>>2]=F,e[Y>>2]=F,e[F+8>>2]=D,e[F+12>>2]=n,e[F+24>>2]=0}while(0);return D=h+8|0,y=xt,D|0}else I=g}else I=g;else I=-1;while(0);if(i=e[5414]|0,i>>>0>=I>>>0)return n=i-I|0,t=e[5417]|0,n>>>0>15?(D=t+I|0,e[5417]=D,e[5414]=n,e[D+4>>2]=n|1,e[t+i>>2]=n,e[t+4>>2]=I|3):(e[5414]=0,e[5417]=0,e[t+4>>2]=i|3,D=t+i+4|0,e[D>>2]=e[D>>2]|1),D=t+8|0,y=xt,D|0;if(a=e[5415]|0,a>>>0>I>>>0)return E=a-I|0,e[5415]=E,D=e[5418]|0,Y=D+I|0,e[5418]=Y,e[Y+4>>2]=E|1,e[D+4>>2]=I|3,D=D+8|0,y=xt,D|0;if(e[5530]|0?t=e[5532]|0:(e[5532]=4096,e[5531]=4096,e[5533]=-1,e[5534]=-1,e[5535]=0,e[5523]=0,e[5530]=U&-16^1431655768,t=4096),h=I+48|0,p=I+47|0,f=t+p|0,c=0-t|0,g=f&c,g>>>0<=I>>>0||(t=e[5522]|0,t|0&&(F=e[5520]|0,U=F+g|0,U>>>0<=F>>>0|U>>>0>t>>>0)))return D=0,y=xt,D|0;t:do if(e[5523]&4)n=0,b=143;else{i=e[5418]|0;e:do if(i){for(u=22096;U=e[u>>2]|0,!(U>>>0<=i>>>0&&(U+(e[u+4>>2]|0)|0)>>>0>i>>>0);)if(t=e[u+8>>2]|0,t)u=t;else{b=128;break e}if(n=f-a&c,n>>>0<2147483647)if(t=Oi(n)|0,(t|0)==((e[u>>2]|0)+(e[u+4>>2]|0)|0)){if((t|0)!=-1){a=n,f=t,b=145;break t}}else u=t,b=136;else n=0}else b=128;while(0);do if((b|0)==128)if(i=Oi(0)|0,(i|0)!=-1&&(n=i,M=e[5531]|0,N=M+-1|0,n=(N&n|0?(N+n&0-M)-n|0:0)+g|0,M=e[5520]|0,N=n+M|0,n>>>0>I>>>0&n>>>0<2147483647)){if(U=e[5522]|0,U|0&&N>>>0<=M>>>0|N>>>0>U>>>0){n=0;break}if(t=Oi(n)|0,(t|0)==(i|0)){a=n,f=i,b=145;break t}else u=t,b=136}else n=0;while(0);do if((b|0)==136){if(i=0-n|0,!(h>>>0>n>>>0&(n>>>0<2147483647&(u|0)!=-1)))if((u|0)==-1){n=0;break}else{a=n,f=u,b=145;break t}if(t=e[5532]|0,t=p-n+t&0-t,t>>>0>=2147483647){a=n,f=u,b=145;break t}if((Oi(t)|0)==-1){Oi(i)|0,n=0;break}else{a=t+n|0,f=u,b=145;break t}}while(0);e[5523]=e[5523]|4,b=143}while(0);if((b|0)==143&&g>>>0<2147483647&&(E=Oi(g)|0,N=Oi(0)|0,q=N-E|0,X=q>>>0>(I+40|0)>>>0,!((E|0)==-1|X^1|E>>>0<N>>>0&((E|0)!=-1&(N|0)!=-1)^1))&&(a=X?q:n,f=E,b=145),(b|0)==145){n=(e[5520]|0)+a|0,e[5520]=n,n>>>0>(e[5521]|0)>>>0&&(e[5521]=n),p=e[5418]|0;t:do if(p){for(n=22096;;){if(t=e[n>>2]|0,i=e[n+4>>2]|0,(f|0)==(t+i|0)){b=154;break}if(u=e[n+8>>2]|0,u)n=u;else break}if((b|0)==154&&(Y=n+4|0,(e[n+12>>2]&8|0)==0)&&f>>>0>p>>>0&t>>>0<=p>>>0){e[Y>>2]=i+a,D=(e[5415]|0)+a|0,E=p+8|0,E=E&7|0?0-E&7:0,Y=p+E|0,E=D-E|0,e[5418]=Y,e[5415]=E,e[Y+4>>2]=E|1,e[p+D+4>>2]=40,e[5419]=e[5534];break}for(f>>>0<(e[5416]|0)>>>0&&(e[5416]=f),i=f+a|0,n=22096;;){if((e[n>>2]|0)==(i|0)){b=162;break}if(t=e[n+8>>2]|0,t)n=t;else break}if((b|0)==162&&!(e[n+12>>2]&8|0)){e[n>>2]=f,F=n+4|0,e[F>>2]=(e[F>>2]|0)+a,F=f+8|0,F=f+(F&7|0?0-F&7:0)|0,n=i+8|0,n=i+(n&7|0?0-n&7:0)|0,g=F+I|0,h=n-F-I|0,e[F+4>>2]=I|3;e:do if((p|0)==(n|0))D=(e[5415]|0)+h|0,e[5415]=D,e[5418]=g,e[g+4>>2]=D|1;else{if((e[5417]|0)==(n|0)){D=(e[5414]|0)+h|0,e[5414]=D,e[5417]=g,e[g+4>>2]=D|1,e[g+D>>2]=D;break}if(t=e[n+4>>2]|0,(t&3|0)==1){a=t&-8,u=t>>>3;r:do if(t>>>0<256)if(t=e[n+8>>2]|0,i=e[n+12>>2]|0,(i|0)==(t|0)){e[5412]=e[5412]&~(1<<u);break}else{e[t+12>>2]=i,e[i+8>>2]=t;break}else{f=e[n+24>>2]|0,t=e[n+12>>2]|0;do if((t|0)==(n|0)){if(i=n+16|0,u=i+4|0,t=e[u>>2]|0,t)i=u;else if(t=e[i>>2]|0,!t){t=0;break}for(;;)if(c=t+20|0,u=e[c>>2]|0,u)t=u,i=c;else if(c=t+16|0,u=e[c>>2]|0,u)t=u,i=c;else break;e[i>>2]=0}else D=e[n+8>>2]|0,e[D+12>>2]=t,e[t+8>>2]=D;while(0);if(!f)break;i=e[n+28>>2]|0,u=21952+(i<<2)|0;do if((e[u>>2]|0)!=(n|0)){if(D=f+16|0,e[((e[D>>2]|0)==(n|0)?D:f+20|0)>>2]=t,!t)break r}else{if(e[u>>2]=t,t|0)break;e[5413]=e[5413]&~(1<<i);break r}while(0);if(e[t+24>>2]=f,i=n+16|0,u=e[i>>2]|0,u|0&&(e[t+16>>2]=u,e[u+24>>2]=t),i=e[i+4>>2]|0,!i)break;e[t+20>>2]=i,e[i+24>>2]=t}while(0);n=n+a|0,c=a+h|0}else c=h;if(n=n+4|0,e[n>>2]=e[n>>2]&-2,e[g+4>>2]=c|1,e[g+c>>2]=c,n=c>>>3,c>>>0<256){i=21688+(n<<1<<2)|0,t=e[5412]|0,n=1<<n,t&n?(t=i+8|0,n=e[t>>2]|0):(e[5412]=t|n,n=i,t=i+8|0),e[t>>2]=g,e[n+12>>2]=g,e[g+8>>2]=n,e[g+12>>2]=i;break}n=c>>>8;do if(!n)u=0;else{if(c>>>0>16777215){u=31;break}Y=(n+1048320|0)>>>16&8,D=n<<Y,E=(D+520192|0)>>>16&4,D=D<<E,u=(D+245760|0)>>>16&2,u=14-(E|Y|u)+(D<<u>>>15)|0,u=c>>>(u+7|0)&1|u<<1}while(0);if(n=21952+(u<<2)|0,e[g+28>>2]=u,t=g+16|0,e[t+4>>2]=0,e[t>>2]=0,t=e[5413]|0,i=1<<u,!(t&i)){e[5413]=t|i,e[n>>2]=g,e[g+24>>2]=n,e[g+12>>2]=g,e[g+8>>2]=g;break}n=e[n>>2]|0;r:do if((e[n+4>>2]&-8|0)!=(c|0)){for(u=c<<((u|0)==31?0:25-(u>>>1)|0);i=n+16+(u>>>31<<2)|0,t=e[i>>2]|0,!!t;)if((e[t+4>>2]&-8|0)==(c|0)){n=t;break r}else u=u<<1,n=t;e[i>>2]=g,e[g+24>>2]=n,e[g+12>>2]=g,e[g+8>>2]=g;break e}while(0);Y=n+8|0,D=e[Y>>2]|0,e[D+12>>2]=g,e[Y>>2]=g,e[g+8>>2]=D,e[g+12>>2]=n,e[g+24>>2]=0}while(0);return D=F+8|0,y=xt,D|0}for(n=22096;t=e[n>>2]|0,!(t>>>0<=p>>>0&&(D=t+(e[n+4>>2]|0)|0,D>>>0>p>>>0));)n=e[n+8>>2]|0;c=D+-47|0,t=c+8|0,t=c+(t&7|0?0-t&7:0)|0,c=p+16|0,t=t>>>0<c>>>0?p:t,n=t+8|0,i=a+-40|0,E=f+8|0,E=E&7|0?0-E&7:0,Y=f+E|0,E=i-E|0,e[5418]=Y,e[5415]=E,e[Y+4>>2]=E|1,e[f+i+4>>2]=40,e[5419]=e[5534],i=t+4|0,e[i>>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]=f,e[5525]=a,e[5527]=0,e[5526]=n,n=t+24|0;do Y=n,n=n+4|0,e[n>>2]=7;while((Y+8|0)>>>0<D>>>0);if((t|0)!=(p|0)){if(f=t-p|0,e[i>>2]=e[i>>2]&-2,e[p+4>>2]=f|1,e[t>>2]=f,n=f>>>3,f>>>0<256){i=21688+(n<<1<<2)|0,t=e[5412]|0,n=1<<n,t&n?(t=i+8|0,n=e[t>>2]|0):(e[5412]=t|n,n=i,t=i+8|0),e[t>>2]=p,e[n+12>>2]=p,e[p+8>>2]=n,e[p+12>>2]=i;break}if(n=f>>>8,n?f>>>0>16777215?u=31:(Y=(n+1048320|0)>>>16&8,D=n<<Y,E=(D+520192|0)>>>16&4,D=D<<E,u=(D+245760|0)>>>16&2,u=14-(E|Y|u)+(D<<u>>>15)|0,u=f>>>(u+7|0)&1|u<<1):u=0,i=21952+(u<<2)|0,e[p+28>>2]=u,e[p+20>>2]=0,e[c>>2]=0,n=e[5413]|0,t=1<<u,!(n&t)){e[5413]=n|t,e[i>>2]=p,e[p+24>>2]=i,e[p+12>>2]=p,e[p+8>>2]=p;break}n=e[i>>2]|0;e:do if((e[n+4>>2]&-8|0)!=(f|0)){for(u=f<<((u|0)==31?0:25-(u>>>1)|0);i=n+16+(u>>>31<<2)|0,t=e[i>>2]|0,!!t;)if((e[t+4>>2]&-8|0)==(f|0)){n=t;break e}else u=u<<1,n=t;e[i>>2]=p,e[p+24>>2]=n,e[p+12>>2]=p,e[p+8>>2]=p;break t}while(0);Y=n+8|0,D=e[Y>>2]|0,e[D+12>>2]=p,e[Y>>2]=p,e[p+8>>2]=D,e[p+12>>2]=n,e[p+24>>2]=0}}else D=e[5416]|0,(D|0)==0|f>>>0<D>>>0&&(e[5416]=f),e[5524]=f,e[5525]=a,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,D=a+-40|0,E=f+8|0,E=E&7|0?0-E&7:0,Y=f+E|0,E=D-E|0,e[5418]=Y,e[5415]=E,e[Y+4>>2]=E|1,e[f+D+4>>2]=40,e[5419]=e[5534];while(0);if(n=e[5415]|0,n>>>0>I>>>0)return E=n-I|0,e[5415]=E,D=e[5418]|0,Y=D+I|0,e[5418]=Y,e[Y+4>>2]=E|1,e[D+4>>2]=I|3,D=D+8|0,y=xt,D|0}return e[(An()|0)>>2]=48,D=0,y=xt,D|0}function Yl(t){t=t|0;var n=0,i=0,u=0,c=0,f=0,a=0,h=0,p=0;if(!t)return;i=t+-8|0,c=e[5416]|0,t=e[t+-4>>2]|0,n=t&-8,p=i+n|0;do if(t&1)h=i,a=i;else{if(u=e[i>>2]|0,!(t&3)||(a=i+(0-u)|0,f=u+n|0,a>>>0<c>>>0))return;if((e[5417]|0)==(a|0)){if(t=p+4|0,n=e[t>>2]|0,(n&3|0)!=3){h=a,n=f;break}e[5414]=f,e[t>>2]=n&-2,e[a+4>>2]=f|1,e[a+f>>2]=f;return}if(i=u>>>3,u>>>0<256)if(t=e[a+8>>2]|0,n=e[a+12>>2]|0,(n|0)==(t|0)){e[5412]=e[5412]&~(1<<i),h=a,n=f;break}else{e[t+12>>2]=n,e[n+8>>2]=t,h=a,n=f;break}c=e[a+24>>2]|0,t=e[a+12>>2]|0;do if((t|0)==(a|0)){if(n=a+16|0,i=n+4|0,t=e[i>>2]|0,t)n=i;else if(t=e[n>>2]|0,!t){t=0;break}for(;;)if(u=t+20|0,i=e[u>>2]|0,i)t=i,n=u;else if(u=t+16|0,i=e[u>>2]|0,i)t=i,n=u;else break;e[n>>2]=0}else h=e[a+8>>2]|0,e[h+12>>2]=t,e[t+8>>2]=h;while(0);if(c){if(n=e[a+28>>2]|0,i=21952+(n<<2)|0,(e[i>>2]|0)==(a|0)){if(e[i>>2]=t,!t){e[5413]=e[5413]&~(1<<n),h=a,n=f;break}}else if(h=c+16|0,e[((e[h>>2]|0)==(a|0)?h:c+20|0)>>2]=t,!t){h=a,n=f;break}e[t+24>>2]=c,n=a+16|0,i=e[n>>2]|0,i|0&&(e[t+16>>2]=i,e[i+24>>2]=t),n=e[n+4>>2]|0,n?(e[t+20>>2]=n,e[n+24>>2]=t,h=a,n=f):(h=a,n=f)}else h=a,n=f}while(0);if(a>>>0>=p>>>0||(t=p+4|0,u=e[t>>2]|0,!(u&1)))return;if(u&2)e[t>>2]=u&-2,e[h+4>>2]=n|1,e[a+n>>2]=n,c=n;else{if((e[5418]|0)==(p|0)){if(p=(e[5415]|0)+n|0,e[5415]=p,e[5418]=h,e[h+4>>2]=p|1,(h|0)!=(e[5417]|0))return;e[5417]=0,e[5414]=0;return}if((e[5417]|0)==(p|0)){p=(e[5414]|0)+n|0,e[5414]=p,e[5417]=a,e[h+4>>2]=p|1,e[a+p>>2]=p;return}c=(u&-8)+n|0,i=u>>>3;do if(u>>>0<256)if(n=e[p+8>>2]|0,t=e[p+12>>2]|0,(t|0)==(n|0)){e[5412]=e[5412]&~(1<<i);break}else{e[n+12>>2]=t,e[t+8>>2]=n;break}else{f=e[p+24>>2]|0,t=e[p+12>>2]|0;do if((t|0)==(p|0)){if(n=p+16|0,i=n+4|0,t=e[i>>2]|0,t)n=i;else if(t=e[n>>2]|0,!t){i=0;break}for(;;)if(u=t+20|0,i=e[u>>2]|0,i)t=i,n=u;else if(u=t+16|0,i=e[u>>2]|0,i)t=i,n=u;else break;e[n>>2]=0,i=t}else i=e[p+8>>2]|0,e[i+12>>2]=t,e[t+8>>2]=i,i=t;while(0);if(f|0){if(t=e[p+28>>2]|0,n=21952+(t<<2)|0,(e[n>>2]|0)==(p|0)){if(e[n>>2]=i,!i){e[5413]=e[5413]&~(1<<t);break}}else if(u=f+16|0,e[((e[u>>2]|0)==(p|0)?u:f+20|0)>>2]=i,!i)break;e[i+24>>2]=f,t=p+16|0,n=e[t>>2]|0,n|0&&(e[i+16>>2]=n,e[n+24>>2]=i),t=e[t+4>>2]|0,t|0&&(e[i+20>>2]=t,e[t+24>>2]=i)}}while(0);if(e[h+4>>2]=c|1,e[a+c>>2]=c,(h|0)==(e[5417]|0)){e[5414]=c;return}}if(t=c>>>3,c>>>0<256){i=21688+(t<<1<<2)|0,n=e[5412]|0,t=1<<t,n&t?(n=i+8|0,t=e[n>>2]|0):(e[5412]=n|t,t=i,n=i+8|0),e[n>>2]=h,e[t+12>>2]=h,e[h+8>>2]=t,e[h+12>>2]=i;return}t=c>>>8,t?c>>>0>16777215?u=31:(a=(t+1048320|0)>>>16&8,p=t<<a,f=(p+520192|0)>>>16&4,p=p<<f,u=(p+245760|0)>>>16&2,u=14-(f|a|u)+(p<<u>>>15)|0,u=c>>>(u+7|0)&1|u<<1):u=0,t=21952+(u<<2)|0,e[h+28>>2]=u,e[h+20>>2]=0,e[h+16>>2]=0,n=e[5413]|0,i=1<<u;t:do if(!(n&i))e[5413]=n|i,e[t>>2]=h,e[h+24>>2]=t,e[h+12>>2]=h,e[h+8>>2]=h;else{t=e[t>>2]|0;e:do if((e[t+4>>2]&-8|0)!=(c|0)){for(u=c<<((u|0)==31?0:25-(u>>>1)|0);i=t+16+(u>>>31<<2)|0,n=e[i>>2]|0,!!n;)if((e[n+4>>2]&-8|0)==(c|0)){t=n;break e}else u=u<<1,t=n;e[i>>2]=h,e[h+24>>2]=t,e[h+12>>2]=h,e[h+8>>2]=h;break t}while(0);a=t+8|0,p=e[a>>2]|0,e[p+12>>2]=h,e[a>>2]=h,e[h+8>>2]=p,e[h+12>>2]=t,e[h+24>>2]=0}while(0);if(p=(e[5420]|0)+-1|0,e[5420]=p,!(p|0)){for(t=22104;t=e[t>>2]|0,t;)t=t+8|0;e[5420]=-1}}function Oi(t){t=t|0;var n=0,i=0,u=0;u=t+3&-4,t=nd()|0,n=e[t>>2]|0,i=n+u|0;do if((u|0)<1|i>>>0>n>>>0){if(i>>>0>(gm()|0)>>>0&&!(wm(i|0)|0))break;return e[t>>2]=i,u=n,u|0}while(0);return e[(An()|0)>>2]=48,u=-1,u|0}function G5(t){t=t|0;var n=0;return n=y,y=y+t|0,y=y+15&-16,n|0}function C5(t){t=t|0,y=t}function j5(){return y|0}function L5(t,n){t=t|0,n=n|0;var i=0,u=0,c=0,f=0;return f=t&65535,c=n&65535,i=It(c,f)|0,u=t>>>16,t=(i>>>16)+(It(c,u)|0)|0,c=n>>>16,n=It(c,f)|0,jt((t>>>16)+(It(c,u)|0)+(((t&65535)+n|0)>>>16)|0),t+n<<16|i&65535|0|0}function Pl(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0;var c=0,f=0;return c=t,f=i,i=L5(c,f)|0,t=Vt()|0,jt((It(n,f)|0)+(It(u,c)|0)+t|t&0|0),i|0|0|0}function Ur(t,n,i,u){return t=t|0,n=n|0,i=i|0,u=u|0,i=t+i>>>0,jt(n+u+(i>>>0<t>>>0|0)>>>0|0),i|0|0}function O0(t,n,i,u){return t=t|0,n=n|0,i=i|0,u=u|0,u=n-u-(i>>>0>t>>>0|0)>>>0,jt(u|0),t-i>>>0|0|0}function ed(t){return t=t|0,(t?31-(zn(t^t-1)|0)|0:32)|0}function J5(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0;var f=0,a=0,h=0,p=0,g=0,F=0,I=0,U=0,M=0,N=0;if(F=t,p=n,g=p,a=i,U=u,h=U,!g)return f=(c|0)!=0,h?f?(e[c>>2]=t|0,e[c+4>>2]=n&0,U=0,c=0,jt(U|0),c|0):(U=0,c=0,jt(U|0),c|0):(f&&(e[c>>2]=(F>>>0)%(a>>>0),e[c+4>>2]=0),U=0,c=(F>>>0)/(a>>>0)>>>0,jt(U|0),c|0);f=(h|0)==0;do if(a){if(!f){if(f=(zn(h|0)|0)-(zn(g|0)|0)|0,f>>>0<=31){I=f+1|0,h=31-f|0,n=f-31>>31,a=I,t=F>>>(I>>>0)&n|g<<h,n=g>>>(I>>>0)&n,f=0,h=F<<h;break}return c?(e[c>>2]=t|0,e[c+4>>2]=p|n&0,U=0,c=0,jt(U|0),c|0):(U=0,c=0,jt(U|0),c|0)}if(f=a-1|0,f&a|0){h=(zn(a|0)|0)+33-(zn(g|0)|0)|0,N=64-h|0,I=32-h|0,p=I>>31,M=h-32|0,n=M>>31,a=h,t=I-1>>31&g>>>(M>>>0)|(g<<I|F>>>(h>>>0))&n,n=n&g>>>(h>>>0),f=F<<N&p,h=(g<<N|F>>>(M>>>0))&p|F<<I&h-33>>31;break}return c|0&&(e[c>>2]=f&F,e[c+4>>2]=0),(a|0)==1?(M=p|n&0,N=t|0|0,jt(M|0),N|0):(N=ed(a|0)|0,M=g>>>(N>>>0)|0,N=g<<32-N|F>>>(N>>>0)|0,jt(M|0),N|0)}else{if(f)return c|0&&(e[c>>2]=(g>>>0)%(a>>>0),e[c+4>>2]=0),M=0,N=(g>>>0)/(a>>>0)>>>0,jt(M|0),N|0;if(!F)return c|0&&(e[c>>2]=0,e[c+4>>2]=(g>>>0)%(h>>>0)),M=0,N=(g>>>0)/(h>>>0)>>>0,jt(M|0),N|0;if(f=h-1|0,!(f&h))return c|0&&(e[c>>2]=t|0,e[c+4>>2]=f&g|n&0),M=0,N=g>>>((ed(h|0)|0)>>>0),jt(M|0),N|0;if(f=(zn(h|0)|0)-(zn(g|0)|0)|0,f>>>0<=30){n=f+1|0,h=31-f|0,a=n,t=g<<h|F>>>(n>>>0),n=g>>>(n>>>0),f=0,h=F<<h;break}return c?(e[c>>2]=t|0,e[c+4>>2]=p|n&0,M=0,N=0,jt(M|0),N|0):(M=0,N=0,jt(M|0),N|0)}while(0);if(!a)g=h,p=0,h=0;else{I=i|0|0,F=U|u&0,g=Ur(I|0,F|0,-1,-1)|0,i=Vt()|0,p=h,h=0;do u=p,p=f>>>31|p<<1,f=h|f<<1,u=t<<1|u>>>31|0,U=t>>>31|n<<1|0,O0(g|0,i|0,u|0,U|0)|0,N=Vt()|0,M=N>>31|((N|0)<0?-1:0)<<1,h=M&1,t=O0(u|0,U|0,M&I|0,(((N|0)<0?-1:0)>>31|((N|0)<0?-1:0)<<1)&F|0)|0,n=Vt()|0,a=a-1|0;while(a|0);g=p,p=0}return a=0,c|0&&(e[c>>2]=t,e[c+4>>2]=n),M=(f|0)>>>31|(g|a)<<1|(a<<1|f>>>31)&0|p,N=(f<<1|0>>>31)&-2|h,jt(M|0),N|0}function Hl(t,n,i,u){return t=t|0,n=n|0,i=i|0,u=u|0,J5(t,n,i,u,0)|0}function _u(t,n,i){return t=t|0,n=n|0,i=i|0,(i|0)<32?(jt(n>>>i|0),t>>>i|(n&(1<<i)-1)<<32-i):(jt(0),n>>>i-32|0)}function rd(t,n,i){return t=t|0,n=n|0,i=i|0,(i|0)<32?(jt(n<<i|(t&(1<<i)-1<<32-i)>>>32-i|0),t<<i):(jt(t<<i-32|0),0)}function nd(){return 22176}function id(t){return t=t|0,(t&255)<<24|(t>>8&255)<<16|(t>>16&255)<<8|t>>>24|0}function pr(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0;if((i|0)>=512)return vm(t|0,n|0,i|0)|0,t|0;if(f=t|0,c=t+i|0,(t&3)==(n&3)){for(;t&3;){if(!i)return f|0;d[t>>0]=d[n>>0]|0,t=t+1|0,n=n+1|0,i=i-1|0}for(i=c&-4|0,u=i-64|0;(t|0)<=(u|0);)e[t>>2]=e[n>>2],e[t+4>>2]=e[n+4>>2],e[t+8>>2]=e[n+8>>2],e[t+12>>2]=e[n+12>>2],e[t+16>>2]=e[n+16>>2],e[t+20>>2]=e[n+20>>2],e[t+24>>2]=e[n+24>>2],e[t+28>>2]=e[n+28>>2],e[t+32>>2]=e[n+32>>2],e[t+36>>2]=e[n+36>>2],e[t+40>>2]=e[n+40>>2],e[t+44>>2]=e[n+44>>2],e[t+48>>2]=e[n+48>>2],e[t+52>>2]=e[n+52>>2],e[t+56>>2]=e[n+56>>2],e[t+60>>2]=e[n+60>>2],t=t+64|0,n=n+64|0;for(;(t|0)<(i|0);)e[t>>2]=e[n>>2],t=t+4|0,n=n+4|0}else for(i=c-4|0;(t|0)<(i|0);)d[t>>0]=d[n>>0]|0,d[t+1>>0]=d[n+1>>0]|0,d[t+2>>0]=d[n+2>>0]|0,d[t+3>>0]=d[n+3>>0]|0,t=t+4|0,n=n+4|0;for(;(t|0)<(c|0);)d[t>>0]=d[n>>0]|0,t=t+1|0,n=n+1|0;return f|0}function Vr(t,n,i){t=t|0,n=n|0,i=i|0;var u=0;if((n|0)<(t|0)&(t|0)<(n+i|0)){for(u=t,n=n+i|0,t=t+i|0;(i|0)>0;)t=t-1|0,n=n-1|0,i=i-1|0,d[t>>0]=d[n>>0]|0;t=u}else pr(t,n,i)|0;return t|0}function Zi(t,n,i){t=t|0,n=n|0,i=i|0;var u=0,c=0,f=0,a=0;if(f=t+i|0,n=n&255,(i|0)>=67){for(;t&3;)d[t>>0]=n,t=t+1|0;for(u=f&-4|0,a=n|n<<8|n<<16|n<<24,c=u-64|0;(t|0)<=(c|0);)e[t>>2]=a,e[t+4>>2]=a,e[t+8>>2]=a,e[t+12>>2]=a,e[t+16>>2]=a,e[t+20>>2]=a,e[t+24>>2]=a,e[t+28>>2]=a,e[t+32>>2]=a,e[t+36>>2]=a,e[t+40>>2]=a,e[t+44>>2]=a,e[t+48>>2]=a,e[t+52>>2]=a,e[t+56>>2]=a,e[t+60>>2]=a,t=t+64|0;for(;(t|0)<(u|0);)e[t>>2]=a,t=t+4|0}for(;(t|0)<(f|0);)d[t>>0]=n,t=t+1|0;return f-i|0}function Y5(t){return t=t|0,ql[t&3]()|0}function P5(t,n){return t=t|0,n=n|0,Fu[t&15](n|0)|0}function H5(t,n,i,u,c,f,a){return t=t|0,n=n|0,i=+i,u=u|0,c=c|0,f=f|0,a=a|0,cd[t&1](n|0,+i,u|0,c|0,f|0,a|0)|0}function Q5(t,n,i){return t=t|0,n=n|0,i=i|0,Js[t&63](n|0,i|0)|0}function $5(t,n,i,u){return t=t|0,n=n|0,i=i|0,u=u|0,Z0[t&7](n|0,i|0,u|0)|0}function q5(t){t=t|0,Kl[t&3]()}function K5(t,n){t=t|0,n=n|0,Et[t&255](n|0)}function tI(t,n,i){t=t|0,n=n|0,i=i|0,li[t&15](n|0,i|0)}function eI(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0,Ys[t&15](n|0,i|0,u|0)}function rI(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,Ps[t&7](n|0,i|0,u|0,c|0)}function nI(t,n,i,u,c,f){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0,Bu[t&3](n|0,i|0,u|0,c|0,f|0)}function iI(t,n,i,u,c,f,a){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0,a=a|0,Hs[t&3](n|0,i|0,u|0,c|0,f|0,a|0)}function sd(){return De(0),0}function Ql(t){return t=t|0,De(1),0}function sI(t,n,i,u,c,f){return t=t|0,n=+n,i=i|0,u=u|0,c=c|0,f=f|0,De(2),0}function ne(t,n){return t=t|0,n=n|0,De(3),0}function od(t,n,i){return t=t|0,n=n|0,i=i|0,De(4),0}function ud(){De(5)}function z(t){t=t|0,De(6)}function ci(t,n){t=t|0,n=n|0,De(7)}function Di(t,n,i){t=t|0,n=n|0,i=i|0,De(8)}function $l(t,n,i,u){t=t|0,n=n|0,i=i|0,u=u|0,De(9)}function oI(t,n,i,u,c){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,De(10)}function uI(t,n,i,u,c,f){t=t|0,n=n|0,i=i|0,u=u|0,c=c|0,f=f|0,De(11)}var ql=[sd,Y3,M8,sd],Fu=[Ql,WB,vy,Sy,MB,kB,d5,S5,N5,Z3,Tm,_8,H3,k8,Ql,Ql],cd=[sI,KF],Js=[ne,Wm,Lm,Iy,I4,P4,tg,sg,og,cg,Fg,Rg,Xg,Jg,qg,iv,Iv,Mv,Wv,Gv,Qv,ew,uw,aw,vw,xw,Zw,Xw,Yw,Kw,f_,m_,I_,M_,G_,P_,i3,h3,w3,T3,k3,A8,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne,ne],Z0=[od,lB,wB,CB,LB,R5,U5,od],Kl=[ud,XB,mB,ud],Et=[z,oe,Zm,Dm,zm,Cm,jm,Jm,Ar,fy,Ty,gy,_y,Fy,by,My,Xy,Gy,Ky,t4,e4,p4,F4,B4,S4,L4,_2,H4,Ti,Q4,q4,K4,eg,B2,ig,Sr,ug,wg,_g,Bg,M2,Tg,zg,Eg,Gg,Z2,Lg,Qg,$g,Kg,E2,nv,Fv,Bv,Sv,rh,Nv,Zv,Dv,zv,nh,Cv,Pv,Hv,$v,ih,rw,sw,ow,cw,ch,hw,yw,gw,ww,Uw,Vw,bw,kw,Ow,Dw,fh,Gw,Lw,Jw,Pw,ah,qw,c_,l_,a_,dh,p_,F_,B_,S_,Ah,b_,E_,X_,C_,ph,Y_,r3,n3,s3,mh,a3,g3,v3,_3,yh,S3,M3,N3,O3,k0,yB,gB,vB,IB,xB,bB,yu,NB,DB,zB,EB,GB,jB,PB,Qh,h5,B5,I5,M5,td,D5,z3,I8,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z,z],li=[ci,wy,By,Sm,Um,Vm,xm,bm,tB,ci,ci,ci,ci,ci,ci,ci],Ys=[Di,T5,V5,k5,O5,Im,Rm,c8,J8,q8,Di,Di,Di,Di,Di,Di],Ps=[$l,BB,RB,$B,r8,X8,$l,$l],Bu=[oI,FB,TB,QB],Hs=[uI,_B,SB,HB];return{__ZSt18uncaught_exceptionv:f5,___cxa_can_catch:u5,___cxa_is_pointer_type:c5,___embind_register_native_and_builtin_types:Bh,___errno_location:An,___getTypeName:jF,___muldi3:Pl,___udivdi3:Hl,_bitshift64Lshr:_u,_bitshift64Shl:rd,_emscripten_get_sbrk_ptr:nd,_free:Yl,_i64Add:Ur,_i64Subtract:O0,_llvm_bswap_i32:id,_malloc:wu,_memcpy:pr,_memmove:Vr,_memset:Zi,dynCall_i:Y5,dynCall_ii:P5,dynCall_iidiiii:H5,dynCall_iii:Q5,dynCall_iiii:$5,dynCall_v:q5,dynCall_vi:K5,dynCall_vii:tI,dynCall_viii:eI,dynCall_viiii:rI,dynCall_viiiii:nI,dynCall_viiiiii:iI,globalCtors:_m,stackAlloc:G5,stackRestore:C5,stackSave:j5}}(im,sm,gi),Vs=o.__ZSt18uncaught_exceptionv=St.__ZSt18uncaught_exceptionv,cR=o.___cxa_can_catch=St.___cxa_can_catch,lR=o.___cxa_is_pointer_type=St.___cxa_is_pointer_type,fR=o.___embind_register_native_and_builtin_types=St.___embind_register_native_and_builtin_types,aR=o.___errno_location=St.___errno_location,om=o.___getTypeName=St.___getTypeName,hR=o.___muldi3=St.___muldi3,dR=o.___udivdi3=St.___udivdi3,AR=o._bitshift64Lshr=St._bitshift64Lshr,pR=o._bitshift64Shl=St._bitshift64Shl,mR=o._emscripten_get_sbrk_ptr=St._emscripten_get_sbrk_ptr,si=o._free=St._free,yR=o._i64Add=St._i64Add,gR=o._i64Subtract=St._i64Subtract,vR=o._llvm_bswap_i32=St._llvm_bswap_i32,fl=o._malloc=St._malloc,wR=o._memcpy=St._memcpy,_R=o._memmove=St._memmove,FR=o._memset=St._memset,um=o.globalCtors=St.globalCtors,Ga=o.stackAlloc=St.stackAlloc,cm=o.stackRestore=St.stackRestore,lm=o.stackSave=St.stackSave,BR=o.dynCall_i=St.dynCall_i,IR=o.dynCall_ii=St.dynCall_ii,SR=o.dynCall_iidiiii=St.dynCall_iidiiii,TR=o.dynCall_iii=St.dynCall_iii,RR=o.dynCall_iiii=St.dynCall_iiii,UR=o.dynCall_v=St.dynCall_v,VR=o.dynCall_vi=St.dynCall_vi,xR=o.dynCall_vii=St.dynCall_vii,bR=o.dynCall_viii=St.dynCall_viii,MR=o.dynCall_viiii=St.dynCall_viiii,NR=o.dynCall_viiiii=St.dynCall_viiiii,kR=o.dynCall_viiiiii=St.dynCall_viiiiii;if(o.asm=St,nn)if(Ra(nn)||(nn=C(nn)),T||V){var fm=Ct(nn);Ze.set(fm,pa)}else{Lp("memory initializer");var al=function(w){w.byteLength&&(w=new Uint8Array(w)),Ze.set(w,pa),o.memoryInitializerRequest&&delete o.memoryInitializerRequest.response,Jp("memory initializer")},Ca=function(){mt(nn,al,function(){var w=new Error("could not load memory initializer "+nn);throw w})},ja=ii(nn);if(ja)al(ja.buffer);else if(o.memoryInitializerRequest){var La=function(){var w=o.memoryInitializerRequest,_=w.response;if(w.status!==200&&w.status!==0){var R=ii(o.memoryInitializerRequestURL);if(R)_=R.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+w.status+", retrying "+nn),Ca();return}}al(_)};o.memoryInitializerRequest.response?setTimeout(La,0):o.memoryInitializerRequest.addEventListener("load",La)}else Ca()}var Qo;function am(w){this.name="ExitStatus",this.message="Program terminated with exit("+w+")",this.status=w}Bs=function w(){Qo||hl(),Qo||(Bs=w)};function hl(w){if(w=w||l,wi>0||(Op(),wi>0))return;function _(){Qo||(Qo=!0,o.calledRun=!0,!ya&&(Zp(),Dp(),o.onRuntimeInitialized&&o.onRuntimeInitialized(),Wp()))}o.setStatus?(o.setStatus("Running..."),setTimeout(function(){setTimeout(function(){o.setStatus("")},1),_()},1)):_()}if(o.run=hl,o.preInit)for(typeof o.preInit=="function"&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();return ma=!0,hl(),o}var ti=null,fp={0:o=>({position:[o.getInt32(0,!0),o.getInt32(4,!0),o.getInt32(8,!0)],intensity:o.getUint16(12,!0),classification:o.getUint8(15)}),1:o=>({position:[o.getInt32(0,!0),o.getInt32(4,!0),o.getInt32(8,!0)],intensity:o.getUint16(12,!0),classification:o.getUint8(15)}),2:o=>({position:[o.getInt32(0,!0),o.getInt32(4,!0),o.getInt32(8,!0)],intensity:o.getUint16(12,!0),classification:o.getUint8(15),color:[o.getUint16(20,!0),o.getUint16(22,!0),o.getUint16(24,!0)]}),3:o=>({position:[o.getInt32(0,!0),o.getInt32(4,!0),o.getInt32(8,!0)],intensity:o.getUint16(12,!0),classification:o.getUint8(15),color:[o.getUint16(28,!0),o.getUint16(30,!0),o.getUint16(32,!0)]})};function yi(o,r={},s,l){l=l===void 0||l===0?1:l;let A=o.slice(s,s+r.BYTES_PER_ELEMENT*l),m=new r(A);if(l===1)return m[0];let v=[];for(let B=0;B<l;B++)v.push(m[B]);return v}function ap(o){let r=131,s={pointsOffset:yi(o,Uint32Array,32*3),pointsFormatId:yi(o,Uint8Array,32*3+8),pointsStructSize:yi(o,Uint16Array,32*3+8+1),pointsCount:yi(o,Uint32Array,32*3+11),scale:yi(o,Float64Array,r,3)};r+=24,s.offset=yi(o,Float64Array,r,3),r+=24;let l=yi(o,Float64Array,r,6);return r+=48,s.maxs=[l[0],l[2],l[4]],s.mins=[l[1],l[3],l[5]],s}var fa=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(r){this.arraybuffer=r}open(){return!0}getHeader(){return this.header=ap(this.arraybuffer),this.header}readData(r,s){let{header:l,arraybuffer:A}=this;if(!l)throw new Error("Cannot start reading data till a header request is issued");let{readOffset:m}=this,v;if(s<=1){r=Math.min(r,l.pointsCount-m),v=l.pointsOffset+m*l.pointsStructSize;let C=v+r*l.pointsStructSize;return m+=r,this.readOffset=m,{buffer:A.slice(v,C),count:r,hasMoreData:m<l.pointsCount}}let B=Math.min(r*s,l.pointsCount-m),T=Math.ceil(B/s),V=0,O=new Uint8Array(T*l.pointsStructSize);for(let C=0;C<B;C++){if(C%s===0){v=l.pointsOffset+m*l.pointsStructSize;let yt=new Uint8Array(A,v,l.pointsStructSize);O.set(yt,V*l.pointsStructSize),V++}m++}return this.readOffset=m,{buffer:O.buffer,count:V,hasMoreData:m<l.pointsCount}}close(){return this.arraybuffer=null,!0}},aa=class{arraybuffer;instance=null;header=null;constructor(r){this.arraybuffer=r,ti||(ti=la())}open(){try{let{arraybuffer:r}=this;this.instance=new ti.LASZip;let s=new Uint8Array(r),l=ti._malloc(r.byteLength);return this.instance.arraybuffer=r,this.instance.buf=l,ti.HEAPU8.set(s,l),this.instance.open(l,r.byteLength),this.instance.readOffset=0,!0}catch(r){throw new Error(`Failed to open file: ${r.message}`)}}getHeader(){if(!this.instance)throw new Error("You need to open the file before trying to read header");try{let r=ap(this.instance.arraybuffer);return r.pointsFormatId&=63,this.header=r,r}catch(r){throw new Error(`Failed to get header: ${r.message}`)}}readData(r,s,l){if(!this.instance)throw new Error("You need to open the file before trying to read stuff");let{header:A,instance:m}=this;if(!A)throw new Error("You need to query header before reading, I maintain state that way, sorry :(");try{let v=Math.min(r*l,A.pointsCount-m.readOffset),B=Math.ceil(v/l),T=0,V=new Uint8Array(B*A.pointsStructSize),O=ti._malloc(A.pointsStructSize);for(let C=0;C<v;C++){if(m.getPoint(O),C%l===0){let yt=new Uint8Array(ti.HEAPU8.buffer,O,A.pointsStructSize);V.set(yt,T*A.pointsStructSize),T++}m.readOffset++}return ti._free(O),{buffer:V.buffer,count:T,hasMoreData:m.readOffset<A.pointsCount}}catch(v){throw new Error(`Failed to read data: ${v.message}`)}}close(){try{return this.instance!==null&&(ti._free(this.instance.buf),this.instance.delete(),this.instance=null),!0}catch(r){throw new Error(`Failed to close file: ${r.message}`)}}},ha=class{arrayb;decoder;pointsCount;pointSize;scale;offset;mins;maxs;constructor(r,s,l){this.arrayb=r,this.decoder=fp[l.pointsFormatId],this.pointsCount=s,this.pointSize=l.pointsStructSize,this.scale=l.scale,this.offset=l.offset,this.mins=l.mins,this.maxs=l.maxs}getPoint(r){if(r<0||r>=this.pointsCount)throw new Error("Point index out of range");let s=new DataView(this.arrayb,r*this.pointSize,this.pointSize);return this.decoder(s)}},Yc=class{arraybuffer;formatId=0;loader;isCompressed=!0;isOpen=!1;version=0;versionAsString="";constructor(r){if(this.arraybuffer=r,this.determineVersion()>13)throw new Error("Only file versions <= 1.3 are supported at this time");if(this.determineFormat(),fp[this.formatId]===void 0)throw new Error("The point format ID is not supported");this.loader=this.isCompressed?new aa(this.arraybuffer):new fa(this.arraybuffer)}determineFormat(){let r=yi(this.arraybuffer,Uint8Array,104),s=(r&128)>>7,l=(r&64)>>6;if(s===1&&l===1)throw new Error("Old style compression not supported");this.formatId=r&63,this.isCompressed=s===1||l===1}determineVersion(){let r=new Int8Array(this.arraybuffer,24,2);return this.version=r[0]*10+r[1],this.versionAsString=`${r[0]}.${r[1]}`,this.version}open(){this.loader.open()&&(this.isOpen=!0)}getHeader(){return this.loader.getHeader()}readData(r,s,l){return this.loader.readData(r,s,l)}close(){this.loader.close()&&(this.isOpen=!1)}getUnpacker(){return ha}};function hp(o,r){let s=jT(o);return ua(r,s)}function jT(o){let r={};return r.las_pointsOffset=o.pointsOffset.toString(10),r.las_pointsFormatId=o.pointsFormatId.toString(10),r.las_pointsStructSize=o.pointsStructSize.toString(10),r.las_pointsCount=o.pointsCount.toString(10),r.las_scale=JSON.stringify(o.scale),r.las_offset=JSON.stringify(o.offset),o.maxs!==void 0&&(r.las_maxs=JSON.stringify(o.maxs)),o.mins!==void 0&&(r.las_mins=JSON.stringify(o.mins)),r.las_totalToRead=o.totalToRead.toString(10),r.las_pointsFortotalReadmatId=o.totalRead.toString(10),o.versionAsString!==void 0&&(r.las_versionAsString=o.versionAsString),o.isCompressed!==void 0&&(r.las_isCompressed=o.isCompressed.toString()),r}function Eo(o,r){return LT(o,r)}function LT(o,r={}){let s=0,l,A,m,v,B,T={loader:"las",loaderData:{},schema:{fields:[],metadata:{}},header:{vertexCount:0,boundingBox:[[0,0,0],[0,0,0]]},attributes:{},topology:"point-list",mode:0};return JT(o,r.las?.skip,(V={},O)=>{if(!B){B=O;let On=O.totalToRead,y0=r.las?.fp64?Float64Array:Float32Array;l=new y0(On*3),A=O.pointsFormatId>=2?new Uint8Array(On*4):null,m=new Uint16Array(On),v=new Uint8Array(On),T.loaderData=O,T.attributes={POSITION:{value:l,size:3},intensity:{value:m,size:1},classification:{value:v,size:1}},A&&(T.attributes.COLOR_0={value:A,size:4})}let C=V.pointsCount,{scale:[yt,mt,Ct],offset:[rn,kn,je]}=O,Fs=YT(V,C,r.las?.colorDepth);for(let On=0;On<C;On++){let{position:y0,color:ei,intensity:g0,classification:da}=V.getPoint(On);l[s*3]=y0[0]*yt+rn,l[s*3+1]=y0[1]*mt+kn,l[s*3+2]=y0[2]*Ct+je,ei&&A&&(Fs?(A[s*4]=ei[0]/256,A[s*4+1]=ei[1]/256,A[s*4+2]=ei[2]/256):(A[s*4]=ei[0],A[s*4+1]=ei[1],A[s*4+2]=ei[2]),A[s*4+3]=255),m[s]=g0,v[s]=da,s++}let Co={...T,header:{vertexCount:O.totalRead},progress:O.totalRead/O.totalToRead};r?.onProgress?.(Co)}),T.header={vertexCount:B.totalToRead,boundingBox:sa(T?.attributes||{})},T&&(T.schema=hp(T.loaderData,T.attributes)),T}function JT(o,r,s={}){let l=new Yc(o);try{l.open();let A=l.getHeader(),m=l.getUnpacker(),v=Math.ceil(A.pointsCount/Math.max(1,r));A.totalToRead=v;let B=0;for(;;){let T=l.readData(1e5,0,r);B+=T.count,A.totalRead=B,A.versionAsString=T.versionAsString,A.isCompressed=T.isCompressed;let V=new m(T.buffer,T.count,A);if(s(V,A),!T.hasMoreData||B>=v)break}}catch(A){throw A}finally{l.close()}}function YT(o={},r,s){let l=!1;switch(s){case 8:l=!1;break;case 16:l=!0;break;case"auto":if(o.getPoint(0).color)for(let A=0;A<r;A++){let{color:m}=o.getPoint(A);(m[0]>255||m[1]>255||m[2]>255)&&(l=!0)}break;default:console.warn("las: illegal value for options.las.colorDepth");break}return l}var PT="4.4.0-alpha.0",Xo={...Ru,dataType:null,batchType:null,name:"LAS",id:"las",module:"las",version:PT,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}}},dp={...Xo,parse:async(o,r)=>Eo(o,r),parseSync:(o,r)=>Eo(o,r)};var Ap={...Xo,dataType:null,batchType:null,worker:!1,parse:async o=>{let r=Eo(o);return oa(r,"arrow-table")}};return AI(Go);})();
|
|
28
37
|
return __exports__;
|
|
29
38
|
});
|