1
0
mirror of https://github.com/sehugg/8bitworkshop.git synced 2024-07-02 14:29:39 +00:00
8bitworkshop/src/worker/sdldz80.js

26 lines
437 KiB
JavaScript
Raw Normal View History

2017-01-15 18:31:52 +00:00
var sdldz80 = function(sdldz80) {
sdldz80 = sdldz80 || {};
var Module = sdldz80;
var Module;if(!Module)Module=(typeof sdldz80!=="undefined"?sdldz80:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["p
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.DYNAMICTOP_PTR|0;var l=env.tempDoublePtr|0;var m=env.ABORT|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0.0;var D=0;var E=global.Math.floor;var F=global.Math.abs;var G=global.Math.sqrt;var H=global.Math.pow;var I=global.Math.cos;var J=global.Math.sin;var K=global.Math.tan;var L=global.Math.acos;var M=global.Math.asin;var N=global.Math.atan;var O=global.Math.atan2;var P=global.Math.exp;var Q=global.Math.log;var R=global.Math.ceil;var S=global.Math.imul;var T=global.Math.min;var U=global.Math.max;var V=global.Math.clz32;var W=env.abort;var X=env.assert;var Y=env.enlargeMemory;var Z=env.getTotalMemory;var _=env.abortOnCannotGrowMemory;var $=env.invoke_ii;var aa=env.invoke_iiii;var ba=env.invoke_iii;var ca=env.invoke_iiiii;var da=env.invoke_vi;var ea=env._pthread_cleanup_pop;var fa=env.___syscall85;var ga=env.___syscall6;var ha=env.___syscall5;var ia=env.___assert_fail;var ja=env.___buildEnvironment;var ka=env.___setErrNo;var la=env.___syscall197;var ma=env.___syscall195;var na=env.__exit;var oa=env._emscripten_memcpy_big;var pa=env.___syscall221;var qa=env._getenv;var ra=env.___syscall54;var sa=env.___unlock;var ta=env.___lock;var ua=env._abort;var va=env._pthread_cleanup_push;var wa=env.___syscall140;var xa=env._exit;var ya=env.___syscall145;var za=env.___syscall146;var Aa=0.0;
// EMSCRIPTEN_START_FUNCS
function Ga(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function Ha(){return i|0}function Ia(a){a=a|0;i=a}function Ja(a,b){a=a|0;b=b|0;i=a;j=b}function Ka(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function La(a){a=a|0;D=a}function Ma(){return D|0}function Na(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;n=f+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(a[2747748]|0){a[2747748]=0;c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}c[m>>2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1;while(1){if((c[j>>2]|0)<=0)break;a[n>>0]=c[l>>2];e=lg(c[k>>2]|0)|0;c[l>>2]=e;if((e|0)==10|(c[l>>2]|0)==-1)break;if((a[n>>0]|0)==13?(e=a[n>>0]|0,d=c[h>>2]|0,c[h>>2]=d+1,a[d>>0]=e,e=(c[j>>2]|0)+-1|0,c[j>>2]=e,(e|0)<=0):0)break;if((c[l>>2]|0)==13)continue;e=c[l>>2]&255;d=c[h>>2]|0;c[h>>2]=d+1;a[d>>0]=e;c[j>>2]=(c[j>>2]|0)+-1}a[c[h>>2]>>0]=0;while(1){if(!((c[l>>2]|0)!=10?(c[l>>2]|0)!=-1:0))break;c[l>>2]=lg(c[k>>2]|0)|0}do if((c[l>>2]|0)==-1){if((c[h>>2]|0)!=(c[m>>2]|0)){a[2747748]=1;break}c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}while(0);c[g>>2]=c[m>>2];o=c[g>>2]|0;i=f;return o|0}function Oa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=kf(c[f>>2]|0)|0;while(1){if((c[h>>2]|0)<=0)break;if((a[(c[f>>2]|0)+((c[h>>2]|0)-1)>>0]|0)==47)break;if((a[(c[f>>2]|0)+((c[h>>2]|0)-1)>>0]|0)==92)break;c[h>>2]=(c[h>>2]|0)+-1}c[j>>2]=0;while(1){if(!(a[(c[f>>2]|0)+(c[h>>2]|0)>>0]|0)){k=10;break}if((a[(c[f>>2]|0)+(c[h>>2]|0)>>0]|0)==46){k=10;break}a[(c[g>>2]|0)+(c[j>>2]|0)>>0]=a[(c[f>>2]|0)+(c[h>>2]|0)>>0]|0;c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}if((k|0)==10){a[(c[g>>2]|0)+(c[j>>2]|0)>>0]=0;i=e;return c[h>>2]|0}return 0}function Pa(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;if((c[686622]|0)==0|(c[686696]|0)!=0){i=d;return}c[29034]=sg(c[29034]|0,(c[29033]|0)+1<<13)|0;c[g>>2]=Oa(c[e>>2]|0,(c[29034]|0)+(c[29033]<<13)+4096|0)|0;lf((c[29034]|0)+(c[29033]<<13)|0,c[e>>2]|0)|0;if((a[(c[29034]|0)+(c[29033]<<13)+(c[g>>2]|0)>>0]|0)==46)a[(c[29034]|0)+(c[29033]<<13)+(c[g>>2]|0)>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[29033]|0))break;if(!(Ie((c[29034]|0)+(c[29033]<<13)|0,(c[29034]|0)+(c[f>>2]<<13)|0)|0))break;c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)!=(c[29033]|0)){i=d;return}c[29033]=(c[29033]|0)+1;i=d;return}function Qa(){if(c[29034]|0){qg(c[29034]|0);c[29033]=0;c[29034]=0}if(c[29036]|0){qg(c[29036]|0);c[29035]=0;c[29036]=0}if(c[29038]|0){qg(c[29038]|0);c[29037]=0;c[29038]=0}if(c[29040]|0){qg(c[29040]|0);c[29039]=0;c[29040]=0}if(!(c[29041]|0))return;qg(c[29041]|0);c[29041]=0;return}function Ra(b){b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;a[f>>0]=b;c[29042]=(c[29042]|0)+(d[f>>0]|0);Rf(f,1,1,c[29043]|0)|0;i=e;return}function Sa(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ra(((c[d>>2]|0)%256|0)&255);Ra(((c[d>>2]|0)/256|0)&255);i=b;return}function Ta(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;Ra((kf(c[e>>2]|0)|0)&255);c[f>>2]=0;while(1){if(!(a[(c[e>>2]|0)+(c[f>>2]|0)>>0]|0))break;b=a[(c[e>>2]|0)+(c[f>>2]|0)>>0]|0;if(c[686628]|0)Ra((we(b<<24>>24)|0)&255);else Ra(b);c[f>>2]=(c[f>>2]|0)+1}i=d;return}function Ua(){Ra(256-((c[29042]|0)%256|0)&255);c[29042]=0;return}function Va(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+1104|0;f=e;g=e+56|0;h=e+52|0;j=e+1088|0;k=e+48|0;l=e+64|0;m=e+32|0;n=e+28|0;c[g>>2]=b;c[h>>2]=d;d=c[h>>2]|0;c[f>>2]=l;c[f+4>>2]=j;c[f+8>>2]=l+4;c[f+12>>2]=j;c[f+16>>2]=l+8;c[f+20>>2]=j;c[f+24>>2]=l+12;c[n>>2]=_f(d,104437,f)|0;c[n>>2]=((c[n>>2]|0)+1|0)/2|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[n>>2]|0))break;if((a[l+(c[k>>2]<<2)>>0]|0)==114?He(a[l+(c[k>>2]<<2)+1>>0]|0)|0:0)c[m+(c[k>>2]<<2)>>2]=(a[l+(c[k>>2]<<2)+1>>0]|0)-48;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[n>>2]|0))break;if((c[m+(c[k>>2]<<2)>>2]|0)!=((c[m+((c[k>>2]|0)-1<<2)>>2]|0)+1|0)){o=14;break}c[k>>2]=(c[k>>2]|0)+1}if((o|0)==14){i=e;return}if(0>(c[(c[g>>2]|0)+260>>2]|0)){i=e;return}if((c[(c[g>>2]|0)+260>>2]|0)>=(c[29037]|0)){i=e;return}c[(c[g>>2]|0)+268>>2]=(c[m>>2]|0)+(c[(c[29038]|0)+((c[(c[g>>2]|0)+260>>2]
function Sc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0;d=i;i=i+17152|0;e=d+376|0;f=d+368|0;g=d+360|0;h=d+352|0;j=d+344|0;k=d+336|0;l=d+312|0;m=d+304|0;n=d+296|0;o=d+288|0;p=d+280|0;q=d+256|0;r=d+248|0;s=d+240|0;t=d+232|0;u=d+224|0;v=d+200|0;w=d+192|0;x=d+184|0;y=d+176|0;z=d+168|0;A=d+144|0;B=d+120|0;C=d+112|0;D=d+104|0;E=d+96|0;F=d+80|0;G=d+72|0;H=d+56|0;I=d+40|0;J=d+32|0;K=d+24|0;L=d+16|0;M=d+8|0;N=d;O=d+16888|0;P=d+17016|0;Q=d+16884|0;R=d+16880|0;S=d+16876|0;T=d+16872|0;U=d+16868|0;V=d+16864|0;W=d+16860|0;X=d+16856|0;Y=d+16852|0;Z=d+16848|0;_=d+17e3|0;$=d+16985|0;aa=d+16970|0;ba=d+16955|0;ca=d+16914|0;da=d+16892|0;ea=d+12732|0;fa=d+8616|0;ga=d+4500|0;ha=d+384|0;c[O>>2]=b;if((be()|0)!=4)ia(111022,111024,715,111674);c[Q>>2]=0;c[T>>2]=0;c[V>>2]=-1;c[W>>2]=0;c[Y>>2]=0;b=ca;ja=111040;ka=b+41|0;do{a[b>>0]=a[ja>>0]|0;b=b+1|0;ja=ja+1|0}while((b|0)<(ka|0));b=da;ja=111081;ka=b+22|0;do{a[b>>0]=a[ja>>0]|0;b=b+1|0;ja=ja+1|0}while((b|0)<(ka|0));Ig(ea|0,87132,4116)|0;Ig(fa|0,91248,4116)|0;Ig(ga|0,95364,4116)|0;Ig(ha|0,99480,4116)|0;if(c[686696]|0){c[ga+12>>2]=16777216;c[ga>>2]=16777215;c[ha+12>>2]=16777216;c[ha>>2]=16777215}c[Z>>2]=Ic(c[(c[686701]|0)+8>>2]|0,110211,1)|0;if(!(c[Z>>2]|0))Gc(1);c[X>>2]=c[O>>2];while(1){if(!(c[X>>2]|0))break;ja=c[X>>2]|0;do if(c[(c[X>>2]|0)+32>>2]&32|0){if(c[ja+20>>2]|0){b=ha+8|0;c[b>>2]=(c[b>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0);if((c[(c[X>>2]|0)+16>>2]|0)>>>0<(c[ha>>2]|0)>>>0)c[ha>>2]=c[(c[X>>2]|0)+16>>2];if(((c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0)|0)>>>0>(c[ha+4>>2]|0)>>>0)c[ha+4>>2]=(c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0)}}else{b=(je(c[ja+36>>2]|0,110270)|0)!=0;ka=c[X>>2]|0;if(!b){b=ea+8|0;c[b>>2]=(c[b>>2]|0)+(c[ka+20>>2]|0);if((c[(c[X>>2]|0)+16>>2]|0)>>>0<(c[ea>>2]|0)>>>0)c[ea>>2]=c[(c[X>>2]|0)+16>>2];if(((c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0)|0)>>>0<=(c[ea+4>>2]|0)>>>0)break;c[ea+4>>2]=(c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0);break}b=(je(c[ka+36>>2]|0,111103)|0)!=0;ka=c[X>>2]|0;if(!b){b=fa+8|0;c[b>>2]=(c[b>>2]|0)+(c[ka+20>>2]|0);if((c[(c[X>>2]|0)+16>>2]|0)>>>0<(c[fa>>2]|0)>>>0)c[fa>>2]=c[(c[X>>2]|0)+16>>2];if(((c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0)|0)>>>0<=(c[fa+4>>2]|0)>>>0)break;c[fa+4>>2]=(c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0);break}b=(je(c[ka+36>>2]|0,111108)|0)!=0;ka=c[X>>2]|0;if(!b){c[Y>>2]=ka;b=fa+8|0;c[b>>2]=(c[b>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0);if((c[(c[X>>2]|0)+16>>2]|0)>>>0<(c[fa>>2]|0)>>>0)c[fa>>2]=c[(c[X>>2]|0)+16>>2];if(((c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0)|0)>>>0<=(c[fa+4>>2]|0)>>>0)break;c[fa+4>>2]=(c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0);break}if(c[ka+32>>2]&64|0?c[(c[X>>2]|0)+20>>2]|0:0){ka=ga+8|0;c[ka>>2]=(c[ka>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0);if((c[(c[X>>2]|0)+16>>2]|0)>>>0<(c[ga>>2]|0)>>>0)c[ga>>2]=c[(c[X>>2]|0)+16>>2];if(((c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0)|0)>>>0>(c[ga+4>>2]|0)>>>0)c[ga+4>>2]=(c[(c[X>>2]|0)+16>>2]|0)+(c[(c[X>>2]|0)+20>>2]|0)}}while(0);c[X>>2]=c[c[X>>2]>>2]}Sf(c[Z>>2]|0,111113,N)|0;Sf(c[Z>>2]|0,111135,M)|0;c[S>>2]=0;while(1){if((c[S>>2]|0)>>>0>=256)break;if(!(((c[S>>2]|0)>>>0)%16|0)){M=c[Z>>2]|0;c[L>>2]=c[S>>2];Sf(M,111173,L)|0}M=c[Z>>2]|0;c[K>>2]=a[2760115+(c[S>>2]|0)>>0];Sf(M,111183,K)|0;c[S>>2]=(c[S>>2]|0)+1}Sf(c[Z>>2]|0,111187,J)|0;c[S>>2]=0;while(1){if((c[S>>2]|0)>>>0>=256)break;la=c[S>>2]|0;if((a[2760115+(c[S>>2]|0)>>0]|0)==83){ma=44;break}c[S>>2]=la+1}if((ma|0)==44)c[T>>2]=la;c[S>>2]=c[T>>2];c[U>>2]=0;while(1){if((c[S>>2]|0)>>>0>=(c[686697]|0?c[686697]|0:256)>>>0)break;if((a[2760115+(c[S>>2]|0)>>0]|0)!=83)break;c[U>>2]=(c[U>>2]|0)+1;c[S>>2]=(c[S>>2]|0)+1}c[X>>2]=c[O>>2];while(1){if(!(c[X>>2]|0))break;if((c[(c[X>>2]|0)+28>>2]|0)>>>0>0){O=c[Z>>2]|0;la=(c[(c[X>>2]|0)+28>>2]|0)>>>0>1?110472:2768565;ma=c[(c[X>>2]|0)+36>>2]|0;c[I>>2]=c[(c[X>>2]|0)+28>>2];c[I+4>>2]=la;c[I+8>>2]=ma;Sf(O,111274,I)|0;c[Q>>2]=1}c[X>>2]=c[c[X>>2]>>2]}X
function pg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0;b=i;i=i+16|0;d=b;do if(a>>>0<245){e=a>>>0<11?16:a+11&-8;f=e>>>3;g=c[686813]|0;h=g>>>f;if(h&3|0){j=(h&1^1)+f|0;k=2747292+(j<<1<<2)|0;l=k+8|0;m=c[l>>2]|0;n=m+8|0;o=c[n>>2]|0;do if((k|0)!=(o|0)){if(o>>>0<(c[686817]|0)>>>0)ua();p=o+12|0;if((c[p>>2]|0)==(m|0)){c[p>>2]=k;c[l>>2]=o;break}else ua()}else c[686813]=g&~(1<<j);while(0);o=j<<3;c[m+4>>2]=o|3;l=m+o+4|0;c[l>>2]=c[l>>2]|1;q=n;i=b;return q|0}l=c[686815]|0;if(e>>>0>l>>>0){if(h|0){o=2<<f;k=h<<f&(o|0-o);o=(k&0-k)+-1|0;k=o>>>12&16;p=o>>>k;o=p>>>5&8;r=p>>>o;p=r>>>2&4;s=r>>>p;r=s>>>1&2;t=s>>>r;s=t>>>1&1;u=(o|k|p|r|s)+(t>>>s)|0;s=2747292+(u<<1<<2)|0;t=s+8|0;r=c[t>>2]|0;p=r+8|0;k=c[p>>2]|0;do if((s|0)!=(k|0)){if(k>>>0<(c[686817]|0)>>>0)ua();o=k+12|0;if((c[o>>2]|0)==(r|0)){c[o>>2]=s;c[t>>2]=k;v=g;break}else ua()}else{o=g&~(1<<u);c[686813]=o;v=o}while(0);k=(u<<3)-e|0;c[r+4>>2]=e|3;t=r+e|0;c[t+4>>2]=k|1;c[t+k>>2]=k;if(l|0){s=c[686818]|0;f=l>>>3;h=2747292+(f<<1<<2)|0;n=1<<f;if(v&n){f=h+8|0;m=c[f>>2]|0;if(m>>>0<(c[686817]|0)>>>0)ua();else{w=m;x=f}}else{c[686813]=v|n;w=h;x=h+8|0}c[x>>2]=s;c[w+12>>2]=s;c[s+8>>2]=w;c[s+12>>2]=h}c[686815]=k;c[686818]=t;q=p;i=b;return q|0}t=c[686814]|0;if(t){k=(t&0-t)+-1|0;h=k>>>12&16;s=k>>>h;k=s>>>5&8;n=s>>>k;s=n>>>2&4;f=n>>>s;n=f>>>1&2;m=f>>>n;f=m>>>1&1;j=c[2747556+((k|h|s|n|f)+(m>>>f)<<2)>>2]|0;f=j;m=j;n=(c[j+4>>2]&-8)-e|0;while(1){j=c[f+16>>2]|0;if(!j){s=c[f+20>>2]|0;if(!s)break;else y=s}else y=j;j=(c[y+4>>2]&-8)-e|0;s=j>>>0<n>>>0;f=y;m=s?y:m;n=s?j:n}f=c[686817]|0;if(m>>>0<f>>>0)ua();p=m+e|0;if(m>>>0>=p>>>0)ua();r=c[m+24>>2]|0;u=c[m+12>>2]|0;do if((u|0)==(m|0)){j=m+20|0;s=c[j>>2]|0;if(!s){h=m+16|0;k=c[h>>2]|0;if(!k){z=0;break}else{A=k;B=h}}else{A=s;B=j}while(1){j=A+20|0;s=c[j>>2]|0;if(s|0){A=s;B=j;continue}j=A+16|0;s=c[j>>2]|0;if(!s)break;else{A=s;B=j}}if(B>>>0<f>>>0)ua();else{c[B>>2]=0;z=A;break}}else{j=c[m+8>>2]|0;if(j>>>0<f>>>0)ua();s=j+12|0;if((c[s>>2]|0)!=(m|0))ua();h=u+8|0;if((c[h>>2]|0)==(m|0)){c[s>>2]=u;c[h>>2]=j;z=u;break}else ua()}while(0);do if(r|0){u=c[m+28>>2]|0;f=2747556+(u<<2)|0;if((m|0)==(c[f>>2]|0)){c[f>>2]=z;if(!z){c[686814]=t&~(1<<u);break}}else{if(r>>>0<(c[686817]|0)>>>0)ua();u=r+16|0;if((c[u>>2]|0)==(m|0))c[u>>2]=z;else c[r+20>>2]=z;if(!z)break}u=c[686817]|0;if(z>>>0<u>>>0)ua();c[z+24>>2]=r;f=c[m+16>>2]|0;do if(f|0)if(f>>>0<u>>>0)ua();else{c[z+16>>2]=f;c[f+24>>2]=z;break}while(0);f=c[m+20>>2]|0;if(f|0)if(f>>>0<(c[686817]|0)>>>0)ua();else{c[z+20>>2]=f;c[f+24>>2]=z;break}}while(0);if(n>>>0<16){r=n+e|0;c[m+4>>2]=r|3;t=m+r+4|0;c[t>>2]=c[t>>2]|1}else{c[m+4>>2]=e|3;c[p+4>>2]=n|1;c[p+n>>2]=n;if(l|0){t=c[686818]|0;r=l>>>3;f=2747292+(r<<1<<2)|0;u=1<<r;if(g&u){r=f+8|0;j=c[r>>2]|0;if(j>>>0<(c[686817]|0)>>>0)ua();else{C=j;D=r}}else{c[686813]=g|u;C=f;D=f+8|0}c[D>>2]=t;c[C+12>>2]=t;c[t+8>>2]=C;c[t+12>>2]=f}c[686815]=n;c[686818]=p}q=m+8|0;i=b;return q|0}else E=e}else E=e}else if(a>>>0<=4294967231){f=a+11|0;t=f&-8;u=c[686814]|0;if(u){r=0-t|0;j=f>>>8;if(j)if(t>>>0>16777215)F=31;else{f=(j+1048320|0)>>>16&8;h=j<<f;j=(h+520192|0)>>>16&4;s=h<<j;h=(s+245760|0)>>>16&2;k=14-(j|f|h)+(s<<h>>>15)|0;F=t>>>(k+7|0)&1|k<<1}else F=0;k=c[2747556+(F<<2)>>2]|0;a:do if(!k){G=0;H=0;I=r;J=86}else{h=0;s=r;f=k;j=t<<((F|0)==31?0:25-(F>>>1)|0);o=0;while(1){K=(c[f+4>>2]&-8)-t|0;if(K>>>0<s>>>0)if(!K){L=f;M=0;N=f;J=90;break a}else{O=f;P=K}else{O=h;P=s}K=c[f+20>>2]|0;f=c[f+16+(j>>>31<<2)>>2]|0;Q=(K|0)==0|(K|0)==(f|0)?o:K;K=(f|0)==0;if(K){G=Q;H=O;I=P;J=86;break}else{h=O;s=P;j=j<<(K&1^1);o=Q}}}while(0);if((J|0)==86){if((G|0)==0&(H|0)==0){k=2<<F;r=u&(k|0-k);if(!r){E=t;break}k=(r&0-r)+-1|0;r=k>>>12&16;e=k>>>r;k=e>>>5&8;m=e>>>k;e=m>>>2&4;p=m>>>e;m=p>>>1&2;n=p>>>m;p=n>>>1&1;R=c[2747556+((k|r|e|m|p)+(n>>>p)<<2)>>2]|0}else R=G;if(!R){S=H;T=I}else{L=H;M=I;N=R;J=90}}if((J|0)==90)while(1){J=0;p=(c[N+4>>2]&-8)-t|0;n=p>>>0<M>>>0;m=
// EMSCRIPTEN_END_FUNCS
var Ba=[Pg,bb,cc,Ld,ke,Pg,Pg,Pg];var Ca=[Qg,le,me,re,te,af,ag,Qg];var Da=[Rg,mc,tc,Rg];var Ea=[Sg,cb,dc,Md];var Fa=[Tg,db,ec,Nd,pe,se,Tg,Tg];return{___muldsi3:Eg,_sbrk:Gg,_i64Subtract:wg,_free:qg,_main:zc,_i64Add:Ag,_pthread_self:Jg,_memset:xg,_llvm_cttz_i32:Bg,_malloc:pg,_memcpy:Ig,___muldi3:Fg,_bitshift64Shl:zg,_bitshift64Lshr:yg,_fflush:Ff,___udivdi3:Dg,___uremdi3:Hg,___errno_location:oe,___udivmoddi4:Cg,runPostSets:vg,stackAlloc:Ga,stackSave:Ha,stackRestore:Ia,establishStackSpace:Ja,setThrew:Ka,setTempRet0:La,getTempRet0:Ma,dynCall_ii:Kg,dynCall_iiii:Lg,dynCall_iii:Mg,dynCall_iiiii:Ng,dynCall_vi:Og}})
// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var _malloc=Module["_malloc"]=asm["_malloc"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _free=Module["_free"]=asm["_free"];var _main=Module["_main"]=asm["_main"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var _pthread_self=Module["_pthread_self"]=asm["_pthread_self"];var _memset=Module["_memset"]=asm["_memset"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _fflush=Module["_fflush"]=asm["_fflush"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];Module["FS"]=FS;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";v
return sdldz80;
};