// Generated by js_of_ocaml 3.8.0 (function(f){"use strict";var db="%Li",dc=" : flags Open_text and Open_binary are not compatible",dW="Invalid_argument",bV=1255,du=255,dv=0x800,V=0xffff,bU="jsError",U=0x8000,dV="%ni",dG=12520,bT=256,dU=-646333223,ds="unsupported bigarray kind",dt="End_of_file",da="Unix.Unix_error",dr="Failure",dF="infinity",af=0xff,a0=1000,c$="Stack_overflow",dE="Row out of bounds.",e="",bY="^",dT=122,L="0",c_=-97,aJ=0x3f,c9="Not_found",bS=0xf,a2=128,dp=-48,dq=0xdc00,dR="Sys_blocked_io",dS="fd ",dn="Worker.onmessage is undefined",dD="Match_failure",p=248,c8="static/",dl="bigarray kind can't be represented by a Gg.Ba.scalar_type",u="camlinternalFormat.ml",dm="Division_by_zero",dQ=">",bX=252,dP=1027,dk="Sys_error",ay=".",aI="+",dC=0xf0,dO=246,dM="Column out of bounds.",dN="%u",dj="%d",c7=1026,dB="%li",ax="shapes/matrix/Matrix.ml",di="buffer.ml",bg="int_of_string",dL="_bigarray",dA=-32,b2=127,a1=1024,ac=" ",P=0x80,b1="e",c6="Undefined_recursive_module",dg=120,dh=103,dK=" : flags Open_rdonly and Open_wronly are not compatible",dJ="([^/]*)",bR=512,az="-",bW="nan",df=0x7ff0,dz=0xe0,dI=" : file already exists",dy=0xdfff,ae=0xffffff,bQ="compare: functional value",dx="Assert_failure",ad="/",de="0x",c5="%i",dH="Out_of_memory",an=254,dw=1073741823,b0="index out of bounds",dd=100,bh=250,bZ="_bigarr02";function iY(b,a){throw[0,b,a]}function aN(b,a){if(b==0)return e;if(a.repeat)return a.repeat(b);var d=e,c=0;for(;;){if(b&1)d+=a;b>>=1;if(b==0)return d;a+=a;c++;if(c==9)a.slice(0,1)}}function bn(c,b,a){var d=String.fromCharCode;if(b==0&&a<=4096&&a==c.length)return d.apply(null,c);var f=e;for(;0b2)return false;return true}else return!/[^\x00-\x7f]/.test(a)}function cg(f){for(var k=e,c=e,h,g,i,a,b=0,j=f.length;bbR){c.substr(0,1);k+=c;c=e;k+=f.slice(b,d)}else c+=f.slice(b,d);if(d==j)break;b=d}a=1;if(++b=0xd7ff&&a<0xe000)a=2}else{a=3;if(++b0x10ffff)a=3}}}}}if(a<4){b-=a;c+="\ufffd"}else if(a>V)c+=String.fromCharCode(0xd7c0+(a>>10),dq+(a&0x3FF));else c+=String.fromCharCode(a);if(c.length>a1){c.substr(0,1);k+=c;c=e}}return k+c}function ag(c,a,b){this.t=c;this.c=a;this.l=b}ag.prototype.toString=function(){switch(this.t){case 9:return this.c;default:aB(this);case 0:if(eo(this.c)){this.t=9;return this.c}this.t=8;case 8:return this.c}};ag.prototype.toUtf16=function(){var a=this.toString();if(this.t==9)return a;return cg(a)};ag.prototype.slice=function(){var a=this.t==4?this.c.slice():this.c;return new ag(this.t,a,this.l)};function d7(a){return new ag(0,a,a.length)}function a(a){return d7(a)}function cd(c,b){iY(c,a(b))}var r=[0];function w(a){cd(r.Invalid_argument,a)}function aL(){w(b0)}function dY(b,a){if(a<0||a>=b.length-1)aL();return b[a+1]}function bi(b){if(f.Uint8Array)var c=new(f.Uint8Array)(b.l);else var c=new Array(b.l);var e=b.c,d=e.length,a=0;for(;a=b.l||b.t==2&&c>=b.c.length)){b.c=d.t==4?bn(d.c,e,c):e==0&&d.c.length==c?d.c:d.c.substr(e,c);b.t=b.c.length==b.l?0:2}else if(b.t==2&&f==b.c.length){b.c+=d.t==4?bn(d.c,e,c):e==0&&d.c.length==c?d.c:d.c.substr(e,c);b.t=b.c.length==b.l?0:2}else{if(b.t!=4)bi(b);var g=d.c,h=b.c;if(d.t==4)if(f<=e)for(var a=0;a=0;a--)h[f+a]=g[e+a];else{var i=Math.min(c,g.length-e);for(var a=0;a>>0>=b.l)d5();return q(b,a,c)}function a3(a,b){switch(a.t&6){default:if(b>=a.c.length)return 0;case 0:return a.c.charCodeAt(b);case 4:return a.c[b]}}function ar(c,a){if(c.fun)return ar(c.fun,a);if(typeof c!=="function")return c;var b=c.length|0;if(b===0)return c.apply(null,a);var e=a.length|0,d=b-e|0;if(d==0)return c.apply(null,a);else if(d<0)return ar(c.apply(null,a.slice(0,b)),a.slice(b));else return function(){var e=arguments.length==0?1:arguments.length,d=new Array(a.length+e);for(var b=0;b>>0>=a.length-1)aL();return a}function il(a){if(isFinite(a)){if(Math.abs(a)>=2.2250738585072014e-308)return 0;if(a!=0)return 1;return 2}return isNaN(a)?4:3}function v(a){if(a<0)w("Bytes.create");return new ag(a?2:9,e,a)}function aj(a){if((a.t&6)!=0)aB(a);return a.c}var i$=Math.log2&&Math.log2(1.1235582092889474E+307)==1020;function i_(a){if(i$)return Math.floor(Math.log2(a));var b=0;if(a==0)return-Infinity;if(a>=1)while(a>=2){a/=2;b++}else while(a<1){a*=2;b--}return b}function b7(c){var a=new(f.Float32Array)(1);a[0]=c;var b=new(f.Int32Array)(a.buffer);return b[0]|0}var ec=Math.pow(2,-24);function ek(a){throw a}function ce(){ek(r.Division_by_zero)}function d(b,c,a){this.lo=b&ae;this.mi=c&ae;this.hi=a&V}d.prototype.caml_custom="_j";d.prototype.copy=function(){return new d(this.lo,this.mi,this.hi)};d.prototype.ucompare=function(a){if(this.hi>a.hi)return 1;if(this.hia.mi)return 1;if(this.mia.lo)return 1;if(this.loc)return 1;if(ba.mi)return 1;if(this.mia.lo)return 1;if(this.lo>24),c=-this.hi+(b>>24);return new d(a,b,c)};d.prototype.add=function(a){var b=this.lo+a.lo,c=this.mi+a.mi+(b>>24),e=this.hi+a.hi+(c>>24);return new d(b,c,e)};d.prototype.sub=function(a){var b=this.lo-a.lo,c=this.mi-a.mi+(b>>24),e=this.hi-a.hi+(c>>24);return new d(b,c,e)};d.prototype.mul=function(a){var b=this.lo*a.lo,c=(b*ec|0)+this.mi*a.lo+this.lo*a.mi,e=(c*ec|0)+this.hi*a.lo+this.mi*a.mi+this.lo*a.hi;return new d(b,c,e)};d.prototype.isZero=function(){return(this.lo|this.mi|this.hi)==0};d.prototype.isNeg=function(){return this.hi<<16<0};d.prototype.and=function(a){return new d(this.lo&a.lo,this.mi&a.mi,this.hi&a.hi)};d.prototype.or=function(a){return new d(this.lo|a.lo,this.mi|a.mi,this.hi|a.hi)};d.prototype.xor=function(a){return new d(this.lo^a.lo,this.mi^a.mi,this.hi^a.hi)};d.prototype.shift_left=function(a){a=a&63;if(a==0)return this;if(a<24)return new d(this.lo<>24-a,this.hi<>24-a);if(a<48)return new d(0,this.lo<>48-a);return new d(0,0,this.lo<>a|this.mi<<24-a,this.mi>>a|this.hi<<24-a,this.hi>>a);if(a<48)return new d(this.mi>>a-24|this.hi<<48-a,this.hi>>a-24,0);return new d(this.hi>>a-48,0,0)};d.prototype.shift_right=function(a){a=a&63;if(a==0)return this;var c=this.hi<<16>>16;if(a<24)return new d(this.lo>>a|this.mi<<24-a,this.mi>>a|c<<24-a,this.hi<<16>>a>>>16);var b=this.hi<<16>>31;if(a<48)return new d(this.mi>>a-24|this.hi<<48-a,this.hi<<16>>a-24>>16,b&V);return new d(this.hi<<16>>a-32,b,b)};d.prototype.lsl1=function(){this.hi=this.hi<<1|this.mi>>23;this.mi=(this.mi<<1|this.lo>>23)&ae;this.lo=this.lo<<1&ae};d.prototype.lsr1=function(){this.lo=(this.lo>>>1|this.mi<<23)&ae;this.mi=(this.mi>>>1|this.hi<<23)&ae;this.hi=this.hi>>>1};d.prototype.udivmod=function(f){var c=0,b=this.copy(),a=f.copy(),e=new d(0,0,0);while(b.ucompare(a)>0){c++;a.lsl1()}while(c>=0){c--;e.lsl1();if(b.ucompare(a)>=0){e.lo++;b=b.sub(a)}a.lsr1()}return{quotient:e,modulus:b}};d.prototype.div=function(a){var b=this;if(a.isZero())ce();var d=b.hi^a.hi;if(b.hi&U)b=b.neg();if(a.hi&U)a=a.neg();var c=b.udivmod(a).quotient;if(d&U)c=c.neg();return c};d.prototype.mod=function(b){var a=this;if(b.isZero())ce();var d=a.hi;if(a.hi&U)a=a.neg();if(b.hi&U)b=b.neg();var c=a.udivmod(b).modulus;if(d&U)c=c.neg();return c};d.prototype.toInt=function(){return this.lo|this.mi<<24};d.prototype.toFloat=function(){return(this.hi<<16)*Math.pow(2,32)+this.mi*Math.pow(2,24)+this.lo};d.prototype.toArray=function(){return[this.hi>>8,this.hi&af,this.mi>>16,this.mi>>8&af,this.mi&af,this.lo>>16,this.lo>>8&af,this.lo&af]};d.prototype.lo32=function(){return this.lo|(this.mi&af)<<24};d.prototype.hi32=function(){return this.mi>>>8&V|this.hi<<16};function bl(b,c,a){return new d(b,c,a)}function bk(a){if(!isFinite(a)){if(isNaN(a))return bl(1,0,df);return a>0?bl(0,0,df):bl(0,0,0xfff0)}var f=a==0&&1/a==-Infinity?U:a>=0?0:U;if(f)a=-a;var b=i_(a)+1023;if(b<=0){b=0;a/=Math.pow(2,-c7)}else{a/=Math.pow(2,b-dP);if(a<16){a*=2;b-=1}if(b==0)a/=2}var d=Math.pow(2,24),c=a|0;a=(a-c)*d;var e=a|0;a=(a-e)*d;var g=a|0;c=c&bS|f|b<<4;return bl(g,e,c)}function a7(a){return a.toArray()}function d4(c,b,g){c.write(32,b.dims.length);c.write(32,b.kind|b.layout<<8);if(b.caml_custom==bZ)for(var a=0;a>4;if(c==2047)return(f|g|b&bS)==0?b&U?-Infinity:Infinity:NaN;var e=Math.pow(2,-24),a=(f*e+g)*e+(b&bS);if(c>0){a+=16;a*=Math.pow(2,c-dP)}else a*=Math.pow(2,-c7);if(b&U)a=-a;return a}function b3(b){var d=b.length,c=1;for(var a=0;a>>24&af|(a&V)<<8,a>>>16&V)}function b_(a){return a.hi32()}function b$(a){return a.lo32()}var ig=dL;function ao(c,d,b,a){this.kind=c;this.layout=d;this.dims=b;this.data=a}ao.prototype.caml_custom=ig;ao.prototype.offset=function(b){var c=0;if(typeof b==="number")b=[b];if(!(b instanceof Array))w("bigarray.js: invalid offset");if(this.dims.length!=b.length)w("Bigarray.get/set: bad number of dimensions");if(this.layout==0)for(var a=0;a=this.dims[a])aL();c=c*this.dims[a]+b[a]}else for(var a=this.dims.length-1;a>=0;a--){if(b[a]<1||b[a]>this.dims[a])aL();c=c*this.dims[a]+(b[a]-1)}return c};ao.prototype.get=function(a){switch(this.kind){case 7:var d=this.data[a*2+0],b=this.data[a*2+1];return iv(d,b);case 10:case 11:var e=this.data[a*2+0],c=this.data[a*2+1];return[an,e,c];default:return this.data[a]}};ao.prototype.set=function(a,b){switch(this.kind){case 7:this.data[a*2+0]=b$(b);this.data[a*2+1]=b_(b);break;case 10:case 11:this.data[a*2+0]=b[1];this.data[a*2+1]=b[2];break;default:this.data[a]=b;break}return 0};ao.prototype.fill=function(b){switch(this.kind){case 7:var c=b$(b),e=b_(b);if(c==e)this.data.fill(c);else for(var a=0;ad)return 1;if(c!=d){if(!g)return NaN;if(c==c)return 1;if(d==d)return-1}}break;case 7:for(var a=0;ab.data[a+1])return 1;if(this.data[a]>>>0>>0)return-1;if(this.data[a]>>>0>b.data[a]>>>0)return 1}break;case 2:case 3:case 4:case 5:case 6:case 8:case 9:case 12:for(var a=0;ab.data[a])return 1}break}return 0};function aK(c,d,b,a){this.kind=c;this.layout=d;this.dims=b;this.data=a}aK.prototype=new ao();aK.prototype.offset=function(a){if(typeof a!=="number")if(a instanceof Array&&a.length==1)a=a[0];else w("Ml_Bigarray_c_1_1.offset");if(a<0||a>=this.dims[0])aL();return a};aK.prototype.get=function(a){return this.data[a]};aK.prototype.set=function(a,b){this.data[a]=b;return 0};aK.prototype.fill=function(a){this.data.fill(a);return 0};function d0(c,d,a,b){var e=d2(c);if(b3(a)*e!=b.length)w("length doesn't match dims");if(d==0&&a.length==1&&e==1)return new aK(c,d,a,b);return new ao(c,d,a,b)}function Y(a){cd(r.Failure,a)}function d1(b,v,r){var i=b.read32s();if(i<0||i>16)Y("input_value: wrong number of bigarray dimensions");var p=b.read32s(),j=p&af,o=p>>8&1,h=[];if(r==bZ)for(var a=0;a>>32-15;a=ef(a,0x1b873593);b^=a;b=b<<13|b>>>32-13;return(b+(b<<2)|0)+(0xe6546b64|0)|0}function ir(a,b){a=ai(a,b$(b));a=ai(a,b_(b));return a}function eb(a,b){return ir(a,bk(b))}function d3(c){var b=b3(c.dims),d=0;switch(c.kind){case 2:case 3:case 12:if(b>bT)b=bT;var e=0,a=0;for(a=0;a+4<=c.data.length;a+=4){e=c.data[a+0]|c.data[a+1]<<8|c.data[a+2]<<16|c.data[a+3]<<24;d=ai(d,e)}e=0;switch(b&3){case 3:e=c.data[a+2]<<16;case 2:e|=c.data[a+1]<<8;case 1:e|=c.data[a+0];d=ai(d,e)}break;case 4:case 5:if(b>a2)b=a2;var e=0,a=0;for(a=0;a+2<=c.data.length;a+=2){e=c.data[a+0]|c.data[a+1]<<16;d=ai(d,e)}if((b&1)!=0)d=ai(d,c.data[a]);break;case 6:if(b>64)b=64;for(var a=0;a64)b=64;for(var a=0;a32)b=32;b*=2;for(var a=0;a64)b=64;for(var a=0;a32)b=32;for(var a=0;a0?b(c,f,e):b(f,c,e);if(e&&a!=a)return d;if(+a!=+a)return+a;if((a|0)!=0)return a|0}return d}function bm(a){return a instanceof ag}function ca(a){return bm(a)}function d9(a){if(typeof a==="number")return a0;else if(bm(a))return bX;else if(ca(a))return 1252;else if(a instanceof Array&&a[0]===a[0]>>>0&&a[0]<=du){var b=a[0]|0;return b==an?0:b}else if(a instanceof String)return dG;else if(typeof a=="string")return dG;else if(a instanceof Number)return a0;else if(a&&a.caml_custom)return bV;else if(a&&a.compare)return 1256;else if(typeof a=="function")return 1247;else if(typeof a=="symbol")return 1251;return 1001}function iF(a,b){if(ab.c?1:0}function jb(a,b){return d6(a,b)}function a4(a,b,d){var e=[];for(;;){if(!(d&&a===b)){var f=d9(a);if(f==bh){a=a[1];continue}var g=d9(b);if(g==bh){b=b[1];continue}if(f!==g){if(f==a0){if(g==bV)return d8(a,b,-1,d);return-1}if(g==a0){if(f==bV)return d8(b,a,1,d);return 1}return fb)return 1;if(a!=b){if(!d)return NaN;if(a==a)return 1;if(b==b)return-1}break;case 1001:if(ab)return 1;if(a!=b){if(!d)return NaN;if(a==a)return 1;if(b==b)return-1}break;case 1251:if(a!==b){if(!d)return NaN;return 1}break;case 1252:var a=aj(a),b=aj(b);if(a!==b){if(ab)return 1}break;case 12520:var a=a.toString(),b=b.toString();if(a!==b){if(ab)return 1}break;case 246:case 254:default:if(a.length!=b.length)return a.length1)e.push(a,b,1);break}}if(e.length==0)return 0;var h=e.pop();b=e.pop();a=e.pop();if(h+10)if(c==0&&(b>=a.l||a.t==2&&b>=a.c.length))if(d==0){a.c=e;a.t=2}else{a.c=aN(b,String.fromCharCode(d));a.t=b==a.l?0:2}else{if(a.t!=4)bi(a);for(b+=c;cb)return 1;if(a===a)return 1;if(b===b)return-1;return 0}function cc(d){d=aj(d);var e=d.length;if(e>31)w("format_int: format too long");var a={justify:aI,signstyle:az,filler:ac,alternate:false,base:0,signedconv:false,width:0,uppercase:false,sign:1,prec:-1,conv:"f"};for(var c=0;c=0&&b<=9){a.width=a.width*10+b;c++}c--;break;case".":a.prec=0;c++;while(b=d.charCodeAt(c)-48,b>=0&&b<=9){a.prec=a.prec*10+b;c++}c--;case"d":case"i":a.signedconv=true;case"u":a.base=10;break;case"x":a.base=16;break;case"X":a.base=16;a.uppercase=true;break;case"o":a.base=8;break;case"e":case"f":case"g":a.signedconv=true;a.conv=b;break;case"E":case"F":case"G":a.signedconv=true;a.uppercase=true;a.conv=b.toLowerCase();break}}return a}function b6(b,g){if(b.uppercase)g=g.toUpperCase();var f=g.length;if(b.signedconv&&(b.sign<0||b.signstyle!=az))f++;if(b.alternate){if(b.base==8)f+=1;if(b.base==16)f+=2}var c=e;if(b.justify==aI&&b.filler==ac)for(var d=f;d20){c-=20;a/=Math.pow(10,c);a+=new Array(c+1).join(L);if(b>0)a=a+ay+new Array(b+1).join(L);return a}else return a.toFixed(b)}}var a,e=cc(i),d=e.prec<0?6:e.prec;if(c<0||c==0&&1/c==-Infinity){e.sign=-1;c=-c}if(isNaN(c)){a=bW;e.filler=ac}else if(!isFinite(c)){a="inf";e.filler=ac}else switch(e.conv){case"e":var a=c.toExponential(d),b=a.length;if(a.charAt(b-3)==b1)a=a.slice(0,b-1)+L+a.slice(b-1);break;case"f":a=j(c,d);break;case"g":d=d?d:1;a=c.toExponential(d-1);var h=a.indexOf(b1),g=+a.slice(h+1);if(g<-4||c>=1e21||c.toFixed(0).length>d){var b=h-1;while(a.charAt(b)==L)b--;if(a.charAt(b)==ay)b--;a=a.slice(0,b+1)+a.slice(h);b=a.length;if(a.charAt(b-3)==b1)a=a.slice(0,b-1)+L+a.slice(b-1);break}else{var f=d;if(g<0){f-=g+1;a=c.toFixed(f)}else while(a=c.toFixed(f),a.length>d+1)f--;if(f){var b=a.length-1;while(a.charAt(b)==L)b--;if(a.charAt(b)==ay)b--;a=a.slice(0,b+1)}}break}return b6(e,a)}function bj(f,c){if(aj(f)==dj)return a(e+c);var b=cc(f);if(c<0)if(b.signedconv){b.sign=-1;c=-c}else c>>>=0;var d=c.toString(b.base);if(b.prec>=0){b.filler=ac;var g=b.prec-d.length;if(g>0)d=aN(g,L)+d}return b6(b,d)}var iU=0;function H(){return iU++}function ed(a){return a.toUtf16()}if(f.process&&f.process.cwd)var a5=f.process.cwd().replace(/\\/g,ad);else var a5="/static";if(a5.slice(-1)!==ad)a5+=ad;function iK(a){a=ed(a);if(a.charCodeAt(0)!=47)a=a5+a;var d=a.split(ad),b=[];for(var c=0;c1)b.pop();break;case".":break;case"":if(b.length==0)b.push(e);break;default:b.push(d[c]);break}b.orig=a;return b}function ij(a){return new ag(4,a,a.length)}function i6(f){for(var g=e,b=g,a,i,c=0,h=f.length;cbR){b.substr(0,1);g+=b;b=e;g+=f.slice(c,d)}else b+=f.slice(c,d);if(d==h)break;c=d}if(a>6);b+=String.fromCharCode(P|a&aJ)}else if(a<0xd800||a>=dy)b+=String.fromCharCode(dz|a>>12,P|a>>6&aJ,P|a&aJ);else if(a>=0xdbff||c+1==h||(i=f.charCodeAt(c+1))dy)b+="\xef\xbf\xbd";else{c++;a=(a<<10)+i-0x35fdc00;b+=String.fromCharCode(dC|a>>18,P|a>>12&aJ,P|a>>6&aJ,P|a&aJ)}if(b.length>a1){b.substr(0,1);g+=b;b=e}}return g+b}function ik(a){var b=9;if(!eo(a))b=8,a=i6(a);return new ag(b,a,a.length)}function al(a){return ik(a)}function n(a){cd(r.Sys_error,a)}function iW(a){a=aj(a);n(a+": No such file or directory")}function ii(b,a){if(a>>>0>=b.l)d5();return a3(b,a)}function M(a){return a.l}function dX(){}function z(a){this.data=a}z.prototype=new dX();z.prototype.truncate=function(a){var b=this.data;this.data=v(a|0);ap(b,0,this.data,0,a)};z.prototype.length=function(){return M(this.data)};z.prototype.write=function(b,d,g,a){var c=this.length();if(b+a>=c){var e=v(b+a),f=this.data;this.data=e;ap(f,0,this.data,0,c)}aq(d,g,this.data,b,a);return 0};z.prototype.read=function(c,a,d,b){var e=this.length();ap(this.data,c,a,d,b);return 0};z.prototype.read_one=function(a){return ii(this.data,a)};z.prototype.close=function(){};z.prototype.constructor=z;function Q(b,a){this.content={};this.root=b;this.lookupFun=a}Q.prototype.nm=function(a){return this.root+a};Q.prototype.lookup=function(b){if(!this.content[b]&&this.lookupFun){var c=this.lookupFun(a(this.root),a(b));if(c!==0)this.content[b]=new z(ah(c[1]))}};Q.prototype.exists=function(a){if(a==e)return 1;var c=a+ad,d=new RegExp(bY+c);for(var b in this.content)if(b.match(d))return 1;this.lookup(a);return this.content[a]?1:0};Q.prototype.readdir=function(c){var g=c==e?e:c+ad,h=new RegExp(bY+g+dJ),d={},b=[];for(var f in this.content){var a=f.match(h);if(a&&!d[a[1]]){d[a[1]]=true;b.push(a[1])}}return b};Q.prototype.is_dir=function(a){var d=a==e?e:a+ad,f=new RegExp(bY+d+dJ),g=[];for(var c in this.content){var b=c.match(f);if(b)return 1}return 0};Q.prototype.unlink=function(a){var b=this.content[a]?true:false;delete this.content[a];return b};Q.prototype.open=function(a,b){if(b.rdonly&&b.wronly)n(this.nm(a)+dK);if(b.text&&b.binary)n(this.nm(a)+dc);this.lookup(a);if(this.content[a]){if(this.is_dir(a))n(this.nm(a)+" : is a directory");if(b.create&&b.excl)n(this.nm(a)+dI);var c=this.content[a];if(b.truncate)c.truncate();return c}else if(b.create){this.content[a]=new z(v(0));return this.content[a]}else iW(this.nm(a))};Q.prototype.register=function(b,a){if(this.content[b])n(this.nm(b)+dI);if(bm(a))this.content[b]=new z(a);if(ca(a))this.content[b]=new z(ah(a));else if(a instanceof Array)this.content[b]=new z(ij(a));else if(typeof a==="string")this.content[b]=new z(d7(a));else if(a.toString){var c=ah(al(a.toString()));this.content[b]=new z(c)}else n(this.nm(b)+" : registering file with invalid content type")};Q.prototype.constructor=Q;function i(a){return M(a)}function T(b,a){return a3(b,a)}function id(d){var c=i(d),b=new Array(c),a=0;for(;a=0)}function is(a,c,l){if(!isFinite(a)){if(isNaN(a))return al(bW);return al(a>0?dF:"-infinity")}var j=a==0&&1/a==-Infinity?1:a>=0?0:1;if(j)a=-a;var d=0;if(a==0);else if(a<1)while(a<1&&d>-1022){a*=2;d--}else while(a>=2){a/=2;d++}var k=d<0?e:aI,f=e;if(j)f=az;else switch(l){case 43:f=aI;break;case 32:f=ac;break;default:break}if(c>=0&&c<13){var h=Math.pow(2,c*4);a=Math.round(a*h)/h}var b=a.toString(16);if(c>=0){var i=b.indexOf(ay);if(i<0)b+=ay+aN(c,L);else{var g=i+1+c;if(b.length>24&ae,a>>31&V)}function iD(a){return a.toInt()}function iy(a){return+a.isNeg()}function iB(a){return a.neg()}function iw(h,c){var a=cc(h);if(a.signedconv&&iy(c)){a.sign=-1;c=iB(c)}var b=e,i=iC(a.base),g="0123456789abcdef";do{var f=c.udivmod(i);c=f.quotient;b=g.charAt(iD(f.modulus))+b}while(!iz(c));if(a.prec>=0){a.filler=ac;var d=a.prec-b.length;if(d>0)b=aN(d,L)+b}return b6(a,b)}function iV(c){var a=0,e=i(c),b=10,d=1;if(e>0)switch(T(c,a)){case 45:a++;d=-1;break;case 43:a++;d=1;break}if(a+1=48&&a<=57)return a-48;if(a>=65&&a<=90)return a-55;if(a>=97&&a<=dT)return a-87;return-1}function iG(f){var h=iV(f),c=h[0],j=h[1],d=h[2],g=i(f),k=-1>>>0,e=c=d)Y(bg);var a=b;for(c++;c=d)break;a=d*a+b;if(a>k)Y(bg)}if(c!=g)Y(bg);a=j*a;if(d==10&&(a|0)!=a)Y(bg);return a|0}function iH(d){return function(){var b=arguments.length;if(b>0){var c=new Array(b);for(var a=0;a>>32-b,c)}function g(c,b,d,e,h,f,g){return a(b&d|~b&e,c,b,h,f,g)}function h(d,b,e,c,h,f,g){return a(b&c|e&~c,d,b,h,f,g)}function i(c,b,d,e,h,f,g){return a(b^d^e,c,b,h,f,g)}function j(c,b,d,e,h,f,g){return a(d^(b|~e),c,b,h,f,g)}function k(f,n){var e=n;f[e>>2]|=P<<8*(e&3);for(e=(e&~0x3)+8;(e&0x3F)<60;e+=4)f[(e>>2)-1]=0;f[(e>>2)-1]=n<<3;f[e>>2]=n>>29&0x1FFFFFFF;var k=[0x67452301,0xEFCDAB89,0x98BADCFE,0x10325476];for(e=0;e>8*m&0xFF;return o}return function(h,g,f){var e=[];switch(h.t&6){default:aB(h);case 0:var d=h.c;for(var a=0;a>2]=d.charCodeAt(b)|d.charCodeAt(b+1)<<8|d.charCodeAt(b+2)<<16|d.charCodeAt(b+3)<<24}for(;a>2]|=d.charCodeAt(a+g)<<8*(a&3);break;case 4:var c=h.c;for(var a=0;a>2]=c[b]|c[b+1]<<8|c[b+2]<<16|c[b+3]<<24}for(;a>2]|=c[a+g]<<8*(a&3)}return i1(k(e,f))}}();function iM(c,b,a){return iL(ah(c),b,a)}var Z=new Array();function cb(c){var a=Z[c];if(!a.opened)n("Cannot flush a closed channel");if(!a.buffer||a.buffer==e)return 0;if(a.fd&&r.fds[a.fd]&&r.fds[a.fd].output){var b=r.fds[a.fd].output;switch(b.length){case 2:b(c,a.buffer);break;default:b(a.buffer)}}a.buffer=e;return 0}function em(e,f){var b=Z[e],d=a(f),c=i(d);b.file.write(b.offset,d,0,c);b.offset+=c;return 0}function i8(a){var a=cg(a),b=f;if(b.process&&b.process.stdout&&b.process.stdout.write)b.process.stderr.write(a);else{if(a.charCodeAt(a.length-1)==10)a=a.substr(0,a.length-1);var c=b.console;c&&c.error&&c.error(a)}}function i9(a){var a=cg(a),b=f;if(b.process&&b.process.stdout&&b.process.stdout.write)b.process.stdout.write(a);else{if(a.charCodeAt(a.length-1)==10)a=a.substr(0,a.length-1);var c=b.console;c&&c.log&&c.log(a)}}function bp(c,e,d,a){if(r.fds===undefined)r.fds=new Array();a=a?a:{};var b={};b.file=d;b.offset=a.append?d.length():0;b.flags=a;b.output=e;r.fds[c]=b;if(!r.fd_last_idx||c>r.fd_last_idx)r.fd_last_idx=c;return c}function jc(c,b,g){var a={};while(b){switch(b[1]){case 0:a.rdonly=1;break;case 1:a.wronly=1;break;case 2:a.append=1;break;case 3:a.create=1;break;case 4:a.truncate=1;break;case 5:a.excl=1;break;case 6:a.binary=1;break;case 7:a.text=1;break;case 8:a.nonblock=1;break}b=b[2]}if(a.rdonly&&a.wronly)n(aj(c)+dK);if(a.text&&a.binary)n(aj(c)+dc);var d=ep(c),e=d.device.open(d.rest,a),f=r.fd_last_idx?r.fd_last_idx:0;return bp(f+1,em,e,a)}bp(0,em,new z(v(0)));bp(1,i9,new z(v(0)));bp(2,i8,new z(v(0)));function iN(c){var b=r.fds[c];if(b.flags.wronly)n(dS+c+" is writeonly");var a={file:b.file,offset:b.offset,fd:c,opened:true,out:false,refill:null};Z[a.fd]=a;return a.fd}function ee(c){var b=r.fds[c];if(b.flags.rdonly)n(dS+c+" is readonly");var a={file:b.file,offset:b.offset,fd:c,opened:true,out:true,buffer:e};Z[a.fd]=a;return a.fd}function iO(){var b=0;for(var a=0;a>>0)return a[0];else if(bm(a))return bX;else if(ca(a))return bX;else if(a instanceof Function||typeof a=="function")return 247;else if(a&&a.caml_custom)return du;else return a0}function R(b,c,a){if(a&&f.toplevelReloc)b=f.toplevelReloc(a);r[b+1]=c;if(a)r[a]=c}var eh={};function iZ(a,b){eh[aj(a)]=b;return 0}function ih(a,b){if(a===b)return 1;a.t&6&&aB(a);b.t&6&&aB(b);return a.c==b.c?1:0}function en(a,b){return ih(a,b)}function i0(){w(b0)}function x(b,a){if(a>>>0>=i(b))i0();return T(b,a)}function ak(a,b){return 1-en(a,b)}function i2(){return[0,a("js_of_ocaml")]}function i3(){return 0x7FFFFFFF/4|0}function i4(){return[0,a("Unix"),32,0]}function iX(){ek(r.Not_found)}function bo(c){var a=f,b=ed(c);if(a.process&&a.process.env&&a.process.env[b]!=undefined)return al(a.process.env[b]);if(f.jsoo_static_env&&f.jsoo_static_env[b])return al(f.jsoo_static_env[b]);iX()}function i5(){var a=new Date().getTime(),b=a^0xffffffff*Math.random();return[0,b]}function cf(a){var b=1;while(a&&a.joo_tramp){a=a.joo_tramp.apply(null,a.joo_args);b++}return a}function A(b,a){return{joo_tramp:b,joo_args:a}}function el(a){return a}function eg(a){return eh[a]}function _(a){if(a instanceof Array)return a;if(f.RangeError&&a instanceof f.RangeError&&a.message&&a.message.match(/maximum call stack/i))return el(r.Stack_overflow);if(f.InternalError&&a instanceof f.InternalError&&a.message&&a.message.match(/too much recursion/i))return el(r.Stack_overflow);if(a instanceof f.Error&&eg(bU))return[0,eg(bU),a];return[0,r.Failure,al(String(a))]}function bq(){return 0}function ja(){}function c(a,b){return a.length==1?a(b):ar(a,[b])}function g(a,b,c){return a.length==2?a(b,c):ar(a,[b,c])}function aw(a,b,c,d){return a.length==3?a(b,c,d):ar(a,[b,c,d])}ip();var cj=[p,a(dk),-2],$=[p,a(dr),-3],ch=[p,a(dW),-4],as=[p,a(c9),-7],j=[p,a(dx),-11],cz=[0,dh];R(11,[p,a(c6),-12],c6);R(10,j,dx);R(9,[p,a(dR),-10],dR);R(8,[p,a(c$),-9],c$);R(7,[p,a(dD),-8],dD);R(6,as,c9);R(5,[p,a(dm),-6],dm);R(4,[p,a(dt),-5],dt);R(3,ch,dW);R(2,$,dr);R(1,cj,dk);R(0,[p,a(dH),-1],dH);var ew=a("output_substring"),es=a("true"),et=a("false"),ey=a("\\\\"),ez=a("\\'"),eA=a("\\b"),eB=a("\\t"),eC=a("\\n"),eD=a("\\r"),eG=a("List.init"),eJ=a("String.blit / Bytes.blit_string"),eI=a("Bytes.blit"),eH=a("String.sub / Bytes.sub"),eM=a("String.contains_from / Bytes.contains_from"),eQ=a("Array.map2: arrays must have the same length"),eO=a("Array.init"),eT=a("Stdlib.Queue.Empty"),eV=a("CamlinternalLazy.Undefined"),e3=a("Buffer.add_substring/add_subbytes"),e2=a("Buffer.add: cannot grow buffer"),e1=[0,a(di),93,2],e0=[0,a(di),94,2],eZ=a("Buffer.sub"),fa=a("%c"),fb=a("%s"),fc=a(c5),fd=a(dB),fe=a(dV),ff=a(db),fg=a("%f"),fh=a("%B"),fi=a("%{"),fj=a("%}"),fk=a("%("),fl=a("%)"),fm=a("%a"),fn=a("%t"),fo=a("%?"),fp=a("%r"),fq=a("%_r"),fr=[0,a(u),850,23],fC=[0,a(u),814,21],fu=[0,a(u),815,21],fD=[0,a(u),818,21],fv=[0,a(u),819,21],fE=[0,a(u),822,19],fw=[0,a(u),823,19],fF=[0,a(u),826,22],fx=[0,a(u),827,22],fG=[0,a(u),831,30],fy=[0,a(u),832,30],fA=[0,a(u),836,26],fs=[0,a(u),837,26],fB=[0,a(u),846,28],ft=[0,a(u),847,28],fz=[0,a(u),851,23],gI=a(dN),gG=[0,a(u),1558,4],gH=a("Printf: bad conversion %["),gJ=[0,a(u),1626,39],gK=[0,a(u),1649,31],gL=[0,a(u),1650,31],gM=a("Printf: bad conversion %_"),gN=a("@{"),gO=a("@["),gS=[0,[11,a("invalid box description "),[3,0,0]],a("invalid box description %S")],gQ=a(e),gR=[0,0,4],gT=a(e),gU=a("b"),gV=a("h"),gW=a("hov"),gX=a("hv"),gY=a("v"),gE=a(bW),gC=a("neg_infinity"),gD=a(dF),gB=a(ay),gl=a("%+nd"),gm=a("% nd"),go=a("%+ni"),gp=a("% ni"),gq=a("%nx"),gr=a("%#nx"),gs=a("%nX"),gt=a("%#nX"),gu=a("%no"),gv=a("%#no"),gk=a("%nd"),gn=a(dV),gw=a("%nu"),f_=a("%+ld"),f$=a("% ld"),gb=a("%+li"),gc=a("% li"),gd=a("%lx"),ge=a("%#lx"),gf=a("%lX"),gg=a("%#lX"),gh=a("%lo"),gi=a("%#lo"),f9=a("%ld"),ga=a(dB),gj=a("%lu"),fX=a("%+Ld"),fY=a("% Ld"),f0=a("%+Li"),f1=a("% Li"),f2=a("%Lx"),f3=a("%#Lx"),f4=a("%LX"),f5=a("%#LX"),f6=a("%Lo"),f7=a("%#Lo"),fW=a("%Ld"),fZ=a(db),f8=a("%Lu"),fK=a("%+d"),fL=a("% d"),fN=a("%+i"),fO=a("% i"),fP=a("%x"),fQ=a("%#x"),fR=a("%X"),fS=a("%#X"),fT=a("%o"),fU=a("%#o"),fJ=a(dj),fM=a(c5),fV=a(dN),e4=a("@]"),e5=a("@}"),e6=a("@?"),e7=a("@\n"),e8=a("@."),e9=a("@@"),e_=a("@%"),e$=a("@"),fH=a("CamlinternalFormat.Type_mismatch"),gZ=a("x"),ia=a("OCAMLRUNPARAM"),h_=a("CAMLRUNPARAM"),g0=a(e),ho=[3,0,3],hp=a(ay),hj=a(dQ),hk=a("<\/"),hl=a(e),hf=a(dQ),hg=a("<"),hh=a(e),hd=a("\n"),g$=a(e),ha=a(e),hb=a(e),hc=a(e),g_=[0,a(e)],g6=a(e),g7=a(e),g8=a(e),g9=a(e),g5=[0,a(e),0,a(e)],g4=a(e),g3=a("Stdlib.Format.String_tag"),h9=a("TMPDIR"),h8=a("TEMP"),hu=a("Cygwin"),hv=a("Win32"),hx=a("Js_of_ocaml__Js.Error"),hy=a(bU),hB=a(dn),hA=a(dn),hC=a(da),hD=a(e),hE=a(e),hF=a(da),hG=a("0.0.0.0"),hH=a("127.0.0.1"),h7=a("::"),h6=a("::1"),hI=[0,[11,a(ds),0],a(ds)],hJ=[0,[11,a(dl),0],a(dl)],hY=[0,a(ax),422,10],hX=[0,a(ax),433,16],hW=[0,a(ax),409,4],hV=[0,a(ax),348,12],hU=[0,a(ax),339,12],hS=[0,a(ax),92,8],hT=a(dM),hQ=[0,a(ax),80,8],hR=a(dE),hP=a(dM),hO=a(dE),hK=a("Matrix.NonSquare"),hM=a("Matrix.ImproperDimensions"),h4=a("NonElt"),h5=a("Dune__exe__Worker.Empty_Element");function o(a){if(typeof a==="number")return 0;else switch(a[0]){case 0:return[0,o(a[1])];case 1:return[1,o(a[1])];case 2:return[2,o(a[1])];case 3:return[3,o(a[1])];case 4:return[4,o(a[1])];case 5:return[5,o(a[1])];case 6:return[6,o(a[1])];case 7:return[7,o(a[1])];case 8:var c=a[1];return[8,c,o(a[2])];case 9:var b=a[1];return[9,b,b,o(a[3])];case 10:return[10,o(a[1])];case 11:return[11,o(a[1])];case 12:return[12,o(a[1])];case 13:return[13,o(a[1])];default:return[14,o(a[1])]}}function D(a,b){if(typeof a==="number")return b;else switch(a[0]){case 0:return[0,D(a[1],b)];case 1:return[1,D(a[1],b)];case 2:return[2,D(a[1],b)];case 3:return[3,D(a[1],b)];case 4:return[4,D(a[1],b)];case 5:return[5,D(a[1],b)];case 6:return[6,D(a[1],b)];case 7:return[7,D(a[1],b)];case 8:var c=a[1];return[8,c,D(a[2],b)];case 9:var d=a[2],e=a[1];return[9,e,d,D(a[3],b)];case 10:return[10,D(a[1],b)];case 11:return[11,D(a[1],b)];case 12:return[12,D(a[1],b)];case 13:return[13,D(a[1],b)];default:return[14,D(a[1],b)]}}function m(a,b){if(typeof a==="number")return b;else switch(a[0]){case 0:return[0,m(a[1],b)];case 1:return[1,m(a[1],b)];case 2:var c=a[1];return[2,c,m(a[2],b)];case 3:var d=a[1];return[3,d,m(a[2],b)];case 4:var e=a[3],f=a[2],g=a[1];return[4,g,f,e,m(a[4],b)];case 5:var h=a[3],i=a[2],j=a[1];return[5,j,i,h,m(a[4],b)];case 6:var k=a[3],l=a[2],n=a[1];return[6,n,l,k,m(a[4],b)];case 7:var o=a[3],p=a[2],q=a[1];return[7,q,p,o,m(a[4],b)];case 8:var r=a[3],s=a[2],t=a[1];return[8,t,s,r,m(a[4],b)];case 9:var u=a[1];return[9,u,m(a[2],b)];case 10:return[10,m(a[1],b)];case 11:var v=a[1];return[11,v,m(a[2],b)];case 12:var w=a[1];return[12,w,m(a[2],b)];case 13:var x=a[2],y=a[1];return[13,y,x,m(a[3],b)];case 14:var z=a[2],A=a[1];return[14,A,z,m(a[3],b)];case 15:return[15,m(a[1],b)];case 16:return[16,m(a[1],b)];case 17:var B=a[1];return[17,B,m(a[2],b)];case 18:var C=a[1];return[18,C,m(a[2],b)];case 19:return[19,m(a[1],b)];case 20:var D=a[2],E=a[1];return[20,E,D,m(a[3],b)];case 21:var F=a[1];return[21,F,m(a[2],b)];case 22:return[22,m(a[1],b)];case 23:var G=a[1];return[23,G,m(a[2],b)];default:var H=a[2],I=a[1];return[24,I,H,m(a[3],b)]}}function ci(a){throw[0,$,a]}function I(a){throw[0,ch,a]}H(0);function ck(b,a){return iq(b,a)?b:a}function br(a){return 0<=a?a:-a|0}var eq=2147483647;function at(d,c){var a=i(d),e=i(c),b=v(a+e|0);aq(d,0,b,0,a);aq(c,0,b,a,e);return F(b)}function er(a){return a?es:et}iN(0);var eu=ee(1),ev=ee(2),bs=[0,function(b){function a(b){var a=b;for(;;){if(a){var c=a[2],d=a[1];try{cb(d)}catch(a){a=_(a);if(a[1]!==cj)throw a;var e=a}var a=c;continue}return 0}}return a(iO(0))}];function cl(b){var a=[0,0],d=bs[1];bs[1]=function(e){if(1-a[1]){a[1]=1;c(b,0)}return c(d,0)};return 0}function ex(a){return c(bs[1],0)}var cm=i4(0)[1],cn=i3(0),aO=(4*cn|0)-1|0;H(0);var eE=i2(0);function bt(c){var b=0,a=c;for(;;){if(a){var b=b+1|0,a=a[2];continue}return b}}function co(d){var a=d,b=0;for(;;){if(a){var c=[0,a[1],b],a=a[2],b=c;continue}return b}}function cp(a,d,b){if(d<=a)return 0;var e=c(b,a);return[0,e,cp(a+1|0,d,b)]}var eF=typeof eE==="number"?10000:50;function au(a,c){var b=v(a);im(b,0,a,c);return b}function cq(c,b,a){if(0<=b&&0<=a&&!((M(c)-a|0)>>0))e=1}else if(65<=d)e=1}else{var f=0;if(32!==d)if(43<=d)switch(d-43|0){case 5:if(a<(c+2|0)&&1>>0){if(33<(o-61|0)>>>0)r=1}else if(2===o)r=1;if(!r){var k=k+1|0;continue}var e=ah(l),a=[0,0],w=M(e)-1|0,B=0;if(!(w<0)){var j=B;for(;;){var f=a3(e,j),g=0;if(32<=f){var m=f-34|0,s=0;if(58>>0){if(93<=m)s=1}else if(56<(m-1|0)>>>0){g=1;s=1}if(!s){var n=1;g=2}}else if(11<=f){if(13===f)g=1}else if(8<=f)g=1;switch(g){case 0:var n=4;break;case 1:var n=2;break}a[1]=a[1]+n|0;var E=j+1|0;if(w!==j){var j=E;continue}break}}if(a[1]===M(e)){var t=M(e),u=v(t);ap(e,0,u,0,t);var y=u}else{var b=v(a[1]);a[1]=0;var x=M(e)-1|0,C=0;if(!(x<0)){var h=C;for(;;){var c=a3(e,h),d=0;if(35<=c)if(92===c)d=2;else if(b2<=c)d=1;else d=3;else if(32<=c)if(34<=c)d=2;else d=3;else if(14<=c)d=1;else switch(c){case 8:q(b,a[1],92);a[1]++;q(b,a[1],98);break;case 9:q(b,a[1],92);a[1]++;q(b,a[1],116);break;case 10:q(b,a[1],92);a[1]++;q(b,a[1],110);break;case 13:q(b,a[1],92);a[1]++;q(b,a[1],114);break;default:d=1}switch(d){case 1:q(b,a[1],92);a[1]++;q(b,a[1],48+(c/dd|0)|0);a[1]++;q(b,a[1],48+((c/10|0)%10|0)|0);a[1]++;q(b,a[1],48+(c%10|0)|0);break;case 2:q(b,a[1],92);a[1]++;q(b,a[1],c);break;case 3:q(b,a[1],c);break}a[1]++;var D=h+1|0;if(x!==h){var h=D;continue}break}}var y=b}var p=F(y)}var z=i(p),A=au(z+2|0,34);aq(p,0,A,1,z);return F(A)}}function cy(d,g){var h=br(g),f=cz?cz[1]:70;switch(d[2]){case 0:var b=102;break;case 1:var b=101;break;case 2:var b=69;break;case 3:var b=dh;break;case 4:var b=71;break;case 5:var b=f;break;case 6:var b=104;break;case 7:var b=72;break;default:var b=70}var c=cv(16);aE(c,37);switch(d[1]){case 0:break;case 1:aE(c,43);break;default:aE(c,32)}if(8<=d[2])aE(c,35);aE(c,46);B(c,a(e+h));aE(c,b);return cx(c)}function ba(n,a){if(13<=n){var g=[0,0],h=i(a)-1|0,o=0;if(!(h<0)){var c=o;for(;;){if(!(9<(T(a,c)+dp|0)>>>0))g[1]++;var r=c+1|0;if(h!==c){var c=r;continue}break}}var j=g[1],k=v(i(a)+((j-1|0)/3|0)|0),l=[0,0],d=function(a){aA(k,l[1],a);l[1]++;return 0},e=[0,((j-1|0)%3|0)+1|0],m=i(a)-1|0,p=0;if(!(m<0)){var b=p;for(;;){var f=T(a,b);if(9<(f+dp|0)>>>0)d(f);else{if(0===e[1]){d(95);e[1]=3}e[1]+=-1;d(f)}var q=b+1|0;if(m!==b){var b=q;continue}break}}return F(k)}return a}function gx(b,c){switch(b){case 1:var a=fK;break;case 2:var a=fL;break;case 4:var a=fN;break;case 5:var a=fO;break;case 6:var a=fP;break;case 7:var a=fQ;break;case 8:var a=fR;break;case 9:var a=fS;break;case 10:var a=fT;break;case 11:var a=fU;break;case 0:case 13:var a=fJ;break;case 3:case 14:var a=fM;break;default:var a=fV}return ba(b,bj(a,c))}function gy(b,c){switch(b){case 1:var a=f_;break;case 2:var a=f$;break;case 4:var a=gb;break;case 5:var a=gc;break;case 6:var a=gd;break;case 7:var a=ge;break;case 8:var a=gf;break;case 9:var a=gg;break;case 10:var a=gh;break;case 11:var a=gi;break;case 0:case 13:var a=f9;break;case 3:case 14:var a=ga;break;default:var a=gj}return ba(b,bj(a,c))}function gz(b,c){switch(b){case 1:var a=gl;break;case 2:var a=gm;break;case 4:var a=go;break;case 5:var a=gp;break;case 6:var a=gq;break;case 7:var a=gr;break;case 8:var a=gs;break;case 9:var a=gt;break;case 10:var a=gu;break;case 11:var a=gv;break;case 0:case 13:var a=gk;break;case 3:case 14:var a=gn;break;default:var a=gw}return ba(b,bj(a,c))}function gA(b,c){switch(b){case 1:var a=fX;break;case 2:var a=fY;break;case 4:var a=f0;break;case 5:var a=f1;break;case 6:var a=f2;break;case 7:var a=f3;break;case 8:var a=f4;break;case 9:var a=f5;break;case 10:var a=f6;break;case 11:var a=f7;break;case 0:case 13:var a=fW;break;case 3:case 14:var a=fZ;break;default:var a=f8}return ba(b,iw(a,c))}function ab(d,j,b){function k(c){switch(d[1]){case 0:var a=45;break;case 1:var a=43;break;default:var a=32}return is(b,j,a)}function t(c){var a=il(b);return 3===a?b<0.?gC:gD:4<=a?gE:c}switch(d[2]){case 5:var f=ea(cy(d,j),b),e=0,z=i(f);for(;;){if(e===z)var s=0;else{var l=x(f,e)-46|0,m=0;if(23>>0){if(55===l)m=1}else if(21<(l-1|0)>>>0)m=1;if(!m){var e=e+1|0;continue}var s=1}var A=s?f:at(f,gB);return t(A)}case 6:return k(0);case 7:var h=ah(k(0)),g=M(h);if(0===g)var r=h;else{var n=v(g),o=g-1|0,w=0;if(!(o<0)){var a=w;for(;;){var c=a3(h,a),u=0;if(97<=c&&!(dT>>0)return b;var b=b+1|0;continue}}function q(g,f){var b=f;for(;;){if(b===e)return b;var c=x(a,b),d=0;if(48<=c){if(!(58<=c))d=1}else if(45===c)d=1;if(d){var b=b+1|0;continue}return b}}var f=j(0),m=p(f,f),b=cs(a,f,m-f|0),d=j(m),k=q(d,d);if(d===k)var l=0;else try{var r=iG(cs(a,d,k-d|0)),l=r}catch(a){a=_(a);if(a[1]!==$)throw a;var l=g(0)}if(j(k)!==e)g(0);var o=0;if(ak(b,gT)&&ak(b,gU))var n=ak(b,gV)?ak(b,gW)?ak(b,gX)?ak(b,gY)?g(0):1:2:3:0;else o=1;if(o)var n=4;return[0,l,n]}function cB(a){cA[1]=[0,a,cA[1]];return 0}try{var ib=bo(ia),cD=ib}catch(a){a=_(a);if(a!==as)throw a;try{var h$=bo(h_),cC=h$}catch(a){a=_(a);if(a!==as)throw a;var cC=g0}var cD=cC}var g1=eN(cD,82),bc=[dO,function(A){var p=i5(0),d=[0,S(55,0),0],l=0===p.length-1?[0,0]:p,m=l.length-1,c=0;for(;;){b(d[1],c)[1+c]=c;var z=c+1|0;if(54!==c){var c=z;continue}var j=[0,gZ],n=54+ck(55,m)|0,u=0;if(!(n<0)){var f=u;for(;;){var g=f%55|0,o=iR(f,m),v=b(l,o)[1+o],k=at(j[1],a(e+v));j[1]=iM(k,0,i(k));var h=j[1],q=x(h,3)<<24,r=x(h,2)<<16,s=x(h,1)<<8,t=((x(h,0)+s|0)+r|0)+q|0,w=(b(d[1],g)[1+g]^t)&dw;b(d[1],g)[1+g]=w;var y=f+1|0;if(n!==f){var f=y;continue}break}}d[2]=0;return d}}];function g2(i,l){var m=i?i[1]:g1,c=16;for(;;){if(!(l<=c)&&!(cn<(c*2|0))){var c=c*2|0;continue}if(m){var j=ei(bc),a=bh===j?bc[1]:dO===j?eY(bc):bc;a[2]=(a[2]+1|0)%55|0;var d=a[2],e=b(a[1],d)[1+d],f=(a[2]+24|0)%55|0,g=(b(a[1],f)[1+f]+(e^(e>>>25|0)&31)|0)&dw,h=a[2];b(a[1],h)[1+h]=g;var k=g}else var k=0;return[0,0,S(c,0),k,c]}}var bF=[p,g3,H(0)],bd=0,cE=-1;function aU(a,b){a[13]=a[13]+b[3]|0;return cu(b,a[28])}var cF=1000000010;function bG(b,a){return aw(b[17],a,0,i(a))}function be(a){return c(a[19],0)}function cG(a,c,b){a[9]=a[9]-c|0;bG(a,b);a[11]=0;return 0}function bf(c,a){var b=ak(a,g4);return b?cG(c,i(a),a):b}function aG(a,b,f){var g=b[3],h=b[2];bf(a,b[1]);be(a);a[11]=1;var d=(a[6]-f|0)+h|0,e=a[8],i=iI(e,d)?e:d;a[10]=i;a[9]=a[6]-a[10]|0;c(a[21],a[10]);return bf(a,g)}function cH(b,a){return aG(b,g5,a)}function aV(a,b){var d=b[2],e=b[3];bf(a,b[1]);a[9]=a[9]-d|0;c(a[20],d);return bf(a,e)}function cI(a){for(;;){var s=a[28][2],O=s?[0,s[1]]:0;if(O){var q=O[1],r=q[1],b=q[2],ac=0<=r?1:0,aa=q[3],ab=a[13]-a[12]|0,P=ac||(a[9]<=ab?1:0);if(P){var g=a[28],n=g[2];if(n){if(n[2]){var Q=n[2];g[1]=g[1]-1|0;g[2]=Q}else by(g);var m=0<=r?r:cF;if(typeof b==="number")switch(b){case 0:var y=aD(a[3]);if(y){var z=y[1][1],A=function(b,a){if(a){var c=a[1],d=a[2];return iJ(b,c)?[0,b,a]:[0,c,A(b,d)]}return[0,b,0]};z[1]=A(a[6]-a[9]|0,z[1])}break;case 1:aC(a[2]);break;case 2:aC(a[3]);break;case 3:var B=aD(a[2]);if(B)cH(a,B[1][2]);else be(a);break;case 4:if(a[10]!==(a[6]-a[9]|0)){var e=a[28],h=e[2];if(h){var t=h[1];if(h[2]){var R=h[2];e[1]=e[1]-1|0;e[2]=R;var j=[0,t]}else{by(e);var j=[0,t]}}else var j=0;if(j){var x=j[1],T=x[1];a[12]=a[12]-x[3]|0;a[9]=a[9]+T|0}}break;default:var C=aC(a[5]);if(C)bG(a,c(a[25],C[1]))}else switch(b[0]){case 0:cG(a,m,b[1]);break;case 1:var d=b[2],k=b[1],D=d[1],U=d[2],E=aD(a[2]);if(E){var F=E[1],f=F[2];switch(F[1]){case 0:aV(a,k);break;case 1:aG(a,d,f);break;case 2:aG(a,d,f);break;case 3:if(a[9]<(m+i(D)|0))aG(a,d,f);else aV(a,k);break;case 4:if(a[11]||!(a[9]<(m+i(D)|0)||((a[6]-f|0)+U|0)>>0))cH(a,w)}else be(a)}var _=a[9]-Z|0,$=1===M?1:a[9]>>0)return 0.;switch(a){case 0:return 1.;case 1:return 4.;default:return 1.}})}),s=c(aH[3],K),A=a-1|0,L=0;if(!(A<0)){var e=L;for(;;){if(0===e)var T=b(d,0)[1],l=c1(bM(6.,b(d,1)[2]),T);else if((e+1|0)===a)var D=a+1|0,W=b(d,a)[1+a],X=b(d,D)[1+D],l=c1(bM(6.,W),X);else var E=e+1|0,l=bM(6.,b(d,E)[1+E]);var U=l[2];aw(aH[10],s,[0,e+1|0,a+1|0],l[1]);aw(aH[10],s,[0,e+1|0,a+2|0],U);var V=e+1|0;if(A!==e){var e=V;continue}break}}var B=c(aH[12],s),M=g(aH[6],B,a+1|0)[2],C=a+1|0,N=g(aH[6],B,a+2|0)[2],t=S(a+2|0,b(d,C)[1+C]),O=1;if(!(a<1)){var f=O;for(;;){var Q=[an,dY(M,f-1|0),dY(N,f-1|0)];b(t,f)[1+f]=Q;var R=f+1|0;if(a!==f){var f=R;continue}break}}var P=b(d,0)[1];b(t,0)[1]=P;var m=[0,t]}else var m=[1,378784796];if(0===m[0])var q=m[1],Y=q.length-1-1|0,v=[0,bv((Y-1|0)+1|0,function(h){var a=h+1|0,c=a-1|0,e=b(q,c)[1+c],f=b(q,a)[1+a],g=a-1|0,i=b(d,g)[1+g],j=b(d,a)[1+a],k=c2(e,f,0.33333333333333331);return[0,i,j,k,c2(e,f,0.66666666666666663)]})];else var v=m;if(0===v[0]){var w=v[1],k=w.length-1;if(k!==i.length-1)var x=I(eQ);else if(0===k)var x=[0];else{var y=S(k,c4(w[1],i[1])),z=k-1|0,H=1;if(!(z<1)){var h=H;for(;;){y[1+h]=c4(w[1+h],i[1+h]);var J=h+1|0;if(z!==h){var h=J;continue}break}}var x=y}return c0([0,dU,[0,Z,x]])}return 0}return c0([0,-912009552,n])});ex(0);return}(function(){return this}()));