// This program was compiled from OCaml by js_of_ocaml 1.0 function caml_raise_with_arg (tag, arg) { throw [0, tag, arg]; } function caml_raise_with_string (tag, msg) { caml_raise_with_arg (tag, new MlWrappedString (msg)); } function caml_invalid_argument (msg) { caml_raise_with_string(caml_global_data[4], msg); } function caml_array_bound_error () { caml_invalid_argument("index out of bounds"); } function caml_str_repeat(n, s) { if (!n) { return ""; } if (n & 1) { return caml_str_repeat(n - 1, s) + s; } var r = caml_str_repeat(n >> 1, s); return r + r; } function MlString(param) { if (param != null) { this.bytes = this.fullBytes = param; this.last = this.len = param.length; } } MlString.prototype = { string:null, bytes:null, fullBytes:null, array:null, len:null, last:0, toJsString:function() { return this.string = decodeURIComponent (escape(this.getFullBytes())); }, toBytes:function() { if (this.string != null) var b = unescape (encodeURIComponent (this.string)); else { var b = "", a = this.array, l = a.length; for (var i = 0; i < l; i ++) b += String.fromCharCode (a[i]); } this.bytes = this.fullBytes = b; this.last = this.len = b.length; return b; }, getBytes:function() { var b = this.bytes; if (b == null) b = this.toBytes(); return b; }, getFullBytes:function() { var b = this.fullBytes; if (b !== null) return b; b = this.bytes; if (b == null) b = this.toBytes (); if (this.last < this.len) { this.bytes = (b += caml_str_repeat(this.len - this.last, '\0')); this.last = this.len; } this.fullBytes = b; return b; }, toArray:function() { var b = this.bytes; if (b == null) b = this.toBytes (); var a = [], l = this.last; for (var i = 0; i < l; i++) a[i] = b.charCodeAt(i); for (l = this.len; i < l; i++) a[i] = 0; this.string = this.bytes = this.fullBytes = null; this.last = this.len; this.array = a; return a; }, getArray:function() { var a = this.array; if (!a) a = this.toArray(); return a; }, getLen:function() { var len = this.len; if (len !== null) return len; this.toBytes(); return this.len; }, toString:function() { var s = this.string; return s?s:this.toJsString(); }, valueOf:function() { var s = this.string; return s?s:this.toJsString(); }, blitToArray:function(i1, a2, i2, l) { var a1 = this.array; if (a1) for (var i = 0; i < l; i++) a2 [i2 + i] = a1 [i1 + i]; else { var b = this.bytes; if (b == null) b = this.toBytes(); var l1 = this.last - i1; if (l <= l1) for (var i = 0; i < l; i++) a2 [i2 + i] = b.charCodeAt(i1 + i); else { for (var i = 0; i < l1; i++) a2 [i2 + i] = b.charCodeAt(i1 + i); for (; i < l; i++) a2 [i2 + i] = 0; } } }, get:function (i) { var a = this.array; if (a) return a[i]; var b = this.bytes; if (b == null) b = this.toBytes(); return (i<this.last)?b.charCodeAt(i):0; }, safeGet:function (i) { if (!this.len) this.toBytes(); if ((i < 0) || (i >= this.len)) caml_array_bound_error (); return this.get(i); }, set:function (i, c) { var a = this.array; if (!a) { if (this.last == i) { this.bytes += String.fromCharCode (c & 0xff); this.last ++; return 0; } a = this.toArray(); } else if (this.bytes != null) { this.bytes = this.fullBytes = this.string = null; } a[i] = c & 0xff; return 0; }, safeSet:function (i, c) { if (this.len == null) this.toBytes (); if ((i < 0) || (i >= this.len)) caml_array_bound_error (); this.set(i, c); }, fill:function (ofs, len, c) { if (ofs >= this.last && this.last && c == 0) return; var a = this.array; if (!a) a = this.toArray(); else if (this.bytes != null) { this.bytes = this.fullBytes = this.string = null; } var l = ofs + len; for (var i = ofs; i < l; i++) a[i] = c; }, compare:function (s2) { if (this.string != null && s2.string != null) { if (this.string < s2.string) return -1; if (this.string > s2.string) return 1; return 0; } var b1 = this.getFullBytes (); var b2 = s2.getFullBytes (); if (b1 < b2) return -1; if (b1 > b2) return 1; return 0; }, equal:function (s2) { if (this.string != null && s2.string != null) return this.string == s2.string; return this.getFullBytes () == s2.getFullBytes (); }, lessThan:function (s2) { if (this.string != null && s2.string != null) return this.string < s2.string; return this.getFullBytes () < s2.getFullBytes (); }, lessEqual:function (s2) { if (this.string != null && s2.string != null) return this.string <= s2.string; return this.getFullBytes () <= s2.getFullBytes (); } } function MlWrappedString (s) { this.string = s; } MlWrappedString.prototype = new MlString(); function MlMakeString (l) { this.bytes = ""; this.len = l; } MlMakeString.prototype = new MlString (); function caml_array_get (array, index) { if ((index < 0) || (index >= array.length - 1)) caml_array_bound_error(); return array[index+1]; } function caml_array_set (array, index, newval) { if ((index < 0) || (index >= array.length - 1)) caml_array_bound_error(); array[index+1]=newval; return 0; } function caml_blit_string(s1, i1, s2, i2, len) { if (len === 0) return; if (i2 === s2.last && s2.bytes != null) { var b = s1.bytes; if (b == null) b = s1.toBytes (); if (i1 > 0 || s1.last > len) b = b.slice(i1, i1 + len); s2.bytes += b; s2.last += b.length; return; } var a = s2.array; if (!a) a = s2.toArray(); else { s2.bytes = s2.string = null; } s1.blitToArray (i1, a, i2, len); } function caml_call_gen(f, args) { if(f.fun) return caml_call_gen(f.fun, args); var n = f.length; var d = n - args.length; if (d == 0) return f.apply(null, args); else if (d < 0) return caml_call_gen(f.apply(null, args.slice(0,n)), args.slice(n)); else return function (x){ return caml_call_gen(f, args.concat([x])); }; } function caml_classify_float (x) { if (isFinite (x)) { if (Math.abs(x) >= 2.2250738585072014e-308) return 0; if (x != 0) return 1; return 2; } return isNaN(x)?4:3; } function caml_create_string(len) { if (len < 0) caml_invalid_argument("String.create"); return new MlMakeString(len); } function caml_int64_compare(x,y) { var x3 = x[3] << 16; var y3 = y[3] << 16; if (x3 > y3) return 1; if (x3 < y3) return -1; if (x[2] > y[2]) return 1; if (x[2] < y[2]) return -1; if (x[1] > y[1]) return 1; if (x[1] < y[1]) return -1; return 0; } function caml_int_compare (a, b) { if (a < b) return (-1); if (a == b) return 0; return 1; } function caml_compare_val (a, b, total) { var stack = []; for(;;) { if (!(total && a === b)) { if (a instanceof MlString) { if (b instanceof MlString) { if (a != b) { var x = a.compare(b); if (x != 0) return x; } } else return 1; } else if (a instanceof Array && a[0] === (a[0]|0)) { var ta = a[0]; if (ta === 250) { a = a[1]; continue; } else if (b instanceof Array && b[0] === (b[0]|0)) { var tb = b[0]; if (tb === 250) { b = b[1]; continue; } else if (ta != tb) { return (ta < tb)?-1:1; } else { switch (ta) { case 248: { var x = caml_int_compare(a[2], b[2]); if (x != 0) return x; break; } case 255: { var x = caml_int64_compare(a, b); if (x != 0) return x; break; } default: if (a.length != b.length) return (a.length < b.length)?-1:1; if (a.length > 1) stack.push(a, b, 1); } } } else return 1; } else if (b instanceof MlString || (b instanceof Array && b[0] === (b[0]|0))) { return -1; } else { if (a < b) return -1; if (a > b) return 1; if (total && a != b) { if (a == a) return 1; if (b == b) return -1; } } } if (stack.length == 0) return 0; var i = stack.pop(); b = stack.pop(); a = stack.pop(); if (i + 1 < a.length) stack.push(a, b, i + 1); a = a[i]; b = b[i]; } } function caml_equal (x, y) { return +(caml_compare_val(x,y,false) == 0); } function caml_fill_string(s, i, l, c) { s.fill (i, l, c); } function caml_parse_format (fmt) { fmt = fmt.toString (); var len = fmt.length; if (len > 31) caml_invalid_argument("format_int: format too long"); var f = { justify:'+', signstyle:'-', filler:' ', alternate:false, base:0, signedconv:false, width:0, uppercase:false, sign:1, prec:6, conv:'f' }; for (var i = 0; i < len; i++) { var c = fmt.charAt(i); switch (c) { case '-': f.justify = '-'; break; case '+': case ' ': f.signstyle = c; break; case '0': f.filler = '0'; break; case '#': f.alternate = true; break; case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': f.width = 0; while (c=fmt.charCodeAt(i) - 48, c >= 0 && c <= 9) { f.width = f.width * 10 + c; i++ } i--; break; case '.': f.prec = 0; i++; while (c=fmt.charCodeAt(i) - 48, c >= 0 && c <= 9) { f.prec = f.prec * 10 + c; i++ } i--; case 'd': case 'i': f.signedconv = true; /* fallthrough */ case 'u': f.base = 10; break; case 'x': f.base = 16; break; case 'X': f.base = 16; f.uppercase = true; break; case 'o': f.base = 8; break; case 'e': case 'f': case 'g': f.signedconv = true; f.conv = c; break; case 'E': case 'F': case 'G': f.signedconv = true; f.uppercase = true; f.conv = c.toLowerCase (); break; } } return f; } function caml_finish_formatting(f, rawbuffer) { if (f.uppercase) rawbuffer = rawbuffer.toUpperCase(); var len = rawbuffer.length; if (f.signedconv && (f.sign < 0 || f.signstyle != '-')) len++; if (f.alternate) { if (f.base == 8) len += 1; if (f.base == 16) len += 2; } var buffer = ""; if (f.justify == '+' && f.filler == ' ') for (var i = len; i < f.width; i++) buffer += ' '; if (f.signedconv) { if (f.sign < 0) buffer += '-'; else if (f.signstyle != '-') buffer += f.signstyle; } if (f.alternate && f.base == 8) buffer += '0'; if (f.alternate && f.base == 16) buffer += "0x"; if (f.justify == '+' && f.filler == '0') for (var i = len; i < f.width; i++) buffer += '0'; buffer += rawbuffer; if (f.justify == '-') for (var i = len; i < f.width; i++) buffer += ' '; return new MlWrappedString (buffer); } function caml_format_float (fmt, x) { var s, f = caml_parse_format(fmt); if (x < 0) { f.sign = -1; x = -x; } if (isNaN(x)) { s = "nan"; f.filler = ' '; } else if (!isFinite(x)) { s = "inf"; f.filler = ' '; } else switch (f.conv) { case 'e': var s = x.toExponential(f.prec); var i = s.length; if (s.charAt(i - 3) == 'e') s = s.slice (0, i - 1) + '0' + s.slice (i - 1); break; case 'f': s = x.toFixed(f.prec); break; case 'g': var prec = f.prec?f.prec:1; s = x.toExponential(prec - 1); var j = s.indexOf('e'); var exp = +s.slice(j + 1); if (exp < -4 || x.toFixed(0).length > prec) { var i = j - 1; while (s.charAt(i) == '0') i--; if (s.charAt(i) == '.') i--; s = s.slice(0, i + 1) + s.slice(j); i = s.length; if (s.charAt(i - 3) == 'e') s = s.slice (0, i - 1) + '0' + s.slice (i - 1); break; } else { var p = prec; if (exp < 0) { p -= exp + 1; s = x.toFixed(p); } else while (s = x.toFixed(p), s.length > prec + 1) p--; if (p) { var i = s.length - 1; while (s.charAt(i) == '0') i--; if (s.charAt(i) == '.') i--; s = s.slice(0, i + 1); } } break; } return caml_finish_formatting(f, s); } function caml_format_int(fmt, i) { if (fmt.toString() == "%d") return new MlWrappedString(""+i); var f = caml_parse_format(fmt); if (i < 0) { if (f.signedconv) { f.sign = -1; i = -i; } else i >>>= 0; } var s = i.toString(f.base); return caml_finish_formatting(f, s); } function caml_compare (a, b) { return caml_compare_val (a, b, true); } function caml_greaterequal (x, y) { return +(caml_compare(x,y,false) >= 0); } function caml_int64_is_negative(x) { return (x[3] << 16) < 0; } function caml_int64_neg (x) { var y1 = - x[1]; var y2 = - x[2] + (y1 >> 24); var y3 = - x[3] + (y2 >> 24); return [255, y1 & 0xffffff, y2 & 0xffffff, y3 & 0xffff]; } function caml_int64_of_int32 (x) { return [255, x & 0xffffff, (x >> 24) & 0xffffff, (x >> 31) & 0xffff] } function caml_int64_ucompare(x,y) { if (x[3] > y[3]) return 1; if (x[3] < y[3]) return -1; if (x[2] > y[2]) return 1; if (x[2] < y[2]) return -1; if (x[1] > y[1]) return 1; if (x[1] < y[1]) return -1; return 0; } function caml_int64_lsl1 (x) { x[3] = (x[3] << 1) | (x[2] >> 23); x[2] = ((x[2] << 1) | (x[1] >> 23)) & 0xffffff; x[1] = (x[1] << 1) & 0xffffff; } function caml_int64_lsr1 (x) { x[1] = ((x[1] >>> 1) | (x[2] << 23)) & 0xffffff; x[2] = ((x[2] >>> 1) | (x[3] << 23)) & 0xffffff; x[3] = x[3] >>> 1; } function caml_int64_sub (x, y) { var z1 = x[1] - y[1]; var z2 = x[2] - y[2] + (z1 >> 24); var z3 = x[3] - y[3] + (z2 >> 24); return [255, z1 & 0xffffff, z2 & 0xffffff, z3 & 0xffff]; } function caml_int64_udivmod (x, y) { var offset = 0; var modulus = x.slice (); var divisor = y.slice (); var quotient = [255, 0, 0, 0]; while (caml_int64_ucompare (modulus, divisor) > 0) { offset++; caml_int64_lsl1 (divisor); } while (offset >= 0) { offset --; caml_int64_lsl1 (quotient); if (caml_int64_ucompare (modulus, divisor) >= 0) { quotient[1] ++; modulus = caml_int64_sub (modulus, divisor); } caml_int64_lsr1 (divisor); } return [0,quotient, modulus]; } function caml_int64_to_int32 (x) { return x[1] | (x[2] << 24); } function caml_int64_is_zero(x) { return (x[3]|x[2]|x[1]) == 0; } function caml_int64_format (fmt, x) { var f = caml_parse_format(fmt); if (f.signedconv && caml_int64_is_negative(x)) { f.sign = -1; x = caml_int64_neg(x); } var buffer = ""; var wbase = caml_int64_of_int32(f.base); var cvtbl = "0123456789abcdef"; do { var p = caml_int64_udivmod(x, wbase); x = p[1]; buffer = cvtbl.charAt(caml_int64_to_int32(p[2])) + buffer; } while (! caml_int64_is_zero(x)); return caml_finish_formatting(f, buffer); } function caml_parse_sign_and_base (s) { var i = 0, base = 10, sign = s.get(0) == 45?(i++,-1):1; if (s.get(i) == 48) switch (s.get(i + 1)) { case 120: case 88: base = 16; i += 2; break; case 111: case 79: base = 8; i += 2; break; case 98: case 66: base = 2; i += 2; break; } return [i, sign, base]; } function caml_parse_digit(c) { if (c >= 48 && c <= 57) return c - 48; if (c >= 65 && c <= 90) return c - 55; if (c >= 97 && c <= 122) return c - 87; return -1; } var caml_global_data = [0]; function caml_failwith (msg) { caml_raise_with_string(caml_global_data[3], msg); } function caml_int_of_string (s) { var r = caml_parse_sign_and_base (s); var i = r[0], sign = r[1], base = r[2]; var threshold = -1 >>> 0; var c = s.get(i); var d = caml_parse_digit(c); if (d < 0 || d >= base) caml_failwith("int_of_string"); var res = d; for (;;) { i++; c = s.get(i); if (c == 95) continue; d = caml_parse_digit(c); if (d < 0 || d >= base) break; res = base * res + d; if (res > threshold) caml_failwith("int_of_string"); } if (i != s.getLen()) caml_failwith("int_of_string"); res = sign * res; if ((res | 0) != res) caml_failwith("int_of_string"); return res; } function caml_is_printable(c) { return +(c > 31 && c < 127); } var caml_js_regexps = { amp:/&/g, lt:/</g, quot:/\"/g, all:/[&<\"]/ }; function caml_js_html_escape (s) { if (!caml_js_regexps.all.test(s)) return s; return s.replace(caml_js_regexps.amp, "&") .replace(caml_js_regexps.lt, "<") .replace(caml_js_regexps.quot, """); } function caml_js_on_ie () { var ua = window.navigator?window.navigator.userAgent:""; return ua.indexOf("MSIE") != -1 && ua.indexOf("Opera") != 0; } function caml_js_wrap_callback(f) { var toArray = Array.prototype.slice; return function () { var args = (arguments.length > 0)?toArray.call (arguments):[undefined]; return caml_call_gen(f, args); } } function caml_lessequal (x, y) { return +(caml_compare(x,y,false) <= 0); } function caml_lessthan (x, y) { return +(caml_compare(x,y,false) < 0); } function caml_lex_array(s) { s = s.getFullBytes(); var a = [], l = s.length / 2; for (var i = 0; i < l; i++) a[i] = (s.charCodeAt(2 * i) | (s.charCodeAt(2 * i + 1) << 8)) << 16 >> 16; return a; } function caml_lex_engine(tbl, start_state, lexbuf) { var lex_buffer = 2; var lex_buffer_len = 3; var lex_start_pos = 5; var lex_curr_pos = 6; var lex_last_pos = 7; var lex_last_action = 8; var lex_eof_reached = 9; var lex_base = 1; var lex_backtrk = 2; var lex_default = 3; var lex_trans = 4; var lex_check = 5; if (!tbl.lex_default) { tbl.lex_base = caml_lex_array (tbl[lex_base]); tbl.lex_backtrk = caml_lex_array (tbl[lex_backtrk]); tbl.lex_check = caml_lex_array (tbl[lex_check]); tbl.lex_trans = caml_lex_array (tbl[lex_trans]); tbl.lex_default = caml_lex_array (tbl[lex_default]); } var c, state = start_state; var buffer = lexbuf[lex_buffer].getArray(); if (state >= 0) { lexbuf[lex_last_pos] = lexbuf[lex_start_pos] = lexbuf[lex_curr_pos]; lexbuf[lex_last_action] = -1; } else { state = -state - 1; } for(;;) { var base = tbl.lex_base[state]; if (base < 0) return -base-1; var backtrk = tbl.lex_backtrk[state]; if (backtrk >= 0) { lexbuf[lex_last_pos] = lexbuf[lex_curr_pos]; lexbuf[lex_last_action] = backtrk; } if (lexbuf[lex_curr_pos] >= lexbuf[lex_buffer_len]){ if (lexbuf[lex_eof_reached] == 0) return -state - 1; else c = 256; }else{ c = buffer[lexbuf[lex_curr_pos]]; lexbuf[lex_curr_pos] ++; } if (tbl.lex_check[base + c] == state) state = tbl.lex_trans[base + c]; else state = tbl.lex_default[state]; if (state < 0) { lexbuf[lex_curr_pos] = lexbuf[lex_last_pos]; if (lexbuf[lex_last_action] == -1) caml_failwith("lexing: empty token"); else return lexbuf[lex_last_action]; }else{ /* Erase the EOF condition only if the EOF pseudo-character was consumed by the automaton (i.e. there was no backtrack above) */ if (c == 256) lexbuf[lex_eof_reached] = 0; } } } function caml_make_vect (len, init) { var b = [0]; for (var i = 1; i <= len; i++) b[i] = init; return b; } function MlStringFromArray (a) { var len = a.length; this.array = a; this.len = this.last = len; } MlStringFromArray.prototype = new MlString (); var caml_md5_string = function () { function add (x, y) { return (x + y) | 0; } function xx(q,a,b,x,s,t) { a = add(add(a, q), add(x, t)); return add((a << s) | (a >>> (32 - s)), b); } function ff(a,b,c,d,x,s,t) { return xx((b & c) | ((~b) & d), a, b, x, s, t); } function gg(a,b,c,d,x,s,t) { return xx((b & d) | (c & (~d)), a, b, x, s, t); } function hh(a,b,c,d,x,s,t) { return xx(b ^ c ^ d, a, b, x, s, t); } function ii(a,b,c,d,x,s,t) { return xx(c ^ (b | (~d)), a, b, x, s, t); } function md5(buffer, length) { var i = length; buffer[i >> 2] |= 0x80 << (8 * (i & 3)); for (i = (i & ~0x3) + 4;(i & 0x3F) < 56 ;i += 4) buffer[i >> 2] = 0; buffer[i >> 2] = length << 3; i += 4; buffer[i >> 2] = (length >> 29) & 0x1FFFFFFF; var w = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476]; for(i = 0; i < buffer.length; i += 16) { var a = w[0], b = w[1], c = w[2], d = w[3]; a = ff(a, b, c, d, buffer[i+ 0], 7, 0xD76AA478); d = ff(d, a, b, c, buffer[i+ 1], 12, 0xE8C7B756); c = ff(c, d, a, b, buffer[i+ 2], 17, 0x242070DB); b = ff(b, c, d, a, buffer[i+ 3], 22, 0xC1BDCEEE); a = ff(a, b, c, d, buffer[i+ 4], 7, 0xF57C0FAF); d = ff(d, a, b, c, buffer[i+ 5], 12, 0x4787C62A); c = ff(c, d, a, b, buffer[i+ 6], 17, 0xA8304613); b = ff(b, c, d, a, buffer[i+ 7], 22, 0xFD469501); a = ff(a, b, c, d, buffer[i+ 8], 7, 0x698098D8); d = ff(d, a, b, c, buffer[i+ 9], 12, 0x8B44F7AF); c = ff(c, d, a, b, buffer[i+10], 17, 0xFFFF5BB1); b = ff(b, c, d, a, buffer[i+11], 22, 0x895CD7BE); a = ff(a, b, c, d, buffer[i+12], 7, 0x6B901122); d = ff(d, a, b, c, buffer[i+13], 12, 0xFD987193); c = ff(c, d, a, b, buffer[i+14], 17, 0xA679438E); b = ff(b, c, d, a, buffer[i+15], 22, 0x49B40821); a = gg(a, b, c, d, buffer[i+ 1], 5, 0xF61E2562); d = gg(d, a, b, c, buffer[i+ 6], 9, 0xC040B340); c = gg(c, d, a, b, buffer[i+11], 14, 0x265E5A51); b = gg(b, c, d, a, buffer[i+ 0], 20, 0xE9B6C7AA); a = gg(a, b, c, d, buffer[i+ 5], 5, 0xD62F105D); d = gg(d, a, b, c, buffer[i+10], 9, 0x02441453); c = gg(c, d, a, b, buffer[i+15], 14, 0xD8A1E681); b = gg(b, c, d, a, buffer[i+ 4], 20, 0xE7D3FBC8); a = gg(a, b, c, d, buffer[i+ 9], 5, 0x21E1CDE6); d = gg(d, a, b, c, buffer[i+14], 9, 0xC33707D6); c = gg(c, d, a, b, buffer[i+ 3], 14, 0xF4D50D87); b = gg(b, c, d, a, buffer[i+ 8], 20, 0x455A14ED); a = gg(a, b, c, d, buffer[i+13], 5, 0xA9E3E905); d = gg(d, a, b, c, buffer[i+ 2], 9, 0xFCEFA3F8); c = gg(c, d, a, b, buffer[i+ 7], 14, 0x676F02D9); b = gg(b, c, d, a, buffer[i+12], 20, 0x8D2A4C8A); a = hh(a, b, c, d, buffer[i+ 5], 4, 0xFFFA3942); d = hh(d, a, b, c, buffer[i+ 8], 11, 0x8771F681); c = hh(c, d, a, b, buffer[i+11], 16, 0x6D9D6122); b = hh(b, c, d, a, buffer[i+14], 23, 0xFDE5380C); a = hh(a, b, c, d, buffer[i+ 1], 4, 0xA4BEEA44); d = hh(d, a, b, c, buffer[i+ 4], 11, 0x4BDECFA9); c = hh(c, d, a, b, buffer[i+ 7], 16, 0xF6BB4B60); b = hh(b, c, d, a, buffer[i+10], 23, 0xBEBFBC70); a = hh(a, b, c, d, buffer[i+13], 4, 0x289B7EC6); d = hh(d, a, b, c, buffer[i+ 0], 11, 0xEAA127FA); c = hh(c, d, a, b, buffer[i+ 3], 16, 0xD4EF3085); b = hh(b, c, d, a, buffer[i+ 6], 23, 0x04881D05); a = hh(a, b, c, d, buffer[i+ 9], 4, 0xD9D4D039); d = hh(d, a, b, c, buffer[i+12], 11, 0xE6DB99E5); c = hh(c, d, a, b, buffer[i+15], 16, 0x1FA27CF8); b = hh(b, c, d, a, buffer[i+ 2], 23, 0xC4AC5665); a = ii(a, b, c, d, buffer[i+ 0], 6, 0xF4292244); d = ii(d, a, b, c, buffer[i+ 7], 10, 0x432AFF97); c = ii(c, d, a, b, buffer[i+14], 15, 0xAB9423A7); b = ii(b, c, d, a, buffer[i+ 5], 21, 0xFC93A039); a = ii(a, b, c, d, buffer[i+12], 6, 0x655B59C3); d = ii(d, a, b, c, buffer[i+ 3], 10, 0x8F0CCC92); c = ii(c, d, a, b, buffer[i+10], 15, 0xFFEFF47D); b = ii(b, c, d, a, buffer[i+ 1], 21, 0x85845DD1); a = ii(a, b, c, d, buffer[i+ 8], 6, 0x6FA87E4F); d = ii(d, a, b, c, buffer[i+15], 10, 0xFE2CE6E0); c = ii(c, d, a, b, buffer[i+ 6], 15, 0xA3014314); b = ii(b, c, d, a, buffer[i+13], 21, 0x4E0811A1); a = ii(a, b, c, d, buffer[i+ 4], 6, 0xF7537E82); d = ii(d, a, b, c, buffer[i+11], 10, 0xBD3AF235); c = ii(c, d, a, b, buffer[i+ 2], 15, 0x2AD7D2BB); b = ii(b, c, d, a, buffer[i+ 9], 21, 0xEB86D391); w[0] = add(a, w[0]); w[1] = add(b, w[1]); w[2] = add(c, w[2]); w[3] = add(d, w[3]); } var t = []; for (var i = 0; i < 4; i++) for (var j = 0; j < 4; j++) t[i * 4 + j] = (w[i] >> (8 * j)) & 0xFF; return t; } return function (s, ofs, len) { var buf = []; if (s.array) { var a = s.array; for (var i = 0; i < len; i+=4) { var j = i + ofs; buf[i>>2] = a[j] | (a[j+1] << 8) | (a[j+2] << 16) | (a[j+3] << 24); } for (; i < len; i++) buf[i>>2] |= a[i + ofs] << (8 * (i & 3)); } else { var b = s.getFullBytes(); for (var i = 0; i < len; i+=4) { var j = i + ofs; buf[i>>2] = b.charCodeAt(j) | (b.charCodeAt(j+1) << 8) | (b.charCodeAt(j+2) << 16) | (b.charCodeAt(j+3) << 24); } for (; i < len; i++) buf[i>>2] |= b.charCodeAt(i + ofs) << (8 * (i & 3)); } return new MlStringFromArray(md5(buf, len)); } } (); function caml_ml_flush () { return 0; } function caml_ml_open_descriptor_out () { return 0; } function caml_ml_out_channels_list () { return 0; } function caml_ml_output () { return 0; } function caml_raise_constant (tag) { throw [0, tag]; } function caml_raise_zero_divide () { caml_raise_constant(caml_global_data[6]); } function caml_mod(x,y) { if (y == 0) caml_raise_zero_divide (); return x%y; } function caml_mul(x,y) { return ((((x >> 16) * y) << 16) + (x & 0xffff) * y)|0; } function caml_register_global (n, v) { caml_global_data[n + 1] = v; } var caml_named_values = {}; function caml_register_named_value(nm,v) { caml_named_values[nm] = v; return 0; } function caml_string_equal(s1, s2) { var b1 = s1.fullBytes; var b2 = s2.fullBytes; if (b1 != null && b2 != null) return (b1 == b2)?1:0; return (s1.getFullBytes () == s2.getFullBytes ())?1:0; } function caml_string_notequal(s1, s2) { return 1-caml_string_equal(s1, s2); } function caml_sys_get_config () { return [0, new MlWrappedString("Unix"), 32]; } function caml_update_dummy (x, y) { if( typeof y==="function" ) { x.fun = y; return 0; } if( y.fun ) { x.fun = y.fun; return 0; } var i = y.length; while (i--) x[i] = y[i]; return 0; } (function() {function _gY_(_uH_,_uI_,_uJ_,_uK_,_uL_) {return _uH_.length==4 ?_uH_(_uI_,_uJ_,_uK_,_uL_) :caml_call_gen(_uH_,[_uI_,_uJ_,_uK_,_uL_]);} function _ea_(_uD_,_uE_,_uF_,_uG_) {return _uD_.length==3 ?_uD_(_uE_,_uF_,_uG_) :caml_call_gen(_uD_,[_uE_,_uF_,_uG_]);} function _eE_(_uA_,_uB_,_uC_) {return _uA_.length==2?_uA_(_uB_,_uC_):caml_call_gen(_uA_,[_uB_,_uC_]);} function _bL_(_uy_,_uz_) {return _uy_.length==1?_uy_(_uz_):caml_call_gen(_uy_,[_uz_]);} var _a_=[0,new MlString("Failure")], _b_=[0,new MlString("Invalid_argument")], _c_=[0,new MlString("Not_found")], _d_=[0,new MlString("Assert_failure")], _e_=[0,new MlString(""),1,0,0], _f_=new MlString("textarea"), _g_= [0, new MlString ("\0\0\x01\0\x02\0\x01\0\x01\0\x01\0\x02\0\x05\0\x01\0\xff\xff\x03\0\x04\0\x06\0\x07\0\xfe\xff\x03\0\x04\0\x06\0\xfb\xff\x02\0\x03\0\x07\0\xfa\xff\b\0\xf8\xff\x0b\0\xee\xff/\0\x14\0.\0F\0U\0l\0\x9b\0\xc1\0\xd0\0\b\x01\x19\x01M\x01\f\0\xff\xff\xfe\xff\xfd\xff\xfc\xff\r\0S\x01@\0B\0J\0\xfa\xffx\0\xfb\xff\xf9\xff\x82\x01\xaa\x01\xba\x01 \x020\x02i\x02W\x02\x82\x02\x93\x02\xf7\xffj\0\x1f\0P\0a\0\x87\0\xf6\xff\xad\0\xb6\0\x0b\0\xf4\xff\xf1\xff\xf3\xff\x0f\0\xd2\0'\x01\x10\0\xfd\xff\xab\0\xfe\xff\xcc\0q\x01\xd7\0\xe2\0\xef\0\xff\xff\x11\0\x0e\x01\xf3\0\x12\0"), new MlString ("\b\0\x06\0\xff\xff\xff\xff\x03\0\x02\0\x01\0\xff\xff\0\0\xff\xff\x01\0\x01\0\x01\0\x01\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x04\0\xff\xff\xff\xff\xff\xff\x05\0\xff\xff\xff\xff\xff\xff\x0f\0\r\0\x0f\0\x0f\0\x0f\0\x0f\0\x0f\0\x0f\0\x0f\0\x0f\0\x0f\0\x0f\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\x03\0\x0f\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0f\0\x0f\0\x0f\0\x0f\0\x07\0\x07\0\xff\xff\x0f\0\x0f\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\n\0\n\0\xff\xff\xff\xff\xff\xff\f\0\xff\xff\xff\xff\x02\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff\xff\xff\x01\0"), new MlString ("\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff\xff\xff\xff\xff\0\0\xff\xff\xff\xff\xff\xff\0\0\xff\xff\0\0\x1b\0\0\0\x1b\0\xff\xffH\0\x1b\0\x1b\0\x1b\0\x1b\0\x1b\0\x1b\0\x1b\0\x1b\0\x1b\0\xff\xff\0\0\0\0\0\0\0\0\xff\xff\x1b\0/\0/\0/\0\0\0/\0\0\0\0\0\x1b\0\x1b\0\x1b\0:\x009\0:\x009\0\x1b\0\x1b\0\0\0A\0@\0A\0B\0B\0\0\0@\0@\0\xff\xff\0\0\0\0\0\0\xff\xff\xff\xffP\0\xff\xff\0\0P\0\0\0P\0P\0P\0P\0P\0\0\0\xff\xffP\0P\0\xff\xff"), new MlString ("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x07\0\t\0\t\0\x12\0\b\0\x07\0\x11\0\x12\0\x16\0\x16\0\x13\0\x17\0(\0(\0+\0'\0J\0O\0W\0Q\0L\0J\0\0\0\x07\0K\0\0\0\x04\0\x04\0\x07\0\x11\0\0\0\x04\0\xff\xff\x05\0\x05\0\xff\xff\x03\0\x0f\0\x05\0\x10\0\x11\0\x03\0\0\0L\0&\0\0\0\xff\xff\xff\xff\xff\xff%\0\xff\xff\xff\xff\x06\0\x18\0\n\0\x0b\0\f\0\x06\0\r\0\x0e\0\0\0\0\0\0\0$\0\0\0\xff\xff\0\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xffI\0\0\0\xff\xff\xff\xff\0\0\0\0\xff\xff\0\0\xff\xff\xff\xff\0\0\0\0\xff\xff\xff\xff\xff\xff\0\0\0\0\xff\xff\0\0\0\0\0\0#\0\x1f\0\"\0\0\0\0\0\xff\xff\xff\xff\0\0\xff\xff\0\0\xff\xff \0\0\0!\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff\0\0\x02\0\x01\0\x14\0\x15\0\xff\xff\x02\0\x01\0\xff\xff\xff\xff\xff\xff\xff\xff\x1e\0\x1c\0G\0\x1d\0\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\xff\xff\xff\xff\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\xff\xffE\x000\0\0\x002\0\0\0\xff\xff\xff\xff\xff\xff\0\0\xff\xff\0\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff>\0\xff\xff\0\0\0\0O\0\0\0\xff\xffN\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff1\0\0\0\xff\xff?\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xffB\0\0\0\xff\xff\0\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff3\0O\0\0\0\xff\xffN\0\xff\xffL\0J\0\xff\xffC\0K\0<\0O\0\0\0\0\0N\0@\0\xff\xff\xff\xff\xff\xff\0\0\xff\xff\xff\xffO\0\0\0\0\0N\0\xff\xff\0\0L\0\0\0\xff\xff\0\0\xff\xff\xff\xff\xff\xffW\0\xff\xff\0\0X\0Q\0\xff\xff\xff\xff[\0\xff\xff\0\0\xff\xffD\0\0\0\x12\0\x16\0\0\0\0\0\0\0\x1a\0\0\0\xff\xff\0\x005\0\0\0-\0+\0\0\0J\0,\0\xff\xff\xff\xffO\0\xff\xff\0\0N\0\xff\xff\xff\xff4\0\xff\xff\0\0\0\0\0\0\xff\xff\0\0\0\0\xff\xff\xff\xff-\0\xff\xffF\0.\0\xff\xff\xff\xff\xff\xff\xff\xffS\0O\0\xff\xffG\0N\0\0\0\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\xff\xff\xff\xff\0\0\xff\xff\xff\xff\0\0\xff\xff\xff\xff\0\0$\0\xff\xffS\0*\0Y\0\xff\xff\xff\xff\xff\xff\0\0\xff\xff\0\0\xff\xff\0\0\0\0\0\0U\0\xff\xff\xff\xff\xff\xff\0\0\0\0\xff\xff\0\0-\0+\0\0\0V\0,\0\xff\xff\0\0\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\xff\xff\0\0\xff\xff\0\0\xff\xff\0\0\xff\xff\0\0\0\0-\0\xff\xff\xff\xff\xff\xff)\0\xff\xff\0\0S\0O\0\xff\xff\xff\xffN\0\xff\xff\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff\xff\xff\0\0\0\0\xff\xffZ\0\xff\xff\0\0\0\0\xff\xff\xff\xffS\0\0\0\0\0\xff\xff\xff\xff\0\0\xff\xff\0\0\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0R\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xffO\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\0\0\xff\xff\0\0\xff\xff\0\0\0\0\0\0\xff\xff\0\0\xff\xff\0\0\0\0\xff\xff\0\0\0\0\xff\xff\xff\xff\xff\xff\0\0\xff\xffO\0\0\0\xff\xff\xff\xff\xff\xff\xff\xffJ\0\0\0\xff\xff\0\0\0\0O\0\0\0\xff\xff\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\0\0\0\0O\0\0\0\xff\xff\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0T\0W\0\0\0\0\0\0\0Q\x008\0\0\x006\0\xff\xff\0\0\0\0\0\0\0\0\0\0\xff\xff\xff\xff\0\0\xff\xff\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff+\0\0\0\0\0\0\0\0\0\0\0O\0\0\0\xff\xff\0\0\xff\xff\0\0\0\0\xff\xff\xff\xff\xff\xff\0\0\xff\xff7\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\xff\xff\0\0\0\0\xff\xff\xff\xffQ\0\xff\xff\x1b\0\xff\xff\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\xff\xff\0\0\xff\xff\xff\xff\xff\xff\0\0\0\0\xff\xff\0\0\0\0\x1b\x008\x008\0\0\0\0\0\0\0\0\x008\0\0\0\0\x009\0\0\x008\0\xff\xff8\x009\0\xff\xff;\0;\0+\0\0\0\0\0\0\0;\0\0\0\0\x008\x008\0;\x009\0;\x008\0\xff\xff\xff\xff\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0;\0;\0\0\0\0\0\0\0;\0\0\0O\0\x1b\0\xff\xff\0\0\0\0\xff\xff\xff\xff;\0;\0\0\x009\x009\x009\0;\0\0\0\0\0\0\0\xff\xff;\0\0\0;\x009\0\0\x009\0\x1b\x008\x008\0\xff\xff\0\0\0\0\xff\xff8\0;\0;\x009\0\0\x008\0;\x008\x009\0\0\0\0\x009\x009\0\xff\xff9\0\0\0\xff\xff\0\0\0\x008\x008\0\0\x009\0\0\x008\0\0\0\xff\xff\0\0\xff\xff\0\0\0\0\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\0\0\xff\xff\0\0\xff\xff\0\0\0\0\xff\xff\0\x009\x009\x009\0\0\0\0\0\0\0\0\0\0\0\0\x008\0\0\x009\0\xff\xff9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\x009\x009\0\0\x009\0\xff\xff\0\0\xff\xff\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\0\0=\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\xff\xff\0\0\xff\xff\xff\xff\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\xff\xff\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff"), new MlString ("\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\b\0\x13\0\0\0\x07\0\x11\0\x11\0\x15\0\x17\0\x11\0\x15\0\x19\0'\0,\0\x19\0K\0N\0X\0[\0\x1c\0\x1c\0\xff\xff\0\0\x1c\0\xff\xff\0\0\x04\0\x07\0\x11\0\xff\xff\x07\0@\0\0\0\x05\0@\0\0\0\x03\0\x07\0\x0f\0\x10\0\x07\0\xff\xff\x1c\0\x19\0\xff\xff\x1d\0\x1d\0\x1b\0\x19\0\x1d\0\x1b\0\0\0\x01\0\x06\0\n\0\x0b\0\x07\0\f\0\r\0\xff\xff\xff\xff\xff\xff\x19\0\xff\xff.\0\xff\xff/\0.\0\x1d\0/\0\x1e\0\x1c\0\xff\xff\x1e\x000\0\xff\xff\xff\xff0\0\xff\xff\x1b\0A\0\xff\xff\xff\xffA\0\x1b\0\x1f\0\xff\xff\xff\xff\x1f\0\xff\xff\xff\xff\xff\xff\x19\0\x19\0\x19\0\xff\xff\xff\xffB\0\x1b\0\xff\xffB\0\xff\xff\x1e\0\x19\0\xff\xff\x19\0?\0\x1e\0 \0?\0\xff\xff \0\xff\xff\0\0\0\0\x02\0\x14\0\x1f\0\x07\0\x07\x002\0\x1e\0\x1f\x002\0\x19\0\x19\0G\0\x19\0\x1b\0\x1b\0\x1b\0\xff\xff\xff\xff\xff\xff\xff\xffC\0\x1f\0\xff\xffC\0\x1b\0 \0\x1b\0\xff\xff\xff\xff\xff\xff \0@\0.\0\xff\xff/\0\xff\xff\x1e\0\x1e\0\x1e\0\xff\xff!\0\xff\xff0\0!\0 \0\x1b\0\x1b\0\x1e\0\x1b\0\x1e\0\xff\xff\x1f\0\x1f\0\x1f\0\xff\xff\xff\xffP\0\xff\xffE\0P\0\xff\xffE\0\x1f\0.\0\x1f\0/\0\xff\xffF\0\x1e\0\x1e\0F\0\x1e\0!\x000\0 \0 \0 \0!\0\"\0A\0\xff\xff\"\0\xff\xff\x1f\0\x1f\0 \0\x1f\0 \x002\0R\0\xff\xff!\0R\0#\0L\0L\0#\0B\0L\0 \0T\0\xff\xff\xff\xffT\0?\0?\0 \0 \0\xff\xff \0\"\0U\0\xff\xff\xff\xffU\0\"\0\xff\xffL\0\xff\xff2\0\xff\xff!\0!\0!\0V\0#\0\xff\xffV\0Z\0\"\0#\0Z\0!\0\xff\xff!\0C\0\xff\xff\x11\0\x15\0\xff\xff\xff\xff\xff\xff\x19\0\xff\xff#\0\xff\xff!\0\xff\xff$\0$\0\xff\xff\x1c\0$\0!\0!\0Y\0!\0\xff\xffY\0\"\0\"\0\"\0@\0\xff\xff\xff\xff\xff\xff%\0\xff\xff\xff\xff%\0\"\0$\0\"\0E\0#\0#\0#\0\x1d\0\x1b\0M\0M\0$\0F\0M\0\xff\xff#\0$\0#\0\xff\xff\xff\xff\xff\xff\"\0\"\0\xff\xff\"\0.\0\xff\xff/\0%\0\xff\xff$\0\x1e\0M\0%\0R\x000\0#\0#\0\xff\xff#\0\xff\xffA\0\xff\xff\xff\xff\xff\xffT\0\x1f\0%\0&\0\xff\xff\xff\xff&\0\xff\xff-\0-\0\xff\xffU\0-\0B\0\xff\xff$\0$\0$\0\xff\xff\xff\xff\xff\xff\xff\xff?\0\xff\xff \0\xff\xff$\0\xff\xff$\0\xff\xff\xff\xff-\0%\0%\0%\0&\x002\0\xff\xffS\0S\0&\0-\0S\0%\0\xff\xff%\0-\0$\0$\0\xff\xff$\0C\0\xff\xff\xff\xff&\0Y\x005\0\xff\xff\xff\xff5\0-\0S\0\xff\xff\xff\xff%\0%\0\xff\xff%\0\xff\xff\xff\xff\xff\xff!\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xffM\0\xff\xff\xff\xff\xff\xff&\0&\0&\0P\x005\0E\0-\0-\0-\x005\0\xff\xff&\x006\0&\0F\x006\0\xff\xff-\0\xff\xff-\0\xff\xff\xff\xff\xff\xff5\0\xff\xff\"\0\xff\xff\xff\xff7\0\xff\xff\xff\xff7\0&\0&\0\xff\xff&\0R\0\xff\xff-\0-\0#\0-\0L\0\xff\xff6\0\xff\xff\xff\xffT\0\xff\xff6\0\xff\xff\xff\xff\xff\xff5\x005\x005\0\xff\xff\xff\xffU\0\xff\xff7\0\xff\xff\xff\xff6\x005\x007\x005\0\xff\xff\xff\xff\xff\xffS\0V\0\xff\xff\xff\xff\xff\xffZ\x007\0\xff\xff5\x007\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff5\x005\0\xff\xff5\0\xff\xff\xff\xff\xff\xff\xff\xff6\x006\x006\0$\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xffY\0\xff\xff6\0\xff\xff6\0\xff\xff\xff\xff7\x007\x007\0\xff\xff%\x006\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff7\0\xff\xff7\0\xff\xff\xff\xff6\x006\0M\x006\x008\x008\0\xff\xff\xff\xff8\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff7\x007\0\xff\xff7\x009\x009\0\xff\xff\xff\xff9\0\xff\xff\xff\xff8\x008\x008\0\xff\xff\xff\xff\xff\xff\xff\xff8\0\xff\xff\xff\xff8\0\xff\xff8\0&\x008\x008\x009\x009\x009\0-\0\xff\xff\xff\xff\xff\xff9\0\xff\xff\xff\xff8\x008\x009\x008\x009\x008\0;\0;\0\xff\xff\xff\xff;\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff9\x009\0\xff\xff\xff\xff\xff\xff9\0\xff\xffS\0:\0:\0\xff\xff\xff\xff:\0;\0;\0;\0\xff\xff8\x008\x008\0;\0\xff\xff\xff\xff\xff\xff5\0;\0\xff\xff;\x008\0\xff\xff8\0:\0:\0:\0<\0\xff\xff\xff\xff<\0:\0;\0;\0:\0\xff\xff:\0;\0:\0:\0\xff\xff\xff\xff8\x008\0=\x008\0\xff\xff=\0\xff\xff\xff\xff:\0:\0\xff\xff:\0\xff\xff:\0\xff\xff6\0\xff\xff<\0\xff\xff\xff\xff\xff\xff\xff\xff<\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff7\0\xff\xff\xff\xff=\0\xff\xff<\0\xff\xff\xff\xff=\0\xff\xff:\0:\0:\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff=\0\xff\xff:\0=\0:\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff<\0<\0<\0\xff\xff\xff\xff\xff\xff\xff\xff:\0:\0\xff\xff:\0<\0\xff\xff<\0\xff\xff\xff\xff\xff\xff=\0=\0=\0\xff\xff<\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff=\0\xff\xff=\0\xff\xff<\0<\0\xff\xff<\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff=\0=\0\xff\xff=\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff8\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff9\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff;\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff:\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff<\0\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff=\0"), new MlString(""), new MlString(""), new MlString(""), new MlString(""), new MlString(""), new MlString("")]; caml_register_global(5,[0,new MlString("Division_by_zero")]); caml_register_global(3,_b_); caml_register_global(2,_a_); var _bf_=new MlString("output"), _be_=new MlString("%.12g"), _bd_=new MlString("."), _bc_=new MlString("%d"), _bb_=new MlString("true"), _ba_=new MlString("false"), _a$_=new MlString("Pervasives.do_at_exit"), _a__=new MlString("\\b"), _a9_=new MlString("\\t"), _a8_=new MlString("\\n"), _a7_=new MlString("\\r"), _a6_=new MlString("\\\\"), _a5_=new MlString("\\'"), _a4_=new MlString(""), _a3_=new MlString("String.blit"), _a2_=new MlString("String.sub"), _a1_=new MlString(""), _a0_=new MlString("Buffer.add_substring"), _aZ_=new MlString("Buffer.add: cannot grow buffer"), _aY_=new MlString("%"), _aX_=new MlString(""), _aW_=new MlString(""), _aV_=new MlString("\""), _aU_=new MlString("\""), _aT_=new MlString("'"), _aS_=new MlString("'"), _aR_=new MlString("."), _aQ_=new MlString("printf: bad positional specification (0)."), _aP_=new MlString("%_"), _aO_=[0,new MlString("printf.ml"),144,8], _aN_=new MlString("''"), _aM_=new MlString("Printf: premature end of format string ``"), _aL_=new MlString("''"), _aK_=new MlString(" in format string ``"), _aJ_=new MlString(", at char number "), _aI_=new MlString("Printf: bad conversion %"), _aH_=new MlString("Sformat.index_of_int: negative argument "), _aG_=new MlString("bad box format"), _aF_=new MlString("bad box name ho"), _aE_=new MlString("bad tag name specification"), _aD_=new MlString("bad tag name specification"), _aC_=new MlString(""), _aB_=new MlString(""), _aA_=new MlString(""), _az_=new MlString("bad integer specification"), _ay_=new MlString("bad format"), _ax_=new MlString(")."), _aw_=new MlString(" ("), _av_=new MlString("'', giving up at character number "), _au_=new MlString(" ``"), _at_=new MlString("fprintf: "), _as_=[3,0,3], _ar_=new MlString("."), _aq_=new MlString(">"), _ap_=new MlString("</"), _ao_=new MlString(">"), _an_=new MlString("<"), _am_=new MlString("\n"), _al_=new MlString("Format.Empty_queue"), _ak_=[0,new MlString("")], _aj_=new MlString("x"), _ai_=[0,new MlString("src/core/lwt.ml"),440,20], _ah_=[0,new MlString("src/core/lwt.ml"),443,8], _ag_=new MlString("Lwt.fast_connect"), _af_=new MlString("Lwt.connect"), _ae_=new MlString("Lwt.wakeup"), _ad_=new MlString("Lwt.Canceled"), _ac_=new MlString("img"), _ab_=new MlString("a"), _aa_=new MlString("br"), _$_=new MlString("div"), ___=new MlString("\""), _Z_=new MlString(" name=\""), _Y_=new MlString("\""), _X_=new MlString(" type=\""), _W_=new MlString("<"), _V_=new MlString(">"), _U_=new MlString(""), _T_=[0,new MlString("wikicreole.mll"),206,32], _S_=[0,new MlString("wikicreole.mll"),215,6], _R_=[0,new MlString("wikicreole.mll"),230,6], _Q_=[0,new MlString("wikicreole.mll"),284,6], _P_=new MlString("*"), _O_=new MlString("Unrecognized char '%s'@."), _N_=[5,0], _M_=[0,new MlString("wikicreole.mll"),157,6], _L_=new MlString("//"), _K_=new MlString("**"), _J_=new MlString("strong"), _I_=new MlString("em"), _H_=new MlString("br"), _G_=new MlString("tt"), _F_=new MlString("p"), _E_=new MlString("pre"), _D_=new MlString(""), _C_=new MlString("h1"), _B_=new MlString("h2"), _A_=new MlString("h3"), _z_=new MlString("h4"), _y_=new MlString("h5"), _x_=new MlString("h6"), _w_=new MlString("ul"), _v_=new MlString("ol"), _u_=new MlString("hr"), _t_=new MlString("th"), _s_=new MlString("td"), _r_=new MlString("tr"), _q_=new MlString("tbody"), _p_=new MlString("table"), _o_=new MlString("li"), _n_=[0,new MlString("main.ml"),37,17], _m_=new MlString("wiki_demo"), _l_=new MlString("1px black dashed"), _k_=new MlString("5px"), _j_=new MlString(""); function _i_(s_h_){throw [0,_a_,s_h_];} function _bh_(s_bg_){throw [0,_b_,s_bg_];} function _bk_(x_bj_,y_bi_) {return caml_greaterequal(x_bj_,y_bi_)?x_bj_:y_bi_;} var max_int_br_=(1<<31)-1|0; function _bq_(s1_bl_,s2_bn_) {var l1_bm_=s1_bl_.getLen(), l2_bo_=s2_bn_.getLen(), s_bp_=caml_create_string(l1_bm_+l2_bo_|0); caml_blit_string(s1_bl_,0,s_bp_,0,l1_bm_); caml_blit_string(s2_bn_,0,s_bp_,l1_bm_,l2_bo_); return s_bp_;} function string_of_int_bt_(n_bs_){return caml_format_int(_bc_,n_bs_);} function _bv_(l1_bu_,l2_bw_) {if(l1_bu_) {var hd_bx_=l1_bu_[1];return [0,hd_bx_,_bv_(l1_bu_[2],l2_bw_)];} return l2_bw_;} var stdout_bD_=caml_ml_open_descriptor_out(1), stderr_bC_=caml_ml_open_descriptor_out(2); function flush_all_bI_(param_bB_) {var param_by_=caml_ml_out_channels_list(0); for(;;) {if(param_by_) {var l_bz_=param_by_[2]; try {}catch(_bA_){} var param_by_=l_bz_; continue;} return 0;}} function output_bK_(oc_bH_,s_bG_,ofs_bE_,len_bF_) {if(0<=ofs_bE_&&0<=len_bF_&&!((s_bG_.getLen()-len_bF_|0)<ofs_bE_)) return caml_ml_output(oc_bH_,s_bG_,ofs_bE_,len_bF_); return _bh_(_bf_);} var exit_function_bJ_=[0,flush_all_bI_]; function do_at_exit_bN_(param_bM_){return _bL_(exit_function_bJ_[1],0);} caml_register_named_value(_a$_,do_at_exit_bN_); function _bT_(l_bO_) {var l1_bP_=l_bO_,l2_bQ_=0; for(;;) {if(l1_bP_) {var l_bR_=l1_bP_[2], _bS_=[0,l1_bP_[1],l2_bQ_], l1_bP_=l_bR_, l2_bQ_=_bS_; continue;} return l2_bQ_;}} function _bX_(f_bV_,param_bU_) {if(param_bU_) {var l_bW_=param_bU_[2],r_bY_=_bL_(f_bV_,param_bU_[1]); return [0,r_bY_,_bX_(f_bV_,l_bW_)];} return 0;} function _b3_(f_b1_,param_bZ_) {var param_b0_=param_bZ_; for(;;) {if(param_b0_) {var l_b2_=param_b0_[2]; _bL_(f_b1_,param_b0_[1]); var param_b0_=l_b2_; continue;} return 0;}} function _b7_(n_b4_,c_b6_) {var s_b5_=caml_create_string(n_b4_); caml_fill_string(s_b5_,0,n_b4_,c_b6_); return s_b5_;} function _ca_(s_b__,ofs_b8_,len_b9_) {if(0<=ofs_b8_&&0<=len_b9_&&!((s_b__.getLen()-len_b9_|0)<ofs_b8_)) {var r_b$_=caml_create_string(len_b9_); caml_blit_string(s_b__,ofs_b8_,r_b$_,0,len_b9_); return r_b$_;} return _bh_(_a2_);} function _cg_(s1_cd_,ofs1_cc_,s2_cf_,ofs2_ce_,len_cb_) {if (0<= len_cb_&& 0<= ofs1_cc_&& !((s1_cd_.getLen()-len_cb_|0)<ofs1_cc_)&& 0<= ofs2_ce_&& !((s2_cf_.getLen()-len_cb_|0)<ofs2_ce_)) return caml_blit_string(s1_cd_,ofs1_cc_,s2_cf_,ofs2_ce_,len_cb_); return _bh_(_a3_);} function _cr_(sep_cn_,l_ch_) {if(l_ch_) {var tl_cj_=l_ch_[2],hd_ci_=l_ch_[1],num_ck_=[0,0],len_cl_=[0,0]; _b3_ (function(s_cm_) {num_ck_[1]+=1;len_cl_[1]=len_cl_[1]+s_cm_.getLen()|0;return 0;}, l_ch_); var r_co_= caml_create_string (len_cl_[1]+caml_mul(sep_cn_.getLen(),num_ck_[1]-1|0)|0); caml_blit_string(hd_ci_,0,r_co_,0,hd_ci_.getLen()); var pos_cp_=[0,hd_ci_.getLen()]; _b3_ (function(s_cq_) {caml_blit_string(sep_cn_,0,r_co_,pos_cp_[1],sep_cn_.getLen()); pos_cp_[1]=pos_cp_[1]+sep_cn_.getLen()|0; caml_blit_string(s_cq_,0,r_co_,pos_cp_[1],s_cq_.getLen()); pos_cp_[1]=pos_cp_[1]+s_cq_.getLen()|0; return 0;}, tl_cj_); return r_co_;} return _a4_;} var _cs_=caml_sys_get_config(0)[2], _ct_=caml_mul(_cs_/8|0,(1<<(_cs_-10|0))-1|0)-1|0; function _cz_(tbl_cw_,state_cv_,buf_cu_) {var result_cx_=caml_lex_engine(tbl_cw_,state_cv_,buf_cu_); if(0<=result_cx_) {buf_cu_[11]=buf_cu_[12]; var _cy_=buf_cu_[12]; buf_cu_[12]=[0,_cy_[1],_cy_[2],_cy_[3],buf_cu_[4]+buf_cu_[6]|0];} return result_cx_;} function _cD_(lexbuf_cA_) {var len_cB_=lexbuf_cA_[6]-lexbuf_cA_[5]|0, s_cC_=caml_create_string(len_cB_); caml_blit_string(lexbuf_cA_[2],lexbuf_cA_[5],s_cC_,0,len_cB_); return s_cC_;} function _cI_(n_cE_) {var n_cF_=1<=n_cE_?n_cE_:1, n_cG_=_ct_<n_cF_?_ct_:n_cF_, s_cH_=caml_create_string(n_cG_); return [0,s_cH_,0,n_cG_,s_cH_];} function _cK_(b_cJ_){return _ca_(b_cJ_[1],0,b_cJ_[2]);} function _cP_(b_cL_,more_cN_) {var new_len_cM_=[0,b_cL_[3]]; for(;;) {if(new_len_cM_[1]<(b_cL_[2]+more_cN_|0)) {new_len_cM_[1]=2*new_len_cM_[1]|0;continue;} if(_ct_<new_len_cM_[1]) if((b_cL_[2]+more_cN_|0)<=_ct_)new_len_cM_[1]=_ct_;else _i_(_aZ_); var new_buffer_cO_=caml_create_string(new_len_cM_[1]); _cg_(b_cL_[1],0,new_buffer_cO_,0,b_cL_[2]); b_cL_[1]=new_buffer_cO_; b_cL_[3]=new_len_cM_[1]; return 0;}} function _cT_(b_cQ_,c_cS_) {var pos_cR_=b_cQ_[2]; if(b_cQ_[3]<=pos_cR_)_cP_(b_cQ_,1); b_cQ_[1].safeSet(pos_cR_,c_cS_); b_cQ_[2]=pos_cR_+1|0; return 0;} function _c7_(b_c0_,s_cZ_,offset_cU_,len_cX_) {var _cV_=offset_cU_<0?1:0; if(_cV_) var _cW_=_cV_; else {var _cY_=len_cX_<0?1:0, _cW_=_cY_?_cY_:(s_cZ_.getLen()-len_cX_|0)<offset_cU_?1:0;} if(_cW_)_bh_(_a0_); var new_position_c1_=b_c0_[2]+len_cX_|0; if(b_c0_[3]<new_position_c1_)_cP_(b_c0_,len_cX_); _cg_(s_cZ_,offset_cU_,b_c0_[1],b_c0_[2],len_cX_); b_c0_[2]=new_position_c1_; return 0;} function _c6_(b_c4_,s_c2_) {var len_c3_=s_c2_.getLen(),new_position_c5_=b_c4_[2]+len_c3_|0; if(b_c4_[3]<new_position_c5_)_cP_(b_c4_,len_c3_); _cg_(s_c2_,0,b_c4_[1],b_c4_[2],len_c3_); b_c4_[2]=new_position_c5_; return 0;} function index_of_int_c9_(i_c8_) {return 0<=i_c8_?i_c8_:_i_(_bq_(_aH_,string_of_int_bt_(i_c8_)));} var _da_= _bL_ (function(i_c__,idx_c$_){return index_of_int_c9_(i_c__+idx_c$_|0);},1); function _de_(fmt_dd_,idx_dc_,len_db_) {return _ca_(fmt_dd_,idx_dc_,len_db_);} function _dg_(fmt_df_){return _de_(fmt_df_,0,fmt_df_.getLen());} function bad_conversion_dm_(sfmt_dh_,i_di_,c_dk_) {var _dj_=_bq_(_aK_,_bq_(sfmt_dh_,_aL_)), _dl_=_bq_(_aJ_,_bq_(string_of_int_bt_(i_di_),_dj_)); return _bh_(_bq_(_aI_,_bq_(_b7_(1,c_dk_),_dl_)));} function bad_conversion_format_dq_(fmt_dn_,i_dp_,c_do_) {return bad_conversion_dm_(_dg_(fmt_dn_),i_dp_,c_do_);} function incomplete_format_ds_(fmt_dr_) {return _bh_(_bq_(_aM_,_bq_(_dg_(fmt_dr_),_aN_)));} function extract_format_dN_(fmt_dt_,start_dB_,stop_dD_,widths_dF_) {function skip_positional_spec_dA_(start_du_) {if ((fmt_dt_.safeGet(start_du_)-48|0)< 0|| 9< (fmt_dt_.safeGet(start_du_)-48|0)) return start_du_; var i_dv_=start_du_+1|0; for(;;) {var _dw_=fmt_dt_.safeGet(i_dv_); if(48<=_dw_) {if(!(58<=_dw_)){var _dy_=i_dv_+1|0,i_dv_=_dy_;continue;} var _dx_=0;} else if(36===_dw_){var _dz_=i_dv_+1|0,_dx_=1;}else var _dx_=0; if(!_dx_)var _dz_=start_du_; return _dz_;}} var start_dC_=skip_positional_spec_dA_(start_dB_+1|0), b_dE_=_cI_((stop_dD_-start_dC_|0)+10|0); _cT_(b_dE_,37); var _dH_=_bT_(widths_dF_),i_dG_=start_dC_,widths_dI_=_dH_; for(;;) {if(i_dG_<=stop_dD_) {var _dJ_=fmt_dt_.safeGet(i_dG_); if(42===_dJ_) {if(widths_dI_) {var t_dK_=widths_dI_[2]; _c6_(b_dE_,string_of_int_bt_(widths_dI_[1])); var i_dL_=skip_positional_spec_dA_(i_dG_+1|0), i_dG_=i_dL_, widths_dI_=t_dK_; continue;} throw [0,_d_,_aO_];} _cT_(b_dE_,_dJ_); var _dM_=i_dG_+1|0,i_dG_=_dM_; continue;} return _cK_(b_dE_);}} function extract_format_int_dU_ (conv_dT_,fmt_dR_,start_dQ_,stop_dP_,widths_dO_) {var sfmt_dS_=extract_format_dN_(fmt_dR_,start_dQ_,stop_dP_,widths_dO_); if(78!==conv_dT_&&110!==conv_dT_)return sfmt_dS_; sfmt_dS_.safeSet(sfmt_dS_.getLen()-1|0,117); return sfmt_dS_;} function sub_format_eg_ (incomplete_format_d1_,bad_conversion_format_d$_,conv_ee_,fmt_dV_,i_ed_) {var len_dW_=fmt_dV_.getLen(); function sub_fmt_eb_(c_dX_,i_d__) {var close_dY_=40===c_dX_?41:125; function sub_d9_(j_dZ_) {var j_d0_=j_dZ_; for(;;) {if(len_dW_<=j_d0_)return _bL_(incomplete_format_d1_,fmt_dV_); if(37===fmt_dV_.safeGet(j_d0_)) {var _d2_=j_d0_+1|0; if(len_dW_<=_d2_) var _d3_=_bL_(incomplete_format_d1_,fmt_dV_); else {var _d4_=fmt_dV_.safeGet(_d2_),_d5_=_d4_-40|0; if(_d5_<0||1<_d5_) {var _d6_=_d5_-83|0; if(_d6_<0||2<_d6_) var _d7_=1; else switch(_d6_) {case 1:var _d7_=1;break; case 2:var _d8_=1,_d7_=0;break; default:var _d8_=0,_d7_=0;} if(_d7_){var _d3_=sub_d9_(_d2_+1|0),_d8_=2;}} else var _d8_=0===_d5_?0:1; switch(_d8_) {case 1: var _d3_= _d4_===close_dY_ ?_d2_+1|0 :_ea_(bad_conversion_format_d$_,fmt_dV_,i_d__,_d4_); break; case 2:break; default:var _d3_=sub_d9_(sub_fmt_eb_(_d4_,_d2_+1|0)+1|0);}} return _d3_;} var _ec_=j_d0_+1|0,j_d0_=_ec_; continue;}} return sub_d9_(i_d__);} return sub_fmt_eb_(conv_ee_,i_ed_);} function sub_format_for_printf_eh_(conv_ef_) {return _ea_ (sub_format_eg_, incomplete_format_ds_, bad_conversion_format_dq_, conv_ef_);} function iter_on_format_args_eM_(fmt_ei_,add_conv_et_,add_char_eD_) {var lim_ej_=fmt_ei_.getLen()-1|0; function scan_fmt_eF_(i_ek_) {var i_el_=i_ek_; a: for(;;) {if(i_el_<lim_ej_) {if(37===fmt_ei_.safeGet(i_el_)) {var skip_em_=0,i_en_=i_el_+1|0; for(;;) {if(lim_ej_<i_en_) var _eo_=incomplete_format_ds_(fmt_ei_); else {var _ep_=fmt_ei_.safeGet(i_en_); if(58<=_ep_) {if(95===_ep_) {var _er_=i_en_+1|0,_eq_=1,skip_em_=_eq_,i_en_=_er_; continue;}} else if(32<=_ep_) switch(_ep_-32|0) {case 1: case 2: case 4: case 5: case 6: case 7: case 8: case 9: case 12: case 15:break; case 0: case 3: case 11: case 13:var _es_=i_en_+1|0,i_en_=_es_;continue; case 10: var _eu_=_ea_(add_conv_et_,skip_em_,i_en_,105),i_en_=_eu_; continue; default:var _ev_=i_en_+1|0,i_en_=_ev_;continue;} var i_ew_=i_en_; c: for(;;) {if(lim_ej_<i_ew_) var _ex_=incomplete_format_ds_(fmt_ei_); else {var _ey_=fmt_ei_.safeGet(i_ew_); if(126<=_ey_) var _ez_=0; else switch(_ey_) {case 78: case 88: case 100: case 105: case 111: case 117: case 120: var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,105),_ez_=1;break; case 69: case 70: case 71: case 101: case 102: case 103: var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,102),_ez_=1;break; case 33: case 37: case 44:var _ex_=i_ew_+1|0,_ez_=1;break; case 83: case 91: case 115: var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,115),_ez_=1;break; case 97: case 114: case 116: var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,_ey_),_ez_=1; break; case 76: case 108: case 110: var j_eA_=i_ew_+1|0; if(lim_ej_<j_eA_) {var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,105),_ez_=1;} else {var _eB_=fmt_ei_.safeGet(j_eA_)-88|0; if(_eB_<0||32<_eB_) var _eC_=1; else switch(_eB_) {case 0: case 12: case 17: case 23: case 29: case 32: var _ex_= _eE_ (add_char_eD_,_ea_(add_conv_et_,skip_em_,i_ew_,_ey_),105), _ez_=1, _eC_=0; break; default:var _eC_=1;} if(_eC_) {var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,105),_ez_=1;}} break; case 67: case 99: var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,99),_ez_=1;break; case 66: case 98: var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,66),_ez_=1;break; case 41: case 125: var _ex_=_ea_(add_conv_et_,skip_em_,i_ew_,_ey_),_ez_=1; break; case 40: var _ex_=scan_fmt_eF_(_ea_(add_conv_et_,skip_em_,i_ew_,_ey_)), _ez_=1; break; case 123: var i_eG_=_ea_(add_conv_et_,skip_em_,i_ew_,_ey_), j_eH_=_ea_(sub_format_for_printf_eh_,_ey_,fmt_ei_,i_eG_), i_eI_=i_eG_; for(;;) {if(i_eI_<(j_eH_-2|0)) {var _eJ_=_eE_(add_char_eD_,i_eI_,fmt_ei_.safeGet(i_eI_)), i_eI_=_eJ_; continue;} var _eK_=j_eH_-1|0,i_ew_=_eK_; continue c;} default:var _ez_=0;} if(!_ez_) var _ex_=bad_conversion_format_dq_(fmt_ei_,i_ew_,_ey_);} var _eo_=_ex_; break;}} var i_el_=_eo_; continue a;}} var _eL_=i_el_+1|0,i_el_=_eL_; continue;} return i_el_;}} scan_fmt_eF_(0); return 0;} function scan_positional_spec_eZ_(fmt_eN_,got_spec_eQ_,n_eY_,i_eO_) {var _eP_=fmt_eN_.safeGet(i_eO_); if((_eP_-48|0)<0||9<(_eP_-48|0))return _eE_(got_spec_eQ_,0,i_eO_); var accu_eR_=_eP_-48|0,j_eS_=i_eO_+1|0; for(;;) {var _eT_=fmt_eN_.safeGet(j_eS_); if(48<=_eT_) {if(!(58<=_eT_)) {var _eW_=j_eS_+1|0, _eV_=(10*accu_eR_|0)+(_eT_-48|0)|0, accu_eR_=_eV_, j_eS_=_eW_; continue;} var _eU_=0;} else if(36===_eT_) if(0===accu_eR_) {var _eX_=_i_(_aQ_),_eU_=1;} else {var _eX_= _eE_(got_spec_eQ_,[0,index_of_int_c9_(accu_eR_-1|0)],j_eS_+1|0), _eU_=1;} else var _eU_=0; if(!_eU_)var _eX_=_eE_(got_spec_eQ_,0,i_eO_); return _eX_;}} function next_index_e2_(spec_e0_,n_e1_) {return spec_e0_?n_e1_:_bL_(_da_,n_e1_);} function get_index_e5_(spec_e3_,n_e4_){return spec_e3_?spec_e3_[1]:n_e4_;} function _g6_ (fmt_fa_, args_e8_, n_g3_, pos_fm_, cont_s_fp_, cont_a_gX_, cont_t_g0_, cont_f_gB_, cont_m_gA_) {function get_arg_e9_(spec_e7_,n_e6_) {return caml_array_get(args_e8_,get_index_e5_(spec_e7_,n_e6_));} function scan_flags_fg_(spec_fi_,n_fc_,widths_fe_,i_e__) {var i_e$_=i_e__; for(;;) {var _fb_=fmt_fa_.safeGet(i_e$_)-32|0; if(!(_fb_<0||25<_fb_)) switch(_fb_) {case 1: case 2: case 4: case 5: case 6: case 7: case 8: case 9: case 12: case 15:break; case 10: return scan_positional_spec_eZ_ (fmt_fa_, function(wspec_fd_,i_fh_) {var _ff_=[0,get_arg_e9_(wspec_fd_,n_fc_),widths_fe_]; return scan_flags_fg_ (spec_fi_,next_index_e2_(wspec_fd_,n_fc_),_ff_,i_fh_);}, n_fc_, i_e$_+1|0); default:var _fj_=i_e$_+1|0,i_e$_=_fj_;continue;} var _fk_=fmt_fa_.safeGet(i_e$_); if(124<=_fk_) var _fl_=0; else switch(_fk_) {case 78: case 88: case 100: case 105: case 111: case 117: case 120: var x_fn_=get_arg_e9_(spec_fi_,n_fc_), s_fo_= caml_format_int (extract_format_int_dU_ (_fk_,fmt_fa_,pos_fm_,i_e$_,widths_fe_), x_fn_), _fq_= _ea_ (cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),s_fo_,i_e$_+1|0), _fl_=1; break; case 69: case 71: case 101: case 102: case 103: var x_fr_=get_arg_e9_(spec_fi_,n_fc_), s_fs_= caml_format_float (extract_format_dN_(fmt_fa_,pos_fm_,i_e$_,widths_fe_),x_fr_), _fq_= _ea_ (cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),s_fs_,i_e$_+1|0), _fl_=1; break; case 76: case 108: case 110: var _ft_=fmt_fa_.safeGet(i_e$_+1|0)-88|0; if(_ft_<0||32<_ft_) var _fu_=1; else switch(_ft_) {case 0: case 12: case 17: case 23: case 29: case 32: var i_fv_=i_e$_+1|0,_fw_=_fk_-108|0; if(_fw_<0||2<_fw_) var _fx_=0; else {switch(_fw_) {case 1:var _fx_=0,_fy_=0;break; case 2: var x_fz_=get_arg_e9_(spec_fi_,n_fc_), _fA_= caml_format_int (extract_format_dN_(fmt_fa_,pos_fm_,i_fv_,widths_fe_),x_fz_), _fy_=1; break; default: var x_fB_=get_arg_e9_(spec_fi_,n_fc_), _fA_= caml_format_int (extract_format_dN_(fmt_fa_,pos_fm_,i_fv_,widths_fe_),x_fB_), _fy_=1;} if(_fy_){var s_fC_=_fA_,_fx_=1;}} if(!_fx_) {var x_fD_=get_arg_e9_(spec_fi_,n_fc_), s_fC_= caml_int64_format (extract_format_dN_(fmt_fa_,pos_fm_,i_fv_,widths_fe_),x_fD_);} var _fq_= _ea_ (cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),s_fC_,i_fv_+1|0), _fl_=1, _fu_=0; break; default:var _fu_=1;} if(_fu_) {var x_fE_=get_arg_e9_(spec_fi_,n_fc_), s_fF_= caml_format_int (extract_format_int_dU_ (110,fmt_fa_,pos_fm_,i_e$_,widths_fe_), x_fE_), _fq_= _ea_ (cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),s_fF_,i_e$_+1|0), _fl_=1;} break; case 83: case 115: var x_fG_=get_arg_e9_(spec_fi_,n_fc_); if(115===_fk_) var x_fH_=x_fG_; else {var n_fI_=[0,0],_fJ_=0,_fK_=x_fG_.getLen()-1|0; if(!(_fK_<_fJ_)) {var i_fL_=_fJ_; for(;;) {var _fM_=x_fG_.safeGet(i_fL_), _fN_= 14<=_fM_ ?34===_fM_?1:92===_fM_?1:0 :11<=_fM_?13<=_fM_?1:0:8<=_fM_?1:0, _fO_=_fN_?2:caml_is_printable(_fM_)?1:4; n_fI_[1]=n_fI_[1]+_fO_|0; var _fP_=i_fL_+1|0; if(_fK_!==i_fL_){var i_fL_=_fP_;continue;} break;}} if(n_fI_[1]===x_fG_.getLen()) var _fQ_=x_fG_; else {var s__fR_=caml_create_string(n_fI_[1]); n_fI_[1]=0; var _fS_=0,_fT_=x_fG_.getLen()-1|0; if(!(_fT_<_fS_)) {var i_fU_=_fS_; for(;;) {var _fV_=x_fG_.safeGet(i_fU_),_fW_=_fV_-34|0; if(_fW_<0||58<_fW_) if(-20<=_fW_) var _fX_=1; else {switch(_fW_+34|0) {case 8: s__fR_.safeSet(n_fI_[1],92); n_fI_[1]+=1; s__fR_.safeSet(n_fI_[1],98); var _fY_=1; break; case 9: s__fR_.safeSet(n_fI_[1],92); n_fI_[1]+=1; s__fR_.safeSet(n_fI_[1],116); var _fY_=1; break; case 10: s__fR_.safeSet(n_fI_[1],92); n_fI_[1]+=1; s__fR_.safeSet(n_fI_[1],110); var _fY_=1; break; case 13: s__fR_.safeSet(n_fI_[1],92); n_fI_[1]+=1; s__fR_.safeSet(n_fI_[1],114); var _fY_=1; break; default:var _fX_=1,_fY_=0;} if(_fY_)var _fX_=0;} else var _fX_= (_fW_-1|0)<0||56<(_fW_-1|0) ?(s__fR_.safeSet(n_fI_[1],92), n_fI_[1]+= 1, s__fR_.safeSet(n_fI_[1],_fV_), 0) :1; if(_fX_) if(caml_is_printable(_fV_)) s__fR_.safeSet(n_fI_[1],_fV_); else {s__fR_.safeSet(n_fI_[1],92); n_fI_[1]+=1; s__fR_.safeSet(n_fI_[1],48+(_fV_/100|0)|0); n_fI_[1]+=1; s__fR_.safeSet(n_fI_[1],48+((_fV_/10|0)%10|0)|0); n_fI_[1]+=1; s__fR_.safeSet(n_fI_[1],48+(_fV_%10|0)|0);} n_fI_[1]+=1; var _fZ_=i_fU_+1|0; if(_fT_!==i_fU_){var i_fU_=_fZ_;continue;} break;}} var _fQ_=s__fR_;} var x_fH_=_bq_(_aU_,_bq_(_fQ_,_aV_));} if(i_e$_===(pos_fm_+1|0)) var s_f0_=x_fH_; else {var _f1_=extract_format_dN_(fmt_fa_,pos_fm_,i_e$_,widths_fe_); try {var neg_f2_=0,i_f3_=1; for(;;) {if(_f1_.getLen()<=i_f3_) var _f4_=[0,0,neg_f2_]; else {var _f5_=_f1_.safeGet(i_f3_); if(49<=_f5_) if(58<=_f5_) var _f6_=0; else {var _f4_= [0, caml_int_of_string (_ca_(_f1_,i_f3_,(_f1_.getLen()-i_f3_|0)-1|0)), neg_f2_], _f6_=1;} else {if(45===_f5_) {var _f8_=i_f3_+1|0,_f7_=1,neg_f2_=_f7_,i_f3_=_f8_; continue;} var _f6_=0;} if(!_f6_){var _f9_=i_f3_+1|0,i_f3_=_f9_;continue;}} var match_f__=_f4_; break;}} catch(_f$_) {if(_f$_[1]!==_a_)throw _f$_; var match_f__=bad_conversion_dm_(_f1_,0,115);} var neg_gb_=match_f__[2], p_ga_=match_f__[1], _gc_=x_fH_.getLen(), _gd_=0, _gg_=32; if(p_ga_===_gc_&&0===_gd_) {var _ge_=x_fH_,_gf_=1;} else var _gf_=0; if(!_gf_) if(p_ga_<=_gc_) var _ge_=_ca_(x_fH_,_gd_,_gc_); else {var res_gh_=_b7_(p_ga_,_gg_); if(neg_gb_) _cg_(x_fH_,_gd_,res_gh_,0,_gc_); else _cg_(x_fH_,_gd_,res_gh_,p_ga_-_gc_|0,_gc_); var _ge_=res_gh_;} var s_f0_=_ge_;} var _fq_= _ea_ (cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),s_f0_,i_e$_+1|0), _fl_=1; break; case 67: case 99: var x_gi_=get_arg_e9_(spec_fi_,n_fc_); if(99===_fk_) var s_gj_=_b7_(1,x_gi_); else {if(39===x_gi_) var _gk_=_a5_; else if(92===x_gi_) var _gk_=_a6_; else {if(14<=x_gi_) var _gl_=0; else switch(x_gi_) {case 8:var _gk_=_a__,_gl_=1;break; case 9:var _gk_=_a9_,_gl_=1;break; case 10:var _gk_=_a8_,_gl_=1;break; case 13:var _gk_=_a7_,_gl_=1;break; default:var _gl_=0;} if(!_gl_) if(caml_is_printable(x_gi_)) {var s_gm_=caml_create_string(1); s_gm_.safeSet(0,x_gi_); var _gk_=s_gm_;} else {var s_gn_=caml_create_string(4); s_gn_.safeSet(0,92); s_gn_.safeSet(1,48+(x_gi_/100|0)|0); s_gn_.safeSet(2,48+((x_gi_/10|0)%10|0)|0); s_gn_.safeSet(3,48+(x_gi_%10|0)|0); var _gk_=s_gn_;}} var s_gj_=_bq_(_aS_,_bq_(_gk_,_aT_));} var _fq_= _ea_ (cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),s_gj_,i_e$_+1|0), _fl_=1; break; case 66: case 98: var _gp_=i_e$_+1|0, _go_=get_arg_e9_(spec_fi_,n_fc_)?_bb_:_ba_, _fq_=_ea_(cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),_go_,_gp_), _fl_=1; break; case 40: case 123: var xf_gq_=get_arg_e9_(spec_fi_,n_fc_), j_gr_=_ea_(sub_format_for_printf_eh_,_fk_,fmt_fa_,i_e$_+1|0); if(123===_fk_) {var b_gs_=_cI_(xf_gq_.getLen()), add_char_gv_= function(i_gu_,c_gt_){_cT_(b_gs_,c_gt_);return i_gu_+1|0;}; iter_on_format_args_eM_ (xf_gq_, function(skip_gw_,i_gy_,c_gx_) {if(skip_gw_)_c6_(b_gs_,_aP_);else _cT_(b_gs_,37); return add_char_gv_(i_gy_,c_gx_);}, add_char_gv_); var _gz_=_cK_(b_gs_), _fq_= _ea_(cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),_gz_,j_gr_), _fl_=1;} else {var _fq_= _ea_(cont_m_gA_,next_index_e2_(spec_fi_,n_fc_),xf_gq_,j_gr_), _fl_=1;} break; case 33:var _fq_=_eE_(cont_f_gB_,n_fc_,i_e$_+1|0),_fl_=1;break; case 37: var _fq_=_ea_(cont_s_fp_,n_fc_,_aY_,i_e$_+1|0),_fl_=1;break; case 41: var _fq_=_ea_(cont_s_fp_,n_fc_,_aX_,i_e$_+1|0),_fl_=1;break; case 44: var _fq_=_ea_(cont_s_fp_,n_fc_,_aW_,i_e$_+1|0),_fl_=1;break; case 70: var x_gC_=get_arg_e9_(spec_fi_,n_fc_); if(0===widths_fe_) {var _gD_=caml_format_float(_be_,x_gC_), i_gE_=0, l_gF_=_gD_.getLen(); for(;;) {if(l_gF_<=i_gE_) var _gG_=_bq_(_gD_,_bd_); else {var _gH_=_gD_.safeGet(i_gE_), _gI_=48<=_gH_?58<=_gH_?0:1:45===_gH_?1:0; if(_gI_){var _gJ_=i_gE_+1|0,i_gE_=_gJ_;continue;} var _gG_=_gD_;} var s_gK_=_gG_; break;}} else {var sfmt_gL_= extract_format_dN_(fmt_fa_,pos_fm_,i_e$_,widths_fe_); if(70===_fk_)sfmt_gL_.safeSet(sfmt_gL_.getLen()-1|0,103); var s_gM_=caml_format_float(sfmt_gL_,x_gC_); if(3<=caml_classify_float(x_gC_)) var _gN_=s_gM_; else {var i_gO_=0,l_gP_=s_gM_.getLen(); for(;;) {if(l_gP_<=i_gO_) var _gQ_=_bq_(s_gM_,_aR_); else {var _gR_=s_gM_.safeGet(i_gO_)-46|0, _gS_= _gR_<0||23<_gR_ ?55===_gR_?1:0 :(_gR_-1|0)<0||21<(_gR_-1|0)?1:0; if(!_gS_){var _gT_=i_gO_+1|0,i_gO_=_gT_;continue;} var _gQ_=s_gM_;} var _gN_=_gQ_; break;}} var s_gK_=_gN_;} var _fq_= _ea_ (cont_s_fp_,next_index_e2_(spec_fi_,n_fc_),s_gK_,i_e$_+1|0), _fl_=1; break; case 97: var printer_gU_=get_arg_e9_(spec_fi_,n_fc_), n_gV_=_bL_(_da_,get_index_e5_(spec_fi_,n_fc_)), arg_gW_=get_arg_e9_(0,n_gV_), _fq_= _gY_ (cont_a_gX_, next_index_e2_(spec_fi_,n_gV_), printer_gU_, arg_gW_, i_e$_+1|0), _fl_=1; break; case 116: var printer_gZ_=get_arg_e9_(spec_fi_,n_fc_), _fq_= _ea_ (cont_t_g0_, next_index_e2_(spec_fi_,n_fc_), printer_gZ_, i_e$_+1|0), _fl_=1; break; default:var _fl_=0;} if(!_fl_)var _fq_=bad_conversion_format_dq_(fmt_fa_,i_e$_,_fk_); return _fq_;}} var _g5_=pos_fm_+1|0,_g2_=0; return scan_positional_spec_eZ_ (fmt_fa_, function(spec_g4_,i_g1_) {return scan_flags_fg_(spec_g4_,n_g3_,_g2_,i_g1_);}, n_g3_, _g5_);} function add_queue_ha_(x_g7_,q_g9_) {var c_g8_=[0,[0,x_g7_,0]],_g__=q_g9_[1]; if(_g__) {var cell_g$_=_g__[1];q_g9_[1]=c_g8_;cell_g$_[2]=c_g8_;return 0;} q_g9_[1]=c_g8_; q_g9_[2]=c_g8_; return 0;} var Empty_queue_hb_=[0,_al_]; function take_queue_hh_(q_hc_) {var _hd_=q_hc_[2]; if(_hd_) {var match_he_=_hd_[1],x_hg_=match_he_[1],tl_hf_=match_he_[2]; q_hc_[2]=tl_hf_; if(0===tl_hf_)q_hc_[1]=0; return x_hg_;} throw [0,Empty_queue_hb_];} function pp_enqueue_hk_(state_hj_,token_hi_) {state_hj_[13]=state_hj_[13]+token_hi_[3]|0; return add_queue_ha_(token_hi_,state_hj_[27]);} var pp_infinity_hl_=1000000010; function pp_output_string_ho_(state_hn_,s_hm_) {return _ea_(state_hn_[17],s_hm_,0,s_hm_.getLen());} function pp_output_newline_hq_(state_hp_){return _bL_(state_hp_[19],0);} function pp_display_blanks_ht_(state_hr_,n_hs_) {return _bL_(state_hr_[20],n_hs_);} function break_new_line_hA_(state_hu_,offset_hw_,width_hv_) {pp_output_newline_hq_(state_hu_); state_hu_[11]=1; var indent_hx_=(state_hu_[6]-width_hv_|0)+offset_hw_|0, _hy_=state_hu_[8], real_indent_hz_=caml_lessequal(_hy_,indent_hx_)?_hy_:indent_hx_; state_hu_[10]=real_indent_hz_; state_hu_[9]=state_hu_[6]-state_hu_[10]|0; return pp_display_blanks_ht_(state_hu_,state_hu_[10]);} function break_line_hD_(state_hC_,width_hB_) {return break_new_line_hA_(state_hC_,0,width_hB_);} function break_same_line_hG_(state_hE_,width_hF_) {state_hE_[9]=state_hE_[9]-width_hF_|0; return pp_display_blanks_ht_(state_hE_,width_hF_);} function advance_left_iA_(state_hH_) {try {for(;;) {var _hI_=state_hH_[27][2]; if(!_hI_)throw [0,Empty_queue_hb_]; var x_hJ_=_hI_[1][1], size_hK_=x_hJ_[1], len_hM_=x_hJ_[3], tok_hL_=x_hJ_[2], _hN_=size_hK_<0?1:0, _hO_=_hN_?(state_hH_[13]-state_hH_[12]|0)<state_hH_[9]?1:0:_hN_, _hP_=1-_hO_; if(_hP_) {take_queue_hh_(state_hH_[27]); var _hQ_=0<=size_hK_?size_hK_:pp_infinity_hl_; if(typeof tok_hL_==="number") switch(tok_hL_) {case 1: var _ij_=state_hH_[2]; if(_ij_) {var _ik_=_ij_[2],_il_=_ik_?(state_hH_[2]=_ik_,1):0;} else var _il_=0; _il_; break; case 2: var _im_=state_hH_[3];if(_im_)state_hH_[3]=_im_[2];break; case 3: var _in_=state_hH_[2]; if(_in_) break_line_hD_(state_hH_,_in_[1][2]); else pp_output_newline_hq_(state_hH_); break; case 4: if(state_hH_[10]!==(state_hH_[6]-state_hH_[9]|0)) {var match_io_=take_queue_hh_(state_hH_[27]), size_ip_=match_io_[1]; state_hH_[12]=state_hH_[12]-match_io_[3]|0; state_hH_[9]=state_hH_[9]+size_ip_|0;} break; case 5: var _iq_=state_hH_[5]; if(_iq_) {var tags_ir_=_iq_[2]; pp_output_string_ho_(state_hH_,_bL_(state_hH_[24],_iq_[1])); state_hH_[5]=tags_ir_;} break; default: var _is_=state_hH_[3]; if(_is_) {var tabs_it_=_is_[1][1], add_tab_iy_= function(n_ix_,ls_iu_) {if(ls_iu_) {var l_iw_=ls_iu_[2],x_iv_=ls_iu_[1]; return caml_lessthan(n_ix_,x_iv_) ?[0,n_ix_,ls_iu_] :[0,x_iv_,add_tab_iy_(n_ix_,l_iw_)];} return [0,n_ix_,0];}; tabs_it_[1]= add_tab_iy_(state_hH_[6]-state_hH_[9]|0,tabs_it_[1]);}} else switch(tok_hL_[0]) {case 1: var off_hR_=tok_hL_[2],n_hS_=tok_hL_[1],_hT_=state_hH_[2]; if(_hT_) {var match_hU_=_hT_[1],width_hV_=match_hU_[2]; switch(match_hU_[1]) {case 1: break_new_line_hA_(state_hH_,off_hR_,width_hV_);break; case 2: break_new_line_hA_(state_hH_,off_hR_,width_hV_);break; case 3: if(state_hH_[9]<_hQ_) break_new_line_hA_(state_hH_,off_hR_,width_hV_); else break_same_line_hG_(state_hH_,n_hS_); break; case 4: if (state_hH_[11]|| !(state_hH_[9]< _hQ_|| ((state_hH_[6]-width_hV_|0)+off_hR_|0)< state_hH_[10])) break_same_line_hG_(state_hH_,n_hS_); else break_new_line_hA_(state_hH_,off_hR_,width_hV_); break; case 5:break_same_line_hG_(state_hH_,n_hS_);break; default:break_same_line_hG_(state_hH_,n_hS_);}} break; case 2: var off_hY_=tok_hL_[2], n_hX_=tok_hL_[1], insertion_point_hW_=state_hH_[6]-state_hH_[9]|0, _hZ_=state_hH_[3]; if(_hZ_) {var tabs_h0_=_hZ_[1][1],_h1_=tabs_h0_[1]; if(_h1_) {var x_h7_=_h1_[1]; try {var param_h2_=tabs_h0_[1]; for(;;) {if(!param_h2_)throw [0,_c_]; var l_h4_=param_h2_[2],x_h3_=param_h2_[1]; if(!caml_greaterequal(x_h3_,insertion_point_hW_)) {var param_h2_=l_h4_;continue;} var _h5_=x_h3_; break;}} catch(_h6_){if(_h6_[1]!==_c_)throw _h6_;var _h5_=x_h7_;} var tab_h8_=_h5_;} else var tab_h8_=insertion_point_hW_; var offset_h9_=tab_h8_-insertion_point_hW_|0; if(0<=offset_h9_) break_same_line_hG_(state_hH_,offset_h9_+n_hX_|0); else break_new_line_hA_(state_hH_,tab_h8_+off_hY_|0,state_hH_[6]);} break; case 3: var ty_h__=tok_hL_[2],off_ie_=tok_hL_[1]; if(state_hH_[8]<(state_hH_[6]-state_hH_[9]|0)) {var _h$_=state_hH_[2]; if(_h$_) {var match_ia_=_h$_[1], width_ib_=match_ia_[2], bl_ty_ic_=match_ia_[1], _id_= state_hH_[9]<width_ib_ ?0===bl_ty_ic_ ?0 :5<=bl_ty_ic_?1:(break_line_hD_(state_hH_,width_ib_),1) :0; _id_;} else pp_output_newline_hq_(state_hH_);} var offset_ig_=state_hH_[9]-off_ie_|0, bl_type_if_=1===ty_h__?1:state_hH_[9]<_hQ_?ty_h__:5; state_hH_[2]=[0,[0,bl_type_if_,offset_ig_],state_hH_[2]]; break; case 4:state_hH_[3]=[0,tok_hL_[1],state_hH_[3]];break; case 5: var tag_name_ih_=tok_hL_[1]; pp_output_string_ho_ (state_hH_,_bL_(state_hH_[23],tag_name_ih_)); state_hH_[5]=[0,tag_name_ih_,state_hH_[5]]; break; default: var s_ii_=tok_hL_[1]; state_hH_[9]=state_hH_[9]-_hQ_|0; pp_output_string_ho_(state_hH_,s_ii_); state_hH_[11]=0;} state_hH_[12]=len_hM_+state_hH_[12]|0; continue;} break;}} catch(_iz_){if(_iz_[1]===Empty_queue_hb_)return 0;throw _iz_;} return _hP_;} function enqueue_advance_iD_(state_iC_,tok_iB_) {pp_enqueue_hk_(state_iC_,tok_iB_);return advance_left_iA_(state_iC_);} function make_queue_elem_iH_(size_iG_,tok_iF_,len_iE_) {return [0,size_iG_,tok_iF_,len_iE_];} function enqueue_string_as_iL_(state_iK_,size_iJ_,s_iI_) {return enqueue_advance_iD_ (state_iK_,make_queue_elem_iH_(size_iJ_,[0,s_iI_],size_iJ_));} var scan_stack_bottom_iM_=[0,[0,-1,make_queue_elem_iH_(-1,_ak_,0)],0]; function clear_scan_stack_iO_(state_iN_) {state_iN_[1]=scan_stack_bottom_iM_;return 0;} function set_size_i1_(state_iP_,ty_iX_) {var _iQ_=state_iP_[1]; if(_iQ_) {var match_iR_=_iQ_[1], queue_elem_iS_=match_iR_[2], left_tot_iU_=match_iR_[1], size_iT_=queue_elem_iS_[1], t_iV_=_iQ_[2], tok_iW_=queue_elem_iS_[2]; if(left_tot_iU_<state_iP_[12])return clear_scan_stack_iO_(state_iP_); if(typeof tok_iW_!=="number") switch(tok_iW_[0]) {case 1: case 2: var _iY_= ty_iX_ ?(queue_elem_iS_[1]= state_iP_[13]+ size_iT_| 0, state_iP_[1]= t_iV_, 0) :ty_iX_; return _iY_; case 3: var _iZ_=1-ty_iX_, _i0_= _iZ_ ?(queue_elem_iS_[1]= state_iP_[13]+ size_iT_| 0, state_iP_[1]= t_iV_, 0) :_iZ_; return _i0_; default:} return 0;} return 0;} function scan_push_i5_(state_i3_,b_i4_,tok_i2_) {pp_enqueue_hk_(state_i3_,tok_i2_); if(b_i4_)set_size_i1_(state_i3_,1); state_i3_[1]=[0,[0,state_i3_[13],tok_i2_],state_i3_[1]]; return 0;} function pp_open_box_gen_i$_(state_i6_,indent_i8_,br_ty_i7_) {state_i6_[14]=state_i6_[14]+1|0; if(state_i6_[14]<state_i6_[15]) return scan_push_i5_ (state_i6_, 0, make_queue_elem_iH_ (-state_i6_[13]|0,[3,indent_i8_,br_ty_i7_],0)); var _i9_=state_i6_[14]===state_i6_[15]?1:0; if(_i9_) {var _i__=state_i6_[16]; return enqueue_string_as_iL_(state_i6_,_i__.getLen(),_i__);} return _i9_;} function pp_close_box_je_(state_ja_,param_jd_) {var _jb_=1<state_ja_[14]?1:0; if(_jb_) {if(state_ja_[14]<state_ja_[15]) {pp_enqueue_hk_(state_ja_,[0,0,1,0]); set_size_i1_(state_ja_,1); set_size_i1_(state_ja_,0);} state_ja_[14]=state_ja_[14]-1|0; var _jc_=0;} else var _jc_=_jb_; return _jc_;} function pp_open_tag_ji_(state_jf_,tag_name_jg_) {if(state_jf_[21]) {state_jf_[4]=[0,tag_name_jg_,state_jf_[4]]; _bL_(state_jf_[25],tag_name_jg_);} var _jh_=state_jf_[22]; return _jh_?pp_enqueue_hk_(state_jf_,[0,0,[5,tag_name_jg_],0]):_jh_;} function pp_flush_queue_jm_(state_jj_,b_jk_) {for(;;) {if(1<state_jj_[14]){pp_close_box_je_(state_jj_,0);continue;} state_jj_[13]=pp_infinity_hl_; advance_left_iA_(state_jj_); if(b_jk_)pp_output_newline_hq_(state_jj_); state_jj_[12]=1; state_jj_[13]=1; var _jl_=state_jj_[27]; _jl_[1]=0; _jl_[2]=0; clear_scan_stack_iO_(state_jj_); state_jj_[2]=0; state_jj_[3]=0; state_jj_[4]=0; state_jj_[5]=0; state_jj_[10]=0; state_jj_[14]=0; state_jj_[9]=state_jj_[6]; return pp_open_box_gen_i$_(state_jj_,0,3);}} function pp_print_as_size_jr_(state_jn_,size_jq_,s_jp_) {var _jo_=state_jn_[14]<state_jn_[15]?1:0; return _jo_?enqueue_string_as_iL_(state_jn_,size_jq_,s_jp_):_jo_;} function pp_print_as_jv_(state_ju_,isize_jt_,s_js_) {return pp_print_as_size_jr_(state_ju_,isize_jt_,s_js_);} function pp_print_flush_jy_(state_jw_,param_jx_) {pp_flush_queue_jm_(state_jw_,0);return _bL_(state_jw_[18],0);} function pp_print_break_jD_(state_jz_,width_jC_,offset_jB_) {var _jA_=state_jz_[14]<state_jz_[15]?1:0; return _jA_ ?scan_push_i5_ (state_jz_, 1, make_queue_elem_iH_ (-state_jz_[13]|0,[1,width_jC_,offset_jB_],width_jC_)) :_jA_;} function pp_print_space_jG_(state_jE_,param_jF_) {return pp_print_break_jD_(state_jE_,1,0);} function display_newline_jK_(state_jH_,param_jI_) {return _ea_(state_jH_[17],_am_,0,1);} var blank_line_jJ_=_b7_(80,32); function display_blanks_jR_(state_jO_,n_jL_) {var n_jM_=n_jL_; for(;;) {var _jN_=0<n_jM_?1:0; if(_jN_) {if(80<n_jM_) {_ea_(state_jO_[17],blank_line_jJ_,0,80); var _jP_=n_jM_-80|0,n_jM_=_jP_; continue;} return _ea_(state_jO_[17],blank_line_jJ_,0,n_jM_);} return _jN_;}} function default_pp_mark_open_tag_jT_(s_jQ_) {return _bq_(_an_,_bq_(s_jQ_,_ao_));} function default_pp_mark_close_tag_jW_(s_jS_) {return _bq_(_ap_,_bq_(s_jS_,_aq_));} function default_pp_print_open_tag_jV_(s_jU_){return 0;} function make_formatter_j6_(output_j4_,flush_j3_) {function _jZ_(_jX_){return 0;} function _j1_(_jY_){return 0;} var _j0_=[0,0,0],sys_tok_j2_=make_queue_elem_iH_(-1,_as_,0); add_queue_ha_(sys_tok_j2_,_j0_); var _j5_= [0, [0,[0,1,sys_tok_j2_],scan_stack_bottom_iM_], 0, 0, 0, 0, 78, 10, 78-10|0, 78, 0, 1, 1, 1, 1, max_int_br_, _ar_, output_j4_, flush_j3_, _j1_, _jZ_, 0, 0, default_pp_mark_open_tag_jT_, default_pp_mark_close_tag_jW_, default_pp_print_open_tag_jV_, default_pp_print_open_tag_jV_, _j0_]; _j5_[19]=_bL_(display_newline_jK_,_j5_); _j5_[20]=_bL_(display_blanks_jR_,_j5_); return _j5_;} function formatter_of_out_channel_j__(oc_j7_) {function _j9_(param_j8_){return caml_ml_flush(oc_j7_);} return make_formatter_j6_(_bL_(output_bK_,oc_j7_),_j9_);} function formatter_of_buffer_kc_(b_ka_) {function _kb_(_j$_){return 0;} return make_formatter_j6_(_bL_(_c7_,b_ka_),_kb_);} var stdbuf_kd_=_cI_(512), std_formatter_ke_=formatter_of_out_channel_j__(stdout_bD_), err_formatter_kf_=formatter_of_out_channel_j__(stderr_bC_); formatter_of_buffer_kc_(stdbuf_kd_); var print_flush_km_=_bL_(pp_print_flush_jy_,std_formatter_ke_); function giving_up_kl_(mess_kk_,fmt_kg_,i_kh_) {var _ki_= i_kh_<fmt_kg_.getLen() ?_bq_(_aw_,_bq_(_b7_(1,fmt_kg_.safeGet(i_kh_)),_ax_)) :_b7_(1,46), _kj_=_bq_(_av_,_bq_(string_of_int_bt_(i_kh_),_ki_)); return _bq_(_at_,_bq_(mess_kk_,_bq_(_au_,_bq_(_dg_(fmt_kg_),_kj_))));} function format_invalid_arg_kq_(mess_kp_,fmt_ko_,i_kn_) {return _bh_(giving_up_kl_(mess_kp_,fmt_ko_,i_kn_));} function invalid_format_kt_(fmt_ks_,i_kr_) {return format_invalid_arg_kq_(_ay_,fmt_ks_,i_kr_);} function invalid_integer_kw_(fmt_kv_,i_ku_) {return _bh_(giving_up_kl_(_az_,fmt_kv_,i_ku_));} function format_int_of_string_kD_(fmt_kC_,i_kB_,s_kx_) {try {var _ky_=caml_int_of_string(s_kx_),sz_kz_=_ky_;} catch(_kA_) {if(_kA_[1]!==_a_)throw _kA_; var sz_kz_=invalid_integer_kw_(fmt_kC_,i_kB_);} return sz_kz_;} function exstring_kJ_(printer_kH_,arg_kG_) {var b_kE_=_cI_(512),ppf_kF_=formatter_of_buffer_kc_(b_kE_); _eE_(printer_kH_,ppf_kF_,arg_kG_); pp_flush_queue_jm_(ppf_kF_,0); var s_kI_=_cK_(b_kE_); b_kE_[2]=0; b_kE_[1]=b_kE_[4]; b_kE_[3]=b_kE_[1].getLen(); return s_kI_;} function implode_rev_kM_(s0_kL_,l_kK_) {return l_kK_?_cr_(_aA_,_bT_([0,s0_kL_,l_kK_])):s0_kL_;} function mkprintf_oe_(to_s_lB_,get_out_kQ_) {function kprintf_mM_(k_k3_,fmt_kN_) {var len_kO_=fmt_kN_.getLen(); function kpr_nl_(fmt_kP_,v_k$_) {var ppf_kR_=_bL_(get_out_kQ_,fmt_kP_),print_as_kS_=[0,0]; function pp_print_as_char_kX_(c_kU_) {var _kT_=print_as_kS_[1]; if(_kT_) {var size_kV_=_kT_[1]; pp_print_as_size_jr_(ppf_kR_,size_kV_,_b7_(1,c_kU_)); print_as_kS_[1]=0; return 0;} var s_kW_=caml_create_string(1); s_kW_.safeSet(0,c_kU_); return pp_print_as_jv_(ppf_kR_,1,s_kW_);} function pp_print_as_string_k0_(s_kZ_) {var _kY_=print_as_kS_[1]; return _kY_ ?(pp_print_as_size_jr_(ppf_kR_,_kY_[1],s_kZ_), print_as_kS_[1]= 0, 0) :pp_print_as_jv_(ppf_kR_,s_kZ_.getLen(),s_kZ_);} function doprn_li_(n_k__,i_k1_) {var i_k2_=i_k1_; for(;;) {if(len_kO_<=i_k2_)return _bL_(k_k3_,ppf_kR_); var _k4_=fmt_kP_.safeGet(i_k2_); if(37===_k4_) return _g6_ (fmt_kP_, v_k$_, n_k__, i_k2_, cont_s_k9_, cont_a_k8_, cont_t_k7_, cont_f_k6_, cont_m_k5_); if(64===_k4_) {var i_la_=i_k2_+1|0; if(len_kO_<=i_la_)return invalid_format_kt_(fmt_kP_,i_la_); var _lb_=fmt_kP_.safeGet(i_la_); if(65<=_lb_) {if(94<=_lb_) {var _lc_=_lb_-123|0; if(!(_lc_<0||2<_lc_)) switch(_lc_) {case 1:break; case 2: if(ppf_kR_[22])pp_enqueue_hk_(ppf_kR_,[0,0,5,0]); if(ppf_kR_[21]) {var _ld_=ppf_kR_[4]; if(_ld_) {var tags_le_=_ld_[2]; _bL_(ppf_kR_[26],_ld_[1]); ppf_kR_[4]=tags_le_; var _lf_=1;} else var _lf_=0;} else var _lf_=0; _lf_; var _lg_=i_la_+1|0,i_k2_=_lg_; continue; default: var _lh_=i_la_+1|0; if(len_kO_<=_lh_) {pp_open_tag_ji_(ppf_kR_,_aC_); var _lj_=doprn_li_(n_k__,_lh_);} else if(60===fmt_kP_.safeGet(_lh_)) {var got_name_lo_= function(tag_name_lk_,n_ln_,i_lm_) {pp_open_tag_ji_(ppf_kR_,tag_name_lk_); return doprn_li_(n_ln_,skip_gt_ll_(i_lm_));}, _lp_=_lh_+1|0, get_ly_= function(accu_lt_,n_lu_,i_ls_,j_lq_) {var j_lr_=j_lq_; for(;;) {if(len_kO_<=j_lr_) return got_name_lo_ (implode_rev_kM_ (_de_(fmt_kP_,index_of_int_c9_(i_ls_),j_lr_-i_ls_|0), accu_lt_), n_lu_, j_lr_); var _lv_=fmt_kP_.safeGet(j_lr_); if(37===_lv_) {var s0_lw_=_de_(fmt_kP_,index_of_int_c9_(i_ls_),j_lr_-i_ls_|0), cont_s_lH_= function(n_lA_,s_lx_,i_lz_) {return get_ly_ ([0,s_lx_,[0,s0_lw_,accu_lt_]],n_lA_,i_lz_,i_lz_);}, cont_a_lP_= function(n_lG_,printer_lD_,arg_lC_,i_lF_) {var s_lE_= to_s_lB_ ?_eE_(printer_lD_,0,arg_lC_) :exstring_kJ_(printer_lD_,arg_lC_); return get_ly_ ([0,s_lE_,[0,s0_lw_,accu_lt_]],n_lG_,i_lF_,i_lF_);}, cont_t_lS_= function(n_lO_,printer_lI_,i_lN_) {if(to_s_lB_) var s_lJ_=_bL_(printer_lI_,0); else {var _lM_=0, s_lJ_= exstring_kJ_ (function(ppf_lK_,param_lL_) {return _bL_(printer_lI_,ppf_lK_);}, _lM_);} return get_ly_ ([0,s_lJ_,[0,s0_lw_,accu_lt_]],n_lO_,i_lN_,i_lN_);}, cont_f_lW_= function(n_lR_,i_lQ_) {return format_invalid_arg_kq_(_aD_,fmt_kP_,i_lQ_);}; return _g6_ (fmt_kP_, v_k$_, n_lu_, j_lr_, cont_s_lH_, cont_a_lP_, cont_t_lS_, cont_f_lW_, function(n_lU_,sfmt_lV_,i_lT_) {return format_invalid_arg_kq_(_aE_,fmt_kP_,i_lT_);});} if(62===_lv_) return got_name_lo_ (implode_rev_kM_ (_de_(fmt_kP_,index_of_int_c9_(i_ls_),j_lr_-i_ls_|0), accu_lt_), n_lu_, j_lr_); var _lX_=j_lr_+1|0,j_lr_=_lX_; continue;}}, _lj_=get_ly_(0,n_k__,_lp_,_lp_);} else {pp_open_tag_ji_(ppf_kR_,_aB_); var _lj_=doprn_li_(n_k__,_lh_);} return _lj_;}} else if(91<=_lb_) switch(_lb_-91|0) {case 1:break; case 2: pp_close_box_je_(ppf_kR_,0); var _lY_=i_la_+1|0,i_k2_=_lY_; continue; default: var _lZ_=i_la_+1|0; if(len_kO_<=_lZ_||!(60===fmt_kP_.safeGet(_lZ_))) {pp_open_box_gen_i$_(ppf_kR_,0,4); var _l0_=doprn_li_(n_k__,_lZ_);} else {var _l1_=_lZ_+1|0; if(len_kO_<=_l1_) var match_l2_=[0,4,_l1_]; else {var _l3_=fmt_kP_.safeGet(_l1_); if(98===_l3_) var match_l2_=[0,4,_l1_+1|0]; else if(104===_l3_) {var i_l4_=_l1_+1|0; if(len_kO_<=i_l4_) var match_l2_=[0,0,i_l4_]; else {var _l5_=fmt_kP_.safeGet(i_l4_); if(111===_l5_) {var i_l6_=i_l4_+1|0; if(len_kO_<=i_l6_) var match_l2_=format_invalid_arg_kq_(_aG_,fmt_kP_,i_l6_); else {var _l7_=fmt_kP_.safeGet(i_l6_), match_l2_= 118===_l7_ ?[0,3,i_l6_+1|0] :format_invalid_arg_kq_ (_bq_(_aF_,_b7_(1,_l7_)),fmt_kP_,i_l6_);}} else var match_l2_=118===_l5_?[0,2,i_l4_+1|0]:[0,0,i_l4_];}} else var match_l2_=118===_l3_?[0,1,_l1_+1|0]:[0,4,_l1_];} var i_ma_=match_l2_[2], kind_l8_=match_l2_[1], _l0_= get_int_mb_ (n_k__, i_ma_, function(size_l9_,n_l$_,i_l__) {pp_open_box_gen_i$_(ppf_kR_,size_l9_,kind_l8_); return doprn_li_(n_l$_,skip_gt_ll_(i_l__));});} return _l0_;}} else {if(10===_lb_) {if(ppf_kR_[14]<ppf_kR_[15]) enqueue_advance_iD_(ppf_kR_,make_queue_elem_iH_(0,3,0)); var _mc_=i_la_+1|0,i_k2_=_mc_; continue;} if(32<=_lb_) switch(_lb_-32|0) {case 0: pp_print_space_jG_(ppf_kR_,0); var _md_=i_la_+1|0,i_k2_=_md_; continue; case 12: pp_print_break_jD_(ppf_kR_,0,0); var _me_=i_la_+1|0,i_k2_=_me_; continue; case 14: pp_flush_queue_jm_(ppf_kR_,1); _bL_(ppf_kR_[18],0); var _mf_=i_la_+1|0,i_k2_=_mf_; continue; case 27: var _mg_=i_la_+1|0; if(len_kO_<=_mg_||!(60===fmt_kP_.safeGet(_mg_))) {pp_print_space_jG_(ppf_kR_,0); var _mh_=doprn_li_(n_k__,_mg_);} else {var got_nspaces_mq_= function(nspaces_mi_,n_ml_,i_mk_) {return get_int_mb_ (n_ml_,i_mk_,_bL_(got_offset_mj_,nspaces_mi_));}, got_offset_mj_= function(nspaces_mn_,offset_mm_,n_mp_,i_mo_) {pp_print_break_jD_(ppf_kR_,nspaces_mn_,offset_mm_); return doprn_li_(n_mp_,skip_gt_ll_(i_mo_));}, _mh_=get_int_mb_(n_k__,_mg_+1|0,got_nspaces_mq_);} return _mh_; case 28: return get_int_mb_ (n_k__, i_la_+1|0, function(size_mr_,n_mt_,i_ms_) {print_as_kS_[1]=[0,size_mr_]; return doprn_li_(n_mt_,skip_gt_ll_(i_ms_));}); case 31: pp_print_flush_jy_(ppf_kR_,0); var _mu_=i_la_+1|0,i_k2_=_mu_; continue; case 32: pp_print_as_char_kX_(_lb_); var _mv_=i_la_+1|0,i_k2_=_mv_; continue; default:}} return invalid_format_kt_(fmt_kP_,i_la_);} pp_print_as_char_kX_(_k4_); var _mw_=i_k2_+1|0,i_k2_=_mw_; continue;}} function cont_s_k9_(n_mz_,s_mx_,i_my_) {pp_print_as_string_k0_(s_mx_);return doprn_li_(n_mz_,i_my_);} function cont_a_k8_(n_mD_,printer_mB_,arg_mA_,i_mC_) {if(to_s_lB_) pp_print_as_string_k0_(_eE_(printer_mB_,0,arg_mA_)); else _eE_(printer_mB_,ppf_kR_,arg_mA_); return doprn_li_(n_mD_,i_mC_);} function cont_t_k7_(n_mG_,printer_mE_,i_mF_) {if(to_s_lB_) pp_print_as_string_k0_(_bL_(printer_mE_,0)); else _bL_(printer_mE_,ppf_kR_); return doprn_li_(n_mG_,i_mF_);} function cont_f_k6_(n_mI_,i_mH_) {pp_print_flush_jy_(ppf_kR_,0);return doprn_li_(n_mI_,i_mH_);} function cont_m_k5_(n_mK_,sfmt_mN_,i_mJ_) {return kprintf_mM_ (function(param_mL_){return doprn_li_(n_mK_,i_mJ_);}, sfmt_mN_);} function get_int_mb_(n_na_,i_mO_,c_mV_) {var i_mP_=i_mO_; for(;;) {if(len_kO_<=i_mP_)return invalid_integer_kw_(fmt_kP_,i_mP_); var _mQ_=fmt_kP_.safeGet(i_mP_); if(32===_mQ_){var _mR_=i_mP_+1|0,i_mP_=_mR_;continue;} if(37===_mQ_) {var cont_s_m0_= function(n_mU_,s_mS_,i_mT_) {return _ea_ (c_mV_, format_int_of_string_kD_(fmt_kP_,i_mT_,s_mS_), n_mU_, i_mT_);}, cont_a_m4_= function(n_mX_,printer_mY_,arg_mZ_,i_mW_) {return invalid_integer_kw_(fmt_kP_,i_mW_);}, cont_t_m7_= function(n_m2_,printer_m3_,i_m1_) {return invalid_integer_kw_(fmt_kP_,i_m1_);}, cont_f_m$_= function(n_m6_,i_m5_) {return invalid_integer_kw_(fmt_kP_,i_m5_);}; return _g6_ (fmt_kP_, v_k$_, n_na_, i_mP_, cont_s_m0_, cont_a_m4_, cont_t_m7_, cont_f_m$_, function(n_m9_,sfmt_m__,i_m8_) {return invalid_integer_kw_(fmt_kP_,i_m8_);});} var j_nb_=i_mP_; for(;;) {if(len_kO_<=j_nb_) var _nc_=invalid_integer_kw_(fmt_kP_,j_nb_); else {var _nd_=fmt_kP_.safeGet(j_nb_), _ne_=48<=_nd_?58<=_nd_?0:1:45===_nd_?1:0; if(_ne_){var _nf_=j_nb_+1|0,j_nb_=_nf_;continue;} var size_ng_= j_nb_===i_mP_ ?0 :format_int_of_string_kD_ (fmt_kP_, j_nb_, _de_(fmt_kP_,index_of_int_c9_(i_mP_),j_nb_-i_mP_|0)), _nc_=_ea_(c_mV_,size_ng_,n_na_,j_nb_);} return _nc_;}}} function skip_gt_ll_(i_nh_) {var i_ni_=i_nh_; for(;;) {if(len_kO_<=i_ni_)return invalid_format_kt_(fmt_kP_,i_ni_); var _nj_=fmt_kP_.safeGet(i_ni_); if(32===_nj_){var _nk_=i_ni_+1|0,i_ni_=_nk_;continue;} return 62===_nj_?i_ni_+1|0:invalid_format_kt_(fmt_kP_,i_ni_);}} return doprn_li_(index_of_int_c9_(0),0);} var ac_nm_=[0,0,0,0]; function add_conv_nv_(skip_nr_,i_ns_,c_nn_) {var _no_=41!==c_nn_?1:0,_np_=_no_?125!==c_nn_?1:0:_no_; if(_np_) {var inc_nq_=97===c_nn_?2:1; if(114===c_nn_)ac_nm_[3]=ac_nm_[3]+1|0; if(skip_nr_) ac_nm_[2]=ac_nm_[2]+inc_nq_|0; else ac_nm_[1]=ac_nm_[1]+inc_nq_|0;} return i_ns_+1|0;} iter_on_format_args_eM_ (fmt_kN_,add_conv_nv_,function(i_nt_,c_nu_){return i_nt_+1|0;}); var _nw_=ac_nm_[1]; if(_nw_<0||6<_nw_) {var loop_nJ_= function(i_nx_,args_nD_) {if(_nw_<=i_nx_) {var a_ny_=caml_make_vect(_nw_,0), _nB_= function(i_nz_,arg_nA_) {return caml_array_set(a_ny_,(_nw_-i_nz_|0)-1|0,arg_nA_);}, i_nC_=0, param_nE_=args_nD_; for(;;) {if(param_nE_) {var _nF_=param_nE_[2],_nG_=param_nE_[1]; if(_nF_) {_nB_(i_nC_,_nG_); var _nH_=i_nC_+1|0,i_nC_=_nH_,param_nE_=_nF_; continue;} _nB_(i_nC_,_nG_);} return kpr_nl_(fmt_kN_,a_ny_);}} return function(x_nI_) {return loop_nJ_(i_nx_+1|0,[0,x_nI_,args_nD_]);};}, _nK_=loop_nJ_(0,0);} else switch(_nw_) {case 1: var _nK_= function(x_nM_) {var a_nL_=caml_make_vect(1,0); caml_array_set(a_nL_,0,x_nM_); return kpr_nl_(fmt_kN_,a_nL_);}; break; case 2: var _nK_= function(x_nO_,y_nP_) {var a_nN_=caml_make_vect(2,0); caml_array_set(a_nN_,0,x_nO_); caml_array_set(a_nN_,1,y_nP_); return kpr_nl_(fmt_kN_,a_nN_);}; break; case 3: var _nK_= function(x_nR_,y_nS_,z_nT_) {var a_nQ_=caml_make_vect(3,0); caml_array_set(a_nQ_,0,x_nR_); caml_array_set(a_nQ_,1,y_nS_); caml_array_set(a_nQ_,2,z_nT_); return kpr_nl_(fmt_kN_,a_nQ_);}; break; case 4: var _nK_= function(x_nV_,y_nW_,z_nX_,t_nY_) {var a_nU_=caml_make_vect(4,0); caml_array_set(a_nU_,0,x_nV_); caml_array_set(a_nU_,1,y_nW_); caml_array_set(a_nU_,2,z_nX_); caml_array_set(a_nU_,3,t_nY_); return kpr_nl_(fmt_kN_,a_nU_);}; break; case 5: var _nK_= function(x_n0_,y_n1_,z_n2_,t_n3_,u_n4_) {var a_nZ_=caml_make_vect(5,0); caml_array_set(a_nZ_,0,x_n0_); caml_array_set(a_nZ_,1,y_n1_); caml_array_set(a_nZ_,2,z_n2_); caml_array_set(a_nZ_,3,t_n3_); caml_array_set(a_nZ_,4,u_n4_); return kpr_nl_(fmt_kN_,a_nZ_);}; break; case 6: var _nK_= function(x_n6_,y_n7_,z_n8_,t_n9_,u_n__,v_n$_) {var a_n5_=caml_make_vect(6,0); caml_array_set(a_n5_,0,x_n6_); caml_array_set(a_n5_,1,y_n7_); caml_array_set(a_n5_,2,z_n8_); caml_array_set(a_n5_,3,t_n9_); caml_array_set(a_n5_,4,u_n__); caml_array_set(a_n5_,5,v_n$_); return kpr_nl_(fmt_kN_,a_n5_);}; break; default:var _nK_=kpr_nl_(fmt_kN_,[0]);} return _nK_;} return kprintf_mM_;} function fprintf_og_(ppf_ob_) {function _od_(_oa_){return 0;} return _ea_(mkprintf_oe_,0,function(param_oc_){return ppf_ob_;},_od_);} function eprintf_oj_(fmt_of_) {return _eE_(fprintf_og_,err_formatter_kf_,fmt_of_);} var g_oh_=exit_function_bJ_[1]; exit_function_bJ_[1]= function(param_oi_){_bL_(print_flush_km_,0);return _bL_(g_oh_,0);}; var _ok_=[0,0]; 32===_cs_; function _on_(param_om_) {var seq_ol_=[]; caml_update_dummy(seq_ol_,[0,seq_ol_,seq_ol_]); return seq_ol_;} var Canceled_oo_=[0,_ad_],current_data_op_=[0,0],max_removed_ov_=42; function repr_rec_ot_(t_oq_) {var _or_=t_oq_[1]; {if(3===_or_[0]) {var t__os_=_or_[1],t___ou_=repr_rec_ot_(t__os_); if(t___ou_!==t__os_)t_oq_[1]=[3,t___ou_]; return t___ou_;} return t_oq_;}} function repr_ox_(t_ow_){return repr_rec_ot_(t_ow_);} function run_waiters_oQ_(waiters_oy_,state_oD_) {var save_oA_=current_data_op_[1],ws_oz_=waiters_oy_,rem_oB_=0; for(;;) {if(typeof ws_oz_==="number") {if(rem_oB_) {var rem_oP_=rem_oB_[2], ws_oO_=rem_oB_[1], ws_oz_=ws_oO_, rem_oB_=rem_oP_; continue;}} else switch(ws_oz_[0]) {case 1: var _oC_=ws_oz_[1]; if(rem_oB_) {var rem_oF_=rem_oB_[2],ws_oE_=rem_oB_[1]; _bL_(_oC_,state_oD_); var ws_oz_=ws_oE_,rem_oB_=rem_oF_; continue;} _bL_(_oC_,state_oD_); break; case 2: var ws1_oG_=ws_oz_[1], _oH_=[0,ws_oz_[2],rem_oB_], ws_oz_=ws1_oG_, rem_oB_=_oH_; continue; default: var _oI_=ws_oz_[1][1]; if(_oI_) {var _oJ_=_oI_[1]; if(rem_oB_) {var rem_oL_=rem_oB_[2],ws_oK_=rem_oB_[1]; _bL_(_oJ_,state_oD_); var ws_oz_=ws_oK_,rem_oB_=rem_oL_; continue;} _bL_(_oJ_,state_oD_);} else if(rem_oB_) {var rem_oN_=rem_oB_[2], ws_oM_=rem_oB_[1], ws_oz_=ws_oM_, rem_oB_=rem_oN_; continue;}} current_data_op_[1]=save_oA_; return 0;}} function wakeup_oX_(t_oR_,v_oU_) {var t_oS_=repr_rec_ot_(t_oR_),_oT_=t_oS_[1]; switch(_oT_[0]) {case 1:if(_oT_[1][1]===Canceled_oo_)return 0;break; case 2: var waiters_oW_=_oT_[1][2],state_oV_=[0,v_oU_]; t_oS_[1]=state_oV_; return run_waiters_oQ_(waiters_oW_,state_oV_); default:} return _bh_(_ae_);} function append_o0_(l1_oY_,l2_oZ_) {return typeof l1_oY_==="number" ?l2_oZ_ :typeof l2_oZ_==="number"?l1_oY_:[2,l1_oY_,l2_oZ_];} function cleanup_o2_(ws_o1_) {if(typeof ws_o1_!=="number") switch(ws_o1_[0]) {case 2: var l1_o3_=ws_o1_[1],_o4_=cleanup_o2_(ws_o1_[2]); return append_o0_(cleanup_o2_(l1_o3_),_o4_); case 1:break; default:if(!ws_o1_[1][1])return 0;} return ws_o1_;} function fail_o6_(e_o5_){return [0,[1,e_o5_]];} function add_immutable_waiter_o__(sleeper_o7_,waiter_o8_) {var _o9_= typeof sleeper_o7_[2]==="number" ?[1,waiter_o8_] :[2,[1,waiter_o8_],sleeper_o7_[2]]; sleeper_o7_[2]=_o9_; return 0;} var _o$_=[0], _pa_=[0,caml_make_vect(55,0),0], seed_pb_=caml_equal(_o$_,[0])?[0,0]:_o$_, l_pc_=seed_pb_.length-1, _pd_=0, _pe_=54; if(!(_pe_<_pd_)) {var i_pf_=_pd_; for(;;) {caml_array_set(_pa_[1],i_pf_,i_pf_); var _pg_=i_pf_+1|0; if(_pe_!==i_pf_){var i_pf_=_pg_;continue;} break;}} var accu_ph_=[0,_aj_],_pi_=0,_pj_=54+_bk_(55,l_pc_)|0; if(!(_pj_<_pi_)) {var i_pk_=_pi_; for(;;) {var j_pl_=i_pk_%55|0, _pm_=accu_ph_[1], _pn_= _bq_ (_pm_, string_of_int_bt_(caml_array_get(seed_pb_,caml_mod(i_pk_,l_pc_)))); accu_ph_[1]=caml_md5_string(_pn_,0,_pn_.getLen()); var _po_=accu_ph_[1]; caml_array_set (_pa_[1], j_pl_, caml_array_get(_pa_[1],j_pl_)^ (((_po_.safeGet(0)+(_po_.safeGet(1)<<8)|0)+(_po_.safeGet(2)<<16)|0)+ (_po_.safeGet(3)<<24)| 0)); var _pp_=i_pk_+1|0; if(_pj_!==i_pk_){var i_pk_=_pp_;continue;} break;}} _pa_[2]=0; var pause_hook_ps_=[0,function(_pq_){return 0;}],_pr_=_on_(0),_pu_=[0,0]; function _pz_(param_px_) {if(_pr_[2]===_pr_)return 0; var tmp_pt_=_on_(0); tmp_pt_[1][2]=_pr_[2]; _pr_[2][1]=tmp_pt_[1]; tmp_pt_[1]=_pr_[1]; _pr_[1][2]=tmp_pt_; _pr_[1]=_pr_; _pr_[2]=_pr_; _pu_[1]=0; var curr_pv_=tmp_pt_[2]; for(;;) {if(curr_pv_!==tmp_pt_) {if(curr_pv_[4])wakeup_oX_(curr_pv_[3],0); var _pw_=curr_pv_[2],curr_pv_=_pw_; continue;} return 0;}} var null_py_=null, array_constructor_pA_=Array, undefined_pD_=undefined, _false_pC_=false; _ok_[1]= [0, function(e_pB_) {return e_pB_ instanceof array_constructor_pA_ ?0 :[0,new MlWrappedString(e_pB_.toString())];}, _ok_[1]]; function _pG_(p_pE_,n_pF_){p_pE_.appendChild(n_pF_);return 0;} var window_pH_=window, document_pI_=window_pH_.document, onIE_pM_=caml_js_on_ie(0)|0; function opt_iter_pL_(x_pJ_,f_pK_){return x_pJ_?_bL_(f_pK_,x_pJ_[1]):0;} function createElement_pP_(doc_pO_,name_pN_) {return doc_pO_.createElement(name_pN_.toString());} function unsafeCreateElement_pS_(doc_pR_,name_pQ_) {return createElement_pP_(doc_pR_,name_pQ_);} function createDiv_pU_(doc_pT_) {return unsafeCreateElement_pS_(doc_pT_,_$_);} window.HTMLElement===undefined_pD_; pause_hook_ps_[1]= function(param_pV_) {return 1===param_pV_ ?(window_pH_.setTimeout(caml_js_wrap_callback(_pz_),0),0) :0;}; function _p3_(c_p1_,s_pY_) {var n_pW_=[0,0],_pX_=0,_pZ_=s_pY_.getLen()-1|0; if(!(_pZ_<_pX_)) {var i_p0_=_pX_; for(;;) {if(s_pY_.safeGet(i_p0_)===c_p1_)n_pW_[1]+=1; var _p2_=i_p0_+1|0; if(_pZ_!==i_p0_){var i_p0_=_p2_;continue;} break;}} return n_pW_[1];} function _p8_(c_p4_,v_p6_) {var _p5_=c_p4_[12]; if(typeof _p5_!=="number"&&1===_p5_[0]) {c_p4_[8]=[0,v_p6_,c_p4_[8]];return 0;} var _p7_=c_p4_[7]; c_p4_[7]=[0,_bL_(c_p4_[1][20],v_p6_),_p7_]; return 0;} function _p$_(c_p9_,s_p__){return _p8_(c_p9_,_bL_(c_p9_[1][1],s_p__));} function _qc_(c_qb_,lexbuf_qa_){return _p$_(c_qb_,_cD_(lexbuf_qa_));} function _qg_(c_qe_,style_qd_,v_qf_) {return 0===style_qd_?(c_qe_[3]=v_qf_,0):(c_qe_[2]=v_qf_,0);} function _qn_(c_qi_,style_qh_,inline_qm_,stack_qk_) {var elt_qj_=0===style_qh_?c_qi_[1][2]:c_qi_[1][3],inline__ql_=c_qi_[7]; c_qi_[12]=stack_qk_; c_qi_[7]=inline_qm_; _p8_(c_qi_,_bL_(elt_qj_,_bT_(inline__ql_))); return _qg_(c_qi_,style_qh_,0);} function _qu_(c_qp_,style_qo_) {var _qq_=0===style_qo_?c_qp_[3]:c_qp_[2]; if(_qq_) {var _qr_=c_qp_[12]; if(typeof _qr_!=="number"&&0===_qr_[0]) {var stack_qs_=_qr_[3],inline_qt_=_qr_[2]; if(caml_equal(_qr_[1],style_qo_)) return _qn_(c_qp_,style_qo_,inline_qt_,stack_qs_);} return 0===style_qo_?_p$_(c_qp_,_K_):_p$_(c_qp_,_L_);} c_qp_[12]=[0,style_qo_,c_qp_[7],c_qp_[12]]; c_qp_[7]=0; return _qg_(c_qp_,style_qo_,1);} function _qz_(c_qv_,addr_qy_,stack_qw_) {c_qv_[12]=stack_qw_; var _qx_=c_qv_[7]; c_qv_[7]=[0,_eE_(c_qv_[1][7],addr_qy_,_bT_(c_qv_[8])),_qx_]; c_qv_[8]=0; c_qv_[5]=0; return 0;} function _qH_(c_qA_) {var _qB_=c_qA_[12]; if(typeof _qB_!=="number") switch(_qB_[0]) {case 5: var _qC_=c_qA_[12]; c_qA_[12]=[6,[0,[0,0,_bT_(c_qA_[7])],0],_qC_]; c_qA_[7]=0; return 1; case 6:return 1; case 7: var _qD_=_qB_[2]; if(typeof _qD_!=="number"&&6===_qD_[0]) {var stack_qG_=_qD_[2],entries_qF_=_qD_[1],heading_qE_=_qB_[1]; c_qA_[12]= [6,[0,[0,heading_qE_,_bT_(c_qA_[7])],entries_qF_],stack_qG_]; c_qA_[7]=0; return 1;} break; default:} return 0;} function _qN_(c_qI_) {var _qJ_=_qH_(c_qI_); if(_qJ_) {var _qK_=c_qI_[12]; if(typeof _qK_!=="number") switch(_qK_[0]) {case 5:return 1; case 6: var _qL_=_qK_[2]; if(typeof _qL_!=="number"&&5===_qL_[0]) {var rows_qM_=_qL_[1]; c_qI_[12]=[5,[0,_bT_(_qK_[1]),rows_qM_]]; return 1;} break; default:} throw [0,_d_,_M_];} return _qJ_;} function _q5_(c_qO_,lev_qX_) {for(;;) {var _qP_=c_qO_[12]; if(typeof _qP_==="number") {if(0!==c_qO_[7]) {var _q4_=c_qO_[11]; c_qO_[11]=[0,_bL_(c_qO_[1][8],_bT_(c_qO_[7])),_q4_]; c_qO_[7]=0;} c_qO_[12]=0; return 0;} else switch(_qP_[0]) {case 1:_qz_(c_qO_,_qP_[1],_qP_[2]);continue; case 2: var _qQ_=_qP_[1]-1|0; if(_qQ_<0||4<_qQ_) var f_qR_=c_qO_[1][15]; else switch(_qQ_) {case 1:var f_qR_=c_qO_[1][11];break; case 2:var f_qR_=c_qO_[1][12];break; case 3:var f_qR_=c_qO_[1][13];break; case 4:var f_qR_=c_qO_[1][14];break; default:var f_qR_=c_qO_[1][10];} var _qS_=c_qO_[11]; c_qO_[11]=[0,_bL_(f_qR_,_bT_(c_qO_[7])),_qS_]; c_qO_[7]=0; c_qO_[4]=0; c_qO_[12]=0; return 0; case 3: var stack_qU_=_qP_[1],_qT_=c_qO_[10]; c_qO_[10]=[0,[0,_bT_(c_qO_[7]),0],_qT_]; c_qO_[12]=stack_qU_; c_qO_[7]=0; continue; case 4: var stack_qW_=_qP_[3],lst_qV_=_qP_[2],kind_qY_=_qP_[1]; if(lev_qX_<c_qO_[6]) {c_qO_[6]=c_qO_[6]-1|0; var elt_qZ_=0===kind_qY_?c_qO_[1][16]:c_qO_[1][17], cur_lst_q0_=_bL_(elt_qZ_,_bT_(c_qO_[10])); if(0===c_qO_[6]) c_qO_[11]=[0,cur_lst_q0_,c_qO_[11]]; else {if(lst_qV_) {var _q1_=lst_qV_[1], _q2_= _q1_[2] ?0 :(c_qO_[10]=[0,[0,_q1_[1],[0,cur_lst_q0_]],lst_qV_[2]],1);} else var _q2_=0; if(!_q2_)throw [0,_d_,_T_];} c_qO_[12]=stack_qW_; continue;} return 0; case 5: var _q3_=c_qO_[11]; c_qO_[11]=[0,_bL_(c_qO_[1][19],_bT_(_qP_[1])),_q3_]; c_qO_[12]=0; return 0; case 6:throw [0,_d_,_S_]; case 7:_qN_(c_qO_);continue; default:_qn_(c_qO_,_qP_[1],_qP_[2],_qP_[3]);continue;}}} function _rm_(c_q6_,kind_rf_,lev_q7_) {var _q8_=lev_q7_===(c_q6_[6]+1|0)?1:0; if(_q8_) {var _q9_=_q8_,_q__=0;} else {var _q$_=lev_q7_<=c_q6_[6]?1:0; if(_q$_) {var _rb_=c_q6_[6]-lev_q7_|0,stack_ra_=c_q6_[12],n_rc_=_rb_; for(;;) {if(typeof stack_ra_==="number") var _ri_=1; else switch(stack_ra_[0]) {case 0:var stack_rd_=stack_ra_[3],stack_ra_=stack_rd_;continue; case 3:var stack_re_=stack_ra_[1],stack_ra_=stack_re_;continue; case 4: var stack_rj_=stack_ra_[3],k_rg_=stack_ra_[1]; if(0!==n_rc_) {var _rk_=n_rc_-1|0,stack_ra_=stack_rj_,n_rc_=_rk_;continue;} var correct_rh_=caml_equal(k_rg_,kind_rf_),_q__=1,_ri_=0; break; default:var _ri_=1;} if(_ri_)throw [0,_d_,_R_]; break;}} else {var _q9_=_q$_,_q__=0;}} if(!_q__)var correct_rh_=_q9_; if(1!==lev_q7_&&!correct_rh_)return 0; var _rl_=correct_rh_?lev_q7_:0; _q5_(c_q6_,_rl_); if(lev_q7_===c_q6_[6]) c_q6_[12]=[3,c_q6_[12]]; else {c_q6_[6]=lev_q7_; c_q6_[12]=[3,[4,kind_rf_,c_q6_[10],c_q6_[12]]]; c_q6_[10]=0;} return 1;} function _rp_(c_rn_,heading_ro_) {if(!_qN_(c_rn_)){_q5_(c_rn_,0);c_rn_[12]=_N_;} c_rn_[12]=[7,heading_ro_,[6,0,c_rn_[12]]]; return 0;} function _rE_(c_rt_,lexbuf_rr_) {var __ocaml_lex_state_rq_=0; for(;;) {var _rs_=_cz_(_g_,__ocaml_lex_state_rq_,lexbuf_rr_); if(_rs_<0||8<_rs_) {_bL_(lexbuf_rr_[1],lexbuf_rr_); var __ocaml_lex_state_rq_=_rs_; continue;} switch(_rs_) {case 1: _q5_(c_rt_,0); if(0!==c_rt_[12])throw [0,_d_,_Q_]; c_rt_[12]=[2,_p3_(61,_cD_(lexbuf_rr_))]; c_rt_[4]=1; var _rv_=_ru_(c_rt_,lexbuf_rr_); break; case 2: var lev_rw_=_p3_(42,_cD_(lexbuf_rr_)); if(!_rm_(c_rt_,0,lev_rw_)) {var s_rx_=_cD_(lexbuf_rr_),l_ry_=s_rx_.getLen()-lev_rw_|0; if(0<l_ry_)_p$_(c_rt_,_ca_(s_rx_,0,l_ry_)); var _rz_=1,_rA_=lev_rw_/2|0; if(!(_rA_<_rz_)) {var i_rB_=_rz_; for(;;) {_qu_(c_rt_,0); var _rC_=i_rB_+1|0; if(_rA_!==i_rB_){var i_rB_=_rC_;continue;} break;}} if(1===(lev_rw_&1))_p$_(c_rt_,_P_);} var _rv_=_ru_(c_rt_,lexbuf_rr_); break; case 3: if(!_rm_(c_rt_,1,_p3_(35,_cD_(lexbuf_rr_))))_qc_(c_rt_,lexbuf_rr_); var _rv_=_ru_(c_rt_,lexbuf_rr_); break; case 4: _q5_(c_rt_,0); var _rD_=c_rt_[11]; c_rt_[11]=[0,_bL_(c_rt_[1][18],0),_rD_]; var _rv_=_rE_(c_rt_,lexbuf_rr_); break; case 5:_q5_(c_rt_,0);var _rv_=_rF_(c_rt_,lexbuf_rr_);break; case 6:_rp_(c_rt_,0);var _rv_=_ru_(c_rt_,lexbuf_rr_);break; case 7:_rp_(c_rt_,1);var _rv_=_ru_(c_rt_,lexbuf_rr_);break; case 8:var _rv_=_ru_(c_rt_,lexbuf_rr_);break; default:_q5_(c_rt_,0);var _rv_=_rE_(c_rt_,lexbuf_rr_);} return _rv_;}} function _ru_(c_rJ_,lexbuf_rH_) {var __ocaml_lex_state_rG_=25; for(;;) {var _rI_=_cz_(_g_,__ocaml_lex_state_rG_,lexbuf_rH_); if(_rI_<0||17<_rI_) {_bL_(lexbuf_rH_[1],lexbuf_rH_); var __ocaml_lex_state_rG_=_rI_; continue;} switch(_rI_) {case 1:_qu_(c_rJ_,0);var _rK_=_ru_(c_rJ_,lexbuf_rH_);break; case 2:_qu_(c_rJ_,1);var _rK_=_ru_(c_rJ_,lexbuf_rH_);break; case 3: if(c_rJ_[4])_q5_(c_rJ_,0);else _qc_(c_rJ_,lexbuf_rH_); var _rK_=_rE_(c_rJ_,lexbuf_rH_); break; case 4: if(c_rJ_[5]) var _rK_=_qc_(c_rJ_,lexbuf_rH_); else {var s_rL_=_cD_(lexbuf_rH_), addr_rM_=_ca_(s_rL_,2,s_rL_.getLen()-4|0), _rN_=c_rJ_[7]; c_rJ_[7]= [0, _eE_(c_rJ_[1][7],addr_rM_,[0,_bL_(c_rJ_[1][1],addr_rM_),0]), _rN_]; var _rK_=_ru_(c_rJ_,lexbuf_rH_);} break; case 5: if(c_rJ_[5]) _qc_(c_rJ_,lexbuf_rH_); else {var s_rO_=_cD_(lexbuf_rH_); c_rJ_[12]=[1,_ca_(s_rO_,2,s_rO_.getLen()-3|0),c_rJ_[12]]; c_rJ_[5]=1;} var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 6: var _rP_=c_rJ_[12], _rQ_= typeof _rP_==="number" ?0 :1===_rP_[0]?(_qz_(c_rJ_,_rP_[1],_rP_[2]),1):0; if(!_rQ_)_qc_(c_rJ_,lexbuf_rH_); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 7: if(c_rJ_[5]) var _rK_=_qc_(c_rJ_,lexbuf_rH_); else {var addr_rR_=_cD_(lexbuf_rH_),_rS_=c_rJ_[7]; c_rJ_[7]= [0, _eE_(c_rJ_[1][7],addr_rR_,[0,_bL_(c_rJ_[1][1],addr_rR_),0]), _rS_]; var _rK_=_ru_(c_rJ_,lexbuf_rH_);} break; case 8: _p8_(c_rJ_,_bL_(c_rJ_[1][4],0)); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 9: var s_rT_=_cD_(lexbuf_rH_),i_rU_=0,_rW_=124,_rV_=s_rT_.getLen(); for(;;) {if(_rV_<=i_rU_)throw [0,_c_]; if(s_rT_.safeGet(i_rU_)!==_rW_) {var _rY_=i_rU_+1|0,i_rU_=_rY_;continue;} var url_rX_=_ca_(s_rT_,2,i_rU_-2|0); _p8_ (c_rJ_, _eE_ (c_rJ_[1][5], url_rX_, _ca_(s_rT_,i_rU_+1|0,(s_rT_.getLen()-i_rU_|0)-3|0))); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break;} break; case 10: var s_rZ_=_cD_(lexbuf_rH_); _p8_ (c_rJ_, _bL_ (c_rJ_[1][6], [0, _bL_ (c_rJ_[1][20], _bL_(c_rJ_[1][1],_ca_(s_rZ_,3,s_rZ_.getLen()-6|0))), 0])); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 11: _p$_(c_rJ_,_ca_(_cD_(lexbuf_rH_),1,1)); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 12: if(!_qN_(c_rJ_))_qc_(c_rJ_,lexbuf_rH_); var _rK_=_rE_(c_rJ_,lexbuf_rH_); break; case 13: if(_qH_(c_rJ_)) c_rJ_[12]=[7,0,c_rJ_[12]]; else _qc_(c_rJ_,lexbuf_rH_); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 14: if(_qH_(c_rJ_)) c_rJ_[12]=[7,1,c_rJ_[12]]; else _qc_(c_rJ_,lexbuf_rH_); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 15: _qc_(c_rJ_,lexbuf_rH_);var _rK_=_ru_(c_rJ_,lexbuf_rH_);break; case 16: _eE_(eprintf_oj_,_O_,_cD_(lexbuf_rH_)); var _rK_=_ru_(c_rJ_,lexbuf_rH_); break; case 17:var _rK_=_q5_(c_rJ_,0);break; default: if(c_rJ_[4])_q5_(c_rJ_,0);else _qc_(c_rJ_,lexbuf_rH_); var _rK_=_rE_(c_rJ_,lexbuf_rH_);} return _rK_;}} function _rF_(c_r3_,lexbuf_r1_) {var __ocaml_lex_state_r0_=77; for(;;) {var _r2_=_cz_(_g_,__ocaml_lex_state_r0_,lexbuf_r1_); if(_r2_<0||2<_r2_) {_bL_(lexbuf_r1_[1],lexbuf_r1_); var __ocaml_lex_state_r0_=_r2_; continue;} switch(_r2_) {case 1: var _r4_=c_r3_[11]; c_r3_[11]=[0,_bL_(c_r3_[1][9],_bT_(c_r3_[9])),_r4_]; c_r3_[9]=0; var _r5_=_rE_(c_r3_,lexbuf_r1_); break; case 2: var _r6_=c_r3_[9]; c_r3_[9]=[0,_cD_(lexbuf_r1_),_r6_]; var _r5_=_rF_(c_r3_,lexbuf_r1_); break; default: var s_r7_=_cD_(lexbuf_r1_),_r8_=c_r3_[9]; c_r3_[9]=[0,_ca_(s_r7_,1,s_r7_.getLen()-1|0),_r8_]; var _r5_=_rF_(c_r3_,lexbuf_r1_);} return _r5_;}} function node_r__(x_r9_){return x_r9_;} function _sc_(e_sa_,l_sb_) {_b3_(function(c_r$_){return _pG_(e_sa_,c_r$_);},l_sb_); return node_r__(e_sa_);} function list_builder_sm_(d_sh_,tag_sk_,c_sj_) {var _sl_= _bX_ (function(param_sd_) {var l_se_=param_sd_[2], c_sg_=param_sd_[1], _sf_=l_se_?[0,l_se_[1],0]:0, _si_=_bv_(c_sg_,_sf_); return _sc_(d_sh_.createElement(_o_.toString()),_si_);}, c_sj_); return _sc_(d_sh_.createElement(tag_sk_.toString()),_sl_);} function _sw_(x_sn_){return x_sn_;} function _sy_(rows_st_) {var rows_su_= _bX_ (function(entries_sr_) {var _ss_= _bX_ (function(param_so_) {var c_sq_=param_so_[2],kind_sp_=param_so_[1]?_t_:_s_; return _sc_ (document_pI_.createElement(kind_sp_.toString()),c_sq_);}, entries_sr_); return _sc_(document_pI_.createElement(_r_.toString()),_ss_);}, rows_st_), _sv_=[0,_sc_(document_pI_.createElement(_q_.toString()),rows_su_),0]; return _sc_(document_pI_.createElement(_p_.toString()),_sv_);} function _sA_(param_sx_) {return node_r__(document_pI_.createElement(_u_.toString()));} function _sC_(s_sz_){return list_builder_sm_(document_pI_,_v_,s_sz_);} function _sE_(s_sB_){return list_builder_sm_(document_pI_,_w_,s_sB_);} function _sG_(s_sD_) {return _sc_(document_pI_.createElement(_x_.toString()),s_sD_);} function _sI_(s_sF_) {return _sc_(document_pI_.createElement(_y_.toString()),s_sF_);} function _sK_(s_sH_) {return _sc_(document_pI_.createElement(_z_.toString()),s_sH_);} function _sM_(s_sJ_) {return _sc_(document_pI_.createElement(_A_.toString()),s_sJ_);} function _sO_(s_sL_) {return _sc_(document_pI_.createElement(_B_.toString()),s_sL_);} function _sR_(s_sN_) {return _sc_(document_pI_.createElement(_C_.toString()),s_sN_);} function _sT_(s_sQ_) {var p_sP_=document_pI_.createElement(_E_.toString()); _pG_(p_sP_,document_pI_.createTextNode(_cr_(_D_,s_sQ_).toString())); return node_r__(p_sP_);} function _sX_(s_sS_) {return _sc_(document_pI_.createElement(_F_.toString()),s_sS_);} function _sZ_(addr_sV_,s_sW_) {var _sU_=unsafeCreateElement_pS_(document_pI_,_ab_); _sU_.href=addr_sV_.toString(); return _sc_(_sU_,s_sW_);} function _s3_(s_sY_) {return _sc_(document_pI_.createElement(_G_.toString()),s_sY_);} function _s5_(addr_s1_,alt_s2_) {var _s0_=unsafeCreateElement_pS_(document_pI_,_ac_); _s0_.src=addr_s1_.toString(); _s0_.alt=alt_s2_.toString(); return node_r__(_s0_);} function _s7_(param_s4_) {return node_r__(document_pI_.createElement(_H_.toString()));} function _s9_(s_s6_) {return _sc_(document_pI_.createElement(_I_.toString()),s_s6_);} function _s$_(s_s8_) {return _sc_(document_pI_.createElement(_J_.toString()),s_s8_);} var _ty_= [0, function(s_s__) {return node_r__(document_pI_.createTextNode(s_s__.toString()));}, _s$_, _s9_, _s7_, _s5_, _s3_, _sZ_, _sX_, _sT_, _sR_, _sO_, _sM_, _sK_, _sI_, _sG_, _sE_, _sC_, _sA_, _sy_, _sw_]; function onload_ut_(param_us_) {var _ta_=document_pI_.getElementById(_m_.toString()); if(_ta_==null_py_)throw [0,_d_,_n_]; var _tb_=0,_tc_=0; if(0===_tc_&&0===_tb_) {var _td_=createElement_pP_(document_pI_,_f_),_te_=1;} else var _te_=0; if(!_te_) if(onIE_pM_) {var a_tf_=new array_constructor_pA_(); a_tf_.push(_W_.toString(),_f_.toString()); opt_iter_pL_ (_tc_, function(t_tg_) {a_tf_.push (_X_.toString(),caml_js_html_escape(t_tg_),_Y_.toString()); return 0;}); opt_iter_pL_ (_tb_, function(n_th_) {a_tf_.push (_Z_.toString(),caml_js_html_escape(n_th_),___.toString()); return 0;}); a_tf_.push(_V_.toString()); var _td_=document_pI_.createElement(a_tf_.join(_U_.toString()));} else {var res_ti_=createElement_pP_(document_pI_,_f_); opt_iter_pL_(_tc_,function(t_tj_){return res_ti_.type=t_tj_;}); opt_iter_pL_(_tb_,function(n_tk_){return res_ti_.name=n_tk_;}); var _td_=res_ti_;} _td_.rows=20; _td_.cols=80; var preview_tl_=createDiv_pU_(document_pI_); preview_tl_.style.border=_l_.toString(); preview_tl_.style.padding=_k_.toString(); _pG_(_ta_,_td_); _pG_(_ta_,unsafeCreateElement_pS_(document_pI_,_aa_)); _pG_(_ta_,preview_tl_); function dyn_preview_tH_(old_text_tn_,n_tG_) {var text_tm_=new MlWrappedString(_td_.value); if(caml_string_notequal(text_tm_,old_text_tn_)) {try {var _tx_=[0], _tw_=1, _tv_=0, _tu_=0, _tt_=0, _ts_=0, _tr_=0, _tq_=text_tm_.getLen(), _tp_=_bq_(text_tm_,_a1_), _tA_= [0, function(lexbuf_to_){lexbuf_to_[9]=1;return 0;}, _tp_, _tq_, _tr_, _ts_, _tt_, _tu_, _tv_, _tw_, _tx_, _e_, _e_], _tz_=[0,_ty_,0,0,0,0,0,0,0,0,0,0,0]; _rE_(_tz_,_tA_); var _tB_=_bT_(_tz_[11]), _tD_=_sc_(createDiv_pU_(document_pI_),_tB_), _tC_=preview_tl_.firstChild; if(_tC_!=null_py_)preview_tl_.removeChild(_tC_); _pG_(preview_tl_,_tD_);} catch(_tF_){} var n_tE_=20;} else var n_tE_=_bk_(0,n_tG_-1|0); function _tJ_(param_tI_){return dyn_preview_tH_(text_tm_,n_tE_);} var _tK_=0===n_tE_?0.5:0.1,t_tL_=[],_tT_=0,_tS_=0; caml_update_dummy (t_tL_, [0, [2, [0, [0, [0, function(param_tR_) {var t_tM_=repr_rec_ot_(t_tL_),_tN_=t_tM_[1]; if(2===_tN_[0]) {var waiters_tP_=_tN_[1][2],state_tO_=[1,[0,Canceled_oo_]]; t_tM_[1]=state_tO_; var _tQ_=run_waiters_oQ_(waiters_tP_,state_tO_);} else var _tQ_=0; return _tQ_;}]], _tS_, _tT_]]]); var _tV_=_tK_*1000, id_tW_= window_pH_.setTimeout (caml_js_wrap_callback (function(param_tU_){return wakeup_oX_(t_tL_,0);}), _tV_); function _tY_(param_tX_){return window_pH_.clearTimeout(id_tW_);} var _tZ_=repr_ox_(t_tL_)[1]; switch(_tZ_[0]) {case 1:var _t0_=_tZ_[1][1]===Canceled_oo_?(_tY_(0),1):0;break; case 2: var sleeper_t5_=_tZ_[1],data_t2_=current_data_op_[1]; add_immutable_waiter_o__ (sleeper_t5_, function(param_t1_) {if(1===param_t1_[0]&¶m_t1_[1][1]===Canceled_oo_) {current_data_op_[1]=data_t2_; try {var _t3_=_tY_(0);}catch(_t4_){return 0;} return _t3_;} return 0;}); var _t0_=1; break; default:var _t0_=0;} _t0_; var _t6_=repr_ox_(t_tL_)[1]; switch(_t6_[0]) {case 1:var _t7_=fail_o6_(_t6_[1]);break; case 2: var sleeper_t8_=_t6_[1], _t9_=[0,[2,[0,sleeper_t8_[1],0,0]]], data_t$_=current_data_op_[1]; add_immutable_waiter_o__ (sleeper_t8_, function(param_t__) {switch(param_t__[0]) {case 0: var v_ua_=param_t__[1]; current_data_op_[1]=data_t$_; try {var _ub_=_tJ_(v_ua_),_uc_=_ub_;} catch(_ud_){var _uc_=fail_o6_(_ud_);} var t1_ue_=repr_ox_(_t9_), t2_uf_=repr_ox_(_uc_), _ug_=t1_ue_[1]; if(2===_ug_[0]) {var sleeper1_uh_=_ug_[1]; if(t1_ue_===t2_uf_) var _ui_=0; else {var _uj_=t2_uf_[1]; if(2===_uj_[0]) {var sleeper2_uk_=_uj_[1]; t2_uf_[1]=[3,t1_ue_]; sleeper1_uh_[1][1]=[1,sleeper2_uk_[1]]; var waiters_ul_=append_o0_(sleeper1_uh_[2],sleeper2_uk_[2]), removed_um_=sleeper1_uh_[3]+sleeper2_uk_[3]|0, _ui_= max_removed_ov_<removed_um_ ?(sleeper1_uh_[3]= 0, sleeper1_uh_[2]= cleanup_o2_(waiters_ul_), 0) :(sleeper1_uh_[3]=removed_um_,sleeper1_uh_[2]=waiters_ul_,0);} else {t1_ue_[1]=_uj_; var _ui_=run_waiters_oQ_(sleeper1_uh_[2],_uj_);}}} else var _ui_=_bh_(_af_); return _ui_; case 1: var _un_=[1,param_t__[1]], t_uo_=repr_ox_(_t9_), _up_=t_uo_[1]; if(2===_up_[0]) {var waiters_uq_=_up_[1][2]; t_uo_[1]=_un_; var _ur_=run_waiters_oQ_(waiters_uq_,_un_);} else var _ur_=_bh_(_ag_); return _ur_; default:throw [0,_d_,_ai_];}}); var _t7_=_t9_; break; case 3:throw [0,_d_,_ah_]; default:var _t7_=_tJ_(_t6_[1]);} return _t7_;} dyn_preview_tH_(_j_,0); return _false_pC_;} window_pH_.onload= caml_js_wrap_callback (function(e_uu_) {if(e_uu_) {var res_uv_=onload_ut_(e_uu_); if(!(res_uv_|0))e_uu_.preventDefault(); return res_uv_;} var _uw_=event,res_ux_=onload_ut_(_uw_); _uw_.returnValue=res_ux_; return res_ux_;}); do_at_exit_bN_(0); return;} ());