Sophie

Sophie

distrib > Fedora > 18 > x86_64 > media > updates > by-pkgid > 3866615ed9f87500bac83f78574eecc8 > files > 589

js-of-ocaml-doc-1.2-2.fc18.noarch.rpm

// 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_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_compare (a, b) { return caml_compare_val (a, b, true); }
function caml_create_string(len) {
  if (len < 0) caml_invalid_argument("String.create");
  return new MlMakeString(len);
}
function caml_raise_constant (tag) { throw [0, tag]; }
var caml_global_data = [0];
function caml_raise_zero_divide () {
  caml_raise_constant(caml_global_data[6]);
}
function caml_div(x,y) {
  if (y == 0) caml_raise_zero_divide ();
  return (x/y)|0;
}
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_get_public_method (obj, tag) {
  var meths = obj[1];
  var li = 3, hi = meths[1] * 2 + 1, mi;
  while (li < hi) {
    mi = ((li+hi) >> 1) | 1;
    if (tag < meths[mi+1]) hi = mi-2;
    else li = mi;
  }
  return (tag == meths[li+1] ? meths[li] : 0);
}
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;
}
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); }
function caml_js_call(f, o, args) { return f.apply(o, args.slice(1)); }
function caml_js_from_byte_string (s) {return s.getFullBytes();}
function caml_js_on_ie () {
  var ua = window.navigator?window.navigator.userAgent:"";
  return ua.indexOf("MSIE") != -1 && ua.indexOf("Opera") != 0;
}
function caml_js_to_byte_string (s) {return new MlString (s);}
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_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_out_channels_list () { return 0; }
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_obj_block (tag, size) {
  var o = [tag];
  for (var i = 1; i <= size; i++) o[i] = 0;
  return o;
}
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 zm(Dw,Dx,Dy,Dz,DA,DB,DC,DD,DE){return Dw.length==8?Dw(Dx,Dy,Dz,DA,DB,DC,DD,DE):caml_call_gen(Dw,[Dx,Dy,Dz,DA,DB,DC,DD,DE]);}function zz(Do,Dp,Dq,Dr,Ds,Dt,Du,Dv){return Do.length==7?Do(Dp,Dq,Dr,Ds,Dt,Du,Dv):caml_call_gen(Do,[Dp,Dq,Dr,Ds,Dt,Du,Dv]);}function nm(Dh,Di,Dj,Dk,Dl,Dm,Dn){return Dh.length==6?Dh(Di,Dj,Dk,Dl,Dm,Dn):caml_call_gen(Dh,[Di,Dj,Dk,Dl,Dm,Dn]);}function e7(Dd,De,Df,Dg){return Dd.length==3?Dd(De,Df,Dg):caml_call_gen(Dd,[De,Df,Dg]);}function cf(Da,Db,Dc){return Da.length==2?Da(Db,Dc):caml_call_gen(Da,[Db,Dc]);}function cq(C_,C$){return C_.length==1?C_(C$):caml_call_gen(C_,[C$]);}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,0,0,0,0],f=new MlString("scene.json"),g=[0,new MlString("value"),new MlString("upper"),new MlString("step_increment"),new MlString("set_value"),new MlString("set_bounds"),new MlString("page_size"),new MlString("page_increment"),new MlString("lower")],h=[0,new MlString("set_value"),new MlString("set_bounds"),new MlString("step_increment"),new MlString("page_increment"),new MlString("lower"),new MlString("page_size"),new MlString("upper"),new MlString("value")],i=[0,new MlString("_value"),new MlString("_lower"),new MlString("_upper"),new MlString("_step_incr"),new MlString("_page_incr"),new MlString("_page_size")];caml_register_global(5,[0,new MlString("Division_by_zero")]);caml_register_global(3,b);caml_register_global(2,a);var bQ=new MlString("%.12g"),bP=new MlString("."),bO=new MlString("%d"),bN=new MlString("true"),bM=new MlString("false"),bL=new MlString("Pervasives.do_at_exit"),bK=new MlString("Array.blit"),bJ=new MlString("\\b"),bI=new MlString("\\t"),bH=new MlString("\\n"),bG=new MlString("\\r"),bF=new MlString("\\\\"),bE=new MlString("\\'"),bD=new MlString(""),bC=new MlString("String.blit"),bB=new MlString("String.sub"),bA=new MlString("Map.remove_min_elt"),bz=[0,0,0,0],by=[0,new MlString("map.ml"),267,10],bx=[0,0,0],bw=new MlString("Map.bal"),bv=new MlString("Map.bal"),bu=new MlString("Map.bal"),bt=new MlString("Map.bal"),bs=new MlString("Buffer.add: cannot grow buffer"),br=new MlString("%"),bq=new MlString(""),bp=new MlString(""),bo=new MlString("\""),bn=new MlString("\""),bm=new MlString("'"),bl=new MlString("'"),bk=new MlString("."),bj=new MlString("printf: bad positional specification (0)."),bi=new MlString("%_"),bh=[0,new MlString("printf.ml"),144,8],bg=new MlString("''"),bf=new MlString("Printf: premature end of format string ``"),be=new MlString("''"),bd=new MlString(" in format string ``"),bc=new MlString(", at char number "),bb=new MlString("Printf: bad conversion %"),ba=new MlString("Sformat.index_of_int: negative argument "),a$=new MlString("x"),a_=new MlString(""),a9=[0,new MlString("src/core/lwt.ml"),477,20],a8=[0,new MlString("src/core/lwt.ml"),480,8],a7=[0,new MlString("src/core/lwt.ml"),440,20],a6=[0,new MlString("src/core/lwt.ml"),443,8],a5=new MlString("Lwt.fast_connect"),a4=new MlString("Lwt.connect"),a3=new MlString("Lwt.wakeup_exn"),a2=new MlString("Lwt.wakeup"),a1=new MlString("Lwt.Canceled"),a0=new MlString("return;"),aZ=new MlString("onmousewheel"),aY=new MlString("function"),aX=new MlString("onmousewheel"),aW=new MlString("canvas"),aV=new MlString("p"),aU=new MlString("div"),aT=new MlString("on"),aS=new MlString("mouseup"),aR=new MlString("mousemove"),aQ=new MlString("mousewheel"),aP=new MlString("DOMMouseScroll"),aO=new MlString("2d"),aN=new MlString("Dom_html.Canvas_not_available"),aM=new MlString("\\$&"),aL=new MlString("$$$$"),aK=new MlString("g"),aJ=new MlString("g"),aI=new MlString("[$]"),aH=new MlString("[\\][()\\\\|+*.?{}^$]"),aG=[0,new MlString(""),0],aF=new MlString(""),aE=new MlString("="),aD=new MlString("&"),aC=new MlString("%2B"),aB=new MlString("Url.Local_exn"),aA=new MlString("+"),az=new MlString("^([Hh][Tt][Tt][Pp][Ss]?)://([0-9a-zA-Z.-]+|\\[[0-9a-zA-Z.-]+\\]|\\[[0-9A-Fa-f:.]+\\])?(:([0-9]+))?/([^\\?#]*)(\\?([^#])*)?(#(.*))?$"),ay=new MlString("^([Ff][Ii][Ll][Ee])://([^\\?#]*)(\\?([^#])*)?(#(.*))?$"),ax=new MlString("browser can't read file: unimplemented"),aw=new MlString("utf8"),av=[0,new MlString("file.ml"),109,15],au=new MlString("string"),at=new MlString("can't retrieve file name: not implemented"),as=new MlString(""),ar=new MlString("POST"),aq=new MlString("multipart/form-data; boundary="),ap=new MlString("POST"),ao=[0,new MlString("POST"),[0,new MlString("application/x-www-form-urlencoded")],126925477],an=[0,new MlString("POST"),0,126925477],am=new MlString("GET"),al=new MlString("?"),ak=new MlString("Content-type"),aj=new MlString("="),ai=new MlString("="),ah=new MlString("&"),ag=new MlString("Content-Type: application/octet-stream\r\n"),af=new MlString("\"\r\n"),ae=new MlString("\"; filename=\""),ad=new MlString("Content-Disposition: form-data; name=\""),ac=new MlString("\r\n"),ab=new MlString("\r\n"),aa=new MlString("\r\n"),$=new MlString("--"),_=new MlString("\r\n"),Z=new MlString("\"\r\n\r\n"),Y=new MlString("Content-Disposition: form-data; name=\""),X=new MlString("--\r\n"),W=new MlString("--"),V=new MlString("js_of_ocaml-------------------"),U=new MlString("Msxml2.XMLHTTP"),T=new MlString("Msxml3.XMLHTTP"),S=new MlString("Microsoft.XMLHTTP"),R=[0,new MlString("xmlHttpRequest.ml"),64,2],Q=new MlString("XmlHttpRequest.Wrong_headers"),P=[0,0,0],O=[0,new MlString("viewer_common.ml"),260,8],N=[0,new MlString("viewer_common.ml"),263,8],M=[0,new MlString("viewer_common.ml"),269,6],L=[0,new MlString("viewer_common.ml"),272,6],K=[0,new MlString("viewer_common.ml"),122,63],J=new MlString("%dpx"),I=[0,0],H=[0,0],G=[0,1],F=[0,20],E=new MlString("absolute"),D=new MlString("0px"),C=new MlString("1px"),B=new MlString("black"),A=new MlString("absolute"),z=new MlString("2px solid black"),y=new MlString("1px"),x=new MlString("10px"),w=new MlString("10px"),v=new MlString("inline"),u=new MlString("hidden"),t=new MlString("hidden"),s=new MlString("0px"),r=new MlString("Loading graph..."),q=new MlString("none"),p=new MlString("default"),o=new MlString("move"),n=[0,new MlString("viewer_js.ml"),87,26],m=new MlString("center"),l=new MlString("white");function k(j){throw [0,a,j];}function bS(bR){throw [0,b,bR];}function bV(bU,bT){return caml_lessequal(bU,bT)?bU:bT;}function bY(bX,bW){return caml_greaterequal(bX,bW)?bX:bW;}function b4(bZ,b1){var b0=bZ.getLen(),b2=b1.getLen(),b3=caml_create_string(b0+b2|0);caml_blit_string(bZ,0,b3,0,b0);caml_blit_string(b1,0,b3,b0,b2);return b3;}function b6(b5){return caml_format_int(bO,b5);}function b$(b_){var b7=caml_ml_out_channels_list(0);for(;;){if(b7){var b8=b7[2];try {}catch(b9){}var b7=b8;continue;}return 0;}}caml_register_named_value(bL,b$);function ch(ce,cb){var ca=0,cc=cb.length-1-1|0;if(!(cc<ca)){var cd=ca;for(;;){cf(ce,cd,cb[cd+1]);var cg=cd+1|0;if(cc!==cd){var cd=cg;continue;}break;}}return 0;}function cn(ci){var cj=ci,ck=0;for(;;){if(cj){var cl=cj[2],cm=[0,cj[1],ck],cj=cl,ck=cm;continue;}return ck;}}function cs(cp,co){if(co){var cr=co[2],ct=cq(cp,co[1]);return [0,ct,cs(cp,cr)];}return 0;}function cy(cw,cu){var cv=cu;for(;;){if(cv){var cx=cv[2];cq(cw,cv[1]);var cv=cx;continue;}return 0;}}function cC(cz,cB){var cA=caml_create_string(cz);caml_fill_string(cA,0,cz,cB);return cA;}function cH(cF,cD,cE){if(0<=cD&&0<=cE&&!((cF.getLen()-cE|0)<cD)){var cG=caml_create_string(cE);caml_blit_string(cF,cD,cG,0,cE);return cG;}return bS(bB);}function cN(cK,cJ,cM,cL,cI){if(0<=cI&&0<=cJ&&!((cK.getLen()-cI|0)<cJ)&&0<=cL&&!((cM.getLen()-cI|0)<cL))return caml_blit_string(cK,cJ,cM,cL,cI);return bS(bC);}function cY(cU,cO){if(cO){var cQ=cO[2],cP=cO[1],cR=[0,0],cS=[0,0];cy(function(cT){cR[1]+=1;cS[1]=cS[1]+cT.getLen()|0;return 0;},cO);var cV=caml_create_string(cS[1]+caml_mul(cU.getLen(),cR[1]-1|0)|0);caml_blit_string(cP,0,cV,0,cP.getLen());var cW=[0,cP.getLen()];cy(function(cX){caml_blit_string(cU,0,cV,cW[1],cU.getLen());cW[1]=cW[1]+cU.getLen()|0;caml_blit_string(cX,0,cV,cW[1],cX.getLen());cW[1]=cW[1]+cX.getLen()|0;return 0;},cQ);return cV;}return bD;}var cZ=caml_sys_get_config(0)[2],c0=caml_mul(cZ/8|0,(1<<(cZ-10|0))-1|0)-1|0,hL=248;function hK(dL){function c2(c1){return c1?c1[5]:0;}function c_(c3,c9,c8,c5){var c4=c2(c3),c6=c2(c5),c7=c6<=c4?c4+1|0:c6+1|0;return [0,c3,c9,c8,c5,c7];}function dC(da,c$){return [0,0,da,c$,0,1];}function dB(db,dl,dk,dd){var dc=db?db[5]:0,de=dd?dd[5]:0;if((de+2|0)<dc){if(db){var df=db[4],dg=db[3],dh=db[2],di=db[1],dj=c2(df);if(dj<=c2(di))return c_(di,dh,dg,c_(df,dl,dk,dd));if(df){var dp=df[3],dn=df[2],dm=df[1],dq=c_(df[4],dl,dk,dd);return c_(c_(di,dh,dg,dm),dn,dp,dq);}return bS(bw);}return bS(bv);}if((dc+2|0)<de){if(dd){var dr=dd[4],ds=dd[3],dt=dd[2],du=dd[1],dv=c2(du);if(dv<=c2(dr))return c_(c_(db,dl,dk,du),dt,ds,dr);if(du){var dy=du[3],dx=du[2],dw=du[1],dz=c_(du[4],dt,ds,dr);return c_(c_(db,dl,dk,dw),dx,dy,dz);}return bS(bu);}return bS(bt);}var dA=de<=dc?dc+1|0:de+1|0;return [0,db,dl,dk,dd,dA];}var dE=0;function dQ(dD){return dD?0:1;}function dP(dM,dO,dF){if(dF){var dH=dF[5],dG=dF[4],dI=dF[3],dJ=dF[2],dK=dF[1],dN=cf(dL[1],dM,dJ);return 0===dN?[0,dK,dM,dO,dG,dH]:0<=dN?dB(dK,dJ,dI,dP(dM,dO,dG)):dB(dP(dM,dO,dK),dJ,dI,dG);}return [0,0,dM,dO,0,1];}function d7(dT,dR){var dS=dR;for(;;){if(dS){var dX=dS[4],dW=dS[3],dV=dS[1],dU=cf(dL[1],dT,dS[2]);if(0===dU)return dW;var dY=0<=dU?dX:dV,dS=dY;continue;}throw [0,c];}}function ea(d1,dZ){var d0=dZ;for(;;){if(d0){var d4=d0[4],d3=d0[1],d2=cf(dL[1],d1,d0[2]),d5=0===d2?1:0;if(d5)return d5;var d6=0<=d2?d4:d3,d0=d6;continue;}return 0;}}function d$(d8){var d9=d8;for(;;){if(d9){var d_=d9[1];if(d_){var d9=d_;continue;}return [0,d9[2],d9[3]];}throw [0,c];}}function em(eb){var ec=eb;for(;;){if(ec){var ed=ec[4],ee=ec[3],ef=ec[2];if(ed){var ec=ed;continue;}return [0,ef,ee];}throw [0,c];}}function ei(eg){if(eg){var eh=eg[1];if(eh){var el=eg[4],ek=eg[3],ej=eg[2];return dB(ei(eh),ej,ek,el);}return eg[4];}return bS(bA);}function ey(es,en){if(en){var eo=en[4],ep=en[3],eq=en[2],er=en[1],et=cf(dL[1],es,eq);if(0===et){if(er)if(eo){var eu=d$(eo),ew=eu[2],ev=eu[1],ex=dB(er,ev,ew,ei(eo));}else var ex=er;else var ex=eo;return ex;}return 0<=et?dB(er,eq,ep,ey(es,eo)):dB(ey(es,er),eq,ep,eo);}return 0;}function eB(eC,ez){var eA=ez;for(;;){if(eA){var eF=eA[4],eE=eA[3],eD=eA[2];eB(eC,eA[1]);cf(eC,eD,eE);var eA=eF;continue;}return 0;}}function eH(eI,eG){if(eG){var eM=eG[5],eL=eG[4],eK=eG[3],eJ=eG[2],eN=eH(eI,eG[1]),eO=cq(eI,eK);return [0,eN,eJ,eO,eH(eI,eL),eM];}return 0;}function eU(eV,eP){if(eP){var eT=eP[5],eS=eP[4],eR=eP[3],eQ=eP[2],eW=eU(eV,eP[1]),eX=cf(eV,eQ,eR);return [0,eW,eQ,eX,eU(eV,eS),eT];}return 0;}function e2(e3,eY,e0){var eZ=eY,e1=e0;for(;;){if(eZ){var e6=eZ[4],e5=eZ[3],e4=eZ[2],e8=e7(e3,e4,e5,e2(e3,eZ[1],e1)),eZ=e6,e1=e8;continue;}return e1;}}function fd(e$,e9){var e_=e9;for(;;){if(e_){var fc=e_[4],fb=e_[1],fa=cf(e$,e_[2],e_[3]);if(fa){var fe=fd(e$,fb);if(fe){var e_=fc;continue;}var ff=fe;}else var ff=fa;return ff;}return 1;}}function fn(fi,fg){var fh=fg;for(;;){if(fh){var fl=fh[4],fk=fh[1],fj=cf(fi,fh[2],fh[3]);if(fj)var fm=fj;else{var fo=fn(fi,fk);if(!fo){var fh=fl;continue;}var fm=fo;}return fm;}return 0;}}function fR(fw,fB){function fz(fp,fr){var fq=fp,fs=fr;for(;;){if(fs){var fu=fs[4],ft=fs[3],fv=fs[2],fx=fs[1],fy=cf(fw,fv,ft)?dP(fv,ft,fq):fq,fA=fz(fy,fx),fq=fA,fs=fu;continue;}return fq;}}return fz(0,fB);}function f7(fL,fQ){function fO(fC,fE){var fD=fC,fF=fE;for(;;){var fG=fD[2],fH=fD[1];if(fF){var fJ=fF[4],fI=fF[3],fK=fF[2],fM=fF[1],fN=cf(fL,fK,fI)?[0,dP(fK,fI,fH),fG]:[0,fH,dP(fK,fI,fG)],fP=fO(fN,fM),fD=fP,fF=fJ;continue;}return fD;}}return fO(bx,fQ);}function f0(fS,f2,f1,fT){if(fS){if(fT){var fU=fT[5],fZ=fT[4],fY=fT[3],fX=fT[2],fW=fT[1],fV=fS[5],f3=fS[4],f4=fS[3],f5=fS[2],f6=fS[1];return (fU+2|0)<fV?dB(f6,f5,f4,f0(f3,f2,f1,fT)):(fV+2|0)<fU?dB(f0(fS,f2,f1,fW),fX,fY,fZ):c_(fS,f2,f1,fT);}return dP(f2,f1,fS);}return dP(f2,f1,fT);}function ge(f$,f_,f8,f9){if(f8)return f0(f$,f_,f8[1],f9);if(f$)if(f9){var ga=d$(f9),gc=ga[2],gb=ga[1],gd=f0(f$,gb,gc,ei(f9));}else var gd=f$;else var gd=f9;return gd;}function gm(gk,gf){if(gf){var gg=gf[4],gh=gf[3],gi=gf[2],gj=gf[1],gl=cf(dL[1],gk,gi);if(0===gl)return [0,gj,[0,gh],gg];if(0<=gl){var gn=gm(gk,gg),gp=gn[3],go=gn[2];return [0,f0(gj,gi,gh,gn[1]),go,gp];}var gq=gm(gk,gj),gs=gq[2],gr=gq[1];return [0,gr,gs,f0(gq[3],gi,gh,gg)];}return bz;}function gB(gC,gt,gy){if(gt){var gx=gt[5],gw=gt[4],gv=gt[3],gu=gt[2],gz=gt[1];if(c2(gy)<=gx){var gA=gm(gu,gy),gE=gA[2],gD=gA[1],gF=gB(gC,gw,gA[3]),gG=e7(gC,gu,[0,gv],gE);return ge(gB(gC,gz,gD),gu,gG,gF);}}else if(!gy)return 0;if(gy){var gJ=gy[4],gI=gy[3],gH=gy[2],gL=gy[1],gK=gm(gH,gt),gN=gK[2],gM=gK[1],gO=gB(gC,gK[3],gJ),gP=e7(gC,gH,gN,[0,gI]);return ge(gB(gC,gM,gL),gH,gP,gO);}throw [0,d,by];}function gW(gQ,gS){var gR=gQ,gT=gS;for(;;){if(gR){var gU=gR[1],gV=[0,gR[2],gR[3],gR[4],gT],gR=gU,gT=gV;continue;}return gT;}}function hu(g9,gY,gX){var gZ=gW(gX,0),g0=gW(gY,0),g1=gZ;for(;;){if(g0)if(g1){var g8=g1[4],g7=g1[3],g6=g1[2],g5=g0[4],g4=g0[3],g3=g0[2],g2=cf(dL[1],g0[1],g1[1]);if(0===g2){var g_=cf(g9,g3,g6);if(0===g_){var g$=gW(g7,g8),ha=gW(g4,g5),g0=ha,g1=g$;continue;}var hb=g_;}else var hb=g2;}else var hb=1;else var hb=g1?-1:0;return hb;}}function hz(ho,hd,hc){var he=gW(hc,0),hf=gW(hd,0),hg=he;for(;;){if(hf)if(hg){var hm=hg[4],hl=hg[3],hk=hg[2],hj=hf[4],hi=hf[3],hh=hf[2],hn=0===cf(dL[1],hf[1],hg[1])?1:0;if(hn){var hp=cf(ho,hh,hk);if(hp){var hq=gW(hl,hm),hr=gW(hi,hj),hf=hr,hg=hq;continue;}var hs=hp;}else var hs=hn;var ht=hs;}else var ht=0;else var ht=hg?0:1;return ht;}}function hw(hv){if(hv){var hx=hv[1],hy=hw(hv[4]);return (hw(hx)+1|0)+hy|0;}return 0;}function hE(hA,hC){var hB=hA,hD=hC;for(;;){if(hD){var hH=hD[3],hG=hD[2],hF=hD[1],hI=[0,[0,hG,hH],hE(hB,hD[4])],hB=hI,hD=hF;continue;}return hB;}}return [0,dE,dQ,ea,dP,dC,ey,gB,hu,hz,eB,e2,fd,fn,fR,f7,hw,function(hJ){return hE(0,hJ);},d$,em,d$,gm,d7,eH,eU];}function hQ(hM){var hN=1<=hM?hM:1,hO=c0<hN?c0:hN,hP=caml_create_string(hO);return [0,hP,0,hO,hP];}function hS(hR){return cH(hR[1],0,hR[2]);}function hX(hT,hV){var hU=[0,hT[3]];for(;;){if(hU[1]<(hT[2]+hV|0)){hU[1]=2*hU[1]|0;continue;}if(c0<hU[1])if((hT[2]+hV|0)<=c0)hU[1]=c0;else k(bs);var hW=caml_create_string(hU[1]);cN(hT[1],0,hW,0,hT[2]);hT[1]=hW;hT[3]=hU[1];return 0;}}function h1(hY,h0){var hZ=hY[2];if(hY[3]<=hZ)hX(hY,1);hY[1].safeSet(hZ,h0);hY[2]=hZ+1|0;return 0;}function h6(h4,h2){var h3=h2.getLen(),h5=h4[2]+h3|0;if(h4[3]<h5)hX(h4,h3);cN(h2,0,h4[1],h4[2],h3);h4[2]=h5;return 0;}function h8(h7){return 0<=h7?h7:k(b4(ba,b6(h7)));}function h$(h9,h_){return h8(h9+h_|0);}var ia=cq(h$,1);function ic(ib){return cH(ib,0,ib.getLen());}function ij(id,ie,ih){var ig=b4(bd,b4(id,be)),ii=b4(bc,b4(b6(ie),ig));return bS(b4(bb,b4(cC(1,ih),ii)));}function io(ik,im,il){return ij(ic(ik),im,il);}function iq(ip){return bS(b4(bf,b4(ic(ip),bg)));}function iL(ir,iz,iB,iD){function iy(is){if((ir.safeGet(is)-48|0)<0||9<(ir.safeGet(is)-48|0))return is;var it=is+1|0;for(;;){var iu=ir.safeGet(it);if(48<=iu){if(!(58<=iu)){var iw=it+1|0,it=iw;continue;}var iv=0;}else if(36===iu){var ix=it+1|0,iv=1;}else var iv=0;if(!iv)var ix=is;return ix;}}var iA=iy(iz+1|0),iC=hQ((iB-iA|0)+10|0);h1(iC,37);var iF=cn(iD),iE=iA,iG=iF;for(;;){if(iE<=iB){var iH=ir.safeGet(iE);if(42===iH){if(iG){var iI=iG[2];h6(iC,b6(iG[1]));var iJ=iy(iE+1|0),iE=iJ,iG=iI;continue;}throw [0,d,bh];}h1(iC,iH);var iK=iE+1|0,iE=iK;continue;}return hS(iC);}}function iS(iR,iP,iO,iN,iM){var iQ=iL(iP,iO,iN,iM);if(78!==iR&&110!==iR)return iQ;iQ.safeSet(iQ.getLen()-1|0,117);return iQ;}function jd(iZ,i9,jb,iT,ja){var iU=iT.getLen();function i_(iV,i8){var iW=40===iV?41:125;function i7(iX){var iY=iX;for(;;){if(iU<=iY)return cq(iZ,iT);if(37===iT.safeGet(iY)){var i0=iY+1|0;if(iU<=i0)var i1=cq(iZ,iT);else{var i2=iT.safeGet(i0),i3=i2-40|0;if(i3<0||1<i3){var i4=i3-83|0;if(i4<0||2<i4)var i5=1;else switch(i4){case 1:var i5=1;break;case 2:var i6=1,i5=0;break;default:var i6=0,i5=0;}if(i5){var i1=i7(i0+1|0),i6=2;}}else var i6=0===i3?0:1;switch(i6){case 1:var i1=i2===iW?i0+1|0:e7(i9,iT,i8,i2);break;case 2:break;default:var i1=i7(i_(i2,i0+1|0)+1|0);}}return i1;}var i$=iY+1|0,iY=i$;continue;}}return i7(i8);}return i_(jb,ja);}function je(jc){return e7(jd,iq,io,jc);}function jI(jf,jq,jA){var jg=jf.getLen()-1|0;function jB(jh){var ji=jh;a:for(;;){if(ji<jg){if(37===jf.safeGet(ji)){var jj=0,jk=ji+1|0;for(;;){if(jg<jk)var jl=iq(jf);else{var jm=jf.safeGet(jk);if(58<=jm){if(95===jm){var jo=jk+1|0,jn=1,jj=jn,jk=jo;continue;}}else if(32<=jm)switch(jm-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 jp=jk+1|0,jk=jp;continue;case 10:var jr=e7(jq,jj,jk,105),jk=jr;continue;default:var js=jk+1|0,jk=js;continue;}var jt=jk;c:for(;;){if(jg<jt)var ju=iq(jf);else{var jv=jf.safeGet(jt);if(126<=jv)var jw=0;else switch(jv){case 78:case 88:case 100:case 105:case 111:case 117:case 120:var ju=e7(jq,jj,jt,105),jw=1;break;case 69:case 70:case 71:case 101:case 102:case 103:var ju=e7(jq,jj,jt,102),jw=1;break;case 33:case 37:case 44:var ju=jt+1|0,jw=1;break;case 83:case 91:case 115:var ju=e7(jq,jj,jt,115),jw=1;break;case 97:case 114:case 116:var ju=e7(jq,jj,jt,jv),jw=1;break;case 76:case 108:case 110:var jx=jt+1|0;if(jg<jx){var ju=e7(jq,jj,jt,105),jw=1;}else{var jy=jf.safeGet(jx)-88|0;if(jy<0||32<jy)var jz=1;else switch(jy){case 0:case 12:case 17:case 23:case 29:case 32:var ju=cf(jA,e7(jq,jj,jt,jv),105),jw=1,jz=0;break;default:var jz=1;}if(jz){var ju=e7(jq,jj,jt,105),jw=1;}}break;case 67:case 99:var ju=e7(jq,jj,jt,99),jw=1;break;case 66:case 98:var ju=e7(jq,jj,jt,66),jw=1;break;case 41:case 125:var ju=e7(jq,jj,jt,jv),jw=1;break;case 40:var ju=jB(e7(jq,jj,jt,jv)),jw=1;break;case 123:var jC=e7(jq,jj,jt,jv),jD=e7(je,jv,jf,jC),jE=jC;for(;;){if(jE<(jD-2|0)){var jF=cf(jA,jE,jf.safeGet(jE)),jE=jF;continue;}var jG=jD-1|0,jt=jG;continue c;}default:var jw=0;}if(!jw)var ju=io(jf,jt,jv);}var jl=ju;break;}}var ji=jl;continue a;}}var jH=ji+1|0,ji=jH;continue;}return ji;}}jB(0);return 0;}function jU(jT){var jJ=[0,0,0,0];function jS(jO,jP,jK){var jL=41!==jK?1:0,jM=jL?125!==jK?1:0:jL;if(jM){var jN=97===jK?2:1;if(114===jK)jJ[3]=jJ[3]+1|0;if(jO)jJ[2]=jJ[2]+jN|0;else jJ[1]=jJ[1]+jN|0;}return jP+1|0;}jI(jT,jS,function(jQ,jR){return jQ+1|0;});return jJ[1];}function j7(jV,jY,j6,jW){var jX=jV.safeGet(jW);if((jX-48|0)<0||9<(jX-48|0))return cf(jY,0,jW);var jZ=jX-48|0,j0=jW+1|0;for(;;){var j1=jV.safeGet(j0);if(48<=j1){if(!(58<=j1)){var j4=j0+1|0,j3=(10*jZ|0)+(j1-48|0)|0,jZ=j3,j0=j4;continue;}var j2=0;}else if(36===j1)if(0===jZ){var j5=k(bj),j2=1;}else{var j5=cf(jY,[0,h8(jZ-1|0)],j0+1|0),j2=1;}else var j2=0;if(!j2)var j5=cf(jY,0,jW);return j5;}}function j_(j8,j9){return j8?j9:cq(ia,j9);}function kb(j$,ka){return j$?j$[1]:ka;}function nd(me,kd,mq,mf,lU,mw,kc){var ke=cq(kd,kc);function lT(kj,mv,kf,kn){var ki=kf.getLen();function lQ(mn,kg){var kh=kg;for(;;){if(ki<=kh)return cq(kj,ke);var kk=kf.safeGet(kh);if(37===kk){var ko=function(km,kl){return caml_array_get(kn,kb(km,kl));},kw=function(ky,ks,ku,kp){var kq=kp;for(;;){var kr=kf.safeGet(kq)-32|0;if(!(kr<0||25<kr))switch(kr){case 1:case 2:case 4:case 5:case 6:case 7:case 8:case 9:case 12:case 15:break;case 10:return j7(kf,function(kt,kx){var kv=[0,ko(kt,ks),ku];return kw(ky,j_(kt,ks),kv,kx);},ks,kq+1|0);default:var kz=kq+1|0,kq=kz;continue;}var kA=kf.safeGet(kq);if(124<=kA)var kB=0;else switch(kA){case 78:case 88:case 100:case 105:case 111:case 117:case 120:var kC=ko(ky,ks),kD=caml_format_int(iS(kA,kf,kh,kq,ku),kC),kF=kE(j_(ky,ks),kD,kq+1|0),kB=1;break;case 69:case 71:case 101:case 102:case 103:var kG=ko(ky,ks),kH=caml_format_float(iL(kf,kh,kq,ku),kG),kF=kE(j_(ky,ks),kH,kq+1|0),kB=1;break;case 76:case 108:case 110:var kI=kf.safeGet(kq+1|0)-88|0;if(kI<0||32<kI)var kJ=1;else switch(kI){case 0:case 12:case 17:case 23:case 29:case 32:var kK=kq+1|0,kL=kA-108|0;if(kL<0||2<kL)var kM=0;else{switch(kL){case 1:var kM=0,kN=0;break;case 2:var kO=ko(ky,ks),kP=caml_format_int(iL(kf,kh,kK,ku),kO),kN=1;break;default:var kQ=ko(ky,ks),kP=caml_format_int(iL(kf,kh,kK,ku),kQ),kN=1;}if(kN){var kR=kP,kM=1;}}if(!kM){var kS=ko(ky,ks),kR=caml_int64_format(iL(kf,kh,kK,ku),kS);}var kF=kE(j_(ky,ks),kR,kK+1|0),kB=1,kJ=0;break;default:var kJ=1;}if(kJ){var kT=ko(ky,ks),kU=caml_format_int(iS(110,kf,kh,kq,ku),kT),kF=kE(j_(ky,ks),kU,kq+1|0),kB=1;}break;case 83:case 115:var kV=ko(ky,ks);if(115===kA)var kW=kV;else{var kX=[0,0],kY=0,kZ=kV.getLen()-1|0;if(!(kZ<kY)){var k0=kY;for(;;){var k1=kV.safeGet(k0),k2=14<=k1?34===k1?1:92===k1?1:0:11<=k1?13<=k1?1:0:8<=k1?1:0,k3=k2?2:caml_is_printable(k1)?1:4;kX[1]=kX[1]+k3|0;var k4=k0+1|0;if(kZ!==k0){var k0=k4;continue;}break;}}if(kX[1]===kV.getLen())var k5=kV;else{var k6=caml_create_string(kX[1]);kX[1]=0;var k7=0,k8=kV.getLen()-1|0;if(!(k8<k7)){var k9=k7;for(;;){var k_=kV.safeGet(k9),k$=k_-34|0;if(k$<0||58<k$)if(-20<=k$)var la=1;else{switch(k$+34|0){case 8:k6.safeSet(kX[1],92);kX[1]+=1;k6.safeSet(kX[1],98);var lb=1;break;case 9:k6.safeSet(kX[1],92);kX[1]+=1;k6.safeSet(kX[1],116);var lb=1;break;case 10:k6.safeSet(kX[1],92);kX[1]+=1;k6.safeSet(kX[1],110);var lb=1;break;case 13:k6.safeSet(kX[1],92);kX[1]+=1;k6.safeSet(kX[1],114);var lb=1;break;default:var la=1,lb=0;}if(lb)var la=0;}else var la=(k$-1|0)<0||56<(k$-1|0)?(k6.safeSet(kX[1],92),kX[1]+=1,k6.safeSet(kX[1],k_),0):1;if(la)if(caml_is_printable(k_))k6.safeSet(kX[1],k_);else{k6.safeSet(kX[1],92);kX[1]+=1;k6.safeSet(kX[1],48+(k_/100|0)|0);kX[1]+=1;k6.safeSet(kX[1],48+((k_/10|0)%10|0)|0);kX[1]+=1;k6.safeSet(kX[1],48+(k_%10|0)|0);}kX[1]+=1;var lc=k9+1|0;if(k8!==k9){var k9=lc;continue;}break;}}var k5=k6;}var kW=b4(bn,b4(k5,bo));}if(kq===(kh+1|0))var ld=kW;else{var le=iL(kf,kh,kq,ku);try {var lf=0,lg=1;for(;;){if(le.getLen()<=lg)var lh=[0,0,lf];else{var li=le.safeGet(lg);if(49<=li)if(58<=li)var lj=0;else{var lh=[0,caml_int_of_string(cH(le,lg,(le.getLen()-lg|0)-1|0)),lf],lj=1;}else{if(45===li){var ll=lg+1|0,lk=1,lf=lk,lg=ll;continue;}var lj=0;}if(!lj){var lm=lg+1|0,lg=lm;continue;}}var ln=lh;break;}}catch(lo){if(lo[1]!==a)throw lo;var ln=ij(le,0,115);}var lq=ln[2],lp=ln[1],lr=kW.getLen(),ls=0,lv=32;if(lp===lr&&0===ls){var lt=kW,lu=1;}else var lu=0;if(!lu)if(lp<=lr)var lt=cH(kW,ls,lr);else{var lw=cC(lp,lv);if(lq)cN(kW,ls,lw,0,lr);else cN(kW,ls,lw,lp-lr|0,lr);var lt=lw;}var ld=lt;}var kF=kE(j_(ky,ks),ld,kq+1|0),kB=1;break;case 67:case 99:var lx=ko(ky,ks);if(99===kA)var ly=cC(1,lx);else{if(39===lx)var lz=bE;else if(92===lx)var lz=bF;else{if(14<=lx)var lA=0;else switch(lx){case 8:var lz=bJ,lA=1;break;case 9:var lz=bI,lA=1;break;case 10:var lz=bH,lA=1;break;case 13:var lz=bG,lA=1;break;default:var lA=0;}if(!lA)if(caml_is_printable(lx)){var lB=caml_create_string(1);lB.safeSet(0,lx);var lz=lB;}else{var lC=caml_create_string(4);lC.safeSet(0,92);lC.safeSet(1,48+(lx/100|0)|0);lC.safeSet(2,48+((lx/10|0)%10|0)|0);lC.safeSet(3,48+(lx%10|0)|0);var lz=lC;}}var ly=b4(bl,b4(lz,bm));}var kF=kE(j_(ky,ks),ly,kq+1|0),kB=1;break;case 66:case 98:var lE=kq+1|0,lD=ko(ky,ks)?bN:bM,kF=kE(j_(ky,ks),lD,lE),kB=1;break;case 40:case 123:var lF=ko(ky,ks),lG=e7(je,kA,kf,kq+1|0);if(123===kA){var lH=hQ(lF.getLen()),lK=function(lJ,lI){h1(lH,lI);return lJ+1|0;};jI(lF,function(lL,lN,lM){if(lL)h6(lH,bi);else h1(lH,37);return lK(lN,lM);},lK);var lO=hS(lH),kF=kE(j_(ky,ks),lO,lG),kB=1;}else{var lP=j_(ky,ks),lR=h$(jU(lF),lP),kF=lT(function(lS){return lQ(lR,lG);},lP,lF,kn),kB=1;}break;case 33:cq(lU,ke);var kF=lQ(ks,kq+1|0),kB=1;break;case 37:var kF=kE(ks,br,kq+1|0),kB=1;break;case 41:var kF=kE(ks,bq,kq+1|0),kB=1;break;case 44:var kF=kE(ks,bp,kq+1|0),kB=1;break;case 70:var lV=ko(ky,ks);if(0===ku){var lW=caml_format_float(bQ,lV),lX=0,lY=lW.getLen();for(;;){if(lY<=lX)var lZ=b4(lW,bP);else{var l0=lW.safeGet(lX),l1=48<=l0?58<=l0?0:1:45===l0?1:0;if(l1){var l2=lX+1|0,lX=l2;continue;}var lZ=lW;}var l3=lZ;break;}}else{var l4=iL(kf,kh,kq,ku);if(70===kA)l4.safeSet(l4.getLen()-1|0,103);var l5=caml_format_float(l4,lV);if(3<=caml_classify_float(lV))var l6=l5;else{var l7=0,l8=l5.getLen();for(;;){if(l8<=l7)var l9=b4(l5,bk);else{var l_=l5.safeGet(l7)-46|0,l$=l_<0||23<l_?55===l_?1:0:(l_-1|0)<0||21<(l_-1|0)?1:0;if(!l$){var ma=l7+1|0,l7=ma;continue;}var l9=l5;}var l6=l9;break;}}var l3=l6;}var kF=kE(j_(ky,ks),l3,kq+1|0),kB=1;break;case 97:var mb=ko(ky,ks),mc=cq(ia,kb(ky,ks)),md=ko(0,mc),mh=kq+1|0,mg=j_(ky,mc);if(me)cf(mf,ke,cf(mb,0,md));else cf(mb,ke,md);var kF=lQ(mg,mh),kB=1;break;case 116:var mi=ko(ky,ks),mk=kq+1|0,mj=j_(ky,ks);if(me)cf(mf,ke,cq(mi,0));else cq(mi,ke);var kF=lQ(mj,mk),kB=1;break;default:var kB=0;}if(!kB)var kF=io(kf,kq,kA);return kF;}},mp=kh+1|0,mm=0;return j7(kf,function(mo,ml){return kw(mo,mn,mm,ml);},mn,mp);}cf(mq,ke,kk);var mr=kh+1|0,kh=mr;continue;}}function kE(mu,ms,mt){cf(mf,ke,ms);return lQ(mu,mt);}return lQ(mv,0);}var mx=cf(lT,mw,h8(0)),my=jU(kc);if(my<0||6<my){var mL=function(mz,mF){if(my<=mz){var mA=caml_make_vect(my,0),mD=function(mB,mC){return caml_array_set(mA,(my-mB|0)-1|0,mC);},mE=0,mG=mF;for(;;){if(mG){var mH=mG[2],mI=mG[1];if(mH){mD(mE,mI);var mJ=mE+1|0,mE=mJ,mG=mH;continue;}mD(mE,mI);}return cf(mx,kc,mA);}}return function(mK){return mL(mz+1|0,[0,mK,mF]);};},mM=mL(0,0);}else switch(my){case 1:var mM=function(mO){var mN=caml_make_vect(1,0);caml_array_set(mN,0,mO);return cf(mx,kc,mN);};break;case 2:var mM=function(mQ,mR){var mP=caml_make_vect(2,0);caml_array_set(mP,0,mQ);caml_array_set(mP,1,mR);return cf(mx,kc,mP);};break;case 3:var mM=function(mT,mU,mV){var mS=caml_make_vect(3,0);caml_array_set(mS,0,mT);caml_array_set(mS,1,mU);caml_array_set(mS,2,mV);return cf(mx,kc,mS);};break;case 4:var mM=function(mX,mY,mZ,m0){var mW=caml_make_vect(4,0);caml_array_set(mW,0,mX);caml_array_set(mW,1,mY);caml_array_set(mW,2,mZ);caml_array_set(mW,3,m0);return cf(mx,kc,mW);};break;case 5:var mM=function(m2,m3,m4,m5,m6){var m1=caml_make_vect(5,0);caml_array_set(m1,0,m2);caml_array_set(m1,1,m3);caml_array_set(m1,2,m4);caml_array_set(m1,3,m5);caml_array_set(m1,4,m6);return cf(mx,kc,m1);};break;case 6:var mM=function(m8,m9,m_,m$,na,nb){var m7=caml_make_vect(6,0);caml_array_set(m7,0,m8);caml_array_set(m7,1,m9);caml_array_set(m7,2,m_);caml_array_set(m7,3,m$);caml_array_set(m7,4,na);caml_array_set(m7,5,nb);return cf(mx,kc,m7);};break;default:var mM=cf(mx,kc,[0]);}return mM;}function nh(nc){return hQ(2*nc.getLen()|0);}function nj(ng,ne){var nf=hS(ne);ne[2]=0;return cq(ng,nf);}function np(ni){var nl=cq(nj,ni);return nm(nd,1,nh,h1,h6,function(nk){return 0;},nl);}function nr(no){return cf(np,function(nn){return nn;},no);}var nq=[0,0];32===cZ;var ns=[0,0],nB=2;function nA(nv){var nt=[0,0],nu=0,nw=nv.getLen()-1|0;if(!(nw<nu)){var nx=nu;for(;;){nt[1]=(223*nt[1]|0)+nv.safeGet(nx)|0;var ny=nx+1|0;if(nw!==nx){var nx=ny;continue;}break;}}nt[1]=nt[1]&((1<<31)-1|0);var nz=1073741823<nt[1]?nt[1]-(1<<31)|0:nt[1];return nz;}var nE=hK([0,function(nD,nC){return caml_compare(nD,nC);}]),nH=hK([0,function(nG,nF){return caml_compare(nG,nF);}]),nK=hK([0,function(nJ,nI){return caml_compare(nJ,nI);}]),nL=caml_obj_block(0,0),nO=[0,0];function nN(nM){return 2<nM?nN((nM+1|0)/2|0)*2|0:nM;}function nW(nP){nO[1]+=1;var nQ=nP.length-1,nR=caml_make_vect((nQ*2|0)+2|0,nL);caml_array_set(nR,0,nQ);caml_array_set(nR,1,(caml_mul(nN(nQ),cZ)/8|0)-1|0);var nS=0,nT=nQ-1|0;if(!(nT<nS)){var nU=nS;for(;;){caml_array_set(nR,(nU*2|0)+3|0,caml_array_get(nP,nU));var nV=nU+1|0;if(nT!==nU){var nU=nV;continue;}break;}}return [0,nB,nR,nH[1],nK[1],0,0,nE[1],0];}function od(nX,nZ){var nY=nX[2].length-1,n0=nY<nZ?1:0;if(n0){var n1=caml_make_vect(nZ,nL),n2=0,n3=0,n4=nX[2];if(0<=nY&&0<=n3&&!((n4.length-1-nY|0)<n3||!(0<=n2&&!((n1.length-1-nY|0)<n2))))if(n3<n2){var n6=nY-1|0,n7=0;if(!(n6<n7)){var n8=n6;for(;;){n1[(n2+n8|0)+1]=n4[(n3+n8|0)+1];var n9=n8-1|0;if(n7!==n8){var n8=n9;continue;}break;}}var n5=1;}else{var n_=0,n$=nY-1|0;if(!(n$<n_)){var oa=n_;for(;;){n1[(n2+oa|0)+1]=n4[(n3+oa|0)+1];var ob=oa+1|0;if(n$!==oa){var oa=ob;continue;}break;}}var n5=1;}else var n5=0;if(!n5)bS(bK);nX[2]=n1;var oc=0;}else var oc=n0;return oc;}var oe=[0,0],oi=[0,0];function oh(of){var og=of[2].length-1;od(of,og+1|0);return og;}function on(oj){var ok=oh(oj);if(0===(ok%2|0)||(2+caml_div(caml_array_get(oj[2],1)*16|0,cZ)|0)<ok)var ol=0;else{var om=oh(oj),ol=1;}if(!ol)var om=ok;caml_array_set(oj[2],om,0);return om;}function oq(op){var oo=[];caml_update_dummy(oo,[0,oo,oo]);return oo;}var or=[0,a1],ou=42,ov=[0,hK([0,function(ot,os){return caml_compare(ot,os);}])[1]];function oz(ow){var ox=ow[1];{if(3===ox[0]){var oy=ox[1],oA=oz(oy);if(oA!==oy)ow[1]=[3,oA];return oA;}return ow;}}function oC(oB){return oz(oB);}function oV(oD,oI){var oF=ov[1],oE=oD,oG=0;for(;;){if(typeof oE==="number"){if(oG){var oU=oG[2],oT=oG[1],oE=oT,oG=oU;continue;}}else switch(oE[0]){case 1:var oH=oE[1];if(oG){var oK=oG[2],oJ=oG[1];cq(oH,oI);var oE=oJ,oG=oK;continue;}cq(oH,oI);break;case 2:var oL=oE[1],oM=[0,oE[2],oG],oE=oL,oG=oM;continue;default:var oN=oE[1][1];if(oN){var oO=oN[1];if(oG){var oQ=oG[2],oP=oG[1];cq(oO,oI);var oE=oP,oG=oQ;continue;}cq(oO,oI);}else if(oG){var oS=oG[2],oR=oG[1],oE=oR,oG=oS;continue;}}ov[1]=oF;return 0;}}function o2(oW,oZ){var oX=oz(oW),oY=oX[1];switch(oY[0]){case 1:if(oY[1][1]===or)return 0;break;case 2:var o1=oY[1][2],o0=[0,oZ];oX[1]=o0;return oV(o1,o0);default:}return bS(a2);}var o7=[0,function(o3){return 0;}];function o6(o4,o5){return typeof o4==="number"?o5:typeof o5==="number"?o4:[2,o4,o5];}function o9(o8){if(typeof o8!=="number")switch(o8[0]){case 2:var o_=o8[1],o$=o9(o8[2]);return o6(o9(o_),o$);case 1:break;default:if(!o8[1][1])return 0;}return o8;}function pf(pa,pd){var pb=oC(pa),pc=pb[1];{if(2===pc[0]){var pe=pc[1][2];pb[1]=pd;return oV(pe,pd);}return bS(a5);}}function ph(pg){return [0,[0,pg]];}function pj(pi){return [0,[1,pi]];}function pl(pk){return [0,[2,[0,pk,0,0]]];}function pw(pv){var pm=[],pu=0,pt=0;caml_update_dummy(pm,[0,[2,[0,[0,[0,function(ps){var pn=oz(pm),po=pn[1];if(2===po[0]){var pq=po[1][2],pp=[1,[0,or]];pn[1]=pp;var pr=oV(pq,pp);}else var pr=0;return pr;}]],pt,pu]]]);return [0,pm,pm];}function pA(px,py){var pz=typeof px[2]==="number"?[1,py]:[2,[1,py],px[2]];px[2]=pz;return 0;}function pJ(pB,pD){var pC=oC(pB)[1];switch(pC[0]){case 1:if(pC[1][1]===or)return cq(pD,0);break;case 2:var pI=pC[1],pF=ov[1];return pA(pI,function(pE){if(1===pE[0]&&pE[1][1]===or){ov[1]=pF;try {var pG=cq(pD,0);}catch(pH){return 0;}return pG;}return 0;});default:}return 0;}function p4(pK,pR){var pL=oC(pK)[1];switch(pL[0]){case 1:return pj(pL[1]);case 2:var pM=pL[1],pN=pl(pM[1]),pP=ov[1];pA(pM,function(pO){switch(pO[0]){case 0:var pQ=pO[1];ov[1]=pP;try {var pS=cq(pR,pQ),pT=pS;}catch(pU){var pT=pj(pU);}var pV=oC(pN),pW=oC(pT),pX=pV[1];if(2===pX[0]){var pY=pX[1];if(pV===pW)var pZ=0;else{var p0=pW[1];if(2===p0[0]){var p1=p0[1];pW[1]=[3,pV];pY[1][1]=[1,p1[1]];var p2=o6(pY[2],p1[2]),p3=pY[3]+p1[3]|0,pZ=ou<p3?(pY[3]=0,pY[2]=o9(p2),0):(pY[3]=p3,pY[2]=p2,0);}else{pV[1]=p0;var pZ=oV(pY[2],p0);}}}else var pZ=bS(a4);return pZ;case 1:return pf(pN,[1,pO[1]]);default:throw [0,d,a7];}});return pN;case 3:throw [0,d,a6];default:return cq(pR,pL[1]);}}function qf(p5,qb){var p6=oC(p5)[1];switch(p6[0]){case 1:var p7=[0,[1,p6[1]]];break;case 2:var p8=p6[1],p9=pl(p8[1]),p$=ov[1];pA(p8,function(p_){switch(p_[0]){case 0:var qa=p_[1];ov[1]=p$;try {var qc=[0,cq(qb,qa)],qd=qc;}catch(qe){var qd=[1,qe];}return pf(p9,qd);case 1:return pf(p9,[1,p_[1]]);default:throw [0,d,a9];}});var p7=p9;break;case 3:throw [0,d,a8];default:var p7=ph(cq(qb,p6[1]));}return p7;}var qg=[0],qh=[0,caml_make_vect(55,0),0],qi=caml_equal(qg,[0])?[0,0]:qg,qj=qi.length-1,qk=0,ql=54;if(!(ql<qk)){var qm=qk;for(;;){caml_array_set(qh[1],qm,qm);var qn=qm+1|0;if(ql!==qm){var qm=qn;continue;}break;}}var qo=[0,a$],qp=0,qq=54+bY(55,qj)|0;if(!(qq<qp)){var qr=qp;for(;;){var qs=qr%55|0,qt=qo[1],qu=b4(qt,b6(caml_array_get(qi,caml_mod(qr,qj))));qo[1]=caml_md5_string(qu,0,qu.getLen());var qv=qo[1];caml_array_set(qh[1],qs,caml_array_get(qh[1],qs)^(((qv.safeGet(0)+(qv.safeGet(1)<<8)|0)+(qv.safeGet(2)<<16)|0)+(qv.safeGet(3)<<24)|0));var qw=qr+1|0;if(qq!==qr){var qr=qw;continue;}break;}}qh[2]=0;var qz=[0,function(qx){return 0;}],qy=oq(0),qB=[0,0];function qL(qE){if(qy[2]===qy)return 0;var qA=oq(0);qA[1][2]=qy[2];qy[2][1]=qA[1];qA[1]=qy[1];qy[1][2]=qA;qy[1]=qy;qy[2]=qy;qB[1]=0;var qC=qA[2];for(;;){if(qC!==qA){if(qC[4])o2(qC[3],0);var qD=qC[2],qC=qD;continue;}return 0;}}function qI(qG,qF){if(qF){var qH=qF[2],qK=cq(qG,qF[1]);return p4(qK,function(qJ){return qI(qG,qH);});}return ph(0);}var qM=null,qN=undefined;function qR(qO,qP,qQ){return qO==qM?cq(qP,0):cq(qQ,qO);}function qW(qV){function qU(qS){return [0,qS];}return qR(qV,function(qT){return 0;},qU);}function qY(qX){return qX!==qN?1:0;}function q2(qZ,q0,q1){return qZ===qN?cq(q0,0):cq(q1,qZ);}function q5(q3,q4){return q3===qN?cq(q4,0):q3;}function q_(q9){function q8(q6){return [0,q6];}return q2(q9,function(q7){return 0;},q8);}var q$=true,ra=false,rb=RegExp,rc=Array;function rf(rd,re){return rd[re];}var ri=Math;function rh(rg){return escape(rg);}nq[1]=[0,function(rj){return rj instanceof rc?0:[0,new MlWrappedString(rj.toString())];},nq[1]];function rl(rk){return rk;}function rn(rm){return rm;}function rq(ro,rp){ro.appendChild(rp);return 0;}var rr=caml_js_on_ie(0)|0;function rx(rt){return rn(caml_js_wrap_callback(function(rs){if(rs){var ru=cq(rt,rs);if(!(ru|0))rs.preventDefault();return ru;}var rv=event,rw=cq(rt,rv);rv.returnValue=rw;return rw;}));}var rP=aS.toString(),rO=aR.toString(),rN=aQ.toString(),rM=aP.toString();function rL(ry,rz,rC,rJ){if(ry.addEventListener===qN){var rA=aT.toString().concat(rz),rH=function(rB){var rG=[0,rC,rB,[0]];return cq(function(rF,rE,rD){return caml_js_call(rF,rE,rD);},rG);};ry.attachEvent(rA,rH);return function(rI){return ry.detachEvent(rA,rH);};}ry.addEventListener(rz,rC,rJ);return function(rK){return ry.removeEventListener(rz,rC,rJ);};}function rR(rQ){return cq(rQ,0);}var rS=aO.toString(),rT=window,rU=rT.document;function rX(rW,rV){return rW.createElement(rV.toString());}function rZ(rY){return rX(rY,aU);}var r2=[0,aN];function r3(r0){var r1=rX(r0,aW);if(1-(r1.getContext==qM?1:0))return r1;throw [0,r2];}rl(window.HTMLElement)===qN;function sb(r4){var r5=r4.getBoundingClientRect(),r6=rU.body,r7=rU.documentElement,r8=r7.clientTop,r9=r6.clientTop,r_=((r5.top|0)-r9|0)-r8|0,r$=r7.clientLeft,sa=r6.clientLeft;return [0,((r5.left|0)-sa|0)-r$|0,r_];}function sk(sf){var sc=pw(0),se=sc[2],sd=sc[1],sh=sf*1000,si=rT.setTimeout(caml_js_wrap_callback(function(sg){return o2(se,0);}),sh);pJ(sd,function(sj){return rT.clearTimeout(si);});return sd;}qz[1]=function(sl){return 1===sl?(rT.setTimeout(caml_js_wrap_callback(qL),0),0):0;};function so(sm){var sn=aK.toString();return new rb(caml_js_from_byte_string(sm),sn);}var sp=new rb(aI.toString(),aJ.toString()),sr=so(aH),sq=rT.location;function su(ss,st){return st.split(cC(1,ss).toString());}var sv=[0,aB];function sx(sw){throw [0,sv];}var sy=so(caml_js_to_byte_string(caml_js_from_byte_string(aA).replace(sr,aM.toString())));function sA(sz){return caml_js_to_byte_string(unescape(sz));}function sG(sB,sD){var sC=sB?sB[1]:1;if(sC){var sE=caml_js_to_byte_string(rh(caml_js_from_byte_string(sD)));sy.lastIndex=0;var sF=caml_js_from_byte_string(sE);return caml_js_to_byte_string(sF.replace(sy,caml_js_from_byte_string(aC).replace(sp,aL.toString())));}return caml_js_to_byte_string(rh(caml_js_from_byte_string(sD)));}function sN(sH){try {var sI=sH.getLen();if(0===sI)var sJ=aG;else{var sK=0,sM=47,sL=sH.getLen();for(;;){if(sL<=sK)throw [0,c];if(sH.safeGet(sK)!==sM){var sQ=sK+1|0,sK=sQ;continue;}if(0===sK)var sO=[0,aF,sN(cH(sH,1,sI-1|0))];else{var sP=sN(cH(sH,sK+1|0,(sI-sK|0)-1|0)),sO=[0,cH(sH,0,sK),sP];}var sJ=sO;break;}}}catch(sR){if(sR[1]===c)return [0,sH,0];throw sR;}return sJ;}new rb(caml_js_from_byte_string(az));new rb(caml_js_from_byte_string(ay));sA(sq.hostname);try {caml_int_of_string(caml_js_to_byte_string(sq.port));}catch(sS){if(sS[1]!==a)throw sS;}sN(sA(sq.pathname));var sT=su(38,sq.search),tc=sT.length;function s_(s9,sU){var sV=sU;for(;;){if(1<=sV){try {var s7=sV-1|0,s8=function(s2){function s4(sW){var s0=sW[2],sZ=sW[1];function sY(sX){return sA(q5(sX,sx));}var s1=sY(s0);return [0,sY(sZ),s1];}var s3=su(61,s2);if(3===s3.length){var s5=rf(s3,2),s6=rl([0,rf(s3,1),s5]);}else var s6=qN;return q2(s6,sx,s4);},s$=s_([0,q2(rf(sT,sV),sx,s8),s9],s7);}catch(ta){if(ta[1]===sv){var tb=sV-1|0,sV=tb;continue;}throw ta;}return s$;}return s9;}}s_(0,tc);sA(sq.href);var tm=window.FileReader,tl=window.FormData;function tk(td,tf){if(891486873<=td[1]){var te=td[2];te[1]=[0,tf,te[1]];return 0;}var tg=td[2],th=tf[2],tj=th[1],ti=tf[1];return 781515420<=tj?tg.append(ti.toString(),th[2]):tg.append(ti.toString(),th[2]);}function to(tn){return ActiveXObject;}var tt=[0,Q],ts=4*Math.atan(1),tr=l.toString();function tq(tp){return tp.save();}function tv(tu){return tu.restore();}function tz(tw,ty,tx){return tw.scale(ty,tx);}function tD(tA,tC,tB){return tA.translate(tC,tB);}function tF(tE){return tE.beginPath();}function tJ(tG,tI,tH){return tG.moveTo(tI,tH);}function tM(tK,tL){tK.fillStyle=tL;return tK.fill();}function tP(tN){var tO=tN.getContext(rS);tO.lineWidth=2;return [0,tN,tO];}function tR(tQ){return tQ;}function t0(tT,tX,tW,tZ,tY,tV,tU,tS){return tT[2].drawImage(tS[1],tZ,tY,tV,tU,tX,tW,tV,tU);}function t5(t1){throw [0,d,n];}function t4(t2){var t3=t2[1];if(t3)return t3[1];throw [0,d,K];}function t9(t7,t6,t8){if(t6)tM(t7,t6[1]);return t8?(t7.strokeStyle=t8[1],t7.stroke()):0;}function u2(t_,ug,uf,ui,ue,ud,uc,ub){var t$=t4(t_[8])[2];tq(t$);var ua=0===t_[1].length-1?0<t_[2].length-1?(t_[1]=cf(t5,t$,t_[2]),1):0:0;ua;tF(t$);t$.rect(ue,ud,uc,ub);tM(t$,tr);t$.clip();var uh=uf/ug,uj=ui/ug;tz(t$,ug,ug);tD(t$,-t_[4]-uh,-t_[5]-uj);var uk=t_[4]+uh+ue/ug,ul=t_[5]+uj+ud/ug,uo=ul+t_[8][3]/ug,un=uk+t_[8][2]/ug,um=0,up=t_[2].length-1-1|0;if(!(up<um)){var uq=um;for(;;){var ur=caml_array_get(t_[1],uq),us=caml_array_get(t_[2],uq),uw=ur[4],uv=ur[3],uu=ur[2],ut=ur[1]<=un?1:0;if(ut){var ux=uu<=uo?1:0;if(ux){var uy=uk<=uv?1:0,uz=uy?ul<=uw?1:0:uy;}else var uz=ux;}else var uz=ut;if(uz){tF(t$);switch(us[0]){case 1:var uG=us[3],uF=us[2],uE=us[1];ch(function(uD,uA){var uB=uA[2],uC=uA[1];return 0===uD?tJ(t$,uC,uB):t$.lineTo(uC,uB);},uE);t$.closePath();t9(t$,uF,uG);break;case 2:var uM=us[6],uL=us[5],uK=us[4],uJ=us[3],uI=us[2],uH=us[1];tq(t$);tD(t$,uH,uI);tz(t$,uJ,uK);t$.arc(0,0,1,0,2*ts,q$);tv(t$);t9(t$,uL,uM);break;case 3:var uN=us[6],uO=us[5],uQ=us[4],uP=us[3],uR=us[2],uS=us[1];t$.font=uQ;t$.textAlign=m.toString();if(uO){t$.fillStyle=uO[1];t$.fillText(uP,uS,uR);}if(uN){t$.strokeStyle=uN[1];t$.strokeText(uP,uS,uR);}break;default:var uV=us[3],uU=us[2],uT=us[1],uW=0,uX=uT.length-1-1|0;if(!(uX<uW)){var uY=uW;for(;;){var uZ=uT[uY+1];if(0===uZ[0])tJ(t$,uZ[1],uZ[2]);else t$.bezierCurveTo(uZ[1],uZ[2],uZ[3],uZ[4],uZ[5],uZ[6]);var u0=uY+1|0;if(uX!==uY){var uY=u0;continue;}break;}}t9(t$,uU,uV);}}var u1=uq+1|0;if(up!==uq){var uq=u1;continue;}break;}}return tv(t$);}function vW(u8,vj,vl,vp,u3){var u4=u3.width,u5=u3.height,u6=0,u7=0,u9=u8[8],u_=bY(u4,u9[2]),u$=bY(u5,u9[3]),va=u9[2]<u_?0:u9[3]<u$?0:1;if(!va){var vb=u9[1],vc=r3(rU);vc.width=u_;vc.height=u$;var vd=tP(vc),ve=u9[4];if(vb){var vh=vb[1],vg=ve[4],vf=ve[3];t0(tR(vd),0,0,0,0,vf,vg,vh);}u9[1]=[0,vd];u9[2]=u_;u9[3]=u$;}function vk(vi){return vi*vj+0.5|0;}var vn=vk(vl),vm=vk((u4/vj-u8[6])/2),vo=0<vm?-vm|0:vn,vr=vk(vp),vq=vk((u5/vj-u8[7])/2),vs=0<vq?-vq|0:vr,vt=u9[4][1]-vo|0,vu=u9[4][2]-vs|0,vv=0<vt?(u9[4][3]+vt|0)<u4?1:0:0;if(vv)var vw=0;else{if(0<vu&&(u9[4][4]+vu|0)<u5){var vw=0,vx=0;}else var vx=1;if(vx){var vy=u9[4],vz=0===vy[3]?1:0,vA=vz?vz:0===vy[4]?1:0;if(vA)var vw=1;else{var vB=t4(u9),vC=u9[4],vD=0===vt?0===vu?1:0:0;if(!vD){var vF=vC[4],vE=vC[3];t0(tR(vB),vt,vu,0,0,vE,vF,vB);}var vK=function(vG,vI,vH,vJ){return 0<((vG+vH|0)+vI|0)?0<=(vG+vH|0)?vJ<=(vG+vH|0)?[0,vJ,0]:vJ<((vG+vH|0)+vI|0)?[0,vG+vH|0,(vJ-vG|0)-vH|0]:[0,vG+vH|0,vI]:[0,0,(vI+vG|0)+vH|0]:P;},vL=vK(0,vC[3],vt,u9[2]),vM=vL[2],vN=vL[1],vO=vK(0,vC[4],vu,u9[3]),vP=vO[2],vQ=vO[1];if(0<vP)if(0<vN){if(!(u4<=(vN+vM|0)))throw [0,d,O];u2(u8,vj,vo,vs,0,vQ,vN,vP);}else{if(0!==vN)throw [0,d,N];if(vM<u4)u2(u8,vj,vo,vs,vM,vQ,u4-vM|0,vP);}if(0<vQ){if(!(u5<=(vQ+vP|0)))throw [0,d,M];u2(u8,vj,vo,vs,0,0,u4,vQ);}else{if(0!==vQ)throw [0,d,L];if(vP<u5)u2(u8,vj,vo,vs,0,vP,u4,u5-vP|0);}u9[4]=[0,vo,vs,u4,u5];var vw=1;}}}if(!vw)u9[4]=e;var vR=u9[4],vS=0<=u7?0<=u6?vR[3]<(u7+u4|0)?0:vR[4]<(u6+u5|0)?0:1:0:0;if(!vS){u2(u8,vj,vo,vs,0,0,u4,u5);u9[4]=[0,vo,vs,u4,u5];}var vT=t4(u9);t0(tP(u3),u7,u6,u7,u6,u4,u5,vT);try {u3.getContext(rS).getImageData(0,0,1,1);var vU=0;}catch(vV){return 0;}return vU;}var v9=JSON;if(h===0)var vX=nW([0]);else{var vY=h.length-1;if(0===vY)var vZ=[0];else{var v0=caml_make_vect(vY,nA(h[0+1])),v1=1,v2=vY-1|0;if(!(v2<v1)){var v3=v1;for(;;){v0[v3+1]=nA(h[v3+1]);var v4=v3+1|0;if(v2!==v3){var v3=v4;continue;}break;}}var vZ=v0;}var v5=nW(vZ);ch(function(v6,v8){var v7=(v6*2|0)+2|0;v5[3]=e7(nH[4],v8,v7,v5[3]);v5[4]=e7(nK[4],v7,1,v5[4]);return 0;},h);var vX=v5;}var v_=caml_equal(g,0)?[0]:g,v$=v_.length-1,wa=i.length-1,wb=caml_make_vect(v$+wa|0,0),wc=0,wd=v$-1|0;if(!(wd<wc)){var we=wc;for(;;){var wf=caml_array_get(v_,we);try {var wg=cf(nH[22],wf,vX[3]),wh=wg;}catch(wi){if(wi[1]!==c)throw wi;var wj=oh(vX);vX[3]=e7(nH[4],wf,wj,vX[3]);vX[4]=e7(nK[4],wj,1,vX[4]);var wh=wj;}caml_array_set(wb,we,wh);var wk=we+1|0;if(wd!==we){var we=wk;continue;}break;}}var wl=0,wm=wa-1|0;if(!(wm<wl)){var wn=wl;for(;;){var wo=caml_array_get(i,wn);try {var wp=cf(nE[22],wo,vX[7]),wq=wp;}catch(wr){if(wr[1]!==c)throw wr;var ws=vX[1];vX[1]=ws+1|0;if(caml_string_notequal(wo,a_))vX[7]=e7(nE[4],wo,ws,vX[7]);var wq=ws;}caml_array_set(wb,wn+v$|0,wq);var wt=wn+1|0;if(wm!==wn){var wn=wt;continue;}break;}}var wC=wb[1],wB=wb[2],wA=wb[3],wz=wb[4],wy=wb[5],wx=wb[6],ww=wb[7],wv=wb[8],wu=wb[9],wD=wb[10],wE=wb[11],wF=wb[12],wG=wb[13],wH=wb[14];function wR(wJ,wI,wK,wL,wM,wN,wO){if(wI)wJ[wD+1]=wI[1];if(wK)wJ[wE+1]=wK[1];if(wL)wJ[wF+1]=wL[1];if(wM)wJ[wG+1]=wM[1];return wN?(wJ[wH+1]=wN[1],0):0;}function wT(wP,wQ){wP[wu+1]=wQ;return 0;}function wV(wS){return wS[wH+1];}function wX(wU){return wU[wG+1];}function wZ(wW){return wW[wF+1];}function w1(wY){return wY[wE+1];}function w3(w0){return w0[wD+1];}var w4=[0,wC,function(w2){return w2[wu+1];},wv,w3,wB,w1,wA,wZ,ww,wX,wx,wV,wz,wT,wy,wR],w5=[0,0],w6=w4.length-1;for(;;){if(w5[1]<w6){var w7=caml_array_get(w4,w5[1]),w9=function(w8){w5[1]+=1;return caml_array_get(w4,w5[1]);},w_=w9(0);if(typeof w_==="number")switch(w_){case 1:var w$=w9(0),xb=function(w$){return function(xa){return xa[w$+1];};}(w$);break;case 2:var xc=w9(0),xd=w9(0),xb=function(xc,xd){return function(xe){return xe[xc+1][xd+1];};}(xc,xd);break;case 3:var xf=w9(0),xb=function(xf){return function(xg){return cq(xg[1][xf+1],xg);};}(xf);break;case 4:var xh=w9(0),xb=function(xh){return function(xi,xj){xi[xh+1]=xj;return 0;};}(xh);break;case 5:var xk=w9(0),xl=w9(0),xb=function(xk,xl){return function(xm){return cq(xk,xl);};}(xk,xl);break;case 6:var xn=w9(0),xo=w9(0),xb=function(xn,xo){return function(xp){return cq(xn,xp[xo+1]);};}(xn,xo);break;case 7:var xq=w9(0),xr=w9(0),xs=w9(0),xb=function(xq,xr,xs){return function(xt){return cq(xq,xt[xr+1][xs+1]);};}(xq,xr,xs);break;case 8:var xu=w9(0),xv=w9(0),xb=function(xu,xv){return function(xw){return cq(xu,cq(xw[1][xv+1],xw));};}(xu,xv);break;case 9:var xx=w9(0),xy=w9(0),xz=w9(0),xb=function(xx,xy,xz){return function(xA){return cf(xx,xy,xz);};}(xx,xy,xz);break;case 10:var xB=w9(0),xC=w9(0),xD=w9(0),xb=function(xB,xC,xD){return function(xE){return cf(xB,xC,xE[xD+1]);};}(xB,xC,xD);break;case 11:var xF=w9(0),xG=w9(0),xH=w9(0),xI=w9(0),xb=function(xF,xG,xH,xI){return function(xJ){return cf(xF,xG,xJ[xH+1][xI+1]);};}(xF,xG,xH,xI);break;case 12:var xK=w9(0),xL=w9(0),xM=w9(0),xb=function(xK,xL,xM){return function(xN){return cf(xK,xL,cq(xN[1][xM+1],xN));};}(xK,xL,xM);break;case 13:var xO=w9(0),xP=w9(0),xQ=w9(0),xb=function(xO,xP,xQ){return function(xR){return cf(xO,xR[xP+1],xQ);};}(xO,xP,xQ);break;case 14:var xS=w9(0),xT=w9(0),xU=w9(0),xV=w9(0),xb=function(xS,xT,xU,xV){return function(xW){return cf(xS,xW[xT+1][xU+1],xV);};}(xS,xT,xU,xV);break;case 15:var xX=w9(0),xY=w9(0),xZ=w9(0),xb=function(xX,xY,xZ){return function(x0){return cf(xX,cq(x0[1][xY+1],x0),xZ);};}(xX,xY,xZ);break;case 16:var x1=w9(0),x2=w9(0),xb=function(x1,x2){return function(x3){return cf(x3[1][x1+1],x3,x2);};}(x1,x2);break;case 17:var x4=w9(0),x5=w9(0),xb=function(x4,x5){return function(x6){return cf(x6[1][x4+1],x6,x6[x5+1]);};}(x4,x5);break;case 18:var x7=w9(0),x8=w9(0),x9=w9(0),xb=function(x7,x8,x9){return function(x_){return cf(x_[1][x7+1],x_,x_[x8+1][x9+1]);};}(x7,x8,x9);break;case 19:var x$=w9(0),ya=w9(0),xb=function(x$,ya){return function(yb){return cf(yb[1][x$+1],yb,cq(yb[1][ya+1],yb));};}(x$,ya);break;case 20:var yd=w9(0),yc=w9(0);on(vX);var xb=function(yd,yc){return function(ye){return cq(caml_get_public_method(yc,yd),yc);};}(yd,yc);break;case 21:var yf=w9(0),yg=w9(0);on(vX);var xb=function(yf,yg){return function(yh){var yi=yh[yg+1];return cq(caml_get_public_method(yi,yf),yi);};}(yf,yg);break;case 22:var yj=w9(0),yk=w9(0),yl=w9(0);on(vX);var xb=function(yj,yk,yl){return function(ym){var yn=ym[yk+1][yl+1];return cq(caml_get_public_method(yn,yj),yn);};}(yj,yk,yl);break;case 23:var yo=w9(0),yp=w9(0);on(vX);var xb=function(yo,yp){return function(yq){var yr=cq(yq[1][yp+1],yq);return cq(caml_get_public_method(yr,yo),yr);};}(yo,yp);break;default:var ys=w9(0),xb=function(ys){return function(yt){return ys;};}(ys);}else var xb=w_;oi[1]+=1;if(cf(nK[22],w7,vX[4])){od(vX,w7+1|0);caml_array_set(vX[2],w7,xb);}else vX[6]=[0,[0,w7,xb],vX[6]];w5[1]+=1;continue;}var yM=function(yL,yG,yu){var yv=yu?yu[1]:0;return function(yw){var yx=yw?yw[1]:0;return function(yy){var yz=yy?yy[1]:100;return function(yA){var yB=yA?yA[1]:1;return function(yC){var yD=yC?yC[1]:10;return function(yE){var yF=yE?yE[1]:10;return function(yK){if(yG)var yH=yG;else{var yI=caml_obj_block(hL,vX[1]);yI[0+1]=vX[2];var yJ=ns[1];yI[1+1]=yJ;ns[1]=yJ+1|0;var yH=yI;}yH[wu+1]=yv;yH[wD+1]=yx;yH[wE+1]=yz;yH[wF+1]=yB;yH[wG+1]=yD;yH[wH+1]=yF;return yH;};};};};};};};oe[1]=(oe[1]+vX[1]|0)-1|0;vX[8]=cn(vX[8]);od(vX,3+caml_div(caml_array_get(vX[2],1)*16|0,cZ)|0);var yN=cq(yM,0),y2=function(yR,yX){var yO=[0,0],yP=[0,0];return yR.onmousedown=rx(function(yQ){yO[1]=yQ.clientX;yP[1]=yQ.clientY;yR.style.cursor=o.toString();var yZ=rL(rU,rO,rx(function(yS){var yT=yS.clientX,yU=yS.clientY,yW=yO[1],yV=yP[1];yO[1]=yT;yP[1]=yU;cf(yX,yT-yW|0,yU-yV|0);return q$;}),q$),yY=[0,qM];yY[1]=rn(rL(rU,rP,rx(function(y1){rR(yZ);var y0=yY[1];if(y0!=qM)rR(y0);yR.style.cursor=p.toString();return q$;}),q$));return q$;});};rT.onload=rx(function(C9){var y3=rU.documentElement;y3.style.overflow=u.toString();rU.body.style.overflow=t.toString();rU.body.style.margin=s.toString();var y4=[0,0],y5=rX(rU,aV);y5.innerHTML=r.toString();y5.style.display=q.toString();rq(rU.body,y5);function y7(y6){if(!y4[1])y5.style.display=v.toString();return ph(0);}p4(sk(0.5),y7);function A7(y8){var y9=v9.parse(y8.toString()),za=y9[3],y$=y9[2],y_=y9[1],zd=y_[4],zc=y_[3],zb=y_[2],ze=y_[1];y4[1]=1;rU.body.removeChild(y5);var zf=[0,y$,za,1/20,ze,zb,zc-ze,zd-zb,[0,0,0,0,e]],zg=y3.clientHeight,zi=y3.clientWidth,zh=r3(rU);zh.width=zi;zh.height=zg;rq(rU.body,zh);function zl(zk){var zj=zh.height;return [0,0,0,zh.width,zj];}var zn=zm(yN,0,0,0,0,0,0,0,0),zo=zm(yN,0,0,0,0,0,0,0,0),zp=zm(yN,0,0,0,F,G,H,I,0),zq=8;function zt(zs){var zr=zf[3];return Math.pow(2,cq(caml_get_public_method(zp,834174833),zp)/zq)/zr;}var zu=[0,0];function zJ(zC){var zv=zl(0),zw=zt(0),zx=Math.ceil(zv[3]/zw),zy=Math.ceil(zv[4]/zw);zz(caml_get_public_method(zn,-635267918),zn,0,[0,zf[6]],[0,zx/20],[0,zx/2],[0,bV(zx,zf[6])],0);var zA=zf[6]-cq(caml_get_public_method(zn,307110897),zn);if(cq(caml_get_public_method(zn,834174833),zn)<0)cf(caml_get_public_method(zn,-659372076),zn,0);if(zA<cq(caml_get_public_method(zn,834174833),zn))cf(caml_get_public_method(zn,-659372076),zn,zA);zz(caml_get_public_method(zo,-635267918),zo,0,[0,zf[7]],[0,zy/20],[0,zy/2],[0,bV(zy,zf[7])],0);var zB=zf[7]-cq(caml_get_public_method(zo,307110897),zo);if(cq(caml_get_public_method(zo,834174833),zo)<0)cf(caml_get_public_method(zo,-659372076),zo,0);if(zB<cq(caml_get_public_method(zo,834174833),zo))cf(caml_get_public_method(zo,-659372076),zo,zB);if(zC){var zD=cq(caml_get_public_method(zo,834174833),zo),zE=cq(caml_get_public_method(zn,834174833),zn);return vW(zf,zt(0),zE,zD,zh);}if(zu[1])return 0;zu[1]=1;function zI(zH){zu[1]=0;var zF=cq(caml_get_public_method(zo,834174833),zo),zG=cq(caml_get_public_method(zn,834174833),zn);vW(zf,zt(0),zG,zF,zh);return ph(0);}p4(sk(0),zI);return 0;}var zK=zl(0),zL=Math.ceil(Math.log(bY(zf[6]/zK[3],zf[7]/zK[4]))/Math.log(2)*zq);zz(caml_get_public_method(zp,-635267918),zp,0,[0,zL],0,0,0,0);zf[3]=Math.pow(2,zL/zq);var zM=[0,zt(0)];function zT(zP,zR){var zN=zt(0),zO=1-zM[1]/zN,zQ=cq(caml_get_public_method(zn,307110897),zn)*zO*zP;cf(caml_get_public_method(zn,-659372076),zn,cq(caml_get_public_method(zn,834174833),zn)+zQ);var zS=cq(caml_get_public_method(zo,307110897),zo)*zO*zR;cf(caml_get_public_method(zo,-659372076),zo,cq(caml_get_public_method(zo,834174833),zo)+zS);zM[1]=zN;zf[8][4]=e;return zJ(0);}var zU=16,zV=300-zU|0;function zX(zW){return cf(nr,J,zW).toString();}var zY=zX(zU),zZ=[0,zV],z0=rZ(rU),z1=z0.style;z1.position=E.toString();z1.width=zY;z1.height=zY;z1.top=zX(zZ[1]);z1.left=D.toString();z1.margin=C.toString();z1.backgroundColor=B.toString();var z2=rZ(rU),z3=z2.style;z3.position=A.toString();z3.width=zY;z3.height=zX(zV+zU|0);z3.border=z.toString();z3.padding=y.toString();z3.top=x.toString();z3.left=w.toString();rq(z2,z0);rq(rU.body,z2);function z6(z4){if(z4!==zZ[1]){var z5=z0.style;z5.top=zX(z4);zZ[1]=z4;cf(caml_get_public_method(zp,-659372076),zp,(zV-z4|0)*cq(caml_get_public_method(zp,675223906),zp)/zV);return zT(0.5,0.5);}return 0;}y2(z0,function(z8,z7){return z6(bV(zV,bY(0,zZ[1]+z7|0)));});z2.onmousedown=rx(function(z9){var z_=z9.clientY;z6(bY(0,bV(zV,(z_-sb(z2)[2]|0)-(zU/2|0)|0)));return ra;});rT.onresize=rx(function(Aa){var z$=rU.documentElement;zh.width=z$.clientWidth;zh.height=z$.clientHeight;zJ(1);return q$;});y2(zh,function(Ah,Ai){var Ae=zt(0);function Ag(Ab,Ad){var Ac=cq(caml_get_public_method(Ab,307110897),Ab),Af=cq(caml_get_public_method(Ab,675223906),Ab)-Ac;return cf(caml_get_public_method(Ab,-659372076),Ab,bV(cq(caml_get_public_method(Ab,834174833),Ab)-Ad/Ae,Af));}Ag(zn,Ah);Ag(zo,Ai);return zJ(1);});function Ax(Ak,Am,Ap){var Aj=zl(0),Al=Ak/Aj[3],An=Am/Aj[4],Ao=cq(caml_get_public_method(zp,834174833),zp),Aq=Ao+Ap*cq(caml_get_public_method(zp,-292814788),zp),Ar=bY(cq(caml_get_public_method(zp,-117442047),zp),Aq),As=bV(cq(caml_get_public_method(zp,675223906),zp),Ar);if(As!=Ao){cf(caml_get_public_method(zp,-659372076),zp,As);var At=cq(caml_get_public_method(zp,675223906),zp),Au=zV-(cq(caml_get_public_method(zp,834174833),zp)*zV/At+0.5|0)|0,Av=z0.style;Av.top=zX(Au);zZ[1]=Au;var Aw=0<=Al?Al<=1?0<=An?An<=1?(zT(Al,An),1):0:0:0:0;if(!Aw)zT(0.5,0.5);}return ra;}function AG(Az,AF,AE){var Ay=sb(zh),AB=Ay[2],AA=Ay[1],AC=Az.clientX-AA|0,AD=Az.clientY-AB|0;return 0<=AE?0<AE?Ax(AC,AD,-1):ra:Ax(AC,AD,1);}var AH=rZ(rU);AH.setAttribute(aZ.toString(),a0.toString());if(typeof AH[aX.toString()]===aY.toString())rL(zh,rN,rx(function(AK){var AJ=40;function AL(AI){return 0;}var AO=(-q5(AK.deltaX,AL)|0)/AJ|0,AN=40;function AP(AM){return AK.delta;}return AG(AK,AO,(-q5(AK.deltaY,AP)|0)/AN|0);}),q$);else rL(zh,rM,rx(function(AQ){var AR=AQ.detail,AS=AQ.HORIZONTAL;return AQ.axis===AS?AG(AQ,AR,0):AG(AQ,0,AR);}),q$);function AZ(AT){var AU=AT.keyCode-37|0;if(AU<0||3<AU)return q$;switch(AU){case 1:var AV=cq(caml_get_public_method(zo,-292814788),zo);cf(caml_get_public_method(zo,-659372076),zo,cq(caml_get_public_method(zo,834174833),zo)-AV);zJ(0);return ra;case 2:var AW=cq(caml_get_public_method(zn,-292814788),zn);cf(caml_get_public_method(zn,-659372076),zn,cq(caml_get_public_method(zn,834174833),zn)+AW);zJ(0);return ra;case 3:var AX=cq(caml_get_public_method(zo,-292814788),zo);cf(caml_get_public_method(zo,-659372076),zo,cq(caml_get_public_method(zo,834174833),zo)+AX);zJ(0);return ra;default:var AY=cq(caml_get_public_method(zn,-292814788),zn);cf(caml_get_public_method(zn,-659372076),zn,cq(caml_get_public_method(zn,834174833),zn)-AY);zJ(0);return ra;}}var A0=[0,-1];rU.onkeydown=rx(function(A1){A0[1]=A1.keyCode;return AZ(A1);});rU.onkeypress=rx(function(A3){var A2=A0[1];A0[1]=-1;return A3.keyCode===A2?q$:AZ(A3);});zJ(1);return ph(0);}function A9(A4){var A6=A4[4],A5=A4[2];if(0!==A5&&200!==A5)return [0,[2,[0,[0,o7],0,0]]];return ph(A6);}var A8=0,A_=0,A$=0,Ba=0,Bb=0,Bc=0,Bd=Bc?Bc[1]:0,Be=A$?A$[1]:0,Bf=A8?A8[1]:function(Bg,Bh){return 1;};if(A_){var Bi=A_[1];if(Ba){var Bk=Ba[1];cy(function(Bj){return tk(Bi,[0,Bj[1],[0,-976970511,Bj[2].toString()]]);},Bk);}var Bl=[0,Bi];}else if(Ba){var Bm=Ba[1],Bn=q_(rl(tl)),Bo=Bn?[0,808620462,new (Bn[1])()]:[0,891486873,[0,0]];cy(function(Bp){return tk(Bo,[0,Bp[1],[0,-976970511,Bp[2].toString()]]);},Bm);var Bl=[0,Bo];}else var Bl=0;if(Bl){var Bq=Bl[1];if(Bb)var Br=[0,ar,Bb,126925477];else{if(891486873<=Bq[1]){var Bt=Bq[2][1],Bs=0,Bu=0,Bv=Bt;for(;;){if(Bv){var Bw=Bv[2],Bx=Bv[1],By=781515420<=Bx[2][1]?0:1;if(By){var Bz=[0,Bx,Bs],Bs=Bz,Bv=Bw;continue;}var BA=[0,Bx,Bu],Bu=BA,Bv=Bw;continue;}var BB=cn(Bu);cn(Bs);if(BB){var BD=function(BC){return b6(ri.random()*1000000000|0);},BE=BD(0),BF=b4(V,b4(BD(0),BE)),BG=[0,ap,[0,b4(aq,BF)],[0,164354597,BF]];}else var BG=ao;var BH=BG;break;}}else var BH=an;var Br=BH;}var BI=Br;}else var BI=[0,am,Bb,126925477];var BJ=BI[3],BK=BI[2],BP=BI[1],BO=Be?b4(f,b4(al,cY(aD,cs(function(BL){var BM=BL[1],BN=b4(aE,sG(0,BL[2]));return b4(sG(0,BM),BN);},Be)))):f,BQ=pw(0),BR=BQ[2],BS=BQ[1];try {var BT=new XMLHttpRequest(),BU=BT;}catch(C8){try {var BV=new (to(0))(U.toString()),BU=BV;}catch(B0){try {var BW=new (to(0))(T.toString()),BU=BW;}catch(BZ){try {var BX=new (to(0))(S.toString());}catch(BY){throw [0,d,R];}var BU=BX;}}}BU.open(BP.toString(),BO.toString(),q$);if(BK)BU.setRequestHeader(ak.toString(),BK[1].toString());cy(function(B1){return BU.setRequestHeader(B1[1].toString(),B1[2].toString());},Bd);function B7(B5){function B4(B2){return [0,new MlWrappedString(B2)];}function B6(B3){return 0;}return qR(BU.getResponseHeader(caml_js_from_byte_string(B5)),B6,B4);}var B8=[0,0];function Cf(Ce){if(B8[1]||cf(Bf,BU.status,B7))var B9=0;else{var B$=[0,tt,[0,BU.status,B7]],B_=oz(BR),Ca=B_[1];switch(Ca[0]){case 1:var Cb=Ca[1][1]===or?1:0;break;case 2:var Cd=Ca[1][2],Cc=[1,B$];B_[1]=Cc;oV(Cd,Cc);var Cb=1;break;default:var Cb=0;}if(!Cb)bS(a3);BU.abort();var B9=1;}B9;B8[1]=1;return 0;}BU.onreadystatechange=caml_js_wrap_callback(function(Cl){switch(BU.readyState){case 2:if(!rr)return Cf(0);break;case 3:if(rr)return Cf(0);break;case 4:Cf(0);var Cj=function(Ci){var Cg=qW(BU.responseXML);if(Cg){var Ch=Cg[1];return rn(Ch.documentElement)===qM?0:[0,Ch];}return 0;},Ck=new MlWrappedString(BU.responseText);return o2(BR,[0,BO,BU.status,B7,Ck,Cj]);default:}return 0;});if(Bl){var Cm=Bl[1];if(891486873<=Cm[1]){var Cn=Cm[2];if(typeof BJ==="number"){var Cu=Cn[1];BU.send(rn(cY(ah,cs(function(Co){var Cp=Co[2],Cr=Cp[1],Cq=Co[1];if(781515420<=Cr){var Cs=b4(aj,sG(0,new MlWrappedString(Cp[2].name)));return b4(sG(0,Cq),Cs);}var Ct=b4(ai,sG(0,new MlWrappedString(Cp[2])));return b4(sG(0,Cq),Ct);},Cu)).toString()));}else{var Cv=BJ[2],CA=function(Cw){var Cx=rn(Cw.join(as.toString()));return qY(BU.sendAsBinary)?BU.sendAsBinary(Cx):BU.send(Cx);},Cz=Cn[1],Cy=new rc(),C6=function(CB){Cy.push(b4(W,b4(Cv,X)).toString());return Cy;};qf(qf(qI(function(CC){Cy.push(b4($,b4(Cv,aa)).toString());var CD=CC[2],CF=CD[1],CE=CC[1];if(781515420<=CF){var CG=CD[2],CO=function(CM){var CI=ag.toString(),CH=af.toString(),CJ=q_(CG.name);if(CJ)var CK=CJ[1];else{var CL=q_(CG.fileName),CK=CL?CL[1]:k(at);}Cy.push(b4(ad,b4(CE,ae)).toString(),CK,CH,CI);Cy.push(ab.toString(),CM,ac.toString());return ph(0);},CN=-1041425454,CP=q_(rl(tm));if(CP){var CQ=new (CP[1])(),CR=pw(0),CT=CR[2],CS=CR[1];CQ.onloadend=rx(function(CX){if(2===CQ.readyState){var CU=CQ.result,CV=caml_equal(typeof CU,au.toString())?rn(CU):qM,CW=qW(CV);if(!CW)throw [0,d,av];o2(CT,CW[1]);}return ra;});pJ(CS,function(CY){return CQ.abort();});if(typeof CN==="number")if(-550809787===CN)CQ.readAsDataURL(CG);else if(936573133<=CN)CQ.readAsText(CG);else CQ.readAsBinaryString(CG);else CQ.readAsText(CG,CN[2]);var CZ=CS;}else{var C1=function(C0){return k(ax);};if(typeof CN==="number")var C2=-550809787===CN?qY(CG.getAsDataURL)?CG.getAsDataURL():C1(0):936573133<=CN?qY(CG.getAsText)?CG.getAsText(aw.toString()):C1(0):qY(CG.getAsBinary)?CG.getAsBinary():C1(0);else{var C3=CN[2],C2=qY(CG.getAsText)?CG.getAsText(C3):C1(0);}var CZ=ph(C2);}return p4(CZ,CO);}var C5=CD[2],C4=_.toString();Cy.push(b4(Y,b4(CE,Z)).toString(),C5,C4);return ph(0);},Cz),C6),CA);}}else BU.send(Cm[2]);}else BU.send(qM);pJ(BS,function(C7){return BU.abort();});p4(p4(BS,A9),A7);return ra;});b$(0);return;}}());