var k=void 0,l=!0,m=null,n=!1,p=[],aa="object"===typeof process,ba="object"===typeof window,ca="function"===typeof importScripts,da=!ba&&!aa&&!ca; if(aa){print=function(a){process.stdout.write(a+"\n")};printErr=function(a){process.stderr.write(a+"\n")};var ea=require("fs");read=function(a){var b=ea.readFileSync(a).toString();!b&&"/"!=a[0]&&(a=__dirname.split("/").slice(0,-1).join("/")+"/src/"+a,b=ea.readFileSync(a).toString());return b};p=process.argv.slice(2)}else if(da)this.read||(read=function(a){snarf(a)}),p=this.arguments?arguments:scriptArgs;else if(ba)print=printErr=function(a){console.log(a)},read=function(a){var b=new XMLHttpRequest; b.open("GET",a,n);b.send(m);return b.responseText},this.arguments&&(p=arguments);else if(ca)load=importScripts;else throw"Unknown runtime environment. Where are we?";function fa(a){eval.call(m,a)}"undefined"==typeof load&&"undefined"!=typeof read&&(load=function(a){fa(read(a))});"undefined"===typeof printErr&&(printErr=function(){});"undefined"===typeof print&&(print=printErr);try{this.Module=Module}catch(ga){this.Module=Module={}}Module.arguments||(Module.arguments=p);Module.print&&(print=Module.print); var r={T:function(){return q},S:function(a){q=a},Y:function(a,b){b=b||4;return isNumber(a)&&isNumber(b)?Math.ceil(a/b)*b:"Math.ceil(("+a+")/"+b+")*"+b},M:function(a){return a in r.C||a in r.B},N:function(a){return"*"==a[a.length-1]},P:function(a){return isPointerType(a)?n:/^\[\d+\ x\ (.*)\]/.test(a)||/?/.test(a)?l:"%"==a[0]},C:{i1:0,i8:0,i16:0,i32:0,i64:0},B:{"float":0,"double":0},aa:function(a,b){return(a|0|b|0)+4294967296*(Math.round(a/4294967296)|Math.round(b/4294967296))},W:function(a, b){return((a|0)&(b|0))+4294967296*(Math.round(a/4294967296)&Math.round(b/4294967296))},ea:function(a,b){return((a|0)^(b|0))+4294967296*(Math.round(a/4294967296)^Math.round(b/4294967296))},m:function(a){if(1==r.e)return 1;var b={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+a];!b&&"*"==a[a.length-1]&&(b=r.e);return b},K:function(a){return Math.max(r.m(a),r.e)},H:function(a,b){var d={};return b?a.filter(function(a){return d[a[b]]?n:d[a[b]]=l}):a.filter(function(a){return d[a]? n:d[a]=l})},set:function(){for(var a="object"===typeof arguments[0]?arguments[0]:arguments,b={},d=0;d=x){printErr("Warning: Enlarging memory arrays, this is not fast! "+[w,x]);s(w>=x);for(s(4>1]=b;break;case "i32":D[a>>2]=b;break;case "i64":D[a>>2]=b[0];D[a+4>>2]=b[1];break;case "float":J[a>>2]=b;break;case "double":ka[0]=b;D[a>>2]=M[0];D[a+4>>2]=M[1];break;default:la("invalid type for setValue: "+d)}}Module.setValue=ma; Module.getValue=function(a,b){b=b||"i8";"*"===b[b.length-1]&&(b="i32");switch(b){case "i1":return B[a];case "i8":return B[a];case "i16":return C[a>>1];case "i32":return D[a>>2];case "i64":return[I[a>>2],I[a+4>>2]];case "float":return J[a>>2];case "double":return M[0]=D[a>>2],M[1]=D[a+4>>2],ka[0];default:la("invalid type for setValue: "+b)}return m};var na=1,N=2;Module.ALLOC_NORMAL=0;Module.ALLOC_STACK=na;Module.ALLOC_STATIC=N; function O(a,b,d){var c,e;"number"===typeof a?(c=l,e=a):(c=n,e=a.length);for(var i="string"===typeof b?b:m,d=[oa,r.R,r.z][d===k?N:d](Math.max(e,i?1:b.length)),h=0,f;h=b?2*Math.abs(1<=a)return a;var d=32>=b?Math.abs(1<=d&&(32>=b||a>d))a=-2*d+a;return a} function va(){var a;a=Q[2]();var b=Q[2](),d=Q[4](),c=Q[4](),e=Q[D[wa>>2]](),i=Q[D[xa>>2]]();ya(za|0,(L=q,q+=24,s(q>2]=a,D[L+4>>2]=b,D[L+8>>2]=d,D[L+12>>2]=c,D[L+16>>2]=e,D[L+20>>2]=i,L));a=2;b=2==(a|0)&1;a=4==(a|0)&1;ya(Aa|0,(L=q,q+=8,s(q>2]=b,D[L+4>>2]=a,L));a=4;b=2==(a|0)&1;a=4==(a|0)&1;ya(Ba|0,(L=q,q+=8,s(q>2]=b,D[L+4>>2]=a,L));Q[6](Ca|0);Q[8](Da|0);return 0}Module._main=va;va.X=1; var V=13,Ea=9,Fa=22,Ga=5,Ha=21,Ia=6;function W(a){Ja||(Ja=O([0],"i32",N));D[Ja>>2]=a}var Ja,Ka=0,X=0,La=0,Ma=2,Y=[m],Na=l;function Oa(a,b){if("string"!==typeof a)return m;b===k&&(b="/");a&&"/"==a[0]&&(b="");for(var d=(b+"/"+a).split("/").reverse(),c=[""];d.length;){var e=d.pop();""==e||"."==e||(".."==e?1d)return W(Fa),-1;if(c.object.g){if(c.object.d){for(var e=0;ed||0>e)W(Fa),b=-1;else{for(var h=a.object.a;h.length>2],M[1]=D[b+e+4>>2],ka[0]):"i64"==a?(c=[D[b+e>>2],D[b+e+4>>2]],c=U(c[0],32)+U(c[1],32)*Math.pow(2,32)):(a="i32",c=D[b+e>>2]);e+=r.K(a);return Number(c)}for(var c=a,e=0,i=[],h,f;;){var j=c;h=B[c];if(0===h)break;f=B[c+1];if(37==h){var v=n,E=n,F=n,K=n;a:for(;;){switch(f){case 43:v=l;break;case 45:E=l;break;case 35:F=l;break;case 48:if(K)break a;else{K=l;break}default:break a}c++;f=B[c+1]}var G=0;if(42==f)G=d("i32"),c++,f=B[c+1];else for(;48<= f&&57>=f;)G=10*G+(f-48),c++,f=B[c+1];var P=n;if(46==f){var y=0,P=l;c++;f=B[c+1];if(42==f)y=d("i32"),c++;else for(;;){f=B[c+1];if(48>f||57=o&&(h=(j?ua:U)(h&Math.pow(256,o)-1,8*o));var z=Math.abs(h),g,j="";if(100==f||105==f)g=ua(h,8*o).toString(10);else if(117==f)g=U(h,8*o).toString(10),h=Math.abs(h);else if(111==f)g=(F?"0":"")+z.toString(8);else if(120==f||88==f){j=F?"0x":"";if(0>h){h=-h;g=(z-1).toString(16);F=[];for(z=0;zh?"-"+j:"+"+j);j.length+g.lengtho&&-4<=o?(f=(103==f?"f":"F").charCodeAt(0),y-=o+1):(f=(103==f?"e":"E").charCodeAt(0), y--),o=Math.min(y,20);if(101==f||69==f)g=h.toExponential(o),/[eE][-+]\d$/.test(g)&&(g=g.slice(0,-1)+"0"+g.slice(-1));else if(102==f||70==f)g=h.toFixed(o);j=g.split("e");if(P&&!F)for(;1o++;)j[0]+="0";g=j[0]+(1h?"-":"")+"inf",K=n;for(;g.lengthf&&(g=g.toUpperCase());g.split("").forEach(function(a){i.push(a.charCodeAt(0))})}else if(115==f){(v=d("i8*"))?(v=ta(v),P&&v.length>y&&(v=v.slice(0,y))):v=S("(null)",l);if(!E)for(;v.length>2]=i.length;else if(37==f)i.push(h);else for(z=j;z>2],c=Va(a,b),e=r.T();var i=O(c,"i8",na),c=1*c.length;0!=c&&-1==Ua(d,i,c)&&Y[d]&&(Y[d].error=l);r.S(e)}function oa(a){ptr=r.z(a+8);return ptr+8&4294967288} (function(a,b,d){if(!Ta){Ta=l;Ra();a||(a=function(){if(!a.j||!a.j.length){var b;"undefined"!=typeof window&&"function"==typeof window.prompt?b=window.prompt("Input: "):"function"==typeof readline&&(b=readline());b||(b="");a.j=S(b+"\n",l)}return a.j.shift()});b||(b=function(a){a===m||10===a?(b.v(b.buffer.join("")),b.buffer=[]):b.buffer.push(String.fromCharCode(a))});b.v||(b.v=print);b.buffer||(b.buffer=[]);d||(d=b);Sa("tmp",l);var c=Sa("dev",n),e=$(c,"stdin",a),i=$(c,"stdout",m,b),d=$(c,"stderr",m, d);$(c,"tty",a,b);Y[1]={path:"/dev/stdin",object:e,position:0,r:l,h:n,q:n,error:n,n:n,A:[]};Y[2]={path:"/dev/stdout",object:i,position:0,r:n,h:l,q:n,error:n,n:n,A:[]};Y[3]={path:"/dev/stderr",object:d,position:0,r:n,h:l,q:n,error:n,n:n,A:[]};Ka=O([1],"void*",N);X=O([2],"void*",N);La=O([3],"void*",N);Y[Ka]=Y[1];Y[X]=Y[2];Y[La]=Y[3];O([O([0,0,0,0,Ka,0,0,0,X,0,0,0,La,0,0,0],"void*",N)],"void*",N)}})(); ia.push({I:function(){Ta&&(0a;a++)c.push(0)}var d=a.length+1,c=[O(S("/bin/this.program"),"i8",N)];b();for(var e=0;e>2],a=Ua(b,a,sa(a));if(0>a)b=a;else{var d=U(10);B[Wa]=d;-1==Ua(b,Wa,1)?(b in Y&&(Y[b].error=l),b=-1):b=d;b=0>b?-1:a+1}return b},0,function(a,c){},0, function(a,c,d,e){J[u[u[a>>2]+72>>2]](a,c,d,e)},0,function(a,c){var d=u[a+12>>2];J[u[u[d>>2]+24>>2]](d,c)},0]; Module.FUNCTION_TABLE=Q;function Xa(a){var a=a||Module.arguments,b=m;if(Module._main)for(b=Module.G(a);0